Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 7

BLOCKDIAGRAM:

POWER SUPPLY

SELF START

SW 16X2 LCD DISPLAY

N
MQ3
O
ALCOHOL SEN

N ALARM

RELAY DC MOTOR
CIRCUIT DIAGRAM:

IOREF 13
RESET 7
3.3V 6 VC C

VC C 5V 5 1
GND

16 X 2 LCD DISPLAY
2
VCC
GND 4 3
VEE
4
GND RS
GND 3 5
RW
ARDUINO UNO R3 6
EN
Vin 2 7
D0
8
D1
SW A0 11
BU Z Z ER
9
D2
10
D3
ALC A1 9
GPS RX
11
D4
12
D5
R ELAY A2 8
G P S TX
13
D6
14
D7
33pf
Y -A XI S A3 10
TR I G G E R
XTA L -1
VC C A4 11
EC H O
16MH Z
C R Y S TA L A5 1 TXD TXD
33pf
SW 1 0 RXD
10uf

R XD
LS1 VCC
GND R ST GND
VC C 5
3
8.2K 4
1
2

1N 4007
A LC O H O L S EN MQ 3 A1
GND MQ3
R ELAY

VC C
u ln 2 0 0 3

1 16
2N D PIN 1B 1C
2 15
2B 2C
GND 3 14
1

B R I D G E R E C TI F I E R 4 3B 3C 13
5 4B 4C 12
VC C 6 5B 5C 11
J2 7 80 5 R E G U L A TO R 6B 6C
- + 7 10
2 2 4 1 3 7B 7C
VIN VO U T
GND

1 8 9 VC C
GN D COM
2 20 o h m s
t o t ra n s f o rm e r
1000uf

1 04 p f
3

3 3p f
BUZZER
LED SW 1

BUZ ZER
VCC
GND S E L F S TA R T S W

CODE:
#include <LiquidCrystal.h>

LiquidCrystal lcd(2,3,4,5,6,7);

#define sensor A1

#define led 16

#define buz 11

#define sw 14

void setup()

Serial.begin(9600);

lcd.begin(16,2);

lcd.print("Alcohol Detector");

lcd.setCursor(0,1);

lcd.print(" Vehicle ");

delay(2000);
pinMode(sensor, INPUT);

pinMode(buz, OUTPUT);

pinMode(led, OUTPUT);

pinMode(sw, INPUT);

digitalWrite(sw, HIGH);

lcd.clear();

void loop()

float adcValue=0;

for(int i=0;i<10;i++)

adcValue+= analogRead(sensor);

delay(10);

}
float v= (adcValue/10) * (5.0/1024.0);

float mgL= 0.67 * v;

Serial.print("BAC:");

Serial.print(mgL);

Serial.print(" mg/L");

lcd.setCursor(0,0);

lcd.print("BAC: ");

lcd.print(mgL,4);

lcd.print(" mg/L ");

lcd.setCursor(0,1);

if((digitalRead(sw) == LOW)&&(mgL > 1.8))

lcd.print("Toxic ");

Serial.println(" Drunk");

digitalWrite(buz, HIGH);

digitalWrite(led, LOW);
}

// else

if((digitalRead(sw) == LOW)&&(mgL < 1.8))

lcd.print("Normal ");

Serial.println(" Normal");

digitalWrite(buz, LOW);

digitalWrite(led, HIGH);

if(mgL >1.8)

lcd.print("Toxic ");

Serial.println(" Drunk");

digitalWrite(buz, HIGH);

digitalWrite(led, LOW);

}
delay(100);

You might also like