#!/usr/bin/env python3 """ C++版本串口到TCP服务器启动文件(配置文件版本) 使用YAML配置文件启动C++版本的串口到TCP服务器 """ import os import yaml from ament_index_python.packages import get_package_share_directory from launch import LaunchDescription from launch_ros.actions import Node def generate_launch_description(): # 获取包共享目录和配置文件路径 share_dir = get_package_share_directory('nmea_ros_bridge') config_file = os.path.join(share_dir, 'config', 'serial_to_tcp_server_config.yaml') # 读取配置文件 with open(config_file, 'r') as f: params = yaml.safe_load(f)['serial_to_tcp_server']['ros__parameters'] # C++版本串口到TCP服务器节点 serial_to_tcp_server_node = Node( package='nmea_ros_bridge', executable='serial_to_tcp_server', name='serial_to_tcp_server', output='screen', parameters=[params] ) return LaunchDescription([ serial_to_tcp_server_node ])