,
(1.天津職業(yè)技術(shù)師范大學(xué)信息技術(shù)工程學(xué)院,天津 300222;2.中國民航大學(xué)電子信息與自動化學(xué)院,天津 300300)
移動機器人屬于機器人中的一個重要分支,移動機器人技術(shù)是多學(xué)科交叉融合的高新技術(shù),融合了機械、運動學(xué)、動力學(xué)、控制論,計算機等幾個重要學(xué)科,基于移動機器人的產(chǎn)品已經(jīng)出現(xiàn)在軍用、民用、生活等方方面面的領(lǐng)域,在一定程度上解放了人們的勞動力,隨著新工科的出現(xiàn),人工智能越來越多地出現(xiàn)在人們的視野中,人工智能技術(shù)所依托的機器人平臺的設(shè)計變的尤為重要。在系統(tǒng)設(shè)計中,分層結(jié)構(gòu)的設(shè)計方便進(jìn)行系統(tǒng)的開發(fā)和集成[1- 3],在控制系統(tǒng)設(shè)計中,小型移動機器人通常采用微處理器方式,如在飛思卡爾車比賽中,選用一些微處理器作為控制中樞較為多見,如STM32微處理器[4]、基于ARM微處理器[5]等構(gòu)成嵌入式系統(tǒng)的核心控制器[6]。采用微處理器的好處是方便小型化,但是由于現(xiàn)在芯片的處理能力有限,而機器人所在的環(huán)境較為復(fù)雜,接收到的信息量很大,這就要求中央處理器的的處理能力很強,為了解決這個問題,在此,設(shè)計一種基于工業(yè)控制計算機的移動機器人,用工業(yè)控制計算機作為控制核心,可以進(jìn)行大量的數(shù)據(jù)計算,以及各類控制算法、軌跡規(guī)劃算法、圖像處理算法的驗證,為移動機器人的硬件和軟件設(shè)計提供了參考。
該移動機器人機械結(jié)構(gòu)采用了層狀結(jié)構(gòu),底層結(jié)構(gòu)示意如圖1所示,有2個驅(qū)動輪、1個導(dǎo)向輪,車輪安裝在底盤之上,底盤上還有2層擱板,一層擱板放置電機驅(qū)動器、電池、超聲波組件等,另外一層擱板放置工業(yè)控制計算機、傳感器等;2層擱板之間通過連接柱連接。底盤是整個機器人的主骨架,主要用于支撐整個機器人主體、安裝車輪、減速機、電動機車輪懸掛機構(gòu)等。
圖1 移動機器人總體結(jié)構(gòu)
為了完成移動機器人的移動、控制、避障、自組織行動等需要相應(yīng)的動力系統(tǒng)、感知系統(tǒng)、控制系統(tǒng)等,其電氣系統(tǒng)總體結(jié)構(gòu)如圖2所示,從總體上可以分為3個部分:控制執(zhí)行層、組織決策層和感知層。
控制執(zhí)行層是移動機器人的動力來源,接收來自組織決策層的指令,完成預(yù)定的運動控制;該部分主要包括運動控制卡、電動機、驅(qū)動器、電池等部分。運動控制卡采用固高公司的GT- 200- SV- PCI- G,該運動控制卡是一款基于PCI總線的運動控制器,可用于控制步進(jìn)電機和伺服系統(tǒng),該控制器能夠通過DSP和FPGA進(jìn)行運動規(guī)劃,支持點位控制和連續(xù)軌跡控制,可以輸出脈沖或模擬量指令。
圖2 電氣系統(tǒng)總體結(jié)構(gòu)
該控制卡提供VC,VB,C#和LabVIEW等開發(fā)環(huán)境下的庫文件,通過這些庫文件對控制器進(jìn)行編程,能夠?qū)崿F(xiàn)移動機器人的運動控制。GT- 200- SV- PCI- G運動控制卡是2軸控制卡,控制方式是脈沖或者-10~10 V模擬量輸出,能夠接收三相編碼器差分信號,頻率高達(dá)8 MHz??刂扑惴ㄊ荘ID+速度前饋+加速度前饋,具有16路數(shù)字量輸入、16路數(shù)字量輸出、8路12 bit的模擬量輸入。直流電動機采用瑞士MAXON公司的EC- max 40,該電機功率120 W。驅(qū)動器也采用瑞士MAXON公司的,型號DES 50/5,該驅(qū)動器是四象限直流電動機伺服驅(qū)動器,工作電壓12~50 V,最大能夠帶動250 W電動機,可以接受-10~10 V的設(shè)定電壓。編碼器采用MAXON公司的HEDS_5540,編碼器每圈產(chǎn)生500個脈沖,三相輸出,工作電壓5 V。
組織決策層主要是接收來自感知層的檢測信號,對信號進(jìn)行分析,然后根據(jù)系統(tǒng)需要,做出決策,并將決策指令發(fā)送到控制執(zhí)行層。該層的主要組成部分是工業(yè)控制計算機,采用研華公司的AIMB- 501G2- KSA1E,該工業(yè)控制計算支持Intel i7處理器,包含2個PCI總線接口,10個串口,10個USB接口。
感知層主要由一系列的傳感器組成,用來感知機器人周圍的環(huán)境情況,并將信號發(fā)送組織決策層,為機器人的運動提供反饋信號。該部分主要由超聲波傳感器、數(shù)字羅盤、激光掃描測距儀、視覺檢測系統(tǒng)構(gòu)成。超聲波傳感器采用了5個,在移動機器人導(dǎo)向輪所在的面上分布2個超聲波傳感器,其他3面每面1個,該傳感器型號為URM37,通過RS232口與工業(yè)控制計算機連接,測距范圍是5~550 cm,分辨率1 cm,精度1%,采樣周期0.1 s,工作電壓5 V。數(shù)字羅盤用來對機器人進(jìn)行定位,采用的是LP3300,其內(nèi)置三軸磁場傳感器和雙軸傾角傳感器,通過RS232總線與工業(yè)控制計算機進(jìn)行連接。激光掃描測試儀采用HOKUYO公司的URG- 04LX,該傳感器測量范圍20~5 600 mm,240°,掃描時間0.1 s,角度分辨率0.36°,工作電壓直流5 V,通過RS232與工業(yè)控制計算機連接。視覺檢測系統(tǒng)采用深度相機P60UA,測距范圍0.6~6 m,深度圖像分辨率640×480(VGA)16bit@30 FPS,深度圖像視場角70°×58°×45°;RGB圖像分辨率1 280×960@10FPS,RGB圖像視場角74° × 63°× 49°,通訊方式USB接口,供電接口USB。
該系統(tǒng)所需要的電源電壓等級有多種,采用24 V/20 Ah鎳氫電池組,通過5 V電源變換電路和12 V電源變換電路,將24 V電源變換為5 V和12 V。5 V電源給編碼器、超聲波傳感器、激光掃描測試儀、深度相機供電,12 V電源給數(shù)字羅盤、工業(yè)控制計算機供電,電機驅(qū)動器直接采用24 V供電。電源檢測電路用于檢測電池組的電壓,如果電壓低于22 V時,將會有報警提示,提醒充電。電源分布如圖3所示。
圖3 電源系統(tǒng)示意
整個系統(tǒng)的軟件包括管理類和控制類2大類,如圖4所示,管理類主要包括初始化子模塊、文件處理子模塊、人機界面子模塊。初始化子模塊主要完成運動控制卡初始化、傳感器初始化、電動機、機器人狀態(tài)初始化等,文件處理子模塊主要完成歷史數(shù)據(jù)的記錄,人機界面子模塊主要完成機器人狀態(tài)的實時監(jiān)控、各種參數(shù)的輸入、曲線顯示等。
控制類程序是整個軟件系統(tǒng)的核心,主要包括傳感器數(shù)據(jù)處理子模塊、軌跡規(guī)劃子模塊、運動控制子模塊。傳感器數(shù)據(jù)處理子模塊主要完成傳感器數(shù)據(jù)的采集、處理等。軌跡規(guī)劃子模塊主要是根據(jù)傳感器數(shù)據(jù)信息對機器人當(dāng)前的姿態(tài)、環(huán)境進(jìn)行判別,而后通過特定算法進(jìn)行決策判斷,規(guī)劃機器人的運動軌跡。運動控制子模塊主要是接收軌跡規(guī)劃子模塊的指令,對機器人進(jìn)行實時控制,實時控制主要是由GT- 200- SV- PCI- G運動控制卡來完成。整個控制系統(tǒng)的主程序如圖5所示。
圖4 軟件系統(tǒng)
圖5 主程序流程
從圖5可以看出,移動機器人控制系統(tǒng)的主要關(guān)鍵點在于傳感器信息融合、機器人軌跡規(guī)劃算法,運動控制通過GT- 200- SV- PCI- G運動控制卡內(nèi)含的PID + 速度前饋 + 加速度前饋來實現(xiàn)。
軟件程序設(shè)計中,傳感器數(shù)據(jù)采集子模塊、軌跡規(guī)劃子模塊對于精確定時都有要求,由于Windows操作系統(tǒng)是多任務(wù)系統(tǒng),系統(tǒng)將 CPU 時間劃分給各個線程,各個線程在各自的時間片內(nèi)使用CPU,故此系統(tǒng)精確定時采樣成為一個關(guān)鍵問題。系統(tǒng)采用多媒體定時器和微秒定時器相結(jié)合的方法,提高定時的精度。定時子程序流程如圖6所示。
圖6 定時器子程序
采用基于人工勢場的方法進(jìn)行機器人路徑軌跡規(guī)劃,流程如圖7所示。
圖7 人工勢場路徑軌跡規(guī)劃方法流程
針對該系統(tǒng)進(jìn)行了數(shù)學(xué)建模,進(jìn)行了基于人工勢場的路徑規(guī)劃算法仿真,結(jié)果如圖8所示。
圖8 人工勢場路徑軌跡規(guī)劃仿真結(jié)果
軌跡規(guī)劃的空間大小是10 m2的平面范圍,(0,0)坐標(biāo)處為起點位置,(5,10)坐標(biāo)處為目標(biāo)點,空間中有預(yù)先知道的7個障礙物坐標(biāo),只要在系統(tǒng)獲得障礙物信息的情況下,根據(jù)人工勢場路徑規(guī)劃方法,就能夠計算出機器人下一步應(yīng)該偏移的角度,進(jìn)而得到一個運動中的避障軌跡,如圖8中虛線所示的軌跡規(guī)劃。
以工業(yè)控制計算機為核心,設(shè)計了基于工業(yè)控制計算機的移動機器人控制系統(tǒng),為復(fù)雜運動控制算法的驗證提供了實際的物理實驗平臺,在此基礎(chǔ)上,能夠?qū)崿F(xiàn)基于人工勢場的機器人路徑軌跡規(guī)劃等算法的驗證,本文對所建系統(tǒng)的模型進(jìn)行了人工勢場軌跡規(guī)劃的仿真驗證。該系統(tǒng)的控制中樞由于采用工業(yè)控制計算機,可以進(jìn)行大量的數(shù)據(jù)計算,作為測試平臺,該系統(tǒng)可以用于各類復(fù)雜算法測試中,后期將會在該系統(tǒng)上進(jìn)行各類物理實驗驗證工作。