0% found this document useful (0 votes)
2 views

arduino code

This Arduino code utilizes a LiquidCrystal display and ultrasonic sensor to measure distance and indicate risk levels. Based on the measured distance, it displays messages on the LCD and controls LEDs and a buzzer to signal different risk levels. The system categorizes risk as Extreme, High, Medium, Low, or Safe, adjusting the output accordingly.

Uploaded by

peteosburn720
Copyright
© © All Rights Reserved
Available Formats
Download as TXT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
2 views

arduino code

This Arduino code utilizes a LiquidCrystal display and ultrasonic sensor to measure distance and indicate risk levels. Based on the measured distance, it displays messages on the LCD and controls LEDs and a buzzer to signal different risk levels. The system categorizes risk as Extreme, High, Medium, Low, or Safe, adjusting the output accordingly.

Uploaded by

peteosburn720
Copyright
© © All Rights Reserved
Available Formats
Download as TXT, PDF, TXT or read online on Scribd
You are on page 1/ 3

#include<LiquidCrystal.

h>
//Allows communication with alphanumerical liquid crystal displays (LCDs).
// we have to install it from Library Manager in the Arduino IDE.
int trig = 8;
int echo = 7;
long duration;
int distance;
int ledPin1=6;
int ledPin2=9;
int ledPin3=12;
int ledPin4=13;
int norisk=A2;
int buzz=A0;
LiquidCrystal lcd(11, 10, 5, 4, 3, 2);// (RS,E,D4,D5,D6,D7)
void setup(){
pinMode(trig, OUTPUT);
pinMode(echo, INPUT);
lcd.begin(16, 2);// lcd.begin(cols,rows)
Serial.begin(9600);// set the data rate bit per second for serial data
transmission.
pinMode(ledPin1,OUTPUT);
pinMode(ledPin2,OUTPUT);
pinMode(ledPin3,OUTPUT);
pinMode(ledPin4,OUTPUT);
pinMode(norisk,OUTPUT);
pinMode(buzz,OUTPUT);
lcd.begin(16,2);
lcd.print("Starting System");
delay(1500);
lcd.clear();// clear LCD
lcd.print("System On");
delay(4000);
}

void loop(){
digitalWrite(trig, LOW);
delayMicroseconds(5);
digitalWrite(trig, HIGH);
delayMicroseconds(10);// triger pin has to be kept high for 10us to initialize
measurement by sending US wave.
digitalWrite(trig, LOW);
//echo pin goes high for a period of time which will be equal to the time taken
for the US wave to return back to the sensor.
duration = pulseIn(echo, HIGH);
distance = duration*0.034/2;// converting to CM.

Serial.print("Distance:");
Serial.println(distance);

if (distance >= 40){


lcd.setCursor(0,0);// top left
lcd.print("Extreme Risk");
lcd.setCursor(0,11);
lcd.print("Glowing 4 LED");
digitalWrite(ledPin1, HIGH);
digitalWrite(ledPin2, HIGH);
digitalWrite(ledPin3, HIGH);
digitalWrite(ledPin4, HIGH);
digitalWrite(norisk, LOW);
tone(buzz,900);//tone(pin, frequency)
delay(100);
noTone(buzz);
delay(100);
}else if (distance >= 35){
lcd.setCursor(0,0);
lcd.print("High Risk");
lcd.setCursor(0,11);
lcd.print("Glowing 3 LED");
digitalWrite(ledPin1, HIGH);
digitalWrite(ledPin2, HIGH);
digitalWrite(ledPin3, HIGH);
digitalWrite(ledPin4, LOW);
digitalWrite(norisk, LOW);
tone(buzz,900);
delay(700);
noTone(buzz);
delay(700);
}else if (distance >= 25){
lcd.setCursor(0,0);
lcd.print("Medium Risk");
lcd.setCursor(0,11);
lcd.print("Glowing 2 LED");
digitalWrite(ledPin1, HIGH);
digitalWrite(ledPin2, HIGH);
digitalWrite(ledPin3, LOW);
digitalWrite(ledPin4, LOW);
digitalWrite(norisk, LOW);
tone(buzz,1200);
delay(100);
noTone(buzz);
delay(1200);
}else if (distance >= 20){
lcd.setCursor(0,0);
lcd.print("Low Risk");
lcd.setCursor(0,11);
lcd.print("Glowing 1 LED");
digitalWrite(ledPin1, HIGH);
digitalWrite(ledPin2, LOW);
digitalWrite(ledPin3, LOW);
digitalWrite(ledPin4, LOW);
digitalWrite(norisk, LOW);
tone(buzz,900);
delay(300);
noTone(buzz);
delay(2000);
}else{
lcd.setCursor(0,0);
lcd.print("Safe No Risk");
lcd.setCursor(0,11);
lcd.print("Glowing Safe LED");
digitalWrite(ledPin1, LOW);
digitalWrite(ledPin2, LOW);
digitalWrite(ledPin3, LOW);
digitalWrite(ledPin4, LOW);
digitalWrite(norisk, HIGH);
noTone(buzz);
}
}

You might also like