Pametna rasvjeta kuće
Osnovna škola RetkovecOvim projektom htjeli smo pokazati upravljanje rasvjete prostorija kuće i dobiti povratnu informaciju o trenutnoj temperaturi. Ako su vrata otvorena LED svjetla se automatski pale, a ako su vrata zatvorena svjetla možemo upravljati karticom i dobivamo informaciju o trenutnoj temperaturi i vlažnosti zraka.
Izrada projekta
Popis alata i materijala za maketu kućice:
1. pribor za teh. crtanje (dva trokuta, olovke)
2. skalpel
3. štipaljke
4. metalno ravnalo
5. gumice
6. ljepilo
7. kolaž (boja po želji)
8. karton (dva komada kutije od tehničkog) Maketu kućice možete izraditi po vlastitim dimenzijama.
Popis materijala za Arduino pločicu:
1. LCD display
2. Arduino UNO
3. 8 LED dioda
4. 13 muško-ženskih žica
5. 20 muških žice
6. Light-blocking sensor
7. Reed switch
8. Temperature and Humidity sensor
9.magnet
10. kartica
Mobilna aplikacija
Shema projekta
Shemu ovoga projekta možete preuzeti ovdje.
Arduino program
int reed = 2; // odredimo reed switch utor int sensor = 4; // odredimo light blocking sensor int led = 3; // odredimo utor za LED int stanje = 0; // postavimo stanje light blocking sensora na 0 #include "DHT.h" // uvedemo knjižnicu za temperaturni sensor #define DHTPIN 7 // definiramo utor za temperaturni sensor #include // uvedemo knjižnicu za LCD zaslon #include // uvedemo knjižnicu za LCD zaslon #include // uvedemo knjižnicu za temperaturni sensor #include // uvedemo knjižnicu za LCD zaslon LiquidCrystal_I2C lcd(0x27,2,1,0,4,5,6,7); // postavimo LCD adresu #define DHTTYPE DHT11 // definiramo tip temperaturnog sensora DHT dht(DHTPIN, DHTTYPE); // uvedemo u dht njegov utor i tip void setup() { pinMode(reed, INPUT); // postavimo reed kao ulaz digitalWrite(reed, HIGH); // uključimo sensor pinMode(led, OUTPUT); // led postavimo kao izlaz Serial.begin(9600); // pokreni serialni monitor dht.begin(); // pokreni očitavanje sensora temperature lcd.begin(16,2); // odredi veličine LCD zaslona lcd.setBacklightPin(3,POSITIVE); // postavi utor za pozadinsko svjetlo lcd.setBacklight(HIGH); // uključi pozadinsko svjetlo } void loop() { stanje = digitalRead(sensor); // očitavamo stanje light bloking sensor if (digitalRead(reed) == HIGH){ // ako je magent daleko od reed switcha digitalWrite(led, HIGH); // uključimo LED } else { // inače float h = dht.readHumidity(); // postavi h kao očitavanje vlažnosti float t = dht.readTemperature(); // postavi t kao očitavinje temperature lcd.print("Temp. i vlazno.: "); // ispišemo "Temp. i vlazno.:" na LCD lcd.setCursor(0, 1); // postavimo ispisivanje u drugi red lcd.print(t); // ispišemo temperaturu lcd.print(" *C, "); // ispičemo znak za stupnjeve Celzijusa lcd.print(h); // ispišemo vlažnost lcd.print("%"); // ispišemo posto delay(1000); // čekamo 1 sekundu lcd.clear(); // obrišemo ispise if (stanje == HIGH) { // ako je kartica u utoru digitalWrite(led, HIGH); // uključi LED } else { // inače digitalWrite(led, LOW); // isključi LED } } }
Arduino program ovoga projekta možete preuzeti ovdje.
Autori
Projekt su izradili Lovro Milišić i Benjamin Teskera uz mentorstvo Valentine Dijačić iz OŠ Retkovec.
Projekt je prijavljen na temu: Internet of Things: Pametna rasvjeta.