Përmbajtje:

Arduino Detektor i Hapur i Dritareve - për Dimrin: 6 Hapa
Arduino Detektor i Hapur i Dritareve - për Dimrin: 6 Hapa
Anonim
Arduino Detektor i Hapur i Dritareve - për Dimrin
Arduino Detektor i Hapur i Dritareve - për Dimrin

Jashtë po bëhet ftohtë, por ndonjëherë kam nevojë për ajër të pastër në dhomat e mia. Kështu, hap dritaren, largohem nga dhoma, mbyll derën dhe dua të kthehem në 5 deri në 10 minuta. Dhe pas disa orësh mbaj mend që dritarja është e hapur … Ndoshta ju e dini këtë ose keni fëmijë, të cilët ju japin këtë përvojë.

Zgjidhja ime është Detektori i Hapur i Dritareve. Bateria do të zgjasë më shumë se një vit, kështu që thjesht vendoseni në vjeshtë dhe hiqeni në pranverë.

Hapi 1: Lista e Pjesëve

Lista e Pjesëve
Lista e Pjesëve
Lista e Pjesëve
Lista e Pjesëve
Lista e Pjesëve
Lista e Pjesëve
Lista e Pjesëve
Lista e Pjesëve
  1. Bordi Digispark nga eBay.
  2. Kufje të vjetra.
  3. Butoni i vogël për rivendosje.
  4. Lidhës për altoparlant - përndryshe nuk është e mundur të riprogramoni bordin.
  5. Tela.
  6. Për furnizimin me energji ju nevojiten:

Rast i baterisë AAA me çelës ndezje/fikje. Mund të përdorni edhe bateri të konsumuara, pasi moduli do të funksionojë deri në 2.4Volt

OSE

Bateri e vjetër lipo (edhe kapaciteti 30% është i mjaftueshëm për këtë qëllim) dhe nëse nuk e keni tashmë, një karikues për bateri lipo nga eBay.

OSE

Një mbajtës për qelizën e monedhës CR2032

DHE

1A diodë 1N4001 ose ekuivalente - ose çfarëdo që keni në këtë madhësi - për mbrojtje të polaritetit të kundërt

Hapi 2: Programimi i Bordit Digispark

Programimi i Bordit Digispark
Programimi i Bordit Digispark
Programimi i Bordit Digispark
Programimi i Bordit Digispark

Instalimi i shoferit

Duhet të instaloni drejtuesin Digispark para se të programoni Bordin. Shkarkoni këtu, hapeni dhe ekzekutoni "InstallDrivers.exe".

Instalimi i Arduino IDE

Instaloni bordin Digispark për Arduino IDE siç përshkruhet në

Unë rekomandoj që të përdorni si URL të bordit Digispark në Arduino File/Preferences, https://raw.githubusercontent.com/ArminJo/DigistumpArduino/master/package_digistump_index.json në vend të https://digistump.com/package_digistump_index.json dhe instaloni Digistump AVR Boards version 1.6.8.

Meqenëse duam të kursejmë energji, ora e bordit kalon në 1 MHz në konfigurimin tonë () ju mund të zgjidhni Digispark (1mhz - Pa USB) si tabelë në menunë Tools.

Përpiloni dhe ngarkoni programin në tabelë

Në Arduino IDE krijoni një skicë të re me File/New dhe emërtojeni p.sh. "OpenWindowAlarm". Kopjoni kodin nga OpenWindowAlarm.ino

OSE

Shkarkoni dhe nxirrni depon. Hapni skicën me File -> Open … dhe zgjidhni dosjen "OpenWindowAlarm".

Përpiloni dhe ngarkoni atë. Mbani në mend, ai ngarkim nuk do të funksionojë nëse altoparlanti është i lidhur. Nëse gjithçka funksionon mirë, LED i integruar i Digispark do të pulsojë 5 herë (për vonesën e alarmit 5 minuta) dhe më pas do të fillojë të ndizet pas 8 sekondash me një interval prej 24 sekondash për të sinjalizuar secilën lexim të temperaturës.

Hapi 3: Reduktimi i fuqisë

Reduktimi i fuqisë
Reduktimi i fuqisë
Reduktimi i fuqisë
Reduktimi i fuqisë

Bordi ynë Digispark përdor 5mA në 3, 0 volt. Me 2 bateri AAA (1000mAh) do të funksionojë për 8 ditë. Por është e mundur të zvogëloni konsumin e energjisë deri në 26 µA në 3 hapa.

  1. Çaktivizimi i LED -së së energjisë duke thyer tela bakri që lidh LED -in e energjisë me një thikë ose heqjen / çaktivizimin e rezistencës 102 kursen 1.3 mA.
  2. Heqja e rregullatorit të tensionit VIN kursen 1.2 mA.
  3. Shkëputja e rezistencës USB tërheqëse (e shënuar me 152) nga 5 Volt (VCC) kursen 2.5 mA të mbetura. Shkëputeni atë duke thyer tela bakri në anën e rezistencës që tregon ATTiny. Kjo çaktivizon ndërfaqen USB dhe nga ana tjetër mundësinë për të programuar bordin Digispark përmes USB. Për ta aktivizuar sërish, por akoma për të kursyer energji, lidhni rezistencën (e shënuar me 152) drejtpërdrejt në USB 5 volt që është lehtësisht i disponueshëm në anën e jashtme të diodës.

    Ana e saktë e diodës mund të gjendet duke përdorur një testues të vazhdimësisë. Njëra anë e kësaj diodë është e lidhur me kunjin 8 të ATtiny (VCC). Ana tjetër është e lidhur me USB 5 volt.

Tani rezistenca tërheqëse USB aktivizohet vetëm nëse bordi Digispark është i lidhur me USB p.sh. gjatë programimit dhe bordi konsumon 26 μA gjatë gjumit.

Nëse riprogramoni siguresat, mund të merrni konsumin e energjisë prej 6 µA.

Për të riprogramuar siguresat, keni nevojë për një ISP (i cili mund të ndërtohet me një Arduino) dhe një përshtatës lidhës. Për riprogramimin mund të përdorni këtë skenar.

Hapi 4: Butoni i rivendosjes

Butoni i rivendosjes
Butoni i rivendosjes
Butoni i rivendosjes
Butoni i rivendosjes
Butoni i rivendosjes
Butoni i rivendosjes
Butoni i rivendosjes
Butoni i rivendosjes

Nëse nuk doni të hiqni energjinë për të rivendosur alarmin, lidhni një buton rivendosjeje midis PB5 dhe tokëzimit. Unë e bëra këtë duke lidhur sipërfaqen e bakrit VIN të palidhur me PB5 dhe duke bashkuar butonin e rivendosjes drejtpërdrejt në vrimën e kunjit VIN dhe sipërfaqen e madhe të tokës të rregullatorit të hequr të tensionit VIN.

Nëse doni të heqni qafe 5 sekondat e pritjes për lidhjen USB pas rivendosjes, mund të ndryshoni thelbin e mikronukleusit në ATtiny85. Drejtoni skriptin "0_Burn_upgrade-t85_recommended.cmd" dhe më pas ringarkoni përsëri aplikacionin OpenWindowAlarm me Arduino IDE.

Hapi 5: Kryetari

Folës
Folës
Folës
Folës
Folës
Folës

Unë çmontova një kufje të vjetër dhe lidha lidhësin mashkull me kabllon.

Hapi 6: Funksionimi

Duke vepruar
Duke vepruar
Duke vepruar
Duke vepruar
Duke vepruar
Duke vepruar

Për ta përdorur tabelën vendoseni në prag të dritares dhe lidheni atë me një bateri. Nëse temperatura në prag është më e ulët se temperatura ku bordi ishte vendosur fillimisht, do të duhen 5 minuta shtesë për t'u përshtatur në mënyrë inteligjente me vlerën e re të fillimit.

Atëherë do të alarmoheni nëse e lini dritaren hapur më shumë se pesë minuta.

Funksionimi i brendshëm

  • Një dritare e hapur zbulohet pas TEMPERATURE_COMPARE_AMOUNT * TEMPERATURE_SAMPLE_SECONDS (48) sekonda të leximit të një temperature me një vlerë TEMPERATURE_DELTA_THRESHOLD_DEGREE (2) më të ulët se temperatura TEMPERATURE_COMPERE_CEMARE_CEMARE_PARE_20
  • Vonesa zbatohet duke fjetur 3 herë në `SLEEP_MODE_PWR_DOWN` për një periudhë prej 8 sekondash për të zvogëluar konsumin e energjisë.
  • Një zbulim i një dritareje të hapur tregohet me një pulsim më të gjatë 20ms dhe një klikim të shkurtër çdo 24 sekonda. Prandaj, sensori i brendshëm ka një kohë prej 3 minutash për t'u përshtatur me temperaturën e jashtme në mënyrë që të kapë edhe ndryshime të vogla të temperaturës. Sa më i madh të jetë ndryshimi i temperaturës, aq më herët vlera e sensorit do të ndryshojë dhe do të zbulojë një dritare të hapur.
  • `OPEN_WINDOW_ALARM_DELAY_MINUTES` (5) minuta pas zbulimit të dritares së hapur alarmi është aktivizuar.

    Alarmi nuk do të fillojë ose një alarm i aktivizuar do të ndalojë nëse temperatura aktuale është më e madhe se temperatura minimale e matur (+ 1) dmth dritarja është mbyllur tashmë.

  • Alarmi fillestar zgjat 10 minuta. Pas kësaj aktivizohet për një periudhë prej 10 sekondash me një pushim në rritje nga 24 sekonda në 5 minuta.
  • Çdo VCC_MONITORING_DELAY_MIN (60) minuta matet tensioni i baterisë. Në varësi të llojit të zbuluar të baterisë në fuqizim (shiko VCC_VOLTAGE_LIPO_DETECTION (3.6 volt)), një tension i baterisë nën VCC_VOLTAGE_LOWER_LIMIT_MILLIVOLT_LIPO (3550) ose VCC_VOLTAGE_LOWER_LIMIT_MILLIVOLT_STANDARD tregohet LED në çdo minutë Vetëm zhurma (jo blici) është dukshëm më e gjatë se biipi për zbulimin e dritares së hapur.
  • Pas ndezjes, koha e vendosjes joaktive është 5 minuta. Nëse pllaka po bëhet më e ftohtë gjatë kohës së vendosjes, shtohen 4:15 (ose 8:30) minuta për të shmangur alarmet e rreme pas ndezjes së energjisë.

Recommended: