7.3. MoveIt!

備註:Terminal (終端機)可以在螢幕左上方的 Search 圖示找到. 快捷鍵可以使用 Ctrl-Alt-T.

在使用 MoveIt! 啟動 controller 控制器之前,請檢查 open_manipulator_controller 套件中的open_manipulator_controller 啟動檔。

<launch>
    <arg name="use_robot_name"         default="open_manipulator"/>

    <arg name="dynamixel_usb_port"     default="/dev/ttyUSB0"/>
    <arg name="dynamixel_baud_rate"    default="1000000"/>

    <arg name="control_period"         default="0.010"/>

    <arg name="use_platform"           default="true"/>

    <arg name="use_moveit"             default="false"/>
    <arg name="planning_group_name"    default="arm"/>
    <arg name="moveit_sample_duration" default="0.050"/>

    <group if="$(arg use_moveit)">
      <include file="$(find open_manipulator_controller)/launch/open_manipulator_moveit.launch">
        <arg name="robot_name"      value="$(arg use_robot_name)"/>
        <arg name="sample_duration" value="$(arg moveit_sample_duration)"/>
      </include>
    </group>

    <node name="$(arg use_robot_name)" pkg="open_manipulator_controller" type="open_manipulator_controller" output="screen" args="$(arg dynamixel_usb_port) $(arg dynamixel_baud_rate)">
        <param name="using_platform"       value="$(arg use_platform)"/>
        <param name="using_moveit"         value="$(arg use_moveit)"/>
        <param name="planning_group_name"  value="$(arg planning_group_name)"/>
        <param name="control_period"       value="$(arg control_period)"/>
        <param name="moveit_sample_duration"  value="$(arg moveit_sample_duration)"/>
    </node>

  </launch>

Parameters List : 以下參數可用於加載 move_group 套件。

  • use_moveit

    • 是一個參數,用來設置是否使用 MoveIt!

  • planning_group_name

  • moveit_sample_duration

    • 是一個參數,用於設置從 MoveIt! 規劃關節軌跡時的採樣時間

設置完所有參數後,啟動 open_manipulator_pro_controller。

  $ roslaunch open_manipulator_controller open_manipulator_controller.launch use_moveit:=true

警示:啟動 controller 以使用 MoveIt! 時,必須先關閉 OpenMANIPULATOR-X 啟動檔

警示:請在運行 OpenMANIPULATOR-X 之前先檢查每個關節位置。因為如果關節位置超出範圍,它可能會停止操作。下面的圖片向你展示了OpenMANIPULATOR-X 的理想方位。當未啟用 DYNAMIXEL 智能馬達的扭力時,請參照下圖所示,先調整每個關節的方位。

Service Server List : 在 open_manipulator_controller 內具有的與 MoveIt! 相關的 service server 列表。

TIP:如果你想在 inverse kinematics 反向運動學中使用 position_only,請檢查 open_manipulator_moveit - > config - > kinematics.yaml,並將position_only_ik 參數設置為 True

Last updated