Group members: Bryan Clingerman, Andrew McCoy

In this class, we were given the challenge to make a robot that could autonomously solve a maze and put a fire out. A group could either choose to solve a right or left-handed maze, and my group decided to solve the right-handed maze. The robot would use ultrasonic sensors, and stepper motors to traverse its way through the maze. Click here to learn more about how we used the ultrasonic sensor to operate a servo. The robot was also tasked with being able to extinguish a fire which could be done in many ways. My group decided to use an inferred sensor to turn on fans once it detected fire. Click here to learn more about the inferred sensor and how we used it to turn on fans.

Andrew McCoy’s Blog Post

Design Iteration One:

The whole inspiration for how our group built the robot came from a firetruck. You have the driver who sits on the left and the captain who sits in the passenger seat looking for the fire. With this in mind, we wanted to use the same technique with our Arduinos. The one on the left would be responsible for using the ultrasonic sensor and driving the stepper motors and the one on the right would use the inferred sensor to look for fire and put it out with the fans.

Design Iteration Two:

The next design iteration consisted of us customizing the robot by adding two pairs of LEDs two white and two red that flash back and forth simulating a firetruck. We also added a tension string to the bottom of the robot keeping the wheels from bowing out so they stay parallel.

Design Iteration Three:

The third and final iteration was cutting the two corners off the back of the posterboard to help shorten the swing on the robot so it doesn’t get caught on a wall when turning. Another thing we did was debugged our robot’s major fault which was the ultrasonic sensor would work and then all of a sudden read zeros. After checking the code, the sensor, and the Arduino board, We found that the issue was an internally broken wire to the echo pin which we replaced, and haven’t had a problem since.

Click here to see a video of our final robot successfully solving the maze and “putting out” a fire (we used a flashlight to simulate fire)

In this project, we learned how different sensors worked and how to intergrade them into other components to make a functioning robot. This project was also a great experience learning the C++ coding language and learning how to use several Arduino libraries like Stepper.h. In the code, we made our own void command library consisting of drive forward and turn right which allowed us to condense are void loop commands. We used several if/else statements embedded in each other performing based on sensor inputs. We used two Arduino unos one controlling the driving and one looking for the fire. Once the fire was detected, both Arduinos would read the input and stop/put the fire out respectfully. While it was a challenge with two boards, we learned how to intergrade them to where they do their own thing but rely on each other to get the job done.

My group was very proactive in getting the robot built quickly to have as much time as we needed to debug and tweak anything we needed to. Not only was this project good at teaching us how to work, build, and design as a team, but it also helped us develop problem-solving skills we would need in the industry. For example, we had an issue with the wheels not having grip so we fixed it by adding rubber bands as tires. Another example is the robot was so heavy, the motor mounts would bow out and therefore the wheels would be angled, we fixed that by adding a tension/support string to hold the motor mounts in. This project was a great taste into the engineering field and tons of fun building it! With more time my group would’ve added more customization and the ability to solve any maze it’s faced with.