learning-urdf-01

1.首先创建一个简单的模型

创建01-myfirst.urdf文件

<?xml version="1.0"?>
<robot name="myfirst">
<link name="base_link">
<visual>
<geometry>
<cylinder length="0.6" radius="0.2"/>
</geometry>
</visual>
</link>
</robot>

查看这个模型

roslaunch urdf_tutorial display.launch model:=./01-myfirst.urdf

这个命令做了三件事

1. 加载模型到参数服务器
2. 运行一个结点 发布一些消息
3. 打开RVIZ
2.接下来创建多个形状

创建文件02-multipleshapes.urdf

<?xml version="1.0"?>
<robot name="multipleshapes">
<link name="base_link">
<visual>
    <geometry>
    <cylinder length="0.6" radius="0.2"/>
    </geometry>
</visual>
</link>

<link name="right_leg">
<visual>
    <geometry>
    <box size="0.6 0.2 0.1"/>
    </geometry>
</visual>
</link>

<joint name="base_to_right_leg" type="fixed">
    <parent link="base_link"/>
    <child link="right_leg" />
</joint>
</robot>
3.origin标签

创建文件03-originTag.urdf

<?xml version="1.0"?>
<robot name="originTag">
<link name="base_link">
<visual>
    <geometry>
    <cylinder length="0.6" radius="0.2"/>
    </geometry>
</visual>
</link>

<link name="right_leg">
<visual>
    <geometry>
    <box size="0.6 0.2 0.1"/>
    </geometry>
    <origin rpy="0 1.57075 0" xyz=" 0 0 -0.3"/>
</visual>
</link>

<joint name="base_to_right_leg" type="fixed">
    <parent link="base_link"/>
    <child link="right_leg" />
    <origin xyz="0.22 0 0.25"/>
</joint>
</robot>

打开rviz观察

roslaunch urdf_tutorial display.launch model:=./03-originTag.urdf

note:

1.可以观察得到base_link的中心和base_to_right_leg处有2个TF
2.可以观察到right_leg的原点是base_to_right_leg关节

4.使用material标签
<?xml version="1.0"?>
<robot name="multipleshapes">
<link name="base_link">
<visual>
    <geometry>
    <cylinder length="0.6" radius="0.2"/>
    </geometry>
    <material name="blue">
        <color rgba="0 0 0.8 1"/>
    </material>
</visual>
</link>

<link name="right_leg">
<visual>
    <geometry>
    <box size="0.6 0.2 0.1"/>
    </geometry>
    <origin rpy="0 1.57075 0" xyz=" 0 0 -0.3"/>
    <material name="white">
        <color rgba="1 1 1 1"/>
    </material>
</visual>
</link>

<joint name="base_to_right_leg" type="fixed">
    <parent link="base_link"/>
    <child link="right_leg" />
    <origin xyz="0.22 0 0.25"/>
</joint>

<link name="left_leg">
<visual>
    <geometry>
    <box size="0.6 0.2 0.1"/>
    </geometry>
    <origin rpy="0 1.57075 0" xyz=" 0 0 -0.3"/>
    <material name="white">
        <color rgba="1 1 1 1"/>
    </material>
</visual>
</link>

<joint name="base_to_left_leg" type="fixed">
    <parent link="base_link"/>
    <child link="right_leg" />
    <origin xyz="-0.22 0 0.25"/>
</joint>
</robot>

note:

<robot name="xxx"></robot>              包含整个urdf文件
<link name="base_link"></link>          一个部件
<visual></visual>                       包含部件中的可视化元素
<geometry></geometry>                   包含几何体
<origin rpy="x x x" xyz="x x x"/>       用于指定link的位置
<cylinder length="xx" radius="xx" />    圆柱体
<box size="higth width len"/>           长方体
<material name="xx"></ material>        包含描述link的材料信息
定义了的material可以在下文中引用(而不需要重复写内部的东西)
<material name="xx" />
<color rgba="x x x x"/>                 定义颜色
<joint name="xx" type="fixed/slider">   用于连接两个link
</joint>
parent/child用在joint标签中连接两个link
<parent link="link_name" />     
<child link="link_name"  />
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值