本质上通过描述部件与链接连接部件的关节,构建机器人

示例代码

(其后缀是.urdf ,不是xml,用xml只是为了颜色好看)
<?xml version="1.0"?>
<robot name="first_robot">
    <!-- 机器人的身体部分 -->
    <link name="base-link">
        <!-- 部件外观描述 -->
        <visual>
            <!-- 沿自己几何中心的偏移旋转量 -->
            <origin xyz="0.0 0.0 0.0" rpy="0.0 0.0 0.0"/>
            <!-- 几何形状 -->
            <geometry>
                <!-- 圆柱体 半径 高度 -->
                <cylinder radius="0.10" length="0.12"/>
            </geometry>
            <!-- 材质颜色 -->
            <material name="white">
                <!-- 红绿蓝透明度 -->
                <color rgba="1.0 1.0 1.0 0.5"/>
            </material>
        </visual>
    </link>
 
    <!-- 机器人的IMU部件,惯性测量传感器 -->
    <link name="imu-link">
        <visual>
            <origin xyz="0.0 0.0 0.06" rpy="0.0 0.0 0.0"/>
            <geometry>
                <box size="0.02 0.02 0.02"/>
            </geometry>
            <material name="blue">
                <color rgba="0.0 0.0 0.0 0.5"/>
            </material>
        </visual>
    </link>
 
    <!-- 机器人的关节,用于组合部件 -->
    <joint name="imu_joint" type="fixed">
        <!-- 关节父部件 -->
        <parent link="base-link"/>
        <!-- 关节子部件 -->
        <child link="imu-link"/>
        <!-- 固定位置 -->
        <origin xyz="0.0 0.0 0.03" rpy="0.0 0.0 0.0"/>
    </joint>
 
</robot>

生成关系图

命令: urdf_to_graphviz first_robot.urdf
生成 PDF 如图: