40A智能空开在工业设备、充电桩、大型照明等场景中承担着核心配电角色,但单纯的通断控制远不能满足运维需求——你需要知道“设备是否真的在运行”“功率是否异常”。芯步的开放接口提供了HTTP API和MQTT两种对接方式,配合设备自带的功率计量功能,可以实现从“控制”到“监控”的闭环。以下是具体方案:
一、 整体架构与准备
要实现对40A智能空开的二次开发,首先需要明确数据流向。该空开不仅支持远程控制,还能实时上报电压、电流、功率等电参数。
1. 核心架构上层(业务系统) 你的Web应用、APP或ERP系统。中间层(芯步云/API) 负责签名验证、命令下发、数据转发。底层(硬件层) 40A智能空开(内置计量芯片)。
2. 准备条件
硬件设备:芯步40A智能大功率断路器(计量数显版)。
开发凭证:登录芯步控制台,获取
AppID和AppSecret(用于接口签名认证)。设备ID:在控制台获取目标设备的唯一标识
device或tag(标签ID,用于批量控制)。
二、 接口认证机制
芯步的接口采用双重MD5签名机制,这是保证设备安全的防线。
签名算法步骤:
将你的
AppSecret进行一次MD5加密,得到encode_str = md5(AppSecret)。将
encode_str与当前的Unix时间戳ts(秒级)拼接,再进行一次MD5加密。最终签名
sign = md5(encode_str + ts)。
在每次API请求的URL中,需携带 ?sign={sign}&ts={ts}。
三、 如何实现“运行状态监控”
对于40A大功率设备,单纯的“通/断”状态不足以保证安全。必须监控实时负载来判断设备是否“带载运行”或“空载异常”。
1. 获取实时电量参数(核心监控手段)
虽然搜索结果未直接给出获取数据的API具体字段,但根据产品命名“计量数显版”和工业标准,40A空开会主动上报电压、电流、功率、温度等数据。通常通过HTTP API或MQTT订阅获取。
典型实现逻辑:
场景:你需要知道空调、电机或充电桩是否真的在消耗电能。
命令示例(猜想结构):请求设备状态接口(如
/device/status),返回的JSON中通常包含power(功率/W)、current(电流/A)、voltage(电压/V)。判定逻辑
空开状态为“闭合”,且
power > 20W:判定为正常运行。空开状态为“闭合”,但
power ≈ 0W:判定为空载/设备故障(需告警)。空开状态为“断开”,但
current > 0.5A:判定为触点粘连/严重故障。
2. 设备通断状态的获取
除了通过API主动查询(Polling),更高效的方式是利用标签(Tag)系统或WebSocket回调来被动接收状态变化。
状态同步方案:
主动查询:定时(如每5秒)调用设备信息接口,拉取
status字段。被动接收:配置HTTP回调或MQTT订阅。当空开物理按键被按下或过载跳闸时,云端会主动推送状态变更。
四、 二次开发实战场景
第一种场景:Web系统远程运维(断电与复位)
某充电桩运营商需要在后台监控充电电流,当检测到充满或异常时切断电源。
接口调用示例(HTTP POST)
地址
https://api.thingboot.com/{AppId}/device/control/?sign={sign}&ts={ts}Header
Content-Type: application/jsonBody
第二种场景:自动化联动逻辑(过载保护算法)
利用获取到的实时电流数据,在业务层实现比硬件更复杂的保护逻辑。
Python伪代码示例
第三种场景:能耗统计与预测
利用计量功能,定时读取 total_energy(总电能/kWh)或 cumulative_electricity。
应用:将40A空开作为二级配电计量点,自动生成日报表,分摊电费成本。
五、 开发注意事项
签名时效性
ts参数通常有效期为5-15分钟,确保服务器时间与NTP同步,防止503签名过期错误。指令冲突与抢占:如果硬件支持“按钮动作自定义”,需在代码中定义好“本地手动”与“远程控制”的优先级。例如,在远程维护模式下,屏蔽本地物理按钮的权限,防止现场人员误合闸。
大功率安全冗余:40A通常对应8000W负载。在代码逻辑中,设定软限位(如限制最大接通功率为7000W),即使指令下发过量,业务层也能拦截,确保用电安全。
局域网控制:针对工厂等对延迟敏感的场景,可考虑使用局域网IP控制模式,绕过云端直接下发命令,响应时间可缩短至毫秒级。
六、 方案总结
通过上述二次开发方案,你可以将芯步40A智能空开从一个简单的“开关”升级为配电“哨兵”。利用开放接口中的 “读取计量数据” 实现运行监控,利用 “下发控制指令” 实现远程运维,通过 “标签/标签组” 实现批量管理。