單片機(jī)與無線通信技術(shù)在特殊探測需求下的應(yīng)用實例
引言
在工業(yè)生產(chǎn)和日常生活中,常會出現(xiàn)尋物、探測、救援等特殊需求,涉及的地點有可能是狹小空間、較深洞穴、建筑廢墟,甚至是含有毒物質(zhì)的空間,這些工作場合往往人員難以進(jìn)入,可越障運(yùn)行、探測并傳輸信息的無人化探測機(jī)器人在此顯得極為重要。鑒于此,在充分調(diào)研信息探測技術(shù)、機(jī)器人控制技術(shù)和遠(yuǎn)程通信技術(shù)的基礎(chǔ)上,結(jié)合現(xiàn)有的常用技術(shù)手段和相關(guān)研究成果,設(shè)計了一種基于STM32單片機(jī)和無線通信模塊(本文主要涉及Wi-Fi模塊和藍(lán)牙模塊)的探測機(jī)器人,并對其進(jìn)行了實際的運(yùn)行和探測功能測試,同時根據(jù)測試情況提出了某些方面的改進(jìn)方法。
1研究背景及意義
從外太空探索到生產(chǎn)、生活中的某一個具體方面,對作業(yè)環(huán)境信息的探測需求極為普遍。而某些特殊的探測空間,人員難以進(jìn)入其內(nèi)部作業(yè),例如:小口徑管道、沉重機(jī)械設(shè)備底部或后部等較為狹小的空間,科學(xué)考察、野外人員搜救涉及的各類洞穴,發(fā)生災(zāi)難事故后的建筑物廢墟內(nèi),含有毒物質(zhì)、危險動植物或高壓電等危及人員生命安全的場所,等等。遇到這些情況時,由于操作人員不能直接進(jìn)入工作環(huán)境內(nèi)部,需要探測機(jī)器人代替人員進(jìn)入其中,及時獲取內(nèi)部信息資料并傳輸?shù)酵獠?以便迅速確定最佳工作方案。
因此,對探測機(jī)器人機(jī)械機(jī)構(gòu)、運(yùn)動控制、數(shù)據(jù)通信和電源方案等方面的研究一直是國內(nèi)外的熱點問題,探測機(jī)器人也在近年來變得更加多樣化和智能化。文獻(xiàn)提出了一種井下探測機(jī)器人的總體設(shè)計方案,并重點介紹了其運(yùn)動控制系統(tǒng)的軟件和硬件設(shè)計:文獻(xiàn)[5]結(jié)合礦井特殊探測環(huán)境的實際特點,提出了一種基于蟻群算法和遺傳算法的探測機(jī)器人智能路徑規(guī)劃方法:文獻(xiàn)提出的探測機(jī)器人運(yùn)動控制算法以大數(shù)據(jù)聚類作為基礎(chǔ),很大程度上降低了機(jī)器人運(yùn)動軌跡的誤差。
可見,在探測機(jī)器人領(lǐng)域,已有大量的研究成果可供借鑒和參考。但在實際的信息探測任務(wù)中,機(jī)器人面對的環(huán)境復(fù)雜程度往往較高,固定的循跡運(yùn)動模式和靈活度不高的控制算法將不能適應(yīng)各種復(fù)雜的作業(yè)地形環(huán)境。本文設(shè)計的探測機(jī)器人具備成本低、可控性高、適應(yīng)性強(qiáng)等特點,不去設(shè)計復(fù)雜且依賴于高成本器件的運(yùn)動控制算法,代之以簡單的實時通信控制系統(tǒng)架構(gòu),將STM32單片機(jī)和無線通信模塊作為控制、通信平臺,能以較低的硬件成本滿足較通用的多場景探測需求。
2系統(tǒng)總體架構(gòu)設(shè)計
2.1探測機(jī)器人功能需求
探測機(jī)器人的系統(tǒng)設(shè)計思路基于以下功能需求提出:(1)運(yùn)動底盤結(jié)構(gòu)具備對多種復(fù)雜地形的適應(yīng)能力,轉(zhuǎn)向、越障靈活:(2)具有視頻信息獲取和傳輸?shù)墓δ?(3)操作人員能對探測機(jī)器人進(jìn)行無線遙控,從而控制其運(yùn)動和攝像頭轉(zhuǎn)動。
2.2探測機(jī)器人系統(tǒng)總體架構(gòu)
本文設(shè)計的探測機(jī)器人系統(tǒng)總體架構(gòu)如圖1所示。
圖l探測機(jī)器人系統(tǒng)總體架構(gòu)
可將探測機(jī)器人系統(tǒng)分為感知層、控制層、通信層和上位機(jī)四個主要部分。其中:
(1)感知層包括USB攝像頭和超聲波測距模塊。攝像頭通過USB通信協(xié)議連接STM32單片機(jī),可將拍攝到的視頻信息實時傳輸?shù)絾纹瑱C(jī)接口:探測機(jī)器人的運(yùn)動主要依靠操作人員遙控,但預(yù)留出超聲波測距與報警功能的設(shè)計,便于操作人員更加直觀地評估目標(biāo)物體的詳細(xì)距離信息,也能防止因誤操作而造成撞擊現(xiàn)象。
(2)控制層的核心是STM32單片機(jī)主控電路板。單片機(jī)主要承擔(dān)兩部分的功能,一是接收攝像頭和超聲波測距模塊發(fā)送的數(shù)據(jù)信息,并控制無線通信模塊向Android設(shè)備控制端發(fā)送視頻信息:二是接收Android設(shè)備發(fā)送的控制指令,并根據(jù)對指令的解析結(jié)果來控制機(jī)器人底盤車輪的轉(zhuǎn)速,實現(xiàn)前進(jìn)、后退、轉(zhuǎn)彎、變速等運(yùn)動方式,或者控制攝像頭舵機(jī)的轉(zhuǎn)角以改變鏡頭的方向。
(3)通信層由無線通信模塊及其無線網(wǎng)絡(luò)構(gòu)成。本文采用了Wi-Fi模塊和藍(lán)牙模塊,它們均可通過無線組網(wǎng)的方式連接Android設(shè)備上的相應(yīng)接口,提供了操作人員對探測機(jī)器人遙控的條件。
(4)上位機(jī)采用Android設(shè)備,一般是手機(jī)或者平板電腦。操作人員可在上位機(jī)界面上實時查看攝像頭探測到的視頻,也能點擊按鈕控制機(jī)器人的運(yùn)動方式和攝像頭的角度。
此外,為了增強(qiáng)機(jī)器人底盤的環(huán)境地形適應(yīng)能力,4個車輪采用麥克納姆輪以實現(xiàn)更加靈活的運(yùn)動。
3探測機(jī)器人關(guān)鍵部分設(shè)計
3.1單片機(jī)主控程序設(shè)計
在本探測機(jī)器人系統(tǒng)中,供電后的STM32單片機(jī)主要實現(xiàn)數(shù)據(jù)的接收與發(fā)送功能,其運(yùn)行的程序流程圖如圖2所示。
STM32單片機(jī)控制板與Wi-Fi模塊和藍(lán)牙模塊均通過串口相連接(兩種模塊與單片機(jī)硬件連接的方式相同,均為:無線模塊的TXD端接單片機(jī)的RXD端,RXD端接單片機(jī)的TXD端,無線模塊與單片機(jī)的GND引腳相連,即"共地"),實際使用時,可通過進(jìn)入不同的單片機(jī)子程序定義I/O口,從而選擇Wi-Fi模塊和藍(lán)牙模塊其中之一進(jìn)行連接并配置其無線通信參數(shù)。配置完成后,操作人員即可在Android設(shè)備上輸入無線網(wǎng)絡(luò)密碼,加入以無線通信模塊為熱點的網(wǎng)絡(luò)中。
無線通信網(wǎng)絡(luò)組建完成后,STM32單片機(jī)即可通過無線通信模塊將攝像頭采集到的視頻信息發(fā)送至Android設(shè)備端。此外,STM32單片機(jī)實時判斷有無接收到來自Android設(shè)備的數(shù)據(jù),若有,則根據(jù)程序中制定好的通信協(xié)議控制車輪的轉(zhuǎn)速或者攝像頭舵機(jī)的旋轉(zhuǎn)角度。
需要指出,通過控制4個麥克納姆輪之間的轉(zhuǎn)速差,可實現(xiàn)機(jī)器人底盤的轉(zhuǎn)向。攝像頭安裝在由兩個舵機(jī)控制的云臺上,其中一個舵機(jī)可左右旋轉(zhuǎn)360o,另一個舵機(jī)可上下旋轉(zhuǎn)180°。
3.2無線通信網(wǎng)絡(luò)設(shè)計
為實現(xiàn)設(shè)計需求,對比幾種常見的無線通信協(xié)議,如表1所示。
其中,ZigBee模塊雖然功耗和成本均較低,但不適合連接Android設(shè)備:GPRS模塊的信息費(fèi)用較高:LoRa模塊通信距離長,信號抗環(huán)境干擾能力強(qiáng),但通信速率較低,不利于視頻信號的傳輸。因此,暫選用Wi-Fi模塊和藍(lán)牙模塊作為探測機(jī)器人的無線通信接口。
以Wi-Fi模塊為例,其無線局域網(wǎng)設(shè)計如圖3所示。在此指出,只需要利用STM32單片機(jī)將Wi-Fi模塊配置成AP模式,不需要連接Internet網(wǎng)絡(luò),Wi-Fi模塊即可作為一個無線網(wǎng)絡(luò)熱點使用,Android設(shè)備能基于自身的Wi-Fi模塊較容易地加入該無線網(wǎng)絡(luò),進(jìn)行無線通信。
藍(lán)牙模塊也能組成與圖3類似的無線局域網(wǎng)。
3.3系統(tǒng)供電設(shè)計
探測機(jī)器人整體采用12V直流電源,由3節(jié)可充電型18650鋰電池串聯(lián)提供。由于系統(tǒng)各部分硬件需要的供電電壓等級不同,采用降壓電路模塊,將12V直流電壓轉(zhuǎn)換成3.3V給STM32單片機(jī)供電,轉(zhuǎn)換成5V給超聲波測距模塊、USB攝像頭和4個車輪直流電機(jī)供電,攝像頭舵機(jī)則直接采用12V供電。
4實際調(diào)試與改進(jìn)設(shè)計
4.1實際調(diào)試
探測機(jī)器人小車組裝后的外觀如圖4所示。
圖4探測機(jī)器人整體外觀
機(jī)器人實際運(yùn)行時,利用Android手機(jī)界面實時查看攝像頭拍攝畫面和控制其運(yùn)動方式,如圖5所示。
圖5探測機(jī)器人實際運(yùn)行畫面
4.2改進(jìn)設(shè)計
經(jīng)過實際測試,設(shè)計出的探測機(jī)器人能較好地利用單片機(jī)和無線通信技術(shù)實現(xiàn)視頻信息的采集、傳輸和操作人員對機(jī)器人的遠(yuǎn)程無線控制,為機(jī)器人代替人員進(jìn)入特殊探測空間完成任務(wù)提供了可能。今后,為進(jìn)一步增加其遙控距離,可以基于此設(shè)計架構(gòu),將無線通信模塊更換為4G/5G模塊,從而滿足更大范圍內(nèi)的特殊探測需求。
5結(jié)語
綜上,整個探測機(jī)器人硬件系統(tǒng)是將STM32單片機(jī)電路板作為控制核心,并通過無線通信模塊連接Android設(shè)備,將攝像頭采集到的視頻信息傳送到人員操控界面,操作人員也可以點擊該界面上的按鈕,利用無線通信網(wǎng)絡(luò)將控制指令發(fā)送至機(jī)器人搭載的通信模塊,再由STM32單片機(jī)解析指令、控制4個車輪的轉(zhuǎn)速和攝像頭舵機(jī)的轉(zhuǎn)角?;诖丝傮w設(shè)計思路,經(jīng)過實際驗證,操作人員能通過Android設(shè)備界面實時查看攝像頭拍攝到的清晰畫面,也能控制機(jī)器人車體的運(yùn)動模式和攝像頭視角。對機(jī)器人供電系統(tǒng)進(jìn)行改進(jìn)并換裝更高分辨率的攝像頭后,能進(jìn)一步提升探測機(jī)器人的綜合性能。