CATALOG

一、写在前面

大家好,今天咱们来聊一个实际落地的问题:怎么把手上的系统(不管是APP、小程序还是后台管理系统)和芯步这款40A的智能大功率断路器对接起来,实现对开关状态的远程查询。

这款设备其实挺实用的,额定功率8000W,支持WiFi直连(不需要买网关),最关键的是接口完全开放,HTTP和MQTT都支持。说白了,只要你会发HTTP请求,就能把它集成到自己的项目里。

下面我按实际对接流程来讲,尽量把坑都指出来。

二、整体思路

先理一下思路。要实现“远程查询开关状态”,其实就是两步:

  1. 让设备上网——配网,让断路器连上现场WiFi

  2. 调接口查状态——通过芯步的开放平台获取设备当前状态

芯步这边的好处是接口是永久免费的,而且支持私有化部署,你要是不想走公有云,也可以搭在局域网里用

三、准备工作

动手之前,先把这几样东西准备好:

项目说明
芯步账号去官网注册,免费的
工作台登录后在控制台创建一个工作台
AppID 和 AppSecret在“开发设置”里找到,相当于你的系统在芯步平台的“身份证”
40A断路器设备到手,确认是计量版
2.4G WiFi现场必须有2.4G频段的WiFi(5G不行,这设备不认识)

小提示:AppSecret千万保存好,丢了没法找回,只能重置。

四、第一步:让设备连上网

设备用之前必须配网,让它连到你现场的2.4G WiFi。芯步提供了两种配网方式:

方式一:电脑上配网

  1. 登录官网,进到你的工作台

  2. 左侧菜单找到“物联网控制台” → “网络配置”

  3. 点击“登记网络”,输入现场WiFi的名称和密码,保存

  4. 选中刚添加的网络,点“为设备配置此网络”

  5. 这时候网页会给你一个临时热点的名称和密码

  6. 用手机打开个人热点,把热点名称和密码改成网页上显示的那个

  7. 给断路器通电,它会自动搜这个热点,连上后自动获取WiFi配置

注意:手机热点必须是2.4G频段,大部分手机默认是2.4G/5G混合模式,需要手动调一下

方式二:小程序配网(推荐,更省事)

  1. 微信搜“芯步小程序”,登录

  2. 选择你创建的工作台

  3. 点击右上角“+”添加现场WiFi信息

  4. 同样,用手机热点中转一下

配网成功后会有一个标志:设备指示灯停止闪烁。同时在控制台“配置到此网络的设备的列表”里能看到它

如果一直配不上,检查三件事:WiFi是不是2.4G、密码对不对、设备通电了吗。实在不行联系芯步的工程师,他们免费技术支持

五、第二步:搞懂接口调用格式

配好网之后,核心来了——怎么调接口。

芯步这边所有API走的都是这个格式

路径里有三个变量需要你自己填:

  • AppID:你的应用ID

  • sign:签名,用来证明你是你

  • ts:时间戳(10位秒级,不要用毫秒)

签名的计算方法(这个地方容易错,仔细看):

先对你自己的AppSecret做一次MD5(得到32位小写字符串),然后把这个结果跟ts拼在一起,再对整个字符串做一次MD5。

举个栗子(伪代码):

注意:ts必须是当前时间的秒级时间戳,太旧了会报错“bad ts”

六、第三步:查开关状态(核心功能)

方式一:查单个设备

设备连上网之后,在控制台的“设备列表”里能看到每个设备有个唯一的设备ID。查状态的接口是:

返回的数据里通常会有powerstatus字段,0表示断开,1表示闭合。计量版还会返回实时的电压、电流、功率数据。

方式二:用标签批量查

如果你有一堆断路器要管,可以先把设备打上标签,然后用标签接口批量查询

这样一次请求就能拿到整批设备的状态,省得一个个去问。

方式三:用MQTT订阅状态(推荐实时场景)

如果你的系统需要实时监控状态变化(比如做个大屏实时显示),HTTP轮询的效率太低了。芯步这边也支持MQTT协议,配置如下

参数
地址
端口1883
用户名你的AppID
密码你的AppSecret
客户端ID在控制台查看

连上之后,订阅对应的Topic,设备状态变化时会主动推送过来,比HTTP轮询实时得多。

七、完整代码示例(Python)

把上面说的串起来,一个完整的查询流程大概长这样:

注意:这只是示例代码,实际返回的字段名请以官方文档为准。不同批次的产品字段可能略有差异。

八、常见坑点汇总

搞对接的时候最容易踩这几个坑:

  1. 时间戳不对:必须用秒级时间戳(10位数字),别用毫秒的13位

  2. 签名算错了:先把AppSecret MD5一次,拼上ts,再MD5一次。顺序别反

  3. 设备没配网:调接口之前先确认设备在线。可以在控制台“设备列表”里看最后上线时间

  4. WiFi是5G的:这设备只认2.4G频段

  5. IP没加白名单:如果你在控制台开了IP检查,记得把服务器IP加进去,否则会报5008

  6. 请求太频繁:单个设备每秒最多1次,别用死循环刷

九、写在最后

总的来说,芯步这套断路器的对接难度不高,核心就是三步:配网、拿签名、调接口。大部分时间其实是花在配网和调试签名上。

如果生产环境用,我个人的是:

  • 查询量不大:直接用HTTP,简单省事

  • 要做实时监控大屏:上MQTT,省流量又实时

  • 有隐私顾虑:芯步支持私有化部署,设备可以跑在纯局域网,数据完全不出内网

最后说一句,芯步这边有免费技术支持,对接过程中卡住了直接找他们工程师,比自己闷头试快得多

有问题欢迎交流!