一、urdf簡介
unified robot description format,簡稱urdf,統一機械人描述格式。ros可以解析urdf檔案中使用xml格式描述的機械人模型。
1、link
描述機械人某個剛體外觀和物理屬性。
包括:尺寸(size)、顏色(color)、形狀(shape)、慣性矩陣(mertial matrix)、碰撞引數(collision properties)
link部分的外觀引數
慣性引數
碰撞屬性
2、joint
運動學和動力學屬性。
位置、速度限制。
關節運動形式:
continuous(無限旋轉關節)、revolute(有旋轉角度的旋轉關節)、prismatic(滑動,沿某一軸移動,有位置極限)、planner(平面)、floating(浮動)、fixed(固定、不可移動)
關節的參考位置,校準關節的絕對位置
關節的物理屬性
運動極限值
該關節與已有關節的關係
安全控制器引數
二、實踐
1、建立功能包
$ catkin_create_pkg mbot_description urdf xacro
mbot_description:約定俗成的機械人命名格式:機械人名+description。
urdf:建立功能包需依賴urdf功能包,以解析urdf模型。
xacro:功能包依賴
2、建立資料夾
urdf:存放機械人模型的urdf或xacro檔案。
meshes:存放urdf中引用的模型渲染檔案。
launch:儲存相關啟動檔案。
config:儲存rviz的配置檔案。
3、建立launc**件
"robot_description" textfile=
"$(find mbot_description)
/urdf/urdf/mbot_base.urdf" />
<
!--param:載入ros引數。$(
find mbot_description)
/urdf/urdf/mbot_base.urdf:新增路徑,載入urdf模型到rviz中。-->
<
!-- 設定gui引數,顯示關節控制外掛程式 -->
"use_gui" value=
"true"/>
<
!-- 執行joint_state_publisher節點,發布機械人的關節狀態 -->
<
!--配合gui工具,在rviz顯示外掛程式控制joint做狀態變化-->
"joint_state_publisher" pkg=
"joint_state_publisher" type=
"joint_state_publisher" />
<
!-- 執行robot_state_publisher節點,發布tf -->
<
!--將robot各個links、joints之間的關係通過tf形式,整理成三維姿態資訊發布-->
"robot_state_publisher" pkg=
"robot_state_publisher" type=
"state_publisher" />
<
!-- 執行rviz視覺化介面 -->
"rviz" pkg=
"rviz" type=
"rviz" args=
"-d $(
find mbot_description)
/config/mbot_urdf.rviz" required=
"true" />
4、配置檔案
5、urdf建模
根標籤
<?xml version=
"1.0" ?>
"mbot"
>
...
建立主體
"base_link"
>
"0 0 0" rpy=
"0 0 0"/>
"0.16" radius=
"0.20"/>
"yellow"
>
"1 0.4 0 1"/>
建立左輪
"left_wheel_link"
>
"0 0 0" rpy=
"1.5707 0 0" />
"0.06" length =
"0.025"/>
"white"
>
"1 1 1 0.9"/>
左輪鏈結主體關節
"left_wheel_joint" type=
"continuous"
>
"0 0.19 -0.05" rpy=
"0 0 0"/>
"base_link"/>
"left_wheel_link"/>
"0 1 0"/>
右輪
"right_wheel_link"
>
"0 0 0" rpy=
"1.5707 0 0" />
"0.06" length =
"0.025"/>
"white"
>
"1 1 1 0.9"/>
"right_wheel_joint" type=
"continuous"
>
"0 -0.19 -0.05" rpy=
"0 0 0"/>
"base_link"/>
"right_wheel_link"/>
"0 1 0"/>
三、urdf檔案檢查模型整體結構
在urdf檔案當前路徑下開啟終端:
$ urdf_to_graphiz mbot_kinect.urdf
生成兩個檔案,其中乙個是urdf檔案,pdf開啟可看到整體結構。
URDF機械人建模
urdf檔案是機械人模型描述格式,乙個完整的機械人模型是由一系列link和joint組成。建模過程 1 建立機械人功能包mbot description,以及依賴檔案urdf和xacro,1 建立新資料夾 urdf 存放機械人模型的urdf檔案或xacro檔案 config 儲存rviz配置檔案 l...
ROS自學實踐 2 機械人建模URDF
目的 構建機械人的3d模型,為物理 做準備。urdf unified robot description format 就是描述機械人硬體尺寸布局的模型語言。它是同ros通訊的渠道,通過機械人的物理尺寸來配置機械人模型。在工作空間 我們一般建立為catkin ws 的src目錄下,通過catkin ...
ROS基礎學習筆記二(URDF機械人建模)
下面正式開始介紹今天的主題 urdf機械人建模。urdf unified robot description format 即統一機械人描述格式,使用的語言主要是xml標記語言。ros可以解析urdf檔案中使用xml格式描述的機械人模型。乙個urdf檔案中主要包括和 機械人的起點 幾何特性,cyli...