如何在ROS Gazebo中加载KUKA iiwa R820机械臂?
ROS Gazebo环境加载KUKA iiwa R820机械臂模型解决方案
前置准备
- 安装对应ROS版本的iiwa功能包:
sudo apt install ros-<你的ROS版本>-iiwa-stack - 安装Gazebo ROS适配组件:
sudo apt install ros-<你的ROS版本>-gazebo-ros-pkgs ros-<你的ROS版本>-gazebo-ros-control - 将上述安装的功能包路径添加到ROS环境变量,执行
source /opt/ros/<你的ROS版本>/setup.bash生效
加载操作步骤
- 可以直接使用官方示例验证环境是否正常:
roslaunch iiwa_gazebo iiwa14_r820_gazebo.launch - 如需自定义加载,编写对应launch文件,示例代码如下:
<launch> <!-- 启动Gazebo空白仿真环境 --> <include file="$(find gazebo_ros)/launch/empty_world.launch"> <arg name="paused" value="false"/> <arg name="use_sim_time" value="true"/> </include> <!-- 加载R820模型参数到参数服务器 --> <param name="robot_description" command="$(find xacro)/xacro $(find iiwa_description)/urdf/iiwa14_r820.urdf.xacro use_gazebo:=true"/> <!-- 将模型生成到Gazebo环境中 --> <node name="spawn_iiwa" pkg="gazebo_ros" type="spawn_model" args="-urdf -param robot_description -model iiwa_r820 -x 0 -y 0 -z 0.1"/> </launch>
- 执行launch文件即可完成模型加载
异常排查
- 模型找不到报错:执行
rospack find iiwa_description确认功能包路径正常,如返回报错重新安装iiwa-stack功能包即可 - 模型加载后关节漂移:确认xacro解析时已经添加
use_gazebo:=true参数,开启Gazebo对应的硬件接口和控制器配置 - spawn超时报错:可将Gazebo启动参数的paused设置为true,待Gazebo界面完全加载后再启动模型生成节点即可

内容的提问来源于stack exchange,提问作者James
相关产品推荐
相关产品推荐

