Hlídač zhasnutého světla

Tento projekt jsem vymyslel proto, abychom nezapomínali zhasínat na našem WC. Pokud je místnost prázdná a svítí uvnitř světlo, rozsvítí se před záchodem na Arduinu kontrolka, která zhasne po vypnutí vypínače světla. Tak bezpečně víme, že jsme zapomněli zhasnout. Na WC je umístěn fotorezistor zapojený dle schématu.

Celé to napájím 2500 mAh powerbankou, kterou musím jednou za půl dne vyměnit. Střídám periodicky dvě powerbanky. Dalo by se to však po úpravě napájet z větší baterie nebo 5 V nabíječkou ze sítě. Zařízení má odběr pod 10 mA.

Dokáže rozeznat zbytkové denní světlo proudící ze světlíku, který vede do lodžie, od svítící žárovky.

Schéma zapojení senzoru:

Zdrojový kód:

/*
  Může vyžadovat úpravy nastavení prodlev a rozsahu pro konkrétní místnost zvlášť,
  vystup z děliče 10K odporu a fotorezistoru -> A0
*/
void setup() {
  Serial.begin(9600);  //inicializace seriove linky
  pinMode(13, OUTPUT); //inicializace vystupu
}

void loop() {

  int mereni = analogRead(A0); //cteni hodnoty fotorezistoru
  int soucet;
  int prumer;
  for (int i = 0; i < 15; i++); { //provedení 15 měření pro ustálení výsledku
    mereni = analogRead(A0);

    soucet = + mereni; //uložení výsledku pro následné zrpůměrování
    prumer = (mereni / 15); //výpočet průmeru z 15 mereni
    Serial.println(prumer); //odeslani prumeru na seriovou linku
    delay(1000);
  }
  if ((prumer >= 25) and (prumer < 35)) {
    delay(15000);
    digitalWrite(13, HIGH); //svetlo sviti
  }
  else {
    digitalWrite(13, LOW); //je tma nebo pronika denni svetlo
  }
}

Další podobné články

Tester I2C adresy

Užitečný nástroj pro zjištění I2C/IIC adresy konkrétního modulu pro arduino. A to jak na 3V3 tak 5V logiku.

Protože někdy potřebuji ověřit I2C adresu připojovaného zařízení (třeba podle návodu nastavená adresa nefunguje) musel jsem vyhrabat volné arduino, propojit s testovaným zařízením, nahrát program a na počítači provést kontrolu. Dospěl jsem k závěru, že se mi bude hodit krabička, která bude mít vše v jednom.