Each year, RoboJackets fields an entry in theRoboCup Small Scale League (SSL), a global competition where participants field a team of six autonomous soccer-playing robots. These robots coordinate among themselves to move around the field, dribble, pass, and score goals. In order to meet the performance requirements needed to play soccer, the members of RoboJackets have designed a complex embedded electronic system featuring multiple programmable devices all working in tandem to control the robot.
RoboCup robots each have five motors – one on each of the four omni-wheels on the drivetrain, and the fifth on the motor which dribbles the ball in front of the robot. The drivetrain is powered by brushless motors which require digital commutation to spin properly. RoboJackets takes a unique approach to this task by using a Field-Programmable Gate Array (FPGA) to generate the necessary motor control signals.
Each robot receives a velocity command from the global planner which makes coordinated strategic decisions among all robots on the team. These commands are passed over a 5GHz radio link to the on-board radio, and parsed by the central controller, the MTrain. The MTrain is a microcontroller platform that was initially designed as an upgrade to the commonly available MBed platform, and named as a reference to the hit song by the GTGs.
The MTrain manages the robot state, reads from sensors, computes control outputs, and sends kick commands to an external Kicker board. In order to manage the various functions simultaneously, the team utilizes a Real Time Operating System (RTOS). Utilizing the open-source software FreeRTOS, the students incorporated multi-threading to allow sensor reading and filtering at 200Hz without impacting critical robot functionality.