CATALOG

芯步的智能墙壁开关支持通过HTTP API进行远程控制,3路开关可以独立控制每条线路的启停。实现定时自动控制的核心思路是:用签名算法调用控制接口,再配合定时任务系统(如cron、Linux定时任务或云函数)触发指令。

1. 解决概述

本方案的目标是通过调用芯步开放的HTTP API接口,实现对3路智能墙壁开关的定时控制。架构上采用“云端API + 定时任务”的模式——你的服务器或云函数在预设时间点向芯步平台发送HTTPS请求,开关执行相应的开/关动作。

适用场景

  • 园区公共区域照明定时开关

  • 办公区上下班自动断电/通电

  • 工厂设备定时启停

  • 广告灯箱、招牌定时点亮

2. 准备工作:设备与凭证

在开始开发前,确保完成以下步骤:

  1. 硬件准备

    • 购买芯步 “智能墙壁开关3路” 硬件设备。

    • 按照说明书完成安装(标准86盒),接通Wi-Fi(仅支持2.4G),并确保设备在芯步控制台处于“在线”状态

  2. 平台凭证

    • 注册芯步账号,进入“工作台”。

    • 获取 AppIDAppSecret(开发者密码),这两个参数是所有API调用的身份证和签名密钥

3. 核心技术:接口鉴权与调用逻辑

芯步的API采用动态签名鉴权,每次请求必须携带实时生成的签名(Sign)。注意:官方示例中时间戳(ts)为秒级。 签名生成规则如下

4. 3路开关的控制指令详解

针对3路开关,API接口地址为:https://api.thingboot.com/{AppID}/device/control/?sign={sign}&ts={ts}

请求方法:POSTContent-Type:application/json

Body参数

参数类型说明
deviceString设备唯一ID,可在控制台查看
orderJson控制指令,具体结构见下表

3路开关指令集order 的JSON结构示例

动作描述指令 JSON对应线路示意图
开启第1路{"power1": 1}
关闭第1路{"power1": 0}
开启第2路{"power2": 1}
关闭第2路{"power2": 0}
开启第3路{"power3": 1}参考一般3路开关的标识
关闭第3路{"power3": 0}
第1路 点动(先通后断){"point1": "2000"}2秒后自动关闭
第1路 复位(先断后通){"reset1": "1000"}断开1秒后重新接通

5. 实战:实现“定时自动启停”

为了实现自动化,我们需要一个“定时器”来发起HTTP请求。这里以最常见的 Linux Crontab 为例,展示如何实现“每天早上8点开启第1路,晚上18点关闭第1路”。

Shell脚本示例 (control_switch.sh)

设置定时任务

  1. 将上述脚本保存为 control.sh 并赋予执行权限 (chmod +x control.sh)。

  2. 编辑Crontab (crontab -e):

6. 进阶应用场景

除了简单的定时开关,利用API接口还可以实现以下复杂逻辑:

第一种场景:多路独立定时如果需要三个回路在不同时间运行,只需在定时任务中修改 order 参数:

  • 仅开路灯(第1路):{"power1":1}

  • 仅开水泵(第2路):{"power2":1}

第二种场景:传感器联动如果你的服务器连接了温湿度传感器或光感传感器,可以编写逻辑代码:

  • 逻辑示例:当光照度 < 100 lux 时,自动调用API {"power1":1} 开启照明。

  • 逻辑示例:当温度 > 30°C 时,调用API {"power2":1} 开启排风扇。

第三种场景:临时延迟关闭(点动模式)如果需要类似“楼道灯”效果,即开启后自动关闭,可以利用设备端能力,无需在服务器端计时:

  • 需求:按下按钮(或触发信号),第3路开启,5分钟后自动关闭。

  • API指令{"point3": "300000"} (时间单位为毫秒)。

7. 注意事项

  1. Wi-Fi信号强度:3路开关通常安装在墙壁底盒内,金属龙骨和水泥墙对Wi-Fi信号有屏蔽作用,请确保安装点信号强度良好(RSSI不低于-70dBm),以免指令执行失败

  2. 负载限制:3路开关每一路都有额定功率限制(通常阻性负载如白炽灯较高,感性负载如LED、节能灯较低)。请查阅具体产品手册,避免过载

  3. 局域网控制(私有化) :芯步支持私有化部署,如果你的系统运行在纯内网环境,可以配置局域网IP直接控制,无需走云端

  4. 签名时效:签名中的时间戳(ts)通常有有效期(如几分钟内有效),请确保执行脚本的服务器系统时间与标准时间误差不要过大。

通过以上步骤,即可利用芯步的开放接口,稳定地将3路智能墙壁开关集成到你的自动化系统中。