AC1-10A智能通断器本身不内置过压欠压检测功能,但通过其开放接口,你可以用外部传感器+少量代码实现电压保护逻辑。以下是详细方案:
一、 硬件选型与连接
要实现过压欠压保护,首先需要采集电压数据,增加以下配件:
电压检测模块(推荐:ZMPT101B 单相交直流电压传感器)
作用:将高电压(AC 220V)转换为模拟信号(0-5V)或数字信号,供主控判断。
连接方式:火线零线输入接模块,输出接外部MCU(如ESP8266/Arduino)或直接接入AC1-10A的预留引脚(如果支持ADC)。
控制逻辑架构
方案A(推荐)第三方MCU + AC1-10A。使用NodeMCU/ESP32读取电压模块数据,当电压异常时,通过HTTP请求控制AC1-10A通断。
方案B自建规则引擎。将AC1-10A的数据上报至自建服务器,服务器内运行逻辑判断后下发指令(存在网络延迟)。
接线示意图逻辑
AC 220V 输入 --> 电压检测模块 --> MCU (ESP8266) 读取数值
|
--> 芯步 AC1-10A (输入端)
|
--> 负载设备 (输出端)二、 软件二次开发核心逻辑
芯步AC1-10A模块本身是一个执行器,不具备复杂的数学运算能力,因此保护逻辑必须在云端服务器或本地网关(外部MCU)中实现。
1. 开发流程概览
Step 1:获取设备凭证。登录芯步控制台,获取
AppID和AppSecret,并记录设备的唯一标识device ID。Step 2:部署检测端。编写程序让MCU读取电压模块的实时数值。
Step 3:实现保护逻辑。检测到电压超出范围(如 >275V 或 <160V),立即向AC1-10A发送断开指令。
2. 接口调用详解(下发断电指令)
当MCU检测到电压异常时,需调用AC1-10A的HTTP接口执行断开操作。
请求地址
https://api.thingboot.com/{AppId}/device/control/签名算法
Sign = md5( md5(AppSecret) + ts )请求体示例 (JSON)
3. 核心代码演示 (Python + 伪代码)
假设使用ESP8266或树莓派作为控制器,核心逻辑代码如下:
三、 高级策略配置
为了减少频繁通断对接触器的损耗,在代码中加入以下机制:
去抖动滤波
不要瞬时断电。如果检测到一次电压异常,连续检测如3-5次(持续如3秒)仍异常,再执行断电。防止电网瞬间波动导致设备误动作。
恢复延时(滞回比较)
断电后,即使电压恢复正常,不要立即自动通电。
等待电压稳定在正常范围(如200V-235V)持续30秒以上,再发送闭合指令(
power1:1)。
状态上报与告警
利用芯步的“消息推送”机制。当MCU执行断电动作后,可调用通知接口(如Server酱、钉钉机器人)向管理员手机发送“电压异常导致断电”的告警消息。
四、 方案优缺点分析
| 特性 | 说明 |
|---|---|
| 优点 | 无需破解设备,基于官方API开发稳定;逻辑完全自定义,阈值可随时调整;成本较低。 |
| 缺点 | 依赖网络/WiFi。若路由器或外网断开,云端控制失效,需依赖本地MCU直连(需二次开发局域网协议)。 |
五、 总结与
由于AC1-10A是纯粹的执行类通断器,要对其实现过压欠压保护,核心是利用其HTTP接口作为“手”,外挂的电压传感器和MCU作为“眼”和“脑”。
在开发时,优先使用 ESP8266/Arduino + ZMPT101B 的组合。将上述Python代码移植到Arduino中运行时,记得重点处理网络重连机制和看门狗,确保保护系统能长期稳定运行,不会死机。