Maze Robot

Maze Robot

Description

Following my freshman year of high school, I attended a robotics seminar at RIT. There, I built and programmed a robot that navigated a maze. The robot utilizes an Arduino UNO with an Arduino motor shield to power 2 servo motors for propulsion. The UNO also controls multiple sensors including an ultrasonic distance sensor, a custom touch sensor, and a color sensor. 

Design

All the components are mounted on two-tiered acrylic plates. The top tier holds the Arduino and Motor Shield, the breadboard, the distance sensor, and the On/Off switch,  The bottom level holds the color sensor, battery, and has two servo motors attached to it. To detect when the robot approaches walls, I designed a custom touch sensor. This sensor utilizes two pieces of bent aluminum wire and two aluminum hex rods. The rods are attached as the support between the two acrylic plates and have signal wires attached to them. The wires are screwed to the bottom plate with ground wires attached to them. When the robot reaches the wall, the bent wires deflect into the rods and close the loop between the signal and ground wires. The Arduino reads this change in signal current and knows it hit a wall. 

Top View.                                                               Bottom View

The coding for this robot was relatively simple. Each sensor with the exception of the custom contact sensor had its own library and predefined code that interpreted the individual signals. This allowed me to focus on the robot's response to each signal. The code varied between each task, but the general theme was completing different mazes that each utilized a different sensor. The final maze used all 3.

Comments