沒有興趣玩SolidWorks可直接略過本節,開發包已經提供直接導出的URDF文件
簡述
ROS中通過RVIZ可視化機器人導航情況,其中,URDF(Unified Robot Description Format)是統一的機器人描述文件,此類文件通過HTML格式定義機器人模型(Robot Model)的相關信息,如:連桿、關節名稱,運動學參數、動力學參數、可視化模型、碰撞檢測模型等。
例如下面的URDF文件定義了機器人頭部關節:
<joint name="head_swivel" type="continuous">
<parent link="base_link"/>
<child link="head"/>
<axis xyz="0 0 1"/>
<origin xyz="0 0 0.3"/>
</joint>
當機器人比較復雜時,URDF文件會很長,不可能全部手動定義。那么如何快速建立URDF文件來描述自己的機器人?
安裝sw_urdf_exporter插件
ROS目前在SolidWorks中提供了自動生成URDF文件的插件。官網地址[:http://wiki.ros.org/sw_urdf_exporter]
安裝成功后,SW中會多出一個SW2URDF插件,勾選啟用:
3D模型建立完后,點擊菜單欄里file->Export as URDF
進入URDF配置界面,在左側URDF Exporter中輸入連桿名稱,選擇屬於該連桿的模型文件,子連桿數。這里簡單的將除激光雷達意外部分全部定義為base_link, 它將有1個子連桿(激光雷達)。
這時base_link下會多出一個Empty_link,點擊編輯。
給連桿起名為laser_link,關節名稱為laser_link_joint,選擇激光雷達3d模型,沒有子連桿,然后點擊Preview and Export...
隨后會出現窗口設置具體連桿關節參數,可直接跳過。
完成后, 會生產一個URDF package,里面launch文件夾中有display.launch,可以直接在ROS中運行。
Rviz展示機器人模型
啟動Rviz,即可展示機器人模型roslaunch pibot_description display.launch
SW 2014下生產的launch文件運行可能會報以下錯誤:
原因是路徑有誤,沒有robots文件夾,生產的urdf文件在urdf文件夾中,手動修改即可。
另外可能出現找不到3d模型文件的錯誤,原因是meshes文件夾中模型文件后綴大小寫和urdf文件中不匹配,手動修改匹配即可。
重新啟動后顯示如下
備注
這里我們定義了2個link,一個是底盤base_link, 另一個是laser_link,導航中我們需要用到這2個link