吳子岳,宋彥良,吳志峰,劉善民
(上海海洋大學 工程學院,上海 201306)
隨著對未知領域和復雜環境的不斷探索,人類更加迫切地需要使用微型探測機器人進行地形地貌勘測以及環境參數的自主檢測.其中,四足爬行機器人因其優越的運動性能和良好的穩定性,加之配備攝像頭模塊和各種傳感器模塊,被廣泛應用于環境探測領域中,成為了國內外研究的熱點[1].惠州學院黃宏越等人曾通過使用超聲波避障和陀螺儀轉向,實現自主路徑規劃[2].韓潔瓊等人設計了一種基于STC89C52的智能移動機器人巡航系統,該系統安裝有紅外傳感器等模塊實現智能循跡、自主導航[3].但是,由于機器人控制系統及結構存在誤差和不穩定性,使得機器人容易偏離探測路徑,導致對環境和地形的探測不準確、不全面.因此需要對該機器人進行目標定位服務,以實時準確獲取機器人的位置信息,并對其進行遠程控制.
其中,對探測機器人進行實時定位和導航成為了整個系統設計最重要的部分[4].為實現遠程監測四足爬行機器人的實時位置并發送控制指令,系統采用了全球衛星導航系統(GNSS).GNSS是個多系統、多層面、多模式的復雜組合系統,包括全球的、區域的、增強的衛星導航系統,涵蓋了GPS、GLONASS、GALILEO、BDS等系統.由于該系統可在近地空間的任何地點或地球表面為用戶提供全天候的三維坐標、速度和時間信息的獨特功能,并且可以實現高精度定位、導航服務,一直被視作環境探測機器人定位系統中不可或缺的一部分.使用該系統不僅可以采集到機器人的經緯度,還可以檢測到高度信息,更加安全可靠[5-6].同時增加實時顯示、路線調整、遠程遙控等功能.
本文設計了一種基于GNSS的擁有自主巡航功能的四足爬行機器人,并設計了相應的遠程監測系統,該系統能夠實現對機器人精準定位,并將位置信息和運動軌跡準確傳輸到上位機,通過遠程遙控對機器人運動軌跡進行調整和控制.同時,機器人獲取的環境和地理數據參數通過GPRS無線傳輸技術傳送到上位機顯示界面,實現了機器人精準探測和數據的實時顯示,減少了由于運動軌跡偏差而帶來的探測誤差,提高探測準確性.
本文設計的擁有自主巡航功能的四足爬行機器人采用智能化體系架構、模塊化結構設計,具有體積小、靈活性好和穩定性強的優點.該機器人包括主體、執行系統、數據采集系統、能源系統、控制系統.執行系統包含四條機械腿,可以很好地解決傳統履帶式探測機器人的越障困難和體積、質量較大的問題.機器人結構如圖1所示.
本系統是一款基于全球衛星導航系統,并結合無線通訊技術、單片機控制技術、對環境、地理參數及機器人實時位置信息采集和處理的實時監測系統.該監測系統由四個部分組成,包括環境參數采集端、GPS/北斗定位模塊、無線通訊模塊和中央處理器,系統框圖如圖2所示.
該系統實現的功能如下:
1)衛星定位,自主巡航:通過GPS/北斗定位模塊,對機器人的實時位置、方向、速度等信息進行跟蹤,并傳送給遠程監控中心,上位機可發送已設定探測區域指令讓機器人按照指定區域路線自主前行;
2)遠程通信:利用GPRS無線通訊技術實現與遠程監控中心的信息交流;
3)自動調節:通過GPS/北斗定位模塊向遠程監控中心發送的機器人實時位置與上位機向機器人發送的指定區域路線進行比較,完成運動路線的自動調整,同時也可通過手動發送運動指令調整.
監測系統的工作流程如圖3所示.
本文所設計的定位模塊用來實現對機器人在環境探測中的實時坐標、速度和方向等參數的采集,通過定位模塊請求連接衛星信號,并將接收到的機器人坐標信息傳送到中央處理器,由中央處理對當前的位置信息,包括經緯度進行解析.同時,中央處理器接收模塊接收來自遠程監控中心發送的機器人規劃區域路線、速度、時間等指令,并將當前實際經緯度與遠程監控中心發來的已設定位置數據進行對比,如果偏離路線,機器人自動修正或者通過手動發送指令調整路線,向設定路線區域靠攏并進行環境參數采集,實現機器人的精準探測.
由于需要實現該機器人及系統的微型化和便捷化設計,所以選用了由SkyTraq公司生產的型號為ATK-S1216F8-BD的GPS/北斗定位模塊,該模塊使用S1216F8-BD模組,特性如下:
1)體積小巧,性能優異,測量輸出頻率最大可達20 Hz,模塊通過串口進行各種參數設置并保存在內部flash中,方便使用;
2) 模塊接口為TTL電平,兼容3.3V/5V電壓,TXD/RXD阻抗為120 Ω,更加便于連接多種單片機系統;
3) 包含167個通道,支持QZSS、WAAS、MSAS、EGNOS、GAGAN.冷啟動靈敏度為-148 dBm,捕獲追蹤靈敏度為-165 dBm;
4)該模塊支持NMEA-0183 V3.01/SkyTraq binary協議.工作溫度范圍為-40~ 85℃,可靠度高、適應性強;
5)該模塊擁有可充電備用電池,可實現斷電后保存數據的功能(斷開主電源后,備用電池可持續半小時左右的定位數據保存);
6) 通過ATK-S1216F8-BD GPS/北斗定位模塊,任何微控制器(3.3 V/5 V電源)都可以非常方便地實現衛星定位,也可以連接電腦,利用軟件實現定位功能.定位模塊ATK-S1216F8-BD的工作電路如圖4所示.
本文所設計的數據采集模塊主要是為了實現對探測區域的環境溫度、濕度等數據參數的檢測和采集,由多種傳感A/D轉換器和外圍電路組成.該采集端將采集到的環境溫、濕度和風速等信息傳送到中央處理器,由處理器進行接收和分析,再通過無線通訊模塊傳輸到遠程監控中心,監控客戶端對數據庫中的數據進行讀取和顯示,完成對環境數據的實時監測.
整個機器人采用嵌入式STM32F429IGT6單片機作為控制系統的核心,主要實現數據收發、計算處理等功能.該芯片采用Arm Cortex-M4內核,具有高達256 KB的SRAM,支持SDRAM,包含140個GPIO口,其運行頻率最高可達180 MHz.擁有更快的A/D轉換速度和更低的ADC/DAC工作電壓[7].選擇STM32F429IGT6單片機,一方面負責將數據采集模塊收集的環境數據參數進行解讀、分析并發送給遠程服務器,由服務器接收解析后存入數據庫,監控客戶端對數據庫進行讀取和顯示;另一方面接收ATK-S1216F8-BD定位模塊采集的機器人實時位置,同時接收遠程監控中心發送的指令對機器人實現運動控制.使用該芯片可以加快數據的接收、處理和發送,加快工作效率.
無線通訊作為實現上位機與控制端的數據交換、指令收發的橋梁,是該監測系統中最重要的環節之一.本文所設計的無線通信采用4G網絡和北斗短報文通訊模塊.北斗短報文通信是北斗一代的特有功能[8],在沒有移動通訊信號的情況下,利用北斗短報文通訊功能便可以實現北斗衛星、地面服務中心、北斗定位終端的雙向通信.4G網絡是第四代移動通信技術,其傳輸速度值范圍為20 Mbps-100 Mbps,覆蓋面積大,十分適合應用在大面積的環境探測中.
本文選用由SKyTop公司生產的LH-MK04A作為北斗短報文通信模塊,該模塊集成了RDSS射頻收發芯片、功放芯片、基帶電路等,模塊內置RNSS/GPS模塊.該模塊具有集成度高、功耗低、兼容接收RDSS/RNSS衛星導航信號等優點,能夠實現機動載體的實時高精度定位、測速等,非常適用于區域探測.
該模塊負責完成數據的收發功能.首先,短報文信息發送方把含有信息接收方通訊內容和ID的通訊信號加密后再通過衛星轉發到地面中心站,然后,經過先解密和再加密后加入持續廣播的出站電文中,由衛星發送給用戶終端設備.最后,由接收方接收出站信號,解調解密出站電文[9],完成一次遠程通訊.
整個監測系統采用模塊化設計,STM32F429IGT6單片機系統程序全部使用C語言在Keil uVision5開發環境下進行編程、調試.結合Thumb-2指令集,無需模式轉換,并自帶STM32CubeF4固件包,可以找到任一外設的對應例程從而進行快速移植.
單片機通電后,先對串口UART、定時器、GPIO口和HAL庫等進行初始化,并對環境數據采集端的傳感器模塊、A/D和北斗定位模塊進行配置和初始化,采用單總線操作時序來讀取溫度、濕度等傳感器的數值.進入主程序之后,通過循環調用函數來獲取實時位置、環境參數值,并對其進行分析解讀后通過無線傳輸模塊傳送至遠程監控中心移動客戶端顯示界面.
圖5為上位機軟件功能開發流程圖.上位機軟件主要實現對數據的接收、解讀和顯示,并根據實際情況發送相應的操作指令.使用Microsoft基礎類庫(MFC)和Visual C++,結合C語言進行上位機軟件界面開發.單片機將數據發送給上位機接收后,上位機進行數據讀取和顯示.在上位機軟件設計過程中使用卡爾曼濾波器對數據進行過濾處理,以提高定位精度[10].本著人機友好、操作簡單的設計原則,本系統設計的上位機軟件功能如下:
1)實時監測:在上位機軟件界面上實時顯示由GPS/北斗定位模塊采集到的機器人當前位置信息、運動方向和速度;
2)報警提示:當機器人的實際位置和規劃的路徑出現偏差時,上位機會報警提示;
3)遠程遙控:根據不同情況,可以通過上位機發送相應指令,實現對四足機器人的運動控制.
對所設計的機器人及遠程監測系統進行實驗測試.選取學校一處天臺作為測試場地,機器人啟動后,通過上位機軟件向其發送規劃路徑指令,機器人沿著指定的路徑進行運動.如圖6所示,衛星對機器人定位的當前位置信息:(121.534078E,30.5333.88N),速度2.30 km/h.到達指定區域后開始環境參數的采集并實時傳送到上位機顯示界面,如圖7所示,溫度34℃,濕度68.2%,風速1.7 m/s.通過GPS/北斗定位模塊傳達的定位信息與指定路徑發生偏差時,上位機自動報警且實時調整位置.
在中途不同的監測點處記錄上位機顯示的機器人實時位置和已設定位置,如表1所示,機器人探測路徑與規劃路徑相差較小.經測試,機器人系統以及監測系統運行狀況良好,可以滿足自主巡航、自主探測和自動修正路線的功能.

表1 不同監測點機器人實時位置和規劃位置
本文設計了一款基于全球導航衛星系統定位技術、GPRS無線傳輸技術、單片機控制技術、擁有自主巡航和自動修正路線功能的環境探測機器人及遠程監測系統.通過GPS/北斗定位模塊,很好地完成了對機器人實時位置的獲取;數據采集模塊實現了對環境溫度等數據的采集;北斗短報文通訊模塊完成了與遠程監控中心的實時通信.整套系統以STM32F429IGT6作為主控芯片,結合GPS/北斗模塊和通信模塊,實現了機器人的自主巡航探測和報警提示并及時調整運動軌跡的功能.貼合探測人員實際使用情況,提高了探測精準性.解決了人工探測困難、成本較高和傳統探測機器人容易偏離路線的問題.