一、这玩意儿能干啥?
说白了,智能通断器AC2-10A就是一个可以用网络控制的“智能开关”。你把它装在任何需要控制通断电的电器线路上,就能通过HTTP接口远程控制开关了。
我们拿到的具体型号是 UNI-TDQ-AC2-10A,有几个比较实在的特点:
2200W额定功率:家用电器基本都能带得动,灯、风扇、鱼缸水泵这些完全没问题
WiFi直连:不需要额外买网关,插上电连上WiFi就能用
支持2.4G WiFi:注意一下,5G频段不行,得用2.4G
开放HTTP接口:这是最核心的,意味着不管你是写网页、小程序、APP,还是用Python、PHP、Java,只要能发HTTP请求就能控制它
简单理解就是:一个能联网的继电器,你调用一下接口,它就“咔嗒”一声接通或断开。
二、接入前要准备的东西
动手之前,先把下面这几样东西备齐:
硬件部分:AC2-10A设备一台(通电状态)
网络环境:2.4G WiFi(这个是硬性要求)
账号相关
去芯步官网注册个账号
创建工作台
进入物联网控制台
关键信息(一定记下来):
AppID:在控制台的开发设置里找AppSecret:同上(这个别泄露出去)device:设备ID,在控制台能看到,或者设备外壳上也有
三、核心概念:签名是怎么算的?
这一步最容易踩坑,我们先讲清楚。
芯步的接口在调用的时候需要带一个签名(sign),作用是验证你的身份。签名的生成规则是:
其中:
ts是当前的时间戳(单位:秒)+是字符串拼接的意思
举个例子说人话
假设你的 AppSecret = "abc123",当前时间戳 ts = 1700000000
第一步:md5("abc123") → 得到一串32位字符串,比如 e99a18c428cb38d5f22e03第二步:把上面这串和ts拼起来 → "e99a18c428cb38d5f22e03" + "1700000000" = "e99a18c428cb38d5f22e031700000000"第三步:对整个拼接结果再做一次md5 → 这就是最终的sign
注意:每次请求都要重新生成sign,因为ts是当前时间,过期就失效了。这能防止别人拿你的请求包去重放攻击。
四、动手写代码:控制通断器的核心逻辑
4.1 控制接口的基本信息
请求地址
https://api.thingboot.com/{AppID}/device/control/?sign={sign}&ts={ts}请求方式:POST
Content-Type:application/json
Body参数
device:设备ID,字符串,可以传多个(用逗号隔开)order:命令,JSON字符串格式
4.2 最常用的命令格式
| 你要干嘛 | order参数 |
|---|---|
| 打开(接通) | {"power1":1} |
| 关闭(断开) | {"power1":0} |
| 先通后断(点动) | {"point":{"interval":1000}} |
| 先断后通(复位) | {"reset":{"interval":1000}} |
注意:AC2-10A是单路设备,所以用 power1。如果是4路或8路的控制器,才有 power2、power3 这些。
4.3 实际代码示例
用curl命令测试(最直接的方式):
Python版(如果你用Python写后端的话):
JavaScript / Node.js版
五、高阶用法:点动和定时
5.1 点动模式(先通后断)
这个场景很常见:按一下开关,灯亮几秒后自动灭。比如楼道灯、门禁电锁。