天天看點

基于ros的機器人運動控制相關學習(三)

基于之前嘗試,拟畫一個車身六個車輪的簡單模型。

還是參考https://blog.csdn.net/u010853356/article/details/79235293

然後根據turtlebot3的相關東西修改,結果有了些問題。

基于ros的機器人運動控制相關學習(三)

隻有一些參數設定的警告,但是沒有顯示相關的報錯,結果是無模型顯示在gazebo中,

基于ros的機器人運動控制相關學習(三)

但是模型樹裡什麼都有。

基于此思考,進行urdf.xacro檔案的顯示。

尴尬,突發奇想會不會是這種檔案不識别urdf裡的mesh檔案,把mesh檔案換成box size結果真的有顯示了。

但是出現了另外一個問題,機器人散架了

基于ros的機器人運動控制相關學習(三)

然後發現了問題,base_robot 相對于base_footprint坐标系有一定高度。

基于ros的機器人運動控制相關學習(三)

是以自己新寫的myrobot.urdf.xacro檔案等驗證無誤,下一步是驗證能否進行運動控制。還有就是運動的插件需要更新,gazebo與ros不一樣,gazebo是真的按照實體引擎來進行驅動的。同樣的參數,同樣的代碼。

基于ros的機器人運動控制相關學習(三)

加載了驅動器控制插件的四個joint就不會發生變換,而中間兩個關節則會發生變換。

通過鍵盤控制包也确實能控制四個關節一頓轉。

接下來嘗試導入mesh檔案,

參考http://gazebosim.org/tutorials/?tut=attach_meshes

嘗試修改之後,發現問題:

基于ros的機器人運動控制相關學習(三)

目前或者轉化成dae檔案試試,或者再找找stl的相關

更換寫法後發現車體可見了。但是位置亂了。

基于ros的機器人運動控制相關學習(三)

不過大體意思有了,是以接下來,進行個人機器人模型的模組化。

六個弧腿,一個攝像頭,一個車身,通過簡單launch檔案修改,基本上已經确定能用,顯示如下,接下來進行位置的相關調整,或者加入transmission。

基于ros的機器人運動控制相關學習(三)

還有一個問題,就是collision和visual,需要保證一緻。

基于ros的機器人運動控制相關學習(三)

下面驗證機器人能否運動和視訊是否正常工作。

基于ros的機器人運動控制相關學習(三)

事實證明運動正常,想按照自己的步态運動,下一步隻要自己編寫插件就可以了。

然後進行了攝像頭相關修改:

主要參考https://blog.csdn.net/qq_32761549/article/details/102678296#_502

基于ros的機器人運動控制相關學習(三)

證明攝像頭正常工作,可看到圖像。這裡面有個重點問題:在SolidWorks中導入的網格檔案,其坐标系可能會有些問題,是以進入gazebo需要進行調整,在調整過程中,要保證攝像頭x軸的方向,否則攝像頭向下就被擋住了。什麼都看不到。

總結一下:

機器人運動控制基礎仿真已基本實作。

包括:模型導入(urdf編寫,gazebo标簽編寫,在gazebo中顯示),插件導入(運動控制插件,攝像頭插件,雷射雷達插件等)

可以說現在想要進行特定步态的控制,隻差環境模型導入、算法和插件編寫了。是以下一步回歸算法的相關研究,最後進行插件的編寫

繼續閱讀