ros模型建立 urdf

2022-02-17 07:37:00 字數 4546 閱讀 4363

首先建立軟體包來儲存機械人模型

catkin_create_pkg mastering_ros_robot_description_pkg  roscpp  tf  geometry_msgs  urdf  rviz  xacro
安裝為安裝的軟體包

1 sudo apt install ros-melodic-urdf

2 sudo apt install ros-melodic-sacro

sudo apt install liburdfdom-tools

sudo apt install ros-melodic-joint-state-publisher-gui

然後建立乙個urdf模型

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

robot name

is: pan_tilt

---------- successfully parsed xml ---------------root link: base_link has

1child(ren)

child(

1): pan_link

child(

1): tilt_link

然後可以在rviz上檢視

建立乙個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的座標系都在世界座標系的原點座標系,例如 座標原點在圓柱的中心,長方體的中心等,座標系滿足右手...