Please enter the commit message for your changes. Lines starting
with '#' will be ignored, and an empty message aborts the commit. On branch master Your branch is ahead of 'origin/master' by 31 commits. (use "git push" to publish your local commits) Changes to be committed: new file: .gitignore new file: .vscode/c_cpp_properties.json new file: .vscode/launch.json new file: .vscode/settings.json new file: CLAUDE.md new file: README.md new file: bashes/README.md new file: bashes/radar-driver-switch.sh new file: bashes/radar-driver-switch.sh.bak 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.cc.bak 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_navigation2_real/CMakeLists.txt new file: src/gc_navigation2_real/behavior_tree/nav_to_pose_ackermann.xml new file: src/gc_navigation2_real/config/slam_toolbox_async_real.yaml new file: src/gc_navigation2_real/config/slam_toolbox_localization_real.yaml new file: src/gc_navigation2_real/launch/real_bringup.launch.py new file: src/gc_navigation2_real/launch/real_nav2_slam.launch.py new file: src/gc_navigation2_real/launch/real_nav2_slam_online.launch.py new file: src/gc_navigation2_real/launch/real_slam_mapping.launch.py new file: src/gc_navigation2_real/maps/Readme.txt new file: src/gc_navigation2_real/package.xml new file: src/gc_navigation2_real/params/gc_navigation_slam_real.yaml new file: src/gc_navigation2_slamtoolbox/CMakeLists.txt new file: src/gc_navigation2_slamtoolbox/config/mapper_params_lifelong.yaml new file: src/gc_navigation2_slamtoolbox/config/mapper_params_localization.yaml new file: src/gc_navigation2_slamtoolbox/config/mapper_params_offline.yaml new file: src/gc_navigation2_slamtoolbox/config/mapper_params_online_multi_async.yaml new file: src/gc_navigation2_slamtoolbox/config/mapper_params_online_sync.yaml new file: src/gc_navigation2_slamtoolbox/config/nav_to_pose_ackermann.xml new file: src/gc_navigation2_slamtoolbox/config/slam_toolbox_async.yaml new file: src/gc_navigation2_slamtoolbox/config/slam_toolbox_localization.yaml new file: src/gc_navigation2_slamtoolbox/config/slam_toolbox_mapping.yaml new file: src/gc_navigation2_slamtoolbox/launch/gc_nav2_with_amcl.launch.py new file: src/gc_navigation2_slamtoolbox/launch/gc_nav2_with_slam.launch.py new file: src/gc_navigation2_slamtoolbox/launch/gc_nav2_with_slam_online.launch.py new file: src/gc_navigation2_slamtoolbox/launch/gc_nav2_with_slam_online_real.launch.py new file: src/gc_navigation2_slamtoolbox/launch/gc_nav_slamtoolbox_lifelong.launch.py new file: src/gc_navigation2_slamtoolbox/launch/gc_nav_slamtoolbox_location.launch.py new file: src/gc_navigation2_slamtoolbox/launch/gc_nav_slamtoolbox_on_async.launch.py new file: src/gc_navigation2_slamtoolbox/launch/gc_slam_mapping.launch.py new file: src/gc_navigation2_slamtoolbox/maps/my_map.data new file: src/gc_navigation2_slamtoolbox/maps/my_map.pgm new file: src/gc_navigation2_slamtoolbox/maps/my_map.posegraph new file: src/gc_navigation2_slamtoolbox/maps/my_map.yaml new file: src/gc_navigation2_slamtoolbox/maps/zhihui.data new file: src/gc_navigation2_slamtoolbox/maps/zhihui.pgm new file: src/gc_navigation2_slamtoolbox/maps/zhihui.posegraph new file: src/gc_navigation2_slamtoolbox/maps/zhihui.yaml new file: src/gc_navigation2_slamtoolbox/package.xml new file: src/gc_navigation2_slamtoolbox/params/gc_navigation_amcl.yaml new file: src/gc_navigation2_slamtoolbox/params/gc_navigation_slam.yaml new file: src/gc_navigation2_slamtoolbox/params/gc_navigation_slam.yaml.bak new file: src/gc_navigation2_slamtoolbox/world/zhihui/model.config new file: src/gc_navigation2_slamtoolbox/world/zhihui/model.sdf 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/ground_slam/.gitignore new file: src/ground_slam/CMakeLists.txt new file: src/ground_slam/LICENSE.md new file: src/ground_slam/README.md new file: src/ground_slam/cmake/FindEigen3.cmake new file: src/ground_slam/cmake/FindFFTW3.cmake new file: src/ground_slam/configs/config_HD.yaml new file: src/ground_slam/configs/config_geekplus.yaml new file: src/ground_slam/configs/config_ntu.yaml new file: src/ground_slam/figures/data_association.jpg new file: src/ground_slam/figures/features_small.jpg new file: src/ground_slam/figures/fig1.jpg new file: src/ground_slam/figures/loop_error.jpg new file: src/ground_slam/figures/loop_trajectory.jpg new file: src/ground_slam/figures/pipeline.png new file: src/ground_slam/figures/rmse_curve.jpg new file: src/ground_slam/figures/sample_images.jpg new file: src/ground_slam/figures/trajectory.jpg new file: src/ground_slam/figures/video.png new file: src/ground_slam/include/camera.h new file: src/ground_slam/include/circ_shift.h new file: src/ground_slam/include/correlation_flow.h new file: src/ground_slam/include/dataset.h new file: src/ground_slam/include/edge.h new file: src/ground_slam/include/frame.h new file: src/ground_slam/include/loop_closure.h new file: src/ground_slam/include/map.h new file: src/ground_slam/include/map_builder.h new file: src/ground_slam/include/map_stitcher.h new file: src/ground_slam/include/optimization_2d/angle_local_parameterization.h new file: src/ground_slam/include/optimization_2d/normalize_angle.h new file: src/ground_slam/include/optimization_2d/pose_graph_2d.h new file: src/ground_slam/include/optimization_2d/pose_graph_2d_error_term.h new file: src/ground_slam/include/optimization_2d/types.h new file: src/ground_slam/include/read_configs.h new file: src/ground_slam/include/thread_publisher.h new file: src/ground_slam/include/timer.h new file: src/ground_slam/include/utils.h new file: src/ground_slam/include/visualization.h new file: src/ground_slam/main.cpp new file: src/ground_slam/package.xml new file: src/ground_slam/src/camera.cc new file: src/ground_slam/src/correlation_flow.cc new file: src/ground_slam/src/dataset.cc new file: src/ground_slam/src/edge.cc new file: src/ground_slam/src/frame.cc new file: src/ground_slam/src/loop_closure.cc new file: src/ground_slam/src/map.cc new file: src/ground_slam/src/map_builder.cc new file: src/ground_slam/src/map_stitcher.cc new file: src/ground_slam/src/optimization_2d/pose_graph_2d.cc new file: src/ground_slam/src/thread_publisher.cc new file: src/ground_slam/src/timer.cc new file: src/ground_slam/src/utils.cc new file: src/ground_slam/src/visualization.cc new file: src/ground_slam/supplementary/GroundSLAM_Supplement_Materia.pdf 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/__pycache__/cmd_vel_to_ackermann_drive.cpython-310.pyc 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_base/src/origincar_base.cpp.bak 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:Zone.Identifier 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:Zone.Identifier 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:Zone.Identifier 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:Zone.Identifier 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:Zone.Identifier 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:Zone.Identifier 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_description/world/zhihui.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: "\347\253\236\350\265\233\346\226\271\346\241\210_\347\254\25421\345\261\212\346\231\272\350\203\275\346\261\275\350\275\246\347\253\236\350\265\233\345\234\260\347\223\234\346\234\272\345\231\250\344\272\272\350\265\233\351\241\271.md" new file: "\350\260\203\350\257\225\350\256\260\345\275\225.log"
This commit is contained in:
222
竞赛方案_第21届智能汽车竞赛地瓜机器人赛项.md
Normal file
222
竞赛方案_第21届智能汽车竞赛地瓜机器人赛项.md
Normal file
@@ -0,0 +1,222 @@
|
||||
# 第21届全国大学生智能汽车竞赛 — 地瓜机器人赛项正式方案
|
||||
|
||||
> 来源:古月居公众号 | 发布时间:2026年3月23日
|
||||
|
||||
---
|
||||
|
||||
## 一、核心要点
|
||||
|
||||
1. **延续性**:沿用第19届、第20届的竞赛地图、竞赛车模等物料。
|
||||
2. **允许改装**:基于 OriginCar 系列车模,参赛队可对传感器、运动控制板、车载机电模块等进行改装。
|
||||
3. **改装限制**:
|
||||
- 车模底盘(车体结构、电机、转向舵机、车轮)**不可调整**
|
||||
- 主控板**必须**使用地瓜机器人 RDK 系列开发板
|
||||
4. **全自主运行**:不依赖路由器及网络,车模完全自主完成所有任务。
|
||||
5. **多方案可选**:参赛队可采用不同自主设计方案(解决方案、软硬件等)完成任务。
|
||||
|
||||
---
|
||||
|
||||
## 二、赛事背景
|
||||
|
||||
在人工智能、智能机器人等前沿技术加速迭代的当下,多技术融合创新已成为驱动社会生产力跃升与产业变革的核心引擎。大模型(LLM/VLM)的突破性发展彻底重构了人机交互范式,让智能机器人具备解读人类模糊意图、灵活响应复杂指令的能力。
|
||||
|
||||
地瓜机器人(起步于2015年诞生的地平线)是业界领先的机器人软硬件通用底座提供商,创新性地将基于大模型的"云-边-端"一体化机器人开发底座引入竞赛平台。
|
||||
|
||||
---
|
||||
|
||||
## 三、竞赛场地
|
||||
|
||||
### 3.1 地图布局
|
||||
|
||||
| 区域 | 颜色 | 尺寸 (m) | 说明 |
|
||||
|:----:|:----:|:--------:|------|
|
||||
| **A区** — 场景大厅 | 浅蓝色 | 5 × 2 | 左下角为固定发车点/停车点 **(P)**;右上角为任务发布点(二维码标记牌);区域内随机放置锥桶障碍物 |
|
||||
| **B区** — 通道区 | 浅黄色 | 5 × 0.5 | 中间有 0.5m × 1m 的通道连接 A/B/C 三区 |
|
||||
| **C区** — 诊疗区 | 浅绿色 | 5 × 2.5 | 中间黄色环形通道(宽 0.5m);放置图生文标记牌与障碍物 |
|
||||
|
||||
### 3.2 赛场环境
|
||||
|
||||
- 地图由 **25m² 结皮 PVC** 绘制而成
|
||||
- **无磁场干扰**环境
|
||||
- 可能存在表面不平整、边框裂缝、光照变化等因素,参赛队需考虑应对措施
|
||||
|
||||
### 3.3 障碍物
|
||||
|
||||
- 每场比赛在地图范围内设置 **≥5 个障碍物**
|
||||
- 障碍物为锥桶(黑色三角形标记)
|
||||
|
||||
---
|
||||
|
||||
## 四、竞赛车模与硬件规范
|
||||
|
||||
### 4.1 车模
|
||||
|
||||
仅允许使用 **OriginCar 系列智能机器人套件**:
|
||||
|
||||
| 特性 | OriginCar | OriginCar Pro |
|
||||
|------|:---------:|:-------------:|
|
||||
| 结构 | 四轮阿克曼 | 四轮阿克曼 |
|
||||
| 算力 | RDK 系列 | RDK 系列 |
|
||||
| 传感器 | 单目相机、深度相机等 | 同左 |
|
||||
| 扩展 | 激光雷达、语音板、OLED 屏幕 | 同左 |
|
||||
| 系统 | 三层板机械结构 | 同左 |
|
||||
|
||||
### 4.2 主控板
|
||||
|
||||
**必须使用 RDK 系列**(可任选其一,数量不限):
|
||||
|
||||
| 型号 | 算力 | 特点 |
|
||||
|------|:---:|------|
|
||||
| **RDK X3** | 5 TOPS | 兼容树莓派接口,2.4G/5G WiFi,支持 4K60 编解码 |
|
||||
| **RDK X5** | 10 TOPS | 旭日5芯片,千元内最佳,大模型+视觉算法加持 |
|
||||
| **RDK S100** | 80/120 TOPS | 异构设计,兼顾感知推理与实时运动控制 |
|
||||
|
||||
### 4.3 传感器限制
|
||||
|
||||
| 部件 | 限制要求 |
|
||||
|------|----------|
|
||||
| **IMU(陀螺仪)** | 仅板载或最小外围电路插件模块;❌ 禁用 USB 外接;❌ 禁用九轴以上芯片 |
|
||||
| **里程计** | 仅用车载设备;❌ 禁用光流里程计 |
|
||||
| **激光雷达** | 单线 TOF:**VP100L** / **轮趣 N10** |
|
||||
| **深度相机** | **光鉴 Aurora930** |
|
||||
| **语音模块** | 不限(参考:亚博智能语音交互模块、双麦克风声音传感器等) |
|
||||
| **显示模块** | 不限(建议 ≤7 寸) |
|
||||
| **电池** | 建议 ≤3500mAh 安全电池 |
|
||||
| **机电模块** | 不限,可自行设计加装,但必须为**车载模式** |
|
||||
|
||||
---
|
||||
|
||||
## 五、软件平台
|
||||
|
||||
### 5.1 NodeHub(方案提交平台)
|
||||
|
||||
- 统一竞赛方案提交平台
|
||||
- 支持方案**分阶段提交**(赛前备案 + 赛后终版)
|
||||
- 保留版本记录,支持公开/部分公开/仅赛事可见
|
||||
|
||||
### 5.2 RDK Studio(开发工具)
|
||||
|
||||
- 面向 RDK 平台的易用性开发工具
|
||||
- 目标:**5分钟完成算法方案演示**
|
||||
- 支持从演示方案平滑扩展为完整应用
|
||||
- 下载地址:https://developer.d-robotics.cc/rdkstudio
|
||||
|
||||
### 5.3 方案提交阶段
|
||||
|
||||
| 阶段 | 时间 | 性质 | 内容要求 |
|
||||
|------|------|:--:|------|
|
||||
| **初版方案(备案)** | 赛前 | 必需 | 队伍信息(统一ID规范)、RDK型号、技术路线概述;**不作为评分依据** |
|
||||
| **终版方案** | 赛后3个工作日内 | 推荐 | 规则适配调整、关键技术实现、工程经验总结、问题及解决思路 |
|
||||
|
||||
---
|
||||
|
||||
## 六、比赛任务
|
||||
|
||||
### 6.1 前置任务(5分钟)
|
||||
|
||||
赛前完成:竞赛方案、硬件搭建、控制程序、平台软件、通信测试等部署。
|
||||
|
||||
### 6.2 主任务流程
|
||||
|
||||
```mermaid
|
||||
graph LR
|
||||
P[发车点 P] -->|子任务1| QR[任务发布点<br/>扫描二维码]
|
||||
QR -->|子任务2| B[通道区 B]
|
||||
B --> C[诊疗区 C<br/>环形通道巡航]
|
||||
C --> B2[通道区 B]
|
||||
B2 -->|子任务3| P2[返回停车点 P]
|
||||
```
|
||||
|
||||
#### 子任务1 — 任务获取
|
||||
- 从 **P 点**自主行驶至**任务发布点**
|
||||
- 用相机扫描**二维码标记牌**获取任务信息
|
||||
- 公布任务信息(三选一):
|
||||
1. 语音文字播报 / 提示音播报
|
||||
2. 车载屏幕显示
|
||||
3. 语音播报 + 屏幕显示
|
||||
|
||||
#### 子任务2 — 通道巡航与图生文
|
||||
- 沿黄色通道**顺时针或逆时针**行驶一周
|
||||
- 观察到**人形立牌**时,通过大模型**图生文**反馈识别结果
|
||||
- 大模型流程:`图像 → OriginCar(RDK) → 本地/云端大模型 → 文字显示/语音播报`
|
||||
- 只能在黄色通道上行驶
|
||||
|
||||
#### 子任务3 — 返航停车
|
||||
- 从通道返回 **P 点**(车模 ≥ 2/3 在蓝白区域内)
|
||||
- 到达标准:车模 ≥ 1/2 在指定区域内停住
|
||||
|
||||
### 6.3 罚时规则
|
||||
|
||||
| 子任务 | 违规行为 | 罚时 |
|
||||
|:------:|------|:----:|
|
||||
| **子任务1** | 触碰障碍物 | +10s/次(上限 30s) |
|
||||
| | 未到达任务发布点 | +50s |
|
||||
| | **子任务1 总罚时上限** | **50s(记为 A1)** |
|
||||
| **子任务2** | 触碰障碍物 | +10s/次(上限 30s) |
|
||||
| | 未完成图生文 | +20s |
|
||||
| | 驶出黄色通道(≥1/2 在外) | +10s/次(上限视情况) |
|
||||
| | **子任务2 总罚时** | **记为 B1** |
|
||||
| **子任务3** | 触碰障碍物 | +10s/次(上限 30s) |
|
||||
| | 未回到 P 点 | +50s |
|
||||
| | **子任务3 总罚时上限** | **50s(记为 C1)** |
|
||||
| **通用** | 误发车第一次 | 警告(不计时) |
|
||||
| | 误发车第二次 | **+20s(记为 T1)** |
|
||||
| | 行为特别严重 | 警告或取消资格 |
|
||||
|
||||
### 6.4 计分公式
|
||||
|
||||
$$
|
||||
\text{竞赛用时} = \text{实际计时} + A_1 + B_1 + C_1 + T_1
|
||||
$$
|
||||
|
||||
**排名**:按竞赛用时最短为优胜。
|
||||
|
||||
---
|
||||
|
||||
## 七、竞赛规则
|
||||
|
||||
### 7.1 发车流程
|
||||
|
||||
1. 每场仅 **1 支队伍、1 台车模** 竞赛
|
||||
2. 最多 **5 名队员** 上场,指定 1 人为发车员
|
||||
3. 上场后有 **5 分钟** 准备时间
|
||||
4. 裁判倒计时 "3、2、1,发车" 后启动
|
||||
5. 总限时 **180 秒**,超时即终止
|
||||
|
||||
### 7.2 重新启动
|
||||
|
||||
- 车模冲出场地或失控时可请求重启
|
||||
- **次数不限**,但计时不停止
|
||||
- 发车员将车模放回发车区重新启动
|
||||
|
||||
### 7.3 比赛结束条件
|
||||
|
||||
- 180 秒计时完毕
|
||||
- 参赛队主动提出结束(经裁判确认)
|
||||
- 裁判吹哨后,发车员立即停车,车模交回检录区
|
||||
|
||||
---
|
||||
|
||||
## 八、技术要点
|
||||
|
||||
| 技术领域 | 说明 |
|
||||
|------|------|
|
||||
| **ROS 2 通信** | 基于 ROS 2(TROS.B/ROS 2)实现 RDK ↔ STM32 通信,传感器采集与运动控制 |
|
||||
| **视觉识别** | 二维码检测与解码、传统计算机视觉技术 |
|
||||
| **目标检测** | YOLO 等算法,RDK 可同时处理多目标检测与实时跟踪 |
|
||||
| **SLAM** | 同时定位与建图(Localization + Mapping),路径规划 |
|
||||
| **大模型应用** | 本地大模型部署或云端大模型对接,实现图生文功能 |
|
||||
|
||||
---
|
||||
|
||||
## 九、联系方式
|
||||
|
||||
| 渠道 | 信息 |
|
||||
|------|------|
|
||||
| 竞赛 QQ 群 | **851643123** |
|
||||
| 竞赛飞书技术群 | 见原文附图 |
|
||||
| 公众号 | 卓晴老师、地瓜机器人、古月居 |
|
||||
|
||||
---
|
||||
|
||||
> 📌 **与本地工作空间的关系**:本工作空间 (`test_ws`) 基于 ROS 2 Humble + OriginCar 描述包 + Nav2 + SLAM Toolbox,正是该赛项的典型开发环境。可直接用于竞赛方案开发与验证。
|
||||
Reference in New Issue
Block a user