The problem presented to the class was to build a fire fighting robot out of an Arduino that can navigate a maze in order to extinguish a flame. The maze or track that the robot had to navigate was in the shape of an L. The track had to be successfully maneuver two different ways, once turning right, left, then left again, and left, right, then right. At the end of the maze, the robot is intended to snuff out a flame. The robot was created using various materials that were given to us over the course of the semester. Among the sensors that we used were, an ultrasonic sensor for the robot to sense the walls of the maze and an infrared sensor for the robot to detect the flame at the end of the maze. The wheels used for the robot to move were printed using a Prusa Mini 3D Printer along with the stepper motor mounts and the ping pong ball holder. We were also given stepper motors to move the robot along with a fan and relay switch. The relay switch was connected to the fan and infrared sensor so the Arduino would know when the power the fan.
The problem that was given to us, we decided to build upon the assignments that we were given earlier in the semester. Link to my partners blog post.
I learned a lot about coding during this project. Before starting this project I knew little about coding in general. To code the robot, we used a stepper motor library for connivence. To simplify the code, we hard coded the two different track layouts into the code. When the robot drove into the first wall, it would turn to the left and take the reading from the ultrasonic sensor, then the robot would turn in the opposite direction and take another distance reading. After taking the two different readings the robot would then decide which track that was placed in front of it. If the reading from the left was shorter than the reading from the right, then the robot would determine the turns that it had to make in order to reach the end of the maze, and vise versa if the reading from the right was shorter than the reading from the left.
During the course of this project, we went through a few different changes. The wheels for the robot had to be reprinted several times due to the tolerance of the Prusa Mini that was being used. The motor hub of the wheel, where the wheel would fit onto the stepper motor was the reoccurring problem. The tolerance of the printer was off enough to make the motor hub too small to fit onto the stepper motor. We also intended to add a tone block that would mimic the sound of a fire engine siren, but do to a lack of time and complications with the circuits we could not make that addition.
This project was a success, however the final product was rough around the edges. If given more time the tone block would have become an addition to the final design of the robot. The wiring of the robot could have also been tidied up as well. In the end, this project allowed me to learn much about coding and design work.
Recent Comments