ESP32-S3-Relay-6CH 教程

】资料

原理图

ESP32-S3-Relay-6CH原理图

文档

ESP32-S3数据手册(中文)

ESP32-S3技术参考手册(中文)

ESP32-S3-WROOM-1数据手册(中文)

ESP32-S3数据手册(英文)

ESP32-S3技术参考手册(英文)

ESP32-S3-WROOM-1数据手册(英文)

程序

示例程序

软件

SSCOM

蓝牙调试工具(nRF Connect)


】说明

】产品概述

产品参数

参数名称参数
供电电压7~36V (或 5V/1A Type-C接口)
继电器路数6路
触点类型一常开一常闭
接线端口Type-C
通信协议USB协议
产品尺寸88(H)x 122(V) mm

接口说明

控制GPIO功能说明
GP0BOOT按键BOOT按键控制引脚
GP21BUZZER蜂鸣器的控制引脚
GP38RGBRGB灯的控制引脚
GP1CH11号继电器的控制引脚
GP2CH22号继电器的控制引脚
GP41CH33号继电器的控制引脚
GP42CH44号继电器的控制引脚
GP45CH55号继电器的控制引脚
GP46CH66号继电器的控制引脚
GP17TXDRS485对应UART的TX引脚
GP18RXDRS485对应UART的RX引脚

】多功能控制

示例解析

共提供4个示例分别实现以下各个功能,用户可自行编写示例以实现其他功能,提供的示例仅供于简单操作设备

出厂程序为MAIN_WIFI_AP

文件名实现功能注意事项
MAIN_WIFI_APRS485 接口控制可直接烧录
Web 页仅连接到设备 WIFI 才可使用
蓝牙控制,蓝牙发送IP
Web页面控制(近距离)
MAIN_WIFI_STARS485 接口控制需修改后才可使用
 修改 要连接的 WIFI
Web页仅内网使用
蓝牙控制,蓝牙发送IP
Web页面控制(近距离)
MAIN_WIFI_MQTTRS485 接口控制需修改后才可使用
 修改 要连接的 WIFI
须在Waveshare云中 创建 设备
蓝牙控制,蓝牙发送IP
Waveshare云控制(远距离)
MAIN_ALLRS485 接口控制需修改后才可使用
 修改 要连接的 WIFI
须在Waveshare云中 创建 设备
Web页仅内网使用
蓝牙控制,蓝牙发送IP
Web页面控制(近距离)
Waveshare云控制(远距离)

前置操作

】设置产品参数

设置Flash大小与分区


】安装库文件

安装 ArduinoJson 库

安装 PubSubClient 库

安装 NTPClient 库

】程序修改

每个示例中都有 WS_Information.h 文件,请将文件内容修改为用户信息

MAIN_ALL 示例为例

打开 WS_Information.h 文件

将WIFI的 Waveshare-TL 与 waveshare 修改为需要连接的 WIFI 名称和密码

如需要连接的 WIFI 名为 Waveshare-WIFI,密码为 123456789 ,则修改为如下内容

若需使用 Waveshare云 进行继电器控制,则需先在 Waveshare云 上创建设备

根据 Waveshare云 上的设备详情修改相关数据

修改情况如下

】程序烧录

程序修改完成,在连接好设备后,选择 开发板 和 COM 口


操作完成即可烧录程序

RS485 控制

使用 RS485 设备连接 ESP32-S3-Relay-6CH 设备,向 ESP32-S3-Relay-6CH 发送数据可控制各个继电器的开合,默认以 115200 波特率进行通信。

操作指令指令功能
06 05 00 01 55 00 A2 ED切换 CH1 继电器的状态
06 05 00 02 55 00 52 ED切换 CH2 继电器的状态
06 05 00 03 55 00 03 2D切换 CH3 继电器的状态
06 05 00 04 55 00 B2 EC切换 CH4 继电器的状态
06 05 00 05 55 00 E3 2C切换 CH5 继电器的状态
06 05 00 06 55 00 13 2C切换 CH6 继电器的状态
06 05 00 FF FF 00 BD BD开启所有继电器
06 05 00 FF 00 00 FC 4D关闭所有继电器

】硬件连接

  示例使用 USB TO 4CH Serial Converter 进行演示

ESP32-S3-Relay-6CHUSB TO 4CH Serial Converter - PORT B
RS485 - A+Port B - A+
RS485 - B-Port B - B-

】软件操作

使用 SSCOM 进行数据发送

开启 SSCOM 软件,选择上方连接的 Port B 口对应的 COM 口

打开串口,使用多条发送功能快捷发送指令

通过以下指令即可进行继电器控制

Web页面控制

使用 手机端 蓝牙调试助手 连接 ESP32-S3-Relay-6CH 设备,获取连接WIFI后的IP,通过IP开启Web页面

】AP模式

连接 ESP32-S3-Relay-6CH 设备的 WIFI,WIFI 名称为 ESP32-S3-Relay-6CH ,密码为 waveshare


通过蓝牙调试助手获取当前IP

打开Web页面即可控制继电器(设备上电后需要一小段时间配置,每次上电后首次开启Web页面可能比较缓慢)

】STA模式

设备上电后将自动连接设置的WIFI(烧录程序前需修改要连接的WIFI )

通过蓝牙调试助手获取当前IP

打开Web页面即可控制继电器(设备上电后需要一小段时间配置,每次上电后首次开启Web页面可能比较缓慢)

蓝牙控制

使用 手机端 蓝牙调试助手 连接 ESP32-S3-Relay-6CH 设备,向 ESP32-S3-Relay-6CH 发送数据可控制各个继电器的开合。

请注意:部分蓝牙调试助手默认以ASCII形式发送数据,在控制设备前需先根据蓝牙调试助手输入正确的控制指令。

操作指令指令功能
ASCIIHex
10x31切换 CH1 继电器的状态
20x32切换 CH2 继电器的状态
30x33切换 CH3 继电器的状态
40x34切换 CH4 继电器的状态
50x35切换 CH5 继电器的状态
60x36切换 CH6 继电器的状态
70x37开启所有继电器
80x38关闭所有继电器

】软件操作(查看IP)

使用手机端蓝牙调试助手 nRF Connect 进行继电器控制(也可使用其他蓝牙调试助手)

以下使用 nRF Connect 进行功能演示

连接名为 ESP32 S3 Relay 6CH 的蓝牙设备


连接成功,选则 Unknown Service ,点击读取数据,WIFI 长时间连接失败RGB将常亮红灯,此操作无任何反应

在 WIFI 连接成功的情况下将接收到设备 IP,如下,设备 IP 为 192.168.6.133

蓝牙控制继电器的指令为字符1~8,即十六进制的 0x31 ~ 0x38

点击发送按钮,填写需要发送的数据(当前为十六进制发送),如下输入 0x31

发送 0x31 可控制继电器 CH1 进行状态翻转

发送 0x38 可控制关闭所有继电器


Waveshare 云平台

】创建设备

Waveshare云 进行用户注册

注册成功后,进入 Devices Manager 选项创建设备类,填写该类别的名称

创建设备类成功

再以模板创建单个设备

为创建的设备命名

关联设备到设备类别

保存操作

创建成功即可查看设备详情, 修改 程序的 WS_Information.h 文件并 烧录 即可使用设备

】软件操作

进入微雪官网,进入上方 微雪云

完成注册及 设备创建

修改程序 对应的MQTT信息及WIFI信息

烧录程序

在 微雪云 中进入 Dashboard

选择本设备对应的设备选项,进入开发

】外部扩展

RS485 扩展继电器路数

使用 Modbus RTU Relay 扩展 8 路继电器

4个主示例文件已兼容该操作,需将WS_imformation.h 中的 Extension_Enable 设置为 1(默认为1)

可通过蓝牙控制外部扩展的继电器

操作指令指令功能
06 01切换 Modbus RTU Relay 的 CH1 继电器的状态
06 02切换 Modbus RTU Relay 的 CH2 继电器的状态
06 03切换 Modbus RTU Relay 的 CH3 继电器的状态
06 04切换 Modbus RTU Relay 的 CH4 继电器的状态
06 05切换 Modbus RTU Relay 的 CH5 继电器的状态
06 06切换 Modbus RTU Relay 的 CH6 继电器的状态
06 07切换 Modbus RTU Relay 的 CH7 继电器的状态
06 08切换 Modbus RTU Relay 的 CH8 继电器的状态
06 09开启 Modbus RTU Relay 的所有继电器
06 0A关闭 Modbus RTU Relay 的所有继电器

蓝牙控制继电器的指令为字符1~8,即十六进制的 0x06 0x01 ~ 0x38 0x0A

点击发送按钮,填写需要发送的数据(当前为十六进制发送),如下输入 0x06 0x01

发送 0x06 0x01 可控制继电器 CH1 进行状态翻转

发送 0x06 0x0A 可控制关闭所有继电器

兼 Pico 接口扩展定时开关功能

使用 Pico-RTC-DS3231 扩展 定时开关功能

Pico-RTC-DS3231 设备连接至 ESP32-S3-Relay-6CH

4个主示例文件已兼容该操作,需将 WS_imformation.h 中的 RTC_Enable 设置为 1(默认为 0 ,请保证已连接 Pico-RTC-DS3231

将 WS_imformation.h 中的 RTC_OPEN_Time_Hour、RTC_OPEN_Time_Min、RTC_Closs_Time_Hour与RTC_Closs_Time_Min设置为 操作时间

参数参数说明
RTC_OPEN_Time_Hour开启所有继电器的时间——小时
RTC_OPEN_Time_Min开启所有继电器的时间——分钟
RTC_Closs_Time_Hour关闭所有继电器的时间——小时
RTC_Closs_Time_Min关闭所有继电器的时间——分钟

如下设置为每天 8点6分开启,16点30分关闭

兼 Pico 接口扩展 CAN 接口

使用 Pico-CAN-B 扩展 CAN 通信接口

】前置操作

安装 mcp_can 库

】使用教程

Pico-CAN-B 设备连接至 ESP32-S3-Relay-6CH

下载提供的 Pico-CAN-B 示例

根据所需操作对程序进行修改

在主程序中引用 WS_MCP2515.c 与 WS_MCP2515.h

引用后即可在主程序中通过函数 receiveCANData(uint32_t* canId, uint8_t* data) 和函数 sendCANData(uint32_t canId, uint8_t len, uint8_t* data) 进行 CAN数据接收 与 CAN数据发送

兼 Pico 接口扩展环境监测功能

使用 Pico-Environment-Sensor 扩展 环境检测功能

】前置操作

安装 Adafruit BME280 库

选择安装所有

安装 Adafruit TSL2591 库

选择安装所有

安装 Adafruit LTR390 库

选择安装所有

安装 Adafruit SGP40 库

选择安装所有

】使用教程

将 Pico-Environment-Sensor 设备连接至 ESP32-S3-Relay-6CH

下载提供的 Pico-Environment-Sensor 示例

在主程序中引用 Environment_Sensor.c 与 Environment_Sensor.h

根据需求对程序进行修改

兼 Pico 接口扩展 RS232/RS485 接口

请注意,使用 Pico-2CH-RS485 扩展 RS485 接口时仅支持通道1,通道0 不可使用

使用 Pico-2CH-RS232 扩展 RS232 通信接口

使用教程

Pico-2CH-RS232Pico-2CH-RS485 设备连接至 ESP32-S3-Relay-6CH

下载提供的 Pico-2CH-RS232 示例(程序适用上述两款设备)

在主程序中引用 WS_UART.h

根据所需操作对程序进行修改

当前为实时打印接收到的字符

在 setup 中调用初始化函数 Extension_Init()

调用后即可在主循环程序中通过函数 SetData2(uint8_t* data, size_t length) 和函数 SetData3(uint8_t* data, size_t length) 进行数据发送


】Micropython 下使用

烧录固件程序

下载并解压MicroPython固件:(烧录器与固件

将设备连接电脑

打开 flash_download_tool_3.9.4.exe软件,选择ESP32-S3及USB

选择对应的COM口,我们已经为你配置好其他信息,点击Start开始下载即可(若识别不到COM 口,请按住 BOOT 按键,并按下 RESET 按键,先松开 RESET 按键)

若出现下载卡顿,一直未进行下载,请进入下载模式,按住 BOOT 按键,并按下 RESET 按键,先松开 RESET 按键,再次尝试下载,等待烧录完成

前置操作

】Thonny 下使用

安装Thonny(Thonny IDE

开启Thonny,点击右下方的“Python x.x.x”,选择“Configure interpreter”

在弹出窗口中选择“Interpreter”->解释器选择“MicroPython(ESP32)”

保存设置

点击暂停,Shell窗口出现“MicroPython v1.22.1 on 2024-01-05; Generic ESP32S3 module with ESP32S3 Type "help()" for more information.”即为连接成功

程序烧录

下载示例程序MicroPython 示例

在 Thonny 上开启文件窗口

查看文件路径

在 Thonny 上进入示例文件的路径

按住 Ctrl 并选择目录下所有文件,右键选择 Upload to/ 进行上传

等待上传结束

上传成功即可在设备文件窗口看见上传的文件,当前示例可实现蓝牙控制设备,可根据自身需求进行二次开发