Innehållsförteckning:
- Steg 1: Hårdvara och material
- Steg 2: Programvara
- Steg 3: Konfiguration
- Steg 4: Meddelanden
- Steg 5: EasyIOT -integration
- Steg 6: Andra Bell Push -åtgärder
Video: Dörrklocka tryck och temperatursensor: 6 steg
2024 Författare: John Day | [email protected]. Senast ändrad: 2024-01-30 12:44
Detta förbättrar en standard hård trådbunden dörrklocka med en esp-12F (esp8266) -modul.
Den installeras i själva klockenheten för att undvika eventuella ändringar i ledningarna. Den tillhandahåller följande funktioner
- Upptäck dörrklockans tryck
- Skickar meddelanden till telefonen via IFTTT
- Lagrar dörrklockans aktivitet på en easyIOT -server (tillval)
-
Utlösa annan aktivitet via en URL när dörrklockan trycks
Jag tar en ögonblicksbild på en webbkamera vid dörren och kan se de senaste dörrklockans fångster på min telefon
- Valfri inbyggd temperatursensor (DS18B20) som ingår i min hus temperaturövervakning
Steg 1: Hårdvara och material
Följande material behövs
- ESP-12F (ESP8266) wifi / cpu-modul
- DC Buck -omvandlare för 3,3V matning
- Likriktardiod (t.ex. 1N4001)
- Elektrolytkondensator 220uF 35V
- Elektrolytkondensator 220uF 16V
- Zenerdiod 3.3 eller 2.6V
- Motstånd
- En bit av bandbräda
- Kontaktdon om det behövs
- DS18B20 digital temp sensor om det behövs
Schemat visar kretsen som används. Den antar en lågspännings AC -klocka som är den vanligaste typen av hårdkopplad enkel klocka. Klockenheten får ström från en extern klocktransformator vanligtvis runt 10V AC. Detta är inte kritiskt, eftersom den enda begränsningen är den maximala spänningen i buck -omvandlaren. Den jag använder är MP2307 baserad med en maximal ingång på 23V DC (~ 16V AC).
Det finns normalt 3 aktiva terminaler. Med klockans tryck gör anslutningen från ena sidan av AC -matningen till klocksolenoiden. Modulen använder de två AC -terminalerna för att producera likström via en enkel halvvågslikriktare. Klockans tryckavkänning sker genom att övervaka spänningen över den faktiska solenoiden. Detta kommer normalt att slipas, men när klockan är aktiverad kommer den att vara full AC. Ett motstånd / zenerdiod klämmer fast detta så att en 0 - 3.3V 50 Hz puls matas in i en GPIO -stift. Programvaran behandlar detta för att ge en enda aktivering per klockpress.
Jag konstruerade kretsen på lite remskiva och den här är tillräckligt liten för att enkelt passa in i klockenheten. Jag använder enkla bygelkontakter för att göra det enklare att installera och inkludera specifikt i linje med huvudströmmen så att det enkelt kan återställas om det behövs.
Schemat som visas inkluderar en temperatursensor DS18B20. Detta är valfritt. Jag använder den som en del av ett nätverk som övervakar de flesta områdena i mitt hus. Om den ingår är det bra att koppla in sensorn med några centimeter kabel så att den kan isoleras från lokala värmeeffekter.
Steg 2: Programvara
Dörrens push -enhet använder en Arduino -skiss tillgänglig på github
Detta måste justeras för att passa lokala förhållanden och sedan sammanställas i en esp8266 Arduino -miljö. Följande bibliotek behövs, de är standard eller kan läggas till.
- ESP8266WiFi
- WifiClient
- ESP8266WebServer
- ESP8266mDNS
- ESP8266HTTPUpdateServer
- ArduinoJson
- WifiClientSecure
- IFTTTMaker
- DNSServer
- WiFiManager (valfri användning)
- OneWire
- Dallas Temperatur
Objekt i skissen som ska ändras inkluderar
- Lokal wifi -information (ssid, lösenord) om du inte använder WifiManager
- Behörighetskod för webbåtkomst AP_AUTHID. Det är bra att göra detta till en anständig längd. Den kan innehålla alfanumeriska tecken.
- firmware OTA lösenord update_password
-
WifiManager lösenord WM_PASSWORD
Wifi kan konfigureras manuellt genom att kommentera WM_NAME
- IFTTT maker -nyckel (se anmälningssteget)
Valfria ändringar inkluderar
- Byte av ingångsstift för dörrklockans detektor
- Skiftstift för temperaturgivare
- Ändrar webbåtkomstport från standard 80
När detta är gjort bör det först kompileras och laddas upp med konventionell serieöverföring. Efterföljande uppdatering kan göras genom att sammanställa en exportbinär i Arduino -miljö och sedan komma åt OTA -gränssnittet på ip/firmware.
Dörrklockans tryck detekteras i programvaran genom att avbryta avkänningen av den första pulsens stigande kant från detektorkretsen. Alla efterföljande avbrott ignoreras. En timeout används för att återaktivera detektorn efter BELL_MIN_INTERVAL som är inställd på 10 sekunder.
Andra aktiviteter kan komma åt på esp8266 -webbservern
- ip/recent visar senaste dörrklockans aktivitet
- ip/reloadConfig laddar om espConfig
- ip/bellPush simulerar ett klockpress
Steg 3: Konfiguration
Som konstruerat får programvaran sin konfiguration från en lokal webbserver. Modulen laddar konfigurationsdata baserat på dess Mac -adress. Detta gör det mycket bekvämt att köra flera moduler med samma binär och gör det också lättare att uppdatera konfigurationen utan att kompilera om. Det skulle vara möjligt att hoppa över detta och lägga konfigurationsdata direkt i koden.
Jag lagrar konfigurationsfilen på min EasyIOT -server som har en mapp på easyIOT/html där konfigurationsfilen lätt kan hämtas.
Filen kallas espConfig och är en enkel textfil som lagrar ett antal parametrar (12) för varje möjlig Mac -adress. En modul laddar bara de parametrar som ställts in för sin Mac -adress.
Ett exempel från filen är
#Hall
#Mac -adress123456ABCDEF
#modulnamn
esp8266-hall
#server mode mask (1 = temp sense, 4 = boilermode, 4 = doorbell)
9
#EIOT -nod för temperatur
N9S0
#oanvänd
-1
# lägsta temperaturintervall i sekunder
60
#max temperaturintervall i sekunder
300
#pannans effektintervall
0
#EasyIOT pannkraftsnod
-1
#EasyIOT bell push -nod
N10S0
# IFTTT meddela värde
främre
#IFTTT meddela händelsens namn
dörrklocka
#action URL
192.168.0.2/snap.php
Alla rader som börjar med # ignoreras. Alla rader måste finnas. -1 används för att ignorera parametrar.
Konfigurationsfilen läses när modulen startas första gången. Det kan också laddas om i ett system som körs (när konfigurationen har ändrats) genom att komma åt ip/reloadConfig
Pannlägesdelen av konfigurationen är inte relevant här men används i mina temperatursensorer som är anslutna till centralvärme i rörutgången eftersom den detekterar när pannan värmer och kan beräkna genomsnittlig strömförbrukning.
Steg 4: Meddelanden
När en dörrklocka tryck upptäcks försöker den meddela detta med IFTTT eller PushOver. Jag nu PushOver eftersom det ger en snabbare repson.
För IFTTT behöver du ett konto och aktivera Maker WebHoooks -kanalen. MakerKey från denna kanal måste sammanställas i koden.
Ställ in en IF -åtgärd med Maker WebHooks och använd händelsens namn med samma namn som i konfigurationen (t.ex. dörrklocka). ÅTGÄRDEN bör vara IFTTT -avisering. Du kan lägga till värde1 till meddelandet som finns i konfigurationsfilen. Detta kan vara användbart om du har 2 eller fler detektorer.
Du måste installera IFTTT -appen på din telefon och sedan visas aviseringar när dörrklockan utlöses.
För PushOver behöver du ett PushOver -konto och följ instruktionerna för att ta emot API -meddelanden. Du måste konfigurera NOTIFICATION_APP och NOTIFICATION_USER -tokens i programvaran med värdena från ditt PushOver -konto.
Du måste installera PushOver-appen på din telefon och betala en blygsam engångsavgift för att få aviseringar. Detta är värt det enligt min mening för att få mycket snabbare svar.
Steg 5: EasyIOT -integration
Programvaran kan skicka temperatur- och Doorbell push -rapporter till en EasyIOT -server. EasyIOT -automatisering kan användas för att vidta ytterligare åtgärder baserat på denna rapport.
Skapa en EasyIOT -server (t.ex. på en Raspberry Pi). Konfigurera ip -adress och användarnamnlösenord i esp8266 -programvaran och kompilera.
Lägg nu till en virtuell drivrutin i EASYIOT -konfigurationen. Välj Temperatur Analog ingång och notera EasyIOT -nodnamnet. Detta bör läggas in i temperaturnodens namn i espConfig -filen.
Lägg till en andra virtuell drivrutin. Välj Door digital ingång, notera nodnamnet och lägg i espConfig -filen.
Steg 6: Andra Bell Push -åtgärder
Programvaran har en rutin som kallas actionBellOn. Som skrivet kan detta göra 3 saker
- IFTTT meddela
- EasyIOT -rapport
- Utför en åtgärd URL
URL: en kan användas för att utlösa annan aktivitet från andra webbservrar. Webbadressen som används finns i espConfig -filen.
Om webbadressens server är autentiserad måste användarnamnet och lösenordet konfigureras och sammanställas i koden.
Jag använder det här för att komma åt en URL som heter snap.php på en kamera bredvid dörren. Detta tar en-j.webp
Jag använder Raspberry Pi -baserade kameror som hanterar denna operation väldigt enkelt. kamera
Rekommenderad:
Fuktighet, tryck och temperaturberäkning med BME280 och fotongränssnitt: 6 steg
Fuktighet, tryck och temperaturberäkning med BME280 och fotongränssnitt .: Vi stöter på olika projekt som kräver temperatur-, tryck- och fuktövervakning. Således inser vi att dessa parametrar faktiskt spelar en viktig roll för att ha en uppskattning av arbetseffektiviteten hos ett system vid olika atmosfäriska förhållanden
Arduino AMS5812_0050-D-B Tryck- och temperatursensor Handledning: 4 steg
Arduino AMS5812_0050-D-B Tryck- och temperatursensor Handledning: AMS5812 Amplifierad trycksensor med analoga och digitala utgångar är en högprecisionssensor med analog spänningsutgång och digitalt I2C-gränssnitt. Den kombinerar ett piezoresistivt avkänningselement med ett signalkonditioneringselement för dess drift.
Bestämning av tryck och höjd med GY-68 BMP180 och Arduino: 6 steg
Bestämning av tryck och höjd med GY-68 BMP180 och Arduino: Översikt I många projekt som flygrobotar, väderstationer, förbättrad routingprestanda, sport och etc. är mätning av tryck och höjd mycket viktigt. I denna handledning lär du dig hur du använder BMP180 -sensorn, som är en av de mest
Förvandla din trådbundna dörrklocka till en smart dörrklocka med IFTTT: 8 steg
Förvandla din trådbundna dörrklocka till en smart dörrklocka med IFTTT: WiFi -dörrklockan gör din befintliga trådbundna dörrklocka till en smart dörrklocka. https://www.fireflyelectronix.com/product/wifidoor
Förvandla din trådbundna dörrklocka till en smart dörrklocka med hemassistent: 6 steg
Förvandla din trådbundna dörrklocka till en smart dörrklocka med hemassistent: Förvandla din befintliga trådbundna dörrklocka till en smart dörrklocka. Få ett meddelande till din telefon eller para med din befintliga ytterdörrkamera för att få en foto- eller videovarning när någon ringer på din dörrklocka. Läs mer på: fireflyelectronix.com/pro