69 lines
3.2 KiB
XML
69 lines
3.2 KiB
XML
<launch>
|
|
|
|
<!-- specify the planning pipeline -->
|
|
<arg name="pipeline" default="ompl" />
|
|
|
|
<!-- By default, we do not start a database (it can be large) -->
|
|
<arg name="db" default="false" />
|
|
<!-- Allow user to specify database location -->
|
|
<arg name="db_path" default="$(find iisy_config)/default_warehouse_mongo_db" />
|
|
|
|
<!-- By default, we are not in debug mode -->
|
|
<arg name="debug" default="false" />
|
|
|
|
<!-- By default, we will load or override the robot_description -->
|
|
<arg name="load_robot_description" default="true"/>
|
|
|
|
<!-- Choose controller manager: fake, simple, or ros_control -->
|
|
<arg name="moveit_controller_manager" default="fake" />
|
|
<!-- Set execution mode for fake execution controllers -->
|
|
<arg name="fake_execution_type" default="interpolate" />
|
|
|
|
<!-- By default, hide joint_state_publisher's GUI in 'fake' controller_manager mode -->
|
|
<arg name="use_gui" default="false" />
|
|
<arg name="use_rviz" default="true" />
|
|
|
|
<!-- If needed, broadcast static tf for robot root -->
|
|
|
|
|
|
|
|
<group if="$(eval arg('moveit_controller_manager') == 'fake')">
|
|
<!-- We do not have a real robot connected, so publish fake joint states via a joint_state_publisher
|
|
MoveIt's fake controller's joint states are considered via the 'source_list' parameter -->
|
|
<node name="joint_state_publisher" pkg="joint_state_publisher" exec="joint_state_publisher" unless="$(arg use_gui)">
|
|
<param from="source_list">[move_group/fake_controller_joint_states]</param>
|
|
</node>
|
|
<!-- If desired, a GUI version is available allowing to move the simulated robot around manually
|
|
This corresponds to moving around the real robot without the use of MoveIt. -->
|
|
<node name="joint_state_publisher" pkg="joint_state_publisher_gui" exec="joint_state_publisher_gui" if="$(arg use_gui)">
|
|
<param from="source_list">[move_group/fake_controller_joint_states]</param>
|
|
</node>
|
|
|
|
<!-- Given the published joint states, publish tf for the robot links -->
|
|
<node name="robot_state_publisher" pkg="robot_state_publisher" exec="robot_state_publisher" respawn="true" output="screen" />
|
|
</group>
|
|
|
|
<!-- Run the main MoveIt executable without trajectory execution (we do not have controllers configured by default) -->
|
|
<include file="$(dirname)/move_group.launch">
|
|
<let name="allow_trajectory_execution" value="true"/>
|
|
<let name="moveit_controller_manager" value="$(arg moveit_controller_manager)" />
|
|
<let name="fake_execution_type" value="$(arg fake_execution_type)"/>
|
|
<let name="info" value="true"/>
|
|
<let name="debug" value="$(arg debug)"/>
|
|
<let name="pipeline" value="$(arg pipeline)"/>
|
|
<let name="load_robot_description" value="$(arg load_robot_description)"/>
|
|
</include>
|
|
|
|
<!-- Run Rviz and load the default config to see the state of the move_group node -->
|
|
<include file="$(dirname)/moveit_rviz.launch" if="$(arg use_rviz)">
|
|
<let name="rviz_config" value="$(dirname)/moveit.rviz"/>
|
|
<let name="debug" value="$(arg debug)"/>
|
|
</include>
|
|
|
|
<!-- If database loading was enabled, start mongodb as well -->
|
|
<include file="$(dirname)/default_warehouse_db.launch" if="$(arg db)">
|
|
<let name="moveit_warehouse_database_path" value="$(arg db_path)"/>
|
|
</include>
|
|
|
|
</launch>
|