開源自主導航小車MickX4(十)總結
- 1 博客回顧
- 2 學習建議
- 3 后續計劃
在 開源自主導航小車MickX4 這個系列教程中,我們一共分為了十個博客部分進行了講解差速小車的導航,由于一些的原因,這里有一部分我們沒有仔細去深入研究其中每一個部分的演算法內容,只是簡單的呼叫和理解了這個演算法模塊的輸入輸出介面,比如說這里用到的激光SLAM(gmapping,cartographer LeGO-LOAM),還有后續的全域規劃演算法和區域規劃演算法也只是調了一下引數,沒有對原始碼進行分析,

1 博客回顧
最早針對先鋒機器人底盤上實作了自主導航,產生了如下的幾篇博客,當時在先鋒機器人的底盤上實作了自主導航,
-
自主導航小車實踐(一)
-
自主導航小車實踐(二)
-
自主導航小車實踐(三)
-
自主導航小車實踐(四)
后來由于專案需要,產生了自己制作ROS底盤的專案,因此制作了5輛麥卡納姆輪的底盤,這個程序撰寫成為了以下兩篇博文
-
ROS麥克納姆輪底盤制作(上)
-
ROS麥克納姆輪底盤制作(下)
后來想制作在室外運行的自主導航小車,因此確定了Mick 這個專案代號,開始使用四輪差速小車模型和16線的3D激光雷達作為傳感器,導航框架是基于move_base進行修改的,
專案開源的代碼中支持麥克納姆輪和四輪差速底盤,該開源專案從搭建機械部分開始,分享底層的嵌入式控制,上層的建圖和導航部分,最終實作A點到B的自主導航, 當前地址的代碼為麥克納姆輪和四輪差速ROS底盤的ROS導航節點包,與 mick_robot_chasiss 代碼(底層控制代碼)配合使用,更多的資訊可以參考博客-熊貓飛天
-
開源自主導航小車MickX4(一)ROS底盤硬體
-
開源自主導航小車MickX4(二)ROS底盤運動控制
-
開源自主導航小車MickX4(三)底盤ROS節點
-
開源自主導航小車MickX4(四)底盤URDF模型
-
開源自主導航小車MickX4(五)gmapping建圖
-
開源自主導航小車MickX4(六)cartography 2D 建圖
-
開源自主導航小車MickX4(七)cartography 3D 建圖
-
開源自主導航小車MickX4(八)LeGo-LOAM 室外3D建圖
-
開源自主導航小車MickX4(九)基于move_base 的自主導航框架
-
開源自主導航小車MickX4(十)總結與展望
2 學習建議
- 1)先使用成品底盤
根據我自己學習的經驗,大家如果是初學的話,最好還是先用一個成品的底盤(比如,turtlebot、autolabor、先鋒機器人和kuboki之類的),先用成品的底盤調通導航程式,這樣如果你對自己搭建底盤感興趣,你在除錯的時候起碼可以保證上層導航演算法是沒有問題的, - 2)底盤選型
在學習的程序中,我們發現兩輪差速底盤的里程計精度比起四輪差速要高很對(四輪是依靠輪子和底盤滑動實作轉向的),但是室外環境,兩輪底盤不如四輪底盤平穩,而里程計誤差問題通過額外的演算法來補償里程計,比如,IMU測量姿態角,把Yaw補償輪子打滑,俯仰角用于計算高度, - 3)底盤控制方案
現在的伺服電機都支持總線式的電機,一些工控機也有IO介面,因此也有方案直接把底盤的運動控制放在了工控機里面,也就是在ROS底盤節點里面計算速度倍訓,直接通過總線下發,控制電機調速,與之對比的方案就是我們采用的利用STM32來實作底盤的運動控制,這兩種方案我們都在不同的專案上使用過,單片機方案成熟度高,但是針對大功率電機需要對控制板做電磁屏蔽,工控機方案好除錯,可視化資料比較方便,但是實時性差一點,此外類似于執行緒阻塞的坑(別問我咋知道的(▽)),對于小車還是推薦單片機方案, - 4)學習方法
遇到問題別自己一直想,多加群交流,加群,加群,
3 后續計劃
當前的小車教程,也只能算是走通了整個流程,算是一個入門教程吧,在實際的專案中還需要針對環境去微調引數和,但是基本上小車是可以動起來的,實際上小車的檔案在此之前就已經寫完了,中間由于一些專案上的事情去忙其他的了,最近把檔案整理了一遍(也算是復習了),使得它展示的更加有邏輯性一點,
由于自己的研究方向是視覺SLAM,因此在后續的任務中將繼續開源另外一個專案,計劃是實作基于視覺的導航,針對在激光導航中遇到的問題,后期可能會調整一些使用4輪8電機的全驅動結構的底盤,提升里程計的精度問題,新的視覺導航框架也會合并到Mick這個專案代號中去,
最后感謝向我反饋BUG的網友們,感謝大家的支持,
歡迎大家點贊在評論區交流討論(cenruping@vip.qq.com) O(∩_∩)O
或者加群水一波(1149897304)

轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/256446.html
標籤:其他
下一篇:央視牛年春晚將首次采用“云”傳播
