To create FireBot, we turned to an agile development and prototyping process known as SCRUM. We conducted three "sprints": two week sessions of work towards an iterated, integrated prototype of our design. The first sprint was devoted to ideation, testing, and modeling. The second sprint was devoted to first prototype and initial sensor testing and calibration. The third sprint was focused on reaching our minimum viable product, i.e. a robot that could navigate towards a flame, stop, and extinguish. We then conducted a final "mini sprint" to clean up the bot's appearance and add additional functionalities before demo day on Dec. 15th. Scroll down to read more about the individual sprints.
Sprint 1 consisted mostly of ideating, testing, and developing our project idea into something we thought we could pursue. SPRINT 1 GOALS
1.) Decide on preliminary design
2.) Decide on, purchase, and test flame sensors
3.) Decide on, purchase, and test extinguishing method
4.) build a sketch model
To accomplish these goals, We held two ideation sessions, and we each did preliminary sensor research and testing. Julia and Nicole made a cardboard sketch model, giving us a more physical idea of what we were looking for in our robot. We eventually decided on using a standard robot chassis, a water extinguishing system, and a combination of infrared distance and IR flame sensors to detect walls and light. We then purchased and tested our flame sensors using a candle flame and concluded that we would need something with higher sensitivity for room traverse capabilities.
Below: initial flame sensor testing
Below: initial extinguisher testing
This sprint We focused on creating a first pass integrated prototype. Based off of feedback we recieved in the previous sprint, we decided to add an infrared thermometer to our sensor suite for added sensitivity and distance guage abilities. We also narrowed our target feature set down to better scope the project.
1.) a moving chassis with first pass code
2.) a working initial sensor system
3.) a first pass protective box for mounting and protecting electronics
Claire acquired the chassis from a connection at an opensource robotics lab, and quickly began developing the code. Julia and Jules worked on the sensor suite, while Nicole designed and fabricated the first pass acrylic box. We were able to get the chassis moving completely via some preliminary testing code, and were able to make some intial steps towards a working sensor suite.
Below: Chassis responding to test code
Below: "looks like" video of prototype reacting to candle flame
This sprint, We focused on reaching MVP; to that end, our only stated goal was to reach MVP, which was "a simple bot that can navigate towards and extinguish small flames". Claire began by overhauling the electrical system: Mounting the provided plate to the chassis, mounting each of the boards to the provided plate, creating a soldered protoboard, installing plug 'n play molex connector system for each of the sensors and connecting them to the arduino, wiring the motors to the board and the arduino, wiring each of the boards to a power source and a switch, and color coding and labeling all wires. Jules and Claire then iterated upon and tested fully integrated and MVP code, deciding on using only MVP for sprint deliverable when it became apparent that our infrared thermometer had malfunctioned. Julia and Nicole created a new box and a functioning extinguisher system, and after some initial fit errors that were overcome with assistance from Claire, the parts were fitted and mounted to the chassis.
Below: Integrated code test
Below: Extinguisher assembly demo
Below: MVP Demo
With MVP reached, we had approximately 1 week to prepare for demo day.
1.) implement full code with a new infrared thermometer
2.) both wall and flame sensors
3.) deal with any previous sprint problems
4.) clean up the appearance of the bot.
During the previous sprint we had identified two issues with the extinguisher system, namely that it leaked water into the electronics, and it would jam. Julia and Nicole solved this by creating a new extinguisher assembly with improved angles of the bottle and servo, and mounted higher above the box, allowing us to place a lid, protecting the bot from water, and polishing the appearance of the bot. Jules and Claire then tested and implemented fully functioning extinguisher code and mechanically mounted all sensors to the box. With these actions complete, the bot was ready for Demo.
Below: Final Firebot demo video