本文通过urdf和xacro两种方法在rviz里创建机器人模型!
一、创建机器人功能包
通过catkin_create_pkg 命令创建
catkin_create_pkg mrobot_description urdf xacro
二、在mrobot_description包下创建子目录
在该文件里需要创建的文件夹分别有config、launch、urdf。
config这个文件里放的是生成的urdf模型文件。
launch这个文件夹里放的是启动文件。
urdf这个文件夹里放的是机器人的urdf文件。
三、创建机器人urdf模型
在这里要注意的是xml文件里的首行一定不能是注释!!!!!!!!
<?xml version="1.0" ?>
<robot name="mbot">
<!--声明该文件使用XML描述,-->
<!--使用<robot>根标签定义一个机器人模型,模型的名称是“mbot”。-->
<!--描述机器人的地盘-->
<link name="base_link">
<visual>
<origin xyz="0 0 0" rpy="0 0 0"/>
<geometry>
<cylinder length="0.16" radius="0.20"/>
</geometry>
<material name="yellow">
<color rgba="1 0.4 0 1"/>
</material>
</visual>
</link>
<!--机器人地盘与左轮的关节-->
<joint name="left_wheel_joint" type="continuous">
<origin xyz="0 0.19 -0.05" rpy="0 0 0"/>
<parent link="base_link"/>
<child link="left_wheel_link"/>
<axis xyz="0 1 0"/>
</joint>
<!--描述机器人的左轮-->
<link name="left_wheel_link">
<visual>
<origin xyz="0 0 0" rpy="1.5707 0 0" />
<geometry>
<cylinder radius="0.06" length = "0.025"/>
</geometry>
<material name="white">
<color rgba="1 1 1 0.9"/>
</material>
</visual>
</link>
<!--机器人底盘与右轮的关节-->
<joint name="right_wheel_joint" type="continuous">
<origin xyz="0 -0.19 -0.05" rpy="0 0 0"/>
<parent link="base_link"/>
<child link="right_wheel_link"/>
<axis xyz="0 1 0"/>
</joint>
<!--描述机器人的的右轮-->
<link name="right_wheel_link">
<visual>
<origin xyz="0 0 0" rpy="1.5707 0 0" />
<geometry>
<cylinder radius="0.06" length = "0.025"/>
</geometry>
<material name="white">
<color rgba="1 1 1 0.9"/>
</material>
</visual>
</link>
<!--机器人底盘与前支撑轮(作为万向轮)的关节-->
<joint name="front_caster_joint" type="continuous">
<origin xyz="0.18 0 -0.095" rpy="0 0 0"/>
<parent li