Thursday, November 21, 2024

Alcohol Proof Smart Vehicle

Comment errors or corrections found for this circuit, and get the chance to win big!

As per the accident studies, every year, approximately 1.5 lakh people die on Indian roads, on average, into 1130 accidents and 422 deaths every day or 47 accidents and 18 deaths every hour. In year 2015, 501,423 road accidents were recorded in India, of which 16,298 (3.2%) were due to driving under the influence of alcohol, The data shows that 6,755 people died and 18,813 injured in drink-driving accidents in 2015. As per the data of government, 12,256 road accidents related to drunk driving were reported in 2019. 12,000 such cases reported in 2018. Drunk driving causes 8,355 road accidents in 2020. Drunken driving resulted in 3,314 deaths. in 2021. A recent school bus accident happened in Haryana in May 2024. It is a drink-drive case of a driver that resulted in the death of 6 student and many students got injuries.

To avoid these road accidents due to alcohol consumption, an innovative prototype “Alcohol Proof Smart Vehicle” is developed where the vehicle will not start if driver is alcoholic. A smart Alcohol tracking is installed on the Vehicle which tracks the consumption of alcohol and the vehicle ON-OFF operation is linked with the status of alcohol consumption of vehicle. A driver has to pass the alcohol test before starting the vehicle. If the driver is drunk, the vehicle will not start and audio-visual alert indicates that the driver is in the possession of alcohol. A message will be displayed on the LCD indicating the whether driver should start the car or not. With the use of this prototype, So many lives of school students can be saved.

Construction and Working

To build this Alcohol Proof Smart Vehicle, we have used LCD I2C along with electronic components Arduino Uno, Alcohol Sensor, Bread Board, Arduino Uno Cable, LED, and Buzzer. The alcohol Sensor is connected with the A0 analogue pin of Arduino Uno. LCD I2C is used to display the status of the car whether drive or not along with the status of the driver whether sober or drunk. The LCD I2C pins SDA connected to A4 pin of Arduino Uno, SCL to A5 pin of Arduino Uno, Vcc to 5V pin of Arduino Uno, gnd to gnd pin of Arduino Uno. When alcohol level is 0.03% per 100ml of blood or more, LCD will display “Drunk” “Do not Drive” with buzzer and LED-based audio-visual alarm. If alcohol level is less than this level, LCD will display “ Sober”, ”Drive the car”.

- Advertisement -

Arduino Uno

The Arduino Uno is a complete, and breadboard-compatible board based on the ATmega328. The Arduino Uno can be powered via the Mini-B USB connection. The power source is automatically selected as the highest voltage source. The ATmega328 has 32 KB. Each of the 14 digital pins on the Nano can be used as an input or output, using pinMode(), digitalWrite(), and digitalRead() functions. They operate at 5 volts. Each pin can provide or receive a maximum of 40 mA and has an internal pull-up resistor.

I2C LCD

A typical I2C LCD display consists of an HD44780-based character LCD display and an I2C LCD adapter. These LCDs are ideal for displaying only characters. A 16×2 character LCD, for example, can display 32 ASCII characters across two rows. At the heart of the adapter is an 8-bit I/O expander chip – PCF8574. This chip converts the I2C data from an Arduino into the parallel data required for an LCD display. 

- Advertisement -

Alcohol Sensor

The alcohol sensor is technically referred to as a MQ3 sensor which detects ethanol in the air. When a drunk person breathes near the alcohol sensor it detects the ethanol in his breathe and provides an output based on alcohol concentration.

Part List

Arduino Uno, Bread Board, Jumper Wires, Nano Cable, LCD I2C, Alcohol Sensor, LED, Buzzer ,L298 Driver, BO Motor(200 RPM), tyres, Wooden Base, Battery Holder,18650 2000mah 3 cells, Jumper wires

Construction and Working

To build this Alcohol Proof Smart Vehicle, we have used LCD I2C along with electronic components  Arduino Uno, Alcohol Sensor, Bread Board, Arduino Uno Cable, BO Motors, and L298 Motor Driver. The alcohol Sensor is connected with A0 analogue pin of Arduino Uno. LCD I2C is used to display soil moisture status whether dry, humid or wet. LCD I2C pins SDA connected to A4 pin of Arduino Uno, SCL to A5 pin of Arduino Uno, Vcc to 5V pin of Arduino Uno, gnd to gnd pin of Arduino Uno. The buzzer is connected at D3 and LED is connected at the D4 pin of Arduino Uno.L298 Motor driver pins are connected at D7, D8, D11, D12. The Speed control pins are capped so speed is constant. We can change the speed of the vehicle by connecting speed control pins at D11, D12 of Arduino and add speed control instructions in the Arduino code. 0.03% per 100ml of blood or more, LCD will display “Drunk” “Do not Drive” with a buzzer and LED-based audio-visual alarm. The vehicle will not move. If alcohol level is less than this level, the LCD will display “ Sober”, and”Drive the car”. The vehicle will move.

Circuit Diagram

Testing

Make connections as per the circuit diagram. Connect Uno Cable with Computer. Connect Vcc of sensor to 5V and ground to ground pin of Arduino. Put Sensor alcohol. If the alcohol level is  0.03% per 100ml of blood or more, the LCD will display “Drunk” and “Do not Drive” with buzzer and LED-based audio-visual alarm.The vehicle will not start. If the alcohol level is less than this level, LCD will display “ Sober”, ”Drive the car”.The vehicle will start.

Source Code

#include <LiquidCrystal_I2C.h>

LiquidCrystal_I2C lcd(0x27,16,2);  // set the LCD address to 0x3F for a 16 chars and 2 line display

#define Sober 700   // Define max value that we consider sober

#define Drunk 701   // Define min value that we consider drunk

#define MQ3 0

#define ledPin 4

 int Buzzer = 3;

float sensorValue;  //variable to store sensor value

void setup() {

  Serial.begin(9600); 

  lcd.init();

  lcd.clear();         

  lcd.backlight(); 

  pinMode(ledPin,OUTPUT);

  pinMode(Buzzer,OUTPUT);

  pinMode(12,OUTPUT);

  pinMode(11,OUTPUT);

  pinMode(7,OUTPUT);

  pinMode(8,OUTPUT);

  pinMode(9,OUTPUT);

  pinMode(10,OUTPUT);

}

void loop() {

  lcd.setCursor(0,0);   

  lcd.print(“Alcohol Proof”);

  lcd.setCursor(3,1);  

  lcd.print(“Smart CAR”);

   delay(1000);

   lcd.clear();

   lcd.setCursor(0,0); 

  lcd.print(“Do Your Alcohol”);

  lcd.setCursor(0,1); 

  lcd.print(“Driving Test”);

  delay(1000); 

  lcd.clear();

  sensorValue = analogRead(MQ3); 

  Serial.print(“Sensor Value: “);

  Serial.print(sensorValue);

  if (sensorValue < Sober) {

       lcd.setCursor(0,0); 

      lcd.print(“SOBER”);

      lcd.setCursor(0,1); 

      lcd.print(“Start Your Car”);

      delay(1000);

        digitalWrite(12, LOW);

      digitalWrite(11, HIGH);

      analogWrite(9, 255);

      digitalWrite(7, LOW);

      digitalWrite(8, HIGH);

      analogWrite(10, 255);  

      digitalWrite(ledPin, LOW); 

       digitalWrite(Buzzer, LOW);

      lcd.clear();

      }    

 else  if (sensorValue > Drunk){

       digitalWrite(ledPin, HIGH); 

       digitalWrite(Buzzer, HIGH);

      digitalWrite(12, LOW);

      digitalWrite(11, LOW);

      digitalWrite(7, LOW);     

      digitalWrite(8, LOW);

      lcd.clear();

      lcd.setCursor(0,0); 

      lcd.print(“Drunk”);

      lcd.setCursor(0,1); 

      lcd.print(“Do not Drive”);

      delay(1000);

      lcd.clear();

  }

  else

  {

      digitalWrite(ledPin, LOW);

      digitalWrite(Buzzer, LOW);

      digitalWrite(12, LOW);

      digitalWrite(11, LOW);

      digitalWrite(7, LOW);     

      digitalWrite(8, LOW);

  }     

}

Author’s Prototypes


SHARE YOUR THOUGHTS & COMMENTS

EFY Prime

Unique DIY Projects

Electronics News

Truly Innovative Electronics

Latest DIY Videos

Electronics Components

Electronics Jobs

Calculators For Electronics