基于GPS的智能車自動駕駛系統的研制
作者 李延斌 牛雷 佟賀 陸軍航空兵學院基礎部(北京 101123)
本文引用地址:http://www.j9360.com/article/201810/393374.htm李延斌,出生于1977年5月,男,碩士研究生,副教授,研究方向為計算機應用;牛雷,出生于1984年1月,男,講師,研究方向為計算機應用;佟賀,生于1980年10月,女,碩士研究生,講師,研究方向為嵌入式。
摘要:本論文研制了一種使用STM32作為微處理器的具有自動路線規劃、自動駕駛、遠程遙控等功能的智能車自動駕駛系統。該系統分為手持端和車載端兩部分,用戶可以通過手持端在地圖上對智能車的目的地進行設置,車載端采用A*算法自動規劃出路線,由GPS的地理位置信息和九軸傳感器JY-901模塊的磁場信息為輔助,控制舵機和電機使智能車自動駕駛至目的地。
0 引言
自動駕駛技術是當今世界最熱門的研究方向之一,因其智能便捷和安全穩定受到越來越多的消費者喜愛。各國政府希望通過自動駕駛技術的成熟來解決繁雜的交通問題。中國從20世紀80年代開始進行自動駕駛汽車的研究,現在已經躋身世界先進水平。
本論文主要對基于GPS導航系統的智能車自動駕駛系統進行研究探索和設計,最終設計完成了基于GPS衛星導航系統的可進行自動路線規劃、自動駕駛、遠程遙控等功能的智能車自動駕駛系統。
1 總體設計方案
智能車自動駕駛系統分為手持端和車載端兩部分。手持端是自動駕駛儀的人機交互部分,車載端是智能車部分。手持端和車載端之間采用NRF24L01+PA+LNA模塊進行無線通信進行可達1 km以上的遠程控制。
智能車自動駕駛儀主要兩個以STM32F103為微處理器的開發板、GPS模塊、SD存儲卡模塊、外部FLASH模塊、JY-901模塊、NRF24L01+PA+LNA無線模塊、電機驅動模塊、電源模塊、舵機、電機等硬件組成。
手持端通過觸屏選擇智能車的工作模式,工作模式共分為兩種,一是自動駕駛模式,二是遙控車模式。當選擇智能車模式后接收智能車的GPS坐標信息,在地圖上顯示出實時位置,之后在地圖進行目的地的設置,同時將目的地坐標發送給智能車。智能車得到目的地坐標后采用A*算法自動規劃出最短路線,并在手持端顯示出規劃的路線。手持端選擇運行后車載端后按照規劃的路線以GPS的位置信息和九軸傳感器JY-901模塊的磁場信息為輔助,控制舵機和電機自動駕駛到目的地。在運動過程中手持端可以實時監控智能車的位置和運行狀態。在運行過程中可以切換成遙控的方式對智能車進行遠程。如果選擇了遙控模式,則切換到遙控界面。通過觸碰界面上的提示漢字,來實現對智能車的方向操控。操控方向分為前進、后退、左前、右前、左后、右后。轉向的角度可以通過觸碰的時間來控制。
2 智能車自動駕駛系統硬件設計
2.1 手持端設計
自動駕駛系統手持端硬件使用秉火STM32F103開發板、3.2寸觸摸式LCD和一個NRF24L01+PA+LNA模塊組成,供電采用鋰電池供電。自動駕駛儀手持端可以實現地圖的顯示、智能車實時位置和狀態顯示、目的地的設定和路徑規劃和遙控等功能。
手持端通過觸摸式LCD進行觸控,并通過LCD進行地圖、可選路線、最短路線、操作提示漢字的顯示和車載端實時位置、狀態顯示,具體結構詳見圖1。
通過外部FLASH存儲觸摸式LCD的觸摸校準系數,使用SD卡存儲地圖和漢字字庫。使用STM32內部FLASH存儲地理信息數組。當無線通信模塊處于接收狀態時根據顯示狀態接收車載端發送的實時位置、狀態、規劃的最短路線等信息。當無線通信模塊處于發送狀態時根據顯示狀態發送目的地位置,模式選擇信號、遙控控制信號等信息。
2.2 智能車自動駕駛系統車載端設計
車載端硬件在小車平臺上使用正點原子STM32MINI開發板、GPS模塊、GPS天線、JY-901模塊、一個NRF24L01+PA+LNA模塊、舵機、電機驅動模塊、電源模塊組成,供電采用7.2V聚合物電池供電,具體硬件結構見圖2。自動駕駛儀車載端主要實現GPS定位、最短路線的計算、智能車磁航向計算、自動駕駛、獲取運動狀態信息等功能。
車載端通過GPS模塊和GPS天線提供GPS數據,JY-901模塊提供磁場數據。使用STM32對傳感器數據進行融合。當無線通信模塊處于發送狀態時將位置和狀態信息和規劃的路線發送給手持端。當無線通信模塊處于接收狀態時接收手持端發出的目的地位置、模式選擇信號、遙控控制信號等信息。
3 自動駕駛儀系統軟件設計
3.1 手持端軟件設計
自動駕駛系統手持端部分的軟件實現的功能有:顯示地圖、漢字和智能車在地圖上的位置。通過觸屏及漢字提示對手持端進行操作。根據地理信息數組,顯示可行進道路和最短路線,為車載端提供路網坐標,通過手持端對車載端進行遙控。在運行中實時顯示智能車的狀態和位置。通過觸碰觸摸屏產生一次中斷,實現對狀態函數的切換,改變顯示屏的顯示狀態和無線通信模塊的通信狀態,軟件流程見圖3。
智能車自動駕駛儀手持端共設計九種顯示狀態。顯示背景始終為地圖。顯示狀態圖片見附錄。為增加顯示效果,顯示包括像素坐標點在內的周圍四個坐標。漢字顯示為黃色字符,背景色為黑色。發生觸碰時在主函數中產生中斷,記錄下觸摸點的坐標。當觸點位于提示字顯示范圍內時,根據提示字改變顯示狀態。為增加用戶體驗,在觸摸到提示字時提示字由黃色變為紅色。當發生觸碰時,顯示狀態函數重新運行,進行顯示狀態的轉換。操作流程如圖4所示。
3.2 車載端軟件設計
自動駕駛儀車載端的軟件部分實現的功能有:使用A*算法計算出最短路線,并發送給手持端。基于GPS和磁傳感器信息,控制舵機和電機按規劃路線自動駕駛到目的地的功能。并發送實時位置和狀態、規劃的路線等信息。接收手持端對智能車的遙控操作信號,車載端軟件主函數流程圖如圖5所示。
為了實現在手持端地圖上顯示位置的功能,需要對地理坐標系和像素坐標系進行轉換。根據像素坐標、瓦片坐標和地理坐標的幾何關系,設計地理坐標系和像素坐標系的轉換程序, 轉換流程圖6所示。
綜上所述,經硬件設計和軟件設計,最終完成了智能車自動駕駛系統的研制,圖7、8分別為手持端和車載端,圖9為手持端地圖,經多次實驗驗證,智能車自動駕駛系統運行效果良好。
參考文獻:
[1]李燕.GPS測量中坐標系統及坐標系的轉換[J].華北國土資源,2008,3:62~63.
[2]佚名. 我國研發的無人駕駛汽車順利通過試驗[J]. 創新時代, 2011(9):15-15.
[3]張淑清,等.嵌入式單片機STM32設計及應用技術[M].北京:國防工業出版社,2016.
[4]張學昕. 具有自主巡航功能的四旋翼飛行器設計[D]. 哈爾濱理工大學, 2016.
本文來源于《電子產品世界》2018年第11期第61頁,歡迎您寫論文時引用,并注明出處。
評論