Arduino šaldiklio signalizacija: 3 žingsniai

Arduino šaldiklio signalizacija: 3 žingsniai

Turinys:

Anonim

Pradėjau šį projektą, kad įveikčiau mūsų šaldiklio dizaino trūkumą. Jos signalizacijos jungiklis yra šalia vyrių ir prieš atidarant signalą reikia atidaryti duris. Mūsų šaldiklio durys gali būti atidarytos kelis colius be signalizacijos išjungimo. Mes turėjome turinio sugadinimą praeityje, jau nekalbant apie švaistomą energiją.

Mano pasirinktinis šaldytuvo signalizatorius įdėja į langelį, esantį šaldytuvo viršuje ir išorėje, todėl šalta ir drėgmė nebus problema. Gali tekti būti kūrybingais, kad rastumėte jungimo vietą, atitinkančią jūsų duris.

Prekės:

1 žingsnis: „Inards“

Pagrindiniai šio įrenginio komponentai yra:

  • „Arduino pro mini“ (modifikuotas energijos taupymui)
  • Dvi 18650 ličio baterijos (senos nešiojamojo kompiuterio baterijos)
  • Srautas, paimtas iš pigios18650 maitinimo banko (galima įsigyti keletą dolerių iš „eBay“)
  • „Peizo“ signalizatorius
  • Trumpas tam tikro tipo mygtuko jungiklis (mano kasykla buvo iš senų mikrobangų durų)

Šio projekto galia gaunama iš dviejų 18650 baterijų, prijungtų lygiagrečiai ir prijungtos prie įkrovimo ir įtampos keitiklio grandinės, kurios buvo nulaužtos iš pigios galios banko. Grandinės išėjimas 5v per USB jungtį ir priima 5v įkrauti baterijas per mikro USB kištuką. Šiuo metu aš nežinau, kiek energijos šis prietaisas pritraukia!

Momentinis jungiklis yra prie šaldiklio durų krašto, šalia vyrių. Jungiklis turi maždaug 5 mm važiavimą, o tai reiškia, kad prieš atidarant jungiklį durelės turi būti atidarytos apie 10 mm.

Erzinantis peizo tonas išsijungia, tada įsijungia aliarmas, pakankamai garsiai girdi iš kito namų kambario.

Vienas dalykas, manau, pridedu, yra išorinis šviesos diodas, kuris retkarčiais mirksi, kad galėtumėte pasakyti, ar baterija vis dar yra gera (arba sudėtingesnis mažos galios įspėjimas).

2 veiksmas: smegenys

Žadintuvas veikia taip:

  • Arduino yra užmigęs taupyti energiją.
  • Kas 30-aisiais, arduino atsibunda, kad pamatytų, ar durų jungiklis yra atidarytas.
  • Jei taip, laikmatis gali palaukti keletą minučių.
  • Jei po to laikai durys vis dar atidarytos, signalas skamba, kol durys vėl uždarys.

Taupant energiją, naudodavau budėjimo laikmatį, kuris yra truputį truputį, naudoju mažos galios biblioteką. Aš eksperimentavau naudojant jungiklį kaip išorinį pertraukimą be sėkmės (galbūt kas nors galėtų padėti su mano kodu?). Aš taip pat bandžiau narcoleptic miego biblioteką, kuri suteikia „miego uždelsimą“, tačiau dėl tam tikrų priežasčių tai neleido „arduino“ pwm gebėjimui, kad peizo neveiktų. Mano kodas gali būti nepakankamas, tačiau jis veikia. Aš vis dar mokau, todėl bet kokia konstruktyvi kritika būtų vertinama.

Arduino kodas yra žemiau.

digitalWrite (vadovaujama, LOW); // išjungti LED:

}

doorstate = 1;

LowPower.powerDown (SLEEP_8S, ADC_OFF, BOD_OFF);

jei (mygtukasState == LOW) {// ar laukia durys vis dar atidarytos?

tonas (garsinis signalas, 500); // žadintuvo tonas:

doorstate = 2;

}

3 veiksmas: energijos taupymas

Norėdami sumažinti arduino galios traukimą, aš išjungiau maitinimo laidą ir pašalinau įtampos reguliatorių. Todėl man reikėjo suteikti valdybai valdžią tiesiogiai per vcc pin.

Galios banko išvestis suteikė švarų 5v šaltinį. Aš tiesiog nuėmiau + ir - laidus iš USB kabelio, kad prijungčiau prie arduino kaiščių.