Acionando Reles com o AFSmart ESP32 - Módulo IoT com Wi-Fi, Bluetooth e LoRa

Publicado em 08/02/2025

O AFSmart ESP32 - Módulo IoT com Wi-Fi, Bluetooth e LoRa  é uma placa desenvolvida para facilitar projetos de automação residencial e industrial, permitindo controle remoto e monitoramento via Internet das Coisas (IoT). Neste artigo, vamos explorar como configurar e usar esse dispositivo em seus projetos.

Características do AFSmart ESP32 - Módulo IoT com Wi-Fi, Bluetooth e LoRa

  • Microcontrolador ESP32 com Wi-Fi e Bluetooth
  • 8 entradas digitais para sensores
  • 6 saídas à Rele para acionamento de cargas
  • 1 saída à Transistor Open-Colector para acionamento de cargas
  • Compatível com plataformas como Arduino IDE e ESPHome

Materiais Necessários

Para seguir este guia, você precisará de:

AFSmart ESP32 - Módulo IoT com Wi-Fi, Bluetooth e LoRa

  • Fonte de alimentação 12V ou 24V
  • Cabo USB para envio da aplicação
  • Sensores e atuadores conforme necessidade do projeto
  • Computador com Arduino IDE ou outro ambiente compatível

Passo a Passo para Configuração

1. Instalação da IDE e Bibliotecas

Antes de programar o ESP32, é necessário instalar o Arduino IDE e adicionar o suporte ao ESP32:

  • Abra o Arduino IDE e acesse Preferências.
  • Adicione o link de gerenciador de placas do ESP32: https://dl.espressif.com/dl/
    package_esp32_index.json
  • Instale a biblioteca PortExpander_I2C para realizar o acionamento das saídas e leitura das entradas.

Para o controle das saídas, use o seguinte código:

#include "PortExpander_I2C.h"
#include "Wire.h"

PortExpander_I2C PCF8574_rele_placa_ext(0x26);  // Pino A0 nível Baixo 0x26

#define RXD2 16
#define TXD2 17
int CS_RS485 = 5;  //Caso utilize a interface RS485

void setup() {
  Wire.begin(21, 22);
  pinMode(CS_RS485, OUTPUT);  // Para utilizar com a RS485

  Serial.begin(115200);
  //Serial1.begin(9600, SERIAL_8N1, RXD2, TXD2);
  Serial2.begin(115200, SERIAL_8N1, RXD2, TXD2);
  Serial.println("Serial Txd is on pin: " + String(TX));
  Serial.println("Serial Rxd is on pin: " + String(RX));

  entradas.init();
  relecontrol.init();
  PCF8574_rele_placa_ext.init();  // inicializa pcf 8574 correspondente à placa rele externa

  entradas.pinMode(0, INPUT);  // INT1
  entradas.pinMode(1, INPUT);  // INT4
  entradas.pinMode(2, INPUT);  // INT3
  entradas.pinMode(3, INPUT);  // INT2
  entradas.pinMode(4, INPUT);  // INT5
  entradas.pinMode(5, INPUT);  // INT7
  entradas.pinMode(6, INPUT);  // INT6
  entradas.pinMode(7, INPUT);  // INT8

  relecontrol.pinMode(0, OUTPUT);  //RELE1
  relecontrol.pinMode(1, OUTPUT);  //RELE2
  relecontrol.pinMode(2, OUTPUT);  //RELE6
  relecontrol.pinMode(3, OUTPUT);  //RELE5
  relecontrol.pinMode(4, OUTPUT);  //RELE4
  relecontrol.pinMode(5, OUTPUT);  //RELE3
  relecontrol.pinMode(6, OUTPUT);  // CS_SDCARD
  relecontrol.pinMode(7, OUTPUT);  // pode ser usado como entrada ou saida


  PCF8574_rele_placa_ext.pinMode(0, OUTPUT);
  PCF8574_rele_placa_ext.pinMode(1, OUTPUT);
  PCF8574_rele_placa_ext.pinMode(2, OUTPUT);
  PCF8574_rele_placa_ext.pinMode(3, OUTPUT);
  PCF8574_rele_placa_ext.pinMode(4, OUTPUT);
  PCF8574_rele_placa_ext.pinMode(5, OUTPUT);
  PCF8574_rele_placa_ext.pinMode(6, OUTPUT);
  PCF8574_rele_placa_ext.pinMode(7, OUTPUT);
}

void loop() {

  for (int rele = 0; rele <= 5; rele++) {
    relecontrol.digitalWrite(rele, HIGH);             // turn the LED on (HIGH is the voltage level)
    PCF8574_rele_placa_ext.digitalWrite(rele, HIGH);  // turn the LED on (HIGH is the voltage level)
    delay(1000);                                      // wait for a second
    relecontrol.digitalWrite(rele, LOW);              // turn the LED off by making the voltage LOW
    PCF8574_rele_placa_ext.digitalWrite(rele, LOW);   // turn the LED off by making the voltage LOW
    delay(1000);
    Serial2.println("Teste RS485 SEM CS CLP VDC I4.0+");
  }

  PCF8574_rele_placa_ext.digitalWrite(6, HIGH);  // turn the LED on (HIGH is the voltage level)
  delay(1000);
  PCF8574_rele_placa_ext.digitalWrite(6, LOW);  // turn the LED on (HIGH is the voltage level)
}

Como enviar o código para o módulo de desenvolvimento AFSmart ESP32 - Módulo IoT com Wi-Fi, Bluetooth e LoRa

  1. Segure simultaneamente os botões PGM e Reset 
  2. Solte Reset, solte PGM, neste momento o módulo estara no modo de boot pronto para receber a aplicação

Aplicações

✅ Automação residencial: Controle de iluminação e aparelhos elétricos.

✅ Monitoramento industrial: Acionamento remoto de máquinas.

✅ Projetos de IoT: Integração com assistentes virtuais e dashboards.

Conclusão

O AFSmart ESP32 - Módulo IoT com Wi-Fi, Bluetooth e LoRa é uma solução poderosa para automação e IoT. Com ele, você pode criar sistemas inteligentes, conectados e de fácil controle. Experimente e compartilhe suas experiências!

Precisa de mais componentes? Confira nossa Loja  explore outras soluções para seus projetos de automação!

Pague com
  • proxy-mercadopago-v1
  • proxy-mercadopago-v1
Selos

AFEletronica - CNPJ: 26.806.365/0001-00 © Todos os direitos reservados. 2025