URDF语法详解01_robot

robot:
urdf 中为了保证 xml 语法的完整性,使用了robot标签作为根标签,所有的 link 和 joint 以及其他标签都必须包含在 robot 标签内,在该标签内可以通过 name 属性设置机器人模型的名称
(1)属性
name: 指定机器人模型的名称
(2)子标签
其他标签都是子级标签

2 URDF语法详解02_link:
link:
urdf 中的 link 标签用于描述机器人某个部件(也即刚体部分)的外观和物理属性,比如: 机器人底座、轮子、激光雷达、摄像头…每一个部件都对应一个 link, 在 link 标签内,可以设计该部件的形状、尺寸、颜色、惯性矩阵、碰撞参数等一系列属性在这里插入图片描述
(1)属性

name ---> 为连杆命名

(2)子标签

visual ---> 描述外观(对应的数据是可视的)

    geometry 设置连杆的形状

        标签1: box(盒状)
            属性:size=长(x) 宽(y) 高(z)

        标签2: cylinder(圆柱)
            属性:radius=半径 length=高度

        标签3: sphere(球体)
            属性:radius=半径

        标签4: mesh(为连杆添加皮肤)
            属性: filename=资源路径(格式:package://<packagename>/<path>/文件)

    origin 设置偏移量与倾斜弧度

        属性1: xyz=x偏移 y便宜 z偏移

        属性2: rpy=x翻滚 y俯仰 z偏航 (单位是弧度)

    metrial 设置材料属性(颜色)

        属性: name

        标签: color
            属性: rgba=红绿蓝权重值与透明度 (每个权重值以及透明度取值[0,1])

collision ---> 连杆的碰撞属性

Inertial ---> 连杆的惯性矩阵

在此,只演示visual使用。
(3)案例及素材链接:

https://github.com/zx595306686/sim_demo.git

(3.1)拷贝素材

git clone https://github.com/zx595306686/sim_demo.git

将拷贝的两个以.stl结尾的文件拷贝到之前创建的mesh文件夹下:创建urdf、launch文件参考如下:
传送门
(3.2)编写urdf文件

<!-- <需求:设置不同形状的机器人部件> -->
<robot name="mycar">
    <link name="base_link">
        <!-- <可视化标签> -->
        <visual>
            <!-- <1.形状> -->
            <geometry>
                <!-- <1.立方体> -->
                <!-- <box size="0.3 0.2 0.1" /> -->
                <!-- <1.圆柱> -->
                <!-- <cylinder radius="0.1" length="2" /> -->
                <!-- <1.球体> -->
                <!-- <sphere radius="1" /> -->
                <!-- <1.皮肤> -->
                <mesh filename="package://urdf01_rviz/meshes/autolabor_mini.stl" />
            </geometry>
            <!-- <2.偏移量与倾斜·弧度> -->
            <!-- <
                xyz设置机器人模型在x y z 上的偏移量
                rpy设置倾斜弧度 x(翻滚) y(俯仰) z(偏航)
            > -->
            <origin xyz="0 0 0" rpy="1.57 0 0" />
            <!-- <3.颜色> -->
            <!-- <
                rgba:
                r=red
                g=green
                b=blue
                a=透明度
            > -->
            <material name="car_color">
                <color rgba="0.5 0.5 1 0.5" />
            </material>
        </visual>
    </link>
</robot>

(3.3)编写launch文件

<launch>

    <!-- 设置参数 -->
    <param name="robot_description" textfile="$(find urdf01_rviz)/urdf/urdf/demo02_link.urdf" />

    <!-- 启动 rviz -->
    <node pkg="rviz" type="rviz" name="rviz" args="-d $(find urdf01_rviz)/config/show_mycar.rviz" />

</launch>

最后启动launch文件即可。

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值