E ai galera tudo bem com vocês? Hoje vamos aprender sobre acionamento de cargas com NodeMCU. Em sistemas de automação, precisamos sempre habilitar e desabilitar cargas mediante a uma solicitação, ou determinado evento. Com isso, o uso de relés permite com que esse controle seja feito sem a intervenção humana de forma direta, ou seja, o próprio sistema é capaz de ligar e desligar cargas ou você mesmo pode desligar ligar ou desligar uma carga sem estar próximo ao equipamento.
Com base nisso, neste tutorial, iremos aprender a como construir um sistema de acionamento de cargas utilizando um módulo relé de 4 canais, e um ESP8266. Iremos aprender também a como utilizar o Blynk, uma ferramenta bem interessante para desenvolver Dashboards.
Nós temos vários outros tutorias sobre Internet das coisas e NodeMCU, após terminar o projeto deste post, você pode partir para o projeto onde ensinamos como integrar o NodeCMU com a Alexa da Amazon, clique neste link e confira!
Montando o projeto
Para construir este projeto de acionamento de cargas com NodeMCU, este será responsável por acionar as cargas do sistema, e receber os dados do nosso Dashboard. Iremos utilizar também um módulo relé de 4 canais, que será responsável por acionar os Leds utilizados, simulando as cargas no sistema. Por fim, será necessário um Smartphone para criação e uso do Dashboard.
Montando nosso Dashboard
Primeiramente iremos criar o Dashboard para controlar o nosso relé de 4 canais, e para isso utilizaremos o Blynk. O Blynk para quem não conhece, é uma ferramenta que nos permite controlar nossos dispositivos IoT remotamente, e ainda nos permite criar Dashboards sem precisar escrever uma única linha de código.
Cadastrando no Blynk
O procedimento de criação do painel é bem simples, primeiramente faça o download do Blynk pela play store ou Itunes. Feito o download, faça o seu cadastro na plataforma selecionando a opção Create New Accout.
Criando um projeto
Para criar um novo Dashboard você deve agora selecionar a opção New Project. Selecionada a opção New Project, Uma nova janela será aberta onde você irá definir um nome e o tipo de placa utilizada. Neste projeto iremos utilizar o NodeMCU e daremos o nome controle relés, como mostra a figura abaixo:
Feito isso, você será redirecionado para um painel vazio como o da figura abaixo:
Será nesse painel que você irá conseguir adicionar componentes, como botões e displays. Para acessar o painel de componentes, clique no ícone + que aparece no canto superior direito da tela. E uma janela semelhante a da figura abaixo será aberta:
Será nessa janela que iremos selecionar os componentes que iremos utilizar, em nosso caso 4 botões. Feita a seleção dos botões faça um alinhamento semelhante ao da figura abaixo:
Configurando botões do projeto
Agora iremos configurar os botões criados para que eles interajam com o nosso NodeMCU, para isso clique em cada um dos botões e crie as configurações da seguinte forma:
- Nome: Reléx ( sendo x o número do relé que você deseja controlar pelo botão).
- OUTPUT: Dx ( sendo x o pino onde você vai conectar o pino do microcontrolador ao relé ).
- Mode: SWITCH.
Feito isso seu dashboard estará pronto para uso, bastando agora pressionar o botão start para inicializar o dashboard.
Montagem do projeto
Agora que configuramos o dashboard, iremos agora montar o sistema de controle de carga, neste tutorial, iremos utilizar sequencialmente os pinos D1, D2, D3 e D4 do nosso nodeMCU para ligar e desligar alguns leds ( simulando como se eles fossem a carga do sistema. A montagem do sistema é bem simples como mostra a figura abaixo:
Desenvolvimento do código
Agora que montamos o nosso sistema de acionamento de cargas, iremos partir para a parte do código, que pode ser visto logo abaixo:
#include <ESP8266WiFi.h> #include <BlynkSimpleEsp8266.h> char auth[] = ""; // Token recebido no email ao criar o dashboard no blynk char ssid[] = ""; // Nome da sua rede WiFi char pass[] = ""; // senha da sua rede WiFi void setup() { Blynk.begin(auth, ssid, pass); // Inicia conexão com a rede e ativa dashboard pinMode (D1,OUTPUT); pinMode (D2,OUTPUT); pinMode (D3,OUTPUT); pinMode (D4,OUTPUT); digitalWrite(D1,LOW); digitalWrite(D2,LOW); digitalWrite(D3,LOW); digitalWrite(D4,LOW); } void loop() { Blynk.run(); }
O código em questão é bem simples, pois todo o processo de conexão e ativação do dashboard será feito pela biblioteca Blynk que pode ser baixada através do Gerenciar Bibliotecas da própria IDE do Arduino.
Mergulhando no projeto
Primeiramente, para implementar este projeto, iremos precisar realizar o download da biblioteca Blynk que pode ser feito indo até a opção Sketch > Incluir Biblioteca > Gerenciar Biblioteca exatamente como na figura abaixo:
Variáveis definidas
- auth: Armazena o token recebido no email no momento em que você cria o dashboard através do blynk.
- ssid: Nome da sua rede sem fio onde o NodeMCU deverá se conectar.
- pass: Senha da sua rede sem fio onde o nodeMCU deverá se conectar.
Função Setup
- Blynk.begin: Função responsável por inicializar a comunicação com o dashboard criado no celular e também controlar os pinos de todos os canais do relé.
- pinMode: Inicializa sequencialmente os pinos D1, D2, D3 e D4 como saída.
- digitalWrite: Configura os pinos D1, D2 , D3 e D4 para o nível lógico baixo.
Função loop
- Blynk.run: Inicializa o blynk tanto no nodeMCU quanto no celular.
Conclusão
Neste tutorial, aprendemos sobre o acionamento de cargas com o NodeMCu , construindo um sistema básico para controle de cargas utilizando o blynk, o NodeMCU e um relé de 4 canais. Espero que tenham gostado do conteúdo apresentado, sinta-se à vontade para nos dar sugestões, críticas ou elogios. Lembre-se de deixar suas dúvidas nos comentários abaixo.
Ola, uma dúvida, a saída do pino e tensão de trabalho do node não é de 3.3v?
Isso foi capaz de acionar os 4 reles 5v?
Olá Tiago tudo bom?
Então, a tensão de operação do Node é de 4,5 ~ 9V, você pode ver mais especificações do Módulo WiFi ESP8266 Node Mcu ESP-12E neste link, e mais especificações do ESP-12 neste link.
Já sobre o Módulo Relé de 4 canais, ele tem tensão de operação de 5V, você pode ver mais detalhes neste link. A tensão de sinal (IN1, IN2, IN3 e IN4) também é de 5V, mais detalhes no link já citado.
Assim, temos a tensão necessária para acionar os 4 relés, mas lembrando que configuramos os pinos D1, D2 , D3 e D4 para o nível lógico baixo.
Abraço.
Olá gostaria de saber se consigo fazer através de comando de voz pela Alexa
Olá, provavelmente é possível sim, existem vários tutorais para integrar a Alexa com Esp ou Arduino, mas tenho que confessar que eu ainda não me interessei pela Alexa, então eu nunca fiz esse tipo de integração. Mas vamos estudar este assunto e trazer um tutorial com a Alexa aqui para o blog! Aguardem!