URDF機械人建模

2021-10-08 06:12:02 字數 3267 閱讀 8468

一、urdf簡介

unified robot description format,簡稱urdf,統一機械人描述格式。ros可以解析urdf檔案中使用xml格式描述的機械人模型。

1、link

描述機械人某個剛體外觀和物理屬性。

包括:尺寸(size)、顏色(color)、形狀(shape)、慣性矩陣(mertial matrix)、碰撞引數(collision properties)

link部分的外觀引數

慣性引數

碰撞屬性

2、joint

運動學和動力學屬性。

位置、速度限制。

關節運動形式:

continuous(無限旋轉關節)、revolute(有旋轉角度的旋轉關節)、prismatic(滑動,沿某一軸移動,有位置極限)、planner(平面)、floating(浮動)、fixed(固定、不可移動)

關節的參考位置,校準關節的絕對位置

關節的物理屬性

運動極限值

該關節與已有關節的關係

安全控制器引數

二、實踐

1、建立功能包

$ catkin_create_pkg mbot_description urdf xacro
mbot_description:約定俗成的機械人命名格式:機械人名+description。

urdf:建立功能包需依賴urdf功能包,以解析urdf模型。

xacro:功能包依賴

2、建立資料夾

urdf:存放機械人模型的urdf或xacro檔案。

meshes:存放urdf中引用的模型渲染檔案。

launch:儲存相關啟動檔案。

config:儲存rviz的配置檔案。

3、建立launc**件

"robot_description" textfile=

"$(find mbot_description)

/urdf/urdf/mbot_base.urdf" />

<

!--param:載入ros引數。$(

find mbot_description)

/urdf/urdf/mbot_base.urdf:新增路徑,載入urdf模型到rviz中。-->

<

!-- 設定gui引數,顯示關節控制外掛程式 -->

"use_gui" value=

"true"/>

<

!-- 執行joint_state_publisher節點,發布機械人的關節狀態 -->

<

!--配合gui工具,在rviz顯示外掛程式控制joint做狀態變化-->

"joint_state_publisher" pkg=

"joint_state_publisher" type=

"joint_state_publisher" />

<

!-- 執行robot_state_publisher節點,發布tf -->

<

!--將robot各個links、joints之間的關係通過tf形式,整理成三維姿態資訊發布-->

"robot_state_publisher" pkg=

"robot_state_publisher" type=

"state_publisher" />

<

!-- 執行rviz視覺化介面 -->

"rviz" pkg=

"rviz" type=

"rviz" args=

"-d $(

find mbot_description)

/config/mbot_urdf.rviz" required=

"true" />

4、配置檔案

5、urdf建模

根標籤

<?xml version=

"1.0" ?>

"mbot"

>

...

建立主體

"base_link"

>

"0 0 0" rpy=

"0 0 0"/>

"0.16" radius=

"0.20"/>

"yellow"

>

"1 0.4 0 1"/>

建立左輪

"left_wheel_link"

>

"0 0 0" rpy=

"1.5707 0 0" />

"0.06" length =

"0.025"/>

"white"

>

"1 1 1 0.9"/>

左輪鏈結主體關節

"left_wheel_joint" type=

"continuous"

>

"0 0.19 -0.05" rpy=

"0 0 0"/>

"base_link"/>

"left_wheel_link"/>

"0 1 0"/>

右輪

"right_wheel_link"

>

"0 0 0" rpy=

"1.5707 0 0" />

"0.06" length =

"0.025"/>

"white"

>

"1 1 1 0.9"/>

"right_wheel_joint" type=

"continuous"

>

"0 -0.19 -0.05" rpy=

"0 0 0"/>

"base_link"/>

"right_wheel_link"/>

"0 1 0"/>

三、urdf檔案檢查模型整體結構

在urdf檔案當前路徑下開啟終端:

$ urdf_to_graphiz mbot_kinect.urdf
生成兩個檔案,其中乙個是urdf檔案,pdf開啟可看到整體結構。

URDF機械人建模

urdf檔案是機械人模型描述格式,乙個完整的機械人模型是由一系列link和joint組成。建模過程 1 建立機械人功能包mbot description,以及依賴檔案urdf和xacro,1 建立新資料夾 urdf 存放機械人模型的urdf檔案或xacro檔案 config 儲存rviz配置檔案 l...

ROS自學實踐 2 機械人建模URDF

目的 構建機械人的3d模型,為物理 做準備。urdf unified robot description format 就是描述機械人硬體尺寸布局的模型語言。它是同ros通訊的渠道,通過機械人的物理尺寸來配置機械人模型。在工作空間 我們一般建立為catkin ws 的src目錄下,通過catkin ...

ROS基礎學習筆記二(URDF機械人建模)

下面正式開始介紹今天的主題 urdf機械人建模。urdf unified robot description format 即統一機械人描述格式,使用的語言主要是xml標記語言。ros可以解析urdf檔案中使用xml格式描述的機械人模型。乙個urdf檔案中主要包括和 機械人的起點 幾何特性,cyli...