注释:在过程当中会遇到遇到,后边附带解决办法,有问题不可怕,一个个解决就行了。
学会善用谷歌。前端
注释:此方式只能让rg2添加到模型中并显示出来,并不能控制rg2,请参考
https://github.com/sharathrjtr/ur10_rg2_ros
不久后会有另外博客更新。git
Ubuntu18.04
ros-melodic
ur3
robotiq ft300
onrobot rg2github
第一次须要安装功能包,安装完成后下一次运行能够省略此步
ur有工能包,直接从github上下载便可。web
cd catkin_ws/src
git clone -b melodic-devel https://github.com/ros-industrial/universal_robot.git
//若版本为kinetic,应将上面命令中的melodic改成kineticbash
cd ..
rosdep update
rosdep install --from-paths src --melodic-src --rosdistro melodic
catkin_make
source ~/catkin_ws/devel/setup.bash
第一个终端:打开gazebosocket
roslaunch ur_gazebo ur3.launch
第二个终端:tcp
roslaunch ur3_moveit_config ur3_moveit_planning_execution.launch sim:=true
第三个终端:svg
roslaunch ur3_moveit_config moveit_rviz.launch config:=true
在rviz中拖动机械臂改变机械臂的位置,而后点击plan就能够轨迹规划,再点击execute,机械臂就能够运动到目标位置,而且噶泽波中能够观察到仿真结果。
spa
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/robotiq3d
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>
添加完成后保存退出,打开gazebo查看效果:
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:将传感器和夹爪安装以后不能进行运动规划, 问题尚未解决,解决后上传。