注释:在过程中会遇到遇到,后边附带解决办法,有问题不可怕,一个个解决就好了。
学会善用谷歌。
注释:此方式只能让rg2添加到模型中并显示出来,并不能控制rg2,请参考
https://github.com/sharathrjtr/ur10_rg2_ros
不久后会有另外博客更新。
Ubuntu18.04
ros-melodic
ur3
robotiq ft300
onrobot rg2
第一次需要安装功能包,安装完成后下一次运行可以省略此步
ur有工能包,直接从github上下载即可。
cd catkin_ws/src
git clone -b melodic-devel https://github.com/ros-industrial/universal_robot.git
//若版本为kinetic,应将上面命令中的melodic改为kinetic
cd ..
rosdep update
rosdep install --from-paths src --melodic-src --rosdistro melodic
catkin_make
source ~/catkin_ws/devel/setup.bash
第一个终端:打开gazebo
roslaunch ur_gazebo ur3.launch
roslaunch ur3_moveit_config ur3_moveit_planning_execution.launch sim:=true
第三个终端:
roslaunch ur3_moveit_config moveit_rviz.launch config:=true
在rviz中拖动机械臂改变机械臂的位置,然后点击plan就可以轨迹规划,再点击execute,机械臂就可以运动到目标位置,并且噶泽波中可以观察到仿真结果。
cd ~/catkin_ws/src
git clone https://github.com/ros-industrial/robotiq.git
rosdep install robotiq_modbus_tcp
sudo apt-get install ros-melodic-soem
sudo usermod -a -G dialout $USER
参考wiki:http://wiki.ros.org/robotiq
cd ~/catkin_ws/src/robotiq/robotiq_ft_sensor/urdf
gedit robotiq_ft300.urdf.xacro
在文件中,能看到下面的信息,此信息描述怎么将传感器添加到机器人末端:
打开ur3的描述文件ur3.urdf.xacro
在此文件夹路径下打开终端:
gedit ur3.urdf.xacro
<xacro:include filename="$(find robotiq_ft_sensor)/urdf/robotiq_ft300.urdf.xacro" />
<xacro:robotiq_ft300 parent="${prefix}tool0" prefix="">
<origin xyz="0 0 0 " rpy="0 0 0"/>
</xacro:robotiq_ft300>
roslaunch ur_gazebo ur3.launch
cd ~/catkin_ws/src
git clone https://github.com/sharathrjtr/ur10_rg2_ros.git
cd ur10_rg2_ros
rm -rf ur_modern_driver # 笔者的UR为CM3,新版的驱动,在仿真阶段暂时不需要实体机器的驱动
cd ~/catkin_ws
catkin_make
将以上描述性文件复制到ur3.urdf.xacro文件下方区域
问题1:第一步打开gazebo时提示:
[ERROR] [1590498356.252940749, 0.104000000]: No p gain specified for pid. Namespace: /gazebo_ros_control/pid_gains/shoulder_pan_joint
[ERROR] [1590498356.254045416, 0.104000000]: No p gain specified for pid. Namespace: /gazebo_ros_control/pid_gains/shoulder_lift_joint
[ERROR] [1590498356.255157347, 0.104000000]: No p gain specified for pid. Namespace: /gazebo_ros_control/pid_gains/elbow_joint
[ERROR] [1590498356.256883076, 0.104000000]: No p gain specified for pid. Namespace: /gazebo_ros_control/pid_gains/wrist_1_joint
[ERROR] [1590498356.258201036, 0.104000000]: No p gain specified for pid. Namespace: /gazebo_ros_control/pid_gains/wrist_2_joint
[ERROR] [1590498356.260040928, 0.104000000]: No p gain specified for pid. Namespace: /gazebo_ros_control/pid_gains/wrist_3_joint
解决办法:可以忽略,此为ros升级过程导致,不会造成影响,可以查看wiki。
https://answers.ros.org/question/293830/what-is-the-fix-for-no-p-gain-specified-for-pid-namespace-gazebo_ros_controlpid_gainsback_right_wheel_joint-ros-melodic/
问题2:添加夹爪之后编译时候不能编译成功
提示缺少socketcan-interface安装包
解决办法:安装socketcan-interface安装包
sudo apt-get install ros-melodic-socketcan-interface
问题3:终端会提示没有控制器:在rviz中机器人可以动,在gazebo中机器人不能动。
ERROR] [1571208919.660838700, 0.574000000]: Could not load controller 'joint_state_controller' because controller type 'joint_state_controller/JointStateController' does not exist.
[ERROR] [1571208919.660891569, 0.574000000]: Use 'rosservice call controller_manager/list_controller_types' to get the available types
解决办法:安装控制器功能包
sudo apt-get install ros-melodic-gazebo-ros-pkgs ros-melodic-gazebo-ros-control
sudo apt-get install ros-melodic-ros-control ros-melodic-ros-controllers
sudo apt-get install ros-kinetic-joint-trajectory-controller
问题4:将传感器和夹爪安装之后不能进行运动规划,
问题还没有解决,解决后上传。