CATALOG

芯步的40A带计量智能断路器开放了标准的HTTP接口,这意味着你可以用任何编程语言轻松实现远程控制。下面我一步步说明如何二次开发,实现远程定时通断功能。

一、准备阶段:了解你的硬件和接口

  1. 主角设备:你手上这款“40A带计量智能断路器”(通常型号为 UNI-DLQ-M-40A-PD 这类)。它自带WiFi(2.4G),不需要额外买网关,通电后配好网就能直接联网

  2. 核心武器开放HTTP接口。这是芯步家产品的特色,说白了就是给你一个网址(API),你用代码发个请求过去,就能控制开关了。这玩意儿不挑编程语言,Python、Java、PHP、甚至微信小程序都能搞定

  3. 准备工作

    • 去芯步的开发者后台注册账号。

    • 把你的断路器添加到账号下。

    • 在后台找到你的 AppIDAppSecret(这是钥匙,证明你有权限操作设备)

二、破解核心:如何下发控制命令

要实现远程控制,其实就是在代码里模拟浏览器登录后台,然后点一下“开关”按钮。具体流程是这样的:

1. 调用地址(URL)你需要向这个地址发送请求:http(s)://api.thingboot.com/{你的AppId}/device/control/

2. 必须携带的参数为了安全,除了设备ID,还需要做签名验证,不然谁都能控制你的设备就麻烦了。

  • device:你的设备ID(在后台能看到)。

  • order:这是指令核心。

    • 合闸(通电){"power":1}

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

  • sign(签名):这是一个技术活,但很简单,算法是 md5( md5(AppSecret) + ts )

    • 大白话解释:把你的AppSecret算一遍MD5,得到一个字符串,后面拼上当前的时间戳,再把拼起来的结果算一遍MD5,这就得到了签名

3. 实操演示(用Linux Curl命令或Python)假设你的 AppId=abc123DeviceId=10086

先来一个最直接的Curl命令(适合直接在命令行测试)

等你把上面的命令中的AppID、设备ID都换成真的,运行一下就能立即听到“咔哒”一声,设备通电了!

如果用Python写(适合集成到你的系统里)

三、进阶玩法:实现“远程定时通断”

你问的是“定时通断”,这其实有两种实现方式:

方案A:设备自带定时(最简单、最稳定)

这款断路器其实硬件本身就支持掉电定时。你不需要搞什么复杂的服务器轮询场景举例:想让充电桩在1小时后自动断电,防止过充。发送指令

(这里的 3600000 是毫秒,代表1小时后自动断开。如果你是想要先通电,或者先通电一段时间再关,可以用 pointreset 命令)

优点:即使断网,设备也会在1小时后执行断开动作,非常靠谱。

方案B:云端/服务器轮询(适合复杂逻辑)

如果你想做“每天晚上8点开,早上8点关”这种重复周期任务。实现逻辑

  1. 你需要有一台服务器(或者用云函数)。

  2. 写一个脚本,判断当前时间。

  3. 如果现在是20:00,调用上面教的 {"power":1};如果是08:00,调用 {"power":0}

  4. 把脚本扔到服务器的Crontab(定时任务)里跑。

优点:可以结合节假日、日出日落时间等复杂规则。

四、你的专属“计量”功能怎么用

你这款是“带计量”的,不仅可以控制,还能看数据。这对于做能源管理特别有用,比如你可以根据功率大小来判断设备是否故障。虽然设备主要走HTTP控制,但获取计量数据通常有两条路:

  1. 主动查询:通过芯步的HTTP接口查询设备当前状态(电压、电流、功率)。

  2. 消息推送:比较高级的做法是在后台配置数据转发,设置一个你自己的接收地址。设备每5秒(举例)就会自动把电压、功率等消息推送到你的服务器上,这样你就能画出