Innholdsfortegnelse:

Batteridrevet Shed Door & Lock Sensor, Solar, ESP8266, ESP-Now, MQTT: 4 trinn (med bilder)
Batteridrevet Shed Door & Lock Sensor, Solar, ESP8266, ESP-Now, MQTT: 4 trinn (med bilder)

Video: Batteridrevet Shed Door & Lock Sensor, Solar, ESP8266, ESP-Now, MQTT: 4 trinn (med bilder)

Video: Batteridrevet Shed Door & Lock Sensor, Solar, ESP8266, ESP-Now, MQTT: 4 trinn (med bilder)
Video: The One and Only WD40 Trick Everyone Should Know and 25 Other Uses 2024, November
Anonim
Batteridrevet skjulte dør- og låsesensor, Solar, ESP8266, ESP-Now, MQTT
Batteridrevet skjulte dør- og låsesensor, Solar, ESP8266, ESP-Now, MQTT
Batteridrevet skjulte dør- og låsesensor, Solar, ESP8266, ESP-Now, MQTT
Batteridrevet skjulte dør- og låsesensor, Solar, ESP8266, ESP-Now, MQTT
Batteridrevet skjulte dør- og låsesensor, Solar, ESP8266, ESP-Now, MQTT
Batteridrevet skjulte dør- og låsesensor, Solar, ESP8266, ESP-Now, MQTT

I denne instruksjonsboken viser jeg deg hvordan jeg lagde en batteridrevet sensor for å overvåke døren og låse statusen til det eksterne sykkelskuret mitt. Jeg har ikke strøm, derfor har jeg den batteridrevet. Batteriet lades av et lite solcellepanel.

Modulen er designet for drift med lav effekt og kjører på en ESP-07S i dyp søvn som våkner og kontrollerer dør- og låsestilling hvert minutt. Men når døren åpnes, blir modulen vekket av en enkel maskinvarekrets for umiddelbart å sende informasjonen om "døren åpen". Modulen kommuniserer via ESP-Now, der overføringstiden er veldig kort, og krever bare en liten mengde energi.

Hjemmeautomatiseringen min som kjører på Openhab og Mosquitto håndterer meldingene og sender meg en alarmerende melding via Telegram hvis alarmen er slått på.

Rekvisita

Alle komponenter er kjøpt fra Aliexpress.

  • ESP-07S-modulen er valgt for enkel tilkobling av en ekstern antenne for å øke ESP-Now-rekkevidden.
  • TP4056 ladekort med batteribeskyttelse
  • 18650 LiPo batteri
  • Reed -bryter (NEI for å overvåke dørposisjon)
  • Kontaktbryter (skjermlåsposisjon)
  • Solcellepanel (6V, 0,6W)
  • Transistorer, motstander, dioder, kontakter (se skjematisk)

Trinn 1: Maskinvare

Maskinvare
Maskinvare
Maskinvare
Maskinvare
Maskinvare
Maskinvare

Den innebygde skjematikken er inkludert som et bilde. Jeg prototyste først kretsen på et brødbrett. Deretter loddet jeg alle komponentene på et perf -bord.

Jeg bruker en ESP-07S ESP8266-modul siden den har en tilkobling for en ekstern antenne. Siden sykkelskuret mitt er ute, må WiFi -signalet gå gjennom en betongvegg. Jeg fant ut at en ekstern antenne sterkt øker rekkevidden til ESP-Now. Ganske logisk, siden det er et WiFi -signal.

For dørsensoren brukte jeg en sivbryter med botn NO og NC -tilkoblinger. Når døren er lukket, åpner en magnet festet til bryteren. Modulen kontrollerer dør- og låsetilstanden hvert 60. sekund, men når døren åpnes, vil jeg bli informert umiddelbart, derfor implementerte jeg en tilbakestillingskrets, se nedenfor.

For låsesensoren brukte jeg en kontaktbryter med botn NO og NC -tilkoblinger. Når låsen er lukket, åpner låsestiften bryteren. Så, både dørsensoren og låsesensoren åpnes normalt (NO).

Batteriet lades via et TP4056 ladekort med batteribeskyttelse festet til et lite 6V solcellepanel.

Jeg vil forklare noen deler av kretsen nedenfor.

Tilbakestill krets

Tilbakestillingskretsen med 2N7000 Mosfet er koblet til reset-pin på ESP8266. Hvis døren er lukket, er kontakten åpen, både porten og kilden til transistoren er høy og mosfeten er av. Kondensatoren koblet til porten har en positiv ladning. ESP8266 siv GPIO12 som HIGH = lukket.

Når døren åpnes, er kilden til mosfeten koblet til bakken. Siden porten er høy, slås mosfeten på og trekker tilbakestillingsnålen til bakken, noe som resulterer i en tilbakestilling av ESP8266. Kondensatoren tømmes via R7 og slår deretter av mosfeten. Se skjermbildet av oscilloskopet mitt for lavpuls på 50 ms. Etter pulsen starter ESP8266 opp. ESP8266 siv GPIO12 som LAV = åpen.

Når døren lukkes igjen, trekker motstand R6 kilden og GPIO12 opp.

Batteriovervåkning

Batterispenningen leses via en spenningsdeler mellom VBat og GND. Jeg vil imidlertid ikke ha en permanent forbindelse mellom VBat og GND, fordi det tapper batteriet. Derfor legger jeg en P-kanal mosfet på høysiden av spenningsdeleren, og porten til mosfeten trekkes opp, så mosfeten er slått av. Bare når GPIO14 er lav, slås mosfet på og ESP8266 kan spenne spenningen med ADC.

Trinn 2: Programvare

ESP8266 -modulen er stort sett i dyp dvalemodus for å spare strøm.

Hvert 60 sekunder starter modulen opp med WiFi deaktivert og måler lås- og dørposisjonen og sjekker om disse posisjonene har endret seg i forhold til verdiene som er lagret i RTC -minnet. Hvis en posisjon har endret seg, sover modulen i en minimumstid og våkner med WiFi aktivert for å sende den nye posisjonen via ESP-Now. Og selvfølgelig lagres de nye posisjonene i RTC-minnet. Hvis ingenting ble endret, sover modulen bare igjen og våkner med WiFi av.

Se den andre instruksjonsboken der jeg forklarer hvordan jeg bruker ESP-Now til å overføre meldinger og transformere dem til MQTT-meldinger.

Hvis 'OTA-kretsen' lukkes manuelt via en jumper, våkner modulen og kobler til WiFi-nettverket mitt for å vente på en OTA-oppdatering via ESP8266HTTPUpdateServer.

Hvert 30. minutt måles og publiseres spenningen til batteriet.

Den fungerer som en statsmaskin. Statene er definert i programmet som er publisert på min Github.

STATE_CHECK: våkne med Radio av (WiFi av), bare sjekk om noe har endret seg

STATE_INIT: våkne opp med radio på (WiFi på) og overfør dør- og låsetilstander

STATE_DOOR: våkne med Radio på, publiser dørstat neste gang den starter opp

STATE_LOCK: våkne opp med Radio på, publiser lockstate neste gang den starter opp

STATE_VOLTAGE: våkne med Radio på, publiser spenning neste gang den starter opp

STATE_OTA 5: våkne opp med Radio på, gå til OTA -modus

Trinn 3: Monter

Montere
Montere
Montere
Montere
Montere
Montere
Montere
Montere

Jeg bruker skrueterminaler og DC mannlige/kvinnelige kontakter for å kunne montere og demontere prosjektet mitt. Jeg legger alle delene i en liten ABS -boks, se bildene. Jeg innkapslet delene i Kapton -tape for elektrisk isolasjon

Jeg kobler til solcellepanelet via en mannlig DC-plugg (5,5 x 2,1) med en 1N5817-diode som har lav spenning fremover.

Sivbryteren limes i esken og en magnet limes på døren i riktig posisjon.

Låsekontakten settes inn fra siden, se bildet.

Trinn 4: Arbeidsmodul

Arbeidsmodul
Arbeidsmodul
Arbeidsmodul
Arbeidsmodul

De mottatte dataene leses av min Openhab -hjemmeautomatisering. Jeg liker deg, jeg kan legge ut Openhab -filene.

Jeg overvåker:

  • Batterispenningen (med utholdenhet så jeg ser spenningen over tid i en graf).
  • Dør- og låsestillinger.
  • Tidspunktene for stillingen har endret seg.

På denne måten, når jeg legger meg, kan jeg lett se om alle skur er låst.

I begynnelsen av bruken ble batteriet ladet på en lys dag, og etter en uke eller så var tge -batteriet fulladet. Nå på høsten forblir batteriet ladet. Tilsynelatende er modulen veldig økonomisk og bruker mye mindre energi enn et lite solcellepanel genererer. Det tøffe batteriet har sannsynligvis strøm i noen måneder med mørke. La oss se hvordan modulen fungerer i vinter, når temperaturen i skuret er mye lavere.

Anbefalt: