在ROS中 編寫URDF檔案時的一些問題。
1 link與joint中origin使用:
<link name="dsad">
<visual>
<origin xyz="a b c" rpy="d e f"/>
</visual>
</link>
<joint name="" type="">
<origin xyz="a b c" rpy="d e f"/>
</joint>
link中origin:xyz是指以父節點的坐标系為參考系(若沒有父節點則以世界坐标系為參考系),該link分别向xyz方向移動a b c的距離,但是該link本身的坐标系不移動(該link的預設坐标系與起父節點相同);rpy是指以父節點的坐标系為參考系,分别以xyz軸為旋轉軸,旋轉d e f的弧度,但是該link本身的坐标系不旋轉。并且先執行旋轉rpy,再執行移動xyz,link本身的坐标系始終不動。
而joint中origin與link的差別是,link移動和旋轉時,該link本身的坐标系随該link一同移動,即他本身的坐标系是在變化的。并且先執行xyz移動,再執行rpy旋轉。
2 joint的類型type(參考http://wiki.ros.org/urdf/XML/joint)
revolute:按一定的軸旋轉,并且有最小角度和最大角度限制
continuous:按一定的軸旋轉,沒有角度限制
prismatic:按一定得軸平移,并且有最小和最大距離限制
fixed:固定
planar:在垂直于軸的平面内運動
floating:允許有六個自由度的運動