Introduction: Smart Car Automation With E-Mail Notifications - IoT Using Arduino, ESP8266

About: Currently in 3rd yr. of my B.Tech degree in Electronics & Telecommunication Engineering from KIIT University, Bhubaneswar, India. A few programming languages at which I'm intermediate are C, C++, PYTHON. I…

This is an IoT based project implemented on the car. There is not much difference between the logic and process in this project and in real world. In this world of IoT, smart car is an uprising part of Internet of Things.

I have used different sensor and a micro-controller as simple as an Arduino and Python coding for e-mail notifications.

Step 1: Components Required

The following components are required for this project:

1) Arduino Uno

2) ESP8266

3) MQ-2 Gas Sensor

4) Flame Sensor

5) Ultrasonic Sensor

6) Bread Board & a few jumpers

Step 2: Accident Alert With E-Mail Notification & Location

For the accident case, I have used the Ultrasonic sensor. But the ideal sensors would have been either the vibration sensor or the Force dependent resistance which is very expensive.

So here we have connected the trigger pin to Digital pin 2 of the arduino and echo pin to digital pin 3.

We have set a threshold for the ultrasonic sensor, i.e. an intensity by which you can determine the seriousness of the accident whether its major or not. You'll get the GPS location as well. I have used Thingspeak as GPS. For precision you need to have GPS module.

The code for accident notifications are here as follows: (**Run the python code before you do the experiment to get e-mail notifications):

Arduino Code: https://github.com/debadridtt/Smart-Car-IoT/tree/master/accident

Python Code: https://github.com/debadridtt/Smart-Car-IoT/blob/master/accident-automation.py

For fetching intensity from the cloud:

Arduino Code: https://github.com/debadridtt/Smart-Car-IoT/tree/master/accident-intensity

P.S. Simultaneously both can't work as Arduino is incapable of multi-tasking.

Step 3: Breakdown / Fire With E-Mail Notification & Location

For the breakdown case, I have used the Gas sensor which can detect any smoke coming out from the engine or the battery. I fixed it near the bonnet.

So here we have connected the pin of the gas sensor to Analog pin 0 of the Arduino. We have set a threshold for the gas sensor, i.e. an intensity by which you can determine how bad is the breakdown. You'll get the GPS location as well. I have used Thingspeak as GPS. For precision you need to have GPS module.

The code for accident notifications are here as follows: (**Run the python code before you do the experiment to get e-mail notifications):

Arduino Code: https://github.com/debadridtt/Smart-Car-IoT/tree/m...

Python Code: https://github.com/debadridtt/Smart-Car-IoT/blob/...

For fetching intensity from the cloud: Arduino Code: https://github.com/debadridtt/Smart-Car-IoT/blob/...

P.S. Simultaneously both can't work as Arduino is incapable of multi-tasking.

Step 4: Automation of Car Parts

Next we come into the automation of the car parts. For example there is sudden deficiency in the amount of light in front of your vehicle and you fumbled while switching on the headlights which may cause any accident. In that case lets automate the headlights. or suppose it suddenly started raining heavily and you're driving fast, in that case its difficult to raise all the windows inside your car and you may crash into something even before switching on your wipers.

In the rain case you need a rain sensor, as per that set the threshold and let the wipers operate.

Algorithm for controlling wipers:

if (analogRead(Rainsensor)>100)

{

analogWrite(wipers,10) // say at an interval of 10 secs

}

else

{

AnalogWrite(wipers,1) // every second

}

For automation of headlights check this link:

https://github.com/debadridtt/Smart-Car-IoT/tree/master/headlight-automationus

Likewise we can use different sensors and keep us updated with the fuel level, battery life, quality of engine oil, etc.

Step 5: Daily Updates of Your Car With E-Mail Notifications

As I didn't have the required sensors, so I'm unable to mention them in the video. The connection of the pressure sensor is pretty easy. I've used it and I have uploaded the code. As a sample I've put the daily updates of the tires.

Like the tire you can install different sensors to get updates of your engine, battery,etc.

The following codes were used for E-Mail notification:(**Run the python code before you do the experiment to get e-mail notifications):

Arduino Code: https://github.com/debadridtt/Smart-Car-IoT/tree/master/tire-pressure

Python Code: https://github.com/debadridtt/Smart-Car-IoT/blob/master/tire-pressure-automation.py

For fetching intensity from the cloud:


Arduino Code: https://github.com/debadridtt/Smart-Car-IoT/tree/master/pressure-intensity

P.S. Simultaneously both can't work as Arduino is incapable of multi-tasking.

Step 6: The Compact Code

For all the codes visit the link given below:

https://github.com/debadridtt/Smart-Car-IoT