摘要:在智慧校園的大環(huán)境下,文章設(shè)計了一款基于GPS導(dǎo)航技術(shù)的自動巡邏校園機(jī)器人。巡邏機(jī)器人以STM32為主控芯片,由電源電路、GPS模塊、陀螺儀模塊、數(shù)據(jù)存儲模塊、電機(jī)舵機(jī)控制電路組成。本設(shè)計首先將GPS模塊獲取的經(jīng)緯度數(shù)據(jù)存儲在數(shù)據(jù)存儲模塊中,然后使用陀螺儀模塊得到航向角作為GPS的輔助,獲取實(shí)時航向信息,最終得出巡邏機(jī)器人的運(yùn)動軌跡。文章經(jīng)實(shí)驗(yàn)驗(yàn)證滿足設(shè)計要求,實(shí)現(xiàn)了機(jī)器人自動巡邏的功能。
關(guān)鍵詞:STM32;GPS;校園巡邏機(jī)器人
中圖分類號:TH16;TP242文獻(xiàn)標(biāo)志碼:A
0 引言
高校智慧校園的飛速發(fā)展,推動了信息技術(shù)與教育教學(xué)的深度融合,提升了高等學(xué)校信息化建設(shè)與應(yīng)用的水平[1-2]。校園巡邏機(jī)器人具有自主性、地址感知能力和視覺感知技術(shù)等高科技特點(diǎn),為校園安保帶來了更加智能化、高效化、低成本的解決方案,也成為未來校園安保的新方向。因此,校園巡邏機(jī)器人的研究成為當(dāng)前機(jī)器人領(lǐng)域中備受關(guān)注的重點(diǎn)領(lǐng)域之一[3-5]。張淑清等[6]提出了一種基于多層代價地圖的機(jī)器人全覆蓋視覺導(dǎo)航方法,按照行人參數(shù)的變化,有效控制機(jī)器人的運(yùn)動姿態(tài),實(shí)現(xiàn)了高質(zhì)量機(jī)器人全覆蓋視覺的導(dǎo)航任務(wù)。劉曉飛[7]針對野外環(huán)境復(fù)雜多變、定位困難等問題,采用GPS、激光雷達(dá)及視覺傳感器等多數(shù)據(jù)信息,依據(jù)各自的特點(diǎn)進(jìn)行數(shù)據(jù)整合融合實(shí)現(xiàn)定位導(dǎo)航。李紅雙等[8]利用北斗定位系統(tǒng)的定位和輔助定位系統(tǒng)的相關(guān)數(shù)據(jù)對位置信息進(jìn)行精確校準(zhǔn),得到巡邏機(jī)器人的準(zhǔn)確位置信息,實(shí)現(xiàn)校園機(jī)器人的巡邏功能。
1 巡邏方案的提出
圖像識別的循線方案易受外部環(huán)境的影響,激光雷達(dá)發(fā)射的激光束因存在一定的時間差或數(shù)據(jù)傳輸延遲會導(dǎo)致運(yùn)動畸變。因此,本文選用GPS全球定位導(dǎo)航系統(tǒng)作為本設(shè)計的路線規(guī)劃傳感器。GPS全球定位導(dǎo)航系統(tǒng)具有高精度定位、全球覆蓋、實(shí)時更新的特點(diǎn)。本設(shè)計首先對目標(biāo)路線的經(jīng)緯度坐標(biāo)進(jìn)行采點(diǎn),離散化目標(biāo)路線,將坐標(biāo)信息存儲在數(shù)據(jù)存儲模塊中,然后通過GPS模塊獲得機(jī)器人的當(dāng)前經(jīng)緯度坐標(biāo),輔以陀螺儀得到實(shí)時航向,求出當(dāng)前位置與目標(biāo)位置的偏差,最后控制小車不斷修正方位到達(dá)目標(biāo)位置,實(shí)現(xiàn)機(jī)器人的校園巡邏路徑方案設(shè)計。
2 總體設(shè)計方案
本設(shè)計使用STM32F103ZET6微控制器作為主控芯片,主要由用于獲取當(dāng)前位置經(jīng)緯度坐標(biāo)信息的GPS模塊,用于獲取機(jī)器人當(dāng)前的航向陀螺儀模塊,用于保存GPS獲得的經(jīng)緯度數(shù)據(jù)的數(shù)據(jù)存儲模塊,用于控制機(jī)器人運(yùn)動狀態(tài)的電機(jī)舵機(jī)控制電路以及電源模塊組成。硬件電路總體設(shè)計如圖1所示。
2.1 底盤結(jié)構(gòu)
機(jī)器人底盤由帶有兩個霍爾編碼器電機(jī)、一個轉(zhuǎn)向舵機(jī)的四輪小車構(gòu)成。兩個后輪各自由一個含有編碼器的直流電機(jī)驅(qū)動,為小車提供動力。兩個前輪由一個拉桿連接在一起,連接一個舵機(jī)帶動拉桿實(shí)現(xiàn)對小車左右轉(zhuǎn)向的控制。其中兩個后輪電機(jī)上的霍爾編碼器,可以通過同時采集編碼器AB相輸出脈沖的上升沿和下降沿,獲取電機(jī)的實(shí)際轉(zhuǎn)速,實(shí)現(xiàn)對機(jī)器人車速的PID控制。
2.2 定位傳感器模塊
GPS模塊選擇的是NEO-M8N模塊。NEO-M8N能夠同時接收GLonASS和BeiDou,適用于即使在GPS信號差的環(huán)境下都需要高的可用性和準(zhǔn)確性的高性能應(yīng)用。MPU6050為一種能測定芯片自身X軸、Y軸、Z軸的加速度,以及角速度參數(shù)的六軸位姿傳感器。
系統(tǒng)以NEO-M8N 模塊獲取機(jī)器人實(shí)時定位,同時加入MPU6050六軸陀螺儀作為輔助定位。由于在機(jī)器人運(yùn)動時電機(jī)的震動導(dǎo)致MPU6050的偏航角出現(xiàn)飄移現(xiàn)象,GPS在機(jī)器人長時間穩(wěn)定運(yùn)行之后獲得的航向是穩(wěn)定的,但是更新頻率慢,因此對GPS獲得的航向與陀螺儀偏航角進(jìn)行互補(bǔ)濾波,將濾波之后的值作為航向。
3 軟件設(shè)計
軟件總體設(shè)計如圖2所示,由GPS導(dǎo)航模塊、陀螺儀模塊、數(shù)據(jù)存儲模塊、運(yùn)動控制模塊組成。
3.1 各模塊程序設(shè)計思路
3.1.1 數(shù)據(jù)存儲程序模塊
將GPS獲取得到的位置信息存入到單片機(jī)內(nèi)部FLASH中,保證數(shù)據(jù)在掉電情況下不丟失。對內(nèi)部FLASH的寫入過程包括:解鎖、頁擦除和寫入數(shù)據(jù)3個步驟。
3.1.2 陀螺儀程序模塊
單片機(jī)通過I2C通信協(xié)議與陀螺儀進(jìn)行通信,將陀螺儀中獲取到的原始數(shù)據(jù)讀出,然后通過MPU6050內(nèi)置的DMP模塊,采用四元數(shù)法將原始數(shù)據(jù)解算為可用的橫滾角、俯仰角、偏航角。
3.1.3 GPS導(dǎo)航程序模塊
GPS在傳輸數(shù)據(jù)的時候是由串口接收的,因此大量數(shù)據(jù)在串口傳輸時,如果使用單片機(jī)進(jìn)行循環(huán)處理,將大大降低CPU的效率,因此這里使用DMA方式進(jìn)行數(shù)據(jù)傳輸。
3.1.4 運(yùn)動控制程序模塊
機(jī)器人通過陀螺儀和GPS獲得當(dāng)前航向,然后將當(dāng)前航向與期望航向的偏差值輸入PID公式得到轉(zhuǎn)向舵機(jī)和運(yùn)動電機(jī)控制的PWM脈寬。
3.2 主程序設(shè)計思路
先確定好目標(biāo)路線,以直道20 m、彎道10 m的間隔距離選定好若干個中間點(diǎn),將目標(biāo)路線離散化,然后通過按鍵控制將中間點(diǎn)處的經(jīng)緯度坐標(biāo)數(shù)據(jù)存入單片機(jī)的內(nèi)部FLASH,保證在主板掉電的情況下坐標(biāo)數(shù)據(jù)不丟失。
當(dāng)坐標(biāo)數(shù)據(jù)采集完成之后,將陀螺儀獲取到的偏航角進(jìn)行轉(zhuǎn)換,使其與GPS航向坐標(biāo)相統(tǒng)一,同時調(diào)整機(jī)器人的方向?qū)⑼勇輧xMPU6050的初始化方向與地理正北方向?qū)R,完成陀螺儀與GPS的坐標(biāo)系對齊。然后通過按鍵控制開啟定時器中斷,機(jī)器人進(jìn)入自動循線模式。
通過GPS獲得當(dāng)前機(jī)器人的經(jīng)緯度數(shù)據(jù),然后將目標(biāo)點(diǎn)坐標(biāo)經(jīng)緯度與當(dāng)前位置坐標(biāo)經(jīng)緯度進(jìn)行計算,得到機(jī)器人當(dāng)前位置與目標(biāo)地點(diǎn)的期望方向角和距離。通過多次測試,同時考慮到GPS獲取數(shù)據(jù)時具有一定的延遲,本文選定前瞻距離為5 m,即當(dāng)前機(jī)器人的位置距離目標(biāo)點(diǎn)的距離小于5 m時,自動將目標(biāo)點(diǎn)坐標(biāo)移動到下一個目標(biāo)點(diǎn)。
由于機(jī)器人在靜止或者運(yùn)行不穩(wěn)定時GPS無法獲取準(zhǔn)確的航向,而當(dāng)機(jī)器人穩(wěn)定行駛時GPS的航向相對準(zhǔn)確,同時考慮到MPU6050在電機(jī)的震動環(huán)境下,噪聲累計誤差會導(dǎo)致其獲取的航向角出現(xiàn)誤差。經(jīng)過測試,MPU6050在機(jī)器人剛啟動的一段時間獲取的偏航角相對準(zhǔn)確。因此,在機(jī)器人啟動的前一段時間內(nèi)采用陀螺儀的偏航角作為當(dāng)前航向,當(dāng)機(jī)器人穩(wěn)定運(yùn)行之后,對GPS獲得的航向與陀螺儀偏航角進(jìn)行互補(bǔ)濾波,將濾波之后的值作為當(dāng)前航向。
最后在獲取機(jī)器人當(dāng)前坐標(biāo)位置以及航向之后,計算出當(dāng)前位置與目標(biāo)位置的距離和方向角的差值,然后通過PID算法控制機(jī)器人的電機(jī)速度以及舵機(jī)的打角向目標(biāo)地點(diǎn)運(yùn)動。
軟件總體流程如圖3所示。
4 測試
采用GPS定位系統(tǒng)確定好巡邏目標(biāo)路線如圖4所示,根據(jù)路線的實(shí)際情況選定好若干個中間點(diǎn),中間點(diǎn)選取直道20 m,彎道10 m為間隔。然后通過按鍵將中間點(diǎn)的經(jīng)緯度坐標(biāo)數(shù)據(jù)存入單片機(jī)的內(nèi)部FLASH。在數(shù)據(jù)存儲完成之后,將陀螺儀的初始化方向與地理正北方向?qū)R,保證陀螺儀與GPS的坐標(biāo)系對齊。然后按下按鍵,陀螺儀開始初始化。在陀螺儀初始化完成之后,通過按鍵將機(jī)器人切換為巡線模式。在機(jī)器人上搭載實(shí)時采集的攝像頭,得到的實(shí)時圖像如圖5所示。
5 結(jié)語
本文設(shè)計的校園巡邏機(jī)器人采用GPS導(dǎo)航系統(tǒng)獲取坐標(biāo)信息,在陀螺儀采集到的航向信息的輔助下,在校園中實(shí)現(xiàn)了自動巡邏的功能。經(jīng)實(shí)驗(yàn)表明,機(jī)器人能夠高效地完成指定目標(biāo)路線的校園巡邏,在智慧校園環(huán)境下實(shí)現(xiàn)了安保工作的智能化。
參考文獻(xiàn)
[1]鄭超.基于人工智能的智慧校園建設(shè)框架及關(guān)鍵路徑[J].電腦知識與技術(shù),2022(17):83-85.
[2]張帆,黃巧潔,劉沛強(qiáng),等.智慧校園的技術(shù)要求和發(fā)展趨勢研究[J].電視技術(shù),2022(8):213-216.
[3]未慶超,張曙光,曹忠尉,等.智能校園巡邏機(jī)器人的設(shè)計[J].電子測試,2019(9):20-22.
[4]王國杰,薛磊,趙凱.基于云平臺的校園無人巡邏機(jī)器人遠(yuǎn)程智能控制系統(tǒng)設(shè)計[J].邯鄲職業(yè)技術(shù)學(xué)院學(xué)報,2021(4):51-55.
[5]黃曉艷,夏軒.室外巡邏機(jī)器人巡檢系統(tǒng)的研究[J].中國建設(shè)信息化,2022(23):68-69.
[6]張淑清,鄧慶彪,蔡志文.安防巡邏機(jī)器人全覆蓋視覺導(dǎo)航方法[J].機(jī)械設(shè)計與制造,2022(12):264-268.
[7]劉曉飛.野外未知環(huán)境下的巡邏機(jī)器人定位導(dǎo)航技術(shù)研究[C].吉林:北華大學(xué),2022.
[8]李紅雙,李孝杰.一種基于北斗定位自主巡邏機(jī)器人的研究與試驗(yàn)測試[J].機(jī)械設(shè)計,2020(增刊1):51-54.
Research on localization and navigation technology of patrol robot based on smart campus
ShiPeng, ZhuWusheng
(Guangling College of Yangzhou University, Yangzhou 225000, China)
Abstract:In the environment of smart campus, a campus robot which can patrol by itself based on GPS is designed. Patrol robot takes STM32 as the control core. It is composed of power supply circuit, GPS module, gyroscope module, data storage module, motor and steering engine control circuit. In this design, First of all, longitude and latitude data collected by GPS is stored in data storage module. Then real time heading information is acquired by gyroscope module and GPS. In this process, course information is measured by gyroscope module. At last, movement track of patrol robot is computed. The experimental results show that the robot has achieved the expected goal, and realized the automatic cruise function.
Key words: STM32; GPS; campus patrol robot