文生平,黃培輝
(華南理工大學 聚合物新型成型裝備國家工程研究中心 聚合物成型加工工程教育部重點實驗室,廣州 510640)
隨著“中國制造2025”的開展,移動機器人漸漸活躍在物流業(yè)、服務業(yè)、軍事、醫(yī)療等多個領域中[1]。伴隨著半導體技術、計算機技術、傳感技術等相關技術的日趨成熟,移動機器人也得以蓬勃發(fā)展。
移動機器人傳統(tǒng)的導航方式主要是電磁導航、磁帶導航和慣性導航等,其存在著靈活性差,易受干擾等不足。激光導航作為新型的移動機器人導航方式,具有高度靈活性,而且得益于激光信號精度高,速度快的特點,激光導航的抗干擾能力較強[2-3]。
移動機器人要實現(xiàn)各項功能都離不開控制系統(tǒng),許多學者對移動機器人的控制系統(tǒng)進行了研究[4-5]。目前,國內(nèi)對激光導航移動機器人的嵌入式控制系統(tǒng)研究相對不多,本文基于ARM開發(fā)了一種激光導航移動機器人的嵌入式控制系統(tǒng),用于實現(xiàn)移動機器人的無線通訊、激光數(shù)據(jù)采集和處理、運動控制等功能。
激光導航移動機器人嵌入式控制系統(tǒng)的總體框圖如圖1所示。
圖1 嵌入式總體系統(tǒng)框圖Fig.1 Block diagram of embedded system
該控制系統(tǒng)采用“Raspberry Pi基金會”開發(fā)的Raspberry Pi 3 Model B作為核心控制器。Raspberry Pi 3是基于ARM Cortex-A 53的64位微處理器,具有體積小,運算速度快,接口豐富等優(yōu)點。Raspberry Pi 3 Model B開發(fā)板帶有BCM43438芯片,可實現(xiàn)無線收發(fā)功能,從而能夠通過無線WiFi與電腦上位機進行數(shù)據(jù)交互。
機器人平臺選用Yujin公司開發(fā)的Kobuki移動機器人。該款機器人底部裝有左、右兩側驅(qū)動輪,機器人的左右輪帶有編碼器。Kobuki的接口控制板,可通過串口通訊的方式與核心控制器進行通訊。
選用上海思嵐公司開發(fā)的RPLIDAR A1激光雷達作為外部激光傳感器。該激光雷達可通過串口通訊的方式與核心控制器進行通訊,接收來自控制器的啟動信息,并將采集到的激光信號轉(zhuǎn)換為電信號通過串口反饋到控制器。
激光導航移動機器人的嵌入式控制系統(tǒng)是基于Linux操作系統(tǒng)開發(fā)的。Linux操作系統(tǒng)支持ARM架構,而且具有多任務操作的特性,實現(xiàn)多個任務程序同時而獨立運行。Linux操作系統(tǒng)還能具備圖形界面,操作方便,實現(xiàn)良好的人機交互。Linux系統(tǒng)作為一種開源、免費的操作系統(tǒng),對于嵌入式控制系統(tǒng)開發(fā)而言,不但節(jié)約成本而且便于使用。
激光雷達掃描周圍的環(huán)境信息并通過串口將數(shù)據(jù)以極坐標形式反饋到核心控制器,串口波特率設置為115200 b/s。
基于粒子濾波的實時定位及地圖構建算法是目前主流的激光導航算法之一。如圖2所示,粒子濾波算法利用激光掃描周圍環(huán)境特征λ,并將激光掃描數(shù)據(jù)作為t時刻機器人的位姿觀測數(shù)據(jù)zt;以里程計數(shù)據(jù)作為t時刻機器人的內(nèi)部傳感器輸入ut,結合zt和ut來估算機器人在t時刻的位姿st,并更新環(huán)境地圖m[6]。
聯(lián)合后驗概率分布可表示為
根據(jù)Rao-Blackwellized思想,實時定位及地圖構建可以被分解為2部分,即:利用粒子濾波進行定位的非高斯后驗部分和利用卡爾曼濾波器進行全局地圖更新的條件高斯部分。因此概率分布(1)可以做進一步的因式分解,即
進行因式分解[7]的意義在于,實時定位及地圖構建可以完全劃分成機器人位姿估計和地圖更新2個步驟,從而簡化了算法的計算量。首先利用激光掃描數(shù)據(jù)和里程計數(shù)據(jù)估算機器人位姿后驗概率,然后結合位姿和激光掃描數(shù)據(jù)完成對地圖的更新。粒子濾波算法位姿估計及地圖更新如圖2所示。
圖2 粒子濾波算法位姿估計及地圖更新Fig.2 Particle filter algorithm pose estimation and map updating
粒子濾波器估算后驗概率的原理,是利用地圖中隨機分布多個粒子,每個粒子表示機器人的一種潛在的軌跡。移動機器人在行駛過程中,粒子集合不斷通過迭代收斂,權重高的粒子得以保留而權重低者則被舍棄,最終保留與機器人軌跡基本吻合的粒子集。重采樣過程中,自適應閾值Neff用于表示粒子群與機器人軌跡的吻合程度,其計算公式為
核心控制器通過串口與Kobuki移動機器人平臺的接口控制板進行數(shù)據(jù)交互,從而達到控制Kobuki移動機器人的目的,串口波特率設置為115200 b/s。
Kobuki移動機器人的運動控制指令由起始位、有效長度、有效信息和檢驗位,共4部分組成。其中:①起始位共有2字節(jié),由2個十六進制數(shù)0xAA和0x55組成。②有效長度是指有效信息所包含的字節(jié)數(shù),其為1個十六進制數(shù)。③有效信息是具體的控制命令,由標識符和具體數(shù)據(jù)組成。以移動機器人的運動控制為例,需要標識符為0x01,具體數(shù)據(jù)包括速度(2字節(jié),單位為mm/s),轉(zhuǎn)彎半徑(2字節(jié),單位為mm)。④檢驗位為單字節(jié),用于校驗數(shù)據(jù)有效性。以運動控制為例,控制指令報文見表1。
表1 運動控制指令報文Tab.1 Motion control instruction message
利用所提出的嵌入式控制系統(tǒng),在Kobuki移動機器人平臺上進行應用試驗,實物如圖3所示。
圖3 嵌入式控制系統(tǒng)實物照片F(xiàn)ig.3 Embedded control system object
移動機器人放置于室內(nèi)環(huán)境中,并利用激光雷達對室內(nèi)環(huán)境進行掃描,并且構建地圖,電腦上位機[9]可以通過無線WiFi實時觀測移動機器人的地圖構建過程,并向嵌入式控制系統(tǒng)發(fā)送控制指令,從而控制移動機器人的運動。在1.75 m×10 m的室內(nèi)走廊和4.5 m×6 m的室內(nèi)房間分別進行試驗。
在1.75 m×10 m的室內(nèi)走廊中測試移動機器人的直線行走準確度。在走廊中軸線上,移動機器人共行走8.5 m,測量機器人的最終位置與中軸線的位置偏差和偏向角(偏向左記為正,偏向右記為負),測量數(shù)據(jù)見表2。
表2 直線行駛試驗的測量數(shù)據(jù)Tab.2 Straight-line driving experimental data
由表可知,平均位置偏差為9.5 mm,算術平均偏向角為2.71°。同時嵌入式系統(tǒng)通過激光雷達構建出走廊的環(huán)境地圖。
在4.5 m×6 m的室內(nèi)房間中,上位機通過無線WiFi向嵌入式控制系統(tǒng)發(fā)送數(shù)據(jù),再由核心處理器通過RS232串口向Kobuki移動機器人發(fā)送運動控制指令,實現(xiàn)運動控制功能。移動機器人按照給定的矩形路線循環(huán)行駛,矩形頂點坐標為(0,0),(0,3000),(4000,3000),(4000,0),單位為 mm。 移動機器人在運動過程中,激光雷達不斷掃描獲取室內(nèi)房間的環(huán)境特性,并構建出掃描地圖。
圖4 試驗場景及相應的激光掃描地圖Fig.4 Experimental scene and corresponding laser scanning map
試驗的場景以及相應的激光掃描地圖如圖4所示。由地圖構建結果可見,嵌入式控制系統(tǒng)接收并處理激光雷達所反饋的數(shù)據(jù),構建出室內(nèi)環(huán)境地圖,反應出室內(nèi)環(huán)境的二維情況,嵌入式控制系統(tǒng)的激光導航定位功能得以實現(xiàn)。
提出了一種激光導航移動機器人的嵌入式控制系統(tǒng)架構,并進行了不同現(xiàn)實場景下的試驗。試驗結果表明,該控制系統(tǒng)能夠?qū)崿F(xiàn)激光導航移動機器人的激光導航定位,運動控制等功能,且上位機可以通過無線WiFi與嵌入式控制系統(tǒng)進行信息交互,實時監(jiān)控,操作方便。該嵌入式控制系統(tǒng)采用串口通訊,適用面廣,可移植性強,具有較好的實用價值。
[1]宋春林.基于激光測距儀的移動機器人SLAM研究與實現(xiàn)[D].哈爾濱:哈爾濱工業(yè)大學,2014.
[2]滿增光.基于激光雷達的室內(nèi)AGV地圖創(chuàng)建與定位方法研究[D].南京:南京航空航天大學,2014.
[3]肖鵬,欒貽青,郭銳,等.變電站智能巡檢機器人激光導航系統(tǒng)研究[J].自動化與儀表,2012,27(5):5-9.
[4]徐艾,譚寶成,廉春原,等.智能輪式移動機器人嵌入式控制系統(tǒng)設計[J].國外電子元器件,2008,10(11):30-32.
[5]戚樹騰,聶森,陳軍,等.基于激光導航的果園移動機器人自動控制系統(tǒng)[J].農(nóng)機化研究,2015,37(10):8-12.
[6]李昀澤.基于激光雷達的室內(nèi)機器人SLAM研究[D].廣州:華南理工大學,2016.
[7]武二永,項志宇,沈敏一,等.大規(guī)模環(huán)境下基于激光雷達的機器人 SLAM 算法[J].浙江大學學報:工學版,2007,41(12):1982-1986.
[8]王權,胡越黎,張賀.基于ROS與Kinect的移動機器人同時定位與地圖構建[J].計算機應用研究,2017,34(10):1-6.
[9]文生平,陳端平,劉其信.基于Qt的激光導引移動機器人監(jiān)控系統(tǒng)設計[J].自動化與儀表,2016,31(8):6-9.