hexapod.launch.py 1.1 KB

123456789101112131415161718192021222324252627282930313233
  1. import os
  2. from ament_index_python.packages import get_package_share_directory
  3. from launch import LaunchDescription
  4. from launch_ros.actions import Node
  5. from launch_ros.parameter_descriptions import ParameterValue # Import this!
  6. def generate_launch_description():
  7. ####### DATA INPUT ##########
  8. urdf_file = 'robot.urdf'
  9. package_description = "hexarob_description"
  10. ####### DATA INPUT END ##########
  11. print("Fetching URDF ==>")
  12. robot_desc_path = os.path.join(
  13. get_package_share_directory(package_description), "hexarob", urdf_file
  14. )
  15. # Read the URDF file content
  16. with open(robot_desc_path, 'r') as file:
  17. urdf_content = file.read()
  18. # Robot State Publisher
  19. robot_state_publisher_node = Node(
  20. package='robot_state_publisher',
  21. executable='robot_state_publisher',
  22. name='robot_state_publisher_node',
  23. emulate_tty=True,
  24. parameters=[{'use_sim_time': True, 'robot_description': ParameterValue(urdf_content, value_type=str)}],
  25. output="screen"
  26. )
  27. return LaunchDescription([robot_state_publisher_node])