芯步AC1-10A智能通断器本身不具备短路自恢复功能,但通过其开放接口 + 外部电流检测 + 您的控制代码,可以实现可编程的短路保护逻辑。以下是完整的二次开发方案。
一、 核心原理与架构
要实现短路保护,不能仅依赖设备本身,需要构建一个“边缘计算”或“云边协同”的逻辑闭环。
检测层:由于AC1-10A内部不包含电流互感芯片,短路检测需要依赖外部带计量功能的传感器(如带电流检测的PZEM模块、或接入CT互感器的模拟量采集模块)。
执行层:AC1-10A通断器。
控制层(您的服务器/单片机)
逻辑判断:采集电流数据 计算是否超过阈值(如持续>)或出现异常突变 判定为短路。
下发指令:调用芯步,发送
{"power1":0}命令断开AC1-10A。
架构流程图:
[电流传感器] --(I2C/Modbus)--> [您的MCU/网关/云服务器][您的MCU/网关/云服务器] --(HTTP API)--> [芯步云端][芯步云端] --(MQTT/HTTPS)--> [AC1-10A执行断开]
二、 准备阶段:接口与密钥配置
在开始编码前,需要在芯步控制台完成以下配置,这是实现控制的凭证基础
获取凭证
登录芯步控制台,找到“开发设置”,获取
AppID和AppSecret。签名算法
Sign = md5( md5(AppSecret) + ts )。其中ts为Unix时间戳(秒)。注意:该签名极容易因时间同步问题失效,在代码中开启NTP时间同步或使用服务器时间。
设备定位
在控制台获取AC1-10A的
Device ID(例如:1878)。
HTTP接口地址
https://api.thingboot.com/{AppId}/device/control/?sign={Sign}&ts={ts}
三、 核心逻辑:短路判定算法
短路保护的核心在于“快”和“准”。由于AC接口是机械继电器,频繁通断有寿命限制,算法上需要区分“浪涌电流”和“真实短路”。
采用“瞬时过流 + 斜率检测”复合判据:
| 检测类型 | 触发条件 | 动作延时 | 物理意义 |
|---|---|---|---|
| 一级保护 (短路) | 电流 (额定10A的2.5倍) | < 100ms | 立即判断为短路,直接物理切断 |
| 二级保护 (过载) | 电流 持续 秒 | 3秒 | 设备发热严重,预警切断 |
| 三级保护 (打火/电弧) | 突变率比较高 | 瞬时 | 线路接触不良或绝缘击穿 |
代码逻辑示例 (Python Pseudocode):
四、 实施步骤:从检测到动作
以下是自动化短路保护的完整调用链路实现示例:
1. 集成签名生成
这是调用接口的第一步,签名错误会导致权限验证失败。
2. 数据采集融合
您需要编写脚本读取外部电流传感器(如串口读取 Modbus-RTU 数据)。
3. 执行断开指令
当判断逻辑触发短路保护时,向目标设备ID下发关断命令。
4. 状态推送与自锁
为了防止“断开-接通-再短路-再断开”的震荡,需要增加软件自锁:
熔断状态:一旦保护触发,在手动复位或等待5分钟冷却前,拒绝任何
{"power1":1}的指令。消息确认:利用芯步的“消息推送”机制(Webhook),当用户手机APP尝试点击“开启”时,您的服务器可以返回错误信息:“设备短路保护中,请检查线路”。
五、 关键注意事项
继电器的寿命限制:AC1-10A内部的继电器在带载(特别是短路电流)下断开会产生拉弧现象,这会显著损害触点寿命。短路保护主要起到“灾难应急”作用,不作为频繁过流保护的开关。在电流过零时(Zero-Crossing)下发断开指令,如果接口不支持精确相位控制,可以考虑在外部串联一个固态继电器(SSR)进行灭弧。
响应延迟优化:HTTP接口从“传感器读数 云端 设备”通常需要 200ms-500ms。这对于短路保护来说时间略长,因为短路电流在 100ms 内就能烧毁线路。
改进方法:如果对保护时间有严格要求,在传感器和AC1-10A之间增加一个硬件比较器电路直接驱动继电器,同时将状态上报给云端做记录,这样才能真正实现微秒级保护。
设备断网处理:如果AC1-10A离线(WiFi断开),云端指令将无法下达。在代码逻辑中增加“心跳检测”,如果设备离线,启动应急报警(如通过短信通知人工处理)。