The purpose of building this robot was to be able to solve a maze and put out a fire. For this project, I designed a firefighting robot with my partner using Arduino. The components of this project included designing and 3D printing a basic motor mount, hubs and wheels.  We also used to come circuits we designed earlier in the semester including an Ultrasonic Sensor Controlling a Servo Motor and a Flame Sensor and Relay partner, Tony dealt mostly with the hardware while I dealt mostly with the code.  At the end of the semester, we demonstrated how our robot worked by placing the robot in a simple maze and having the robot solve the maze and put out a fire without any human interaction. Initially, we would have liked the robot to turn left and right while sensing the walls. However, because this was a simple maze, we stuck with just having the robot turn right.

The robot was built piece by piece over the course of a semester. Starting with designing the wheels in hubs to fit the stepper motors. My partner and I each designed a wheel and hub. We ended up going with his design (first picture below) because it was more convenient at the time.

Image preview

Image preview

We then put all of the components together and made sure they still worked along slide other components. The robot chassis was then assembled. Some of the iterations we made included organizing the wires on the board with zip ties. Organizing the wires is important because it makes it easier to pick out any problems within the hardware. Although this didn’t fix the problem like how we intended, it improved the problem from what it previously was.

Image preview

The biggest challenge was putting everything together including the code. The wheels and hubs were printed specifically for the stepper motors used on the robot. The code was put together little by little starting with a basic drive forward code.

After it was working, it was saved and then the right turn code was added (written from scratch).

This process was continued with the sensor and fan until the code was finished. We had to start the code over a few times because a mistake happened somewhere, and we weren’t always able to figure it out. The more we had to start over, the better we understood the code and the basics of c++. In this code, we included the stepper.h library for out stepper motor code.

Eventually, we ran into a problem of the fan not coming on. The flame sensor was reading values, and the fan would click like it wanted to come on, but nothing would happen. After checking the code and wiring, I found that it was a dead wire. Fixing this problem allowed us to complete the code and finish the robot.

If we had more time to work on the robot, I would have liked to code the robot to turn left and be more accurate when sensing a fire. Making the wires a little bit neater will allow us to quickly see and fix a problem if we were to do this again in the future. I would have also liked the robot to have a LED screen or a buzzer to let everyone know when it sensed a fire. Overall, this was a very fun project. There were many obstacles that we crossed to get to the completed version of the robot. I am proud of everything that my partner and I accomplished this semester.

Robot in Action!

My partner’s blog post

ENGR 199 Final Project – Fire | Kerwin Yost (wcu.edu)