Índice:
- Suprimentos
- Etapa 1: Compre alguns plugues inteligentes
- Etapa 2: atualizando o dispositivo
- Etapa 3: Conectando-se ao firmware pela primeira vez
- Etapa 4: Configurando o plugue
- Etapa 5: calibrar a tensão
- Etapa 6: Instalando o software no PI
- Etapa 7: Instalando o Grafana
- Etapa 8: Instalando o InfluxDB
- Etapa 9: Instalando o Telegraf
- Etapa 10: Instale o Mosquitto
- Etapa 11: Envio de dados do plugue inteligente para o Mosquitto
- Etapa 12: use o Telegraf para enviar dados do Mosquitto para o influxo
- Etapa 13: Por fim, crie gráficos no Grafana
- Etapa 14: mais algumas dicas
2024 Autor: John Day | [email protected]. Última modificação: 2024-01-30 11:35
Este foi um pequeno projeto que fiz para monitorar o uso de energia de aparelhos individuais pela casa e exibir gráficos de seu uso de energia ao longo do tempo. Na verdade, é um dos projetos mais fáceis baseados no Raspberry PI que fiz, sem a necessidade de soldar ou hackear produtos abertos. Não precisa ser um projeto Raspberry PI, pode ser feito facilmente em uma caixa Linux ou talvez Windows.
O custo é de $ 50 AUD para o conjunto de 4 do monitor de energia / plugues inteligentes e o custo de um Raspberry PI. Isso pode ser executado em um Pi Zero ou no PI Original, embora eu tenha achado que era um pouco lento. O único outro PI que tenho é um PI 3 e eu achei muito rápido, então é o que eu recomendaria. Observe se você deseja executá-lo em um PI mais antigo, pode reduzir a frequência de coleta de dados (eu estava usando 10 segundos).
Este projeto também tem o benefício adicional de liberar o plugue inteligente do firmware do fabricante, para que você não precise usar seus aplicativos e serviços em nuvem específicos. Portanto, eles podem ser usados com o Home Assist ou apenas com seus próprios scripts Python.
Observe que estou assumindo que você sabe como instalar o sistema operacional no PI, conecte-se a ele e execute alguns comandos básicos do Linux. Também estou supondo que você sabe como encontrar o endereço IP do seu plugue inteligente assim que ele se conectar ao seu WiFi.
Suprimentos
2 pacotes ou 4 pacotes de plugues inteligentes a partir daqui:
www.kogan.com/au/buy/kogan-smarterhome-sma…
1 framboesa PI
Habilidades:
Capacidade de configurar um PI de framboesa
Linha de comando básica do Linux
Editor de texto como vi ou nano (o nano é mais amigável, o vi é mais rápido quando você o conhece)
Capacidade de encontrar IP de dispositivos em sua rede.
Etapa 1: Compre alguns plugues inteligentes
O plugue inteligente que usei foi daqui:
www.kogan.com/au/buy/kogan-smarterhome-sma…
Observe que há uma grande variedade de plugues inteligentes que são compatíveis, a maioria (todos?) São dispositivos baseados em ESP8266 (WEMOS) e são muito fáceis de atualizar. Certifique-se de obter algo que tenha monitoramento de energia como muitos não. Esta página mostra uma grande lista de dispositivos compatíveis:
templates.blakadder.com/plug.html
Etapa 2: atualizando o dispositivo
Essa parte foi surpreendentemente fácil. Você basicamente baixa o software, executa-o e ele o orienta.
Para isso, você precisará de uma caixa Raspberry PI ou Linux com wi-fi. Você precisará ter sua conexão primária com este dispositivo NÃO sendo o WiFi. Para o meu PI3, isso foi fácil, pois eu estava conectado via Ethernet. Se você tiver um PI Zero, terá que se conectar da maneira antiga, com teclado e monitor.
Presumo que você saiba como configurar um PI e se conectar a ele com SSH ou teclado, então não vou passar por isso. Se você não tiver certeza, existem muitos tutoriais na web.
Antes de começarmos, apenas algumas informações básicas sobre os dispositivos. Há uma empresa na China chamada Tuya que produz plugues inteligentes para diferentes clientes. Eles personalizam para clientes diferentes e fornecem um firmware padrão e permitem que as empresas façam suas próprias modificações. O problema com isso é que, se você tiver vários produtos de diferentes fornecedores, terá que executar vários aplicativos, alguns dos quais funcionam melhor do que outros. Ao atualizar um firmware de código aberto, você se livra de tudo isso. Portanto, isso é bom para automação residencial em geral.
Então …. sem mais delongas, aqui estão as instruções:
1) Execute esses comandos no PI, isso instalará o software necessário.
# git clone https://github.com/ct-Open-Source/tuya-convert# cd tuya-convert #./install_prereq.sh
2) Conecte o plugue inteligente na alimentação
3) Ligue-o com o botão
4) Segure o botão liga / desliga até que a luz azul comece a piscar
5) Aguarde 10 segundos. Isso não é essencial, mas descobri que funcionava melhor se você o fizesse.
6) Execute este comando
./start_flash.sh
A partir daqui basta seguir as instruções, mas no final selecione "2. Tasmota". Existe uma opção para um firmware diferente, mas não tentei, então não tenho certeza de como é.
Observe que tive que fazer isso mais de uma vez, a princípio pensei que tinha travado o dispositivo, não tinha luzes, nem clique do relé, nem sinais de vida. Mas eu desliguei e executei o último comando novamente e funcionou. Tive que fazer isso com 3 dos 4 dispositivos que atualizei, apenas um foi direto, acho que devido à etapa 5.
Instruções completas aqui:
github.com/ct-Open-Source/tuya-convert
Etapa 3: Conectando-se ao firmware pela primeira vez
Depois de ativar o tasmota no dispositivo, ele não mostrará muitos sinais de vida. A razão para isso é que ele precisa ser configurado. Fazer isso é bastante fácil, achei melhor fazê-lo com meu telefone. As etapas são:
1) Procure pontos de acesso WiFi
2) Conecte-se àquele identificado como tasmota_xxxx (onde x são números)
3) O telefone deve direcioná-lo para a página padrão, caso não vá para 192.168.4.1
Observe que em alguns telefones pode aparecer uma mensagem dizendo "sem acesso à Internet, deseja permanecer conectado", selecione sim.
4) Na página que aparece, digite o nome da sua rede WiFi e a senha nas 2 primeiras caixas. Clique na opção para mostrar a senha e verifique três vezes se você digitou a senha correta. Se você digitou a senha errada, acredito que pode ser difícil voltar para esta tela de configuração. Observe que você também pode procurar redes WiFi, embora obviamente ainda precise inserir a senha.
5) O plugue agora deve estar conectado à sua rede sem fio. Você precisará ir para a página de configuração do seu roteador e encontrar o IP do seu dispositivo.
6) Abra um navegador da web em seu PC e vá para https:// [device_ip]. Você deve ver a tela de configuração do Tasmota.
Parabéns, você ativou o plug com sucesso.
Etapa 4: Configurando o plugue
A empresa que fabrica esses dispositivos aparentemente fabrica 10.000 dispositivos com muitas configurações diferentes. Acabamos de atualizar um novo firmware e o firmware não sabe em quais dispositivos foi atualizado. Portanto, antes de tudo funcionar, precisamos configurá-lo. Para fazer isso, precisamos encontrar os detalhes do nosso dispositivo na web e carregar essa configuração específica.
Para isso, encontre o seu dispositivo nesta página:
templates.blakadder.com/plug.html
Para o dispositivo que usei, a configuração está aqui:
templates.blakadder.com/kogan-KASPEMHUSBA….
Para definir a configuração, basta copiar o texto em Template. Nesse caso, é:
Então
1) Vá para a página de configuração do dispositivo https:// [IP do plugue inteligente]
2) Clique em configurar, configurar outro
3) Cole no seu modelo de string
4) Marque "Habilitar MQTT"
5) Clique em ativar e Salvar.
Para testar se isso funcionou, clique em "Menu principal" para voltar à página inicial e você deverá ver os números de uso de energia. Eles serão todos zero, até mesmo a voltagem, mas isso é um bom sinal. Clique no botão de alternância e você deve ouvir o clique do relé e ver a tensão subir.
Etapa 5: calibrar a tensão
Eu descobri que a leitura da tensão estava bastante alta. Se você tiver outra fonte de leitura de tensão em casa (por exemplo, medidor inteligente, talvez ??), você pode calibrar o plugue com muita facilidade. Para fazer isso
1) Obtenha a leitura de tensão correta
2) Ligue o relé no plugue inteligente
3) Clique em Console na página inicial do dispositivo
4) Digite o comando "VoltageSet 228" e pressione Enter (substitua 228 pela sua tensão)
A tensão agora deve ser exibida corretamente.
Etapa 6: Instalando o software no PI
Existem alguns pacotes que precisam ser instalados no PI. Eles são fáceis de instalar e podem ser feitos seguindo as instruções dos vários pacotes. Vou dar as instruções aqui, mas observe que elas podem mudar com o tempo, portanto, minhas instruções serão atualizadas. Os pacotes são:
Grafana (para exibir gráficos)
Influxdb (banco de dados de série temporal que armazenará nossos dados)
Telegraf (usado para enviar dados para o Influxdb)
Mosquitto (barramento de mensagem usado para transmitir dados, o plugue inteligente empurra os dados aqui)
A cadeia de fluxo de dados é assim:
Smart Plug -> Mosquitto -> Telegraf -> InfluxDB -> Grafana
Se você está perguntando por que não podemos ignorar o Mosquitto e o Telegraf, essa é uma boa pergunta. Em teoria, o Smart Plug poderia empurrar para o Influx. O problema com isso é que teria que ser configurável para centenas de terminais diferentes e nos impediria de algumas opções. A maioria das coisas em automação residencial usa o Mosquitto para passar mensagens. Como exemplo, podemos ligar e desligar o plugue enviando mensagens para o Mosquitto e o plugue inteligente irá recebê-las e responder.
Etapa 7: Instalando o Grafana
A partir de:
grafana.com/grafana/download?platform=arm
Ou muitas outras opções aqui:
grafana.com/grafana/download
Para Pi 1 e Pi Zero (ARMv6)
sudo apt-get install -y adduser libfontconfig1 # encontre a versão mais recente na página no topwget https://dl.grafana.com/oss/release/grafana-rpi_7….sudo dpkg -i grafana-rpi_7.0.1_armhf. debsudo / bin / systemctl daemon-reloadsudo / bin / systemctl ativar grafana-serversudo / bin / systemctl start grafana-server
Para PIs mais recentes (ARMv7)
sudo apt-get install -y adduser libfontconfig1 # encontre a versão mais recente na página em topwget https://dl.grafana.com/oss/release/grafana_7.0.1_…sudo dpkg -i grafana_7.0.1_armhf.debsudo / bin / systemctl daemon-reloadsudo / bin / systemctl ativar grafana-serversudo / bin / systemctl start grafana-server
Testar:
Vá para https:// [IP of PI]: 3000
nome de usuário / senha é admin / admin, irá pedir para você alterá-lo, você pode pular por agora
Se você obtiver uma GUI, tudo bem, vá para a próxima etapa
Etapa 8: Instalando o InfluxDB
Execute estes comandos no PI:
curl -sL https://repos.influxdata.com/influxdb.key | sudo apt-key add -source / etc / os-releasetest $ VERSION_ID = "7" && echo "deb https://repos.influxdata.com/debian wheezy stable" | sudo tee /etc/apt/sources.list.d/influxdb.listtest $ VERSION_ID = "8" && echo "deb https://repos.influxdata.com/debian jessie stable" | sudo tee /etc/apt/sources.list.d/influxdb.listtest $ VERSION_ID = "9" && echo "deb https://repos.influxdata.com/debian stretch stable" | sudo tee /etc/apt/sources.list.d/influxdb.listtest $ VERSION_ID = "10" && echo "deb https://repos.influxdata.com/debian buster stable" | sudo tee /etc/apt/sources.list.d/influxdb.listsudo apt-get updatesudo apt-get install influxdbsudo systemctl ativar influxdbsudo systemctl iniciar influxdb
Teste digitando "influx". Isso deve colocá-lo na linha de comando influxdb. Digite "mostrar bancos de dados", não haverá bancos de dados ainda, mas se você receber uma lista vazia sem erros, tudo bem.
Etapa 9: Instalando o Telegraf
Este é realmente fácil, porque adicionamos os repositórios influxdb que podemos apenas digitar:
sudo apt-get install telegrafsudo systemctl enable telegrafsudo systemctl start telegraf
Neste ponto, o Telegraf já estará registrando as métricas do sistema no influxdb. Você pode vê-los digitando estes comandos:
influxshow databaseuse telegrafshow seriesSELECT * FROM cpu LIMIT 10;
Etapa 10: Instale o Mosquitto
Esta parte é fácil, pois apenas instalamos a versão padrão fornecida com o raspian:
sudo apt-get -y install mosquittosudo apt-get -y install mosquitto-clientssudo systemctl enable mosquittosudo systemctl start mosquitto # crie uma senha para mosquittosudo mosquitto_passwd -c / etc / mosquitto / tasmota tasmota # insira uma senha. Anote essa senha, pois precisaremos fornecê-la ao plugue inteligente
Testar:
execute isso em uma sessão SSH:
mosquitto_sub -t test
Execute isso em outro
mosquitto_pub -t test -m mymessage
Você deve ver sua mensagem na primeira sessão SSH
Etapa 11: Envio de dados do plugue inteligente para o Mosquitto
Agora que o mosquitto está em execução, precisamos configurar o plugue inteligente para enviar dados ao mosquitto. Isso é bastante fácil de fazer. Precisaremos da senha inserida para mosquitto na etapa anterior.
1) Faça login em sua página da web de plugs inteligentes
2) Clique em Configuração e em Configurar registro
3) Defina o período de telemetria para 10 e clique em salvar.
4) Clique em Configurar MQTT
5) Para host, digite o endereço IP do seu PI
6) Para o nome de usuário, digite tasmota
7) Para senha, digite a senha da etapa anterior
8) Para o tópico, insira tasmota1
9) Clique em Salvar
Testar:
No PI, digite o comando abaixo. Em 10 segundos, você deverá ver os dados chegando.
mosquitto_sub -t tele / tasmota1 / SENSOR
Os dados devem ser assim:
Etapa 12: use o Telegraf para enviar dados do Mosquitto para o influxo
Agora vamos configurar o Telegraf para ler os dados do mosquitto e enviar para o influxdb. No PI:
1) sudo mv /etc/telegraf/telegraf.conf /etc/telegraf/telegraf.conf.bak
2) sudo vi /etc/telegraf/telegraf.conf
Observe que o vi não é muito amigável para novos usuários, se você preferir um editor de texto baseado em menu, use o nano:
sudo nano /etc/telegraf/telegraf.conf
3) Cole a configuração do arquivo anexado
4) sudo systemctl restart telegraf
Para testar, digite isso no PI:
influxo
mostrar bancos de dados
você deve ver o banco de dados de teste. Se você não gostar do teste de nome, você pode alterar dest_db no arquivo telegraf.conf.
Etapa 13: Por fim, crie gráficos no Grafana
Finalmente, podemos ver alguns dados:-):-)
Primeiro, precisamos criar uma conexão com o banco de dados. Vá para a página web da grafana http: [ip of PI]: 3000
1) Faça login com admin / admin
2) Na coluna esquerda, clique no ícone de engrenagem e nas fontes de dados
3) Clique em adicionar fonte de dados
4) Clique em influxdb
5) Para URL, digite https:// localhost: 8086
6) Para o banco de dados, insira o teste
7) Para HTTP, digite GET
8) Para o intervalo de tempo mínimo, insira 10s
9) Clique em Salvar e testar, deve dizer "A fonte de dados está funcionando"
OK, agora que temos uma conexão com o banco de dados podemos criar um gráfico … finalmente.
1) Na coluna da esquerda, clique em + e, em seguida, em Painel e Adicionar novo painel
2) Para o banco de dados, clique em InfluxDB
3) Clique em medição e selecione Kogan
4) Para o campo, selecione Energy_Power.
5) Para alias, dê um nome à sua série (por exemplo, Máquina de lavar louça)
6) No lado direito do título do painel, atribua um nome, por exemplo, Power.
7) É isso, você deve ver os dados. Clique no botão de seta para a esquerda para sair da edição e, em seguida, clique em Salvar, dê um nome ao seu painel.
Se você chegou até aqui, ótimo trabalho, sério.
Etapa 14: mais algumas dicas
A configuração padrão do Telegraf que forneci exigia um pouco de manutenção, pois uma nova seção precisa ser adicionada para cada dispositivo e é necessário reiniciar o Telegraf. Com as alterações abaixo, torna as coisas muito mais dinâmicas, pois os dispositivos podem ser adicionados ou renomeados na configuração do Tasmota sem a necessidade de alterar o Telegraf.
A primeira mudança é colocar o + no nome do tópico, isso é basicamente um curinga. Isso por si só seria suficiente, exceto quando você está fazendo gráficos no Grafana, os dispositivos aparecem com nomes como "tele / Máquina de lavar / SENSOR". A segunda parte da configuração do Telegraf abaixo é o processador regex. Ele puxa o texto "WashingMachine" do centro e o transforma em uma nova tag que é enviada para o InfluxDB.
Nota: certifique-se de definir um nome de tópico diferente na configuração do Tasmota para cada dispositivo
[inputs.mqtt_consumer.tags] dest_db = "teste"
Feito isso, é muito fácil configurar o Grafana para mostrar vários dispositivos em um gráfico. A foto anexada a esta etapa mostra o que precisa ser feito. Basta clicar no sinal + no grupo por linha e selecionar tag (dispositivo). Abaixo, na parte inferior, em Alias, digite $ tag_device. Agora você deve ver várias séries em um gráfico. Você pode clicar no texto de cada item para ligá-los e desligá-los (ctrl click funciona para selecionar múltiplos)
Recomendado:
Controle remoto IR baseado em Arduino automático baseado em temperatura: 7 etapas
Controle remoto IR baseado em Arduino automático baseado em temperatura: Ei, e aí, pessoal! Akarsh aqui da CETech. Cansado de acordar no meio de um sono profundo só porque a temperatura ambiente está muito baixa ou muito alta por causa do seu AC mudo. Então este projeto é para você. Neste projeto, vamos fazer o nosso
Termômetro infravermelho sem contato baseado em Arduino - Termômetro baseado em IR usando Arduino: 4 etapas
Termômetro infravermelho sem contato baseado em Arduino | Termômetro baseado em IR usando Arduino: Olá pessoal, neste instructables faremos um termômetro sem contato usando arduino. Já que às vezes a temperatura do líquido / sólido é muito alta ou muito baixa e então é difícil fazer contato com ele e ler sua temperatura então naquele cenário
Monitor de clima M5Stack M5stick C baseado em ESP32 com DHT11 - Monitorar temperatura, umidade e índice de calor no M5stick-C com DHT11: 6 etapas
Monitor de clima M5Stack M5stick C baseado em ESP32 com DHT11 | Monitorar temperatura, umidade e índice de calor no M5stick-C com DHT11: Olá pessoal, nestes instructables aprenderemos como fazer a interface do sensor de temperatura DHT11 com o m5stick-C (uma placa de desenvolvimento da m5stack) e exibi-lo no visor do m5stick-C. Portanto, neste tutorial, vamos ler a temperatura, umidade e amp; aquecer eu
SilverLight: Monitor ambiental baseado em Arduino para salas de servidores: 3 etapas (com imagens)
SilverLight: Monitor de ambiente baseado em Arduino para salas de servidores: Certa vez, recebi a tarefa de procurar uma sonda ambiental para monitorar a temperatura na sala de servidores da minha empresa. Minha primeira ideia foi: por que não usar um Raspberry PI e um sensor DHT, ele pode ser configurado em menos de uma hora incluindo o sistema operacional
Um monitor de qualidade do ar IoT de baixo custo baseado no RaspberryPi 4: 15 etapas (com imagens)
Um monitor de qualidade do ar IoT de baixo custo baseado no RaspberryPi 4: Santiago, Chile, durante uma emergência ambiental de inverno, tem o privilégio de morar em um dos países mais bonitos do mundo, mas, infelizmente, nem tudo são rosas. O Chile durante o inverno sofre muito com a contaminação do ar, mai