gazebo仿真环境中添加robotiq 2f 140的gripper_controller控制器
gazebo仿真环境中添加robotiq 2f 140的gripper_controller控制器
搭建环境:
ubuntu: 20.04
ros: Nonetic
sensor: robotiq_ft300
gripper: robotiq_2f_140_gripper
UR: UR3
reasense: D435i
通过下面几篇博客配置好了ur3、力传感器、robotiq夹爪、realsense的rviz和gazebo仿真环境
ubuntu20.04配置UR机械臂的仿真环境
ur3+robotiq ft sensor+robotiq 2f 140配置rviz仿真环境
ur3+robotiq ft sensor+robotiq 2f 140配置gazebo仿真环境
ur3+robotiq ft sensor+robotiq 2f 140+realsense d435i配置rviz,gazebo仿真环境
通过上一篇博客在仿真环境配置好realsense后,打开发布的话题发现并没有夹爪的话题
经过robotiq/robotiq_2f_140_gripper_gazebo/launch/robotiq_2f_140_bringup.launch
与universal_robot/ur_gazebo/launch/ur3_bringup.launch
文件比对,发现ur3_bringup.launch
只有机械臂的控制器(如下图),没有加上夹爪的控制器
找到robotiq_2f_140_bringup.launch
中夹爪控制器(如下图)
然后将其加入到ur3_bringup.launch
文件中(注意仿照这两个文件控制器的加载方式来加入,而不是单纯复制框中的代码)
我在ur3_bringup.launch
加入的代码如下
<!-- Load Gripper controller settings -->
<rosparam file="$(find robotiq_2f_140_gripper_gazebo)/config/robotiq_2f_140_gripper_controllers.yaml" command="load"/>
<!-- Load and start the gripper controllers listed in the 'controllers' arg. -->
<node name="gripper_controller_spawner" pkg="controller_manager" type="spawner"
args="gripper_controller" output="screen" respawn="false" />
ur3_bringup.launch
完整代码如下
<?xml version="1.0"?>
<launch><!--Robot description and related parameter files --><arg name="robot_description_file" default="$(dirname)/inc/load_ur3.launch.xml" doc="Launch file which populates the 'robot_description' parameter."/><arg name="joint_limit_params" default="$(find ur_description)/config/ur3/joint_limits.yaml"/><arg name="kinematics_params" default="$(find ur_description)/config/ur3/default_kinematics.yaml"/><arg name="physical_params" default="$(find ur_description)/config/ur3/physical_parameters.yaml"/><arg name="visual_params" default="$(find ur_description)/config/ur3/visual_parameters.yaml"/><!-- Controller configuration --><arg name="controller_config_file" default="$(find ur_gazebo)/config/ur3_controllers.yaml" doc="Config file used for defining the ROS-Control controllers."/><arg name="controllers" default="joint_state_controller eff_joint_traj_controller" doc="Controllers that are activated by default."/><arg name="stopped_controllers" default="joint_group_eff_controller" doc="Controllers that are initally loaded, but not started."/><!-- robot_state_publisher configuration --><arg name="tf_prefix" default="" doc="tf_prefix used for the robot."/><arg name="tf_pub_rate" default="125" doc="Rate at which robot_state_publisher should publish transforms."/><!-- Gazebo parameters --><arg name="paused" default="false" doc="Starts Gazebo in paused mode" /><arg name="gui" default="true" doc="Starts Gazebo gui" /><!-- Load urdf on the parameter server --><include file="$(arg robot_description_file)"><arg name="joint_limit_params" value="$(arg joint_limit_params)"/><arg name="kinematics_params" value="$(arg kinematics_params)"/><arg name="physical_params" value="$(arg physical_params)"/><arg name="visual_params" value="$(arg visual_params)"/></include><!-- Robot state publisher --><node pkg="robot_state_publisher" type="robot_state_publisher" name="robot_state_publisher"><param name="publish_frequency" type="double" value="$(arg tf_pub_rate)" /><param name="tf_prefix" value="$(arg tf_prefix)" /></node><!-- Start the 'driver' (ie: Gazebo in this case) --><include file="$(dirname)/inc/ur_control.launch.xml"><arg name="controller_config_file" value="$(arg controller_config_file)"/><arg name="controllers" value="$(arg controllers)"/><arg name="gui" value="$(arg gui)"/><arg name="paused" value="$(arg paused)"/><arg name="stopped_controllers" value="$(arg stopped_controllers)"/></include><!-- Load Gripper controller settings --><rosparam file="$(find robotiq_2f_140_gripper_gazebo)/config/robotiq_2f_140_gripper_controllers.yaml" command="load"/><!-- Load and start the gripper controllers listed in the 'controllers' arg. --><node name="gripper_controller_spawner" pkg="controller_manager" type="spawner"args="gripper_controller" output="screen" respawn="false" />
</launch>
查看效果
运行命令
cd ~/catkin_ws
source devel/setup.bash
roslaunch ur_gazebo ur3_bringup.launch
现在多出来gripper夹爪控制器的话题
遇到的bug
在弄完上面的直接运行会发现命令行中有一个报错
主要原因是universal_robot/ur_gazebo/urdf/ur_macro.xacro
文件和robotiq/robotiq_2f_140_gripper_gazebo/urdf/robotiq_arg2f_140_macro.xacro
都有声明ros_control
如下图
只要注释掉其中一个ros_control
就可以了,这里我注释了robotiq_arg2f_140_macro.xacro
中的,问题解决,没有再报错
gazebo仿真环境中添加robotiq 2f 140的gripper_controller控制器相关推荐
- 如何在gazebo仿真环境中给sumit_xl模型添加多线激光雷达
一 :下载以sumit_xl模型 $ cd ~/catkin_ws/src $ git clone https://TheConstruct@bitbucket.org/theconstructcor ...
- 使用MoveIt!控制Gazebo仿真环境中的UR 10机械臂
参考资料:https://www.youtube.com/watch?v=j6bBxfD_bYs 1. 下载ROS-Industrial universal robot meta-package cd ...
- robotiq 2f 140安装在UR3机械臂后面在gazebo仿真中散架、抖动
robotiq 2f 140安装在UR3机械臂后面在gazebo仿真中散架.抖动 搭建环境: ubuntu: 20.04 ros: Nonetic sensor: robotiq_ft300 grip ...
- ur3+robotiq ft sensor+robotiq 2f 140配置rviz仿真环境
ur3+robotiq ft sensor+robotiq 2f 140配置rviz仿真环境 搭建环境: ubuntu: 20.04 ros: Nonetic sensor: robotiq_ft30 ...
- 如何生成gazebo仿真环境的二维地图真值
在移动机器人仿真中,二维地图真值可以用来评价slam建图结果,也可以直接给路径规划算法提供输入. 利用gazebo进行仿真时,有很多方法都可以获取静态仿真环境的二维地图真值,本文将对以下链接: hyf ...
- ROS开发笔记(5)——基于 python 开发 Turtlebot3 Gazebo仿真环境下键盘操控移动机器人(Teleop-bot )
前文中记录了随机移动机器人的开发过程,本文内容为Turtlebot3 Gazebo仿真环境下Teleop-bot 键盘操控移动机器人,主要包含以下几个部分: 1.键盘驱动(按键驱动发布keys话题) ...
- ROS仿真环境中实现自主导航
在看完自主导航小车实践的教程(自主导航小车实践)后,很多小伙伴留言说,在学习自主导航小车的时候手上没有合适的ROS机器人底盘做实验,缺少动手操作的机会,学习不深刻.对于底盘问题,我们也分享过一个制作麦 ...
- 【Autoware入门教程】如何在Gazebo仿真环境配置自动驾驶汽车
假设你已经安装好了Autoware,Autoware源码中其实已经配置有Gazebo仿真环境,当然你也可以根据自己的需要另外下载自动驾驶汽车的仿真模型.该汽车模型已经默认配置好了Velodyne HD ...
- UR5机械臂与realsense相机在Gazebo仿真环境下的手眼标定(眼在手上)
简介 这是一个Gazebo仿真环境下利用UR5机械臂和realsense相机进行手眼标定的教程(眼在手上). 准备相关文件 # UR5 git clone https://github.com/Uni ...
最新文章
- MVC4 下DropDownList使用方法(转)
- python打印网页成pdf_vue中将网页打印成pdf
- 头像和Karma汽车
- cookie 在线人数列表_前端学习随笔2 在线简历
- devexpress 打印一个form界面_通过回车键提交form表单时,你是否注意过这些问题?...
- php 怎么开启错误报告,php错误报告级别怎么设置?
- U8服务器怎么修改会计制度,用友GRP-U8乡镇财政精细化管理新会计制度操作手册..doc...
- 机器人教室外墙_智慧教室解决方案-机器人创客教室布局设计
- 仿照支付宝等——自动获取短信中的验证码
- Pr 音频效果参考:立体声声像、时间与变调
- 每日一句英语翻译练习(2020.4)
- SpringBoot中使用Aspect实现切面,超详细
- 时间日期插件引用使用方法
- PayPal支付集成到自己Web网站
- Android:EditText 设置弹出数字输入法键盘
- java 删除本地图片_java如何删除
- Dockerfile+elasticsearch7.12.1(配置密码及证书)+kibana7.12.1+cerebro0.83搭建集群
- Jackson JsonNode和ObjectNode的使用
- 微信小程序调用python分析图片_小帅丶干货之图像识别在微信小程序展示
- 从获评毕马威中国领先地产科技50强 看贝壳的长期主义