Skip to content

Nileena00/Kerala-IoT-Challenge

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

56 Commits
 
 
 
 

Repository files navigation

Kerala-IoT-Challenge

Kerala IoT Challenge 2021 is a program launched by Foxlab Markerspace in association with GTech-Group Of Technology Companies using the platform mulearn. The aim of this program is to bring 100 experts in IoT. It has 4 levels - includes challenges and projects.

About Me

Hey Folks! I'm Nileena, student of College of Engineering, Chengannur(Electronics and Communications).This challenge will help me to learn more about IoT and to apply it in everyday life.

Level 1

Level 1 is a 15 hours challenge contains 12 experiments and 2 assignments. This level gives basic knowledge about basic electronics, arduino programming. For level 1 challenge we are using Arduino UNO and its software Arduino IDE 1.8.15. You can Download & Install the Arduino IDE from https://www.arduino.cc/en/software Screenshot (105)

Exp 1 : Hello World LED Blinking

To blink the Led with a duration of 1 second.

Components Required

Arduino Uno Board - USB Cable - LED (Any Color) x 1 Nos - 1 KOHM Resistor X 1 Nos - BreadboardJumper Wires (Male to Male ) X 2 Nos

Circuit Diagram

image 20220126_210026

Code

int lp=12;
void setup() {
  pinMode(lp, OUTPUT);
}

void loop() {
digitalWrite(lp,HIGH);
delay(1000);
digitalWrite(lp,LOW);
delay(1000);
}

Output

The LED is blinking for every 1 second

<iframe width="560" height="315"

src="https://user-images.githubusercontent.com/97266374/151195012-cd43b14a-8094-4caa-a453-bbaabd8bb766.mp4"

frameborder="0"

allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture"

allowfullscreen></iframe>

Exp 2 : Traffic Light

In this traffic lights experiment, we use 3 LEDs with different colors rather than 1 LED

Components Required

Arduino Board x1 - USB Cable x1 - RED M5 LED x1 - YELLOW M5 LED x1 - GREEN M5 LED x1 - 1KΩ Resistor x3 - BreadBoard x1 - Jumper Wire xseveral

Circuit Diagram

image

20220127_093850

Code

int red =10; 
int yellow =11; 
int green =12;
void setup()
{
pinMode(red, OUTPUT);
pinMode(yellow, OUTPUT); 
pinMode(green, OUTPUT); 
}
void loop()
{
digitalWrite(green, HIGH);
delay(5000);
digitalWrite(green, LOW); 

for(int i=0;i<3;i++)
{
digitalWrite(yellow, HIGH);
delay(500);
digitalWrite(yellow, LOW);
delay(500);
} 

digitalWrite(red, HIGH);
delay(5000);
digitalWrite(red, LOW);
}

Output

Three LEDs are blinking like a traffic light with proper duration.

<iframe width="560" height="315"

src=" https://user-images.githubusercontent.com/97266374/151291779-0e19eadd-0216-495d-889f-d4c3cfa5425b.mp4"

frameborder="0"

allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture"

allowfullscreen></iframe>

Exp 3 : LED Chasing Effect

In this experiment, we compile a program to simulate LED chasing effect.

Components Required

Led x5 - Arduino board x1 - 1KΩ resistor x5 - Breadboard x1 - USB cablex1 - Breadboard wire x12

Circuit Diagram

image 20220127_110645

Code

int start=2;
int num=5;
void setup() {
  for(int i=start;i<start+num;i++)
  pinMode(i,OUTPUT);

}

void loop() {
  for(int i=start;i<start+num;i++)
  {digitalWrite(i,HIGH);
   delay(200);
  }
  for(int i=start;i<start+num;i++)
  {digitalWrite(i,LOW);
   delay(200);
  }
}

Output

LEDs are blinking by the prrogrammed pattern.

<iframe width="560" height="315"

src=" https://user-images.githubusercontent.com/97266374/151298668-1d4783e5-6ed6-41dd-a761-5ad7c28c652c.mp4"

frameborder="0"

allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture"

allowfullscreen></iframe>

Exp 4 : Button Controlled LED

To controll the LED by a button switch

Components Required

Arduino Uno Button Switch x1 - RED M5 LED x1 - 1KΩ Resistor x1 - 10KΩ Resistor x1 - Breadboard x1 - Jumper wires x6 - USB Cable x1

Circuit Diagram

image 20220127_114123

Code

int led=11;
int button=7;
int value;
void setup() {
  pinMode(button,INPUT);
  pinMode(led,OUTPUT);
}

void loop() {
  value=digitalRead(button);
  if(value==LOW)
  digitalWrite(led,LOW);
  if(value==HIGH)
  digitalWrite(led,HIGH);
}

Output

The LED is on whenever the button is pressed.

<iframe width="560" height="315"

src=" https://user-images.githubusercontent.com/97266374/151302429-b197b027-33d1-494a-bc0e-c6a84694866e.mp4"

frameborder="0"

allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture"

allowfullscreen></iframe>

Exp 5 : Buzzer

This experiment familarize with buzzer

Components Required

Arduino Uno - Buzzer x1 - Breadboard x1 - Breadboard Jumper Wire x2 - USB cable x1

Circuit Diagram

image 20220127_115255

Code

int buz=8;
void setup() {
  pinMode(buz,OUTPUT);
}

void loop() {
  digitalWrite(buz,HIGH); 
}

Output

The buzzer produces sound.

<iframe width="560" height="315"

src=" https://user-images.githubusercontent.com/97266374/151303510-aafd6f9f-d263-4527-a3e4-a745cab99c26.mp4"

frameborder="0"

allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture"

allowfullscreen></iframe>

Exp 6 : RGB LED

To used a RGB LED and making diifferent colours.

Components Required

Arduino Uno - USB Cable x1 - RGB LED x1 - Resistor x3 - Jumper Wires x5

Circuit Diagram

image 20220127_123147

Code

int redpin = 11;
int bluepin =10;
int greenpin =9;
int val;
void setup() {
  pinMode(redpin, OUTPUT);
  pinMode(bluepin, OUTPUT);
  pinMode(greenpin, OUTPUT);
}
void loop() 
{
for(val=255; val>0; val--)
  {
   analogWrite(11, val);
   analogWrite(10, 255-val);
   analogWrite(9, 128-val);
   delay(1); 
  } 
}

Output

The RGB LED starts to blink within the range of 0 to 255.

<iframe width="560" height="315"

src=" https://user-images.githubusercontent.com/97266374/151308331-4938d857-6048-4c2d-957e-ae9718b31b0f.mp4"

frameborder="0"

allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture"

allowfullscreen></iframe>

Exp 7 : LDR Light Sensor

The intensity of LED light is gradually increasing as the darkness increases. It uses photodiode.

Components Required

Arduino Uno Board - Photo Resistor - Red M5 LED - 10KΩ Resistor x1 - 1KΩ Resistor x1 - Breadboard - Jumper Wire x5 - USB cable

Circuit Diagram

Screenshot_20220128-104035_Chrome 20220128_093345

Code

int diode=0;
int led=11;
int value=0;
void setup()
{
pinMode(diode,INPUT);
pinMode(led,OUTPUT);
Serial.begin(9600);
}
void loop()
{
value=analogRead(diode);
Serial.println(value);
if(value>600)
analogWrite(led,value/4);
else
analogWrite(led,value/40);
delay(10);
}

Output

The LED brightness increases with increase in darkness

<iframe width="560" height="315"

src=" https://user-images.githubusercontent.com/97266374/151495564-c573c75a-3752-461f-bb8f-cf511c76fd10.mp4"

frameborder="0"

allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture"

allowfullscreen></iframe>

Exp 8 : Flame Sensor

To beep buzzer when there is a flame. We are using Infrared Receiver (IR )for detecting Flame.

Components Required

Arduino Uno Board - Flame Sensor - Buzzer - 10K Resistor - Jumper Wire x6 - USB cable

Circuit Diagram

Screenshot_20220128-122706_Chrome 20220128_122358

Code

int IR=0;
int Buz=9;
int value=0;
 void setup() 
{
  pinMode(Buz,OUTPUT);
 pinMode(IR,INPUT);
 Serial.begin(9600);
 } 
void loop() 
{ 
  value=analogRead(IR);
  Serial.println(value);
  if(value>=600)
  {  
   digitalWrite(Buz,HIGH); 
   }else 
   {  
     digitalWrite(Buz,LOW); 
    }
   delay(500); 
}

Output

The buzzer produce sound whenever there is a flame present near the IR module.

<iframe width="560" height="315"

src=" https://user-images.githubusercontent.com/97266374/151501529-f1353393-95f8-4dcd-a30d-20aa8caa7491.mp4"

frameborder="0"

allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture"

allowfullscreen></iframe>

Exp 9 : LM35 Temperature Sensor

To obtain and print the current temperature using LM35

Components Required

Arduino Uno Board x1 - LM35 x1 - Breadboard x1 - Breadboard Jumper Wire x5 - USB cable

Circuit Diagram

Screenshot_20220128-130850_Chrome 20220128_130639

Code

int lm35=0;
int value=0;
 void setup() 
{
 pinMode(lm35,INPUT);
 Serial.begin(9600);
 } 
void loop() 
{ 
  value=analogRead(lm35);
  float data=(125*value)>>8;
  Serial.print("temp= ");
  Serial.println(data); 
  delay(1000); 
}

Output

The temperature in degree Celcius is displayed on Serial Monitor.

<iframe width="560" height="315"

src=" https://user-images.githubusercontent.com/97266374/151506980-6d7344f1-1e31-4498-8bae-5b3659478a3b.mp4"

frameborder="0"

allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture"

allowfullscreen></iframe>

Exp 10:IR Remote Control Using TSOP

To controll LED by TV remote(using IR reciever)

Components Required

Arduino Uno Board - Infrared Remote Controller - Infrared Receiver - LED x5 - 1KΩResistor x5 - Breadboard Wire - USB cable

Circuit DiagramScreenshot_20220128-190935_Chrome20220128_185358

Code

#include <IRremote.h>
int RECV_PIN = 11;
int led1=2;
int led2=3;
int led3=4;
int led4=5;
int led5=6;
IRrecv irrecv(RECV_PIN);
decode_results results;

void setup()
{
  Serial.begin(9600);
  irrecv.enableIRIn(); // Start the receiver
  pinMode(led1,OUTPUT);
  pinMode(led2,OUTPUT);
  pinMode(led3,OUTPUT);
  pinMode(led4,OUTPUT);
  pinMode(led5,OUTPUT);
}

void loop()
{
  if (irrecv.decode(&results))
    {
     Serial.println(results.value, HEX);
     switch(results.value){
      case 16:digitalWrite(led1,HIGH);
              delay(1000);
              digitalWrite(led1,LOW);
              break;
      case 2064:digitalWrite(led2,HIGH);
              delay(1000);
              digitalWrite(led2,LOW);
              break;
      case 1040:digitalWrite(led3,HIGH);
              delay(1000);
              digitalWrite(led3,LOW);
              break;
      case 3088:digitalWrite(led4,HIGH);
              delay(1000);
              digitalWrite(led4,LOW);
              break;
      case 528:digitalWrite(led5,HIGH);
              delay(1000);
              digitalWrite(led5,LOW);
              break;}
     irrecv.resume(); // Receive the next value
    }delay(10);
}

Output

LEDs are blinking by using the TV remote.

<iframe width="560" height="315"

src=" https://user-images.githubusercontent.com/97266374/151556645-4813e73e-5bf0-48c6-9876-8e5e358c09a6.mp4"

frameborder="0"

allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture"

allowfullscreen></iframe>

Exp 11 :Potentiometer analog Value Reading

In this experiment we are reading value(Analog Value) from a Potentiometer

Components Required

Arduino Uno Board - 10K Potentiometer -
Breadboard - Breadboard Jumper Wire x3 - USB cable x1

Circuit Diagram

image20220128_201241

Code

int pot=0;
void setup()
{
pinMode(pot,OUTPUT);
Serial.begin(9600);
}
void loop()
{
int val=analogRead(pot); 
Serial.println(val);
delay(1000);
}

Output

The analog values of the potentiometer is displayed on the Serial Monitor.

<iframe width="560" height="315"

src=" https://user-images.githubusercontent.com/97266374/151654145-df832359-985c-4144-8a2f-a94b1ea85d9b.mp4"

frameborder="0"

allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture"

allowfullscreen></iframe>

Exp 12 : 7 Segment Display

To display numbers on 7 segment display.

Components Required

Arduino Uno Board 1-digit LED Segment Display - 1KΩ Resistor - Breadboard - Breadboard Jumper Wires - USB cable

Circuit Diagram

image20220129_150440

Code

int a=2;
int b=3;
int c=4;
int d=5;
int e=6;
int f=7;
int g=8;
int h=9;
void digit0(void)
{
  digitalWrite(a,LOW);
  digitalWrite(b,LOW);
  digitalWrite(c,LOW);
  digitalWrite(d,LOW);
  digitalWrite(e,LOW);
  digitalWrite(f,LOW);
  digitalWrite(g,HIGH);
  digitalWrite(h,HIGH);
}
void digit1(void)
{
  digitalWrite(a,HIGH);
  digitalWrite(b,LOW);
  digitalWrite(c,LOW);
  digitalWrite(d,HIGH);
  digitalWrite(e,HIGH);
  digitalWrite(f,HIGH);
  digitalWrite(g,HIGH);
  digitalWrite(h,HIGH);
}void digit2(void)
{
  digitalWrite(a,LOW);
  digitalWrite(b,LOW);
  digitalWrite(c,HIGH);
  digitalWrite(d,LOW);
  digitalWrite(e,LOW);
  digitalWrite(f,HIGH);
  digitalWrite(g,LOW);
  digitalWrite(h,HIGH);
}void digit3(void)
{
  digitalWrite(a,LOW);
  digitalWrite(b,LOW);
  digitalWrite(c,LOW);
  digitalWrite(d,LOW);
  digitalWrite(e,HIGH);
  digitalWrite(f,HIGH);
  digitalWrite(g,LOW);
  digitalWrite(h,HIGH);
}void digit4(void)
{
  digitalWrite(a,HIGH);
  digitalWrite(b,LOW);
  digitalWrite(c,LOW);
  digitalWrite(d,HIGH);
  digitalWrite(e,HIGH);
  digitalWrite(f,LOW);
  digitalWrite(g,LOW);
  digitalWrite(h,HIGH);
}void digit5(void)
{
  digitalWrite(a,LOW);
  digitalWrite(b,HIGH);
  digitalWrite(c,LOW);
  digitalWrite(d,LOW);
  digitalWrite(e,HIGH);
  digitalWrite(f,LOW);
  digitalWrite(g,LOW);
  digitalWrite(h,HIGH);
}void digit6(void)
{
  digitalWrite(a,HIGH);
  digitalWrite(b,HIGH);
  digitalWrite(c,LOW);
  digitalWrite(d,LOW);
  digitalWrite(e,LOW);
  digitalWrite(f,LOW);
  digitalWrite(g,LOW);
  digitalWrite(h,HIGH);
}void digit7(void)
{
  digitalWrite(a,LOW);
  digitalWrite(b,LOW);
  digitalWrite(c,LOW);
  digitalWrite(d,HIGH);
  digitalWrite(e,HIGH);
  digitalWrite(f,HIGH);
  digitalWrite(g,HIGH);
  digitalWrite(h,HIGH);
}void digit8(void)
{
  digitalWrite(a,LOW);
  digitalWrite(b,LOW);
  digitalWrite(c,LOW);
  digitalWrite(d,LOW);
  digitalWrite(e,LOW);
  digitalWrite(f,LOW);
  digitalWrite(g,LOW);
  digitalWrite(h,HIGH);
}void digit9(void)
{
  digitalWrite(a,LOW);
  digitalWrite(b,LOW);
  digitalWrite(c,LOW);
  digitalWrite(d,HIGH);
  digitalWrite(e,HIGH);
  digitalWrite(f,LOW);
  digitalWrite(g,LOW);
  digitalWrite(h,HIGH);
}
 void setup()
{
int i;
for(i=2;i<10;i++)
pinMode(i,OUTPUT);
} 
void loop()
{
digit0();
delay(1000);
digit1();
delay(1000);
digit2();
delay(1000); 
digit3();
delay(1000);
digit4();
delay(1000); 
digit5();
delay(1000);
digit6();
delay(1000);
digit7();
delay(1000);
digit8();
delay(1000); 
digit9();
delay(1000); 
}

Output

Digits from 0 to 9 are diaplayed on the 7 segment display.

<iframe width="560" height="315"

src=" https://user-images.githubusercontent.com/97266374/151656391-e3719767-7486-42a9-beaa-ef252d2fd486.mp4"

frameborder="0"

allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture"

allowfullscreen></iframe>

Assignment

Experiment 1

Create a Thermometer using 6 LEDs and 1 LM35 Temperature Sensor

Components Required

Arduino Uno Board x1 - LM35 x1 - Breadboard x1 - Breadboard Jumper Wire x5 - USB cable - LED x6 - 1Kohm resistor x6

Circuit Diagram

20220129_185643 20220129_183516

Code

int lm=0;
int led1=8;
int led2=9;
int led3=10;
int led4=11;
int led5=12;
int led6=13;
void setup()
{
Serial.begin(9600);
}
void loop()
{
int val,dat;
val=analogRead(0);
dat=(125*val)>>8;
Serial.println(dat);
if(dat<30)
{
digitalWrite(led1,HIGH);
digitalWrite(led2,LOW);
digitalWrite(led3,LOW);
digitalWrite(led4,LOW);
digitalWrite(led5,LOW);
digitalWrite(led6,LOW);
}
else if(dat>=30 && dat<35)
{
digitalWrite(led1,LOW);
digitalWrite(led2,HIGH);
digitalWrite(led3,LOW);
digitalWrite(led4,LOW);
digitalWrite(led5,LOW);
digitalWrite(led6,LOW);
}
else if(dat>=35 && dat<40)
{
digitalWrite(led1,LOW);
digitalWrite(led2,LOW);
digitalWrite(led3,HIGH);
digitalWrite(led4,LOW);
digitalWrite(led5,LOW);
digitalWrite(led6,LOW);
}
else if(dat>=40 && dat<45)
{
digitalWrite(led1,LOW);
digitalWrite(led2,LOW);
digitalWrite(led3,LOW);
digitalWrite(led4,HIGH);
digitalWrite(led5,LOW);
digitalWrite(led6,LOW);
}
else if(dat>=45 && dat<50)
{
digitalWrite(led1,LOW);
digitalWrite(led2,LOW);
digitalWrite(led3,LOW);
digitalWrite(led4,LOW);
digitalWrite(led5,HIGH);
digitalWrite(led6,LOW);
}
else
{
digitalWrite(led1,LOW);
digitalWrite(led2,LOW);
digitalWrite(led3,LOW);
digitalWrite(led4,LOW);
digitalWrite(led5,LOW);
digitalWrite(led6,HIGH);
}
delay(1000);
}

Output

In this thermometer, the colour of ON LED changes as the temperature increases.

<iframe width="560" height="315"

src=" https://user-images.githubusercontent.com/97266374/151662889-52fc1cba-ab0e-49db-a4d1-1874586ed389.mp4"

frameborder="0"

allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture"

allowfullscreen></iframe>

Experiment 2

Create a Digital Dice using 7 Segment Display and Push Button

Components Required

Arduino Board - breadboard - 1Kohm x8 resistors - 10Kohm resistor - jumper wires - USB Cable - & segment display - Push Button

Circuit Diagram

20220129_173752 20220129_163711

Code

int a=2;
int b=3;
int c=4;
int d=5;
int e=6;
int f=7;
int g=8;
int h=9;
int button=10;
void digit1(void)
{
  digitalWrite(a,HIGH);
  digitalWrite(b,LOW);
  digitalWrite(c,LOW);
  digitalWrite(d,HIGH);
  digitalWrite(e,HIGH);
  digitalWrite(f,HIGH);
  digitalWrite(g,HIGH);
  digitalWrite(h,HIGH);
}void digit2(void)
{
  digitalWrite(a,LOW);
  digitalWrite(b,LOW);
  digitalWrite(c,HIGH);
  digitalWrite(d,LOW);
  digitalWrite(e,LOW);
  digitalWrite(f,HIGH);
  digitalWrite(g,LOW);
  digitalWrite(h,HIGH);
}void digit3(void)
{
  digitalWrite(a,LOW);
  digitalWrite(b,LOW);
  digitalWrite(c,LOW);
  digitalWrite(d,LOW);
  digitalWrite(e,HIGH);
  digitalWrite(f,HIGH);
  digitalWrite(g,LOW);
  digitalWrite(h,HIGH);
}void digit4(void)
{
  digitalWrite(a,HIGH);
  digitalWrite(b,LOW);
  digitalWrite(c,LOW);
  digitalWrite(d,HIGH);
  digitalWrite(e,HIGH);
  digitalWrite(f,LOW);
  digitalWrite(g,LOW);
  digitalWrite(h,HIGH);
}void digit5(void)
{
  digitalWrite(a,LOW);
  digitalWrite(b,HIGH);
  digitalWrite(c,LOW);
  digitalWrite(d,LOW);
  digitalWrite(e,HIGH);
  digitalWrite(f,LOW);
  digitalWrite(g,LOW);
  digitalWrite(h,HIGH);
}void digit6(void)
{
  digitalWrite(a,HIGH);
  digitalWrite(b,HIGH);
  digitalWrite(c,LOW);
  digitalWrite(d,LOW);
  digitalWrite(e,LOW);
  digitalWrite(f,LOW);
  digitalWrite(g,LOW);
  digitalWrite(h,HIGH);
}
void digit0(void)
{
  digitalWrite (a, HIGH);
  digitalWrite (b, HIGH);
  digitalWrite (c, HIGH);
  digitalWrite (d, HIGH);
  digitalWrite (e, HIGH);
  digitalWrite (f, HIGH);
  digitalWrite (g, HIGH);
  digitalWrite (h, HIGH);
}
long num;
int buttonstate;

void setup(){
pinMode(a, OUTPUT);
pinMode(b, OUTPUT);
pinMode(c, OUTPUT);
pinMode(d, OUTPUT);
pinMode(e, OUTPUT);
pinMode(f, OUTPUT);
pinMode(g, OUTPUT);
pinMode(h, OUTPUT);
pinMode(button,INPUT);
randomSeed(analogRead(0)); 
}

void loop(){
buttonstate = digitalRead(button);
if(buttonstate == LOW){
num = random(1,7); 
if (num == 1){
digit1();
delay(2000);
digit0();
}
if (num == 2){
digit2();
delay(2000);
digit0();
}
if (num == 3){
digit3();
delay(2000);
digit0();
}
if (num == 4){
digit4();
delay(2000);
digit0();
}
if (num == 5){
digit5();  
delay(2000);
digit0();
}
if (num == 6){
digit6();
delay(2000);
digit0();
}
}
}

Output

A digital dice is obtained using Push button

<iframe width="560" height="315"

src=" https://user-images.githubusercontent.com/97266374/151660538-4921fa6f-8c87-4aaf-8514-e38745d01161.mp4"

frameborder="0"

allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture"

allowfullscreen></iframe>

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published