The Autonomous Bot utilized a 3-wheeled delta chassis powered by one Sabertooth 2x32
motor driver for two wheels and a Hercules driver for the third. Forward motion was
achieved by braking one wheel while moving the other two. However, smooth sideways
movements were difficult to implement due to differences in the PWM-to-RPM mappings
between the two driver models, causing unequal wheel speeds. As a workaround,
rotations were coded based on preset PWM values that produced equal speeds from
all three motors. To prevent potential encoder slippage errors, maximum motor
speeds were also limited to just 35% of their capabilities.
For positioning, the Autonomous Bot originally used a BNO055 module and
photoswitches to maintain heading and detect field lines during motion.
However, the photoswitches proved unreliable for consistent line sensing.
So the team replaced them with a rotary encoder on a dummy wheel to track
the bot's linear displacement along its direction of travel. By programming
motions based on precisely measured encoder counts between field points,
the bot could navigate accurately. While successful, this approach required
additional unnecessary rotations due to the 3-wheel chassis design. Overall,
the encoder provided robust positional tracking, compensating for the
limitations of the initial photoswitch approach.
The Autonomous Bot played a defined role in the competition.
It started in the designated zone, where it received normal
shuttlecocks one at a time from the Manual Bot. After receiving
a shuttlecock, it could throw it from Zone 1 or Zone 2. If it
succeeded in one normal throw, it was then permitted to receive
and throw valuable golden shuttlecocks from Zone 3, aiming to
land them in the cup for an instant win. The Autonomous Bot
therefore had to master receiving, positioning, and throwing
shuttlecocks in coordination with its Manual Bot teammate.