Sustav pametne rasvjete baziran na prisutnosti korisnika

Udruga Mladi informatičari Strahoninca

Sustav pametne rasvjete baziran na prisutnosti korisnika osmišljen je kao
autonomni sustav koji nadzire prisutnost osoba ili objekata i prema potrebi pali i
gasi svijetlo.
Prototip koji smo izradili pomoću dva ultrazvučna senzora broji koliko je osoba u
sobi i na temelju toga se pali ili gasi svijetlo. Broj osoba prikazuje se i na
mobilnom uređaju pomoću alata Blynk, kako bi mogli pratiti stanje s udaljene
lokacije.
Sustav se može koristiti u bilo kojoj prostoriji kuće ili neke ustanove kao što je
prikazano u prototipu. Jednako tako sustav je primjenjiv i u drugim područjima,
kao što je javna rasvjeta ili pametno grijanje.

Video snimka

Izrada projekta

Glavni dio projekta uz “mozak” kojeg predstavlja Arduino MKR1000 su 2
ultrazvučna senzora i led dioda koja predstavlja rasvjetu. Najveći izazov bilo je
programiranje, usklađivanje i istovremena obrada podataka iz dva izvora.

Slika prikazuje gotov projekt u scenariju gdje se 2 osobe nalaze u prostoriji.
Blynk aplikacija prikazuje broj osoba u realnom vremenu.

Mobilna aplikacija

Blynk aplikacija se sastoji od jednog widgeta. Koristili smo brojač na kojem se
prikazuje trenutni broj ljudi u prostoriji.

Shema projekta

Kako smo u projektu koristili hc-sr04 ultrazvučne senzore dobro je napomenuti kako se oni spajaju i kako rade. Senzor se sastoji od 4 pina – 2 služe za napajanje, zatim echo i trig pinovi koji služe za slanje ultrazvučnog signala i bilježenja trenutka u kojem se signal vratio. Senzor emitira ultrazvučne valove (kao šišmiš i radar) i ako val pogodi objekt on se vraća te se na temelju bryine zvuka i vremena koliko je signal putovao računa udaljenost ili u našem slučaju prolaz kroz vrata.

Arduino program


#include 
#include 
#include 
#include 

#define BLYNK_PRINT SerialUSB
#define PIN_SVJETLO 7    // Pin na koji je spojena led dioda
#define PRAG 11
#define DEBUG false      // provjera za senzore 
#define SONAR_NUM 2      // broj senzora
#define MAX_DISTANCE 50 // Maximalna duljina (cm)


char auth[] = "authtoken iz blynk aplikacije";
char ssid[] = "wifi ap naziv";
char pass[] = "wifi lozinka";
byte broj_ljudi;  // broj ljudi u sobi

byte tablica_stanja[7][4] = { // tablica svih mogucih stanja
  {0, 1, 4, 0},
  {0, 1, 2, 1},
  {3, 1, 2, 1},
  {0, 0, 0, 0},
  {0, 5, 4, 4},
  {6, 5, 4, 4},
  {0, 0, 0, 0}
};

byte trenutno_stanje = 0; // trenutno stanje stanja
NewPing sonar[SONAR_NUM] = {
  NewPing(0, 1, MAX_DISTANCE), // trigger, echo pin, maximalna duljina
  NewPing(2, 3, MAX_DISTANCE)  // trigger, echo pin, maximalna duljina
};

void upaliSvijetlo() {
  //palimo svijetlo na pinu PIN_SVIJETLO
  digitalWrite(PIN_SVJETLO, HIGH);
}

void ugasiSvijetlo() {
  //gasimo svijetlo na pinu PIN_SVIJETLO
  digitalWrite(PIN_SVJETLO, LOW);
}

byte ocitajSenzore() {
  //vraca stanje senzora; 0 = nista, 1 = prvi, 2 = drugi, 3 = oba
  byte senzori = 0;
  int u1, u2;
  u1 = sonar[0].ping_cm(); // ocita senzor
  if (u1 < PRAG) {
    senzori += 1; 
  }
  delay(50); // ceka 50 milisekundi
  u2 = sonar[1].ping_cm(); // ocita senzor

  if (u2 < PRAG) { senzori += 2; } delay(50); // ceka 50 milisekundi if (DEBUG) { // ispis za provjeru stanja Serial.print(u1); Serial.print(", "); Serial.print(u2); Serial.print(", "); Serial.print(senzori); Serial.print(", "); Serial.print(broj_ljudi); Serial.print(", "); Serial.println(trenutno_stanje); } return senzori; } void osvjeziStanje() { byte ocitano = ocitajSenzore(); // ocitamo senzore trenutno_stanje = tablica_stanja[trenutno_stanje][ocitano]; // uzimamo podatke iz tablice stanja } void osvjeziLampu() { // pali ili gasi ledicu if (broj_ljudi > 0) {
    upaliSvijetlo();
  } else {
    ugasiSvijetlo();
  }
}

void setup() {
  Serial.begin(115200); // ukljucuje serial
  SerialUSB.begin(9600);
  Blynk.begin(auth, ssid, pass);
}

void loop() { // broji ljudi u sobi
  osvjeziStanje();
  if(trenutno_stanje == 3) {
    broj_ljudi++; 
  }
 if(trenutno_stanje == 6 && broj_ljudi > 0) {
    broj_ljudi--;
  }
  Blynk.virtualWrite(V5, broj_ljudi);
  osvjeziLampu();
  Blynk.run(); 
}

Arduino program ovoga projekta možete preuzeti ovdje.

Autori

Projekt su izradili Šimun Bilas i Fran Železnjak uz mentorstvo Viktora Lazara iz Udruge Mladi informatičari Strahoninca.

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

Pali – gasi

Pali – gasi

Daljinsko upravljanje rasvjetom

Daljinsko upravljanje rasvjetom

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