文獻標識碼: A
文章編號: 0258-7998(2012)05-0037-04
在對人類具有威脅、環境惡劣的場合中,移動機器人發揮著重要的作用。目前國內外研制的機器人驅動方式以輪式或履帶式居多,在爬越坡面、跨越障礙、壕溝以及在濕地、碎石路面、泥濘地面上行走時,履帶式機器人具有一定的優越性[1-3]。定位和導航技術是移動機器人的關鍵技術,移動機器人必須準確獲取自身位置信息以有效完成指定功能。采用差分GPS系統或者慣性制導系統可以實現精確的定位和導航,但成本高昂,目前多用于軍事、航空航天等關鍵領域[4-5]。低成本的定位導航技術仍然是阻礙移動機器人推廣應用的瓶頸。本文設計并制作的機器人可以解決此問題。
1 工作原理
GPS自動導航探測機器人總體原理框圖如圖1所示,是以履帶式移動機器人作為機器人底盤,利用機器人的行駛功能并加以改造。在機器人上搭載GPS、電子羅盤、溫濕度傳感器作為信息采集單元;搭載紅外傳感器與驅動電路作為機器人控制單元。信息采集單元與機器人控制單元都由單片機實現。LabVIEW編寫的上位機程序構成了導航計算單元,通過無線通信模塊與信息采集單元、機器人控制單元形成一個自動導航探測系統,機器人上載有數字攝像機,可以對機器人周圍環境進行直觀地探測。
2 硬件電路設計
GPS自動導航探測機器人硬件電路包括車載的信息采集單元電路、控制單元電路以及上位機無線數據收發電路。硬件電路的主要功能是將采集數據發送給上位機;接收來自上位機的數據控制自動導航機器人的運行。
2.1 信息采集單元電路
本設計采用WGS84坐標系統,定位采用絕對定位法[6]。方位角的獲得采用GY-26平面數字羅盤模塊,此羅盤以 RS232協議與其他設備通信,具有重新標定的功能,能夠在任意位置得到準確的方位角,其輸出的波特率為9 600 b/s,具有磁偏角補償功能,可適應不同的工作環境[7]。
采集單元電路使用兩塊單片機作為信息采集處理器,如圖2所示。一塊為STC89C52,作從處理器,用于對GPS傳來的多種NMEA語句中“GPRMC”語句的提取,并把數據發送到主單片機串口2的接收口,以及對溫濕度傳感器DHT11的數據進行采集;另一塊為STC12C5A60S2雙串口單片機,串口1用于對電子羅盤的控制與信息獲取,串口2的發送口用于對從機上傳的“GPRMC”語句再次篩選以及把所有信息(經度、緯度、速度、方位角、濕度、溫度)打包后通過無線通信模塊APC220發給上位機。同時將經緯度、時間、方位角在LCD12864液晶屏上顯示出來。
2.2 控制單元電路
控制單元采用STC89C52作為處理器,如圖3所示。機器人通過數據無線接收模塊APC220接收上位機發來的角度和距離數據,并將數據由字符型轉換成整型,執行相對應的動作,達到對機器人的比例控制,向目標點前進。單片機的I/O口接驅動電路的輸入端,在L298的兩個使能端的控制下,機器人直流電機可以正轉和反轉,從而使機器人前進、后退、左轉與右轉。機器人驅動部分采用的L298N是專用驅動集成電路,其輸出電流為2 A,最高電流為4 A,最高工作電壓為50 V。機器人采用的電機工作電壓為7.2 V,工作電流為160 mA~180 mA。
避障功能采用紅外傳感器實現,傳感器集發射器和接收器于一體,DATA端接單片機的I/O口,單片機通過掃描I/O口可以判斷前方是否有障礙物。當有障礙物時,物體將發射器發射足夠量的光線反射到接收器,接收器即產生了開關信號,信號線低電平輸出,正常狀態是高電平輸出。檢測有效距離為0 cm~80 cm,自動避障后,繼續按照原來的路徑前進。
2.3 上位機無線收發單元電路
上位機無線收發單元由電平轉換芯片MAX232以及無線收發模塊APC220構成。APC220接收GPS自動導航探測機器人采集的GPS信號,經過MAX232芯片把TTL電平轉換成PC端能識別的232電平。上位機根據收到的GPS信號為GPS自動導航探測機器人規劃好路徑,通過無線收發模塊APC220,向GPS自動導航探測機器人控制單元發出控制指令,從而使GPS自動導航探測機器人運動到指定目標,如圖4所示。
3 自動導航軟件設計
上位機程序在LabVIEW環境下開發,下位單片機程序采用C51開發。下位機數據處理軟件用于接收GPS、電子羅盤、溫度等數據并發送給上位機,下位機控制軟件負責接收上位機控制指令并控制機器人的運行。上位機程序用來接收下位機數據進行坐標轉換,并規劃機器人的運行路徑。
3.1 自動導航算法
通過無線數據采集模塊,上位機獲取機器人所在位置的經緯度、方位角等數據;由于目標點經緯度已知,所以可以通過高斯-克呂格投影變換法得到目標點與出發點的直角坐標;由電子羅盤檢測機器人的指向角來規劃機器人路徑。由于機器人受重心以及各種外界因素的影響,行駛過程可能出現偏差。因此,采用反饋校正的方式,即發送給機器人指令前一瞬間當作機器人的起始位置,再次與目標點進行路徑規劃。自動校正指令發送的周期可以根據實際情況加以設置。當機器人與目標點非常接近時(3 m~6 m),上位機發送最后一次指令給機器人(即上位機不再發送指令給機器人),避免由GPS模塊精度不高而帶來的機器人在目標點打轉的問題。
3.2 GPS數據提取程序設計
數據提取程序流程如圖5所示,當數據幀頭為$GPRMC時,提取并顯示目標點經緯度、速度、時間和溫濕度。
3.3 上位機程序
上位機對機器人控制有自動和手動兩種模式。自動導航適用于遠距離導航,在上位機輸入指定一個目標點的經緯度,通過轉換,最后發給機器人的是一個角度和距離,機器人接收到數據后向目標點前進。在行駛過程中可以對行駛路線進行若干次自動校正,以提高導航能力。手動控制通過上位機發送響應指令控制機器人的前后左右動作,適合短距離位置調整和探測。上位機程序流程圖如圖6所示。
4 機器人系統測試
對硬件電路制作的GPS自動導航探測機器人進行了試驗,并對試驗數據進行了分析。
自動導航試驗地點選于某地一廣場,首先運行LabVIEW開發的上位機監控軟件,先采集目標位置,并顯示到上位機監控軟件中;然后把GPS自動導航探測機器人拿到出發位置;最后在上位機監控軟件界面上點擊自動導航按鈕,機器人自動向目標點進發。其中,試驗的出發點經緯度為(E11607.45785、N2419.88293),目標點經緯度為(E11607.45931、N2419.88526),實際距離為25 m。通過10次機器人自動導航試驗,測得機器人最后停止位置與目標點的距離如表1所示。測試結果的絕對誤差平均值為1.085 m,相對誤差平均值為4.34%。
本文介紹的GPS自動導航履帶式探測機器人對地面的適應能力強,可以在對人體有害的環境中代替人運動到指定位置,完成數據采集任務,完成一些危險的工作。在前往目標點的途中機器人能實時測量并發送當前位置的經緯度、溫濕度、有害氣體濃度、機器人的方位角、速度等,數字攝像機能實時反映機器人周圍的環境,并在上位機主界面上,直觀地顯示出所采集的各種信息;導航的平均誤差為1.086 m,最大數據采集間間隔為3 s,無線數據傳輸模塊APC220的無線傳輸距離為1 000 m,能夠通過計算機實現機器人的遠距離監控。
參考文獻
[1] LIU J G,WANG Y C,MA S G,et al.Analysis of stairs climbing ability for a tracked reconfigurable modular robot[C].Proceedings of the 2005 IEEE International Workshop on Safety,Security and Rescue Robotics Kobe.Japan:IEEE,2005:36-41.
[2] 姜紅娟,孟慶鑫.城市主排水管道穿纜檢測機器人結構及其運動特性的研究[D].哈爾濱:哈爾濱工程大學機電工程學院,2006.
[3] LI Y W,GE S R,FANG H F,et al.Effects of the fiber releasing on step-climbing performance of the articulated tracks robots[C].Proceedings of the 2009 IEEE International Conference on Robotics and Biomimetics.Guilin,China:IEEE,2009:818-823.
[4] 賈銀山,賈傳熒,魏海平,等.基于GPS和電子海圖的船舶導航系統設計與實現[J].計算機工程,2003,29(1):194-195,255.
[5] 劉晶,劉鈺,陸雨花.基于FPGA+ARM的視覺導航輪式機器人[J].計算機工程,2010,36(21):194-195,198.
[6] 田學軍.非差分GPS在移動機器人位點導航中的應用[J].制造業自動化,2009,31(6):78-81.
[7] 于日平,王德興.基于GPS與電子羅盤的定向天線自動定向裝置[J].微計算機信息,2009(25):121-122.