毛立民,郭文利
(東華大學(xué) 紡織裝備教育部工程研究中心,上海 201620)
隨著機(jī)器人技術(shù)的發(fā)展,管道機(jī)器人在管道檢測、噴涂、接口焊接、異物清理等領(lǐng)域的應(yīng)用越來越廣泛,管道機(jī)器人控制系統(tǒng)研究也成為當(dāng)今研究的熱點(diǎn)之一。
本文將PC與DSP相結(jié)合,綜合應(yīng)用兩者的優(yōu)勢[1-2],設(shè)計了一套管道機(jī)器人控制系統(tǒng),上位機(jī)PC采用VC++.NET設(shè)計機(jī)器可視化控制平臺界面及其控制策略,下位機(jī)應(yīng)用 TMS320F28335 DSP[3-5]設(shè)計管道機(jī)器人底層運(yùn)動控制系統(tǒng),完成機(jī)器人控制系統(tǒng)設(shè)計,圖像采集,上下位機(jī)RS-485通信,下位機(jī)與角度傳感器RS-232通信,電機(jī)控制驅(qū)動及角度傳感器和壓力傳感器反饋控制等功能。
考慮到中央空調(diào)通風(fēng)管道有圓管和方管,因此管道機(jī)器人的姿態(tài)檢測與控制策略分為兩種方式。
機(jī)器人在圓管管道中行進(jìn)時,機(jī)器人以120°周向均布的3組獨(dú)立全驅(qū)動(3組行走機(jī)構(gòu)由單獨(dú)的電機(jī)各自驅(qū)動,稱為獨(dú)立全驅(qū)動方式)方式驅(qū)動控制履帶足行進(jìn)。圖1中左右履帶足(固定夾角120°)4個直流電機(jī)分別控制越障機(jī)器人左右兩側(cè)的電動機(jī)驅(qū)動行走履帶足,高度調(diào)節(jié)機(jī)構(gòu)根據(jù)管道直徑自適應(yīng)調(diào)節(jié)支撐履帶足的展臂高度,調(diào)整各履帶足對管壁的壓緊力,保證行走機(jī)構(gòu)以穩(wěn)定的壓緊力撐緊在管道內(nèi)壁上,使機(jī)器人具有充足且穩(wěn)定的牽引力,機(jī)器人能在各種直徑的管道中行走作業(yè)。方管中的機(jī)器人行進(jìn)時情況類似,不復(fù)贅述。
驅(qū)動電機(jī)采用Maxon RE-max系列電機(jī),集成了行星輪減速器和數(shù)字增量編碼器,具有體積小、重量輕和輸出扭矩大的特點(diǎn),共用6個電機(jī),其中5個電機(jī)作為行進(jìn)電機(jī),驅(qū)動機(jī)器人行走,另外1個作為調(diào)節(jié)電機(jī)通過齒輪副轉(zhuǎn)動絲桿螺母副帶動滑動支座沿導(dǎo)桿移動。
圖1 樣機(jī)機(jī)械結(jié)構(gòu)
如圖1所示為機(jī)器人機(jī)械結(jié)構(gòu),主要由以下幾部分組成:支撐履帶足、調(diào)節(jié)臂、滑動支座、機(jī)體、行進(jìn)履帶足、擺腿、絲桿、調(diào)節(jié)電機(jī)。
本體主要性能指標(biāo)為407×250×180(長×寬×高);重量為15 kg(含負(fù)載);最高速度為5 m/min;爬坡角度為30°(在光滑的鍍鋅鐵板上保持靜止);控制最小有效距離為100m。
對管道機(jī)器人控制系統(tǒng)進(jìn)行功能分析,根據(jù)控制器實(shí)現(xiàn)方式及其控制特性,結(jié)合機(jī)器人控制功能要求,設(shè)計了PC+DSP運(yùn)動控制系統(tǒng),其控制結(jié)構(gòu)如圖2所示,機(jī)器人控制系統(tǒng)具體分為三級,即:組織級、協(xié)調(diào)級和執(zhí)行級,三級之間相互聯(lián)系,使得整個系統(tǒng)運(yùn)行更加快速、靈活、準(zhǔn)確。
機(jī)器人主控計算機(jī),任務(wù)規(guī)劃、環(huán)境感知以及與下位機(jī)DSP運(yùn)動控制器的通信;DSP運(yùn)動控制器接受來自上位機(jī)的控制指令,按控制協(xié)議進(jìn)行指令轉(zhuǎn)換與解釋,并通過電機(jī)伺服控制器完成對電機(jī)的伺服控制。
圖2 控制系統(tǒng)總體結(jié)構(gòu)
TMS320F28335片上外設(shè)有3通道SCI異步串口,采用MAX3238CAI完成三路電平轉(zhuǎn)換。
考慮到RS-232屬單端信號傳送,存在共地噪聲和不能抑制共模干擾等問題,最大通信距離不超過20m。根據(jù)功能需求,在通信流程設(shè)計中下位機(jī)設(shè)置接收優(yōu)先,F(xiàn)28335串口C通道的中斷優(yōu)先級最高,所以串口C采用RS-232轉(zhuǎn)RS-485芯片SN65hvd08完成與上位機(jī)串行通訊,通道A、B采用常用的零調(diào)制三線經(jīng)濟(jì)型接線方式與傾角傳感器通訊連接,其電路如圖3所示。
圖3 通信電路
485芯片的發(fā)送和接收功能轉(zhuǎn)換是由芯片的REn、DE端控制的。RE=1,DE=1時,485芯片處于發(fā)送狀態(tài);REn=0,DE=0時,485芯片處于接收狀態(tài)。因此采用一個信號控制485芯片的接收和發(fā)送。
采用NS作為直流電動機(jī)H橋驅(qū)動芯片LMD182000獨(dú)立控制各行進(jìn)電機(jī),芯片上集成有CMOS控制電路和DMOS功率器件,與DSP主處理器、電機(jī)和增量型編碼器構(gòu)成一個完整的運(yùn)動控制系統(tǒng)。如圖4所示為電機(jī)驅(qū)動模塊。
LMD18200集成電路對電機(jī)有兩種PWM信號控制模式:單極性控制和雙極性控制。系統(tǒng)采用單極性驅(qū)動方式,PWM控制信號通過引腳5輸入,轉(zhuǎn)向信號由引腳3輸入。在轉(zhuǎn)向信號控制電機(jī)正轉(zhuǎn)情況下,當(dāng)PWM控制信號的占空比由[0,100%]變化時,電機(jī)電樞兩端電壓由[0,48]變化。
圖4 電機(jī)驅(qū)動模塊
LMD182000還有一個電流監(jiān)測輸出引腳8,該引腳輸出一個電流信號,該電流值正比于工作電流,典型值為377μA/A。將該引腳通過精度為1%的采樣電阻接地,變電流為電壓信號,然后將該電壓信號經(jīng)過由阻容低通濾波后送至DSP的A/D轉(zhuǎn)換輸入端口,從而可以實(shí)時檢監(jiān)測電機(jī)的工作電流。
根據(jù)上位機(jī)串口指令和光電編碼器及反饋的速度信息產(chǎn)生一定占空比的PWM波,并將方向、使能信號送入電機(jī)驅(qū)動芯片,實(shí)現(xiàn)機(jī)器人運(yùn)動和姿態(tài)調(diào)整的精確控制。
位置速度檢測電路在電機(jī)控制中具有非常重要的作用,其檢測的精確性直接反應(yīng)到對電機(jī)控制的精度。系統(tǒng)采用光電編碼器來測量電機(jī)的轉(zhuǎn)速和位置。光電編碼器輸出3相信號,其中A相和B相信號先光電隔離、濾波整形后直接送到DSP。圖5中6N137是高速光耦,實(shí)現(xiàn)模擬信號和數(shù)字信號的隔離,74HC14是施密特觸發(fā)器,銳化其上升沿和下降沿,去除因干擾而可能存在的尖峰毛刺,起到整型和濾波的作用,輸出標(biāo)準(zhǔn)的數(shù)字式方波。
圖5 位置與速度檢測模塊
傳感器檢測系統(tǒng)包括橫滾角傳感器、俯仰角傳感器和壓力傳感器和限位微動開關(guān)。橫滾角傳感器選用ZCT245AN雙軸傾角傳感器為機(jī)體橫滾角檢測,采用ZCT100AN單軸傾角傳感器作用機(jī)體俯仰角檢測,傾角傳感器均采用RS232方式與DSP控制器通信,完成機(jī)體行進(jìn)姿態(tài)感測;壓力傳感器用于檢測調(diào)節(jié)臂內(nèi)彈簧壓力值的大??;常開限位微動開關(guān)用于滑動座行程限位保護(hù)及機(jī)器人開機(jī)初始化時支座初始位移捕獲。
F28335采用全新的eQEP模塊架構(gòu),新增選通脈沖輸入端,當(dāng)微動開關(guān)接觸閉合時,向DSP的EQEPS引腳輸入選通脈沖,觸發(fā)中斷中斷調(diào)用處理了程序初始化正交編碼計數(shù)器,完成位置捕獲。
機(jī)器人系統(tǒng)的軟件包括分別運(yùn)行上位機(jī)控制策略平臺及下位機(jī)軟件DSP運(yùn)動控制軟件及兩者之間的通信協(xié)議。軟件設(shè)計采用了模塊化的設(shè)計思想,不僅便于程序的調(diào)試與修改,也利于將來程序的擴(kuò)展[6-7]。上位機(jī)采用VC++.NET來實(shí)現(xiàn),調(diào)用工業(yè)強(qiáng)度的串口類接口,實(shí)現(xiàn)上下位機(jī)串行通信。工控機(jī)與DSP的通信信息由電機(jī)控制、傳感器信息采集等構(gòu)成。通過串口RS-232轉(zhuǎn)RS-485完成從工控機(jī)和DSP的數(shù)據(jù)雙向單工傳輸。如圖6所示為控制系統(tǒng)軟件模塊化結(jié)構(gòu)。
圖6 控制系統(tǒng)軟件模塊化結(jié)構(gòu)
控制決策軟件是管道機(jī)器人進(jìn)行各種功能控制決策的核心層,軟件主要完成移動機(jī)器人基本運(yùn)動控制、圖像采集、水平檢測、串口通信。系統(tǒng)上位機(jī)控制界面如圖7所示。
圖7 上位機(jī)程序界面
DSP運(yùn)動控制軟件是機(jī)器人電機(jī)控制的核心層,實(shí)現(xiàn)多電機(jī)速度位置的精確控制和多傳感器的協(xié)調(diào)控制。DSP主控程序主要包括分配存儲空間、初始化、中斷、通信協(xié)議、電機(jī)控制、傳感器信號處理等子程序,其控制流程圖如圖8所示。
圖8 下位機(jī)主控程序流程圖
完成下位機(jī)發(fā)送數(shù)據(jù)功能由兩個子函數(shù)實(shí)現(xiàn),分別為 void Txready()和 void Scia_send()。void Txready函數(shù)主要完成將根據(jù)上位機(jī)請求數(shù)據(jù)預(yù)存在SCITX[]數(shù)組內(nèi),然后調(diào)用Scia_send()完成數(shù)據(jù)發(fā)送。其Scia_send()發(fā)送流程如圖9所示。
本文提出了一種基于PC+DSP運(yùn)動控制器的控制平臺,闡述了整個管道機(jī)器人控制系統(tǒng)的設(shè)計與實(shí)現(xiàn)。系統(tǒng)設(shè)計下位機(jī)以TMS320F28335 DSP控制核心,系統(tǒng)采用模塊化設(shè)計,通過系統(tǒng)功能擴(kuò)展,具備高度的靈活性和廣泛的適用性。
圖9 Scia_send()發(fā)送數(shù)據(jù)流程
[1]蘇 蕊,歐陽紅林.基于ARM芯片的嵌入式運(yùn)動控制系統(tǒng)設(shè)計[J].微計算機(jī)信息,2008:4-2(10):137-138.
[2]王 巖.基于DSP的運(yùn)動控制器的硬件設(shè)計.電子器件[J],2004,27(2):299-302.
[3]劉 果,歐陽紅林.基于TMS320F28335的PMSM伺服系統(tǒng)的設(shè)計[J].電力電子技,2008:42(10):16-17.
[4]雷曉瑜,曹廣忠.TMS320F28335及其最小應(yīng)用系統(tǒng)設(shè)計[J].電子設(shè)計工程,2009,17(1):91-95.
[5]黃德友,劉衛(wèi)東.基于TMS320F2812高精度跟蹤伺服控制系統(tǒng)設(shè)計[J].機(jī)械與電子,2008(2):30-32.
[6]許春山,王建平,曹廣益等.基于Visual C++6.0的機(jī)器人控制系統(tǒng)軟件實(shí)現(xiàn)[J].計算機(jī)應(yīng)用與軟件.2003,5(10):12-14.
[7]劉和平.TMS320LF240x DSPC語言開發(fā)應(yīng)用[M].北京:北京航天航空大學(xué)出版社,2002.