Overload Configuration for Physical
If you are following this guide with example_robot_ws, your workspace should look like branch step12.
config.yaml
Our new config.yaml only has to overload a few fields:
hardware.additional_driver_launch_file- update to launch arm and gripper drivers in the drivers container.hardware.urdf_params- to tell our*.urdf.xacroto use the physical hardware*_ros2_control.xacro.
additional_driver_launch_file is always included, so pointing it at the physical driver launch file here is what runs the real drivers. The hardware_interface: "physical" Xacro parameter selects the physical *_ros2_control.xacro.
based_on_package: example_robot_sim
hardware:
additional_driver_launch_file:
package: "example_robot_hw"
path: "launch/additional_driver_nodes.launch.py"
robot_description:
urdf_params:
# Use "mock", "mujoco", or "physical"
- hardware_interface: "physical"
runtime.launch.xml
This launch file is run in the Runtime container and typically has your camera launch files.
Configure it with the required runtime_launch_file entry in config.yaml. A base configuration can provide this entry for derived configurations to inherit.
Here is what a launch file including a camera launch file might look like:
<?xml version="1.0" encoding="UTF-8" ?>
<launch>
<include
file="$(find-pkg-share moveit_studio_agent)/launch/studio_agent_bridge.launch.xml"
/>
<include
file="$(find-pkg-share example_robot_hw)/launch/camera_driver.launch.py"
/>
</launch>
Your example_robot_ws workspace should now look like branch step13.
This guide does not cover populating the CMakeLists.txt or package.xml for your hardware config.