王鵬 羅全珍



摘 要:為了解決復雜環境下無人駕駛小車的定位導航問題,提出基于激光雷達SLAM技術的無人車自動導航系統。采用SSH遠程登錄協議實現PC端的命令控制,通過無線傳輸協議將手機終端數據傳送到無人車,利用手機終端對無人車進行地圖構建和自動導航操作。操作人員無需手動控制躲避障礙物,只需在手機端設定終點即可實現小車的自動導航功能。最后,選擇室內環境進行測試分析。結果表明,該系統實現了無線傳輸、遠程監控以及自動構圖導航的設計目標。
關鍵詞:無人車;物聯網技術;SLAM技術;遠程監控;地圖構建;自動導航
中圖分類號:TP274文獻標識碼:A文章編號:2095-1302(2020)05-00-03
0 引 言
隨著我國科技的不斷發展,人工智能產品在日常生活中越來越受歡迎,ROS作為最主流的機器人通信框架,其提供了非常完善的操作服務。對于目前無人小車研究中存在的對不同環境的識別、復雜地圖構建和精確導航等問題[1-2],本文設計基于激光雷達SLAM技術的地圖構建與自動導航系統,結合移動終端、無線網關、激光雷達及攝像頭等設備可以實現無人車對復雜環境的地圖構建,同時能夠精確地對無人車進行地圖自動導航。該系統可以依據構建的地圖自動規避障礙物,為無人車規劃最優路徑,提高了無人車定位的精確度。
1 系統總體設計
系統主要分為硬件部分、軟件部分及開發平臺三部分。系統總體架構如圖1所示。
系統的硬件部分采用樹莓派3B+主控板、STM32驅動板、激光雷達、攝像頭等設備來實現對環境信息的采集和無線信號的接收與處理;軟件部分采用Android Studio編譯環境來實現對移動終端的設計與調試;系統開發平臺則采用Ubuntu 16.04操作系統來實現遠程登錄和命令控制操作。系統通過Ubuntu 16.04平臺遠程接入樹莓派系統,使用啟動命令將硬件設備調試到工作狀態,然后利用手機終端控制無人車進行地圖構建和自動導航。
2 硬件設計
2.1 樹莓派主控板
Raspberry Pi 3B+不僅體積小,同時還具有完善的電腦功能,并且該主板支持Python,C等編程語言[3]。Raspberry Pi 3B+含有64位的1.4 GHz四核處理器,并裝載2.4 GHz和5 GHz雙頻段的無線網卡和藍牙4.2,支持PoE功能[4-5]。Raspberry Pi 3B+實物如圖2所示。
通過燒錄軟件將系統鏡像燒進SD卡,然后把SD卡插入樹莓派3B+上電啟動,正確顯示界面后,通過鍵盤和鼠標進行網絡連接和命令鍵入。
2.2 STM32驅動板
STM32系列單片機具有高性能、低成本、低功耗的特點[6-7]。本設計使用的型號為STM32F103RCT6,具有256 KB的FLASH空間,48 KB的RAM容量。STM32F103RCT6實物如圖3所示。
在使用過程中,連接驅動板、電機、電壓表及電源等設備,通過供電設備使其進入工作狀態。同時,驅動板上裝載姿態傳感器,可以用來感知無人車的運動姿態和方位等信息。
2.3 激光雷達與攝像頭
與普通微波雷達相比,激光雷達具有高分辨率、抗干擾能力強、體積小、質量輕等優勢[8-9]。在構建地圖過程中,通過控制小車的移動使激光雷達能夠對環境進行準確的掃描,最后在終端呈現出精確的環境平面圖。激光雷達設備如圖4所示。監控設備采用普通USB接口的攝像頭,其成本低且可以調節焦距,成像清晰,驅動程序簡單易懂,可以滿足設計中對環境的監控功能。攝像頭設備如圖5所示。
3 Ubuntu平臺搭建
本系統采用Ubuntu 16.04操作平臺,不僅符合樹莓派的操作系統,同時具有運行速度快、可移植性強、多終端并行工作等優勢,不僅節省后續復雜算法的開發時間,還可以多平臺進行移植操作。此外,除了在PC端移植Ubuntu 16.04系統,還在系統上構建次級系統—ROS系統[10]作為無人車的上層決策系統。搭建完成后的平臺界面如圖6所示。
4 軟件設計
4.1 集成開發環境
本系統使用Android Studio來開發手機端的APP。在進行Android Studio開發環境配置過程中需要注意JDK版本的一致性問題。此開發環境相比Eclipse而言,提供基于Gradle的項目構建系統,在構建Android項目時更加靈活[11],可以通過變量配置來生成多個版本的APK文件,擁有大量的代碼模板可以快速地構建Android項目,可直接拖拽UI編輯器以及內置Link Tools代碼優化工具,可以解決性能、可用性、版本兼容等問題。
4.2 軟件界面設計
設計的移動終端界面效果如圖7所示。移動終端的設計主要分為地圖區、監控區和控制區3個部分。地圖區用來呈現無人車在移動過程中通過激光雷達掃描后得到的環境平面結構圖,其中黑色表示不可通行區域;監控區用來顯示在無人車移動過程中前方呈現的影像,方便操作者在移動終端對實際環境進行監控;右下方的控制區則是用來控制無人車在構建地圖時移動的方向,提高構建地圖的準確性。
5 系統調試與實現
本系統在設計完成后,選取室內環境對無人車進行測試,具體實現步驟如下:
步驟1:打開樹莓派主控板和操作平臺,將二者接入同一網絡中,在搭建的Ubuntu 16.04平臺上通過SSH遠程登錄的方式進入樹莓派系統;
步驟2:登錄成功后,利用終端分別打開樹莓派底板、激光雷達構圖、導航及攝像頭等功能的啟動文件;
步驟3:打開移動終端,對無人車所在環境進行地圖構建和自動導航測試。
實際操作效果如圖8所示。
6 結 語
本系統利用Raspberry Pi 3B+與激光雷達等設備設計無人車的自動構圖導航功能,并通過測試對設計的功能進行展示。結果表明,所設計的無人車能夠對復雜環境進行準確地地圖構建,并且可以有效地躲避復雜路況上的障礙物到達指定位置,同時操作人員可以對環境進行遠程監控。此系統有效地融合激光雷達技術與智能控制技術,為后期的定位導航和路線規劃等研究提供了重要基礎。
參考文獻
[1]張夢巍.智能無人駕駛車輛路徑跟蹤及底層控制方法研究[D].沈陽:沈陽理工大學,2018.
[2]陳靜.基于無人機的室外全景漫游地圖設計與實現[J].物聯網技術,2019,9(1):103-104.
[3]張偉,王宜懷.基于Raspberry Pi 3的智能家居系統設計[J].單片機與嵌入式系統應用,2018,18(2):43-46.
[4]靳建彬,吳昊,張海龍.基于Raspberry Pi平臺的火災報警智能小車實現[J].電子世界,2018(13):191.
[5]朱得元,胡冰,俞寶庫.基于Android/Raspberry Pi的智能家居安防系統的設計與實現[J].電腦知識與技術,2017,13(19):158-161.
[6]王鵬飛,張映宏,王昊,等.基于STM32F103微控制器自動避障小車控制系統設計[J].信息技術與信息化,2019(2):77-80.
[7]楊輝,吳賽燕.農業機器人路徑識別自主導航系統:基于STM32與物聯網[J].農機化研究,2019,41(9):176-179.
[8]李晨曦,張軍,靳欣宇,等.激光雷達SLAM技術及其在無人車中的應用研究進展[J].北京聯合大學學報,2017,31(4):61-69.
[9]王會,羅濤,陸培源.激光雷達在無人車輛中的應用及關鍵技術分析[J].激光與紅外,2018,48(12):1458-1467.
[10]李步恒,杜玉曉.基于ROS的人形機器系統設計[J].電子世界,2018(5):59.
[11]馬力.基于Android的智能小車遠程控制與視頻監控系統研究[D].西安:西安電子科技大學,2018.