參考視頻:【奧特學園】ROS機器人入門課程《ROS理論與實踐》零基礎教程_嗶哩嗶哩_bilibili
參考文檔:http://www.autolabor.com.cn/book/ROSTutorials/
link
urdf 中的 link 標簽用於描述機器人某個部件(也即剛體部分)的外觀和物理屬性,比如: 機器人底座、輪子、激光雷達、攝像頭...每一個部件都對應一個 link, 在 link 標簽內,可以設計該部件的形狀、尺寸、顏色、慣性矩陣、碰撞參數等一系列屬性
1.屬性
- name ---> 為連桿命名
2.子標簽
-
visual ---> 描述外觀(對應的數據是可視的)
-
geometry 設置連桿的形狀
-
標簽1: box(盒狀)
- 屬性:size=長(x) 寬(y) 高(z)
-
標簽2: cylinder(圓柱)
- 屬性:radius=半徑 length=高度
-
標簽3: sphere(球體)
- 屬性:radius=半徑
-
標簽4: mesh(為連桿添加皮膚)
- 屬性: filename=資源路徑(格式:package://<packagename>/<path>/文件)
-
-
origin 設置偏移量與傾斜弧度
-
屬性1: xyz=x偏移 y便宜 z偏移
-
屬性2: rpy=x翻滾 y俯仰 z偏航 (單位是弧度)
-
-
metrial 設置材料屬性(顏色)
-
屬性: name
-
標簽: color
- 屬性: rgba=紅綠藍權重值與透明度 (每個權重值以及透明度取值[0,1])
-
-
-
collision ---> 連桿的碰撞屬性
-
Inertial ---> 連桿的慣性矩陣
0.准備工作
素材下載鏈接:https://github.com/zx595306686/sim_demo.git

demo02_link.launch 內容:
<launch> <!--1.在參數服務器載入 urdf 文件--> <param name="robot_description" textfile="$(find urdf01_rviz)/urdf/urdf/demo02_link.urdf" /> <!--2.啟動 rviz--> <node pkg="rviz" type="rviz" name="rviz" args="-d $(find urdf01_rviz)/config/show_mycar.rviz"/> </launch>
1.偏移量和幅度
<!-- 需求:設置不同形狀的機器人部件--> <robot name="mycar"> <link name="base_link"> <!--可視化標簽--> <visual> <!--1.形狀--> <geometry> <!--1.1 立方體--> <!-- <box size="0.3 0.2 0.1"/> --> <!--1.2 圓柱--> <!-- <cylinder radius="0.1" length="2"/> --> <!--1.3 球體--> <!-- <sphere radius="1"/> --> <!--1.4 皮膚--> <mesh filename="package://urdf01_rviz/meshes/autolabor_mini.stl"/> </geometry> <!--2.偏移量與傾斜弧度--> <!-- xyz 設置機器人模型在 x y z 上的偏移量 rpy 用於設置傾斜弧度 x(翻滾) y(俯仰) z(偏航) --> <origin xyz="3 2 1" rpy="0.5 1 0.8" /> <!--3。顏色--> </visual> </link> </robot>

<origin xyz="0 0 0" rpy="1.57 0 1.57" />

2.顏色
<!-- 需求:設置不同形狀的機器人部件--> <robot name="mycar"> <link name="base_link"> <!--可視化標簽--> <visual> <!--1.形狀--> <geometry> <!--1.1 立方體--> <!-- <box size="0.3 0.2 0.1"/> --> <!--1.2 圓柱--> <!-- <cylinder radius="0.1" length="2"/> --> <!--1.3 球體--> <!-- <sphere radius="1"/> --> <!--1.4 皮膚--> <mesh filename="package://urdf01_rviz/meshes/autolabor_mini.stl"/> </geometry> <!--2.偏移量與傾斜弧度--> <!--z xyz 設置機器人模型在 x y z 上的偏移量 rpy 用於設置傾斜弧度 x(翻滾) y(俯仰) z(偏航) --> <origin xyz="0 0 0" rpy="1.57 0 1.57" /> <!--3。顏色--> <!-- rgba: r = red g = green b = blue a = 透明度 四者去取值 [0,1] --> <material name="car_color"> <color rgba="0.3 0.5 0.2 0.5" /> </material> </visual> </link> </robot>

