Gazebo不显示机器人xarco模型的问题
有时一些可以在rviz中显示的模型无法在Gazebo中显示,Gazebo运行时也没有出现报错信息。这有可能是因为没有在xarco模型里加上碰撞参数和惯性参数。
·
有时一些可以在rviz中显示的模型无法在Gazebo中显示,Gazebo运行时也没有出现报错信息。这有可能是因为没有在xarco模型里加上碰撞参数<collision>和惯性参数<inertial>。
参考以下例子:
只有<visual>标签时:
<link name="base_link">
<visual>
<geometry>
<cylinder length="1" radius="1" />
</geometry>
<origin xyz="0.0 0 0 " rpy=" 0 0 0" />
</visual>
</link>
并没有显示模型中描述的圆柱体 现在我们为模型加上碰撞和惯性的描述:
<link name="base_link">
<visual>
<geometry>
<cylinder length="1" radius="1" />
</geometry>
<origin xyz="0.0 0 0 " rpy=" 0 0 0" />
</visual>
<collision>
<origin xyz="0 0 0" rpy="0 0 0" />
<geometry>
<cylinder length="1" radius="1" />
</geometry>
</collision>
<inertial>
<origin xyz="0 0 0" />
<mass value="100" />
<inertia ixx="1.0" ixy="0.0" ixz="0.0" iyy="1.0" iyz="0.0" izz="1.0" />
</inertial>
</link>
此时就可以看到Gazebo中显示出的圆柱体:
一些只用于展示形状效果的urdf模型文件或者xarco文件往往可能只有<visual>可视标签来描述模型。显然当我们需要使用Gazebo进行仿真时就需要为他们加上对应的物理性质。
本例中的完整代码:
<?xml version="1.0"?>
<robot name="fw" xmlns:xacro="http://www.ros.org/wiki/xacro">
<xacro:macro name="fw">
<link name="base_link">
<visual>
<geometry>
<cylinder length="1" radius="1" />
</geometry>
<origin xyz="0.0 0 0 " rpy=" 0 0 0" />
</visual>
<collision>
<origin xyz="0 0 0" rpy="0 0 0" />
<geometry>
<cylinder length="1" radius="1" />
</geometry>
</collision>
<inertial>
<origin xyz="0 0 0" />
<mass value="100" />
<inertia ixx="1.0" ixy="0.0" ixz="0.0" iyy="1.0" iyz="0.0" izz="1.0" />
</inertial>
</link>
</xacro:macro>
</robot>

GitCode 天启AI是一款由 GitCode 团队打造的智能助手,基于先进的LLM(大语言模型)与多智能体 Agent 技术构建,致力于为用户提供高效、智能、多模态的创作与开发支持。它不仅支持自然语言对话,还具备处理文件、生成 PPT、撰写分析报告、开发 Web 应用等多项能力,真正做到“一句话,让 Al帮你完成复杂任务”。
更多推荐
所有评论(0)