小豆包的學習之旅:開發記錄


聲明:軟件截圖為個人所有,嚴禁用於商業目的和其他盈利行為。

雲台控制和激光點雲獲取軟件

第一階段:三維點雲采集可視化

第二階段:MoblieSim仿真數據接入,sim_lms1xx_1激光。Gmapping建圖實現效果圖,感覺效果一般,估計有的參數還是要調整一下。

進一步工作:
(1)當前真實軌跡,當前pose;<Done>
(2)目前建圖過程延遲很厲害,因為加入隊列的數據RangeReading數目太多,需要進行控制;
  思路:減速增加隊列中的無效數據(不進行掃描匹配);機器人處於停止狀態不讀取激光數據;時間間隔控制;
(3)圖的大小不是實際的坐標值,需要對應上;<Done>
(4)ArServerModelGoto中的速度控制模式,控制運行到位置;<Done>

 

  

第三階段:鼠標控制初步(沒有局部避障和路徑規划)

今天在機器人上真實環境測試了一下,首先鼠標控制和運動到位置的服務都是可用的。問題:運動過程中老是撞到障礙,有室內太擁擠的原因,因此急需增加局部避障功能。

同時考慮是不是機器人里程計提供的位姿飄的太厲害了,我看着地圖控制怎么會撞呢?

機器人啟動之后即產生位姿(世界,機器人原點),當開始建圖時的機器人位姿(相對於機器人原點)已經不為0。但是建圖用的地圖原點產生了一個新的坐標系。

第四階段:實現了VFF局部避障算法(Done 2017/6/6

第五階段:邊界探索 (初步完成,很多問題 2017/6/8

  完成一個簡單版本的自主探索,目前還有很多問題:

1.根據True Pose進行運算而非里程計 (Done)
2.控制根據True Pose相對方向運動 (Done,思考該方法是有問題的!)
3.自主探索開口點提取的太粗糙,需要精化 (未完成)

  TruoPose圖片

實際環境測試,出現問題:像木馬一樣震顫(2017/6/20)

可能原因:
(1) VFF算法 局部避障需要延時,建議值1s (Done)
(2) 激光的5m范圍內存在過小的值,無效值1mm (Done)
(3) 服務器端需要增加配置文件,控制激光不連接 (Done)
(4)按鈕實現的速度控制需要限制前進速度
(5) 優化服務端,尤其是旋轉的速度要控制的低速旋轉(Done,目前+-15度以內速度不控制,以外按照Heading方向10度間隔旋轉)
反饋:
修改了(1)(2)(3)之后,實際環境中鼠標算是可以控制了。

 第六階段:服務優化,算法優化

   (1)$t1$完成掃描匹配,得到真實位姿$T_{1}$,用$t1$時刻的真實位姿和里程計來更新$t_{2}, t_{3}, ... , t_{10}$時刻的里程計。則$t_{10}$時刻有,$T_{10}=T_{1}*Odom_{1}^{-1}*(Odom_{10})$

  (2)服務器端的旋轉都按照Heading方向相對運動,因為里程計偏差太大。根據TruePose計算的Map坐標系下的目標方向,和Odometry中相差太大。

  (1)(2)兩點都歸結為相對運行,相對於機器人前一時刻的Heading進行旋轉。

 

2017/6/26室外測試,沒有問題,只是走廊地板的摩擦力好大,旋轉不流暢,阻力很大!

2017/8/4修改:旋轉角度很大時,采用勻速旋轉;角度比較小時則采用旋轉到角度。

視頻地址:

http://v.youku.com/v_show/id_XMjk1MDg3MDg2MA==.html?spm=a2h0k.8191407.0.0&from=s1.8-1-1.2


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM