Taula de continguts:
- Pas 1: llista de peces
- Pas 2: Programació del tauler Digispark
- Pas 3: reducció de potència
- Pas 4: botó Restableix
- Pas 5: altaveu
- Pas 6: funcionament
Vídeo: Detector de finestres obertes Arduino: per a l'hivern: 6 passos
2024 Autora: John Day | [email protected]. Última modificació: 2024-01-30 08:10
A fora fa fred, però de vegades necessito aire fresc a les habitacions. Per tant, obro la finestra, surto de l’habitació, tanco la porta i vull tornar d’aquí a 5 o 10 minuts. I al cap d'unes hores recordo que la finestra està oberta … Potser ho sabeu o teniu fills, cosa que us dóna aquesta experiència.
La meva solució és el Detector de finestres obertes. La bateria durarà més d’un any, de manera que només cal que la col·loqueu a la tardor i traieu-la a la primavera.
Pas 1: llista de peces
- Tauler Digispark d’Ebay.
- Auriculars antics.
- Petit botó per restablir.
- Connectors per a altaveus; en cas contrari, no és possible reprogramar la placa.
- Filferro.
- Per a la font d'alimentació necessiteu:
Funda de la bateria AAA amb interruptor d’encès / apagat. Fins i tot podeu utilitzar bateries gastades, ja que el mòdul funcionarà fins a 2,4 Volts
O
Bateria lipo antiga (fins i tot amb un 30% de capacitat és suficient per a aquest propòsit) i, si no en teniu, un carregador per a bateries lipo d’Ebay.
O
Un suport per a cèl·lula de moneda CR2032
I
1A diode 1N4001 o equivalent -o el que tingueu en aquesta mida- per protegir la polaritat inversa
Pas 2: Programació del tauler Digispark
Instal·lació del controlador
Heu d’instal·lar el controlador Digispark abans de poder programar el tauler. Baixeu-lo aquí, obriu-lo i executeu "InstallDrivers.exe".
Instal·lació d’Arduino IDE
Instal·leu la placa Digispark per a l'IDE Arduino tal com es descriu a
Recomano utilitzar com a URL de la placa Digispark a Arduino File / Preferences el nou https://raw.githubusercontent.com/ArminJo/DigistumpArduino/master/package_digistump_index.json en lloc de https://digistump.com/package_digistump_index.json i instal·lar el Digistump AVR Boards versió 1.6.8.
Com que volem estalviar energia, el rellotge de la placa canvia a 1 MHz a la nostra configuració (), podeu triar Digispark (1mhz - No USB) com a tauler al menú Eines.
Compileu i pengeu el programa al tauler
A l’IDE Arduino, creeu un nou esbós amb File / New i nomeneu-lo, per exemple. "Alarma OpenWindow". Copieu el codi d'OpenWindowAlarm.ino
O
Descarregueu i extreu el dipòsit. Obriu l'esbós amb Fitxer -> Obre … i seleccioneu la carpeta "OpenWindowAlarm".
Compileu-lo i pengeu-lo. Tingueu en compte que aquesta càrrega no funcionarà si hi ha un altaveu connectat. Si tot funciona bé, el LED integrat del Digispark parpellejarà 5 vegades (durant el retard d'alarma de 5 minuts) i començarà a parpellejar al cap de 8 segons amb un interval de 24 segons per indicar cada lectura de temperatura.
Pas 3: reducció de potència
La nostra placa Digispark utilitza 5 mA a 3, 0 volts. Amb 2 piles AAA (1000 mAh) funcionarà durant 8 dies. Però és possible reduir el consum d'energia fins a 26 µA en 3 passos.
- Desactivar el LED d’alimentació trencant el fil de coure que connecta el LED d’alimentació al díode amb un ganivet o treure / desactivar la resistència 102 estalvia 1,3 mA.
- En treure el regulador de tensió VIN, s’estalvien 1,2 mA.
-
Si desconnecteu la resistència USB Pullup (marcada 152) de 5 volts (VCC), s’estalvien els 2,5 mA restants. Desconnecteu-lo trencant el fil de coure al costat de la resistència que apunta a l'ATTiny. Això desactiva la interfície USB i, al seu torn, la possibilitat de programar la placa Digispark mitjançant USB. Per tornar-lo a habilitar, però encara estalvieu energia, connecteu la resistència (marcada amb 152) directament a l'USB de 5 volts que està fàcilment disponible a la part exterior del díode.
El costat correcte del díode es pot trobar mitjançant un provador de continuïtat. Un dels costats d’aquest díode està connectat al pin 8 de l’ATtiny (VCC). L'altra cara està connectada a USB de 5 volts.
Ara, la resistència d’extracció USB només s’activa si la placa Digispark està connectada a USB, per exemple. durant la programació i la placa consumeix 26 µA durant el son.
Si reprogrameu els fusibles, podeu obtenir un consum d'energia de 6 µA.
Per reprogramar els fusibles, necessiteu un ISP (que es pot construir amb un Arduino) i un adaptador de connexió. Per reprogramar podeu utilitzar aquest script.
Pas 4: botó Restableix
Si no voleu treure l'alimentació per restablir l'alarma, connecteu un botó de restabliment entre PB5 i terra. Ho vaig fer connectant la superfície de coure VIN no connectada a PB5 i soldant el botó de reinici directament al forat del pin VIN i a la gran superfície de terra del regulador de voltatge VIN eliminat.
Si voleu desfer-vos dels 5 segons d'espera de la connexió USB després de reiniciar-lo, podeu canviar el nucli de micronucli de l'ATtiny85. Executeu l'script "0_Burn_upgrade-t85_recommended.cmd" i, a continuació, torneu a carregar l'aplicació OpenWindowAlarm amb l'IDE Arduino.
Pas 5: altaveu
Vaig desmuntar uns auriculars antics i vaig connectar el connector mascle al cable.
Pas 6: funcionament
Per utilitzar el tauler, col·loqueu-lo en un llindar de la finestra i connecteu-lo a una bateria. Si la temperatura del llindar és inferior a la temperatura on es trobava originalment el tauler, trigareu 5 minuts addicionals a adoptar de manera intel·ligent el nou valor inicial.
Aleshores us alarmareu si deixeu la finestra oberta durant més de cinc minuts.
Funcionament intern
- Es detecta una finestra oberta després de TEMPERATURE_COMPARE_AMOUNT * TEMPERATURE_SAMPLE_SECONDS (48) segons de llegir una temperatura amb un valor de TEMPERATURE_DELTA_THRESHOLD_DEGREE (2) inferior a la temperatura TEMPERATURE_COMPARE_DISTANCE * TEMPERATURE_SAMPLE_SAMPLE_SAMPLE_SAMPLE_SAMPLE_SAMPLE_SECONDS (48) segons
- El retard s'implementa dormint 3 vegades a "SLEEP_MODE_PWR_DOWN" durant un període de 8 segons per reduir el consum d'energia.
- La detecció d’una finestra oberta s’indica amb un parpelleig més llarg de 20 ms i un clic curt cada 24 segons. Per tant, el sensor intern té un temps de 3 minuts per ajustar-se a la temperatura exterior per tal de captar fins i tot petits canvis de temperatura. Com més gran sigui el canvi de temperatura, abans canviarà el valor del sensor i detectarà una finestra oberta.
-
`OPEN_WINDOW_ALARM_DELAY_MINUTES` (5) minuts després de la detecció de la finestra oberta, l'alarma s'activa.
L'alarma no s'iniciarà o una alarma activada s'aturarà si la temperatura actual és superior a la temperatura mínima mesurada (+ 1), és a dir, la finestra ja s'ha tancat.
- L’alarma inicial dura 10 minuts. Després d'això, s'activa durant un període de 10 segons amb un augment creixent de 24 segons fins a 5 minuts.
- Cada VCC_MONITORING_DELAY_MIN (60) minuts es mesura la tensió de la bateria. Depenent del tipus de bateria detectat a l’engegada (vegeu VCC_VOLTAGE_LIPO_DETECTION (3,6 volts)), una tensió de la bateria inferior a VCC_VOLTAGE_LOWER_LIMIT_MILLIVOLT_LIPO (3550) o VCC_VOLTAGE_LOWER_LIMIT_MILLIVOLT_STANDARD Millivolt s’indica cada 24 segons i parpelleja. Només el pit (no el flaix) és significativament més llarg que el pit per a la detecció d'una finestra oberta.
- Després de l’encesa, el temps de decantació inactiu és de 5 minuts. Si la placa es refreda durant el temps de resolució, s’afegeixen 4:15 (o 8:30) minuts per evitar falses alarmes després de l’encesa.
Recomanat:
Mantingueu-vos calents aquest hivern: escalfador de mans de la CPU: 4 passos (amb imatges)
Mantingueu-vos calents aquest hivern: escalfador de mans de la CPU: en aquest petit projecte us mostraré com he reutilitzat una antiga CPU AMD per crear un escalfador de mans elèctric petit, lleuger i fàcil d’utilitzar. Amb l’ajut d’un petit banc d’energia portàtil, aquest aparell us pot escalfar durant unes 2 hores i mitja i us pot facilitar
Easy LED Holiday Light Show: Bruixots a l'hivern - Cinta LED WS2812B amb FastLED i un tutorial Arduino: 6 passos
Easy LED Holiday Light Show: Bruixots a l'hivern | Cinta LED WS2812B amb FastLED i un tutorial Arduino: He dissenyat i programat aquest espectacle de llums de vacances per mostrar-lo a qualsevol lloc. He utilitzat una tira LED WS2812B amb una densitat de píxels de 30 píxels / metre. Des que feia 5 metres, tenia un total de 150 LED. He mantingut el codi senzill per tal que qualsevol persona nova a utilitzar WS2812
Decoració de finestres de llum de Nadal controlada per WiFi: 4 passos
Decoració de finestres de llum de Nadal controlada per WiFi: controleu una tira de llum LED des del telèfon o l'ordinador: un munt de divertits patrons de llum temàtics de Nadal
Cortina automàtica / persiana per finestres amb Arduino i LDR: 3 passos
Cortina automàtica / persiana de finestres amb Arduino i LDR: en aquest tutorial anem a demostrar com fer una persiana automàtica mitjançant finestres amb Arduino i el mòdul LDR. Durant el dia, la cortina / persiana es desplaçarà cap avall i, de nit, s’enrotllarà
Com restaurar carpetes obertes quan torneu a iniciar la sessió després de tancar la sessió: 5 passos
Com restaurar carpetes obertes quan torneu a iniciar la sessió després de tancar la sessió: bé, aquí teniu la situació, esteu fent servir l’ordinador amb moltes carpetes obertes … Llavors, la vostra mare va tornar a casa abans del previst. Sabeu perfectament que si us atrapa amb l'ordinador, mentre que hauríeu d'estar al llit perquè