前沿: 在進行機器人仿真時建模往往是一項比較繁瑣的工作,URDF(Unified Robot Description Format,統一機器人描述格式)作爲一個很常用的機器人描述格式,能很方便的讓我們進行機器人動力學和運動學仿真。Matlab、ROS、V-rep都支持URDF,這裏介紹一種可以直接把sw文件轉化成URDF格式的方法。
1.準備工作
1.1 去這裏下載solidworks to urdf插件安裝包,然後直接安裝(安裝位置隨意,裝哪裏sw都能識別,需要注意的是這個插件面向的是sw2018及更新版本的sw,舊版本可能會用不了,盜版sw也有可能用不了,如果出問題建議重裝更新版本的sw)
1.2 打開sw,點擊工具-插件,在SW2URDF處打勾勾。接着在文件下拉菜單裏就會多一個Export as URDF選項,然後我們就可以愉快的使用了。(也會有安裝插件並打勾之後未出來這個選項的情況出現,我就遇到了這種情況,不才,未找到解決方法,重裝了sw)
2.DH法建立機械臂座標系
2.1 準備機械圖紙
準備好機械圖紙,確定好各個連桿關節之間的關係,沒有圖紙的在這裏下載,我這邊的機械模型如下:
- 基底和轉動臺由轉動關節1相連
- 轉動臺與連桿1由轉動關節2相連
- 連桿1與連桿2由轉動關節3相連
2.2 確定初始位置
確定一個機械臂的初始位置,並把你的機械模型的CAD也調整到初始位置
如果你是使用配合來調整的話,爲了防止完全定義的裝配體影響生成的URDF文件,調整完初始位置記得壓縮掉相關配合,給裝配體留下相應的自由度,不然系統自動生成的座標系的位置不正確。
2.3 附上座標軸
提取出機械臂的簡化模型,並按照DH法附上關節座標系
我這裏紅色是x軸,藍色是z軸,綠色是y軸
3.把模型轉換成URDF格式
3.1 生成關節座標軸和座標系
打開你的機械模型,點擊file——File-Export as URDF
界面左邊會出現導出選項(這是我未調整初始位形時截的圖,但不影響講解。這裏我們先讓系統自動幫我們生成關節軸和座標系,然後再自行調整,其實更好的做法是我們自己定義好關節主軸,然後再用urdf導出工具選擇關節對應的主軸生成urdf)
- 先點擊第一個模塊,也就是我們機械模型的基底
- 命名 link name 爲 base
- base爲我們固定的世界座標系提供參考,系統會自動幫我們配置世界座標系位置
- base 連着一個子模塊,也就是轉動臺。於是把child link 數目調至1
- 進行下一個link的配置,點擊empty,再點擊轉動臺
- 點擊模型裏的轉動臺
- 給連桿起名字
- 給關節起名字
- 參考座標系,現在我們沒有定義座標系,讓系統自動生成,等下自己調整
- 參考座標軸,同上放默認,等下自己調整
- 選你的關節類型,我們這裏是轉動關節,因此選擇 revolute
- 轉動臺連着一個子連桿,因此子連桿數目調至1
- 再點擊 empty 再點擊連桿1,以此類推完成所有的配置
最後一個link 沒有子連桿,因此子連桿數目默認0就可以。 待所有關節和連桿配置完成以後,點擊preview and export
這時系統會自動根據你的配置來放置座標軸和座標系,幾秒鐘之後彈出窗口:
這裏可以點擊左邊窗口的 link 來查看並且修改一些參數,這時我們還不能直接點擊next。我們還需要檢查並調整剛剛系統自動生成的座標系和座標軸。
3.2 調整座標系
關掉這個窗口,看我們的模型窗口,我們發現我們的模型多了一些座標軸和座標系。
仔細查看這幾個座標系
- Origin_global 就是系統定義的全局座標系
- Origin_global1 ~ Origin_global3 就是我們的關節所在的座標系
- Axis_joint1~ Axis_joint3 是我們的關節軸
仔細觀察各個座標系,我們發現它與我們之前自己根據DH法定義的座標系不同,因此需要我們做出相關調整。
- 選中座標軸
- 點擊 edit feature 進入座標系調整頁面
- 根據情況調整
這裏不再贅述。
3.3 應用調整好的座標系
座標系調整結束之後,再次點擊file——File-Export as URDF,然後重複3.1的步驟,只不過Coordinate system 和 axis 需要選擇我們剛剛調整過的最終的座標系和座標軸。所有關節和link都要配置。
配置結束之後繼續點擊preview,進行最後的參數調整。
3.4 最後的參數調整及生成urdf文件
在彈出的窗口裏是給我們做關節參數調整的。點擊左邊窗口的各個joint可以查看關節座標系的位置和方向。我們查看三個關節,發現關節2的旋轉正方向不對,這裏我們改成 1
初學者,其他參數我們暫時不管,點擊下一步。
彈出第二個參數調整,這裏是連桿參數的窗口,我們查看各個連桿,發現Inertia那一欄很多超級小的數字,可以改爲0
如果最後參數確認無誤的話,再點擊Export URDF and Meshes…(如果點擊左邊的Export URDF only的話,系統只會生成urdf文件,在仿真的時候沒有mesh文件,因此你不能看到3D仿真圖形)
選擇生成文件的位置,並保存,很快提示你生成成功。我們定位到文件位置,最終生成了下面的這些文件。
大功告成,下一篇講解如何把 urdf 導入到 matlab 進行仿真