相關(guān)鏈接: 中國安全網(wǎng) 中國質(zhì)量網(wǎng) 中國論文網(wǎng) 中國資訊網(wǎng)
張億龍1 李艷杰1 卜 春光2 高英麗2
(沈陽理工大學(xué)機(jī)械工程學(xué)院1,遼寧沈陽 110159;中國科學(xué)院沈陽自動化研究所2,遼寧沈陽 110016)
摘要:針對六履帶四擺臂履帶式移動機(jī)器人的機(jī)構(gòu)特點,采用Ether CAT總線技術(shù)和QN x多任務(wù)實時操作系統(tǒng)設(shè)計機(jī)器人控制系統(tǒng)。著重介紹機(jī)器人控制系統(tǒng)的硬件集成與軟件設(shè)計?紤]到控制程序的可擴(kuò)展性與可移植性需求,采用共享內(nèi)存通信方式設(shè)計模塊化控制軟件。試驗表明,該機(jī)器人可在遠(yuǎn)程遙控狀態(tài)下實現(xiàn)行走及越障功能,驗證了控制系統(tǒng)的可靠性與穩(wěn)定性,達(dá)到設(shè)計要求。
關(guān)鍵詞:移動機(jī)器人控制系統(tǒng)Ether CAT總線實時控制遙控模塊化設(shè)計防災(zāi)減災(zāi)
中圖分類號:TH -3;TP242DOI:10. 16086/j. cnki. issn 1000 - 0380. 201606009
0引言
隨著科技、經(jīng)濟(jì)水平的提高,城市中高層建筑物的數(shù)量不斷增加。當(dāng)火災(zāi)、危化品泄漏、恐怖襲擊等突發(fā)事件發(fā)生之后,大型救援設(shè)備無法迅速進(jìn)入災(zāi)害現(xiàn)場,這時就需要體積小、靈活且能適應(yīng)非結(jié)構(gòu)環(huán)境的移動機(jī)器人參與救援。移動機(jī)器人可協(xié)助救援人員實施救援,有效減少救援人員的傷亡,提高救援效率。本課題旨在設(shè)計一種質(zhì)量小且能實時控制的移動機(jī)器人,用于執(zhí)行公共安全事件的勘探、救援等任務(wù)。
本文在研究六履帶四擺臂履帶式移動機(jī)器人結(jié)構(gòu)的基礎(chǔ)上,設(shè)計機(jī)器人控制系統(tǒng)。根據(jù)工業(yè)現(xiàn)場總線Ethe CAT的優(yōu)越運行原理、多種拓?fù)浣Y(jié)構(gòu)、通信快速性等特點,在實時操作系統(tǒng)QNX上搭建機(jī)器人控制系統(tǒng),實現(xiàn)對六履帶四擺臂履帶式移動機(jī)器人的遠(yuǎn)程控制。
1 機(jī)器人本體結(jié)構(gòu)
履帶式移動機(jī)器人性能優(yōu)越,能適應(yīng)復(fù)雜的非結(jié)構(gòu)化地形環(huán)境,可廣泛用于災(zāi)難救援、反恐防暴、極地科考等重要領(lǐng)域。本文采用的六履帶四擺臂履帶式移動機(jī)器人機(jī)械結(jié)構(gòu)長690 mm、寬520 mm、小臂臂長360 mm,機(jī)器人質(zhì)心在對稱線上,自重25 kg,最大載重15 kg,如圖1所示。
機(jī)器人共有6個自由度,即平面內(nèi)的移動、轉(zhuǎn)動和4個擺臂的自由轉(zhuǎn)動。機(jī)器人內(nèi)側(cè)的2條主履帶分別由2個直流有刷電機(jī)驅(qū)動,通過等速控制主履帶電機(jī)實現(xiàn)機(jī)器人的前進(jìn)、后退,通過差速控制實現(xiàn)機(jī)器人任意半徑轉(zhuǎn)彎;機(jī)器人2側(cè)的4個擺臂分別由4個直流無刷電機(jī)驅(qū)動,擺臂可以繞驅(qū)動輪軸線360。旋轉(zhuǎn),通過對電機(jī)正反轉(zhuǎn)動控制,實現(xiàn)機(jī)器人質(zhì)心位置的變化,使機(jī)器人在復(fù)雜的地面環(huán)境下保持穩(wěn)定。當(dāng)機(jī)器人遇到一定高度的障礙物時,通過協(xié)調(diào)控制主履帶與擺臂的運動,可以使機(jī)器人順利通過障礙物。
2控制系統(tǒng)硬件設(shè)計
控制系統(tǒng)有兩個上層控制站:其中一個控制站通過路由器連接機(jī)器人本體上的控制器,主要用于研制階段機(jī)器人的調(diào)試;另一個控制站通過圖傳、數(shù)傳設(shè)備連接,主要用于對機(jī)器人的遠(yuǎn)程控制。機(jī)器人通過攜帶的圖傳、數(shù)傳設(shè)備,將圖像、姿態(tài)信息傳給遠(yuǎn)端的控制站。遠(yuǎn)端控制人員根據(jù)實時狀態(tài)信息對機(jī)器人進(jìn)行實時控制。機(jī)器人控制硬件系統(tǒng)如圖2所示。
由質(zhì)量輕、儲能高、壽命長、綠色環(huán)保的鋰電池為整個系統(tǒng)供電,其最高電壓可達(dá)30 V;由ATX M3寬壓直插式電壓轉(zhuǎn)換模塊為系統(tǒng)設(shè)備提供合適的電壓。
機(jī)器人本體控制器選用研華公司生產(chǎn)的PCM3362板卡,該主板采用PC104總線技術(shù),板載2 GB FLASH,標(biāo)準(zhǔn)尺寸為90 mm x90 mm。板卡間通過堆棧的形式可靠地連續(xù)連接,抗震能力強(qiáng)。機(jī)器人控制器接收上層控制站發(fā)送的控制指令進(jìn)行運動控制,并將機(jī)器人當(dāng)前的運動狀態(tài)信息發(fā)送給上層控制站。
無線模塊選用RTD公司的WLAN17202模塊,采用PC/104 PLUS總線架構(gòu),以堆疊的方式與PCM3362連接,用于調(diào)試計算機(jī)與機(jī)器人本體控制器通信。
采用赫優(yōu)訊( Hils cher)公司的CIFX 104板卡搭建Ether CAT網(wǎng)絡(luò)。其硬件連接如圖3所示。
本文Ether CAT網(wǎng)絡(luò)采用總線型網(wǎng)絡(luò)擴(kuò)展。CIFX板卡的Channel 0端口連接從站1的Ether CAT輸入端,從站1的輸出端連接叢站2的Ether CAT輸入端,依次類推,連接所有的從站設(shè)備;主站的Channel l和最后一個從站的輸出端連接,從而搭建起整個硬件Ether CAT網(wǎng)絡(luò)。該連接方法能夠快捷地進(jìn)行網(wǎng)絡(luò)搭建,網(wǎng)絡(luò)結(jié)構(gòu)簡單,易于網(wǎng)絡(luò)擴(kuò)展。特別是當(dāng)其中某兩個設(shè)備之間的連線出現(xiàn)問題時,不會影響其他設(shè)備間的通信,最大限度地保證了系統(tǒng)的穩(wěn)定性。
電機(jī)驅(qū)動器采用ELMO公司的GOLD SOLO WHISTLE直流電機(jī)驅(qū)動器,該驅(qū)動器輸入電壓為12~95 VDC,可控制直流無刷、直流有刷電機(jī)。通過ELMO公司提供的ESA軟件,可配置電機(jī)的電流環(huán)、速度環(huán)、位置環(huán)的PID參數(shù),控制系統(tǒng)無需對電機(jī)進(jìn)行速度、位置、力矩等進(jìn)行閉環(huán)控制,簡化了上層編程控制程序。
3控制系統(tǒng)系統(tǒng)軟件平臺
3.1 QNX實時操作系統(tǒng)
本文所設(shè)計機(jī)器人本體控制器采用QNXNeutrino實時操作系統(tǒng),其系統(tǒng)模塊能夠靈活地增減,以滿足實時嵌入式系統(tǒng)資源有限的要求。QNX系統(tǒng)支持x86、PowerPC、ARM、MIPS和SH -4等平臺。QNX所有的驅(qū)動程序、應(yīng)用程序、協(xié)議棧和文件系統(tǒng)都在受保護(hù)的用戶空間內(nèi)安全運行。幾乎所有組件都能在運行失敗時自動重啟,不會影響其他組件或內(nèi)核。
在調(diào)試地面站上安裝由QNX提供的集成開發(fā)環(huán)境(integrated development environment,IDE),用C語言編寫控制程序,并通過路由器將控制指令發(fā)送到機(jī)器人的QNX系統(tǒng)中。機(jī)器人本體控制器接收控制指令并解析,將電機(jī)的速度、位置等指令通過Ether CAT網(wǎng)絡(luò)發(fā)送到對應(yīng)驅(qū)動器中,最終實現(xiàn)對機(jī)器人的運動控制。
mm ap函數(shù)內(nèi)存映射圖如圖4所示。
在QNX系統(tǒng)中,進(jìn)程間的通信方式有文件、管道、信號、套接字、消息隊列、共享內(nèi)存、信號量等。QNX中每個進(jìn)程都有自己的虛擬地址空間,可通過m map函數(shù)來分配和釋放虛擬內(nèi)存。該函數(shù)的主要功能是將文件或設(shè)備映射到調(diào)用進(jìn)程的地址空間中,從而直接操作這段虛擬地址對文件進(jìn)行讀、寫等,不必再進(jìn)行read、write等系統(tǒng)調(diào)用。本文采用共享內(nèi)存通信方式設(shè)計機(jī)器人模塊化控制軟件。
3.2 工業(yè)現(xiàn)場總線Ether CAT特點
工業(yè)現(xiàn)場總線Ether CAT是一個以以太網(wǎng)為基礎(chǔ)的開放架構(gòu)的現(xiàn)場總線,最初是由德國倍福研發(fā)的。不同于傳統(tǒng)以太網(wǎng),Ether CAT網(wǎng)絡(luò)無需在每個網(wǎng)絡(luò)節(jié)點處接收數(shù)據(jù)。當(dāng)網(wǎng)絡(luò)數(shù)據(jù)傳輸?shù)綇恼驹O(shè)備時,從站控制器讀取主站發(fā)來的數(shù)據(jù);當(dāng)從站需要輸入數(shù)據(jù)時,可在報文通過時將數(shù)據(jù)插入報文。該過程由從站硬件實現(xiàn),通信速度與協(xié)議堆棧軟件的實時運行
系統(tǒng)或處理器性能無關(guān)。網(wǎng)段中的最后一個Ether CAT從站將經(jīng)過充分處理的報文傳回主站。
Ether CAT幾乎支持所有的拓?fù)浣Y(jié)構(gòu),最多可容納65 535個設(shè)備,因此對網(wǎng)絡(luò)規(guī)模幾乎沒有限制。
Ether CAT自問世以來,已經(jīng)成為多種相關(guān)的國際標(biāo)準(zhǔn),如IEC 61158(國際電工委員會)中Type12、IEC 61784的CPF12等。Ether CAT支持CAN openDSP402協(xié)議,這為實現(xiàn)機(jī)器人控制提供了技術(shù)支持。
通過Hils cher提供的SYCON軟件搭建主站網(wǎng)絡(luò)及配置從站數(shù)據(jù),包括主站驅(qū)動板卡配置、從站設(shè)備識別、從站驅(qū)動配置、從站網(wǎng)絡(luò)協(xié)議配置等。
4控制系統(tǒng)軟件設(shè)計
本文的機(jī)器人主要用于遙控操作,采用模塊化的思想進(jìn)行軟件設(shè)計,選用共享內(nèi)存的形式實現(xiàn)進(jìn)程間通信?刂瞥绦虮粍澐譃7個模塊,工作流程如圖5所示。
①串口通信模塊( Communicator)的功能包括接收、識別一包完整的控制指令,并將控制指令存儲到串口接收共享內(nèi)存中;將串口發(fā)送共享內(nèi)存中的機(jī)器人實時狀態(tài)數(shù)據(jù)發(fā)送到遠(yuǎn)程地面站。
②協(xié)議解析模塊一( Protocol)的功能包括將串口接收共享內(nèi)存的數(shù)據(jù)解析成機(jī)器人控制指令,并將控制指令寫入?yún)f(xié)議解析接收共享內(nèi)存中;將機(jī)器人狀態(tài)共享內(nèi)存中的機(jī)器人當(dāng)前狀態(tài)信息數(shù)據(jù)進(jìn)行編碼,并寫入串口發(fā)送共享內(nèi)存中。
③算法模塊( Controller)的功能包括將協(xié)議解析接收共享內(nèi)存中的數(shù)據(jù)經(jīng)算法運算成電機(jī)驅(qū)動器控制指令,運用IMU數(shù)據(jù)以及驅(qū)動器返回的數(shù)據(jù)進(jìn)行閉環(huán)控制,并將控制指令寫入對應(yīng)驅(qū)動器發(fā)送共享內(nèi)存中;將驅(qū)動器接收共享內(nèi)存中的電機(jī)狀態(tài)數(shù)據(jù)以及IMU共享內(nèi)存中的數(shù)據(jù)轉(zhuǎn)化成機(jī)器人本體狀態(tài)信息,并將機(jī)器人狀態(tài)信息寫入機(jī)器人狀態(tài)共享內(nèi)存中。
④驅(qū)動器模塊( Driver communication)的功能包括將驅(qū)動器發(fā)送共享內(nèi)存中的電機(jī)控制指令發(fā)送給對應(yīng)電機(jī)驅(qū)動器,實現(xiàn)電機(jī)控;將電機(jī)實時數(shù)據(jù)(如速度、電流、位置等信息)存入驅(qū)動器接收共享內(nèi)存中。
⑤姿態(tài)位置數(shù)據(jù)模塊(IMU)的功能是讀取機(jī)器人實時姿態(tài)信息、位置信息,并將數(shù)據(jù)保存到IMU共享內(nèi)存。
⑥共享內(nèi)存數(shù)據(jù)輸出模塊(SHM print)的功能是在調(diào)試時,將共享內(nèi)存中的數(shù)據(jù)輸出到終端中,便于查看共享內(nèi)存中的數(shù)據(jù)以及調(diào)試。
⑦鍵盤控制模塊( key controller)用于調(diào)試地面站對整個系統(tǒng)進(jìn)行調(diào)試。
相互獨立的模塊之間周期性地發(fā)送與接收共享內(nèi)存中的數(shù)據(jù),通過讀寫保護(hù)機(jī)制保護(hù)共享內(nèi)存中的數(shù)據(jù),以保證在同一時間內(nèi)可以有多個線程讀取共享內(nèi)存中的數(shù)據(jù)。在寫數(shù)據(jù)時,只有一個線程向共享內(nèi)存中寫數(shù)據(jù),其他線程處于等待狀態(tài)。
本文在QNX實時系統(tǒng)上實現(xiàn)Ether CAT網(wǎng)絡(luò)通信,通過發(fā)送CANo pen DSP402協(xié)議指令到ELMO電機(jī)驅(qū)動器進(jìn)行運動控制。CANo pen協(xié)議有SDO與PDO兩種通信方法。SDO通信方法面向服務(wù)數(shù)據(jù)的發(fā)送與接收,實時性不高,主要用于從站配置;PDO通信方法面向過程數(shù)據(jù),實時性高、速度快,適用于實時性控制。驅(qū)動器通信模塊采用PDO通信方式。
5試驗
在QNX實時操作系統(tǒng)上測試Ether CAT網(wǎng)絡(luò)通信,設(shè)備驅(qū)動號為1270100,串行接口為20403,固件類型為Ether CAT主站;贑AN open DSP402通信協(xié)議的ELMO電機(jī)驅(qū)動器反饋數(shù)據(jù)237,表示電機(jī)啟動。
由履帶機(jī)器人搭載可以構(gòu)建三維場景模型的激光傳感器,在國家地震救援訓(xùn)練中心進(jìn)行實地測試。經(jīng)測試,該機(jī)器人能夠在模擬地震廢墟中順利通過可變波浪路面、穿插式可變障礙、可變坡度、復(fù)雜可變路面、攀爬300斜坡和450樓梯等環(huán)境。機(jī)器人的最大越障垂直高度為320 mm,最大跨越溝道寬度為500 mm;在不打滑的情況下,最大爬坡能力為450。
6結(jié)束語
經(jīng)試驗測試,本文設(shè)計的控制系統(tǒng)能夠在復(fù)雜的非結(jié)構(gòu)環(huán)境下穩(wěn)定運行,連續(xù)工作時間為2h,達(dá)到了設(shè)計要求。該控制系統(tǒng)不僅適用于六履帶四擺臂履帶式移動機(jī)器人,還適用于其他多自由度的機(jī)械系統(tǒng),如機(jī)械臂等。本文設(shè)計的六履帶四擺臂履帶式移動機(jī)器人可與可見光/紅外相機(jī)、激光傳感器、溫度傳感器、氣體傳感器、機(jī)械臂等設(shè)備集成,構(gòu)成機(jī)器人化的應(yīng)用系統(tǒng),用于災(zāi)難救援、公共安全應(yīng)急響應(yīng)等領(lǐng)域。
下一篇:返回列表