CATALOG

芯步的8路控制器支持完整开放接口,单路/批量/时序控制均可通过API实现。以下方案涵盖接口协议、三种联动模式(基础/分组/流水灯)以及状态反馈处理,开发者可直接复用。

1. 概述

芯步提供的 8路智能控制器(包括交流电压版和直流电压版)支持通过 HTTP API 进行全功能的远程控制。基于其开放接口,开发者可以实现高度灵活的“联动模块”,即根据特定业务逻辑(如传感器触发、定时任务、人工操作)来控制任意一路或多路电路的通断。

本文将重点讲解如何对接该接口,构建一个具备 8路独立控制批量控制时序联动控制能力的二次开发模块。

2. 核心技术接口

在二次开发中,核心接口为 向设备下发指令(device/control)。通过该接口,向目标设备发送 JSON 格式的命令字,即可操控继电器。

2.1 请求地址

https://api.thingboot.com/{AppID}/device/control/?sign={sign}&ts={ts}

2.2 核心参数定义

开发者需关注 order 字段,这是控制硬件的核心指令。

场景order 格式示例说明
单路独立控制{"power1": "1"}控制第1路闭合(通电)
单路断开{"power3": "0"}控制第3路断开(断电)
全开/全关{"power": 1}{"power": 0}同时控制8路全部开启或关闭
批量选通{"batch": {"relay": [1,3,5,7], "power": 1}}仅开启第1、3、5、7路,其他路状态不变
时序联动 (先通后断){"point": {"relay": [2,4,6,8], "interval": 500}}第2、4、6、8路先闭合,间隔500毫秒后自动断开(常用于门禁/脉冲控制)

3. 联动模块逻辑设计

为了实现“8路独立线路控制”的联动效果,二次开发模块的逻辑架构分为三层:

  1. 业务逻辑层:根据实际场景(如用户点击、定时器、温湿度传感器阈值)生成控制策略。

  2. 命令封装层:将业务需求转化为上述的 order JSON 字符串(重点处理 powerXbatch 的组合)。

  3. 通信执行层:封装签名算法,发送 HTTPS 请求并处理返回结果。

4. 关键功能实现策略

4.1 实现“互斥联动”控制

在某些工业场景(如电机正反转)中,两路控制必须互斥(A路接通时B路必须断开)。策略:不能单纯下发现场命令,必须在云端逻辑层做“虚拟互斥”。

  • 实现的方式是:在调用接口前,程序先判断目标状态。若用户试图开启“反转”第2路,程序则自动先生成 {"power1": "0"} 命令,紧接着(或合并参数)下发 {"power2": "1"}。虽然接口支持极速下发,但在电气安全要求高的场景,毫秒级间隔发送两条指令。

4.2 实现“状态同步”联动

HTTP 指令下发后,API 返回 200 仅代表指令被平台接收,不代表设备已执行

  • 策略:对于要求严格反馈的场景,不能仅依赖 HTTP 返回值。

  • 二次开发处理:订阅芯步的 异步消息推送(Webhook/MQTT)。当设备实际执行命令后,平台会推送设备的最新状态,系统接收到推送后更新数据库中的“线路1状态”为“已闭合”,以此形成闭环联动。

4.3 实现“分组与场景”联动

实现一键启动“影院模式”(关灯1,2,3 -> 关窗帘 -> 开电视)。

  • 策略:利用批量控制指令减少网络请求。

  • 命令示例:若需关闭第1、2、3路,开启第4路用于插座:不能直接通过一个 batch 混合开关?标准的 batch 命令通常是全开或全关指定组。直接采用多条指令封装或利用 power1=0, power2=0, power3=0, power4=1 的形式。推荐代码逻辑:在后端函数中构建一个 order 对象,动态添加 power1power8 的属性,最后统一转成 JSON 下发。这样既保证了单次请求,又实现了任意组合的独立控制。

4.4 “脉冲式”联动

对于类似售货柜电磁锁的控制,需要瞬间通电后立即断电,以保护电磁锁线圈

  • 策略:直接使用 API 支持的 point(先通后断)命令。

  • 命令示例{"point":{"relay":[1],"interval":200}}。该命令会让第1路接通200毫秒后自动断开,无需程序二次发送断电指令,既省代码又保证了时间的精准度。

5. 代码实现核心示例(伪代码逻辑)

以下以通用思路展示如何封装一个支持8路独立控制的联动函数:

高阶联动:流水灯或顺序启动

如果需求是设备依次启动(防浪涌),不要循环调用接口。最优解:利用硬件自带的 point 命令。如果业务逻辑是1-8路依次间隔1秒启动并保持,目前接口文档中的 point 支持先通后断(用于脉冲),若需要“先通后保持”,最好通过应用层定时器发送单路命令,或利用 batch 指令配合不同延时。但在 HTTP 短连接场景下,推荐使用 {"power":1} 全开,或者由业务服务器端使用延时队列依次发送 power1power8 的开启指令。

6. 注意事项与最佳实践

  • 签名机制:每次请求必须携带 sign。计算公式为 md5(md5(AppSecret) + ts)。请确保服务器时间与标准时间同步,避免 ts 误差过大导致请求失败

  • 超时与重试:网络波动可能导致指令丢失。二次开发时应设置合理的超时时间(3-5秒),并在业务层对关键指令(如“关闭总电源”)配置重试机制(如间隔1秒重试3次)。

  • 并发控制:当多个用户或传感器同时触发不同路的控制时,在服务端对同一设备 ID 加锁或使用队列,防止瞬间大量请求导致设备响应延迟。

7. 总结

通过芯步的开放接口,二次开发一套8路远程控制联动模块的技术路径清晰。开发者无需关注底层无线协议,只需专注在业务层构建标准化的 HTTP 请求。核心关键在于:

  1. 灵活运用 单路指令 实现精细独控;

  2. 巧妙利用 batch 指令实现高效联动;

  3. 结合 异步推送 确保状态可靠。依照上述方案,开发者可在短时间内将 8 路控制器集成到各类行业应用(如智慧农业、共享空间、自动化产线)中。

控制器产品方案:
如何接入智能 24 路远程开关控制模块来实现远程控制24路线路
查看 >>
怎么在照明控制中集成智能设备来实现分路控制灯光与设备
查看 >>
如何对接8路包间电器覆盖控制器来实现包间智能语音联动控制
查看 >>
舞蹈练习室设备管理:如何将8路包间场景联动控制器对接到自己的项目中
查看 >>
怎么在网咖电竞包间管理中对接智能设备以实现多包间批量开关控制
查看 >>
线路场景方案:
如何对接24 路智能分体远程多通道控制器以实现线路状态反馈控制
查看 >>
如何在智能化改造中接入智能设备以实现1路独立线路控制
查看 >>
怎么在店铺招牌控制中接入智能设备来实现多线路集中通断控制
查看 >>
怎样接入2200W智能通断器AC1以实现线路状态反馈控制
查看 >>
怎样在照明控制中对接智能硬件以实现多达24路独立线路控制
查看 >>
8路用途方案:
如何在安全节能交流设备管理中接入智能设备以实现8 路独立交流线路控制
查看 >>
怎样在配电柜智能改造中接入智能硬件来实现控制8路交直流输出
查看 >>
怎样在共享茶室照明控制中集成智能硬件来实现远程控制8路照明设备通断
查看 >>
怎么在实验室机柜设备电源控制中接入智能硬件来实现集中控制8路设备电源
查看 >>
怎么在居家照明控制中对接智能设备来实现8路独立线路控制
查看 >>