Introduction: SafeT-Park System
This device will help protect parking structures by implementing three safety concepts into an IOT device.
Automated emergency response system, in the case of parking structure fires
Integrated temperature and altitude sensor to pinpoint the location of the fire
Activated pressure system to mitigate radiation of smoke
Step 1: Materials
1. laptop with MATLAB, Arduino, and Thingspeak instaled on it
2. SparkFun ESP8266 Thing device
3. SparkFun Altitude/Pressure Sensor Breakout - MPL3115A2
4. Female to female cables
5. Micro USB to USB cable
6. 3D printed parking garage
Step 2: Sign Up on ThingSpeak
First, sign up on thingspeak.com and make an account using a MATHWORKS account.
Then click on "my channels” and add a new channel, for each sensor used.
The Internet of Things (IoT) is a network of inter-connected objects ("connected devices" or "smart devices") able to collect and exchange data using embedded electronics, software, sensors, actuators, and network connectivity.
Step 3: Wiring and Hardware
Hookup the board as instructed in the picture above by using the female to female end cables.
Step 4: Programing the Hardware
1. Ensure correct inputs. Manipulate base values to set an appropriate base for graphs and calculations.
2. Map code to send to Thingspeak.com.
3. Enter WiFi location and Channel ID information.
4. Set Coding Cycle repeat for every 10 seconds. 5 second "timeout" set to reconfigure.
5. Adjust Pressure, Temperature, and Altitude Maximums to capture accurate data.
Step 5: Coding in Matlab
In order to make use of the inputs from the Arduino sensors, we need to use Matlab to receive the data from ThingSpeak. The command "thingSpeakRead()" pics up data from the thing speak channel, fields, and number of data points you input into the command. Once this is done you can use the data to develop any sort of output you need. I attached a pages file with my code which can be copied and pasted to get started.
For this project our outputs include:
- A table with the most recent temperature, altitude, and pressure readings
- 2 graphs which shows the temperature and pressure readings over the last 50 data points (in this case 500 seconds)
- A text message and email update with temperature, altitude, or pressure readings which you can choose from a pop up menu within Matlab
- Automatic fire warning if temperature of sensor exceeds a certain point (in this case 80 degrees F for testing purposes)
In order to receive messages/emails, you must setup a send_msg function prior to running this code.
This will be covered in the next slide
Step 6: Send_msg Function
In order to receive email and text updates you will have to define the function "send_msg". You will need to update the "mail" and "pwd" values with the email and password you want the update to be sent from. You will also need to define "recipients" as the number and email address you would like to receive the updates and "carrier" with the phone carrier of the recipient. Once this is done, the function is ready to run.