ESP32+ 继电器-控制交流电器(Web 服务器)

采用继电器配合esp32远程控制电灯的方法,继电器也可以改成多路继电器,这样单个esp32可以控制多个电器原件

以下是esp32的io引脚,本文采用IO26作为信号输入

ESP32+ 继电器-控制交流电器(Web 服务器)_第1张图片 将继电器模块连接到esp32,如下图所示

ESP32+ 继电器-控制交流电器(Web 服务器)_第2张图片

本例子中用的是一个继电器模块

以下是实物的接线图,图中没有用AC接灯泡而是直接连接esp32的3.3v,仅做参考

ESP32+ 继电器-控制交流电器(Web 服务器)_第3张图片

创建一个web网页的代码部分

#include 
#include 

const char* ssid = "REPLACE_WITH_YOUR_SSID";
const char* password = "REPLACE_WITH_YOUR_PASSWORD";

WebServer server(80);

int relayPin = 26; // 设置继电器输出引脚

void setup() {
  Serial.begin(115200);

  pinMode(relayPin, OUTPUT);
  digitalWrite(relayPin, LOW); // 初始关闭继电器

  // 连接WiFi
  WiFi.begin(ssid, password);
  while (WiFi.status() != WL_CONNECTED) {
    delay(1000);
    Serial.println("Connecting to WiFi...");
  }

  Serial.println("WiFi connected!");
  Serial.print("IP address: ");
  Serial.println(WiFi.localIP());

  // 网页请求
  server.on("/", handleRoot);
  server.on("/on", handleOn);
  server.on("/off", handleOff);

  server.begin();

  Serial.println("Server started");
}

void loop() {
  server.handleClient(); // 处理客户端请求
}

void handleRoot() {
   server.send(200, "text/html", "ESP32 Web Control ");
}

void handleOn() {
  digitalWrite(relayPin, LOW); // 打开继电器
  server.send(200, "text/html", "ESP32 Web Control

Relay is ON

"); } void handleOff() { digitalWrite(relayPin, HIGH); // 关闭继电器 server.send(200, "text/html", "ESP32 Web Control

Relay is OFF

"); }

 将代码烧录进去esp32板上,在arduino上打开串口,查看web网页的ip,在浏览器上打开对应的ip地址

ESP32+ 继电器-控制交流电器(Web 服务器)_第4张图片

 web网页下的继电器控制

ESP32+ 继电器-控制交流电器(Web 服务器)_第5张图片

 打开关闭就能控制继电器的开关啦

ESP32+ 继电器-控制交流电器(Web 服务器)_第6张图片

ESP32+ 继电器-控制交流电器(Web 服务器)_第7张图片 

 

你可能感兴趣的:(单片机,硬件工程)