Careduino

Poštanska i telekomunikacijska škola Zagreb

Ideja projekta je da nakon napuštanja stana, na Blynk aplikaciji se uključi stanje Nisam u kući, te ako senzor detektira pokret, pali se svjetlo te automatski se šalje poruka na aplikaciju Detektirano je kretanje ili na mail, te se nakon 10 sekundi svjetlo automatski ugasi u cilju uštede energije dok nismo u stanu.

Izrada projekta

Slika prikazuje spoj senzora pokreta , Arduina MKR 1000 mikrokontrolera, tajmera i lampice.

Mobilna aplikacija

Slika predstavlja mogućnost postavke jesmo li u kući ili ne, te odabir slanja informacije ako se svijetlo upali na pokret. opcije su mail ili poruka na aplikaciju.

Shema projekta

Careduino se spaja senzor pokretan na Arduino MKR 1000,zatim na relej koji je namješten na 10 s svijetljenja te koji nakon upaljenog stanja šalje poruku o detektiranom pokretu. Na kraju je spojena lampica s relejom.

Shemu ovoga projekta možete preuzeti ovdje.

Arduino program

#define BLYNK_PRINT /*

#define BLYNK_PRINT Serial // Kada se napise 'Serial' aktivira se BLYNK_PRINT

#include  // Dodaje SPI
#include  // Dodaje WiFi101
#include  // Dodaje Blynk za Arduino MKR1000

char auth[] = "vas Blynk auth token"; // Variabla koja zadrzi Blynkov Auth Token
char ssid[] = "ime mreze"; // Variabla koja sadrzi ime mreze na koju se zelite spojiti
char pass[] = "lozinka mreze"; // Variabla koja sadrzi lozinku imreze na koju se zelite spojiti
char mail[] = "vasEmail@Email.com"; // Vasa Email adresa (ovo je opcionalno)

#define led 6 // 'led' se definira kao broj 6 (na pin-u broj 6 se palila LED dioda)
#define sensor 7 // 'sensor' se definira kao broj 7 (na pin-u 7 se prikljuci senzor)
#define blynk_signal 1 // 'blynk_signal' se definira kao broj 1 (na pin-u 1 Blynk salje signal ako niste doma)
//#define blynk_email 0 // 'blynk_email' se definira kao broj 0 (na pin-u 0 Blynk salje signal ako zelite da vam se obavjesti salju na email)

int blynk_email; // U ovu variablu ('blynk_email') Blynk ce poslati mjesto gdje zelite da vam se salju obavjesti (na Blynk ili vas Email)
int light_time = 0; // U ovu variablu ('light_time') sprema se vrijeme; kolko je dugo svjetlo upaljeno
int led_state = LOW; // U ovu variablu ('led_state') sprema se stanje pin-a 6 (prije je ovdje bila prikljucena LED dioda)

void setup() {
  Serial.begin(9600); // Postavlja brzinu prijenosa podataka u bitovima u sekundi, u ovom slucaju 9600
  pinMode(led, OUTPUT); // Postavlja mod pin-a 6 na OUTPUT (salje signal)
  pinMode(sensor, INPUT); // Postavlja mod pin-a 7 na INPUT (prima signal)
  Blynk.begin(auth, ssid, pass); // Povezuje Arduino na internet i na vasu Blynk aplikaciju
}

BLYNK_WRITE(V0) { // Dopusta Blynku da posalje podatke na pin 0
  switch(param.asInt()) { // Podatke pretvara u int (broj)
    case 1: // Ako je se dobije 1:
      blynk_email = 1; // 'blynk_email' se postavi kao 1
      break; // Funkcija se prekine
    case 2: // Ako je se dobije 1:
      blynk_email = 2; // 'blynk_email' se postavi kao 2
      break; // Funkcija se prekine
    default: // Inace:
      Serial.println("Error"); // Posalji poruku "Error"
  }
}

void loop() {
  Blynk.run(); // Pokrece Blynk

  if ((digitalRead(sensor) == HIGH) && (digitalRead(blynk_signal) == HIGH)){ // Ako pin-ovi 7 i 1 dobe signal:
    if (blynk_email == 2) { // Ako je 'blynk_email' jednak 2:
      Blynk.email(mail, "UPOZORENJE", "Detektirano kretanje u vasem domu!"); // Posalje se Email preko Blynka
    } else { // Inace:
      Blynk.notify("UPOZORENJE: Detektirano kretanje u vasem domu!"); // Salje se notifikacija na Blynk
    }
  }
  if ((digitalRead(sensor) == HIGH) && (led_state == LOW)) { // Ako pin 7 dobi signal i stanje pin-a 6 je LOW (ako je iskljucen):
    led_state = HIGH; // Stanje pin-a 6 se postavi na HIGH (ukljuci se)
    digitalWrite(led, led_state); // Posalje se signal na pin 6
    delay(8000); // Program se pauzira na 7s; ako se ovo ne ucini pin 6 se pali i gasi jer senzor konstantno salje signal u nasem slucaju signal se slao 7s
  }
  if ((digitalRead(sensor) == HIGH) && (led_state == HIGH)) { // Ili ako pin 7 dobi signal i stanje pin-a 6 je HIGH (ako je ukljucen):
    led_state = LOW; //  Stanje pin-a 6 se postavi na LOW (iskljuci se)
    digitalWrite(led, led_state); // Posalje se signal na pin 6 (ako se ovo ne ucini signal se ne ce osvjeziti i pin 6 ce biti upaljen kad ne bi trebao)
    delay(8000); // - || -
  }
  
  if (led_state == HIGH) { // Ako je stanje pin-a 6 HIGH:
    light_time += 1; // Zbroji 'light_time' sa brojem 1
  } else { // Inace:
    light_time = 0; // 'light_time' stavi na 0
  }

  if (light_time == 3600000) { // Ako je 'light_time' jednak 3600000 (3600s tj. 1h):
    if (blynk_email == 2) {
      Blynk.email(mail, "PODSJETNIK", "Vase svjetlo je upaljeno vec 60 min.");
    } else {
      Blynk.notify("PODSJETNIK: Vase svjetlo je upaljeno vec 60 min."); // Posalji notifikaciju na Blynk
    }
  }
  digitalWrite(led, led_state); // Posalje se signal pin-u 6; zbog ovoga pin 6 ostaje upaljen ili ugasen
}


Arduino program ovoga projekta možete preuzeti ovdje.

Autori

Projekt su izradili David Reca i Deni Dugošija uz mentorstvo Petra Trlajića iz Poštanske i telekomunikacijske škole Zagreb.

Projekt je prijavljen na temu: Internet of Things: Pametna rasvjeta.

Drugi projekti

Pametna rasvjeta – Zastora pomoću mobitela

Pametna rasvjeta – Zastora pomoću mobitela

Sustav pametne rasvjete baziran na prisutnosti korisnika

Sustav pametne rasvjete baziran na prisutnosti korisnika

Vanjska pametna rasvjeta – sensor

Vanjska pametna rasvjeta – sensor

Zvučna rasvjeta

Zvučna rasvjeta

Pametna rasvjeta za stan

Pametna rasvjeta za stan

Ambijetalno svjetlo

Ambijetalno svjetlo

Pametna rasvjeta

Pametna rasvjeta

Solarna energija

Solarna energija

Svjetlo u tami

Svjetlo u tami

Pametna rasvjeta (detektor zvuka)

Pametna rasvjeta (detektor zvuka)

Policijska sirena i oznaka Starta

Policijska sirena i oznaka Starta

Daljinsko upravljanje rasvjetom

Daljinsko upravljanje rasvjetom

Pali – gasi

Pali – gasi

Pametna rasvjeta – Music reacting circuit

Pametna rasvjeta – Music reacting circuit

Anti-theft

Anti-theft

Connect IT Pametni hodnik

Connect IT Pametni hodnik

Protuprovalni sustav

Protuprovalni sustav

Pametni stan

Pametni stan

Pametni tanjurić za šalicu

Pametni tanjurić za šalicu

Pametna kuća s Arduinom

Pametna kuća s Arduinom

Pametna kuća

Pametna kuća

Protuprovalno svjetlo u ormaru

Protuprovalno svjetlo u ormaru

Pametna rasvjeta

Pametna rasvjeta

Pametne osvijetljene stube

Pametne osvijetljene stube

Svijetliš u noći

Svijetliš u noći

Careduino

Careduino

Rainclock

Rainclock

Pljeskalica

Pljeskalica

Zebra

Zebra

Pametna rasvjeta informatika

Pametna rasvjeta informatika

Pametna rasvjeta

Pametna rasvjeta

Signalizacija

Signalizacija

Pametna rasvjeta

Pametna rasvjeta

Svjetlo za ugođaj

Svjetlo za ugođaj

Pametna rasvjeta

Pametna rasvjeta

Snimanje filma s mobitelom uz pomoć pametne rasvjete

Snimanje filma s mobitelom uz pomoć pametne rasvjete

Pametna ulična rasvjeta

Pametna ulična rasvjeta

Neka bude svjetlo

Neka bude svjetlo

Emotion light

Emotion light

Gasi letriku!

Gasi letriku!

Svjetlosni komunikator

Svjetlosni komunikator

iHouse

iHouse

Pametna rasvjeta s Arduinom

Pametna rasvjeta s Arduinom

Pametna rasvjeta kuće

Pametna rasvjeta kuće

Model kuće s pametnom rasvjetom

Model kuće s pametnom rasvjetom

Pametna rasvjeta – Zaštita kuće od provalnika

Pametna rasvjeta – Zaštita kuće od provalnika

Pametna rasvjeta na pljeskalački pogon

Pametna rasvjeta na pljeskalački pogon

Pametna rasvjeta

Pametna rasvjeta

Uređaj za mjerenje količine svjetlosti, vlage i temperature

Uređaj za mjerenje količine svjetlosti, vlage i temperature

Pametna budilica

Pametna budilica

Ambijentalna rasvjeta

Ambijentalna rasvjeta

Pametna garaža

Pametna garaža

Laserski brojač ljudi

Laserski brojač ljudi

Pametna vanjska rasvjeta

Pametna vanjska rasvjeta

Pametna rasvjeta

Pametna rasvjeta

Blynk pametna rasvjeta sa ESP8266

Blynk pametna rasvjeta sa ESP8266

Rasvjeta u igraonici

Rasvjeta u igraonici

Svjetionik

Svjetionik

IoT pametna rasvjeta ovisno o vremenu dana

IoT pametna rasvjeta ovisno o vremenu dana

Arduino smart light switch

Arduino smart light switch

Slabo pokretne osobe

Slabo pokretne osobe

RGB mixer

RGB mixer

Pametna rasvjeta

Pametna rasvjeta

Zujalica i svjetlo na senzor

Zujalica i svjetlo na senzor

Žuta i zelena soba

Žuta i zelena soba

Pametna rasvjeta

Pametna rasvjeta

Ako upališ, ugasi!

Ako upališ, ugasi!

Upozorenje na upaljena svjetla

Upozorenje na upaljena svjetla

GPS rasvjeta

GPS rasvjeta

RGB svjetlo

RGB svjetlo

Pametan parking

Pametan parking

Priprema, pozor, sad

Priprema, pozor, sad

Disco light

Disco light

Aurora Borealis

Aurora Borealis

Pametni hladnjak

Pametni hladnjak

Pametna rasvjeta

Pametna rasvjeta

Pametna rasvjeta u kući

Pametna rasvjeta u kući

Noćna rasvjeta

Noćna rasvjeta

Noćni prozor

Noćni prozor

Otvori me, zatvori me

Otvori me, zatvori me

House and garden lights

House and garden lights

IOT_Rasvjeta_4

IOT_Rasvjeta_4

Smart rasvjeta

Smart rasvjeta

IOT-Stubišni automat

IOT-Stubišni automat

Lego Arduino pametna rasvjeta

Lego Arduino pametna rasvjeta

IOT_Rasvjeta_2

IOT_Rasvjeta_2

IOT_Rasvjeta_1

IOT_Rasvjeta_1

Svjetlo za bicikl

Svjetlo za bicikl