< Back to News

2021 NRC Competition

Saturday, May 8, 2021
Results for our Combat and AVC bots competing in the National Robotics Challenge.

This year, the team decided to continue on with the bots which were started last year to compete at the National Robotics Challenge (NRC). The National Robotics challenge is a yearly competition which comprises many different events. A full list of events and rules can be found in the competition manual here.

Last year we had started on bots for both the Autonomous Vehicle and Combat competitions. Unfortunately, progress was halted mid-spring semester due to Covid-19. At that time, we would have been in a bit of a rush to complete the bots in time for competition, but likely still could have completed them. The additional year of time gave us the chance to work through the weak points in various design aspects and further refine the bots. Eventually, we were able to get both bots competition-ready. Read on to see how it went!

Combat Competition
The purpose of this competition is to construct a 14" x 14" x 14" 3lb beetleweight robot. Two robots fight head-to-head in an enclosed 8’x8’ arena until one of the bots becomes immobilized. To avoid the possibility of a stalemate, a trapdoor opens along one of the walls at the 3-minute mark.

The robot we designed for this was a full-body spinning robot. It is circular and the entire robot is designed to spin at approximately 600rpm with a maximum angular rotation rate of around 1000rpm at full speed. The primary weapon is a titanium tooth sticking out of the side to hit the other robots. The outer ring is a strip of extremely durable spring steel, and the motor mounts are aluminum with fairly intricate designs for weight savings. The inside body of the bot is formed from a foam material which serves to absorb the impact of hits. On the top and bottom of the bot are panels of carbon fiber composite which hold and protect the foam inserts.

On the electrical and programming side of things, the bot uses an ESP32 as the main processor, and an Atmega328p on each motor to manage the speed. Angular position is calculated using feedback from a gyro sensor on a wide-range IMU. The direction the bot currently considers to be “forward” is indicated by a LED strip which illuminates blue when facing that direction. Communications are handled through an xBee which communicates with our custom remote controllers. All of the main components of the bot (main processor, IMU, xBee, voltage regulators) are built into a custom PCB which sits at the center of the bot. Each motor also has a custom speed controller board which receives commands for speed and varies the motor power to achieve the target value.

More information on this bot can be found on its project page.

Even though we had an additional year to work on this bot, we were still up against the deadline for completing it on time. This was somewhat due to the team deciding to make some improvements along the way to the design which took a bit longer than expected. Despite this, we were able to get the bot up and spinning before competition (it was a bit close though).

By the time we headed to the competition, everything seemed to be working but hadn't been able to test things thoroughly. So, we threw it in the arena for a test once we arrived, and it (mostly) worked! The main issue we observed was an incorrectly set offset which caused all driving commands to be off by a certain angle. We adjusted the code a bit and cleaned up some glitches we had seen in the limited testing but were unable to test them before the matches started. The matches went as follows.

  • First match: Vs Trine University (link). We were able to but together a strong first showing. Driving the bot wasn’t very intuitive due to the angle offset issue, but our expert driver (Alex) did a pretty good job. We won the match in about 3-minutes with a KO.
  • Second match: Vs University of Indianapolis (link). Didn't go quite as well. One of the wheels had a loose setscrew which made the bot even more difficult to control and also prevented it from reaching full speed. Because of this we weren’t able to score any solid hits. At three minutes, the trap door opened and the match ended a minute later with us accidentally driving into it.
  • Exhibition Match: Rematch Vs University of Indianapolis (link). This match did not count, but we wanted another match since the previous one didn’t go very well. This match went better with our bot shattering the opposing bot’s weapon within the first 15 seconds. The rest of the match consisted of our bot attempting to chase theirs around the arena. We had a hard time scoring a decent hit on them since our tooth fit very nicely into the gap where the weapon used to be. Eventually, we hit a wall and sadly our robot turned off. Since nothing was actually damaged, we believe there may have been a glitch that triggered the capacitive touch on/off button.

From these matches, our team ended up with the second-place award. We also were nominated for the Honda Innovation Award from the Combat Bot competition. This is a single award given to the team the Judges feel had the best design among all the various competitions through all the divisions. Once all teams had been evaluated, we were named the recipient of this award!

The goal of this competition is to design and build a vehicle to autonomously navigate around a course. The course begins at a starting line, loops around five stanchions, and ends at the starting location. Points are awarded based on speed of completing the course. Along the course are a hoop and ramp. Driving through the hoop or over the ramp will give additional points. The course layout is shown below.

For the car body, the team decided to reuse an old Traxxas E-Revo Brushless Edition RC car from a previous competition. This chassis is capable of very high speeds and handles well. There was some beat-up portions of the chassis from previous use, so these damaged components were replaced with stronger aluminum ones. From there, a platform for mounting the electronics was constructed and mounted on the original brackets for mounting the cover. Then the cover was fastened on top of everything.

For the control system, a combination of, GPS, IMU positioning, and tachometer feedback were used to establish the position on the course. At the core of the system was a Nvidia Jetson Nano running ROS. We chose this device since it has plenty of power for processing and coordinating all of the inputs to establish location on the course. The Jetson interfaced with an Arduino Nano 33 BLE which communicated with the sensors, steering servos, and drive motor speed controller. It also (most importantly) controls the underglow LEDs. The bot has preset waypoints on the coarse and is programmed to drive from one to the next. To help nail down the correct pathfinding algorithms and controls for driving, simulations within ROS were performed.

More information about this bot can be found on its project page.

Due to the Covid-19 pandemic, the AVC competition was moved to virtual. All teams were required to submit a single run of the bot through the course. We ran into some difficulties the week before the deadline both with the weather not cooperating and also some issues popping up with the control algorithms that we weren’t able to iron out in time. We were able to successfully complete the course by the deadline, but the speed wasn’t quite as fast as we had planned. Even so, our run was decent, and we were given the 1st place award for the college division.

Plans for Next Year
We are very happy with what we were able to accomplish, especially considering the challenges of this difficult year. But, as always, there is room for improvement should we decide to compete in the NRC again. Whatever path we go, we are excited for next year!