quadruped_ros2_control/libraries/gz_quadruped_playground/launch/unitree_guide.launch.py

43 lines
1.3 KiB
Python
Raw Normal View History

2025-02-23 01:19:51 +08:00
import xacro
from launch import LaunchDescription
from launch.actions import DeclareLaunchArgument, RegisterEventHandler
from launch.event_handlers import OnProcessExit
from launch_ros.actions import Node
2025-02-23 22:07:46 +08:00
2025-02-23 01:19:51 +08:00
def generate_launch_description():
joint_state_publisher = Node(
package="controller_manager",
executable="spawner",
arguments=["joint_state_broadcaster",
2025-02-23 22:07:46 +08:00
"--controller-manager", "/controller_manager"]
2025-02-23 01:19:51 +08:00
)
imu_sensor_broadcaster = Node(
package="controller_manager",
executable="spawner",
arguments=["imu_sensor_broadcaster",
2025-02-23 22:07:46 +08:00
"--controller-manager", "/controller_manager"]
2025-02-23 01:19:51 +08:00
)
unitree_guide_controller = Node(
package="controller_manager",
executable="spawner",
2025-02-23 22:07:46 +08:00
arguments=["unitree_guide_controller", "--controller-manager", "/controller_manager"]
2025-02-23 01:19:51 +08:00
)
return LaunchDescription([
2025-02-25 22:18:55 +08:00
joint_state_publisher,
RegisterEventHandler(
event_handler=OnProcessExit(
target_action=joint_state_publisher,
on_exit=[imu_sensor_broadcaster],
)
),
2025-02-23 01:19:51 +08:00
RegisterEventHandler(
event_handler=OnProcessExit(
2025-02-25 22:18:55 +08:00
target_action=imu_sensor_broadcaster,
on_exit=[unitree_guide_controller],
2025-02-23 01:19:51 +08:00
)
),
])