首先建立軟體包來儲存機械人模型
catkin_create_pkg mastering_ros_robot_description_pkg roscpp tf geometry_msgs urdf rviz xacro安裝為安裝的軟體包
1 sudo apt install ros-melodic-urdf2 sudo apt install ros-melodic-sacro
sudo apt install liburdfdom-tools然後建立乙個urdf模型sudo apt install ros-melodic-joint-state-publisher-gui
1注意在在 後面不能有換行 否則可能出錯<?xml version="
1.0"?>2"
pan_tilt
">34
"base_link
">56
78"0.01
" radius="
0.2"/>910
"0 0 0
" xyz="
0 0 0
"/>11"
yellow
">12"
1 1 0 1
"/>
1314
1516
1718
"0.03
" radius="
0.2"/>
1920
"0 0 0
" xyz="
0 0 0
"/>
212223"
1"/>24"
1.0" ixy="
0.0" ixz="
0.0" iyy="
1.0" iyz="
0.0" izz="
1.0"/>
2526
2728
"pan_joint
" type="
revolute
">29"
base_link
"/>30"
pan_link
"/>31"
0 0 0.1
"/>32"
0 0 1
" />33"
300" velocity="
0.1" lower="
-3.14
" upper="
3.14
"/>34"
50" friction="
1"/>
353637"
pan_link
">
383940"
0.4" radius="
0.04
"/>
4142
"0 0 0
" xyz="
0 0 0.09
"/>43"
red">44"
0 0 1 1
"/>
4546
474849"
0.4" radius="
0.06
"/>
5051
"0 0 0
" xyz="
0 0 0.09
"/>
525354"
1"/>55"
1.0" ixy="
0.0" ixz="
0.0" iyy="
1.0" iyz="
0.0" izz="
1.0"/>
5657
5859
"tilt_joint
" type="
revolute
">60"
pan_link
"/>61"
tilt_link
"/>62"
0 0 0.2
"/>63"
0 1 0
" />64"
300" velocity="
0.1" lower="
-4.64
" upper="
-1.5
"/>65"
50" friction="
1"/>
666768"
tilt_link
">
697071"
0.4" radius="
0.04
"/>
7273
"0 1.5 0
" xyz="
0 0 0
"/>74"
green
">75"
1 0 0 1
"/>
7677
787980"
0.4" radius="
0.06
"/>
8182
"0 1.5 0
" xyz="
0 0 0
"/>
838485"
1"/>86"
1.0" ixy="
0.0" ixz="
0.0" iyy="
1.0" iyz="
0.0" izz="
1.0"/>
8788
8990
9192
標籤即為連桿 為關節 描述連桿的可見外觀
使用命令可以檢查urdf是否包含錯誤
check_urdf pan_tilt.urdf以下即為成功
pan_tilt.urdf然後可以在rviz上檢視robot name
is: pan_tilt
---------- successfully parsed xml ---------------root link: base_link has
1child(ren)
child(
1): pan_link
child(
1): tilt_link
建立乙個view_demo.launch啟動檔案
12"然後啟動模型model
" />3"
robot_description
" textfile="
$(find mastering_ros_robot_description_pkg)/urdf/pan_tilt.urdf
" />4"
use_gui
" value="
true
"/>56
"joint_state_publisher_gui
" pkg="
joint_state_publisher_gui
" type="
joint_state_publisher_gui
" />7"
robot_state_publisher
" pkg="
robot_state_publisher
" type="
robot_state_publisher
" />8"
rviz
" pkg="
rviz
" type="
rviz
" args="
-d $(find mastering_ros_robot_description_pkg)/urdf.rviz
" required="
true
" />910
roscore
roslaunch mastering_ros_robot_description_pkg view_demo.launch出現的warn 可以忽略
然後出現下圖
在map那裡選擇base_link
然後add新增robotmodel就可以顯示模型
在三維空間中, 要精確描述乙個剛性體的姿態, 僅僅使用他的xyz座標是不夠的, 還需要使用rpy. rpy角是描述船舶在海中航行時姿態的一種方法.
將船的行駛方向取為z軸, 繞z軸旋轉稱為滾動(roll), 繞y軸旋轉稱為俯仰(pitch), 繞x軸旋轉稱為偏轉(yaw).
只能沿著y軸旋轉, 則需要新增
ros-urdf標籤
ROS使用介紹 URDF
urdf全稱為unified robot description format,中文可以翻譯為 統一機械人描述格式 與計算機檔案中的.txt文字格式 jpg影象格式等類似,urdf是一種基於xml規範 用於描述機械人結構的格式。根據該格式的設計者所言,設計這一格式的目的在於提供一種盡可能通用 as ...
urdf模型說明
在rviz中要顯示urdf模型,其實很簡單 首先看到的是 這是因為urdf檔案是xml形式,這個可以忽略不記 然後是 robot就是我們建立的機械人名字啦 我們的robot是由無數的link和joint不斷連線 所以接下來會看到這樣的結構 下面就是分別針對link和joint的內容了,只需要新增標籤...
ROS學習 URDF學習紀要
ros的urdf間斷的學習了,老是抓不住要領,現在又重新學習了一篇終於有點眉目,問題主要集中在和的關係及其中的 標籤的作用,現在記錄下來,以防止再忘記。1 總結歸納 1 預設就是所有link的初識joint的座標系都在世界座標系的原點座標系,例如 座標原點在圓柱的中心,長方體的中心等,座標系滿足右手...