Taula de continguts:

MQTT / Google Home DoorBell amb ESP-01: 6 passos
MQTT / Google Home DoorBell amb ESP-01: 6 passos

Vídeo: MQTT / Google Home DoorBell amb ESP-01: 6 passos

Vídeo: MQTT / Google Home DoorBell amb ESP-01: 6 passos
Vídeo: ESP8266 install ide 2024, De novembre
Anonim
MQTT / Google Home DoorBell amb ESP-01
MQTT / Google Home DoorBell amb ESP-01

Alguna vegada has trobat a faltar respondre a un convidat que et tocés al timbre només perquè ets en una part de la casa que està massa lluny per sentir el timbre del timbre? com ara soterrani, dormitori amb porta tancada o potser miraves la televisió o escoltaves música.

Si com jo, teniu un o més altaveus domèstics de Google en diverses ubicacions de casa vostra, pot ser el que necessiteu.

En aquest instructiu us mostraré com afegir un client MQTT a un timbre de timbre existent per comunicar-lo amb l’agent MQTT amb un anunci a google home / pushbullet, mitjançant NodeRED. Aquest projecte no substitueix l’interruptor del timbre ni el timbre. Encara utilitza un polsador mecànic regular per al timbre.

Afegirem el mòdul ESP-01 al sistema de timbre de 16VAC existent afegint la funcionalitat MQTT per enviar un missatge al corredor MQTT (quan es prem el botó del timbre). El corredor MQTT retransmetria el missatge a NodeRED. En rebre el missatge MQTT, NodeRED enviava un anunci a diversos dispositius domèstics de Google i, de manera opcional, també enviava missatges al mòbil / navegador mitjançant el botó push.

Tinc una passió per la domòtica de bricolatge i poc a poc vaig afegir IOT a casa meva. Google Home ha estat una de les funcions centrals de la meva domòtica.

El meu fill em va donar la idea d’aquest projecte quan em va preguntar si puc fer que Google Google anunciï cada vegada que algú ens truca el timbre. Tenim 2 pisos i acabem el soterrani a casa i, moltes vegades, no sentíem el timbre quan estem al soterrani o al pis de dalt al dormitori amb la porta tancada o amb la TV engegada.

Tenim 4 google home mini a casa ubicats a diversos llocs / habitacions i, mitjançant l’ús de google homes per anunciar un timbre, sabem immediatament en qualsevol lloc de la casa si algú fa sonar el timbre.

A casa meva, utilitzo RaspberryPi ZeroW per allotjar el servidor Mosquitto MQTT i NodeRED. Fa més d’un any que funciona sense cap problema.

Referències:

  • Diagrames de cablejat del timbre:
  • Instal·leu Mosquitto MQTT Broker a Raspberry Pi:
  • Instal·leu NodeRED a Raspberry Pi:

Pas 1: creeu el circuit a la interfície ESP-01 i el timbre de la porta

Creeu el circuit per a la interfície ESP-01 i Door Chime
Creeu el circuit per a la interfície ESP-01 i Door Chime
Creeu el circuit per a la interfície ESP-01 i Door Chime
Creeu el circuit per a la interfície ESP-01 i Door Chime
Creeu el circuit per a la interfície ESP-01 i Door Chime
Creeu el circuit per a la interfície ESP-01 i Door Chime

El primer pas seria crear el circuit que seria la interfície entre ESP-01 i Door Chime. La campaneta típica de la porta s'activa quan hi ha 16VAC entre els passadors "TRANS (anterior)" i "FRONT / REAR" tal com es mostra a la meva primera foto. El voltatge es presenta en aquests pins quan es prem el botó del timbre.

El circuit que he dissenyat és detectar aquest senyal de 16 V CA i convertir-lo a uns 3,3 V CC. És un rectificador bàsic de mitja ona format per D1 i C1. No necessitem tenir un rectificador d’ona completa en aquesta situació, ja que hi ha molt poca càrrega a la sortida de corrent continu, cosa que ens estalvia una mica de béns immobles a la placa. Vull fer el tauler el mínim possible per poder col·locar-lo dins del meu campanar actual.

R1 i R2 formen un divisor de tensió per reduir la tensió màxima de CC a uns 3,3V.

R3, TR1 i R4 formen un inversor per proporcionar lògica inversa a l’ESP-01 GPIO-2. Això és necessari per proporcionar una lògica ALTA durant l'arrencada (amb els pull-up R4 i R5) perquè ESP-01 arrenci des del flash. Quan es prem el botó del timbre, presenta una lògica BAIXA per al GPIO-2. TR1 pot ser qualsevol transistor NPN de petita potència, en el meu cas he utilitzat 2N3904.

El V1 és una font d’alimentació de 3,3VDC que he construït amb un carregador de mòbil de 5V antic juntament amb un regulador AMS1117 de 3,3VDC que mostraré al següent pas.

Per al sòcol ESP-01, faig servir un sòcol IC estàndard de 8 pins i tallo els ponts de plàstic que creen la bretxa entre les files i, a continuació, enganxo les 2 files juntes.

Pas 2: font d'alimentació de 3,3 V CC per ESP-01

Font d'alimentació de 3,3 V CC per ESP-01
Font d'alimentació de 3,3 V CC per ESP-01
Font d'alimentació de 3,3 V CC per ESP-01
Font d'alimentació de 3,3 V CC per ESP-01
Font d'alimentació de 3,3 V CC per ESP-01
Font d'alimentació de 3,3 V CC per ESP-01

En aquest pas, construirem la font d'alimentació de 3,3 V CC per a l'ESP-01. Tinc alguns adaptadors antics de carregador USB de 500 mA i 700 mA de 5VDC que he tornat a proposar per a aquest projecte. També necessitem un regulador de 3,3 V CC per baixar el voltatge de 5 V a 3,3 V, per a això estic fent servir un mòdul de regulador basat en AMS1117 pre-construït barat que he comprat a ebay. Podeu cercar el "mòdul AMS1117 de 3,3 V" i trobar el que us funcioni.

Aquest mòdul regulador de 3,3 V és molt petit i el puc introduir dins del recinte original del carregador USB de 5 V, cosa que el fa més segur del curtcircuit potencial. He tret les puntes de paret de CA del mòdul de carregador i les he substituït per dos cables que es connectaran a 120 VCA des de la paret que hi ha darrere de la campana actual. Però no traieu les puntes d’aquest pas fins que no fem la prova de prova al següent pas.

Si hi ha una presa de corrent a prop, o si no esteu còmode connectant la font d’alimentació directament al cablejat de la casa, opcionalment només podeu connectar la font d’alimentació modificada a l’endoll de paret i executar el cablejat a la campana. és possible que no sembli tan net com connectar-lo directament al cablejat de la casa.

Vegeu una de les meves fotos per veure que darrere del meu campanar hi ha un cablejat de 120 V CA i el transformador de 16 V CA per al campanar.

La sortida del regulador de 3,3 V es connectaria a la placa d'interfície ESP-01 segons el pas anterior.

Pas 3: Intermitent de l'ESP-01

En aquest pas, farem aparèixer l'ESP-01 amb l'esbós arduino. Si mai no heu llançat el mòdul ESP-01, podeu seguir les instruccions per començar:

Podeu trobar el meu esbós a la pàgina de la meva github:

A l’esbós, com a mínim heu de canviar la informació següent relativa a la vostra configuració o configuració de la vostra xarxa domèstica:

#define MQTT_SERVER "10.0.0.30" const char * ssid1 = "SSID"; const char * password1 = "MYSSIDpassword"; const char * ssid2 = "SSID1"; const char * password2 = "MYSSIDpassword";

A la meva xarxa domèstica, tinc 2 punts d'accés diferents que emeten 2 SSID diferents, i aquest esbós permetria la redundància connectant-se al següent SSID si es perd la comunicació amb l'AP actual. Si només teniu un SSID, empleneu ssid1 i ssid2 amb el mateix valor.

Un cop feta la modificació, pengeu l’esbós a l’ESP-01 i connecteu l’ESP-01 al tauler d’interfície.

Pas 4: prova d'execució

Prova de prova
Prova de prova
Prova de prova
Prova de prova
Prova de prova
Prova de prova

Des del pas 1 hem creat la placa d’interfície ESP-01 i des del pas 2 tenim la font d’alimentació de 3,3 V per a la placa ESP-01. Ara connectem la sortida de la font d'alimentació a la placa segons el diagrama del circuit, que es mostra com a V1.

Ara el següent pas és connectar els terminals Trans / Door de carilló a les connexions de la placa d'interfície que es mostren com a "Terminals de carilló de porta". Com que el meu carilló està muntat en una paret, per provar-lo, faig passar temporalment un llarg parell de cables des dels terminals del carilló fins a la placa per poder endollar la font d'alimentació.

Per comprovar si el nostre dispositiu funciona, el més fàcil seria controlar els missatges MQTT a la xarxa. Per fer-ho, heu d'obrir una sessió SSH al corredor mosquitto i emetre l'ordre següent:

mosquitto_sub -v -t '#'

L'ordre anterior ens permetria veure tots els missatges MQTT que arribaven al broker.

Connecteu la font d'alimentació a la presa de corrent i, si tot funciona, en pocs segons hauríeu de veure com a mínim el següent missatge MQTT:

stat / DoorBell / LWT en línia

Ara surt a fora i toca el timbre de la porta i hauries de veure aquest missatge:

tele / DoorBell ON

Si veieu aquests missatges, el vostre projecte serà un èxit.

També he inclòs diversos temes MQTT útils a l'esbós que podeu utilitzar:

"stat / DoorBellInfo": aquest missatge s'envia cada minut per proporcionar temps d'activitat i altra informació.

"cmnd / DoorBellInfo": ESP-01 enviarà informació si rep aquest tema amb el valor de '1' (ascii = 49) "cmnd / DoorBellCPUrestart": ESP-01 es reiniciarà si rep aquest tema amb el valor de '1 '(ascii = 49) "cmnd / DoorBellCPUreset": l'ESP-01 es restablirà si rep aquest tema amb el valor de' 1 '(ascii = 49)

"tele / FrontDoorBell": ESP-01 enviarà un missatge en aquest tema amb el valor "ACTIVAT" si es prem el timbre

Pas 5: integració de la placa i la font d'alimentació al campanar

Integració de la placa i la font d’alimentació al campanar
Integració de la placa i la font d’alimentació al campanar
Integració de la placa i la font d’alimentació al campanar
Integració de la placa i la font d’alimentació al campanar
Integració de la placa i la font d’alimentació al campanar
Integració de la placa i la font d’alimentació al campanar

Ara que ja hem realitzat la prova amb èxit, hem de muntar la placa i la font d'alimentació dins del timbre del timbre (si és possible). A la meva campana actual, hi ha un recinte buit que vaig poder obrir i ajustar la font d'alimentació dins d'aquest espai. El tauler ESP-01 no s’adapta dins d’aquest petit espai, però encara s’adapta a la caixa de campanes general. Acabo d’utilitzar una cinta gruixuda de doble cara per muntar la placa d’interfície ESP-01.

Ara podem eliminar les puntes metàl·liques del carregador USB i substituir-les per un cable més gruixut que puguem connectar al cablejat de la casa. Assegureu-vos d’apagar l’interruptor que subministra electricitat al circuit de campanades.

Si no hi ha prou espai per ajustar el nostre projecte a la campaneta de la porta existent, haureu de col·locar-la en una caixa separada i muntar-la a prop de la campaneta de la porta.

Pas 6: toc final

Toc final
Toc final

Ara que el projecte funciona i és capaç de publicar el missatge MQTT al corredor, el següent pas és pensar la idea de què fer-ne.

Al meu projecte, faig servir Node-RED per escoltar / subscriure’s al tema del timbre MQTT i anunciar-lo a diversos altaveus de Google Home. A més d’això, també he vinculat el flux a un node pushbullet per enviar notificacions al meu telèfon Android, de manera que sé si algú fa sonar el timbre encara que no estigui a casa. La notificació de pushbullet no és útil per a alguns, però ha estat força útil un parell de vegades per a mi, juntament amb una càmera de vídeo al meu porxo, puc veure qui ha vingut a lliurar els lliuraments (normalment sonen al timbre). No puc confiar gaire en la funció de detecció de moviment de la càmera a causa de diverses interferències, especialment les ombres dels arbres en moviment.

La imatge d’aquest pas mostra el flux Node-RED per aconseguir-ho. També podeu enganxar el flux de la meva pàgina de github al vostre Node-RED:

L’anunci de Google Home és només un exemple d’aquest projecte, però crec que és el més útil i pràctic. Sempre podeu connectar-vos amb un altre oient MQTT o fins i tot fer servir IFTTT per conduir altres dispositius quan es prem el timbre.

Diverteix-te…

Recomanat: