勞振鵬 東莞理工學院機械工程學院 黃市生 黎梓恒 曾志彬 吳國洪 東莞市橫瀝模具科技產業發展有限公司 陳學忠 廣東石東實業(集團)公司
前言:現在的辦公樓、居室很多使用了玻璃門窗做裝飾,而現有的服務機器人大多使用紅外傳感器實現識別障礙物的效果,出現了服務機器人不能準確識別透明玻璃,需依靠壓力傳感器與透明玻璃的接觸作用進而實現識別效果,導致該機器人的工作效率低;并且該機器人在構建室內地圖時,容易出現不能準確地描繪玻璃墻、玻璃門的真實位置。此外,現有的移動機器人在地圖構建方面,由于地形、光照等不確定性因素,通過傳感器系統獲得的外部信息往往數據誤差大,并未能有效地處理數據,使機器人不能獲取有效環境特征,導致了地圖構建的不準確性、不全面性。還有,現有的應用在地圖構建領域的移動機器人大多數為各種各樣的輪式機器人,相比履帶式機器人,輪式機器人對于凹凸不平或者沙粒為主的環境的適應性很低,行走不方便,執行任務的效率大大降低;并且輪式機器人需要使用的驅動電機比履帶式機器人多,成本相對較高。
針對以上不足,本文提出了一種基于激光掃描與卡爾曼濾波技術的地圖構建系統及移動機器人的設計方案,將從機構設計方面與軟件系統搭建方面進行闡述。
本文所設計的機器人結構如圖1所示,機器人采用三層平臺的結構,由下往上,第一層平臺為履帶式運動結構,第二層平臺為控制中心,第三層平臺為傳感器區;履帶式運動結構包括履帶、齒型輪、齒型輪固定件、電機固定件、12V帶減速電機、90°角碼、橫梁;控制中心包括載板Ⅰ、樹莓派三代主板、PWR電機驅動板、支桿;傳感器區包括載板Ⅱ、超聲波傳感器、360°激光掃描測距雷達;
履帶式運動結構中的齒型輪設置在齒型輪固定件的兩端;履帶與齒型輪配合;兩個12V帶減速電機斜對角分布,進一步的,通過電機固定件以螺紋連接的方式連接在齒型輪固定件;兩根橫梁均通過90°角碼以螺紋連接的方式連接兩邊的齒型輪固定件;載板Ⅰ設置在橫梁的上方,載板Ⅰ的通孔與橫梁的通孔同軸配合;樹莓派三代主板設置在載板Ⅰ的上方及中間位置;PWR電機驅動板設置在樹莓派三代主板的上方;載板Ⅱ通過支桿與載板Ⅰ連接;載板Ⅱ的橢圓形狀一端設置為朝向機器人的前方;超聲波傳感器共有五個,其中三個超聲波傳感器在載板Ⅱ的扇形區均勻分布,其一朝向機器人的正前方,另外在載板Ⅱ的左右方向分別設置兩個超聲波傳感器,且位于該邊線的中間位置;360°激光掃描測距雷達設置在載板Ⅱ的中心位置;
機器人由兩個12V帶減速電機驅動,12V帶減速電機的正負極兩根線與PWR電機驅動板的電機輸出口電連接;PWR電機驅動板的ENA引腳(A通道使能端)與樹莓派主板的16針電連接,ENB引腳(B通道使能端)與樹莓派主板的18針電連接,通過使用樹莓派GPIO輸出5V電平信號控制使能端的輸出電壓實現電機加速與減速;PWR電機驅動板的IN1、IN2、IN3、IN4引腳分別與樹莓派主板的11、12、13、15針電連接;
超聲波傳感器的Trig引腳與樹莓派主板的GPIO2(3針)連接,Echo引腳先連接一個1k電阻再進一步連接樹莓派主板的GPIO3(5針),在連接1k電阻與GPIO3之間的線路引出一個帶2k電阻的電路接到GND,1k 和 2k 電阻組成了一個分壓電路,使GPIO 3腳的電壓降到了3.3v 左右;
運動方面,對樹莓派編程,配置引腳的輸入輸出狀態,設置16、18針輸出PWM值進行機器人的速度控制,設置11與12針(13與15針)為互斥的電平狀態實現電機的正反轉,當兩個電機的旋轉方向與旋轉速度均一致,機器人將直線行走,當兩個電機的旋轉方向相反、旋轉速度相同,機器人將逆時針旋轉或順時針旋轉,即為拐彎,設置11、12、13、15針均為False狀態值,機器人停止運動。
避障方面,樹莓派觸發傳感器發射超聲波,并測量超聲波從發射到返回的時間間隔,結合音速從而算出障礙物的距離,當檢測到機器人兩端的距離的差值穩定在一個范圍里,機器人往前移動,當兩端距離的差值超出這個范圍,機器人往檢測距離值大的一端自動調整。

圖1 硬件結構設計圖
將360°激光掃描測距雷達與樹莓派三代主板通過USB線進行電連接,樹莓派連接激光掃描測距雷達,先設置ip 掩碼和網關,然后通過程序指令采集激光雷達的檢測數據;樹莓派三代主板自帶無線WIFI和藍牙模塊,在樹莓派上建立串口通信,以藍牙透傳的方式將激光雷達的檢測數據傳送到PC機;利用上位機軟件,將檢測數據以ASCII格式儲存,基于Matlab平臺,編寫數據解析的程序,使用分支結構讀取各個數據的屬性,進而讀取數據;結合卡爾曼濾波算法,對數據進行處理,先對系統狀態、誤差協方差、過程噪聲的協方差、測量噪聲的協方差賦值,然后迭代計算卡爾曼增益、系統狀態和誤差協方差,對系統狀態進行最優估計,得到最優的環境信息;并且采用柵格模型來構造地圖,先初始化局部區域柵格模型,然后進行坐標轉換,將障礙點坐標映射到柵格地圖中相應的柵格上,實現把激光雷達的測量數據轉換到柵格地圖上,再依次讀取所有激光雷達數據并給局部柵格地圖賦值,實現將環境數據柵格化,得到柵格地圖。
本文所做的工作總結如下:第一,根據功能的要求對移動機器人進行了結構設計;第二,根據機器人的功能要求搭建了軟件系統。