Índice:
Vídeo: IoT com NodeMCU e MQTT: 4 etapas
2025 Autor: John Day | [email protected]. Última modificação: 2025-01-13 06:58
[En] Uma vez para uma aplicação industrial eu precisei fazer um PCB com 8 contatos secos, um pouco brincando com MQTT e decidi adaptá-lo para funcionar usando NodeMCU esp-f v4. Para torná-lo uma forma simples de fazer automação residencial de baixo custo.
[Pt-Br] Certa vez para uma aplicação industrial eu preciso fazer uma PCB com 8 contatos secos. Brincando um pouco com MQTT resolvi adaptá-la para que funcionasse utilizando um NodeMCU esp-f v4. A fim de torná-la uma forma simples de se fazer automações residenciais de baixo custo.
Suprimentos
Para o núcleo / Para o processamento: 1- ESP12-F DEVKIT V4 (NodeMCU menor) mas você pode adaptar o circuito para ESP12-E V3;
Para a placa / para um PCB: qty - parte
1- placa virgem 10x10 para PCB
8- LED 3mm (para sinalização)
1- conector kre-2t (voltagem)
8- conector kre-3t (contatos secos de saída)
2- capacitor de cerâmica 100n
Capacitor cerâmico de 1- 10n
1- capacitor eletrolítico de 10u
2- capacitor 100u Eletrolitc
1- diodo 1N4004 (à prova de idiotas)
8- diodo 1N4148 (livre vontade)
8- 500 resistor 1 / 4w (para leds)
8-680 resistor 1 / 4w (para optoacopladores)
11- 10k resistor 1 / 4w
1- 7805 (+ regulador de tensão para nodeMCU)
8- transistor npn BC548
Relé 8- 12v (No-c-Nc)
8- PC817 optoacoplador
2- Cabeçalho de pino fêmea 15x1 (para nodeMCU)
1- conector de pino de 2 pinos (para entrada analógica)
1- botão de pressão (para entrada digital)
[pt] Um pouco de conhecimento em fabricação de PCBs, além de um pouco de conhecimento de linguagens de programação e da interface IDE do Arduino para NodeMCU. E algumas buscas no google por conhecimento externo.
[Pt-Br] Um pouco de conhecimento em fabricação de PCB, além de um pequeno conhecimento de linguagens de programação e da interface do IDE do Arduíno para NodeMCU. E um pouco de pesquisas no google para conhecimentos externos.
Etapa 1: Conselho
Esses arquivos foram feitos no cadsoft eagle 7.5, mas devem ser compatíveis com versões anteriores do autodesk eagle. Você pode editá-los para caber no esp12-E.
Estes arquivos foram feitos no cadsoft eagle 7.5, mas devem ter retrocompatibilidade com o autodesk eagle. Você pode editar-lo a fim de encaixar esp12-E.
Etapa 2: Código
link para o projeto no github / github link do projeto: github [En] Para o código, você deve editar alguns parâmetros para melhor se adequar ao seu projeto: -O nome da internet da sua wi-fi (SSID linha 7);
-A senha (linha de senha 8);
-O local onde o seu corretor está configurado, no meu caso eu uso um corretor dentro de um orange-pi rodando OpenHab2 então é o IP na linha 11, mas se você usar qualquer corretor online grátis, como o mosquito eclipse (https: / / mosquitto.org/), você pode colocar a URL entre parênteses em vez do IP, tome cuidado para que os corretores online gratuitos tenham problemas de segurança;
-Na linha 12 a porta pela qual você acessa esta corretora, geralmente 1883 ou 8883;
-Depois disso, ficará o ID_MQTT, que será o nome que você usará para o seu cliente na linha 20;
- Nas linhas 21 e 22, os tópicos para onde enviaremos as informações respectivamente pino d8 e An0 (1v máx.);
-Depois disso temos apenas os tópicos de assinatura que irão controlar as saídas d0 a d7, cada tópico está dentro do array char na linha 38. Você pode alterá-los, mas na linha 107 fazemos uma comparação entre o ID_MQTT e esses tópicos, verificando se o ID_MQTT estiver entre o segundo e o sétimo caractere do tópico recebido.
[Pt-Br] Para o código, você deve editar alguns parâmetros para melhor servir aos seus projetos:
-O o nome da internet do seu wi-fi (SSID linha 7);
-A senha (senha linha 8);
-O local onde seu broker está configurado, no meu caso utilizo um broker dentro de uma orange-pi one rodando OpenHab2 por isso é o IP na linha 11, mas se você usar algum broker online como o mosquito da eclipse (https:// mosquitto.org/) você pode colocar uma URL entre parênteses, tome cuidado se os brokers gratuitos online têm problemas de segurança;
-Na linha 12 a porta pela qual você acessa este broker, geralmente 1883 ou 8883;
-Depois disso sobram o ID_MQTT que será o nome que você usará para o seu cliente na linha 20;
-Na linha 21 e 22, os onde vamos enviar as informações respectivamente pino d8 e An0 (1v max);
-após isto temos apenas os temos apenas de subscrição que controlarão como ocorre d0 a d7, cada tópico esta dentro do array de char na linha 38. Você pode alterar-los, mas na linha 107 fazemos uma comparação entre o ID_MQTT e estes resolvidos, verificando se o ID_MQTT está entre o segundo e o sétimo caractere do tópico confirmado.
Etapa 3: Como sei que está tudo bem?
[En] Você pode configurar outro cliente MQTT para publicar os tópicos aos quais seu dispositivo será inscrito e vice-versa. Nas imagens, temos exemplos, o primeiro é um cliente configurado no OpenHab2, o segundo um software proprietário denominado MQTT. FX que você usa no mesmo broker que seu dispositivo e pode publicar e receber cargas úteis nos tópicos configurados.
[Pt-Br] Você pode configurar outro cliente MQTT, para publicar os sons que seu dispositivo irá estar inscrito, e vice-versa. Nas imagens temos exemplos, o primeiro é um cliente configurado dentro do OpenHab2, o segundo um software próprio chamado MQTT. FX que você conceta no mesmo broker que seu dispositivo e consegue publicar e receber payloads em configurados.
Etapa 4: final
Espero que tenha ajudado, principalmente quem procura fazer automação residencial com IoT e encontra apenas pequenas aplicações e poucos switches de saída, para que possa fazer muitas automações com baixo custo. Se você tiver alterações, compartilhe-as para que mais pessoas possam se apresentar. Saúde e liberdade! (UMA)
Espero que tenha ajudado, principalmente quem busca fazer automação residencial com IoT e encontra apenas pequenas aplicações e poucos chaves de saída, dessa forma pode-se fazer muitas automações com baixo custo. Se você mudar, por favor compartilhar para que mais pessoas possam executar. Saúde e Liberdade! (UMA)