使用NILabVIEW令“20歲”的機(jī)器人恢復(fù)活力———使用NILabVIEW令“20歲”的機(jī)器人恢復(fù)
在過去的幾十年里,工業(yè)機(jī)器人技術(shù)經(jīng)歷了飛速的發(fā)展。自二十世紀(jì)80年代以來,它們已經(jīng)從只能以有限精度沿著預(yù)訂軌跡運(yùn)動(dòng)的抓放式機(jī)器人,發(fā)展成具有高精度、可以在手術(shù)室中應(yīng)用,并且靈活適應(yīng)環(huán)境,同時(shí)可經(jīng)常與視覺系統(tǒng)及生產(chǎn)單元中的其它機(jī)器人進(jìn)行交互的系統(tǒng)。這就是我們在大學(xué)的倉庫中發(fā)現(xiàn)20歲的三菱Movemaster機(jī)器人時(shí),第一反應(yīng)是決定把它送給博物館的原因。但是,一個(gè)教師決定把它交給我 —— 當(dāng)時(shí)我還只是一名帝國理工學(xué)院的本科生,來使機(jī)器人“復(fù)活”。
項(xiàng)目目標(biāo)
早先的時(shí)候,三菱Movemaster機(jī)器人配有一個(gè)手持式教學(xué)盒、一個(gè)微波爐大小的驅(qū)動(dòng)單元和一個(gè)可通過串行接口將所有機(jī)器關(guān)節(jié)所需的角位置傳輸?shù)津?qū)動(dòng)單元的可選計(jì)算機(jī)。但是現(xiàn)在所有外設(shè)都丟失了,所以我們需要修復(fù)機(jī)器人底座上的36根未定義管腳,使其恢復(fù)原有的功能。我們需要替換以前用于從PC機(jī)的可視化用戶界面來控制機(jī)器人的過時(shí)的編程語言??紤]到需要保留可能作為教學(xué)輔助的應(yīng)用,我們需要?jiǎng)?chuàng)建出一種可以允許學(xué)生在未來進(jìn)行便捷擴(kuò)展的系統(tǒng)(特別是不同的控制算法)。
設(shè)計(jì)選項(xiàng)
在我們試圖對機(jī)器人進(jìn)行逆向工程后,我們需要通過兩個(gè)主要步驟確定系統(tǒng)的總體布局。首先,我們需要開發(fā)I/O解決方案驅(qū)動(dòng)機(jī)器人的5個(gè)直流電機(jī),并同時(shí)讀取編碼器信號(hào)。第二,我們需要將信息傳輸?shù)綐?biāo)準(zhǔn)PC機(jī)上并將其在圖形界面上顯示出來。
系統(tǒng)所需的通道數(shù)(15路脈寬調(diào)制[PWM]數(shù)字輸出和10路數(shù)字輸入)和采樣速率(PWM為1kHz而輸入采樣速率為100kHz)都沒有超出標(biāo)準(zhǔn)微控制器電路板的個(gè)性化解決方案的范疇。但是,編程環(huán)境的多樣性和開發(fā)這樣系統(tǒng)所面臨的挑戰(zhàn),超出了本科生項(xiàng)目的時(shí)限和范圍。由于美國國家儀器公司的產(chǎn)品,可以提供從數(shù)據(jù)采集到高級(jí)圖形用戶界面開發(fā)等全部所需的功能,顯而易見可以作為我們的選擇之一。
我們選擇了CompactRIO可編程自動(dòng)控制器,利用它來實(shí)時(shí)采集和處理所需數(shù)量的信號(hào)。雖然產(chǎn)品的花費(fèi)超出了典型本科生項(xiàng)目的預(yù)算,但考慮到CompactRIO的全面性和易用性,我們還是選擇了它。我們可以在5分鐘內(nèi)設(shè)定好CompactRIO控制器(包括接線和所有軟件的部署),而且可以在其他項(xiàng)目中共用這一個(gè)控制器。
信號(hào)I/O
CompactRIO控制器的現(xiàn)場可編程門陣列(FPGA)背板,能夠以完全并行化的方式讀取、輸出和處理I/O模塊通道。利用數(shù)量充足的可編程門電路,我們能夠以1kHz的頻率輸出5個(gè)獨(dú)立的PWM信號(hào),輸出10個(gè)數(shù)字信號(hào)到外部的馬達(dá)驅(qū)動(dòng)芯片,同時(shí)以100kHz頻率對10條編碼通道進(jìn)行采樣。在FPGA上,我們將每個(gè)機(jī)器人關(guān)節(jié)上的兩個(gè)編碼器上獲得的信號(hào),顯示成整數(shù)以表示相對的關(guān)節(jié)角度。使用NI網(wǎng)站上提供的VI幫助我們進(jìn)一步縮短了FPGA上VI的開發(fā)時(shí)間。兩個(gè)高速切換的數(shù)字輸出和數(shù)字輸入模塊為我們的應(yīng)用提供了充足的通道數(shù)。
圖形化用戶界面
上述硬件接口的功能一定程度上受到FPGA技術(shù)能力的限制,但是系統(tǒng)的用戶界面在Windows PC上運(yùn)行,可以充分利用LabVIEW 8.5的特性。使用基于事件的界面,用戶可以通過輸入位置向量或上下、左右和前后增量式移動(dòng)機(jī)器人,來設(shè)定機(jī)器人終端效應(yīng)器的笛卡爾坐標(biāo)位置和方向。然后進(jìn)行坐標(biāo)變換,計(jì)算出每個(gè)機(jī)器人關(guān)節(jié)所需的關(guān)節(jié)角。這些數(shù)據(jù)會(huì)反饋給控制器子VI,從所需和實(shí)際的關(guān)節(jié)角中計(jì)算出電機(jī)命令信號(hào)。
為了允許學(xué)生們在將來實(shí)現(xiàn)不同的控制算法,只要模板定義的前面板元件存在,控制器子VI在每次運(yùn)行時(shí)都加載并可以包含任意的邏輯。這非常有用,因?yàn)閷W(xué)生們可能不能使用LabVIEW環(huán)境下的所有功能,而只能使用缺少LabVIEW FPGA和LabVIEW Real-Time Module的學(xué)生版本。雖然學(xué)生版軟件不能打開全部的機(jī)器人軟件,但學(xué)生們?nèi)匀豢梢允褂盟_發(fā)機(jī)器人控制器,并在機(jī)器人上進(jìn)行測試。
我們的“老”機(jī)器人的可靠性是整個(gè)項(xiàng)目中的一個(gè)問題,我們需要一個(gè)機(jī)器人仿真以便我們在機(jī)器人維修時(shí)繼續(xù)工作。使用LabVIEW 3D圖像控制,我們創(chuàng)建了機(jī)器人的示意原理圖。使用圖形化用戶界面,用戶可以得知軟件是否精確表示了當(dāng)前機(jī)器人的位置。當(dāng)可視化與現(xiàn)實(shí)不符合時(shí),用戶可將機(jī)器人送到啟動(dòng)原點(diǎn),并按下按鈕重新啟動(dòng)軟件。
結(jié)論
使用CompactRIO和LabVIEW,我們可以在同一個(gè)編程環(huán)境中,從零開始構(gòu)建完整的機(jī)器人驅(qū)動(dòng)和控制系統(tǒng)。借助于CompactRIO控制器的易用性,使用高科技的FPGA技術(shù)來喚醒我們的“古董”機(jī)器人簡直輕而易舉。作為本科生的我,利用不到九個(gè)月的兼職項(xiàng)目工作,就開發(fā)出了包括軟件和硬件的整個(gè)系統(tǒng)。
致謝
我在醫(yī)藥機(jī)電一體化實(shí)驗(yàn)室中完成了這個(gè)項(xiàng)目,指導(dǎo)者是Ferdinando Rodriguez y Baena博士。該項(xiàng)目是在Christopher Burton已有工作的基礎(chǔ)上進(jìn)行的。
更多精彩案例集>>
關(guān)于NI
美國國家儀器有限公司(National Instruments,簡稱NI)致力于為測試測量、自動(dòng)化和嵌入式應(yīng)用領(lǐng)域的工程師和科學(xué)家們帶來革命性的理念,從“虛擬儀器技術(shù)”提升到“圖形化系統(tǒng)設(shè)計(jì)”,幫助他們實(shí)現(xiàn)更高效和優(yōu)化的設(shè)計(jì)、原型到發(fā)布。NI為遍布全球各地的25000家不同的客戶提供現(xiàn)成即用的軟件(如NI LabVIEW圖形化開發(fā)平臺(tái)),和高性價(jià)比的模塊化硬件。NI總部設(shè)在美國德克薩斯州的奧斯汀,在近40個(gè)國家和地區(qū)設(shè)有分支機(jī)構(gòu),共擁有5,000多名員工。在過去連續(xù)9年里,NI被《財(cái)富》雜志評選為“全美最適合工作的100家公司之一”。想了解更多關(guān)于NI的信息,請?jiān)L問ni.com/china,或致電800-820-3622。