ROS Xacro 檔案學習

2021-08-16 01:41:30 字數 3292 閱讀 4053

xacro

檔案學習

非常詳細的介紹兩種檔案的語法

moveitsetup assistant

教程包含詳細的**寫法

create your own urdf file

如何在

urdf

中定義乙個機械人 1

、先確定骨架,

再用origin

定義link

所在的位置,

link

和link

之間是使用

joint

進行連線

, 那麼

link

的位置,

就由連線他的

joint

確定.

所以,

該子標籤是定義在

joint內.

2、三維空間中

, 要精確描述乙個剛性體的姿態

, 僅僅使用他的

xyz座標是不夠的

, 還需要使用

rpy. rpy

角是描述船舶在海中航行時姿態的一種方法

. 將船的行駛方向取為z軸

, 繞z軸旋轉稱為滾動

(roll), 繞y

軸旋轉稱為俯仰

(pitch), 繞x

軸旋轉稱為偏轉

(yaw).

其中rpy

代表的是角度

, 用弧度表示.

3、

xyz就如同乙個平移向量

, 將下乙個

link

的原點座標移動到下乙個位置

(起點是父

link

的原點). 4

、 我們限定

joint2

只能沿著

y軸旋轉

, 則需要新增

, 類似的

, 可以指定其他關節的轉動軸

, 例如

. 比如

, 我們要限定

joint2

的移動範圍

, 則需要新增

, 從標籤中可以看到

, 上下限以及速度

, 力矩等都是可以指定的. 5

、 檢視

urdf

檔案,

可以使用

urdf_tutorial包,

命令格式roslaunch urdf_tutorial display.launchmodel:=path/to/your/***.urdf

, 會使用

rviz

進行顯示

, 如上述內容

, 進行顯示之後

, 可以得到下圖所示內容.

urdf(unified robot description format),

是一種特殊的

xml檔案格式

, 作為機械人的一種描述檔案

, 會經常見到一種類似命名的包

(package) – ***_description.

這個包裡面就是包含某個機械人的描述檔案

. 比如

pr2_decription, baxter_descrition,

以及ur_description等.

上述舉例的機械人描述包都是可以通過apt-get的方式進行安裝

. 使用命令格式如斯

: sudo apt-get installros-indigo-pr2-descrition

, 其中indigo是你所安裝的

ros版本名

, 後面就是所需要安裝的包名

, 下劃線用中畫線代替.

對機械人使用

gazebo

進行**時

, 需要載入的機械人模型就是

urdf

模型,

當然,

單純的urdf

是不能精確描述機械人以及所需要**的世界的

. gazebo

對其進行了擴充套件

, 感興趣的朋友可以檢視

gazebo

官網的一些

教程.

其中會提供一些標籤

, 對系統動態

, 重心等的設定.

使用開源庫

moveit

對機械人進行路徑規劃, 在

moveitsetup assistant教程中

, 第一步就是關於如何將機械人模型匯入進來

, 匯入的機械人模型就是

urdf(

匯入xacro

格式時也是先將其解析為

urdf).

xacro  

檔案的語法說明

<?

xmlversion

="1.0"

?>

<

robot

xmlns:xacro

=""name

="irb1600_6_12"

>

<

xacro:macro

name

="abb_irb1600_6_12"

params

="prefix"

>

以上問檔案說明部分

以下為單獨的乙個

link

寫法注意有後退符

<

link

name

="$base_link"

>

>

xyz=

"0 0 0"

rpy=

"0 0 0"

/>

>

filename

="package://abb_irb1600_support/meshes/irb1600/visual/base_link.stl"

/>

geometry

>

name

="abb_orange"

>

rgba

="1 0.43 0 1"

/>

material

>

visual

>

>

>

filename

="package://abb_irb1600_support/meshes/irb1600/collision/base_link.stl"

/>

geometry

>

name

="yellow"

>

rgba

="0 1 1 1"

/>

material

>

collision

>

link

>

XML檔案學習

xml cdata 文字 所有 xml 文件中的文字均會被解析器解析。只有 cdata 區段 cdata section 中的文字會被解析器忽略。xml 解析器通常會解析 xml 文件中所有的文字。當某個 xml 元素被解析時,其標籤之間的文字也會被解析 此文字也會被解析解析器之所以這麼做是因為 x...

fstab檔案學習

孫曉明,華清遠見嵌入式學院 講師。我們在linux系統裡面的 etc 目錄下有乙個fstab檔案,那這個檔案的作用是什麼呢?其實這個檔案裡面存放的是系統中的檔案系統資訊。當正確的設定了該檔案,我們就可以通過mount 任意目錄 命令來載入乙個檔案系統,比如說我們新新增了一塊硬碟分割槽,那麼我們就可以...

fstab檔案學習

我們在 linux系統裡面的 etc 目錄下有乙個fstab檔案,那這個檔案的作用是什麼呢?其實這個檔案裡面存放的是系統中的檔案系統資訊。當正確的設定了該檔案,我們就可以通過 mount 任意目錄 命令來載入乙個檔案系統,比如說我們新新增了一塊硬碟分割槽,那麼我們就可以加入如下命令 dev sdb1...