ABU Robocon 2023 - Fiery Dragon (FD) Rabbit Robot (RR)
Jan - June 2023
Role: FD RR SW Junior, FD Pit Crew, FD RR Backup Controller
Technologies: STM32, RM Motor Positioning, Trapezoidal Pathing, ToF Sensors, C, Embedded Systems
🏆 About ABU Robocon 2023
The theme for ABU Robocon 2023 was "Casting Flowers over Angkor Wat". Two teams (red and blue) compete in a 3-minute match. Each team operates two robots: a Elephant Robot (ER) and a Rabbit Robot (RR). The goal is to throw rings onto poles to score points.
The Rabbit Robot (RR) - the robot I worked on - is responsible for collecting rings from the base and throwing them onto the poles. It must navigate a small, confined area with high agility. The RR can move autonomously or be manually controlled, and its throws are crucial for winning the game.
Below is the official theme video explaining the rules in detail:
Overview
I was responsible for the embedded system programming of the RR (Rabbit Robot) for the 2023 ABU Robocon Hong Kong regional contest. The robot had to navigate a small field and shoot poles with high agility. I focused on three main innovations: RM wheelbase positioning, real-time trapezoidal pathing with trap-aiming, and ToF-based wall following pathing.
RM Wheelbase Positioning
Since the RR was too small to accommodate a traditional XY-encoder, I implemented a positioning system using the built-in readings from the RM motors of the four mecanum wheels. By integrating optional IMU data from our Vegvisir board, the system calculated the robot's position in real time. This method was used for all auto paths on both FD and WD RR robots.
Real-Time Trapezoidal Pathing and Trap-Aiming
I divided the game field into 12 areas connected by turning points (blue circles in the diagram). Using the current position (from RM positioning) and target coordinates, the robot calculated the shortest straight-line path in real time and executed it with trapezoidal velocity profiles for maximum speed. This allowed the robot to shoot from any point that maintained the correct distance to the pole, rather than being limited to fixed shooting zones.
ToF Pathing
To overcome the instability of RM positioning due to wheel slip, I developed a ToF-based pathing system using front and side ToF sensors. The difference between left and right ToF readings gave the angle error (corrected with PID), while the average gave vertical error. The robot moved horizontally using trapezoidal speed control. At corners, one sensor lost sight of the wall, triggering a 90° rotation around the corner, after which the robot resumed wall-following.
Test Results
- RM Wheelbase Positioning: Worked well at low speeds and without collisions. After impacts or high acceleration, wheel slip caused position shifts, but the shift was consistent, so both dragons continued using it for auto paths.
- Real-Time Trapezoidal Pathing: Limited to low acceleration to maintain accuracy, but still offered unparalleled flexibility - our robot could shoot from anywhere in the red zones (see image), while most teams had only 2-6 fixed shooting points.
- ToF Pathing: Stable but slow due to horizontal movement (mecanum wheels are slower horizontally). Used only for short distances; longer moves used traditional Bézier paths.
Summary & Future Improvements
We compensated for a weak shooter with agility, achieving similar speeds to top teams despite using mecanum wheels. However, stronger opponents with linear shooters and independent steering ultimately prevailed.
- RM Positioning: Can be merged into the wheelbase library and extended to support other wheel types.
- Trapezoidal Pathing: Game-specific, but the methodology is worth documenting for future years.
- ToF Pathing: Parts like wall-following and corner rotation can be passed down.
Reflection
I achieved my personal goal of testing and implementing ideas: RM positioning (first conceived during F6), real-time trapezoidal pathing, and ToF pathing. I believe we reached over 90% of the robot's potential. The team goal of winning the regional was not met, but I have no regrets - I gave my best. Better balance between work and rest could have improved mechanical design, as exhausted members couldn't innovate effectively.