demo.launch 3.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566
  1. <launch>
  2. <!-- specify the planning pipeline -->
  3. <arg name="pipeline" default="ompl" />
  4. <!-- By default, we do not start a database (it can be large) -->
  5. <arg name="db" default="false" />
  6. <!-- Allow user to specify database location -->
  7. <arg name="db_path" default="$(find robot_config)/default_warehouse_mongo_db" />
  8. <!-- By default, we are not in debug mode -->
  9. <arg name="debug" default="false" />
  10. <!-- By default, we will load or override the robot_description -->
  11. <arg name="load_robot_description" default="true"/>
  12. <!-- Choose controller manager: fake, simple, or ros_control -->
  13. <arg name="moveit_controller_manager" default="fake" />
  14. <!-- Set execution mode for fake execution controllers -->
  15. <arg name="fake_execution_type" default="interpolate" />
  16. <!-- By default, hide joint_state_publisher's GUI in 'fake' controller_manager mode -->
  17. <arg name="use_gui" default="false" />
  18. <arg name="use_rviz" default="true" />
  19. <!-- If needed, broadcast static tf for robot root -->
  20. <group if="$(eval arg('moveit_controller_manager') == 'fake')">
  21. <!-- We do not have a real robot connected, so publish fake joint states via a joint_state_publisher
  22. MoveIt's fake controller's joint states are considered via the 'source_list' parameter -->
  23. <node name="joint_state_publisher" pkg="joint_state_publisher" type="joint_state_publisher" unless="$(arg use_gui)">
  24. <rosparam param="source_list">[move_group/fake_controller_joint_states]</rosparam>
  25. </node>
  26. <!-- If desired, a GUI version is available allowing to move the simulated robot around manually
  27. This corresponds to moving around the real robot without the use of MoveIt. -->
  28. <node name="joint_state_publisher" pkg="joint_state_publisher_gui" type="joint_state_publisher_gui" if="$(arg use_gui)">
  29. <rosparam param="source_list">[move_group/fake_controller_joint_states]</rosparam>
  30. </node>
  31. <!-- Given the published joint states, publish tf for the robot links -->
  32. <node name="robot_state_publisher" pkg="robot_state_publisher" type="robot_state_publisher" respawn="true" output="screen" />
  33. </group>
  34. <!-- Run the main MoveIt executable without trajectory execution (we do not have controllers configured by default) -->
  35. <include file="$(dirname)/move_group.launch">
  36. <arg name="allow_trajectory_execution" value="true"/>
  37. <arg name="moveit_controller_manager" value="$(arg moveit_controller_manager)" />
  38. <arg name="fake_execution_type" value="$(arg fake_execution_type)"/>
  39. <arg name="info" value="true"/>
  40. <arg name="debug" value="$(arg debug)"/>
  41. <arg name="pipeline" value="$(arg pipeline)"/>
  42. <arg name="load_robot_description" value="$(arg load_robot_description)"/>
  43. </include>
  44. <!-- Run Rviz and load the default config to see the state of the move_group node -->
  45. <include file="$(dirname)/moveit_rviz.launch" if="$(arg use_rviz)">
  46. <arg name="rviz_config" value="$(dirname)/moveit.rviz"/>
  47. <arg name="debug" value="$(arg debug)"/>
  48. </include>
  49. <!-- If database loading was enabled, start mongodb as well -->
  50. <include file="$(dirname)/default_warehouse_db.launch" if="$(arg db)">
  51. <arg name="moveit_warehouse_database_path" value="$(arg db_path)"/>
  52. </include>
  53. </launch>