ESP32-S3 控制 继电器

我帮你把这个 ESP32-S3 控制继电器实验 写成一篇博客文章,结构和前面蜂鸣器那篇类似,但结合继电器的工作原理、接线方式和实验说明,让读者能一看就明白。

ESP32-S3 控制继电器实验

一、实验简介

继电器是一种利用小电流控制大电流的电器开关,常用于设备控制、家电自动化等场景。

本实验将使用 ESP32-S3 控制一个继电器模块,驱动一个 LED 模块,实现定时开关控制,从而掌握继电器的基本使用方法。

二、硬件准备

  • ESP32-S3 开发板 × 1
  • 继电器模块 × 1
  • LED 模块(带限流电阻) × 1
  • 杜邦线若干
  • USB 数据线 × 1(用于连接电脑)

三、接线说明

1. 控制部分(ESP32-S3 → 继电器模块)

继电器引脚 ESP32-S3 引脚
REL GPIO45
GND GND
VCC 3V3

2. 负载部分(继电器 → LED 模块)

继电器端子 接线对象
COM 3V3
NO LED D1

接线示意图:

ESP32-S3 GPIO45 ----> REL(继电器控制端)
ESP32-S3 3V3  ------> VCC(继电器电源)
ESP32-S3 GND  ------> GND

继电器 COM --------> 3V3
继电器 NO ---------> LED D1
LED 另一端 --------> GND

四、代码实现

// 定义继电器控制管脚
#define relay_pin 45
char g_i = 0;

void setup() {
  // 设置引脚为输出模式
  pinMode(relay_pin, OUTPUT);
}

void loop() {
  // 翻转状态
  g_i = !g_i;
  // 控制继电器吸合或断开
  digitalWrite(relay_pin, g_i);
  // 延时 1000 毫秒
  delay(1000);
}

五、代码解析

  1. #define relay_pin 45
    定义继电器控制引脚为 GPIO45,方便后续修改和维护。

  2. pinMode(relay_pin, OUTPUT)
    设置 GPIO45 为输出模式,ESP32-S3 才能输出高低电平信号。

  3. g_i = !g_i
    每次循环取反,实现开与关的交替。

  4. digitalWrite(relay_pin, g_i)
    输出高电平时继电器吸合,LED 亮;低电平时继电器断开,LED 灭。

  5. delay(1000)
    延时 1 秒,每隔一秒切换一次继电器状态。

六、实验现象

将程序下载到 ESP32-S3 后,继电器会间隔 1 秒吸合与断开,同时 LED 模块会对应亮与灭,形成闪烁效果。

七、注意事项

  • 继电器模块需要足够的驱动电流,确保 ESP32-S3 的 GPIO 脚可以带动(多数模块内置驱动电路)。

  • COM、NO、NC 是继电器的常见端子:

    • COM(公共端)
    • NO(常开端,吸合时接通)
    • NC(常闭端,吸合时断开)
  • 控制高功率设备时需注意用电安全,本实验仅使用低压 LED 模块。

八、总结

本实验演示了如何用 ESP32-S3 控制继电器,从而间接控制外部负载。实际应用中,可以将继电器与传感器、定时器结合,实现家电控制、自动化设备开关等功能。

posted @ 2025-08-16 08:56  jeikerxiao  阅读(253)  评论(0)    收藏  举报