(天津師范大學(xué) 軟件學(xué)院,天津 300000)
四輪智能機(jī)器人是一個(gè)集環(huán)境感知、行為控制與規(guī)劃于一體的綜合系統(tǒng),隨著計(jì)算機(jī)技術(shù)迅速發(fā)展,四輪智能機(jī)器人正朝著智能化方向發(fā)展[1]。四輪智能機(jī)器人具有智能感知作業(yè)能力和任務(wù)規(guī)劃能力,從硬件層次上分析,四輪智能機(jī)器人具有多個(gè)傳感器以及靈活精確驅(qū)動(dòng)系統(tǒng)。四輪智能機(jī)器人是科學(xué)和技術(shù)發(fā)展演變必然結(jié)果,將機(jī)器人應(yīng)用到焊接、噴漆以及搬運(yùn)工作之中,能夠成為工業(yè)領(lǐng)域重要的幫手[2]。將其應(yīng)用到醫(yī)療保健和外太空之中,使其成為人類防御極限中不可替代的重要作用。正因?yàn)槿绱?,很多國家機(jī)器人技術(shù)快速發(fā)展,具有速度快、效率高、質(zhì)量穩(wěn)定的優(yōu)勢,因此被廣泛應(yīng)用于娛樂、醫(yī)療和軍事等領(lǐng)域之中。
以Mindstorms四輪智能機(jī)器人為研究內(nèi)容,利用攝像頭對(duì)四輪智能機(jī)器人實(shí)時(shí)控制系統(tǒng)進(jìn)行設(shè)計(jì),所設(shè)計(jì)的機(jī)器人包括視覺車道保持和緊急制動(dòng)。利用手機(jī)攝像頭采集道路圖像,通過PC主機(jī)圖像處理程序處理車道線,進(jìn)而保證四輪智能機(jī)器人能夠直接獲取車道線,控制偏差信號(hào)并發(fā)送給機(jī)器人,以此完成換道避障功能。針對(duì)當(dāng)前機(jī)器人運(yùn)行狀態(tài),將無線網(wǎng)絡(luò)通信與機(jī)器人相互結(jié)合,提出了基于Mindstorms的四輪智能機(jī)器人實(shí)時(shí)控制系統(tǒng)設(shè)計(jì),使控制端與操作端雙向移動(dòng)。
四輪智能機(jī)器人在Mindstorms現(xiàn)有材料基礎(chǔ)上,充分利用不同材料屬性,設(shè)計(jì)出擁有前驅(qū)轉(zhuǎn)向和獨(dú)立懸架的系統(tǒng)結(jié)構(gòu),如圖1所示。
圖1 四輪智能機(jī)器人結(jié)構(gòu)
轉(zhuǎn)向系統(tǒng)負(fù)責(zé)控制轉(zhuǎn)向電機(jī),以此證實(shí)轉(zhuǎn)向系統(tǒng)可靠性和可行性;驅(qū)動(dòng)系統(tǒng)通過齒輪和萬向軸傳遞,將電機(jī)電力提供給驅(qū)動(dòng)輪,通過不斷調(diào)整,使機(jī)器人齒輪轉(zhuǎn)動(dòng),為機(jī)器人穩(wěn)定運(yùn)行提供保障。為了充分檢測出機(jī)器人正常行駛中前方道路信息,需將手機(jī)放置在機(jī)器人正前方,保證攝像頭視線良好[3]。
針對(duì)四輪智能機(jī)器人結(jié)構(gòu)搭建,主要是由主控模塊、傳感器模塊、無線通信模塊、運(yùn)動(dòng)模塊以及電源模塊組成的。其中主控模塊負(fù)責(zé)對(duì)四輪智能機(jī)器人大腦控制,及時(shí)處理傳感器所采集的全部數(shù)據(jù),并發(fā)送到遠(yuǎn)程平臺(tái)之中,通過接收遠(yuǎn)程端全部指令,促使運(yùn)動(dòng)控制模塊開始運(yùn)動(dòng);傳感器模塊負(fù)責(zé)采集氣體、溫度、圖像數(shù)據(jù);無線通信模塊負(fù)責(zé)接收來自主控模塊所傳輸?shù)娜繑?shù)據(jù),并將傳輸結(jié)果發(fā)送給主控模塊之中;運(yùn)動(dòng)模塊是機(jī)器人運(yùn)動(dòng)執(zhí)行部分,負(fù)責(zé)接收主控模塊發(fā)送的各種指令,通過直流電機(jī)驅(qū)動(dòng)實(shí)現(xiàn)機(jī)器人前進(jìn)、后退與轉(zhuǎn)彎;電源模塊是機(jī)器人能量來源,負(fù)責(zé)提供運(yùn)動(dòng)控制模塊所需的各種能量[4]。
將運(yùn)動(dòng)單元、控制單元以及網(wǎng)絡(luò)通訊單元都集中在四輪智能機(jī)器人上,保證攝像頭能夠監(jiān)控多個(gè)動(dòng)態(tài)場景,系統(tǒng)硬件設(shè)計(jì)如圖2所示。
圖2 系統(tǒng)硬件設(shè)計(jì)
該硬件是利用隨車攜帶的主機(jī)采集周圍環(huán)境圖像信息,并在運(yùn)動(dòng)過程中,保證機(jī)器人能夠隨時(shí)與周圍環(huán)境WiFi無線網(wǎng)絡(luò)連接;遠(yuǎn)程操作者是根據(jù)機(jī)器人反饋的信息操控機(jī)器人的,一旦發(fā)生緊急狀況,那么機(jī)器人就可直接通過無線網(wǎng)絡(luò)向集控中心報(bào)警。隨車攜帶電腦是系統(tǒng)重要核心設(shè)備,也是動(dòng)力來源,利用智能手機(jī)進(jìn)行雙向通信,并通過USB接口將控制指令發(fā)送給控制板。伺服電機(jī)接收到控制指令后,四輪智能機(jī)器人實(shí)現(xiàn)雙輪差動(dòng)運(yùn)動(dòng),進(jìn)而保證硬件具有獨(dú)立性[5]。
運(yùn)動(dòng)控制模塊電機(jī)驅(qū)動(dòng)選用TMC236芯片,如圖3所示。
圖3 運(yùn)動(dòng)控制模塊電機(jī)驅(qū)動(dòng)芯片
TMC236驅(qū)動(dòng)是一體機(jī)驅(qū)動(dòng),可以與主處理器、電機(jī)和編碼器形成一個(gè)運(yùn)動(dòng)控制結(jié)構(gòu),用來驅(qū)動(dòng)電機(jī)感性負(fù)載。該芯片采用標(biāo)準(zhǔn)TTL邏輯電平信號(hào),控制兩個(gè)端口,在不受到外界因素影響下,具備一個(gè)邏輯電源輸入端,保證內(nèi)部邏輯電路在低壓工作條件下,能夠?qū)⒆兓繉?shí)時(shí)反饋給控制電路之中[6]。
電機(jī)驅(qū)動(dòng)芯片內(nèi)部集成了多個(gè)dmos管,能夠組成一個(gè)H型驅(qū)動(dòng)橋。通過電路為橋臂上開關(guān)管提供控制電壓,保持其工作頻率為350 kHz左右。根據(jù)充電泵電路,使外接電容變大,電壓上升時(shí)間變短[7]。通過電阻輸出過流情況,保護(hù)電路設(shè)置的過電流閾值為15A,如果電流持續(xù)時(shí)間過長,那么過熱保護(hù)將關(guān)閉整個(gè)輸出裝置,一旦結(jié)溫達(dá)到150度時(shí),引腳輸出全部信號(hào)。
圖像采集模塊是通過USB攝像頭進(jìn)行圖像采集的,經(jīng)過USB接口實(shí)現(xiàn)圖像數(shù)據(jù)傳輸。該模塊包含單片機(jī)控制ISP-PLD器件的圖片采集處理系統(tǒng),通過PC主端與單片機(jī)串聯(lián),實(shí)現(xiàn)圖像數(shù)據(jù)的高效傳輸;該模塊用的組件包括圖像采集卡、處理卡、智能相機(jī)以及嵌入式板卡和設(shè)備,其中采集卡是系統(tǒng)重要組成部分,負(fù)責(zé)控制攝像機(jī)拍照,能夠?qū)崟r(shí)采集數(shù)據(jù),并為PC主機(jī)提供高速接口;處理卡為系統(tǒng)增加圖像分析與處理功能,在提高圖像信號(hào)實(shí)時(shí)處理能力基礎(chǔ)上,大大降低系統(tǒng)對(duì)圖像處理過程中對(duì)資源要求;智能相機(jī)是嵌入式系統(tǒng)集成化的設(shè)備,能夠提高系統(tǒng)集成度,通過刪減接口電路,能夠提高系統(tǒng)穩(wěn)定性;嵌入式板卡和設(shè)備為圖像采集提供基礎(chǔ)設(shè)備支持,保證采集結(jié)果能夠達(dá)到最佳化[8]。
無線通信模塊具有GPRS、短消息雙通道傳輸數(shù)據(jù)功能,支持遠(yuǎn)程參數(shù)設(shè)置與程序升級(jí),相對(duì)而言,使用無線通信模塊建立專用無線數(shù)據(jù)傳輸方式。采用由Nordic公司生產(chǎn)的nRF2401收發(fā)芯片,內(nèi)部集成了大量模塊,數(shù)據(jù)傳輸速率相對(duì)較快,耗電較慢[9]。無線通信模塊可分為發(fā)送與接收兩個(gè)部分,都是通過主控模塊將數(shù)據(jù)代碼傳送到芯片之中,并由此代發(fā),除此之外,該芯片能夠接收數(shù)據(jù)代碼,反之也是如此。
設(shè)置轉(zhuǎn)向電機(jī)為中型電機(jī),負(fù)責(zé)機(jī)器人橫向運(yùn)動(dòng);設(shè)置驅(qū)動(dòng)電機(jī)為兩個(gè)大型電機(jī),負(fù)責(zé)機(jī)器人縱向運(yùn)動(dòng)。對(duì)于底層控制模塊應(yīng)與應(yīng)用層接口一致,共同為機(jī)器人提供運(yùn)行方向與速率。其中機(jī)器人運(yùn)行速度應(yīng)由驅(qū)動(dòng)電機(jī)提供,并由車輪半徑推算出來,機(jī)器人前輪轉(zhuǎn)角控制都是采用PID控制器進(jìn)行控制的,機(jī)器人前輪轉(zhuǎn)角控制器為電機(jī)期望轉(zhuǎn)角與實(shí)際轉(zhuǎn)角之間的差值,而輸出內(nèi)容為電機(jī)所占空比;機(jī)器人速度控制器輸入值為驅(qū)動(dòng)電機(jī)期望與實(shí)際轉(zhuǎn)角差值,而輸出為電機(jī)占空比。
四輪智能機(jī)器人硬件電路設(shè)計(jì)主要包括驅(qū)動(dòng)控制、運(yùn)動(dòng)控制以及夜視照明這三個(gè)電路模塊。
1)驅(qū)動(dòng)控制:在嵌入式系統(tǒng)中,采用Arduino微處理器作為驅(qū)動(dòng)電機(jī)核心控制器,以8位atm單片機(jī)作為核心處理器,具有大量傳感器,并與USB直接通信燒寫程序。四輪智能機(jī)器人運(yùn)動(dòng)機(jī)構(gòu)主要包括兩個(gè)驅(qū)動(dòng)輪和一個(gè)攝像頭,充分考慮驅(qū)動(dòng)輪承載扭矩,可利用TMC236驅(qū)動(dòng)芯片對(duì)兩個(gè)驅(qū)動(dòng)輪進(jìn)行擴(kuò)展。
驅(qū)動(dòng)控制電路如圖4所示。
圖4 驅(qū)動(dòng)控制電路
W1和W2分別是低端和高端電源,具有相同電壓;E1和E2為反置圖騰柱,能夠?qū)崿F(xiàn)隔離,并與Q3和Q4不會(huì)同時(shí)導(dǎo)通;R2和R3為電源提供電壓基準(zhǔn),通過改變基準(zhǔn)能夠使電路工作信號(hào)波形呈現(xiàn)遞增趨勢;R5和R6為反饋電阻,通過對(duì)電壓及時(shí)采樣能夠?qū)⒒鶚O所產(chǎn)生的負(fù)反饋形成一個(gè)有限數(shù)值,該數(shù)值能夠通過R5和R6調(diào)節(jié)。
2)運(yùn)動(dòng)控制:四輪智能機(jī)器人電力驅(qū)動(dòng)保證機(jī)器人在不受到外接電源影響下,可長時(shí)間持續(xù)工作,該機(jī)器人以PC主機(jī)為智能控制平臺(tái),不僅能夠享受到主機(jī)上所有資源,還能為機(jī)器人提供5V電壓。運(yùn)動(dòng)控制采用差動(dòng)驅(qū)動(dòng),在機(jī)器人接到上層指令后,通過嵌入式系統(tǒng)控制能夠?qū)﹄姍C(jī)進(jìn)行前后以及轉(zhuǎn)向角的控制。
3)夜視照明:照明系統(tǒng)能夠保障機(jī)器人在缺少外界光源照耀下,對(duì)周圍環(huán)境進(jìn)行控制,并及時(shí)識(shí)別周圍目標(biāo)。采用電腦子帶的攝像頭采集視覺信息,利用Mindstorms控制電機(jī)轉(zhuǎn)向,以此改變攝像頭轉(zhuǎn)向角度。將USB供電的小燈泡安裝在平臺(tái)上,保證機(jī)器人能夠在黑暗中正常工作。
夜視照明線路如圖5所示。
圖5 夜視照明線路
兩個(gè)BG晶體管組成開關(guān)延遲線路,當(dāng)BG晶體管處于截止?fàn)顟B(tài),小電珠將不會(huì)發(fā)光。當(dāng)需要照明時(shí),值需按一下俺就,就可通過AN迅速將電荷充滿。電容C1就會(huì)經(jīng)過電阻向BG1發(fā)射結(jié)放電,因此,兩個(gè)晶體管導(dǎo)通處于飽和狀態(tài),小電珠發(fā)光。待幾秒鐘后,電容C1電荷全部放完,兩個(gè)晶體管將恢復(fù)到截止?fàn)顟B(tài),小電珠不再發(fā)光。
利用Mindstorms作為四輪智能機(jī)器人平臺(tái)基本優(yōu)勢,能夠完成對(duì)該硬件驅(qū)動(dòng)的初步設(shè)計(jì)。
為實(shí)現(xiàn)控制系統(tǒng)穩(wěn)定性,需要在主控芯片中嵌入操作系統(tǒng)軟件,選用嵌入式Linux系統(tǒng),具有一種源碼開放操作系統(tǒng),能夠被不同用戶使用,保證不同用戶對(duì)特有資源設(shè)定權(quán)限。四輪智能機(jī)器人傳感器主要由手機(jī)攝像頭和超聲波傳感器組成,監(jiān)測到的機(jī)器人與前方道路障礙物之間距離。
車道保持功能主要是基于機(jī)器視覺控制實(shí)現(xiàn)的:
1)圖像處理:將傳感器獲取的全部圖像由GGB轉(zhuǎn)變?yōu)榛疑珗D像,設(shè)定特殊閾值,將二值化圖像通過邊緣檢測得到車道線信息;
2)預(yù)估距離控制:根據(jù)模糊規(guī)則,模糊化處理輸入機(jī)器人運(yùn)行速度,經(jīng)過模糊推理后,能夠得到預(yù)估距離控制精確值;
3)轉(zhuǎn)角模糊控制:模糊化處理輸入機(jī)器人偏離中心線距離變化率,經(jīng)過模糊推理后能夠得到輸出量預(yù)估瞄準(zhǔn)距離精準(zhǔn)值。
在實(shí)際場景中,根據(jù)換道動(dòng)機(jī),可分為強(qiáng)制性換道和選擇性換道兩種,強(qiáng)制性換道指的是車輛在指定區(qū)域內(nèi)進(jìn)行換道處理,而選擇性換道指的是駕駛員為了追求更寬闊形式空間進(jìn)行換道行為。為了實(shí)現(xiàn)傳感器數(shù)據(jù)采集與傳輸,需要上位機(jī)控制軟件和下位機(jī)控制軟件同時(shí)對(duì)兩種換道方式進(jìn)行控制。
上位機(jī)控制軟件和下位機(jī)控制軟件如圖6所示。
圖6 控制軟件
上位機(jī)負(fù)責(zé)收集下位機(jī)采集到的全部信息,在用戶發(fā)出相關(guān)指令后,需將編譯后的信息傳遞給下位機(jī),進(jìn)而實(shí)現(xiàn)機(jī)器人強(qiáng)制性換道;下位機(jī)主要實(shí)現(xiàn)傳感器采集數(shù)據(jù),并將全部數(shù)據(jù)傳送到上位機(jī)之中,通過接收上位機(jī)發(fā)送的指令,能夠?qū)崿F(xiàn)機(jī)器人選擇性換道,由此完成四輪智能機(jī)器人實(shí)時(shí)控制。
為驗(yàn)證基于Mindstorms的四輪智能機(jī)器人實(shí)時(shí)控制系統(tǒng)的實(shí)際控制效果,利用PC主機(jī)上攝像頭和麥克風(fēng),在局域網(wǎng)上測試控制效果。
充分考慮機(jī)器人與系統(tǒng)之間的電源系統(tǒng),利用Windows自帶的電池對(duì)電源感知,一旦感知到電能不足時(shí),需通過已經(jīng)生成的環(huán)境地圖分析機(jī)器人自身電量,并利用柵格運(yùn)動(dòng)規(guī)劃方法計(jì)算機(jī)器人當(dāng)前位置和電源之間路徑。在運(yùn)動(dòng)過程中,機(jī)器人傳感器不斷為其提供前方障礙情況,以此及時(shí)修正規(guī)劃路徑。
當(dāng)充電電源與機(jī)器人之間距離僅為45 cm時(shí),需通過充電渡口硬件實(shí)現(xiàn)機(jī)器人充電。當(dāng)機(jī)器人在限定范圍內(nèi)存在特殊圖表時(shí),機(jī)器人會(huì)利用視覺方法匹配默認(rèn)圖表,并根據(jù)未知及時(shí)調(diào)整機(jī)器人自身姿勢,引導(dǎo)機(jī)器人與充電接口連接,實(shí)現(xiàn)自主充電,為功能測試提供帶有充足動(dòng)力的機(jī)器人。
測試環(huán)境是在Wi-Fi環(huán)境下進(jìn)行的,測試相關(guān)參數(shù)如表1所示。
依據(jù)該參數(shù),行控制與監(jiān)測機(jī)器人不同時(shí)間段運(yùn)行狀態(tài),以此測試分析機(jī)器人功能。
以 Mindstorms 為平臺(tái)設(shè)計(jì)四輪智能機(jī)器人實(shí)時(shí)控制系統(tǒng),內(nèi)部轉(zhuǎn)向電機(jī)和驅(qū)動(dòng)電機(jī)控制器輸入的轉(zhuǎn)角值為期望轉(zhuǎn)角和實(shí)際轉(zhuǎn)角差值,輸出結(jié)果為電機(jī)所占的空比。圖7所示兩種電機(jī)轉(zhuǎn)角情況。
圖7 兩種電機(jī)轉(zhuǎn)角
由圖7可知,當(dāng)時(shí)間為0.4 s時(shí),轉(zhuǎn)向電機(jī)轉(zhuǎn)角為3.8°,驅(qū)動(dòng)電機(jī)轉(zhuǎn)角為4°;當(dāng)時(shí)間超過0.5 s時(shí),兩種電機(jī)轉(zhuǎn)角基本保持不變。兩種電機(jī)響應(yīng)上升時(shí)間控制在0.1~0.2 s內(nèi),基本不超調(diào),電機(jī)轉(zhuǎn)角隨著時(shí)間增加,電機(jī)轉(zhuǎn)角基本保持不變,能夠保證上層控制執(zhí)行效果。
在兩種電機(jī)支持下,分析機(jī)器人自動(dòng)換道過程中,前輪轉(zhuǎn)角情況,當(dāng)其向左邊換道時(shí),機(jī)器人前輪轉(zhuǎn)角變化如圖8所示。
圖8 機(jī)器人期望與實(shí)際前輪轉(zhuǎn)角對(duì)比
由圖8可知,機(jī)器人實(shí)際轉(zhuǎn)角值與期望轉(zhuǎn)角值相差較小,正是因?yàn)閮煞N電機(jī)轉(zhuǎn)角大致相同,所以實(shí)際轉(zhuǎn)角與期望轉(zhuǎn)角誤差較小。當(dāng)時(shí)間在1~1.5 s范圍內(nèi)時(shí),機(jī)器人轉(zhuǎn)角期望值由0°變?yōu)?0°;當(dāng)時(shí)間在2~2.5 s范圍內(nèi)時(shí),機(jī)器人轉(zhuǎn)角期望值由30°變?yōu)?°;當(dāng)時(shí)間在3.5~4 s范圍內(nèi)時(shí),機(jī)器人轉(zhuǎn)角期望值由0°變?yōu)?30°;當(dāng)時(shí)間在4.5~5 s范圍內(nèi)時(shí),機(jī)器人轉(zhuǎn)角期望值由-30°又變?yōu)?°。機(jī)器人在換道后基本處于道路中心線上,并且航角是保持不變的,因此,良好前輪轉(zhuǎn)角與穩(wěn)定車速能夠保證機(jī)器人換道效果。即使后來出現(xiàn)機(jī)器人位置或航向角存在偏差,也能由機(jī)器人保持良好功能,并予以修正。
為了驗(yàn)證基于Mindstorms的四輪智能機(jī)器人實(shí)時(shí)控制系統(tǒng)的對(duì)轉(zhuǎn)向?qū)嶋H控制效果,需將傳統(tǒng)控制系統(tǒng)與該系統(tǒng)的轉(zhuǎn)向控制效果進(jìn)行對(duì)比分析,結(jié)果如表2所示。
表2 兩種系統(tǒng)轉(zhuǎn)向控制效果對(duì)比分析
由表2可知,當(dāng)時(shí)間依次為1、2、3、4、5、6 s時(shí),基于Mindstorms控制系統(tǒng)比傳統(tǒng)控制系統(tǒng)控制效果依次高33%、30%、40%、40%、40%、39%。由此可知,基于Mindstorms控制系統(tǒng)轉(zhuǎn)向控制效果較好。
以 Mindstorms 為平臺(tái)設(shè)計(jì)四輪智能機(jī)器人實(shí)時(shí)控制系統(tǒng),為結(jié)構(gòu)設(shè)計(jì)更接近實(shí)際情況提供差速轉(zhuǎn)向機(jī)構(gòu),通過手機(jī)攝像頭和超聲波傳感器開發(fā)智能機(jī)器人輔助系統(tǒng)控制功能,進(jìn)而實(shí)現(xiàn)機(jī)器人車道換道。以Mindstorms為操作平臺(tái),能夠改變?cè)袡C(jī)器人笨重行動(dòng)特點(diǎn),順應(yīng)未來機(jī)器人靈活特點(diǎn),使得機(jī)器人控制系統(tǒng)得到改變。
該系統(tǒng)的設(shè)計(jì)增強(qiáng)了系統(tǒng)穩(wěn)定性,極大提高了系統(tǒng)實(shí)時(shí)性,但同時(shí)系統(tǒng)可靠性還無從驗(yàn)證。運(yùn)行測試環(huán)境是在理論研究基礎(chǔ)下進(jìn)行的,因此研究結(jié)果還局限于理論方面。為了提高測試結(jié)果可靠性,需對(duì)實(shí)驗(yàn)數(shù)據(jù)進(jìn)行重新采集,并設(shè)置優(yōu)秀實(shí)驗(yàn)平臺(tái)。待系統(tǒng)成熟后可廣泛應(yīng)用于實(shí)地勘測、小區(qū)巡邏和門禁系統(tǒng)等領(lǐng)域之中,具有較大經(jīng)濟(jì)效益。