CATALOG

接入50A带计量数显智能空开的解决方案,核心就三步:设备配网、拿到API凭证、然后调用接口拉数据。下面按实操顺序说,你可以让技术同事直接照着来。

一、 硬件准备与环境搭建

在动手写代码之前,得先把硬件“激活”并连上网。你手里的这个 50A 带计量数显智能空开(就是那个支持芯步协议的版本),它的工作原理是这样的:它连上你家/公司的2.4G WiFi,然后把电压、电流、功率这些数据上报到芯步的云平台,你再去云平台拉数据。

1. 硬件上电与复位把这玩意儿按照说明书接到电路里(注意是 85-265V 交流电,别摸火线!)。新设备拿过来,一般它会自己进入配网模式,如果指示灯没闪,长按那个物理按钮直到指示灯快闪。

2. WiFi 配网(关键一步)这个设备没有蓝牙,用的是 WiFi 快速配网

  • 方式 A(推荐):用“芯步”小程序。

    1. 微信搜索“芯步”小程序。

    2. 注册登录后,创建一个“工作台”(相当于你的项目空间)。

    3. 在设备页面选择“添加设备”,输入你家的 2.4G WiFi 密码(注意:5G WiFi 不行,必须切到 2.4G)。

    4. 小程序会发出声波/广播,设备听到后会滴一声连接上。

  • 方式 B:控制台配置。如果你是在电脑前调试,登录芯步官网的工作台,在“网络配置”里登记你的 WiFi 名和密码,然后点“为设备配置此网络”,手机会生成一个同名热点让设备去连

3. 拿到设备 ID配网成功后,刷新一下“物联网控制台”的页面,你会在设备列表里看到一个新增的设备,那一长串数字就是 device ID,复制下来存好,这是你找它谈话的“身份证号”

二、 接口对接准备工作

我们要做的系统是要实时看数据,这套空开用的是 HTTP 接口,不需要复杂的 MQTT broker 配置,只要你的服务器能联网,发个 GET/POST 请求就行。

但为了安全,API 做了签名验证,千万不要把账号密码直接写在代码里。你需要生成一个 Sign(签名)

拿到你的钥匙(AppID & AppSecret):

  1. 登录芯步控制台。

  2. 找到“开发设置”或“我的应用”。

  3. 你会看到 AppIDAppSecret

    • AppID:就像你的用户名,一般是公开的。

    • AppSecret:像你的密码,绝对保密,不能在前端代码里暴露。

签名算法(这里稍微烧脑,但看一遍就懂):芯步的签名逻辑是一套 MD5 嵌套 YourSign = md5( md5(AppSecret) + ts )

  • 第一步:把你拿到的 AppSecret 做一次 MD5 加密,得到一个 32 位的字符串。

  • 第二步:拿这个字符串,后面拼接上当前的 Unix 时间戳(秒)

  • 第三步:把拼接好的这个新字符串,再做一次 MD5。

这样你的 Sign 就出来了。每一次请求都必须实时计算,因为 ts(时间戳)变了,Sign 也就变了。这样做是为了防止别人拿着你的链接随便刷接口。

三、 业务实现:获取数显数据

现在的目标是:把那块“数显”屏幕上的电流、电压、功率数据,实时显示在你的网页大屏或手机 APP 上。

这个智能空开的“计量数显”功能,意味着它内部有一个电能计量芯片,会实时把数据打包上报。

方案:主动查询 vs 被动接收虽然设备支持实时上报,但为了“实时查看”且实现简单,最稳妥的方法是 定时轮询。我们可以通过 HTTP 接口主动去要数据。

1. 查询实时状态(获取电流/电压/功率)

你需要找到对应的接口命令。针对这款 50A 计量设备,查询全量状态的 order 参数通常是获取设备信息。具体的 order 指令请参照官方的《50A产品手册》,但一般来说,我们可以通过控制命令或者查询接口来拉数据。

请求示例(使用 Bash CURL 或者任何后端语言):

返回的数据结构(预期):设备会返回一个 JSON,里面通常包含:

  • power: 当前功率(W),如果是 50A 的设备,功率可能上万。

  • voltage: 当前电压(V),一般在 220V 左右。

  • current: 当前电流(A),这是关键。

  • energy: 累计用电量(kWh)。

重要提醒:这个设备是“带计量”的,而且是“数显版”,它的返回数据里必须包含电压和电流。如果你的 order 发的是 {"power":1},那只是控制开关通断,返回的只是“成功/失败”,不会返回电表数据。一定要发查询实时数据的命令。

2. 解析与展示

拿到返回的数据后,你的任务就是把它画在界面上。

  • 如果是 Web 端:用 ECharts 做个实时曲线图,X 轴是时间,Y 轴是功率。

  • 如果是 小程序/APP:直接卡片式展示数字,比如“当前电压:221.5V”、“当前电流:12.3A”。

四、 进阶:远程控制(如果只需要看数显,这段可跳过)

虽然你主要想看数据,但都接进来了,顺手把开关控制做了也不亏。发送控制指令也是调用同样的接口,只是 order 参数变了:

  • 合闸(通电){"power":1} 或者 {"power1":1} (如果是多路控制,会有 power1, power2)。

  • 分闸(断电){"power":0}

这个就不需要像读数据那样频繁请求了,只在用户点按钮时触发一次即可。

五、 常见“坑”与避坑指南

  1. WiFi 必须是 2.4G 频段如果你公司 Wi-Fi 是那种合并频段的(双频合一),设备大概率连不上。需要登录路由器后台分开,或者用手机开一个 2.4G 的热点测试

  2. 时间戳同步问题签名计算用到 ts。服务器时间和你调用机器的时间误差不要太大(一般几百秒内有效,但同步到秒级)。如果你的服务器时间是错的,接口会一直报签名错误。写代码时,ts 最好用服务器当前时间动态生成,不要写死

  3. 数显数据更新的频率既然是“实时查看”,你要注意,设备默认可能是每隔几秒(比如 5s 或 10s)上报一次数据,并不是毫秒级的瞬时值。因为是通过 WiFi 走云端的,肯定会有延迟,别拿万用表的精度去要求它,做到“准实时”即可。

  4. 设备 ID 在哪看?很多人配好网后找不到设备 ID。去后台的“物联网控制台” -> “设备列表”,点进去就能看到那个 device 字段。你甚至可以先用控制台里的“调试”功能发一条 {"power":0},看看灯会不会灭,确认 ID 对了再开始写代码

总结一下流程

注册/登录芯步云 -> 拿到 API 密钥 -> 给空开配网(2.4G WiFi) -> 在后台拿到设备 ID -> 写代码算签名 -> 用 HTTP 轮询查询数据接口 -> 解析电压/电流数据显示在界面上。

按照这个节奏,你的运维人员应该能在半小时内把那个“数显”搬到你的大屏幕上。