CATALOG

芯步的50A智能断路器支持HTTP接口和消息推送两种开放能力,你可以利用它实时监测电流、电压、温度等数据,一旦检测到异常(比如过载或温度过高),就自动给相关人员发送告警。下面是一套比较直白的二次开发方案。

一、 开发前的准备:搞懂你的“硬件”脾气

在动手写代码前,我们先要搞清楚这台50A断路器的“交流方式”。

  1. 硬件身份:UNI-DLQ-M-50A (WiFi版)。

  2. 通讯特点:它用的是 WiFi 2.4G,不需要额外买网关,插电联网就能用

  3. 核心数据:它能上报电压、电流、温度、开关状态等数据。我们要做的,就是抓住那些“不对劲”的数据。

二、 核心逻辑:怎么算“故障”?

我们需要在代码里定义什么叫“故障”。不能等电线烧了才知道,要提前设好阈值。以下是一些常见的判断标准:

  • 过载告警:电流 > 45A(比如持续超过额定50A的90%)。

  • 超温告警:内部温度 > 70℃(防止端子发热烧坏)。

  • 异常跳闸:断路器状态从“闭合”变成了“断开”,但不是你手动在APP上点的。

三、 方案一:懒人专用版 —— 用Webhook被动接收(最简单)

适用场景:如果你不想架设复杂的服务器,只是想写几行代码或者用现成的通知服务。

原理:芯步的云平台一旦检测到设备数据变化,会主动往你指定的网址(URL)发一份数据

实现步骤:

  1. 找个公网地址:你需要一个能让外网访问的API地址。开发测试可以用 ngrok花生壳 内网穿透。

  2. 在后台配置:登录芯步控制台,找到“消息推送”设置,把你的服务器地址填进去

  3. 写个接收脚本:这里用 Python(读起来最像大白话的语言)举个例子。

假设你写了一个网站后台,有一个地址叫 /device_report ,断路器就会把数据扔过来。代码如下:

解释

  • 这个脚本就像一个小管家,守在门口。

  • 断路器一汇报(比如电流飙到了49A),小管家立刻看数据,发现超了,立马转头发消息给钉钉/微信/邮件。

  • 优点:实时性好,设备一有变化马上知道。

四、 方案二:硬核定时轮询版 —— 主动查岗

适用场景:你没法设置公网IP,或者想做更复杂的定时统计,干脆自己主动去问断路器“你还好吗?”

原理:芯步提供了HTTP接口,你可以随时发送请求查询设备状态

实现步骤:

  1. 计算签名:这是为了防止别人乱调你的设备。官方用的是 md5(md5(AppSecret) + ts) 的方式

  2. 写一个定时任务:让电脑每隔5秒或10秒去问一次。

这里不展开复杂的签名代码,逻辑就是:写个循环,问接口要数据,判断,发告警。

五、 进阶玩法:不仅仅是告警,还要自动处理

既然都做二次开发了,别只当个闹钟。发现故障后,可以直接让断路器自己断开,防止火灾。

联动逻辑如果我们通过方案一或方案二发现:电流 > 55A 持续了3秒

执行动作调用芯步的控制接口,发送断开指令

伪代码逻辑

六、 避坑指南 & 贴心提示

  1. 注意数据类型:接口返回的数据可能都是字符串。比如电流可能是 "49.5",判断大小前记得转成 float 类型,否则 "49.5" > 45 在编程里可能会出错。

  2. 防止告警轰炸:如果设备一直处于故障状态(比如一直过载),它会一直上报。你要在代码里加个“冷却机制” —— 比如5分钟内同一个设备同一个故障只发一次告警,否则半夜你的手机会被打爆。

  3. 网络稳定性:50A断路器用的是WiFi。如果WiFi断了,你的告警逻辑就不灵了。在代码里加个心跳检测——如果超过设定时间(比如10分钟)没收到设备消息,也要发个告警:“设备离线了!”

七、 总结

这套方案其实就是 “感知” + “判断” + “执行”

  1. 感知:利用芯步的消息推送功能,把数据实时传到你的服务器。

  2. 判断:写几行 if 语句,判断 currenttemperature 是否超标。

  3. 执行:调用控制接口自动跳闸,或者用 requests 发个钉钉/微信通知。

这样,你就不用盯着屏幕看了,机器人会第一时间告诉你谁家的电闸出问题了。