基於STM32的無人船控制系統設計與實現

針對現有水面無人船自主導航問題,設計了一種基於STM32單片機的無人船運動控制系統:

  1. 該系統以STM32F103芯片做爲主控板核心芯片,採用了雙 MCU(微控制單元)架 構,集成了無人船的直流電機、電源顯示、信息採集等模塊的工做,通 過CAN 總線形式實現數據採集板與運動控制板之間的通訊;
  2. 經過卡爾曼濾波算法實現全球定位系統 (GPS) 和捷聯慣導系統(SINS)對無人船定位信息的數據處理,使無人船的定位更加準確;
  3. 經過自抗擾控制算法實現無人船對航向角的閉環控制,以達到路徑跟蹤的目的;
  4. 採用4G網絡通訊方式,同時設計了基於Java開發的上位機軟件(手機軟件)實現無人船的遠程操控功能;

硬件設計

QQ圖片20200412071515.png

  • 系統使用了兩個 STM32F103控 制 芯片,左邊的主要用來讀取數據,而且會對 GPS及IMU 的數據進行相關處理;右邊的主要用來控制無人船 運 動,可 通 過 CAN 總線控制電機驅動;4G模塊能夠上網,實現無人船的遠程操控功能;其 他 硬 件 如指示燈等能夠顯示無人船的各類狀態。

GPS/IMU組合導航模塊

  • GPS模塊的型號爲GYGPSV1-7M,IMU 模塊型號爲 MiniIMU AHRS。GPS和IMU 模塊都是經過串口鏈接到數據採集 板 上。將 數 據 獲 取 後,STM32 便會進一步解算數據,使無人船的定位信息更加準確,以後再將該信息經過CAN 總線發送給運動控制板,以便進行下一步操做

電機驅動模塊

4G通訊模塊

供電部分

軟件設計

GPS/IMU的數據融合

採用鬆組合方式來實現 GPS與IMU 的 數 據 融合。將GPS和IMU 分別測出的位置或速度信息經過卡爾曼濾波器實現數據融合,而且融合後的信息還會反饋回IMU,以達到消除捷聯慣導系統累積偏差的目的算法

無人船路徑跟蹤

  • 主要經過控制船隻的航向來實現無人船路徑跟蹤目的,故設計合理的航向控制器相當重要
  • 自抗擾 控 制 器是一種不依賴被控對象精確模型的、可以替代 PID控制技術的新型實用數 字 控 制 技 術。該控制器能夠很好地控制無人船航向,經過規劃好的路徑與實際船舶位置的對比能夠獲得無人船的指望航向,將指望航向做爲輸入,實際測量航向做爲輸出,通過控制器的做用使無人船實現路徑跟蹤的目的。

上位機監控軟件設計

無人船上位機軟件是基於 Android系 統 採 用Java語 言
開發的,這款 App適用於 Android5.0以上的手機,穩定性好,包括6部分信息。網絡

感觸:會不會像昨天的無人機培訓同樣,控制系統啥的都找好了,不如先看例子吧spa

相關文章
相關標籤/搜索