張佑春,游志宇,任遠(yuǎn)林,仲濟(jì)艷
(1.安徽工商職業(yè)學(xué)院應(yīng)用工程學(xué)院,安徽合肥231131;2.西南民族大學(xué)電氣信息工程學(xué)院,四川成都610041)
球形機(jī)器人是驅(qū)動(dòng)系統(tǒng)位于球殼內(nèi)部,通過(guò)內(nèi)驅(qū)動(dòng)方式實(shí)現(xiàn)球體運(yùn)動(dòng)機(jī)器人。與傳統(tǒng)機(jī)械輪式機(jī)器人相比,具備了更出眾的運(yùn)動(dòng)能力和適應(yīng)復(fù)雜地形能力。這類機(jī)器人具有良好的動(dòng)靜平衡性,可以行駛在沙塵、潮濕、腐蝕性的惡劣環(huán)境中。球形機(jī)器人是機(jī)器人研究領(lǐng)域的熱點(diǎn),但是基礎(chǔ)理論不夠完善,技術(shù)層面更處在起步階段。于濤等[1]設(shè)計(jì)的球形機(jī)器人利用角度動(dòng)力守恒定律和陀螺儀驅(qū)動(dòng)模式,完成了機(jī)器人移動(dòng)控制功能。曾鵬[2]等利用了無(wú)線通信和雙驅(qū)動(dòng)電機(jī)控制,完成了三種不同結(jié)構(gòu)機(jī)器人(BHQ-1、BHQ-2和BHQ-3)的設(shè)計(jì)。王曉云[3]利用視覺(jué)與IMU融合方法,對(duì)機(jī)器人姿態(tài)進(jìn)行了修正,有效提高了精度。上述機(jī)器人成本較高,實(shí)用性有待進(jìn)一步提升。
為了解決上述問(wèn)題,設(shè)計(jì)了視覺(jué)式物體自主識(shí)別球形移動(dòng)機(jī)器人系統(tǒng)。該系統(tǒng)通過(guò)機(jī)械結(jié)構(gòu)設(shè)計(jì)、控制電路設(shè)計(jì)和攝像頭圖像識(shí)別技術(shù),完成了機(jī)器人自主平衡移動(dòng)和物體自主識(shí)別等功能設(shè)計(jì)。該機(jī)器人具備遠(yuǎn)程控制、成本低、功耗小和實(shí)用性強(qiáng)等優(yōu)點(diǎn),具備一定的實(shí)用價(jià)值。
視覺(jué)式物體識(shí)別球形移動(dòng)機(jī)器人系統(tǒng)硬件結(jié)構(gòu)主要包括了主控制器、陀螺儀角度采集、藍(lán)牙通信、圖像采集、電機(jī)驅(qū)動(dòng)和電源等[4]。
(1)主控制器STM32F103模塊:它主要完成了多傳感器數(shù)據(jù)分析、融合和控制指令上傳與下發(fā)等功能。
(2)圖像采集傳感器模塊:該模塊采用了柯達(dá)公司的BPI-D1攝像頭,支持1080P高清視頻采集。它通過(guò)wifi直接將圖像數(shù)據(jù)傳輸至上位機(jī),通過(guò)算法處理之后將分析結(jié)果傳輸至STM32F103,從而實(shí)現(xiàn)實(shí)時(shí)物體識(shí)別監(jiān)測(cè)。
(3)動(dòng)力驅(qū)動(dòng)模塊:它采用了中芯國(guó)際的TB6612控制芯片,驅(qū)動(dòng)電流大小為1.2A,機(jī)器人驅(qū)動(dòng)控制采用了4種模式靈活電驅(qū)切換。
(4)角度采集陀螺儀模塊:采用了I2C通信接口和STM32F103集成DMA功能,直接將機(jī)器人運(yùn)動(dòng)傾角數(shù)據(jù)快速傳輸至RAM中存儲(chǔ)。球形移動(dòng)機(jī)器人系統(tǒng)硬件結(jié)構(gòu)設(shè)計(jì)如圖1所示。
圖1 球形移動(dòng)機(jī)器人系統(tǒng)硬件結(jié)構(gòu)
機(jī)器人機(jī)械構(gòu)造主要包括了三層結(jié)構(gòu)[5]:系統(tǒng)控制第一層,主要包括了主控芯片、各類傳感器和無(wú)線傳輸模塊等;電機(jī)驅(qū)動(dòng)第二層,通過(guò)2對(duì)軸連接直流電機(jī),完成機(jī)器人的驅(qū)動(dòng)支撐;充電線圈第三層,當(dāng)系統(tǒng)無(wú)電能支持時(shí),利用電磁感應(yīng)技術(shù)將機(jī)器人直接安裝充電底座上實(shí)現(xiàn)快速充電。機(jī)器人的運(yùn)動(dòng)原理如下:設(shè)球形機(jī)器人的初始重心為Q,驅(qū)動(dòng)輪位置節(jié)點(diǎn)為M,機(jī)器人質(zhì)量值為m,Q與M之間的夾角角度值和距離值分別為θ和L,轉(zhuǎn)動(dòng)慣量值為J。機(jī)器人內(nèi)部受力情況如圖2所示。
圖2 機(jī)器人內(nèi)部受力圖示
為了保持機(jī)器人在移動(dòng)過(guò)程中重心平衡,平衡外力控制值設(shè)為F,機(jī)器人合外力力矩J等于傾角加速度α與轉(zhuǎn)動(dòng)慣量L的乘積,θ為機(jī)器人運(yùn)動(dòng)的傾角夾角。機(jī)器人定軸移動(dòng)方程式[6]如式(1)所示。
(1)
由于θ夾角值很小,設(shè)置sinθ≈θ,cosθ≈1定軸移動(dòng)方程式近似如式(2)所示。
(2)
通過(guò)傅里葉變換,可得傳遞函數(shù)如式(3)所示。
(3)
為了機(jī)器人移動(dòng)過(guò)程能夠完成自平衡狀態(tài),需要將機(jī)器人的夾角角度值θ一直保持在期望值θ0附近。機(jī)器人系統(tǒng)采用了PID算法,將系統(tǒng)加入比例控制、積分控制和微分控制,通過(guò)陀螺儀MPU6050完成機(jī)器人姿態(tài)檢測(cè),并將姿態(tài)角速度和角加速度通過(guò)卡爾曼濾波處理得到傾角估優(yōu)值[7]。然后,將期望傾角與最優(yōu)值進(jìn)行姿態(tài)PID實(shí)時(shí)控制。最終,通過(guò)電機(jī)驅(qū)動(dòng),完成機(jī)器人自平衡運(yùn)動(dòng)狀態(tài)實(shí)時(shí)控制閉環(huán)系統(tǒng)設(shè)計(jì)。機(jī)器人自平衡狀態(tài)PID控制流程如圖3所示。
陀螺儀實(shí)時(shí)采集夾角值為θ1,θ2,…,θk,當(dāng)前與期望值θ0的偏差值Ek如式(4)所示。
Ek=θk-θ0
(4)
夾角角度值與目標(biāo)期望值歷史偏差為E1,E2,…,Ek,相鄰兩次差值Dk如式(5)所示[8]。
Dk=Ek-Ek-1
(5)
設(shè)比例系數(shù)為Kp,微分系數(shù)為Kd,由式(4)和式(5)可得PID姿態(tài)控制差分方程Q如式(6)所示。
Q=KpEk+KdDk
(6)
電機(jī)驅(qū)動(dòng)死區(qū)設(shè)置為Sq,PWM輸出上限設(shè)為Qmax,電機(jī)驅(qū)動(dòng)PWM最終輸出值Q如式(7)所示[9]。
(7)
機(jī)器人系統(tǒng)上電后,通過(guò)主控制器STM32F103完成陀螺儀MPU6050、藍(lán)牙通信、電機(jī)和BDI-P的系統(tǒng)初始化功能。MPU6050采集到夾角角度數(shù)據(jù)(角速度與角加速度)后,通過(guò)卡爾曼濾波處理和PID姿態(tài)控制完成機(jī)器人自平衡和圖像采集與處理,同時(shí)通過(guò)藍(lán)牙通信與控制指令解析,完成機(jī)器人執(zhí)行相應(yīng)指令動(dòng)作[10]。機(jī)器人系統(tǒng)軟件總體流程設(shè)計(jì)如圖4所示。STM32F103主控制器通過(guò)控制指令實(shí)現(xiàn)機(jī)器人移動(dòng)功能的電機(jī)驅(qū)動(dòng),將陀螺儀實(shí)時(shí)采集的角速度和角加速度數(shù)據(jù)進(jìn)行PID姿態(tài)自平衡計(jì)算,藍(lán)牙負(fù)責(zé)指令無(wú)線通信互傳,BDI-PI攝像頭通過(guò)wifi模塊將數(shù)據(jù)傳至上位機(jī),上位機(jī)完成物體圖像識(shí)別算法處理后通過(guò)藍(lán)牙發(fā)送至STM32F103主控制器[11-12]。機(jī)器人自平衡控制流程如圖5所示。
圖4 機(jī)器人系統(tǒng)軟件總體流程設(shè)計(jì)
圖5 機(jī)器人自平衡控制流程
對(duì)機(jī)器人測(cè)試系統(tǒng)完成上電與自主尋物運(yùn)動(dòng)指令后,機(jī)器人執(zhí)行相應(yīng)的前進(jìn)后退、左旋右旋和左轉(zhuǎn)右轉(zhuǎn)等動(dòng)作。當(dāng)機(jī)器人自主運(yùn)動(dòng)一段時(shí)間后,機(jī)器人系統(tǒng)平衡傾角動(dòng)態(tài)變化信息記錄如圖6所示,其中縱坐標(biāo)為機(jī)器人傾角,橫坐標(biāo)為運(yùn)動(dòng)時(shí)間。
圖6 機(jī)器人系統(tǒng)平衡傾角動(dòng)態(tài)變化信息
通過(guò)藍(lán)牙信息傳輸記錄了機(jī)器人系統(tǒng)執(zhí)行運(yùn)動(dòng)控制指令的自平衡測(cè)試偏離角測(cè)試數(shù)據(jù)如表1所示。
經(jīng)過(guò)表1計(jì)算可知,球形機(jī)器人自平衡平均時(shí)間約為4.02s,平均最大偏離角度約為3.96°。為了進(jìn)一步驗(yàn)證機(jī)器人系統(tǒng)抗干擾能力,進(jìn)行了外力擾動(dòng)測(cè)試。機(jī)器人自主恢復(fù)平衡的傾角變化信息如圖7所示,其中縱坐標(biāo)為機(jī)器人傾角,橫坐標(biāo)為運(yùn)動(dòng)時(shí)間。
表1 機(jī)器人運(yùn)動(dòng)自平衡最大偏離角
圖7 施加擾動(dòng)又恢復(fù)平衡角度信息
系統(tǒng)施加多次擾動(dòng)后,機(jī)器人自主恢復(fù)平衡時(shí)間以及最大偏離角的實(shí)驗(yàn)測(cè)試記錄情況如表2所示。
由表2計(jì)算可知,系統(tǒng)受干擾的自平衡平均時(shí)間約為2.13s,平均最大偏角約為2.88°,系統(tǒng)受擾后的自平衡時(shí)間控制在3s以內(nèi),滿足球型機(jī)器人設(shè)計(jì)要求。
視覺(jué)式物體自主識(shí)別球形移動(dòng)機(jī)器人系統(tǒng)通過(guò)陀螺儀傾角數(shù)據(jù)采集、BPI-D1高清圖像采集、無(wú)線傳輸wifi與藍(lán)牙,完成了系統(tǒng)運(yùn)動(dòng)精確控制與自主物體識(shí)別等功能。該系統(tǒng)通過(guò)PID姿態(tài)保持和卡爾曼濾波算法處理,保證了機(jī)器人系統(tǒng)在受擾情況下自主平衡功能實(shí)現(xiàn)。經(jīng)過(guò)系統(tǒng)測(cè)試,系統(tǒng)運(yùn)動(dòng)中的最大傾角和自主平衡恢復(fù)時(shí)間均滿足球形機(jī)器人的設(shè)計(jì)要求,同時(shí)具備較強(qiáng)的魯棒性和抗干擾能力,具備較強(qiáng)的推廣與應(yīng)用價(jià)值。