From b365727f0a10facb4391094e1740a751d9ed344a Mon Sep 17 00:00:00 2001 From: jj <957713278@qq.com> Date: Thu, 12 Jun 2025 20:06:42 +0800 Subject: [PATCH] Update lidar.launch.py --- orbbec_camera/launch/lidar.launch.py | 107 +++++++++++++-------------- 1 file changed, 50 insertions(+), 57 deletions(-) diff --git a/orbbec_camera/launch/lidar.launch.py b/orbbec_camera/launch/lidar.launch.py index af59ed64..c8e033df 100644 --- a/orbbec_camera/launch/lidar.launch.py +++ b/orbbec_camera/launch/lidar.launch.py @@ -8,7 +8,7 @@ from launch_ros.descriptions import ComposableNode def load_yaml(file_path): - with open(file_path, "r") as f: + with open(file_path, 'r') as f: return yaml.safe_load(f) @@ -29,22 +29,20 @@ def convert_value(value): return float(value) except ValueError: pass - if value.lower() == "true": + if value.lower() == 'true': return True - elif value.lower() == "false": + elif value.lower() == 'false': return False return value def load_parameters(context, args): - default_params = { - arg.name: LaunchConfiguration(arg.name).perform(context) for arg in args - } - config_file_path = LaunchConfiguration("config_file_path").perform(context) + default_params = {arg.name: LaunchConfiguration(arg.name).perform(context) for arg in args} + config_file_path = LaunchConfiguration('config_file_path').perform(context) if config_file_path: yaml_params = load_yaml(config_file_path) default_params = merge_params(default_params, yaml_params) - skip_convert = {"config_file_path", "usb_port", "serial_number"} + skip_convert = {'config_file_path', 'usb_port', 'serial_number'} return { key: (value if key in skip_convert else convert_value(value)) for key, value in default_params.items() @@ -53,32 +51,28 @@ def load_parameters(context, args): def generate_launch_description(): args = [ - DeclareLaunchArgument("device_type", default_value="lidar"), - DeclareLaunchArgument("camera_name", default_value="lidar"), - DeclareLaunchArgument("device_num", default_value="1"), - DeclareLaunchArgument("upgrade_firmware", default_value=""), - DeclareLaunchArgument("connection_delay", default_value="10"), - DeclareLaunchArgument("publish_tf", default_value="true"), - DeclareLaunchArgument("tf_publish_rate", default_value="0.0"), - DeclareLaunchArgument( - "lidar_format", default_value="ANY" - ), # LIDAR_POINT, LIDAR_SPHERE_POINT, LIDAR_SCAN - DeclareLaunchArgument("lidar_rate", default_value="20"), - DeclareLaunchArgument("min_angle", default_value="-135.0"), - DeclareLaunchArgument("max_angle", default_value="135.0"), - DeclareLaunchArgument("min_range", default_value="0.05"), - DeclareLaunchArgument("max_range", default_value="30.0"), - DeclareLaunchArgument("echo_mode", default_value="single channel"), - DeclareLaunchArgument("point_cloud_qos", default_value="default"), - DeclareLaunchArgument("enumerate_net_device", default_value="true"), - DeclareLaunchArgument("net_device_ip", default_value=""), - DeclareLaunchArgument("net_device_port", default_value="0"), - DeclareLaunchArgument("log_level", default_value="none"), - DeclareLaunchArgument( - "time_domain", default_value="device" - ), # global, device, system - DeclareLaunchArgument("config_file_path", default_value=""), - DeclareLaunchArgument("enable_heartbeat", default_value="false"), + DeclareLaunchArgument('device_type', default_value='lidar'), + DeclareLaunchArgument('camera_name', default_value='lidar'), + DeclareLaunchArgument('device_num', default_value='1'), + DeclareLaunchArgument('upgrade_firmware', default_value=''), + DeclareLaunchArgument('connection_delay', default_value='10'), + DeclareLaunchArgument('publish_tf', default_value='true'), + DeclareLaunchArgument('tf_publish_rate', default_value='0.0'), + DeclareLaunchArgument('lidar_format', default_value='ANY'),#LIDAR_POINT, LIDAR_SPHERE_POINT, LIDAR_SCAN + DeclareLaunchArgument('lidar_rate', default_value='20'), + DeclareLaunchArgument('min_angle', default_value='-135.0'), + DeclareLaunchArgument('max_angle', default_value='135.0'), + DeclareLaunchArgument('min_range', default_value='0.05'), + DeclareLaunchArgument('max_range', default_value='30.0'), + DeclareLaunchArgument('echo_mode', default_value='single channel'), + DeclareLaunchArgument('point_cloud_qos', default_value='default'), + DeclareLaunchArgument('enumerate_net_device', default_value='true'), + DeclareLaunchArgument('net_device_ip', default_value=''), + DeclareLaunchArgument('net_device_port', default_value='0'), + DeclareLaunchArgument('log_level', default_value='none'), + DeclareLaunchArgument('time_domain', default_value='device'),# global, device, system + DeclareLaunchArgument('config_file_path', default_value=''), + DeclareLaunchArgument('enable_heartbeat', default_value='false'), ] def get_params(context, args): @@ -100,30 +94,29 @@ def generate_launch_description(): ] else: return [ - GroupAction( - [ - PushRosNamespace(LaunchConfiguration("camera_name")), - ComposableNodeContainer( - name="camera_container", - namespace="", - package="rclcpp_components", - executable="component_container", - composable_node_descriptions=[ - ComposableNode( - package="orbbec_camera", - plugin="orbbec_camera::OBCameraNodeDriver", - name=LaunchConfiguration("camera_name"), - parameters=params, - ), - ], - # prefix=["xterm -e gdb -ex run --args"], - output="screen", - ), - ] - ) + GroupAction([ + PushRosNamespace(LaunchConfiguration("camera_name")), + ComposableNodeContainer( + name="camera_container", + namespace="", + package="rclcpp_components", + executable="component_container", + composable_node_descriptions=[ + ComposableNode( + package="orbbec_camera", + plugin="orbbec_camera::OBCameraNodeDriver", + name=LaunchConfiguration("camera_name"), + parameters=params, + ), + ], + # prefix=["xterm -e gdb -ex run --args"], + output="screen", + ) + ]) ] return LaunchDescription( - args - + [OpaqueFunction(function=lambda context: create_node_action(context, args))] + args + [ + OpaqueFunction(function=lambda context: create_node_action(context, args)) + ] )