Índice:
- Etapa 1: O que você precisa
- Etapa 2: configurar as tomadas
- Etapa 3: configurar uma conta PubNub
- Etapa 4: preparar Raspberry Pi
- Etapa 5: Criação do circuito
- Etapa 6: Obtenha seus códigos RF
- Etapa 7: executando o programa
- Etapa 8: Execução na inicialização
- Etapa 9: Adicionar mais interruptores
- Etapa 10: Indo além
- Etapa 11: créditos
Vídeo: Automação residencial barata e eficaz com Raspberry Pi: 11 etapas (com fotos)
2024 Autor: John Day | [email protected]. Última modificação: 2024-01-30 11:39
Sempre quis ser capaz de controlar as luzes sem fio, mas as opções comerciais geralmente são caras. As luzes Philips Hue custam cerca de US $ 70, e as luzes conectadas por Wi-Fi também são caras. Este tutorial explicará como controlar até cinco luzes / lâmpadas / fios de luz de Natal por cerca de US $ 50 e pode ser expandido para incluir mais luzes também.
Etapa 1: O que você precisa
Materiais:
Raspberry Pi Zero W (edição sem fio)
Cartão Micro SD (pelo menos 4gb)
Conversor / cabo mini HDMI para HDMI (há uma diferença entre mini e micro, certifique-se de obter o correto!)
Micro USB para cabo / conversor USB
Teclado USB
Observação: recebi um kit inicial Raspberry Pi Zero W da Amazon que veio com Raspberry Pi Zero W, cartão SD, capa, cabo de alimentação, conversor HDMI e conversor USB. Por apenas $ 30, é uma boa opção (link)
Você pode usar um modelo diferente de Raspberry Pi, mas o Raspberry Pi deve ter algum tipo de conexão com a internet, e o Pi Zero W é a opção mais barata.
Tomadas remotas - usei estas
Transmissor e receptor RF (Nota: a frequência do transmissor / receptor deve corresponder à frequência das tomadas remotas) - Eu usei estes
Fio para antena (usei fio de cobre de núcleo sólido de calibre 22, outro fio pode funcionar)
Placa de ensaio, fios de jumper, conector macho-macho de 40 pinos
Programas:
Raspberry Pi OS (faça download do Raspbian Desktop)
Imager de disco Etcher (para gravar o Pi OS no cartão SD)
Ferramentas:
Ferro de solda
Computador para baixar Pi OS e Etcher
Etapa 2: configurar as tomadas
Comece conectando suas tomadas em uma tomada. Siga as instruções incluídas para configurá-los e conecte suas luzes / aparelhos. Verifique se o controle remoto está emparelhado corretamente e controlando os soquetes.
Etapa 3: configurar uma conta PubNub
PubNub é um servidor de internet gratuito que permite a comunicação entre dispositivos, em qualquer lugar do mundo. O script python recebe mensagens de uma página da web e usa as informações da mensagem para acender ou apagar as luzes. Você pode se inscrever para uma conta gratuita aqui. Depois de se inscrever, faça login em sua conta. Isso o levará a uma página de gerenciamento de aplicativos. Clique em "Criar novo aplicativo". Dê a você um nome de aplicativo e, em seguida, selecione-o na lista de aplicativos (se este for o seu primeiro aplicativo, será o único). Isso o levará à página de chaves do aplicativo. Clique em "Demo Keyset" e você verá três chaves diferentes. Mantenha esta página ativa, você precisará dessas chaves mais tarde. Agora que você tem sua conta PubNub, pode configurar seu pi de framboesa.
Etapa 4: preparar Raspberry Pi
Baixe Etcher e o Raspberry Pi OS em seu computador (links na lista de peças)
Instale o Etcher em seu computador e descompacte (se necessário) o Raspberry Pi OS. Insira o cartão Micro SD em seu computador e abra o Etcher. Clique em "Selecionar imagem" e navegue até o arquivo descompactado do Raspberry Pi OS. Selecione-o, clique em "Selecionar unidade" e selecione seu cartão micro SD na lista. Clique em "Flash" e espere o Etcher terminar. Assim que o Etcher for concluído, remova o cartão SD do seu computador (o Etcher o ejeta automaticamente) e insira-o no Raspberry Pi. Neste ponto, você precisará conectar o Raspberry Pi a um monitor com o conversor HDMI. Conecte um teclado (e mouse, se você tiver um hub multi-USB) e conecte o cabo de alimentação. Existem duas portas micro USB. Um é para alimentação, o outro é uma porta USB real. O mais próximo do final do Pi é a potência, enquanto o mais próximo do meio é o USB. Seu pi de framboesa começará a inicializar. Ele pode reiniciar algumas vezes durante a primeira inicialização, mas isso é normal. Assim que o raspberry pi for iniciado, conecte-o ao seu WiFi. Depois de conectá-lo ao WiFi, você pode usar um servidor SSH, mas acho mais fácil usar a GUI por enquanto. Abra uma janela de terminal e digite estes comandos:
sudo pip3 install 'pubnub == 3.9.0'
cd git clone git: //git.drogon.net/wiringPi git clone
sudo git clone https://github.com/timleland/rfoutlet.git / var / www / rfoutlet
sudo chown root.root / var / www / rfoutlet / codesend sudo chmod 4755 / var / www / rfoutlet / codesend
cd wiringPi
./construir
Agora, abra o navegador de arquivos Raspberry Pi e você deverá ver a pasta pi-home-automação. Clique duas vezes nele e você verá um arquivo chamado RFControl.py. Copie-o (clique ao lado e selecione "Copiar"), volte para a pasta pi e cole-o lá.
Desligue o raspberry pi (no menu ou executando sudo poweroff na linha de comando) e desconecte-o quando a luz verde parar de piscar.
Etapa 5: Criação do circuito
Agora é hora de criar o circuito. Usei um breadboard, mas você pode fazer como quiser.
Primeiro, devemos criar uma antena para o transmissor RF. Este tutorial instrutível explica como fazer uma antena para um transmissor RF. Siga as instruções e, em seguida, solde-o ao pino da antena do transmissor (no que usei estava identificado como ANT) com o lado mais curto mais próximo do transmissor
Conecte o transmissor
O transmissor usa estes pinos:
DADOS: GPIO 17, pino físico 11
VCC: Raspberry Pi 5v, pino físico 2
GND: Raspberry Pi GND, físico pino 6
Ligue o receptor
O receptor usa estes pinos:
GND: Raspberry Pi GND, físico pino 9
VCC: Raspberry Pi 5v, físico pino 4
DADOS: GPIO 27, pino físico 13 (há dois pinos de dados no receptor que usei e usei o mais próximo do VCC)
Etapa 6: Obtenha seus códigos RF
Depois que o circuito estiver conectado ao Raspberry Pi, verifique-o duas vezes para certificar-se de que tudo está no lugar e, em seguida, ligue-o novamente. Uma vez ligado, abra um terminal e digite
sudo / var / www / rfoutlet / RFSniffer
Em seguida, abra o programa RFControl. Colocar a janela do terminal e a janela do programa lado a lado pode ser útil na próxima etapa.
Você precisará do controle remoto incluído no kit da tomada agora. Segure-o próximo ao receptor e pressione cada botão individual. Ao pressionar um botão, você verá dois números impressos na tela. Um deles será um código de seis ou sete dígitos e o outro um código de 3 dígitos. Você precisará editar o dicionário de códigos no programa. Insira o código de 7 dígitos no local do interruptor correspondente no programa e, para cada botão liga / desliga, insira o código de 3 dígitos (este é o comprimento) no arquivo do interruptor correspondente no programa.
Por exemplo, se o switch 1 on tiver um código de 1234567, um código de off de 7654321 e um comprimento de 890, o código terá a seguinte aparência:
códigos = {
'switch1': {'on': 1234567, #Este é switch 1 on 'off': 7654321, # este é switch 1 off 'len': 890, #este é switch 1 code length}, 'switch2': {… },…}
Repita isso para cada botão. Enquanto você está editando este arquivo, altere as strings que dizem "YOUR-SUB-KEY" para sua chave de assinatura do PubNub e "YOUR-PUB-KEY" para sua chave de publicação.
Uma vez que cada botão tenha sido gravado, você pode continuar para a próxima seção.
Etapa 7: executando o programa
Agora que você tem todos os seus códigos, vá para a página do GitHub (no seu computador, não no raspberry pi) e clique no botão verde que diz "Clonar ou baixar" e, em seguida, clique em "Baixar ZIP". Assim que o download do arquivo for concluído, descompacte-o e abra a pasta. Abra o arquivo chamado main.js. Você precisará inserir suas chaves de assinatura e publicação no programa, substituindo "YOUR-PUB-KEY" pela chave de publicação e "YOUR-SUB-KEY" pela chave de assinatura.
Em seguida, volte ao seu Raspberry Pi e digite
python3 RFControl.py
Assim que imprimir "Pronto", volte ao seu computador e abra o arquivo index.html em um navegador da web fazendo um clique oposto, selecione "Abrir com" e selecione o navegador de sua preferência. Você deve ver 2 colunas de 5 botões, com os nomes das opções entre eles. Pressione qualquer um dos botões. Se controlar corretamente o soquete, ótimo! Se não, aqui estão algumas coisas que você pode tentar:
- Certifique-se de que o Raspberry Pi esteja recebendo mensagens. Ele deve ser impresso na tela sempre que receber uma mensagem da página da web. Caso contrário, certifique-se de que suas chaves de assinatura / publicação estão corretas.
- Se o Raspberry Pi estiver recebendo mensagens, verifique se os códigos RF estão corretos. Certifique-se de que as tomadas estejam emparelhadas com o controle remoto, que o controle remoto possa controlá-las e que os códigos inseridos no programa estejam corretos.
- Se os códigos RF estiverem corretos, certifique-se de que seu Raspberry Pi esteja dentro do alcance das tomadas. Se eles começarem a funcionar depois de movê-la para mais perto, pode ser necessário refazer sua antena.
- Se ainda não estiverem funcionando, conte-me seu problema nos comentários e tentarei ajudá-lo.
Etapa 8: Execução na inicialização
Para fazer seu programa Python rodar na inicialização, insira isto em seu terminal raspberry pi:
crontab -e
Em seguida, vá para a parte inferior do arquivo e digite o seguinte:
@reboot python3 /home/pi/RFControl.py &
Isso fará com que seu script Python seja executado na inicialização todas as vezes. Agora reinicie o seu Raspberry Pi.
Etapa 9: Adicionar mais interruptores
Se você quiser adicionar mais pontos de venda, siga estas instruções:
Abra RFControl.py em seu Raspberry Pi e adicione um novo switch ao dicionário de switches.
Exemplo:
switches = {
… outros interruptores … 'NOME DO INTERRUPTOR': {'on': xxxxxxx, 'off': yyyyyyy, 'len': zzz,},}
Em seguida, adicione um novo botão em seu aplicativo da web editando a variável switches em main.js em seu computador.
Exemplo:
var switches = [… Interruptores antigos… ['NOME PARA EXIBIR', 'NOME DO INTERRUPTOR'],];
Substitua NAME-TO-DISPLAY pelo nome que você gostaria que apareça na página da web e NAME-OF-SWITCH em ambos os arquivos por qualquer coisa que desejar. No entanto, deve ser diferente dos outros!
Etapa 10: Indo além
O PubNub é compatível com muitas plataformas diferentes, o que significa que você pode enviar mensagens de quase qualquer dispositivo! Usei um kit Raspberry Pi AIY Voice e PubNub para enviar comandos com a minha voz, mas isso pode ser o tópico de um Instructable posterior. Obrigado por ler meu Instructable, espero que tenha sido útil!
Etapa 11: créditos
Obrigado a Tim Leland pelo tutorial sobre como configurar o transmissor RF: tutorial
Obrigado a diy_bloke pelo tutorial sobre como criar uma antena: tutorial
Agradeço também a todos os outros que postaram tutoriais online que eu visualizei para obter ajuda!
Recomendado:
Sistema de automação residencial WiFi de ultra-baixa potência: 6 etapas (com fotos)
Sistema de automação residencial WiFi de potência ultrabaixa: Neste projeto, mostramos como você pode construir um sistema de automação residencial local básico em algumas etapas. Vamos usar um Raspberry Pi que funcionará como um dispositivo WiFi central. Considerando que, para nós finais, vamos usar IOT Cricket para fazer uma bateria de energia
Sistema de alarme de intrusão de automação residencial DIY !: 5 etapas (com fotos)
DIY Sistema de alarme de intrusão de automação residencial !: Neste projeto, mostrarei como usar o software Home Assistant para criar um sistema de alarme de intrusão para sua casa. O sistema basicamente detectará se a porta for aberta sem permissão e, em seguida, enviará uma notificação
Infinity Gauntlet - Automação residencial controlada: 8 etapas (com fotos)
Infinity Gauntlet Controlled Home Automation: Em meu projeto anterior, fiz uma manopla infinita que controla um interruptor de luz. Eu queria usar seis pedras e cada pedra pode controlar o eletrodoméstico, a fechadura da porta ou a iluminação. Então, fiz um sistema de automação residencial usando a manopla do infinito. Neste projeto
Como fazer uma casa inteligente usando o módulo de relé de controle do Arduino. Idéias para automação residencial: 15 etapas (com fotos)
Como fazer uma casa inteligente usando o módulo de relé de controle do Arduino. Idéias para automação residencial: neste projeto de automação residencial, projetaremos um módulo de relé residencial inteligente que pode controlar 5 eletrodomésticos. Este módulo de relé pode ser controlado por celular ou smartphone, remoto IR ou remoto de TV, interruptor manual. Este relé inteligente também pode sentir r
Suporte de parede para iPad como painel de controle de automação residencial, usando ímã servo controlado para ativar a tela: 4 etapas (com fotos)
Suporte de parede para iPad como painel de controle de automação residencial, usando ímã servo controlado para ativar a tela: Ultimamente, tenho passado muito tempo automatizando coisas dentro e ao redor da minha casa. Estou usando o Domoticz como meu aplicativo de automação residencial, consulte www.domoticz.com para obter detalhes. Em minha busca por um aplicativo de painel que mostra todas as informações do Domoticz