原文:https://blog.csdn.net/xuehuafeiwu123/article/details/54288561
描述關節的運動學和動力學屬性。描述關節的運動範圍。
示例如下:
<joint name="my_joint" type="floating"> 關節的名稱、類型
<origin xyz="0 0 1" rpy="0 0 3.1416"/> 變換矩陣:位置、角度
<parent link="link1"/> 關節連接的父連桿
<child link="link2"/> 關節連接的子連桿
<calibration rising="0.0"/>
<dynamics damping="0.0" friction="0.0"/> 阻尼、靜摩擦
<limit effort="30" velocity="1.0" lower="-2.2" upper="0.7" /> 極限值:最大力矩、最大速度、關節下限、關節上限
<safety_controller k_velocity="10" k_position="15" soft_lower_limit="-2.0"
soft_upper_limit="0.5" />
</joint>
屬性
1、name (required)
定義關節的名字(唯一)
2、type (required)
定義關節類型,可選項有:
revolute - 旋轉關節,其極限位置由 upper and lower limits 決定
continuous - 旋轉關節,無位置限制
prismatic - 滑動關節,其極限位置由 upper and lower limits 決定
fixed - 虛擬關節,關節不可運動
floating - 六自由度關節
planar - 平面關節
組件
< origin> (optional: defaults to identity if not specified)
父連桿和子連桿的轉換矩陣。關節位於子連桿的座標原點處,
xyz
描述 x,y,z 座標的偏置量
rpy
描述繞固定軸的旋轉量,按照 x,y,z 軸的順序。
< parent> (required)
父連桿
link
父連桿的名字
< child>(required)
子連桿
link
子連桿的名字
< axis>(optional: defaults to (1,0,0))
關節座標系中,關節軸的座標。
xyz
關節軸的描述(正交向量)
< calibration> (optional)
關節的參考位置,用來校準關節的絕對位置
rising (optional)
關節正向運動,參考位置出發上升沿
falling (optional)
關節反向運動,參考位置出發下降沿
< dynamics> (optional)
描述關節的物理屬性。經常用來詳述建模屬性,特別是對仿真必不可少
damping (optional, defaults to 0)
關節的物理阻尼值
friction (optional, defaults to 0)
關節的物理靜摩擦力
< limit> (required only for revolute and prismatic joint)
用來描述運動的一些極限值
lower (optional, defaults to 0)
關節位置下限
upper (optional, defaults to 0)
關節位置上限
effort (required)
關節的最大力矩
velocity (required)
關節的最大速度
< mimic> (optional)
用來描述現在定義的關節與已經存在的關節的關係
其值可以用下式計算:
value=multiplier∗otherjointvalue+offset
value=multiplier∗otherjointvalue+offset
joint (required)
被模仿的關節名稱
multiplier (optional)
乘積因子的數值,默認1
offset (optional)
偏置量,默認0
< safety_controller> (optional)
描述安全控制器參數
soft_lower_limit (optional, defaults to 0)
安全控制器運行時,關節的位置極限下界,其值應大於 lower joint limit
soft_upper_limit (optional, defaults to 0)
安全控制器運行時,關節的位置極限上界,其值應小於 upper joint limit
k_position (optional, defaults to 0)
位置和速度極限之間的關係
k_velocity (required)
力矩和速度之間的關係