Objetivo
Nesse tutorial será explicado brevemente o funcionamento do módulo relé em conjunto com o ESP8266 (ESP-01), além de serem apresentados os dois tipos de relés e suas diferenças de acionamento e respectivas programações por Blynk.
O Módulo Rele WiFi ESP8266 é um dispositivo que consiste de um microprocessador ARM de 32 bits com suporte embutido à rede WIFI e memória flash integrada, o mesmo é compatível para funcionamento com ESP8266 e só funcionará por Wi-fi se utilizado em conjunto, sendo que é comercializado em dois modelos, ambos disponíveis em nossa loja. O ESP8266 pode ser programado em LUA (linguagem de programação desenvolvida no Brasil) ou através do ambiente de programação IDE do Arduino.
O Módulo Relé WiFi ESP8266 é um dispositivo que integra o grupo dos IoT (Internet of Things ou Internet das Coisas), ou seja, o mesmo permite o acionamento remoto de componentes.
Principais diferenças entre os Módulos Relé Wifi ESP8266
Visivelmente é notável uma diferença clara na arquitetura dos dois módulos e na presença do botão de Reset no modelo B.
Só que a diferença não consiste apenas na arquitetura, a principal diferença está na forma de acionamento do relé, enquanto o modelo A realiza esse processo de forma serial, o modelo B aciona o relé através das GPIOs como será melhor demonstrado mais adiante, na programação.
Elaborando o aplicativo Blynk
Como já existem outros tutoriais disponíveis no Blog que detalham como baixar o aplicativo e fazer as configurações iniciais, eu pularei essa etapa e irei direto para a configuração referente ao tutorial, mas caso você seja leigo no assunto, veja o trecho do seguinte tutorial:
ESP32 no modo BLE -Trecho sobre Blynk
Insira um Button no Blynk e faça as seguintes configurações para o mesmo:
Programando o ESP-01
Para realizar a programação do ESP-01 através da IDE do Arduino, siga o tutorial que detalha esse processo com qualquer que seja o seu modelo de Conversor USB/Serial:
Como gravar o ESP8266 com a IDE Arduino
Como gravar o ESP8266 com a IDE Arduino
Para o Módulo Rele WiFi ESP8266- SERIAL, siga a programação abaixo:
/* Tutorial: Módulo Relé Wifi ESP8266 - Com ESP01
* Autor: Curto Circuito */
#define BLYNK_PRINT Serial /* Imprime dados do Blynk na Serial */
#include <ESP8266WiFi.h> /* inclusão da Biblioteca ESP8266WiFi */
#include <BlynkSimpleEsp8266.h> /* inclusão da Biblioteca BlynkSimpleEsp8266 */
char auth[] = "AuthToken"; /* Token de Autendicação disponibilizado no Blynk */
char ssid[] = "Rede WiFi"; /* Nome da Rede WiFi que deve ser feita a conexão */
char pass[] = "Senha da rede"; /* Senha da rede WiFi */
/* bytes de comando do rele */
uint8_t relayOn[] = {0xA0, 0x01, 0x00, 0xA1};
uint8_t relayOff[] = {0xA0, 0x01, 0x01, 0xA2};
void setup() /* laço de repetição */
{
Serial.begin(9600); /* Baud rate */
Blynk.begin(auth, ssid, pass); /* O Blynk se utiliza de dados de autenticação, rede e senha da rede */
}
void loop() /* laço de repetição */
{
Blynk.run(); /*Roda Blynk */
}
BLYNK_WRITE(V0) /*Grava em V0 de Blynk */
{
int pinValue = param.asInt(); /* Grava o parâmetro como número inteiro */
if(pinValue == 1) Serial.write(relayOn, 4); /* Se o valor do pin for igual a 1, o relé será ligado */
if(pinValue == 0) Serial.write(relayOff, 4); /* Se o valor do pin for igual a 0, o relé será desligado */
}
Para o Módulo Rele WiFi ESP8266- GPIO0, siga essa outra programação:
/* Tutorial: Módulo Relé Wifi ESP8266 - Sem ESP01
* Autor: Curto Circuito */
#define BLYNK_PRINT Serial /* Imprime dados do Blynk na Serial */
#include <ESP8266WiFi.h> /* inclusão da Biblioteca ESP8266WiFi */
#include <BlynkSimpleEsp8266.h> /* inclusão da Biblioteca BlynkSimpleEsp8266 */
char auth[] = "AuthToken"; /* Token de Autendicação disponibilizado no Blynk */
char ssid[] = "Rede WiFi"; /* Nome da Rede WiFi que deve ser feita a conexão */
char pass[] = "Senha da rede"; /* Senha da rede WiFi */
const int GPIO_0 = 0; /* Declara constante inteira GPIO_0 como 0 */
void setup() /*Início da rotina de configuração */
{
Serial.begin(9600); /* Baud rate */
Blynk.begin(auth, ssid, pass); /* O Blynk se utiliza de dados de autenticação, rede e senha da rede */
}
void loop() /* laço de repetição */
{
Blynk.run(); /* Roda Blynk */
}
BLYNK_WRITE(V0) /* Grava en V0 de Blynk */
{
int pinValue = param.asInt(); /*Grava o parâmetro como número inteiro
como o acionamento é nível baixo, será usado 1 para nível baixo e 0 para nível alto. */
if(pinValue == 1) digitalWrite(GPIO_0, LOW); /*Se o valor do pin for igual a 1, o sinal será baixo */
if(pinValue == 0) digitalWrite(GPIO_0, HIGH); /* Se o valor do pin for igual a 0, o sinal será alto */
}
Depois de carregar o programa no seu respectivo ESP-01, conecte a placa ao espaço dedicado a ela no módulo relé, alimente a placa e dê play no aplicativo Blynk para controle.
Segue funcionamento do Módulo Rele WiFi ESP8266- SERIAL
Modelo de funcionamento do Módulo Rele WiFi ESP8266- GPIO0
Conclusão
Ambos os modelos são extremamente úteis e apresentam os mesmos resultados se realizada a programação de acordo com o acionamento do mesmo, sendo que é necessário se atentar as diferenças e aos tutoriais presentes na web, pois ambos são frequentemente confundidos pelos usuários, ou mesmo ocorre de se acreditar que a programação de um modelo funciona para o outro, o que esse tutorial provou não ser verdade. Espero que com esse breve tutorial, os conhecimentos sobre Módulo Relé WiFi tenham sido ampliados, ambos os módulos estão disponíveis em nosso site:
Módulo Rele WiFi ESP8266-SERIAL
Módulo Rele WiFi ESP8266-GPIO0
Abraços, Curto Circuito :)
Este relé funciona com acionamento via Alexa (da Amazon) ou com o Google Home ?
Para acionamento de lâmpadas ou outros devices ?
Ou mesmo abertura e fechamento de portão automático ?
Grato
Sim, é possível utilizar, você pode encontrar alguns vídeos de exemplo nesse canal no Youtube:
HiWiFi Automação Residencial
Abraços :)
Podemos utilizar o outro para ler algum sensor?
Como por exemplo dht11 na mesma placa?
No ESP-01 nós temos três pinos GPIOs, você pode utilizar essas portas em seus projetos. Lembrando que o GPIO3 é compartilhado entre RX e TX. Respondendo a sua pergunta, sim, você pode ligar um sensor em uma das portas, apenas tenha em mente que a tensão de saída nesses pinos será de aproximadamente 3,3V e alguns sensores podem funcionar apenas com tensões superiores.
Abraços :)