ur3+robotiq 2f 140配置moveit
參考連結1
參考連結2
官方配置movit教程
搭建環境:
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仿真環境
gazebo仿真環境中添加robotiq 2f 140的gripper_controller控制器
下面來配置ur3機械臂和夾爪的moveit
運作指令
roslaunch moveit_setup_assistant setup_assistant.launch

選擇建立新的movit配置檔案,導入之前配好的描述檔案,我導入的是 universal_robot/ur_description/urdf/ur3_ft_gripper_realsense.xacro
universal_robot/ur_description/urdf/ur3_ft_gripper_realsense.xacro
選擇生成碰撞矩陣
配置虛拟關節
這裡我沒有配置虛拟關節,跳過
建立規劃組
點選
Add Group
添加組
- 添加ur3機械臂planning組,相關配置如下
點選
Add Joints
,添加關節如下,添加完關節後選擇
chain
後點選
edit select
配置如下圖
最終配置
- 添加robotiq 2f 140夾爪planning組,相關配置如下
點選
Add Joints
,添加關節如下所示
定義機器人位姿
- 設定home
- 設定機械臂立起來up
- 設定打開夾爪open
- 設定加緊夾爪grasp
最終save
設定末端執行器
設定無用關節
也就是一些被動關節,沒有驅動的那種,也不需要它釋出joint_state。選擇夾爪的一些被動關節
控制器設定
直接點左上角的自動生成,生成的是group名字加上controller
加上資訊
可以随便寫,每加上不給生成
生成配置檔案
選擇存放配置檔案的路徑,點選生成
生成配置檔案後,有許多地方是不對的,需要手動改一下bug
- bug1
Error [parser.cc:488] parse as old deprecated model file failed.
Error Code 4 Msg: Required attribute[filename] in element[plugin] is not specified in SDF.
Error Code 8 Msg: Error reading element <plugin>
Error Code 8 Msg: Error reading element <model>
Error Code 8 Msg: Error reading element <sdf>
解決辦法:
檢查你的urdf模型檔案的最後,看其是否少了 "filename=“libgazebo_ros_control.so” ,我就是少了這個而報錯,可能是因為 gazebo_ros_control 這個plugin沒有繼承libgazebo_ros_control.so
我的這個urdf檔案是生成的配置檔案裡面的
ur3_gripper_moveit_config/config/gazebo_ur3_robot_ft_gripper.urdf
,然後在裡面加上,如下圖
展示效果
- 展示rviz
運作指令
cd ~/catkin_ws
source devel/setup.bash
roslaunch ur3_gripper_moveit_config demo.launch
選擇機械臂或者夾爪,可以在rviz中做路徑規劃
- 展示rviz和gazebo
運作指令
cd ~/catkin_ws
source devel/setup.bash
roslaunch ur3_gripper_moveit_config demo_gazebo.launch
可以看到機械臂在gazebo中一直在跳舞,原因未知