1
0
forked from zbw/yiliao2026
Files
yiliao2026/src/cyy_navigation2/launch/cyy_nav_box.launch.py
Orange 7fbddb15c2 Please enter the commit message for your changes. Lines starting
with '#' will be ignored, and an empty message aborts the commit.

On branch master

Initial commit

Changes to be committed:
	new file:   bashes/README.md
	new file:   bashes/radar-driver-switch.sh
	new file:   dependencies/dependencies.txt
	new file:   src/LSLIDAR_X_ROS2-20240228/src/README.md
	new file:   src/LSLIDAR_X_ROS2-20240228/src/lslidar_driver/CMakeLists.txt
	new file:   src/LSLIDAR_X_ROS2-20240228/src/lslidar_driver/include/lslidar_driver/input.h
	new file:   src/LSLIDAR_X_ROS2-20240228/src/lslidar_driver/include/lslidar_driver/lsiosr.h
	new file:   src/LSLIDAR_X_ROS2-20240228/src/lslidar_driver/include/lslidar_driver/lslidar_driver.h
	new file:   src/LSLIDAR_X_ROS2-20240228/src/lslidar_driver/launch/lslidar_double_launch.py
	new file:   src/LSLIDAR_X_ROS2-20240228/src/lslidar_driver/launch/lsm10_net_launch.py
	new file:   src/LSLIDAR_X_ROS2-20240228/src/lslidar_driver/launch/lsm10_uart_launch.py
	new file:   src/LSLIDAR_X_ROS2-20240228/src/lslidar_driver/launch/lsm10p_net_launch.py
	new file:   src/LSLIDAR_X_ROS2-20240228/src/lslidar_driver/launch/lsm10p_uart_launch.py
	new file:   src/LSLIDAR_X_ROS2-20240228/src/lslidar_driver/launch/lsn10_launch.py
	new file:   src/LSLIDAR_X_ROS2-20240228/src/lslidar_driver/launch/lsn10_net_launch.py
	new file:   src/LSLIDAR_X_ROS2-20240228/src/lslidar_driver/launch/lsn10p_launch.py
	new file:   src/LSLIDAR_X_ROS2-20240228/src/lslidar_driver/launch/lsn10p_net_launch.py
	new file:   src/LSLIDAR_X_ROS2-20240228/src/lslidar_driver/launch/viewer_scan_launch.py
	new file:   src/LSLIDAR_X_ROS2-20240228/src/lslidar_driver/package.xml
	new file:   src/LSLIDAR_X_ROS2-20240228/src/lslidar_driver/params/lidar_net_ros2/lsm10_net.yaml
	new file:   src/LSLIDAR_X_ROS2-20240228/src/lslidar_driver/params/lidar_net_ros2/lsm10p_net.yaml
	new file:   src/LSLIDAR_X_ROS2-20240228/src/lslidar_driver/params/lidar_net_ros2/lsn10_net.yaml
	new file:   src/LSLIDAR_X_ROS2-20240228/src/lslidar_driver/params/lidar_net_ros2/lsn10p_net.yaml
	new file:   src/LSLIDAR_X_ROS2-20240228/src/lslidar_driver/params/lidar_uart_ros2/lsm10.yaml
	new file:   src/LSLIDAR_X_ROS2-20240228/src/lslidar_driver/params/lidar_uart_ros2/lsm10_p.yaml
	new file:   src/LSLIDAR_X_ROS2-20240228/src/lslidar_driver/params/lidar_uart_ros2/lsn10.yaml
	new file:   src/LSLIDAR_X_ROS2-20240228/src/lslidar_driver/params/lidar_uart_ros2/lsn10p.yaml
	new file:   src/LSLIDAR_X_ROS2-20240228/src/lslidar_driver/rviz/lslidar.rviz
	new file:   src/LSLIDAR_X_ROS2-20240228/src/lslidar_driver/src/input.cc
	new file:   src/LSLIDAR_X_ROS2-20240228/src/lslidar_driver/src/lsiosr.cpp
	new file:   src/LSLIDAR_X_ROS2-20240228/src/lslidar_driver/src/lslidar_driver.cc
	new file:   src/LSLIDAR_X_ROS2-20240228/src/lslidar_driver/src/lslidar_driver_node.cc
	new file:   src/LSLIDAR_X_ROS2-20240228/src/lslidar_msgs/CMakeLists.txt
	new file:   src/LSLIDAR_X_ROS2-20240228/src/lslidar_msgs/msg/LslidarDifop.msg
	new file:   src/LSLIDAR_X_ROS2-20240228/src/lslidar_msgs/msg/LslidarPacket.msg
	new file:   src/LSLIDAR_X_ROS2-20240228/src/lslidar_msgs/msg/LslidarPoint.msg
	new file:   src/LSLIDAR_X_ROS2-20240228/src/lslidar_msgs/msg/LslidarScan.msg
	new file:   src/LSLIDAR_X_ROS2-20240228/src/lslidar_msgs/msg/LslidarSweep.msg
	new file:   src/LSLIDAR_X_ROS2-20240228/src/lslidar_msgs/package.xml
	new file:   src/LSLIDAR_X_ROS2-20240228/src/version.txt
	new file:   src/LSLIDAR_X_ROS2-20240228/src/wheeltec_udev.sh
	new file:   "src/LSLIDAR_X_ROS2-20240228/src/\351\225\255\347\245\236Lsx\351\233\267\350\276\276\346\227\213\350\275\254\350\247\222\345\272\246.png"
	new file:   src/LSLIDAR_X_ROS2-20240228/wheeltec_lidar.launch.py
	new file:   "src/LSLIDAR_X_ROS2-20240228/wheeltec_lidar.launch.py\344\273\205\345\234\250WHEELTEC\351\225\234\345\203\217\344\270\255\344\275\277\347\224\250"
	new file:   src/cyy_navigation2/CMakeLists.txt
	new file:   src/cyy_navigation2/bt/follow_point.xml
	new file:   src/cyy_navigation2/bt/nav_to_pose_with_consistent_replanning_and_if_path_becomes_invalid.xml
	new file:   src/cyy_navigation2/bt/navigate_through_poses_w_replanning_and_recovery.xml
	new file:   src/cyy_navigation2/bt/navigate_to_pose_w_replanning_and_recovery.xml
	new file:   src/cyy_navigation2/bt/navigate_to_pose_w_replanning_goal_patience_and_recovery.xml
	new file:   src/cyy_navigation2/bt/navigate_w_recovery_and_replanning_only_if_path_becomes_invalid.xml
	new file:   src/cyy_navigation2/bt/navigate_w_replanning_distance.xml
	new file:   src/cyy_navigation2/bt/navigate_w_replanning_only_if_goal_is_updated.xml
	new file:   src/cyy_navigation2/bt/navigate_w_replanning_only_if_path_becomes_invalid.xml
	new file:   src/cyy_navigation2/bt/navigate_w_replanning_speed.xml
	new file:   src/cyy_navigation2/bt/navigate_w_replanning_time.xml
	new file:   src/cyy_navigation2/bt/odometry_calibration.xml
	new file:   src/cyy_navigation2/config/nav2_params.yaml
	new file:   src/cyy_navigation2/launch/car_bringup.launch.py
	new file:   src/cyy_navigation2/launch/cyy_nav.launch.py
	new file:   src/cyy_navigation2/launch/cyy_nav_box.launch.py
	new file:   src/cyy_navigation2/maps/cyy_map.data
	new file:   src/cyy_navigation2/maps/cyy_map.pgm
	new file:   src/cyy_navigation2/maps/cyy_map.yaml
	new file:   src/cyy_navigation2/maps/cyy_map1.pgm
	new file:   src/cyy_navigation2/maps/cyy_map1.yaml
	new file:   src/cyy_navigation2/package.xml
	new file:   src/cyy_navigation2/param/nav2_params.yaml
	new file:   src/cyy_navigation2/param/slam_toolbox_localization.yaml
	new file:   src/cyy_slamtoolbox/CMakeLists.txt
	new file:   src/cyy_slamtoolbox/config/angular_filter_example.yaml
	new file:   src/cyy_slamtoolbox/config/box_filter_example.yaml
	new file:   src/cyy_slamtoolbox/config/footprint_filter_example.yaml
	new file:   src/cyy_slamtoolbox/config/intensity_filter_example.yaml
	new file:   src/cyy_slamtoolbox/config/laser_filter_config.yaml
	new file:   src/cyy_slamtoolbox/config/mapper_params_lifelong.yaml
	new file:   src/cyy_slamtoolbox/config/mapper_params_localization.yaml
	new file:   src/cyy_slamtoolbox/config/mapper_params_offline.yaml
	new file:   src/cyy_slamtoolbox/config/mapper_params_online_async.yaml
	new file:   src/cyy_slamtoolbox/config/mapper_params_online_sync.yaml
	new file:   src/cyy_slamtoolbox/config/mask_filter_example.yaml
	new file:   src/cyy_slamtoolbox/config/median_filter_example.yaml
	new file:   src/cyy_slamtoolbox/config/median_spatial_filter_example.yaml
	new file:   src/cyy_slamtoolbox/config/multiple_filters_example.yaml
	new file:   src/cyy_slamtoolbox/config/pass_through_example.yaml
	new file:   src/cyy_slamtoolbox/config/polygon_filter_example.yaml
	new file:   src/cyy_slamtoolbox/config/range_filter_example.yaml
	new file:   src/cyy_slamtoolbox/config/scan_blob_filter_example.yaml
	new file:   src/cyy_slamtoolbox/config/sector_filter_example.yaml
	new file:   src/cyy_slamtoolbox/config/shadow_filter_example.yaml
	new file:   src/cyy_slamtoolbox/config/slam_toolbox_default.rviz
	new file:   src/cyy_slamtoolbox/config/speckle_filter_example.yaml
	new file:   src/cyy_slamtoolbox/launch/cyy_slam_toolbox_launch.launch.py
	new file:   src/cyy_slamtoolbox/launch/cyy_slam_toolbox_location.launch.py
	new file:   src/cyy_slamtoolbox/launch/filter.launch.py
	new file:   src/cyy_slamtoolbox/package.xml
	new file:   src/gc_navigation_fish/CMakeLists.txt
	new file:   src/gc_navigation_fish/launch/gc_navigation.launch.py
	new file:   src/gc_navigation_fish/maps/test_map.pgm
	new file:   src/gc_navigation_fish/maps/test_map.yaml
	new file:   src/gc_navigation_fish/package.xml
	new file:   src/gc_navigation_fish/param/gc_navigation.yaml
	new file:   src/gc_navigation_fish/param/navigation_test.yaml
	new file:   src/gc_slam_toolbox_fish/CMakeLists.txt
	new file:   src/gc_slam_toolbox_fish/config/gc_2d.lua
	new file:   src/gc_slam_toolbox_fish/launch/catograph.launch.py
	new file:   src/gc_slam_toolbox_fish/package.xml
	new file:   src/origincar_base/CMakeLists.txt
	new file:   src/origincar_base/config/ekf.yaml
	new file:   src/origincar_base/config/imu.yaml
	new file:   src/origincar_base/include/origincar_base/Quaternion_Solution.h
	new file:   src/origincar_base/include/origincar_base/origincar_base.h
	new file:   src/origincar_base/launch/__pycache__/testtwo.launch.cpython-38.pyc
	new file:   src/origincar_base/launch/base_serial.launch.py
	new file:   src/origincar_base/launch/ekf.launch.py
	new file:   src/origincar_base/launch/origincar_bringup.launch.py
	new file:   src/origincar_base/launch/robot_mode_description.launch.py
	new file:   src/origincar_base/msg/Position.msg
	new file:   src/origincar_base/package.xml
	new file:   src/origincar_base/scripts/cmd_vel_to_ackermann_drive.py
	new file:   src/origincar_base/src/Quaternion_Solution.cpp
	new file:   src/origincar_base/src/origincar_base.cpp
	new file:   src/origincar_description/CMakeLists.txt
	new file:   src/origincar_description/CMakeLists.txt.save
	new file:   src/origincar_description/config/joint_names_origincar_description.yaml
	new file:   "src/origincar_description/config/joint_names_origincar_description.yaml\357\200\272Zone.Identifier"
	new file:   src/origincar_description/launch/display.launch
	new file:   src/origincar_description/launch/display.launch.py
	new file:   src/origincar_description/launch/gazebo.launch
	new file:   src/origincar_description/launch/gazebo.launch.py
	new file:   src/origincar_description/meshes/base_link.STL
	new file:   "src/origincar_description/meshes/base_link.STL\357\200\272Zone.Identifier"
	new file:   src/origincar_description/meshes/down_left_Link.STL
	new file:   "src/origincar_description/meshes/down_left_Link.STL\357\200\272Zone.Identifier"
	new file:   src/origincar_description/meshes/down_right_Link.STL
	new file:   "src/origincar_description/meshes/down_right_Link.STL\357\200\272Zone.Identifier"
	new file:   src/origincar_description/meshes/up_left_Link.STL
	new file:   "src/origincar_description/meshes/up_left_Link.STL\357\200\272Zone.Identifier"
	new file:   src/origincar_description/meshes/up_right_Link.STL
	new file:   "src/origincar_description/meshes/up_right_Link.STL\357\200\272Zone.Identifier"
	new file:   src/origincar_description/package.xml
	new file:   src/origincar_description/rviz/README
	new file:   src/origincar_description/rviz/display.rviz
	new file:   src/origincar_description/urdf/origincar.urdf
	new file:   src/origincar_description/urdf/origincar.xacro
	new file:   src/origincar_description/world/fishbot.world
	new file:   src/origincar_description/world/gc_world.world
	new file:   src/origincar_description/world/test.world
	new file:   src/origincar_msg/CMakeLists.txt
	new file:   src/origincar_msg/msg/Data.msg
	new file:   src/origincar_msg/msg/Sign.msg
	new file:   src/origincar_msg/package.xml
	new file:   src/zbw_slamtoolbox/CMakeLists.txt
	new file:   src/zbw_slamtoolbox/config/mapper_params_online_async.yaml
	new file:   src/zbw_slamtoolbox/config/mapper_params_online_sync copy.yaml
	new file:   src/zbw_slamtoolbox/config/navigation.yaml
	new file:   src/zbw_slamtoolbox/launch/navigation.launch.py
	new file:   src/zbw_slamtoolbox/launch/slamtoolbox.launch.py
	new file:   src/zbw_slamtoolbox/package.xml
	new file:   zbw_slamtoolbox/CMakeLists.txt
	new file:   zbw_slamtoolbox/config/mapper_params_online_async.yaml
	new file:   zbw_slamtoolbox/config/mapper_params_online_sync copy.yaml
	new file:   zbw_slamtoolbox/config/navigation.yaml
	new file:   zbw_slamtoolbox/launch/navigation.launch.py
	new file:   zbw_slamtoolbox/launch/slamtoolbox.launch.py
	new file:   zbw_slamtoolbox/package.xml

Changes not staged for commit:
	deleted:    zbw_slamtoolbox/CMakeLists.txt
	deleted:    zbw_slamtoolbox/config/mapper_params_online_async.yaml
	deleted:    zbw_slamtoolbox/config/mapper_params_online_sync copy.yaml
	deleted:    zbw_slamtoolbox/config/navigation.yaml
	deleted:    zbw_slamtoolbox/launch/navigation.launch.py
	deleted:    zbw_slamtoolbox/launch/slamtoolbox.launch.py
	deleted:    zbw_slamtoolbox/package.xml

Untracked files:
	.gitignore
2026-03-05 10:27:00 +08:00

86 lines
3.3 KiB
Python
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
import os
from ament_index_python.packages import get_package_share_directory
from launch import LaunchDescription
from launch.actions import IncludeLaunchDescription, DeclareLaunchArgument
from launch.launch_description_sources import PythonLaunchDescriptionSource
from launch.substitutions import LaunchConfiguration
from launch_ros.actions import Node
def generate_launch_description():
# 获取包路径
cyy_navigation2_dir = get_package_share_directory('cyy_navigation2')
nav2_bringup_dir = get_package_share_directory('nav2_bringup')
# 声明参数
use_sim_time = LaunchConfiguration('use_sim_time', default='False')
slam = LaunchConfiguration('slam', default='False')
localization = LaunchConfiguration('localization', default='False')
# 定义文件路径
map_yaml_path = os.path.join(cyy_navigation2_dir, 'maps', 'cyy_map.yaml')
nav2_param_path = os.path.join(cyy_navigation2_dir, 'param', 'nav2_params.yaml')
slam_params_file = os.path.join(cyy_navigation2_dir, 'param', 'slam_toolbox_localization.yaml')
# 定义地图基础路径(用于 .posegraph 文件)
map_base_path = os.path.join(cyy_navigation2_dir, 'maps', 'cyy_map')
# 检查 .posegraph 文件是否存在
posegraph_path = map_base_path + '.posegraph'
if not os.path.exists(posegraph_path):
print(f"警告: .posegraph 文件不存在: {posegraph_path}")
print("将使用 AMCL 替代")
use_slam_toolbox = False
else:
use_slam_toolbox = True
print(f"找到 .posegraph 文件: {posegraph_path}")
# 创建启动描述
ld = LaunchDescription([
DeclareLaunchArgument('use_sim_time', default_value='False'),
DeclareLaunchArgument('slam', default_value='False'),
DeclareLaunchArgument('localization', default_value='False'),
])
# 如果使用 slam_toolbox
if use_slam_toolbox:
slam_toolbox_node = Node(
package='slam_toolbox',
executable='localization_slam_toolbox_node',
name='slam_toolbox',
output='screen',
parameters=[
slam_params_file,
{'use_sim_time': use_sim_time},
{'map_file_name': map_base_path},
{'map_start_pose': [0.0, 0.0, 0.0]}
],
remappings=[('/scan', '/scan')]
)
ld.add_action(slam_toolbox_node)
# 使用 slam_toolbox 时Nav2 不启用定位
localization_arg = 'False'
else:
# 使用 AMCL
localization_arg = 'True'
# Nav2 启动 - 使用正确的路径
nav2_launch_path = os.path.join(nav2_bringup_dir, 'launch', 'bringup_launch.py')
if not os.path.exists(nav2_launch_path):
print(f"错误: 找不到 Nav2 启动文件: {nav2_launch_path}")
return ld
nav2_bringup_launch = IncludeLaunchDescription(
PythonLaunchDescriptionSource(nav2_launch_path),
launch_arguments={
'map': map_yaml_path,
'use_sim_time': use_sim_time,
'params_file': nav2_param_path,
'slam': slam,
'localization': localization_arg,
'autostart': 'True',
}.items(),
)
ld.add_action(nav2_bringup_launch)
return ld