Construir uma campainha inteligente DIY para o assistente doméstico com notificações push
Uma campainha inteligente é uma forma conveniente e inovadora de aumentar a sua comodidade e segurança doméstica e descobrir quem está à sua porta, mesmo quando não está em casa.
Propomos a construção de um sistema avançado de campainha com Wi-Fi utilizando dois módulos ESP8266. O dispositivo será integrado na plataforma inteligente de domótica do Home Assistant e emitirá alertas em tempo real para o seu telemóvel em resposta ao toque da campainha. Esta funcionalidade sem falhas funciona igualmente bem para interacções locais e remotas.
Coisas de que vai precisar
Para construir uma campainha de porta caseira com Wi-Fi, vai precisar de vários elementos essenciais.
Duas placas de microcontroladores ESP8266, incluindo mas não se limitando aos modelos NodeMCU e D1 Mini, funcionarão como unidade central de processamento do sistema de campainha.
⭐Comutador de campainha
⭐Fonte de alimentação micro USB
⭐DFPlayer Mini (módulo de leitor de MP3)
⭐Cartão microSD (512MB ou superior)
O dispositivo requer um altifalante com uma largura de uma polegada ou duas polegadas para produzir a saída de áudio.
⭐Rede Wi-Fi de 2,4 GHz
O utilizador tem a opção de alojar o servidor do Assistente Doméstico num dispositivo Raspberry Pi ou de o instalar diretamente num computador pessoal baseado em x86.
Para estabelecer a comunicação entre vários componentes electrónicos, é necessário utilizar fios de ligação em ponte que servirão de vias condutoras para que os sinais eléctricos circulem entre eles. Estes fios são normalmente utilizados em conjunto com placas de ensaio ou outros tipos de plataformas de prototipagem e podem ser facilmente cortados à medida, de acordo com os requisitos específicos de um determinado projeto. Ao ligar vários componentes através destes fios de ligação em ponte, torna-se possível criar circuitos e sistemas complexos que permitem uma vasta gama de funcionalidades no âmbito de um projeto eletrónico global.
Passo 1: Compilar o Firmware
Vamos compilar dois firmwares diferentes:
⭐Firmware do altifalante da campainha inteligente (recetor)
⭐Firmware do interrutor da campainha inteligente (transmissor)
Para construir o software para o altifalante da campainha inteligente e o interrutor que o acompanha, siga a seguinte série de acções:
⭐ Se ainda não estiver instalado, instale o ESPHome no Assistente Doméstico: vá a Settings > Add - Ons e clique em ESPHome . Captura de ecrã de Ravi. NAR
Siga estes passos para adicionar um novo dispositivo na interface de utilizador da Web:1. Aceda à interface de utilizador baseada na Web, clicando em “Click”.2.Uma vez iniciada a sessão, navegue até à opção “Novo dispositivo”, seleccionando-a entre as opções disponíveis ou utilizando a funcionalidade de pesquisa fornecida na aplicação.
Para prosseguir com o processo de configuração do seu dispositivo, pode optar por fornecer um nome para o mesmo. Nesta demonstração em particular, designámo-lo por “smart-bell-speaker”. Em alternativa, pode optar por ignorar este passo e passar à fase seguinte, clicando no botão “Seguinte” ou, se preferir, pode saltar este passo.
⭐ Em seguida, seleccione a placa ESP8266 nas opções e clique em Saltar .
Nesta instância, deve ser implementada uma nova configuração intitulada “smart-bell-speaker”.
De forma semelhante, vamos estabelecer mais uma configuração, que designaremos por “smart-bell-switch”.
Uma vez estabelecidas as configurações necessárias, clique na opção “Editar” para aceder e modificar a configuração do seu altifalante Smart Bell.
⭐ De seguida, cole o seguinte código abaixo do texto captive_portal:.
uart:
tx_pin: GPIO3
rx_pin: GPIO1
baud_rate: 9600
dfplayer:
on_finished_playback:
then:
logger.log: 'Playback finished event'
api:
encryption:
key: "kQ5tP73N1pOl6XDYtq5RY15IaPsXjTg2A9g5nzHPejE="
services:
- service: dfplayer_next
then:
- dfplayer.play_next:
- service: dfplayer_previous
then:
- dfplayer.play_previous:
- service: dfplayer_play
variables:
file: int
then:
- dfplayer.play: !lambda 'return file;'
- service: dfplayer_play_loop
variables:
file: int
loop_: bool
then:
- dfplayer.play:
file: !lambda 'return file;'
loop: !lambda 'return loop_;'
- service: dfplayer_play_folder
variables:
folder: int
file: int
then:
- dfplayer.play_folder:
folder: !lambda 'return folder;'
file: !lambda 'return file;'
- service: dfplayer_play_loop_folder
variables:
folder: int
then:
- dfplayer.play_folder:
folder: !lambda 'return folder;'
loop: true
- service: dfplayer_set_device_tf
then:
- dfplayer.set_device: TF_CARD
- service: dfplayer_set_device_usb
then:
- dfplayer.set_device: USB
- service: dfplayer_set_volume
variables:
volume: int
then:
- dfplayer.set_volume: !lambda 'return volume;'
- service: dfplayer_set_eq
variables:
preset: int
then:
- dfplayer.set_eq: !lambda 'return static_cast<dfplayer::EqPreset>(preset);'
- service: dfplayer_sleep
then:
- dfplayer.sleep
- service: dfplayer_reset
then:
- dfplayer.reset
- service: dfplayer_start
then:
- dfplayer.start
- service: dfplayer_pause
then:
- dfplayer.pause
- service: dfplayer_stop
then:
- dfplayer.stop
- service: dfplayer_random
then:
- dfplayer.random
- service: dfplayer_volume_up
then:
- dfplayer.volume_up
- service: dfplayer_volume_down
then:
- dfplayer.volume_down
⭐ Além disso, edite os segredos do SSID Wi-Fi e da palavra-passe com o seu nome e palavra-passe Wi-Fi. Certifique-se de que o local onde vai instalar o altifalante inteligente e o interrutor inteligente tem uma boa cobertura de rede Wi-Fi.
wifi:
ssid: "MyWiFiName"
password: "MyWiFiPassword"
Siga estes passos para concluir o processo de instalação:1. Clique no botão “Guardar” abaixo para prosseguir com a instalação.2. Depois de ter clicado em “Guardar”, clique no botão “Instalar” localizado na parte inferior do ecrã.3. Ao clicar em “Instalar”, o software começará a ser transferido e instalado no seu dispositivo. Certifique-se de que permanece ligado à Internet durante todo este processo.
⭐ Escolha Download manual . Isso iniciará a compilação do firmware. Uma vez compilado, descarregue e guarde o firmware no seu sistema.
⭐ Agora, abra o projeto smart-bell-switch, altere os segredos Wi-Fi e, em seguida, cole o seguinte código abaixo do captive_portal:
binary_sensor:
- platform: gpio
name: "Smart Bell Switch"
pin:
number: 4
mode: INPUT_PULLUP
inverted: True
on_press:
- switch.toggle: relay1
internal: True
switch:
- platform: gpio
name: "Smart Door Bell"
icon: 'mdi:bell'
id: relay1
pin:
number: 2
mode: OUTPUT
inverted: True
Siga estes passos para concluir o processo de instalação:1. Clique no botão “Save” (Guardar) para prosseguir com a transferência dos componentes de software necessários para o seu dispositivo.2. Quando a transferência estiver concluída, clique no botão “Install” (Instalar) para iniciar o processo de instalação.
Ao selecionar “Manual Download”, os utilizadores podem optar por iniciar o processo manualmente após a compilação do firmware. O software foi concebido para guardar o firmware e os ficheiros que o acompanham no ambiente de trabalho do utilizador, para maior comodidade.
Passo 2: Transferir ficheiros de som MP3 para um cartão MicroSD
Para utilizar este método de reprodução do som da campainha selecionada em intervalos aleatórios durante cada período de pausa, siga estes passos:
Passo 3: Colocar o firmware no microcontrolador ESP8266
Para atualizar o firmware no seu dispositivo NodeMCU ou D1 Mini, terá de estabelecer uma ligação entre este e o seu computador através de um cabo micro USB. Uma vez ligado, siga as instruções seguintes para executar com êxito o processo de atualização do firmware.
⭐ Descarregue e inicie a ferramenta ESPHome-Flasher .
Seleccione a porta de comunicação adequada e, em seguida, navegue até ao ficheiro de firmware especificado, clicando em “Procurar”. Isto permitir-lhe-á carregar o ficheiro que foi previamente descarregado num passo subsequente.
⭐ Clique em Flash ESP . Aguarde até que o firmware seja ativado.
Após a conclusão do processo, o gadget estabelecerá sem problemas uma ligação sem fios à rede Wi-Fi especificada, sem qualquer outra intervenção do utilizador.
Siga um processo semelhante para carregar o firmware em ambos os módulos ESP8266.
Passo 4: Ligar a placa ESP8266 com o DFPlayer e o altifalante
Consulte o diagrama em anexo para obter orientação sobre como ligar o DFPlayer ao microcontrolador ESP8266, no qual foi instalado o firmware do altifalante com campainha inteligente.
A utilização de fios de ligação em ponte facilita o estabelecimento de comunicação eléctrica entre os componentes, enquanto que a utilização de um ferro de soldar permite a fixação segura do altifalante ao DFPlayer (módulo de leitor de MP3), assegurando o seu correto funcionamento.
Depois de todos os componentes terem sido corretamente integrados, utilize dois fios de ligação em ponte com cerca de 5 cm de comprimento, com terminais macho numa extremidade e terminais fêmea na extremidade oposta. Estes devem ser ligados ao pino D2 do módulo NodeMCU ou D1 Mini ESP8266 e a um pino de terra identificado como “3V” ou “3.3V”. Por fim, fixe firmemente as extremidades livres destes fios de ligação em ponte ao interrutor de campainha com botão de pressão convencional representado na ilustração anexa.
Certifique-se de que verifica cuidadosamente as ligações eléctricas antes de prosseguir com o seu trabalho.
Passo 5: Adicionar dispositivos ao Assistente Doméstico
Para incorporar ambos os aparelhos no Assistente Doméstico, é necessário seguir os procedimentos seguintes:
Navegue até ao separador “Settings” (Definições) e, em seguida, seleccione “Devices & Services” (Dispositivos e Serviços).
⭐ Verá o smart-bell-switch e o smart-bell-speaker (se estiver ligado) na lista Discovered Devices (Dispositivos descobertos).
⭐Clique emConfigurar>Enviar.
⭐ Escolha uma área no menu pendente e clique em Finish (Concluir).
De forma semelhante, active o dispositivo de altifalante com campainha inteligente no Assistente doméstico, ligando-o e adicionando-o à lista de dispositivos integrados.
Passo 6: Criar automação para som de campainha personalizado e notificações push
Para facilitar a transmissão de alertas para a sua câmara de vídeo de entrada sem fios inteligente do tipo “faça você mesmo” através da plataforma do Assistente Doméstico, é necessário estabelecer uma integração personalizada no sistema. Para iniciar este processo, siga as instruções seguintes:
Para aceder às definições de automatização e de cenas no seu Home Assistant, navegue até “Definições” e seleccione “Automatizações & Cenas”.
⭐ Clique em Criar automação > Criar nova automação .
Clique em “Add Trigger” para criar um novo acionador de dispositivo. Depois, navegue até à secção “Dispositivo” para fazer a sua seleção.
Faça uma seleção entre as opções disponíveis, incluindo a ativação da funcionalidade “Smart Doorbell” no menu pendente “Trigger”.
Clique no botão “Adicionar ação” e, em seguida, navegue até ao menu pendente e seleccione “Serviço de chamadas”.
⭐ Escolha ESPHome: smart_speaker_dfplayer_play no menu pendente.
No documento acima mencionado, especifique um de três sons de campainha MP3 distintos, seleccionando entre as opções 1, 2 ou 3 no ficheiro de texto designado.
⭐ De seguida, clique em Guardar .
Atribua um nome à automatização e, em seguida, prima novamente o botão “Guardar” para confirmação.
Para receber notificações push no seu dispositivo móvel, terá de transferir a aplicação Home Assistant para o seu smartphone, iniciar sessão na sua conta Home Assistant e, em seguida, tocar em “Adicionar ação” na interface de automatização.
⭐ Seleccione Serviço de chamadas e escolha Notificações: Enviar uma notificação via mobile_app_YourPhone .
Introduza uma mensagem que gostaria de receber como notificação e, em seguida, clique em “Guardar” para prosseguir com o envio.
Ao premir o botão da campainha, será enviada uma notificação para o altifalante designado, iniciando o processo e fornecendo uma indicação audível da sua funcionalidade. O registo do sistema também pode ser consultado para obter mais informações sobre a execução bem sucedida desta tarefa.
Tornar uma campainha de porta inteligente mais inteligente
A realização de uma campainha de porta com vídeo activada por Wi-Fi do tipo “faça você mesmo”, utilizando módulos de microcontrolador ESP8266 e o Home Assistant como plataforma interactiva, pode ser considerada gratificante e económica do ponto de vista financeiro.
Uma vez implementadas com êxito as funções fundamentais da campainha inteligente Wi-Fi montada por si própria, é possível incorporar uma câmara de protocolo de Internet de circuito fechado de televisão (CCTV) para melhorar as capacidades de vigilância e a integração com o Assistente Doméstico utilizando o Frigate NVR para facilitar operações de automatização doméstica mais complexas, bem como para reforçar a proteção doméstica. Além disso, uma alternativa ao interrutor de campainha convencional pode ser substituída por um sensor de infravermelhos passivos (PIR) ou um sensor capacitivo tátil para personalizar ainda mais as funcionalidades do sistema. As potenciais aplicações que podem ser alcançadas através do Home Assistant são virtualmente ilimitadas.