Software

Software Flow Diagram


The signal flow graph above demonstrates how our robot will traverse a course, detect and extingish a flame.

Fire Detection Algorithm

Our fire detection system is designed using computer vision with the power of OpenCV, an open-source computer vision library. By using video and image processing, we analyzed the infrared lightwaves emitted by fire in order to train our system to be able to detect and track its presence in an image. We implemented our algorithm with Python.

 



The HSV profile of infrared light is detected in the example above, while sending the detection coordinates to the PIC microcontroller via UART communication. The coordinates provide us information on the flame's relative location to the robot.


Course Navigation

With the PIC32 Microcontroller as the brains of our locomotion system, we combined dead reckoning and encoder feedback to navigate through the course. Dead reckoning allowed us navigate to any position within the course by using the wheel's encoder data to measure the distance traveled relative to our starting position.

Object Avoidance

As we traverse the course, there will be several objects that will bar our path. Our solution to this problem is to create a system that will be able to detect said objects and maneuver around them. We use our front Infrared sensors to detect objects which then informs our microcontroller to perform the object avoidance algorithm.