芯步24路控制器开放标准的HTTP API接口,签名机制规范,单次请求即可控制单台或多台设备。以下方案围绕如何利用这些接口构建联动控制系统展开。
解决方案:基于芯步24路控制器的多设备联动系统二次开发
1. 系统设计
为了实现复杂的联动逻辑,采用中心化控制架构。即:不依赖设备间的直接通信,而是由您的业务服务器作为中枢,接收传感数据或定时任务,通过计算决策后,调用API控制24路控制器的各路输出。
设备层:包含24路远程多回路智能控制器,以及与之联动的传感器(如芯步的温湿度传感器、人体雷达传感器等)或被控设备(灯具、电机、电磁阀等)。
云端/服务器层:您的业务服务器,负责处理签名认证、数据存储、逻辑判断。
通信协议:全系列产品支持 HTTP API 与 MQTT。在联动控制场景下,下行控制使用HTTP API(请求-响应模式),上行数据接收使用MQTT推送(实时性强)。
2. 二次开发核心准备
在开始编码前,需在芯步控制台完成以下准备工作:
获取凭证:在“开发设置”中获取
App ID和App Secret。这是调用API的身份凭证。设备ID:记录下24路控制器的设备ID(Device ID),以及关联传感器的ID。
理解签名机制:芯步采用双层MD5加密以确保接口安全。
签名生成规则(核心算法):
第一步:将
AppSecret进行MD5加密得到字符串S1。第二步:将
S1与当前Unix时间戳(秒)拼接成新字符串S1 + ts。第三步:将拼接后的字符串再次进行MD5加密,得到最终的
Sign。
此签名保证了请求的时效性与合法性。
3. 设备联动控制逻辑实现
联动控制的关键在于服务器能够根据事件源(如传感器、定时器、另一个回路的状态)触发目标动作。
3.1 单路与多路控制(HTTP API实现)
芯步的接口设计非常直观,通过 order 参数传递JSON指令即可。
单路控制:控制第1路打开。
多路批量控制:同时控制第1路开、第3路关、第5路开。
全开/全关
注:
power为通用属性指令,适用于控制全部端口。
3.2 场景联动示例:环境恒温恒湿系统
假设场景:一间存放精密仪器的机房。
执行器:24路控制器(第1路接空调、第2路接除湿机、第3路接加湿器)。
传感器:芯步温湿度传感器(设备ID:S001)。
逻辑:当温度 > 28°C 时开空调(power1=1);温度 < 18°C 时关空调(power1=0);湿度 > 70% 时开除湿机(power2=1),以此类推。
开发伪代码实现:
3.3 高阶时序联动逻辑
24路控制器支持“先通后断”或“先断后通”的命令模式,适合流水线或电机正反转控制。
需求:启动电机正转5秒后停止,再自动反转。
实现
服务器下发
{"power1":1}(正转接触器吸合)。sleep(5000)或设置定时任务。服务器下发
{"power1":0}(断开正转)。sleep(500)(间隔,防止弧光短路)。服务器下发
{"power2":1}(反转接触器吸合)。
4. 可靠性保障与优化
4.1 异步消息确认
由于HTTP 200响应仅表示指令下达成功,不代表设备真实执行。为确保联动可靠性,需配置消息推送接口(Callback URL)。
设备执行命令后,会上报执行结果(成功/失败)到您的服务器,您可根据此结果进行重试或告警。
4.2 分组控制优化
如果您拥有多个24路控制器(例如管理整栋楼的多个电表箱),可以使用分组控制API来简化操作。
将同属一个场景的多个设备拉入同一个分组(Group ID)。
直接调用
/group/control/接口,实现一键全开/全关,无需循环调用单个设备接口。
4.3 网络与部署选项
公网模式:默认方式,需确保服务器能访问
api.thingboot.com。私有化/局域网模式:芯步支持“软网关”方式。如果您对延迟极其敏感(要求10ms级响应)或数据不出厂,可在本地服务器安装“芯步软网关”,设备直接通过内网IP调用,无需经过公网。
5. 总结
通过二次开发芯步24路远程多回路智能控制器,您可以构建极其灵活的自动化控制系统。其开放的HTTP API和简单的签名机制极大降低了开发门槛,无论是简单的定时开关,还是复杂的“传感器+多路逻辑判断+时序动作”系统,都能通过上述架构稳定实现。开发者仅需关注业务逻辑层(IFTTT规则引擎),无需关心底层通信细节。