Cuprins:

Senzor de apăsare și temperatură a soneriei ușii: 6 pași
Senzor de apăsare și temperatură a soneriei ușii: 6 pași

Video: Senzor de apăsare și temperatură a soneriei ușii: 6 pași

Video: Senzor de apăsare și temperatură a soneriei ușii: 6 pași
Video: 10 Setari si Trucuri importante pentru un telefon SAMSUNG ! 2024, Iulie
Anonim
Senzor de apăsare și temperatură a soneriei ușii
Senzor de apăsare și temperatură a soneriei ușii

Acest lucru îmbunătățește un clopot de ușă cablat standard cu un modul esp-12F (esp8266).

Se instalează în clopot în sine pentru a evita orice schimbare a cablajului. Oferă următoarele funcții

  • Detectați apăsarea soneriei ușii
  • Trimite notificări către telefon prin IFTTT
  • Stochează activitatea soneriei pe un server easyIOT (opțional)
  • Declanșați alte activități prin intermediul unei adrese URL atunci când soneria este împinsă

    Capturez un instantaneu pe o cameră web lângă ușă și pot vizualiza capturile recente ale soneriei de pe telefon

  • Senzor de temperatură încorporat opțional (DS18B20) care face parte din monitorizarea temperaturii casei mele

Pasul 1: Hardware și materiale

Hardware și materiale
Hardware și materiale
Hardware și materiale
Hardware și materiale

Sunt necesare următoarele materiale

  • ESP-12F (ESP8266) modul wifi / cpu
  • Convertor DC Buck pentru alimentare de 3.3V
  • Diodă redresoare (de ex. 1N4001)
  • Condensator electrolitic 220uF 35V
  • Condensator electrolitic 220uF 16V
  • Diodă Zener 3.3 sau 2.6V
  • Rezistențe
  • Bucată de scândură
  • Conectori dacă este necesar
  • Senzor digital de temperatură DS18B20, dacă este necesar

Schema arată circuitul utilizat. Presupune un clopot alimentat cu curent alternativ de joasă tensiune, cel mai frecvent tip de clopot simplu cu fir. Acest lucru nu este critic, singura constrângere fiind tensiunea maximă în convertorul buck. Cel pe care îl folosesc este MP2307 bazat pe o intrare maximă de 23V dc (~ 16V AC).

În mod normal, există 3 terminale active. Cu clopotul, faceți conexiunea dintr-o parte a sursei de curent alternativ la solenoidul clopotului. Modulul utilizează cele două terminale de curent alternativ pentru a produce puterea de curent continuu printr-un redresor simplu cu jumătate de undă. Detectarea apăsării clopotului se face prin monitorizarea tensiunii pe solenoidul real. Acest lucru va fi normal măcinat, dar când clopotul este activat va fi AC complet. O diodă rezistor / zener clipește acest lucru, astfel încât un impuls 0 - 3,3V 50 Hz este alimentat într-un pin GPIO. Software-ul procesează acest lucru pentru a oferi o singură activare pentru fiecare apăsare a clopoțelului.

Am construit circuitul pe o bucată de placă de benzi și acest lucru este suficient de mic pentru a se încadra cu ușurință în clopot. Folosesc conectori jumper simpli pentru a facilita instalarea și includerea în mod specific în conformitate cu sursa principală de CA, astfel încât să poată fi resetată cu ușurință, dacă este necesar.

Schema prezentată include un senzor de temperatură DS18B20. Acest lucru este opțional. Îl folosesc ca parte a unei rețele care monitorizează majoritatea zonelor din casa mea. Dacă este inclus, este bine să conectați senzorul cu câțiva centimetri de cablu pentru a permite izolarea acestuia de orice efect de încălzire locală.

Pasul 2: Software

Unitatea de împingere a ușii utilizează o schiță Arduino disponibilă pe github

Acest lucru trebuie ajustat pentru a se potrivi condițiilor locale și apoi compilat într-un mediu Arduino esp8266. Următoarele biblioteci sunt necesare, sunt standard sau pot fi adăugate.

  • ESP8266WiFi
  • WifiClient
  • ESP8266WebServer
  • ESP8266mDNS
  • ESP8266HTTPUpdateServer
  • ArduinoJson
  • WifiClientSecure
  • IFTTTMaker
  • DNSServer
  • WiFiManager (utilizare opțională)
  • OneWire
  • DallasTemperature

Elementele din schiță care urmează să fie modificate includ

  • Detalii de acces la rețeaua locală wifi (ssid, parolă) dacă nu utilizați WifiManager
  • Cod de autorizare pentru acces web AP_AUTHID. Este bine să faci acest lucru o lungime decentă. Poate conține caractere alfanumerice.
  • firmware parola OTA update_password
  • Parola WifiManager WM_PASSWORD

    Wifi poate fi configurat manual comentând WM_NAME

  • Cheia producătorului IFTTT (consultați pasul de notificare)

Modificările opționale includ

  • Schimbarea pinului de intrare pentru detectorul soneriei
  • Pin de schimbare pentru senzorul de temperatură
  • Schimbarea portului de acces Web de la 80 implicit

Odată ce ați făcut acest lucru, ar trebui mai întâi să fie compilat și încărcat folosind încărcarea în serie convențională. Actualizarea ulterioară se poate face prin compilarea unui binar de export în mediul Arduino și apoi accesarea interfeței OTA de pe ip / firmware.

Apăsarea soneriei ușii este detectată în software prin întreruperea detectării marginii ascendente a primului impuls din circuitul detectorului. Toate întreruperile ulterioare sunt ignorate. Un timeout este utilizat pentru a reactiva detectorul după BELL_MIN_INTERVAL care este setat la 10 secunde.

Alte activități pot fi accesate pe serverul web esp8266

  • ip / recent arată activitatea recentă a soneriei
  • ip / reloadConfig reîncarcă espConfig
  • ip / bellPush simulează o apăsare a soneriei

Pasul 3: Configurare

Pe măsură ce este construit, software-ul își obține configurația de pe un server web local. Modulul încarcă datele de configurare pe baza adresei Mac. Acest lucru face foarte convenabil rularea mai multor module folosind același binar și, de asemenea, face mai ușoară actualizarea configurației fără recompilare. Ar fi posibil să omiteți acest lucru și să introduceți datele de configurare direct în cod.

Stoc fișierul de configurare pe serverul meu EasyIOT care are un folder la easyIOT / html unde fișierul de configurare poate fi recuperat cu ușurință.

Fișierul se numește espConfig și este un fișier text simplu care stochează un număr de parametri (12) pentru fiecare posibilă adresă Mac. Un modul încarcă numai parametrii setați pentru adresa sa Mac.

Un exemplu din fișier este

#Sala

#Mac address123456ABCDEF

#numele modulului

esp8266-hall

#mască mod server (1 = sens temporar, 4 = mod boilerm, 4 = sonerie)

9

Nod #EIOT pentru temperatură

N9S0

# neutilizat

-1

# interval de temperatură minimă în secunde

60

#interval de temperatură maximă în secunde

300

#interval de putere al cazanului

0

Nodul de putere al cazanului #EasyIOT

-1

Nodul de apăsare a clopotului #EasyIOT

N10S0

# Valoarea notificării IFTTT

față

#IFTTT notifică numele evenimentului

sonerie

#action URL

192.168.0.2/snap.php

Orice linie care începe cu # este ignorată. Toate liniile trebuie să fie prezente. -1 este utilizat pentru ca parametrii să fie ignorați.

Fișierul de configurare este citit atunci când modulul pornește pentru prima dată. Poate fi, de asemenea, reîncărcat într-un sistem care rulează (când configurarea a fost modificată) accesând ip / reloadConfig

Partea de configurare a modului cazan nu este relevantă aici, dar este utilizată în senzorii de temperatură atașați la ieșirea centrală a conductei de căldură, deoarece detectează când cazanul se încălzește și poate calcula consumul mediu de energie.

Pasul 4: notificări

Când este detectată o apăsare a soneriei ușii, atunci încearcă să notifice acest lucru prin IFTTT sau PushOver. Acum am PushOver, deoarece oferă un răspuns mai rapid.

Pentru IFTTT aveți nevoie de un cont și activați canalul Maker WebHoooks. MakerKey din acest canal trebuie să fie compilat în cod.

Configurați o acțiune IF folosind Maker WebHooks și utilizați numele evenimentului cu același nume ca și în configurație (de exemplu, sonerie). Acțiunea THEN ar trebui să fie o notificare IFTTT. Puteți adăuga valoare 1 la notificarea care va fi în fișierul de configurare. Acest lucru poate fi util dacă aveți 2 sau mai multe detectoare.

Trebuie să instalați aplicația IFTTT pe telefonul dvs. și apoi notificările vor apărea ori de câte ori este declanșat soneria.

Pentru PushOver aveți nevoie de un cont PushOver și urmați instrucțiunile pentru a primi notificări API. Trebuie să configurați jetoanele NOTIFICATION_APP și NOTIFICATION_USER în software cu valorile din contul dvs. PushOver.

Trebuie să instalați aplicația PushOver pe telefonul dvs. și să plătiți o taxă unică modestă pentru a primi notificări. Acest lucru merită în opinia mea pentru a obține un răspuns mult mai rapid.

Pasul 5: Integrare EasyIOT

Software-ul poate trimite rapoarte de temperatură și sonerie către un server EasyIOT. Automatizarea EasyIOT poate fi utilizată pentru a întreprinde acțiuni suplimentare pe baza acestui raport.

Configurați un server EasyIOT (de exemplu, pe un Raspberry Pi). Configurați adresa IP și parola pentru numele de utilizator în software-ul esp8266 și compilați.

Acum adăugați un driver virtual în configurația EASYIOT. Alegeți Intrare analogică de temperatură și notați numele nodului EasyIOT. Acest lucru ar trebui introdus în partea de nume a temperaturii nodului din fișierul espConfig.

Adăugați un al doilea driver virtual. Alegeți Intrare digitală ușă, notați numele nodului și introduceți-l în fișierul espConfig.

Pasul 6: Alte acțiuni Bell Push

Software-ul are o rutină numită actionBellOn. După cum este scris, acest lucru poate face 3 lucruri

  • Notificare IFTTT
  • Raport EasyIOT
  • Efectuați o adresă URL de acțiune

Adresa URL poate fi utilizată pentru a declanșa alte activități de pe alte servere web. Adresa URL utilizată se află în fișierul espConfig.

Dacă serverul adresei URL este autentificat, atunci numele de utilizator și parola trebuie configurate și compilate în cod.

Folosesc acest lucru pentru a accesa o adresă URL numită snap.php pe o cameră de lângă ușă. Acest lucru necesită un-j.webp

Folosesc camere bazate pe raspberry Pi, care realizează această operație foarte ușor. aparat foto

Recomandat: