Zing Forum

Reading

From Zero to National Champion: A Complete Open-Source Solution for a ROS1 Visual Cruise Competition Robot

This article introduces a complete workspace for a ROS1 visual cruise competition robot that won the first prize in the China Robot and Artificial Intelligence Competition (CRAIC), with detailed analysis of its system architecture, core modules, navigation algorithms, and competition strategies.

ROS1机器人自主导航SLAM计算机视觉竞赛机器人激光雷达ICP定位PID控制
Published 2026-06-14 00:45Recent activity 2026-06-14 00:52Estimated read 5 min
From Zero to National Champion: A Complete Open-Source Solution for a ROS1 Visual Cruise Competition Robot
1

Section 01

Introduction / Main Floor: From Zero to National Champion: A Complete Open-Source Solution for a ROS1 Visual Cruise Competition Robot

This article introduces a complete workspace for a ROS1 visual cruise competition robot that won the first prize in the China Robot and Artificial Intelligence Competition (CRAIC), with detailed analysis of its system architecture, core modules, navigation algorithms, and competition strategies.

3

Section 03

Project Background and Competition Journey

In top-tier competitions like the China Robot and Artificial Intelligence Competition (CRAIC), new teams often face huge challenges. As a first-time participant, the author of this project competed against teams with legacy first-prize-winning code from previous years and strong opponents with three years of experience at the university. Over an intense 20-day development and debugging cycle, the author built a complete competition robot system from scratch, eventually standing out in fierce on-campus competition (only one team per school can win the national first prize) and securing the national first prize with an absolute lead that broke the competition's historical record.

This open-source project is not just a code repository but also a valuable summary of practical experience in competition robot development.


4

Section 04

Overall System Architecture

This workspace is built on ROS1 (Melodic version recommended) and creates a complete competition-level robot system around the Abot wheeled mobile robot platform. The overall architecture uses a classic layered design:

5

Section 05

Hardware Driver Layer

  • abot_base: Chassis serial port driver and odometry fusion, supporting wheel speed odometry and IMU data fusion
  • abot_imu: IMU data collection and raw message publishing, with Madgwick filtering for attitude estimation
  • lidar_filters: LiDAR data filtering to improve the quality of perceptual data
6

Section 06

Perception and Localization Layer

  • robot_slam: Integrates gmapping mapping, map loading, and navigation functions
  • jie_ware: Custom LiDAR localization module lidar_loc, using ICP registration algorithm instead of traditional AMCL
  • Visual Module: Includes multiple visual function packages such as find_object_2d object recognition, AR Tag tracking, flame detection, and face recognition
7

Section 07

Planning and Control Layer

  • pid_follow_planner: Custom PID path-following local planner, which is one of the system's core competitive advantages
  • move_base: Global path planning and navigation framework
8

Section 08

Task Scheduling Layer

  • robot_slam: Multi-waypoint cruise, task node encapsulation, competition process orchestration
  • track_tag: AR Tag tracking and shooting trigger
  • robot_voice: Speech recognition, TTS speech synthesis, and voice assistant