Pametna rasvjeta
OŠ Julija KlovićaProjekt se sastoji od alarmnog sustava, potenciometra i glavne rasvjete. Kada se laser na komadu drveta pokraj eksperimentalne pločice prekine i fotootpornik to detektira, čovjek koji je ušao ima 5 sekundi da isključi alarmni sustav preko mobilne aplikacije. Kada se alarmni sustav isključi, glavno se svijetlo uključi jačinom koju definira stanje potenciometra. Ako se alarmni sustav ne isključi, zujalica se oglasi, a svjetla se ne upale. Dok je osoba u kući on može preko aplikacije uključivati i isključivati rasvjetu te kontrolirati intenzivitet preko potenciometra. Prije nego osoba izađe iz kuće, mora pritisnuti tipku u aplikaciji kako fotootpornik ne bi očitavao vrijednosti dok osoba izlazi.
Ovaj sustav rješava problem provalnika u kućama te olakšava kontroliranje rasvjete.
Izrada projekta
Mobilna aplikacija
Shema projekta
Shema prikazuje način spajanja.
Shemu ovoga projekta možete preuzeti ovdje.
Arduino program
#define BLYNK_PRINT /* #define BLYNK_PRINT Serial #include #include #include #include char auth[] = "Classified"; char ssid[] = "Classified"; char pass[] = "Classified"; int phPin = A4; int ledPin = 8; int buzPin = 7; int potPin = A5; int phVal; int prevPhVal; int potVal; int transPotVal; //Vrijednost potenciometra odgovornog za jačinu svjetla mapirana u vrijednosti 0-100 int phBar = 290; //Vrijednost koja odjeljuje kada je fotootpornik osvjetljen laserom, a kad ne int startTime; int delayTime = 5000; //Vrijeme u kojemu se alarm moze iskljuciti prije nego se aktivira bool alarmDisabled = true; int delayTimeDisabled; int delayStart; bool lightsOn = false; BLYNK_WRITE(3){ alarmDisabled = true; //isključi odbrojavanje do alarma ili sam alarm ako se pokrenuo lightsOn = true; //upali glavno svijetlo stopAlarm(); //ugasi buzzer Blynk.virtualWrite(3, 45); //nužno za rad programa } BLYNK_WRITE(4){ pauseAlarm(5000); //onemogući alarm na 5 sekundi kako covijek koji izlazi nebi aktivirao alarm lightsOn = false; //ugasi glavno svijetlo Blynk.virtualWrite(4, 45); //nužno za rad programa } BLYNK_WRITE(5){ lightsOn = true; Blynk.virtualWrite(5,45); } BLYNK_WRITE(6){ lightsOn = false; Blynk.virtualWrite(5,45); } void setup() { Serial.begin(9600); pinMode(phPin, INPUT); pinMode(potPin, INPUT); pinMode(ledPin, OUTPUT); pinMode(buzPin, OUTPUT); Blynk.begin(auth, ssid, pass); } void loop() { Blynk.run(); potVal = analogRead(potPin); transPotVal = map(potVal, 700, 1023, 0, 255); Serial.println(transPotVal); if (millis() - delayStart > delayTimeDisabled){ if (prevPhVal > phBar){ if (phVal < phBar) { startTime = millis(); alarmDisabled = false; } } } if(!alarmDisabled){ if(millis()-startTime > delayTime){ startAlarm(); } } if(lightsOn){ digitalWrite(ledPin, transPotPin); }else{ digitalWrite(ledPin, LOW); } prevPhVal = phVal; } void startAlarm(){ tone(buzPin, 4000); } void stopAlarm(){ noTone(buzPin); } void pauseAlarm(int t){ delayStart = millis(); delayTimeDisabled = t; }
Arduino program ovoga projekta možete preuzeti ovdje.
Autori
Projekt su izradili Dino Plečković i Vid Martin Lulić uz mentorstvo Petra Dobrića iz OŠ Julija Klovića.
Projekt je prijavljen na temu: Internet of Things: Pametna rasvjeta.