Smart Rescue Device for Mine Workers
Objectives
- Mining industry comes to the category, where each and every parameter such as methane gas, high temperature, fire accidents and so on has to be monitored regularly.
- This information are sent to the control room, which would aid rescuers in devising a strategy and equipping themselves to carry out the rescue operation defensively in case of emergency evacuation.
- We can have a people counter that could automatically recognize the number of unrescued workers stuck inside the mines and the data is shared with Rescue team to successfully carry out their rescue operation.
Hardware used:
- MQ9 for Carbon monoxide level detection.
- MQ135 for smoke detection.
- GP2Y1010AU0F for dust level measuring.
- ADS1115 for analog to digital conversion.
- Raspberry Pi 3 as the controller.
- Pi cam v2 for People counter.
Software used:
- OpenCV for image processing.
- Playsound Library for voice commands.
- VNC viewer for taking Raspberry Pi in headless mode.
- Firebase database for storing data in the cloud for easy access.

Working Algorithm
- Initially the amount of carbon monoxide, smoke, and dust present in the air is detected using different sensors. These sensor values are continuously being monitored.
- Whenever any of these parameters exceeds its safety limit, it triggers the system and it also sends out some voice commands for the workers safety.
- Raspberry pi cam V2 is used to count the number of people entering and exiting the mine. These data are continuously being transferred to the cloud, which is easily accessible, by remote control room.
- For smoke detection, MQ135 is being used, for carbon monoxide detection, MQ9 is used and for dust level measurement GP2Y1010AU0F is being used. In addition to these, ADS1115S is used to convert analog values into digital and send it to Raspberry Pi via I2C compatible serial interface.
.jpg)
Hardware Design:
- All the components were soldered as per the circuit design on a prototype board as shown in the image.
- Buck converter was used to provide stable power supply to all the sensors and to give 5v input to the Raspberry Pi.
Preheating and Calibration:
MQ 135:
- First of all power up the module alone with a regulated 5VDC power supply.
- MQ-135 gas sensor have to be kept on continuously for its preheating time (over 48 hours) to get accurate readings.
MQ 9:
- MQ9 sensor needs a week of preheating time.
- Connect the power supply and leave for the required time until it gets ready.
- In clean air, after preheating, upload the following code and wait for about 15 minutes until R0 reaches a fixed value.
The outcome of the setup:
.png)
Working demo of the hardware setup:
Deploying voice command
- The python library playsound was used to play the voice command via the speaker in the Raspberry Pi to alert the mine workers during any Emergency situations.
- These voice commands were generated using IBM Watson. We programmed the system to get these audio files from the files system initially. Whenever there is detection of exceeding threshold limits of any of the parameters, these voice commands are generated.
.png)
Text to Speech Conversion
People Counter:
- The people counting were done using live Pi camera in OpenCV. Detection was done using SSD detector and Centroid Tracker in Raspberry Pi. We are using a SSD (Single Shot Detector) with a MobileNet architecture.
- A single shot is taken in general to detect objects or person present in an image. That is, one for generating region proposals, one for detecting the object of each proposal. MobileNet, as the name implies, is a DNN designed to run on resource constrained devices.
- Thus, SSD seasoned with a MobileNet should theoretically result in a faster, more efficient object detector. And then we used Centroid Tracker, one of the most reliable trackers out there.
- It computes the centroid of the bounding boxes which are the co-ordinates of the objects in an image. Once the co-ordinates are obtained by our SSD, the tracker computes the centroid of an object.
- A unique ID was assigned to every particular object that was detected, used for tracking over the sequence of frames.
.png)
Sending data to the cloud:
- All the sensor data are transferred to the database using Firebase library using python.
- Also the count of people is updated synchronously as the Pi Cam detected the presence of person. The latency between the sending and fetching of data from the Google Firebase database was very negligible and hence it is perfect for embedded system applications.
.png)
Working Demo:
The Whole system is powered with the help of a power bank or through adapter. Berg strips were used to easily insert the sensors on the perf board.