Índice:

Remoto infravermelho controlado Amazon Echo: 11 etapas (com imagens)
Remoto infravermelho controlado Amazon Echo: 11 etapas (com imagens)

Vídeo: Remoto infravermelho controlado Amazon Echo: 11 etapas (com imagens)

Vídeo: Remoto infravermelho controlado Amazon Echo: 11 etapas (com imagens)
Vídeo: COMO LIGAR E CONTROLAR QUALQUER TV COM A ALEXA? (controlador infravermelho) 2024, Julho
Anonim
Amazon Echo Controlled IR Remoto
Amazon Echo Controlled IR Remoto

O sistema Amazon Echo pode controlar muitos aspectos de uma casa inteligente, mas uma tomada inteligente só pode ser ligada e desligada. Muitos dispositivos não ligam instantaneamente simplesmente ao serem conectados e requerem etapas adicionais, como pressionar botões em um controle remoto ou no dispositivo físico para ligar ou obter as configurações desejadas.

Neste guia, um Raspberry Pi Zero W será configurado para atuar como um dispositivo doméstico inteligente que pode ser controlado pelo Amazon Echo e enviar quaisquer comandos IV desejados para um dispositivo quando solicitado para ligar ou desligar.

Neste caso específico, o Pi será configurado para aprender os comandos IR de um controle remoto fornecido com uma "Inserção de lareira de quartzo infravermelho" ClassicFlame 23II310GRA 23. Um LED IR será então usado para enviar os comandos IR sob demanda e, finalmente, o Pi configurado para emular um dispositivo Philips Hue que pode ser controlado pelo Echo.

Etapa 1: Materiais

Materiais
Materiais

Obrigatório:

  • Raspberry Pi Zero W
  • Cartão de memória Micro SDHC Classe 10 de 4 GB ou superior (exemplo de 16 GB)
  • Micro USB
  • 1 LED IV
  • Adaptador de alimentação MicroUSB (2,1 amps ou superior recomendado)
  • LED IV
  • Receptor IR VS / 1838B
  • Resistor de 100 ohm
  • Misc. arame

Recomendado:

  • Plug do fone de ouvido
  • Fone de ouvido / fio de áudio de 1/8 pol.
  • 2N2222 Transistor NPN
  • Resistor de 1k ohm
  • Capa Rapsberry Pi Zero

Para completar a configuração inicial de um Raspberry Pi Zero W, alguns periféricos adicionais serão necessários, mas não estarão em uso em tempo integral pelo projeto concluído

  • Adaptador Mini HDMI para HDMI: usado para conectar Pi Zero W a uma TV ou monitor com um cabo HDMI de tamanho normal
  • Cabo USB OTG: Usado para converter de micro-USB para porta (s) USB de tamanho completo para conectar um teclado e / ou mouse
  • Cabo HDMI: usado para conectar a TV ou monitor junto com um adaptador para mini HDMI

Os primeiros dois itens, bem como uma caixa, estão incluídos vários kits iniciais Pi Zero, como: MakerSpot Mega Kit

Etapa 2: configuração do Raspberry Pi

O site Raspberry Pi tem um excelente passo a passo para configurar o Raspbian Stretch OS em um Raspberry Pi. Eu recomendo a versão Lite para uma pegada menor se este for apenas um projeto rodando no Pi. Se você deseja ter mais opções de sistema operacional no futuro, ou uma configuração mais simples, seguir as instruções do NOOBS fará com que você comece a trabalhar imediatamente. Este guia é baseado no Raspbian, que está incluído no NOOBS

www.raspberrypi.org/learning/software-guide/

Quando o Raspbian estiver em execução, habilite o SSH para permitir conexões remotas com o dispositivo sem a necessidade de um monitor / teclado / mouse conectado diretamente ao Pi. Se você quiser opcionalmente ter acesso remoto à GUI, também pode habilitar o acesso VNC

www.raspberrypi.org/documentation/remote-access/ssh/

Também é altamente recomendável definir um IP estático na configuração da rede sem fio para que não mude com o tempo. É possível que o IP não mude se novos dispositivos não estiverem regularmente conectados à rede sem fio, mas configurá-lo como estático garantirá que isso não ocorra.

www.circuitbasics.com/how-to-set-up-a-static-ip-on-the-raspberry-pi/

Etapa 3: Configurando o LIRC

Configurando LIRC
Configurando LIRC
Configurando LIRC
Configurando LIRC
Configurando LIRC
Configurando LIRC
Configurando LIRC
Configurando LIRC

As etapas a seguir são altamente baseadas nos excelentes guias encontrados aqui:

alexba.in/blog/2013/01/06/setting-up-lirc-on-the-raspberrypi/https://camp.isaax.io/en/isaax-examples/ir-control-via- lirc-on-raspberry-pi-zero-w

Este guia é baseado no Rasbian Stretch e lirc 0.9.4c-9Outros guias podem ser baseados em versões anteriores e mencionar um arquivo hardware.conf que não é mais necessário com esta versão e superior. Também descobri que não é mais necessário modificar o arquivo / etc / modules em meus sistemas. Neste momento, serão necessárias alterações adicionais para a versão 4.19 do kernel, que não estão documentadas aqui atualmente. Certifique-se de que está em 4.14 para este conjunto de instruções

A biblioteca Linux Infrared Remote Control (LIRC) é usada para lidar com o recebimento de comandos IR por meio do módulo receptor, salvá-los em um arquivo e enviar os comandos quando desejado por meio do LED IR.

A primeira etapa é gravar os sinais de infravermelho de nosso controle remoto existente usando o receptor de infravermelho e salvá-los em um arquivo. O receptor IR só é necessário inicialmente para aprender os sinais IR e, em seguida, pode ser removido, portanto, uma conexão temporária pode ser usada.

Conecte o receptor de infravermelho ao Raspberry Pi. Use a imagem anexa para identificar os pinos VCC, GND e Signal. Usando uma placa de ensaio, fios de conexão ou flexão criativa dos pinos para as seguintes conexões

VCC conecta-se a 5 volts pinGND a um pino terra Sinal ao pino 23

Ligue e conecte-se ao Raspberry Pi abrindo o terminal no dispositivo local ou criando uma conexão SSH usando um programa como o Putty para Windows.

As linhas a seguir podem ser copiadas e coladas na sessão SSH. Eles irão adicionar / modificar linhas para vários arquivos de configuração necessários para o funcionamento do lirc.

atualização do apt sudo

sudo apt install -y lirc echo dtoverlay = lirc-rpi, gpio_in_pin = 23, gpio_out_pin = 22 | sudo tee -a /boot/config.txt sudo sed -i '/ driver = * / cdriver = default' /etc/lirc/lirc_options.conf sudo sed -i '/ device = * / cdevice = / dev / lirc0' / etc / lirc / lirc_options.conf sudo shutdown -r now

Aguarde a reinicialização do dispositivo e faça login novamente.

Opcional: Testar Receptor IR

Monte o dispositivo LIRC para confirmar que qualquer entrada pode ser recebida. Pode ser necessário reiniciar o Pi após a conclusão deste teste para torná-lo disponível para as etapas posteriores.

sudo systemctl stop lircd

modo2 -d / dev / lirc0Aponte um controle remoto IR para o receptor e pressione um botão e certifique-se de que os dados apareçam na tela CTRL + C para armazenar

Neste ponto, o programa LIRC está instalado e podemos visualizar as informações de IR.

Etapa 4: captura de códigos IR

Um perfil remoto pode ser baixado do site do LIRC

lirc-remotes.sourceforge.net/remotes-table.html

e colocado em /etc/lirc/lircd.confg.d, ou um perfil personalizado pode ser criado com seu próprio controle remoto.

Durante este processo, você digitará o nome da tecla / botão que está gravando. Apenas nomes válidos são permitidos, então execute o seguinte comando para ver todos os nomes disponíveis

irrecord --list-namespace Exemplo: usei o nome KEY_POWER quando gravei o botão liga / desliga em meu controle remoto e KEY_TIME ao gravar o botão do cronômetro

Se mais do que algumas chaves estão sendo gravadas, eu recomendo documentar os nomes das chaves usadas e para qual botão elas mapeiam, pois pode não haver um nome perfeito para o botão sendo gravado. Isso tornará mais fácil fazer referência no futuro.

Gerar um arquivo de configuração remota

Crie um novo arquivo de configuração de controle remoto (usando / dev / lirc0)

sudo systemctl stop lircd

cd ~ irrecord -d / dev / lirc0 Se você encontrar um erro dizendo que não foi possível decodificar os dados ou algo deu errado, pressione CTRL + C para cancelar e executar o último comando asirrecord -f -d / dev / lirc0 isso forçará o registro a ser executado em modo bruto e deve permitir que o processo continu

Siga as instruções na tela. Assim que o sistema for inicializado, digite o nome do controle remoto que você está gravando (o arquivo resultante será baseado neste nome), digite o nome da chave que você vai gravar e pressione o botão no controle remoto apontando-o para o receptor até que seja solicitado o próximo nome do botão. Repita esta etapa para cada botão do controle remoto que deseja gravar.

Copie seu (s) novo (s) arquivo (s) de configuração para o diretório lircd.conf.d e inicie o lirc novamente

sudo cp ~ / *. lircd.conf /etc/lirc/lircd.conf.d

sudo systemctl start lircd

Neste ponto, os códigos remotos foram gravados em um arquivo.

Etapa 5: entrada para fone de ouvido (opcional)

Entrada para fone de ouvido (opcional)
Entrada para fone de ouvido (opcional)
Entrada para fone de ouvido (opcional)
Entrada para fone de ouvido (opcional)

Para tornar a passagem dos fios e a modificação do Raspberry Pi mais modular, colei um conector de áudio de fone de ouvido de 1/8 de polegada no gabinete e conectei os fios ao conector. Fios de fone de ouvido com o plugue correspondente foram usados para conectar o LED IR, de modo que esse fio pudesse ser roteado para um local discreto para apontar para o receptor IR do dispositivo que eu queria conectar, mas poderia ser facilmente desconectado do Pi sem a necessidade de removê-lo todos os fios.

Isso é puramente opcional, mas é útil.

Etapa 6: Conectando o LED IV (rápido)

Conectando LED IV (rápido)
Conectando LED IV (rápido)
Conectando LED IV (rápido)
Conectando LED IV (rápido)
Conectando LED IV (rápido)
Conectando LED IV (rápido)

A conexão do LED emissor de infravermelho ao Raspberry Pi pode ser feita de várias maneiras. Esta etapa mostra a maneira rápida como o conectei, mas que descobri mais tarde pode exceder o limite de corrente nos pinos do Pi. Até agora, não tive problemas, mas uma maneira mais ideal de conexão é descrita na próxima etapa

Calcule o resistor necessário para o seu LED IV. https://ledcalculator.net/ pode ajudar a determinar o valor apropriado do resistor se você tiver todas as especificações do seu LED. Nesse caso, a tensão do pino 22 é de 3,3 volts, a queda de tensão do LED é de 1,2 volts, a corrente nominal é de 20 ma e 1 LED foi usado, resultando em um valor de 110 ohm do resistor necessário. Usei um único resistor de 100 ohms.

Observação: mais tarde fui informado que a corrente máxima de todos os pinos em um determinado momento é de 16 ma, portanto, essa configuração pode ultrapassar isso. Uma configuração melhor com um transistor e alimentação de 5 volts é descrita na próxima etapa, mas após várias semanas de funcionamento nesta configuração, ainda não encontrei nenhum problema.

O pino 22 no Raspberry Pi será conectado ao ânodo do LED IV, que é a perna mais longa por padrão.

O pino mais curto do LED se conecta ao resistor e, em seguida, ao pino de aterramento. Cortei a maior parte do fio do resistor e o soldei diretamente a um pino de aterramento e ao fio de aterramento que vai para o LED.

Etapa 7: Conectando o LED IV (método correto)

Conectando LED IV (método correto)
Conectando LED IV (método correto)
Conectando LED IV (método correto)
Conectando LED IV (método correto)

Para conectar corretamente o LED sem exceder o limite de extração do Raspberry Pi, conecte os LEDs à fonte de 5 volts com o resistor apropriado, conecte o pino do cátodo ao pino do coletor de um resistor 2N2222, conecte o pino do emissor do transistor ao aterramento, e conecte o pino 22 do Pi a um resistor de 1K ohm ao pino de base do transistor. Isso permite que uma corrente muito pequena do pino 22 conecte o LED ao aterramento, completando o circuito sem sobrecarregar o Pi.

No meu exemplo, conectei 2 LEDs infravermelhos para controlar a iluminação ambiente e também a lareira elétrica.

Etapa 8: Teste de envio de comandos IR

Teste de envio de comandos IR
Teste de envio de comandos IR

Para enviar um comando IR, o programa irsend é usado.

Sintaxe: irsend

Exemplo: irsend SEND_ONCE Spectrafire KEY_POWER Isso envia o comando do botão liga / desliga do controle remoto Spectrafire uma vez. Substitua Spectrafire pelo nome que você deu ao controle remoto. Repita com outros nomes de chave usados ao gravar o arquivo.

Neste estágio, você pode enviar qualquer comando previamente gravado usando o LED IR conectado ao Raspberry Pi.

Etapa 9: Instalando Ha-bridge

Para permitir que o Echo controle nosso dispositivo, emularemos uma lâmpada Philips Hue usando a ponte ha. Uma vez configurado, o Echo será capaz de detectar este dispositivo e enviar comandos liga / desliga para ele.

O site do ha-bridge descreve claramente o processo para a versão atual e é altamente recomendável revisá-lo.

github.com/bwssytems/ha-bridge

Copie e cole as seguintes linhas em uma sessão SSH para instalar e configurar a ponte HA. (Pode ser necessário executar a primeira linha em si e, em seguida, colar as linhas restantes

sudo apt install -y oracle-java8-jdk

mkdir / home / pi / habridge cd / home / pi / habridge / rm ha-bridge - *. jar -f wget $ (curl -s https://api.github.com/repos/bwssytems/ha-bridge/releases / latest | grep 'browser_' | cut -d / "-f4) mv ha-bridge - *. jar ha-bridge.jar echo [Unidade] | sudo tee /etc/systemd/system/habridge.service echo Descrição = HA Bridge | sudo tee -a /etc/systemd/system/habridge.service echo Wants = network.target | sudo tee -a /etc/systemd/system/habridge.service echo After = network.target | sudo tee -a / etc /systemd/system/habridge.service echo | sudo tee -a /etc/systemd/system/habridge.service echo [Serviço] | sudo tee -a /etc/systemd/system/habridge.service echo Type = simple | sudo tee -a /etc/systemd/system/habridge.service echo WorkingDirectory = / home / pi / habridge | sudo tee -a /etc/systemd/system/habridge.service echo ExecStart = / usr / bin / java -jar -Dconfig. arquivo = / home / pi / habridge / data / habridge.config /home/pi/habridge/ha-bridge.jar | sudo tee -a /etc/systemd/system/habridge.service echo | sudo tee -a / etc / systemd / system / hab ridge.service echo [Instalar] | sudo tee -a /etc/systemd/system/habridge.service echo WantedBy = multi-user.target | sudo tee -a /etc/systemd/system/habridge.service #Reload System Control e iniciar serviço, configuração para ativar na inicialização sudo systemctl daemon-reload sudo systemctl start habridge.service sudo systemctl enable habridge.service

Etapa 10: emular uma lâmpada Philips Hue

Emulando uma lâmpada Philips Hue
Emulando uma lâmpada Philips Hue
Emulando uma lâmpada Philips Hue
Emulando uma lâmpada Philips Hue

Com o ha-bridge em execução, abra um navegador da web e digite o endereço IP do Raspberry Pi, e a interface do ha-bridge deve aparecer.

Clique no link Adicionar / Editar na parte superior da página

Nome: digite o nome que deseja usar ao falar os comandos

Na seção intitulada "On Items", defina o tipo "Execute Command / Script / Program e insira o comando na caixa Target Item. Se vários comandos forem desejados, clique no botão Add para salvar a linha atual e insira outro comando. também é possível definir um atraso e repetir um comando um certo número de vezes. Neste caso, o botão liga / desliga precisava ser pressionado primeiro e, em seguida, o botão do temporizador pressionado 3 vezes para definir o temporizador de desligamento automático para 3 horas.

Repita a mesma ideia para a área "Itens desativados", clicando em Adicionar quando terminar.

No topo da página, clique em "Adicionar Dispositivo Bridge" para salvá-lo como um novo item, ou Atualizar Dispositivo Bridge se estiver modificando um existente.

Aponte o LED IR para o dispositivo. Na página Bridge Devices, clique no botão Test ON ou Test OFF para verificar se está funcionando conforme desejado.

Etapa 11: Conectando-se ao Amazon Echo

Conectando-se ao Amazon Echo
Conectando-se ao Amazon Echo

A última etapa é permitir que o Amazon Echo se comunique com este dispositivo. Nota: Ambos os dispositivos devem estar na mesma rede.

Opção 1) diga "Alexa, descubra dispositivos domésticos inteligentes"

Opção 2) Abra o aplicativo Alexa, toque em Menu> Smart Home e clique no link "Descobrir Dispositivos"

Após alguns instantes, o dispositivo deve ser reconhecido.

Fale, "Alexa, ligue a lareira do quarto" e verifique se o dispositivo liga conforme o esperado. Substitua a lareira do quarto pelo nome que quiser para o seu dispositivo no ha-bridge. Repita o processo para desligar o dispositivo.

Se você ainda não montou o LED IR, encontre um local discreto para montá-lo, permitindo que ele aponte na direção geral do receptor IR no dispositivo. Pode ser necessário movê-lo para apontar para diferentes áreas para encontrar o melhor local.

Recomendado: