CATALOG

DC-10A 是一款支持两路开关量输入的智能通断器,其开放接口允许开发者绕过厂商App,直接基于HTTP API构建自定义联动逻辑。以下方案涵盖技术架构、签名算法、核心实现代码及典型场景。

解决方案:基于芯步 DC-10A 开放接口的二次开发实现自定义联动控制

1. 背景与技术原理

DC-10A 智能通断器 不仅支持远程控制继电器通断,更关键的是它具备 两路开关量输入接口(DI1, DI2)。这意味它可以接入传统的物理按钮、门磁传感器或工业限位开关。

核心二次开发逻辑:利用 DC-10A 的开放 HTTP 接口,建立“外部触发 -> 云端/本地逻辑判断 -> 设备动作”的闭环。开发者可通过自建服务器接收设备状态变化(Input 状态),运行自定义业务逻辑(如延时、互锁、联动),再通过 API 控制输出(Power)。

2. 二次开发环境准备

在开始编码前,需要在芯步控制台完成以下配置:

  1. 获取凭证:在控制台的“开发设置”中获取 AppIDAppSecret。这是 API 调用的身份凭证

  2. 设备 ID:将 DC-10A 配置上网后,在设备列表获取唯一的 Device ID(如示例中的 1878

  3. 网络环境选择

    • 公有云模式:直接调用 api.thingboot.com

    • 私有化部署:DC-10A 支持局域网通信。若在纯内网环境,可将 API 地址指向自建的本地服务器,实现更高频、低延时的控制

3. 接口签名与核心通信机制

所有二次开发都必须先解决鉴权问题。DC-10A 接口采用 MD5 双层加密 策略,这是实现安全控制的基石。

签名算法步骤(伪代码逻辑):

  1. AppSecret 进行一次 MD5 哈希:sec_md5 = md5(AppSecret)

  2. 拼接时间戳:str = sec_md5 + timestamp

  3. 生成最终签名:sign = md5(str)

请求结构(以控制“闭合继电器”为例):

  • URLhttps://api.thingboot.com/{AppID}/device/control/

  • Method:POST

  • HeadersContent-Type: application/json

  • Payload

技术提示:通过 order 字段可灵活控制。对于 DC-10A,{"power1":1} 控制第一路,若要实现“点动”(类似按一下触发几秒),可在代码中组合 {"power1":1} 和延时后的 {"power1":0}

4. 自定义联动逻辑实战开发

本方案的核心在于 “状态感知”“指令编排” 。DC-10A 的两路输入(DI)可以作为逻辑触发器。

场景案例:双输入互锁逻辑(电机正反转控制)需求:按下输入1(正转)时,必须先断开输出2,再接通输出1;按下输入2(反转)时反之。这是工业安全标准,防止短路。

由于 DC-10A 本身是纯硬件通断器,这种 “互锁逻辑” 需要通过外部服务器代码实现:

代码实现逻辑思路:

  1. 订阅/查询状态:DC-10A 支持向自建服务器推送状态变化,或者你也可以通过 HTTP 轮询获取 DI 状态。

  2. 处理输入 1 (DI=1)

    • 接收到 DI1 触发信号。

    • 先调用 API 断开输出 2:{"power2": 0}(延时 50ms 确保硬件断开)。

    • 再调用 API 接通输出 1:{"power1": 1}

  3. 处理输入 2 (DI=2)

    • 接收到 DI2 触发信号。

    • 先调用 API 断开输出 1:{"power1": 0}

    • 再调用 API 接通输出 2:{"power2": 1}

场景案例:延时关闭与自定义联动需求:按下外接按钮(触发 DI1),灯亮,同时风扇开始排风,5分钟后自动关闭所有设备。

  • 触发端:设备检测到 DI1 状态为 1(闭合)。

  • 逻辑层逻辑

    1. 调用 control 接口:order={"power1":1} (开灯)。

    2. 调用 control 接口:order={"power2":1} (开风扇)。

    3. 启动定时器(300秒)。

    4. 定时器到期后,调用接口:order={"power1":0, "power2":0}

  • 优化点:DC-10A 硬件本身支持 point(先通后断)等基础动作,但在二次开发中,自行维护定时器数组可以实现更复杂的“排程逻辑”,且不受固件版本限制

5. 高阶集成:私有化与消息驱动

对于需要高实时性、无云端延迟的场景(如自动化产线),利用 DC-10A 的 私有化部署 特性

  1. 自建 TCP/HTTP 服务:在本地服务器(如工控机、树莓派)运行一个轻量级 Web 服务。

  2. 设备配置:在芯步控制台将设备的重定向地址指向该本地服务 IP。

  3. 本地闭环:所有 DI 触发信号直接上报给本地服务,本地服务运算后直接通过局域网 HTTP 接口控制设备继电器。整个过程不经过广域网,响应时间可缩短至毫秒级。

6. 总结

通过芯步 DC-10A 的开放接口,开发者完全可以摆脱原生 App 的限制。利用 HTTP API 作为“筋”,用自建服务器作为“大脑”,你可以将 DC-10A 从一个简单的通断器升级为复杂的 逻辑可编程控制器无论是实现简单的微信小程序远程控制,还是复杂的工业级互锁、场景联动,这套基于签名鉴权的二次开发方案均能提供稳定、灵活的底层支持。

通断器产品方案:
创客项目电源控制场景:怎样把智能通断器模块接入到软件项目中
查看 >>
仓储设备电源控制:如何将AC4-30A 物联网开关对接到自己的项目中
查看 >>
如何在创客项目电源控制场景中接入智能设备以实现远程参数配置管理
查看 >>
怎么接入AC4-30A 物联网开关以实现单路交流负载控制
查看 >>
自助售货机电源管理:怎样将AC1-10A电器开关集成到软件项目中
查看 >>
联动场景方案:
怎样在无人值守门店机柜电源控制中对接智能设备以实现多设备联动控制
查看 >>
怎么二次开发50A带计量数显物联网断路器来实现场景联动控制
查看 >>
弱电间人体感应联动:怎样把吸顶式高精度红外传感器对接到项目中
查看 >>
怎么在智能家居人体感应照明中集成智能设备以实现场景联动控制
查看 >>
智能家居情景模式联动:怎样把DIY色彩氛围灯控制器接入到项目中
查看 >>
逻辑用途方案:
怎样二次开发3路智能墙壁开关以实现自定义联动逻辑控制
查看 >>
如何在共享棋牌室设备机柜电源管理中接入智能硬件来实现自定义总控联动逻辑
查看 >>
怎样在智能办公交流电路控制中接入智能设备来实现联动场景逻辑控制
查看 >>
怎样接入20A定时控制断路器以实现自定义联动逻辑控制
查看 >>
怎样在共享台球室高功率设备控制中集成智能设备以实现自定义联动逻辑控制
查看 >>