DTW-2-Arduino Lab - Manual
DTW-2-Arduino Lab - Manual
Aim: Control multi colored LED (Red, Blue, and Green) with temperature sensor
depending on Temperature value sensed by the Temp_Sensor.
Circuit Diagram:
Code:
int Initial_Temp = 0;
int celsius = 0;
int fahrenheit = 0;
int TempSens=A5;
int Red= 13;
int Blue= 12;
int Green= 11;
void setup()
{
pinMode(TempSens, INPUT);
Serial.begin(9600);
pinMode(Red, OUTPUT);
pinMode(Blue, OUTPUT);
pinMode(Green, OUTPUT);
}
void loop()
{
Initial_Temp = 30;
celsius = map(((analogRead(TempSens) - 20) * 3.04), 0, 1023, -40, 125);
fahrenheit = ((celsius * 9) / 5 + 32);
1
Serial.print(celsius);
Serial.print(" C, ");
Serial.print(fahrenheit);
Serial.println(" F");
if (celsius < Initial_Temp)
{
digitalWrite(Red, LOW);
digitalWrite(Blue, LOW);
digitalWrite(Green, LOW);
}
if (celsius >= Initial_Temp && celsius < Initial_Temp + 20)
{
digitalWrite(Red, LOW);
digitalWrite(Blue, LOW);
digitalWrite(Green, HIGH);
}
if (celsius >= Initial_Temp + 20 && celsius < Initial_Temp + 50)
{
digitalWrite(Red, LOW);
digitalWrite(Blue, HIGH);
digitalWrite(Green, LOW);
}
if (celsius >= Initial_Temp + 50)
{
digitalWrite(Red, HIGH);
digitalWrite(Blue, LOW);
digitalWrite(Green, LOW);
}
delay(1000);
}
2
LDR
Circuit:
Code:
const int LED = 13;
const int LDR = A0;
void setup()
{
Serial.begin(9600);
pinMode(LED, OUTPUT);
pinMode(LDR, INPUT);
}
void loop()
{
int ldrStatus = analogRead(LDR);
if (ldrStatus <=300)
{
digitalWrite(LED, HIGH);
}
else
{
3
digitalWrite(LED, LOW);
}
}
Smoke Sensor
Aim: Interface Smoke Sensor to activate the buzzer with a warning tone and RED
LED with the presence of smoke and OFF the buzzer and ON Green LED if there is
no smoke.
Circuit:
Code:
int redled=3;
int greenled=2;
int buz=4;
int sensor = A0;
int sensThre = 400;
void setup()
{
pinMode(redled, OUTPUT);
pinMode(greenled, OUTPUT);
pinMode(buz, OUTPUT);
pinMode(sensor, INPUT);
4
Serial.begin(9600);
}
void loop()
{
int sensValue=analogRead(sensor);
Serial.println(sensValue);
if (sensValue > 300)
{
digitalWrite(redled, HIGH);
tone(buz,10000,10);
digitalWrite(greenled, LOW);
}
else
{
digitalWrite(greenled, HIGH);
noTone(buz);
digitalWrite(redled, LOW);
}
}
Ultrasonic Sensor
Aim: Interface an Ultrasonic sensor to activate a buzzer and RED LED if the
distance between the sensor and object is less than 35 inches and activate Green
LED and OFF the buzzer when distance is more than 35 inches.
Circuit:
5
Code:
int trigger = 12;
int echo = 13;
int led = 7;
int led2 = 8;
int spk = 6;
long duration = 0;
int cm = 0;
int inch = 0;
void setup(){
Serial.begin(9600);
pinMode(trigger,OUTPUT);
pinMode(echo,INPUT);
pinMode(led,OUTPUT);
pinMode(led2,OUTPUT);
pinMode(spk,OUTPUT);
}
void loop(){
digitalWrite(trigger, LOW);
digitalWrite(trigger,HIGH);
digitalWrite(trigger, LOW);
duration = pulseIn(echo,HIGH);
cm = duration*0.034/2;
inch = duration*0.0133/2;
}
else
{
digitalWrite(led2,HIGH);
digitalWrite(led,LOW);
6
digitalWrite(spk,LOW);
delay(500);
}
Controlling Multiple LED’s
Aim: Interface 6 LED’s with different colors and simultaneously switch ON and
OFF.
Circuit:
Code:
int led1 = 2; // the LED1 is connected to Pin 2 of the Arduino
int led2 = 3; // the LED2 is connected to Pin 3 of the Arduino
int led3 = 4; // the LED3 is connected to Pin 4 of the Arduino
int led4 = 5; // the LED1 is connected to Pin 5 of the Arduino
int led5 = 6; // the LED2 is connected to Pin 6 of the Arduino
int led6 = 7; // the LED3 is connected to Pin 7 of the Arduino
void setup()
{
pinMode(led1, OUTPUT);
pinMode(led2, OUTPUT);
pinMode(led3, OUTPUT);
pinMode(led4, OUTPUT);
pinMode(led5, OUTPUT);
7
pinMode(led6, OUTPUT);
}
void loop()
{
digitalWrite(led1, HIGH);
digitalWrite(led2, LOW);
digitalWrite(led3, LOW);
digitalWrite(led4, LOW);
digitalWrite(led5, LOW);
digitalWrite(led6, LOW);
delay(250); // wait
digitalWrite(led2, HIGH);
digitalWrite(led1, LOW);
digitalWrite(led3, LOW);
digitalWrite(led4, LOW);
digitalWrite(led5, LOW);
digitalWrite(led6, LOW);
delay(250); // wait
digitalWrite(led3, HIGH);
digitalWrite(led2, LOW);
digitalWrite(led1, LOW);
digitalWrite(led4, LOW);
digitalWrite(led5, LOW);
digitalWrite(led6, LOW);
delay(250); // wait
digitalWrite(led4, HIGH);
digitalWrite(led2, LOW);
digitalWrite(led3, LOW);
digitalWrite(led1, LOW);
digitalWrite(led5, LOW);
digitalWrite(led6, LOW);
delay(250); // wait
digitalWrite(led5, HIGH);
digitalWrite(led2, LOW);
digitalWrite(led3, LOW);
digitalWrite(led4, LOW);
digitalWrite(led1, LOW);
8
digitalWrite(led6, LOW);
delay(250); // wait
digitalWrite(led6, HIGH);
digitalWrite(led2, LOW);
digitalWrite(led3, LOW);
digitalWrite(led4, LOW);
digitalWrite(led5, LOW);
digitalWrite(led1, LOW);
delay(250); // wait
}
Aim: Interface 6 different Color LED’s and Control them (ON and OFF) using IR
Sensor and the remote is used to function as below
On Pressing KEY-1- LED 1 ON and LED2, LED3, LED4, LED5, LED6 should OFF
On Pressing KEY-2- LED 2 ON and LED1, LED3, LED4, LED5, LED6 should OFF
On Pressing KEY-3- LED 3 ON and LED1, LED2, LED4, LED5, LED6 should OFF
On Pressing KEY-4- LED 4 ON and LED1, LED2, LED3, LED5, LED6 should OFF
On Pressing KEY-5- LED 5 ON and LED1, LED2, LED3, LED4, LED6 should OFF
On Pressing KEY-6- LED 6 ON and LED1, LED2, LED3, LED4, LED5 should OFF
On Pressing KEY-7- ALL LED’s should ON
Circuit:
9
Code:
#include<IRremote.h>
int RECV=11;
int led1=2;
int led2=3;
int led3=4;
int led4=5;
int led5=6;
int led6=7;
IRrecv irrecv(RECV);
decode_results results;
void setup()
{
pinMode(led1,OUTPUT);
pinMode(led2,OUTPUT);
pinMode(led3,OUTPUT);
pinMode(led4,OUTPUT);
pinMode(led5,OUTPUT);
pinMode(led6,OUTPUT);
Serial.begin(9600);
Serial.println("ENABLING IR");
irrecv.enableIRIn();
Serial.println("ENABLED IR");
}
void loop()
{
if (irrecv.decode(&results))
{
Serial.println(results.value, HEX);
irrecv.resume();
}
if(results.value==0xFD08F7)
{
digitalWrite(led1,HIGH);
digitalWrite(led2,LOW);
digitalWrite(led3,LOW);
digitalWrite(led4,LOW);
digitalWrite(led5,LOW);
digitalWrite(led6,LOW);
}
10
if(results.value==0xFD8877)
{
digitalWrite(led2,HIGH);
digitalWrite(led1,LOW);
digitalWrite(led3,LOW);
digitalWrite(led4,LOW);
digitalWrite(led5,LOW);
digitalWrite(led6,LOW);
}
if(results.value==0xFD48B7)
{
digitalWrite(led3,HIGH);
digitalWrite(led2,LOW);
digitalWrite(led1,LOW);
digitalWrite(led4,LOW);
digitalWrite(led5,LOW);
digitalWrite(led6,LOW);
}
if(results.value==0xFD28D7)
{
digitalWrite(led4,HIGH);
digitalWrite(led2,LOW);
digitalWrite(led1,LOW);
digitalWrite(led3,LOW);
digitalWrite(led5,LOW);
digitalWrite(led6,LOW);
}
if(results.value==0xFDA857)
{
digitalWrite(led5,HIGH);
digitalWrite(led2,LOW);
digitalWrite(led1,LOW);
digitalWrite(led3,LOW);
digitalWrite(led4,LOW);
digitalWrite(led6,LOW);
}
if(results.value==0xFD6897)
{
digitalWrite(led6,HIGH);
digitalWrite(led1,LOW);
digitalWrite(led2,LOW);
digitalWrite(led3,LOW);
11
digitalWrite(led4,LOW);
digitalWrite(led5,LOW);
}
if(results.value==0xFD18E7)
{
digitalWrite(led1,HIGH);
digitalWrite(led2,HIGH);
digitalWrite(led6,HIGH);
digitalWrite(led3,HIGH);
digitalWrite(led4,HIGH);
digitalWrite(led5,HIGH);
}
if(results.value==0xFD00FF)
{
digitalWrite(led1,LOW);
digitalWrite(led2,LOW);
digitalWrite(led3,LOW);
digitalWrite(led4,LOW);
digitalWrite(led5,LOW);
digitalWrite(led6,LOW);
}
}
PIR Sensor
Aim: Interface PIR sensor to detect the motion and activate the Buzzer, LED
Circuit:
12
Code:
int ALERT = 0;
int BUZZER = 13;
int PIR_Sen = 12;
void setup()
{
pinMode(PIR_Sen, INPUT);
pinMode(BUZZER, OUTPUT);
}
void loop()
{
ALERT = digitalRead(PIR_Sen);
if (ALERT == HIGH)
{
digitalWrite(BUZZER, HIGH);
}
else
{
digitalWrite(BUZZER, LOW);
}
delay(10);
}
13