Autonomous Robot Takes to the Soccer Field to Aim, Pass, and Score

August 22, 2023 by Aaron Carman

To play a complex sport, this competitive robot uses multiple processors and local computer vision.

A group of engineering students from the Federal University of Pernambuco (FUP) in Recife, Brazil, have built an autonomous omnidirectional robot that can detect and grab a ball, pass, and score goals. What makes this particular robot special, however, is that it can perform all these tasks without a global camera system—only local vision. 


Soccer robot

The FUP SSL Vision Blackout robot packs a considerable amount of intelligence into a small robot, using a Jetson Nano and MCU to pass, shoot, and score goals. Image used courtesy of Nvidia

Many engineers and students alike may have undertaken a robotics project using computer vision to “see” the field. Typically, these robots rely on a global, top-down view of the field and a wireless link to perform computation and send simple commands to each bot. For the RoboCup Small Size League (SSL) Vision Blackout Technical Challenge, however, each bot must see the field for itself.

This article dives into the Brazilian team's project to both highlight the ingenuity of the aspiring engineers and give designers some inspiration for their next robotics project.


How the Soccer Robot Distributed Brainpower

To accomplish their task, the FUP team took a dual-controller approach to computer vision and player control. The team used an Nvidia Jetson Nano Developer Kit in conjunction with a single webcam to give the robot a sense of sight. In addition to object recognition, positioning, and decision-making, the robot responded to simpler commands sent to an STM32F7 microcontroller.


The robot’s flowchart highlights the benefits of a dual-processing setup

The robot’s flowchart highlights the benefits of a dual-processing setup, allowing the Jetson Nano to focus on complex control and computer vision while the ST MCU provides low-level control. Image used courtesy of IEEE

The ST MCU operates lower-level control of the system, easing the load on the Jetson Nano to achieve a frame rate of 30 FPS. The STM32 also uses inertial sensors to implement odometry for the robot and motor control for the omnidirectional robot.

In the end, the team's robot could find and grab the ball, score a goal, and pass to a teammate, with 80%, 80%, and 46.7% success rates, respectively, while only consuming 10.8 W of power. In the future, the students hope to upgrade to a Jetson Orin Nano to achieve faster processing and better frame rates with their robots.


A Bumpy Road to Navigation

The students faced several technical challenges behind the scenes of the RoboCup. With external vision systems, robots must play blind when computer vision drops outs, something that is quite difficult for a game where the ball can move up to 6.5 m/s.


Soccer robot grabbing ball

The curved path to the ball highlights the need for accurate and rapid motor control to prevent steering the robot off course. Image used courtesy of Nvidia

The team designed a method to correct the robot’s trajectory periodically to achieve accurate motor control. In a multi-player setting, the team also developed a method of operation for when the ball itself was occluded by another robot. The FUP team remarked on their robot’s FPS potential, mentioning that while their current bot operates at only 30 FPS, 70 FPS is fairly standard.


Building a Better Player

The SSL challenge illustrates new ways robots can be designed with edge computer vision and AI techniques. The engineering students intend to improve their design in the future with more complex localization techniques, such as Monte Carlo localization, and extra computing power afforded by newer processors. And while the FUP design primarily plays soccer, the techniques to make robots smaller and smarter at the SSL challenge can benefit many more designers, not just those looking to automate their favorite sport.