Robot Completing the Obstacle Course !

Arna Roy
Tumbller Robot in an Obstacle Course
5 min readApr 19, 2021

--

Hey Guys! So this is the final project we have been waiting for - our Elegoo Tumbller Robot navigating the Obstacle Course!!

Little disclaimer before we begin though : I tried my best within my capabilities - there are many many other ways to improve upon the written Code which will further enhance the Robot’s manoeuvres through the course !

Step 1

As we were provided with the schematic of the obstacle course, I set it up in person, and using arrows, I established a series of movements in their respective directions - required to reach the Ball Collection Zone, and subsequently exit towards the left.

Establish the Actions Required in the Arduino Code

Step 2

I extracted the majority of my knowledge from Tutorial 1 : Moving Control, as the navigation functions embedded in Motor.cpp (Forward, Back, Left, Right) suited my Robot’s needs the best. Lesson 2, 3, 4 and further focus on the use of the Ultrasonic and IR Sensors to make the navigation wholly autonomous, but for now, a little human intervention was necessary to decide upon the angles of turning, delays, stops etc.

However, I did use the Ultrasonic Sensor to trigger the beginning of the Robot’s journey - so that once I switched on the Robot and set up my camera, I would only have to lightly wave my hand in front of the Ultrasonic Sensor, and be able to quickly move out of the screen and not interfere with the video.

Arduino Code
Arduino Code

Step 3

After writing on Arduino, I plugged my Robot into the computer using a USB Cable, and uploaded the code onto the Arduino Nano @ COM 3.

As we will see in upcoming Videos #1 #2 and #3, the Robot successfully makes it to the Ball Collection Zone and crosses the End Line on the left boundary (yay!), with a little 0.5 second stop between manoeuvres, for us to appreciate each one individually.

I decided for the Robot to make her Right and Left turns in little increments (much like parallel parking), because my Stabiliser attachment would not allow for a seamless 90˚turn (which would have undoubtedly made her look a little more graceful !). Alternatively, I tried to eliminate the use of my Stabiliser and use the Self-Balancing Mode on the Robot, but the results were not as satisfactory as I had hoped, therefore I decided to sticky-tape it back on.

Complete Run-Through #1 but no Ping Pong Ball..

Video #1

I followed Easy Mode : where the first gap between the books is 30cm. I implemented the Hard Mode : 25cm gap for a couple of trail runs, but my Robot (as you will see above), is prone to veer to the left and was struggling to get through - I will give her the benefit of the doubt though because this brings back many Driving Lesson memories ….

Sometimes, the Robot also slightly touched the boundaries marked on the ground by tape, but mostly stayed within the allowable space. The undesired drift could be due to variance in the DC Motors’ performances - I studied the videos from a few trial-runs and tried to increase the speed of the motor in the direction of the veer in attempts to counteract this and re-align the Robot.

Complete Run-Through #2 but no Ping Pong Ball..

Video #2

I am so so relieved and happy that she made it to the end!! Nonetheless, it is a little upsetting that I was constrained by a wall behind me and could not adequately set-up my (rather large) Ball-Launching Mechanism, but it wasn’t a huge setback, I just dismantled it used my hands to hold it up ! My motto this year is to find the silver lining in everything - therefore physically holding the launcher up with my hands, gave me the chance to easily learn from my mistakes and modify it’s angle or height accordingly for the next turn.

The Robot is allowed to stop in the Ball Collection Zone for 20 seconds, but since I was quite unlucky with my Ping-Pong Ball launches, I changed her stationary time to 10 seconds before she made her way towards the exit on the left.

Complete Run-Through #3 but still no Ping Pong Ball..

Video #3

As I was still unable to land a Ping-Pong Ball after many good complete Obstacle Course run-throughs, I made a compilation of the rest of my attempts that were slightly better than the ones you have seen above.

Ping-Pong Ball Launches

Reflecting on my Work

This assignment was quite fun once I got accustomed with the Arduino Code and could instinctively change the programs to make amends in the Robot’s movements !

So, I want to say to my future self, just open the file and start reading the instructions - don’t be scared and put it off !! A line from my favourite show This Is Us is so so important to remember during a hard assignment : “ One day, we’d never been to the moon. It was impossible to fathom even walking on it. And the next day we’re walking on it.” Last semester, I barely knew Arduino, and today, my Robot is navigating an obstacle course - we get there eventually !!

Also, by designing my Ball Launching Mechanism, I overcame a long-lived fear of inflating balloons and having them potentially pop in my face - so I am very happy with this personal achievement, and I am walking away from this assignment with great satisfaction and much greater Arduino knowledge ❤

--

--

Arna Roy
Tumbller Robot in an Obstacle Course

Engineering with Management student at Trinity College Dublin. Blogs about my module of Engineering Design ! instagram.com/engineering.arna