CATALOG

AC1-10A智能通断器本身不内置过压欠压检测功能,但通过其开放接口,你可以用外部传感器+少量代码实现电压保护逻辑。以下是详细方案:

一、 硬件选型与连接

要实现过压欠压保护,首先需要采集电压数据,增加以下配件:

  1. 电压检测模块(推荐:ZMPT101B 单相交直流电压传感器)

    • 作用:将高电压(AC 220V)转换为模拟信号(0-5V)或数字信号,供主控判断。

    • 连接方式:火线零线输入接模块,输出接外部MCU(如ESP8266/Arduino)或直接接入AC1-10A的预留引脚(如果支持ADC)。

  2. 控制逻辑架构

    • 方案A(推荐)第三方MCU + AC1-10A。使用NodeMCU/ESP32读取电压模块数据,当电压异常时,通过HTTP请求控制AC1-10A通断。

    • 方案B自建规则引擎。将AC1-10A的数据上报至自建服务器,服务器内运行逻辑判断后下发指令(存在网络延迟)。

接线示意图逻辑

AC 220V 输入 --> 电压检测模块 --> MCU (ESP8266) 读取数值
                |
                --> 芯步 AC1-10A (输入端)
                                    |
                                    --> 负载设备 (输出端)

二、 软件二次开发核心逻辑

芯步AC1-10A模块本身是一个执行器,不具备复杂的数学运算能力,因此保护逻辑必须在云端服务器或本地网关(外部MCU)中实现。

1. 开发流程概览

  • Step 1:获取设备凭证。登录芯步控制台,获取 AppIDAppSecret,并记录设备的唯一标识 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或树莓派作为控制器,核心逻辑代码如下:

三、 高级策略配置

为了减少频繁通断对接触器的损耗,在代码中加入以下机制:

  1. 去抖动滤波

    • 不要瞬时断电。如果检测到一次电压异常,连续检测如3-5次(持续如3秒)仍异常,再执行断电。防止电网瞬间波动导致设备误动作。

  2. 恢复延时(滞回比较)

    • 断电后,即使电压恢复正常,不要立即自动通电。

    • 等待电压稳定在正常范围(如200V-235V)持续30秒以上,再发送闭合指令(power1:1)。

  3. 状态上报与告警

    • 利用芯步的“消息推送”机制。当MCU执行断电动作后,可调用通知接口(如Server酱、钉钉机器人)向管理员手机发送“电压异常导致断电”的告警消息。

四、 方案优缺点分析

特性说明
优点无需破解设备,基于官方API开发稳定;逻辑完全自定义,阈值可随时调整;成本较低。
缺点依赖网络/WiFi。若路由器或外网断开,云端控制失效,需依赖本地MCU直连(需二次开发局域网协议)。

五、 总结与

由于AC1-10A是纯粹的执行类通断器,要对其实现过压欠压保护,核心是利用其HTTP接口作为“手”,外挂的电压传感器和MCU作为“眼”和“脑”

在开发时,优先使用 ESP8266/Arduino + ZMPT101B 的组合。将上述Python代码移植到Arduino中运行时,记得重点处理网络重连机制和看门狗,确保保护系统能长期稳定运行,不会死机。