製作好了機器人的urdf文件,接下來我們就可以配置他的moveit了
1.首先我們需要安裝moveit,執行如下命令
apt-get install ros-kinetic-moveit
2.打開moveit設置助手
roslaunch moveit_setup_assistant setup_assistant.launch
3.創建新的moveit配置包
點擊create new moveit configuration package按鈕
4.載入urdf文件
點擊browse按鈕選擇urdf文件,這裏我們就選擇上篇博文中創建的diego.urdf
點擊load files載入urdf文件
載入後,就可以在右側看到我們創建的機器人模型,而且在右側顯示欄中可以用鼠標進行拖動操作,放大縮小,旋轉,和Rviz中的操作方式是一樣的
5.創建碰撞檢測
點擊self-collisions按鈕
可以調整sampling density,數值越高計算的時間越長,調整完後點擊Regenerate Default Collision Matrix按鈕即開始計算
計算完成後的界面
6.創建虛擬關節
點擊左側的Virtual Joints
點擊右下角的 Add Virtual Joint按鈕
參數配置如下
Virtual Joint Name: world_joint
Child Link: base_link
Parent Frame Name: world_frame機器人與世界座標系相連接
Joint Type: Planar是移動式的機器人人,所以這裏選Planar
配置完後點擊save按鈕即可
7.創建planning Groups
點擊左側的Planning Groups
點擊add Group創建,這裏我們分別爲左臂,和右臂創建兩個planning Groups
左臂
點擊Add Kin Chain添加關節
base_link選擇 left_shoulder_stevo
Tip_link選擇left_hand_run_stevo,指規劃組的最後一個關節
右臂
右手
左手
點擊save保存
8配置機器臂的預設姿勢
點擊左側Robot Poses
點擊Add Pose,我們爲左臂和右臂添加default pose,在打開的界面中可以通過滑動條來調整關節的位置,每個關節對應urdf中revolute類型的joint,如:
<joint name="right_shoulder_stevo_lift_to_axis" type="revolute">
<axis xyz="0 0 1"/>
<parent link="right_shoulder_stevo_lift"/>
<child link="right_shoulder_stevo_lift_axis"/>
<origin rpy="1.57075 -0.7 0" xyz="0.0135 0.0 0.0"/>
<limit effort="100" velocity="100"/>
<joint_properties damping="0.0" friction="0.0"/>
</joint>
點擊Save保存預設姿勢
8.配置終端控制器,手部關節
點擊end effectors
點擊Add end Effector,添加左右手的終端控制器
這裏需要注意的是選擇parent link一般選擇arm的最後一個關節,點擊save保存
9.添加作者信息,這裏是必須填寫的,不填寫後面生成會報錯
10.生成moveit配置包
點擊Generate Package即可生成配置包,這是打開輸出路徑就可以看到相應的配置文件