CATALOG

创客工坊的照明管理痛点很典型:市电布线复杂、多路设备协议不统一、状态反馈难。芯步这款复合开关直接用HTTP接口控制,两路独立可编程,支持状态保持和时序控制,正好适配各种自动化场景。下面从选型到代码接入完整梳理。

一、 解决概述

对于创客工坊而言,环境通常包含操作台、3D打印区、吸尘排风系统等多个独立功能区。传统的物理开关无法实现远程监控和自动化联动。芯步的 “智能墙壁复合开关” 具备标准86型外壳,可直接替换原有开关,通过WiFi联网,并提供开放HTTP API接口。

核心优势:

  • 零网关依赖: 设备直连WiFi 2.4G,无需购买额外网关,降低项目成本

  • 接口通用性: 任何支持HTTP请求的编程语言(Python, JS, Go, PHP等)或工具(Postman, Node-RED)均可调用

  • 双路独立控制: 该开关通常支持两路控制(可命名为“照明”和“设备”),相互独立,互不干扰。

  • 私有化部署支持: 若工坊注重数据安全,该设备支持局域网纯环境运行,不依赖外网

二、 核心技术准备

在开始编码之前,你需要完成以下硬件与平台配置:

  1. 硬件准备:

    • 芯步智能墙壁复合开关(型号如 UNI-KG-KC)x N 个

    • 220V 电源(需由专业电工接线,注意安全)。

    • 2.4GHz 无线网络。

  2. 平台注册与凭证获取:

    • 注册芯步开发者账号。

    • 登录控制台,创建“工作台”(项目空间)。

    • 在控制台的开发设置中获取 AppIDAppSecret(开发者密码),这两个凭证将用于生成接口签名

  3. 设备配网:

    • 方法A: 使用微信小程序“芯步”进行热点配网。

    • 方法B: 在PC端物联网控制台登记现场WiFi名称和密码。

    • 注意: 必须输入准确的WiFi密码,设备仅支持 2.4G WiFi,不支持5G频段

    • 配网成功后,在控制台获取设备的唯一标识符(Device ID),例如:1234567890

三、 接入开发详解

这是解决方案的核心部分。芯步的开放接口基于HTTP协议,请求方式通常为 POST。接口安全性通过 Sign (签名) 机制来保证。

1. 签名算法

为了防止接口被恶意篡改,每次请求需要动态计算签名。算法规则为:sign = md5( md5(AppSecret) + ts )

  • AppSecret:你的开发者密码。

  • ts:当前的Unix时间戳(秒级)。

  • 逻辑:先将 AppSecret 进行一次MD5加密,然后将得到的字符串拼接上时间戳,最后对整个字符串再做一次MD5

为了简化开发,后端代码中需要包含此动态计算逻辑。

2. API 请求地址

POST https://api.thingboot.com/{AppID}/device/control/?sign={YourSign}&ts={ts}
  • {AppID}:替换为你的应用ID。

  • {sign}:替换为上一步计算出的签名。

  • {ts}:替换为计算签名时使用的时间戳。

3. 控制指令 (Order)

在请求的Body中(JSON格式),我们需要传递两个关键参数:deviceorder

针对 智能墙壁复合开关,主要的控制指令如下

功能描述JSON指令 (Order)适用场景
开启第1路线路{"power1": 1}打开主照明灯
关闭第1路线路{"power1": 0}关闭主照明灯
开启第2路线路{"power2": 1}打开排风扇或设备电源
关闭第2路线路{"power2": 0}关闭排风扇
第1路状态保持{"power1":{"keep":1,"revert":10}}保持开启10秒后自动关闭(用于设备预热或提醒)
第1路先通后断{"point1":"5000"}开启5秒后自动关闭(点动模式,适合控制门禁或电锁)

四、 实战案例:集成到你的创客项目

假设你用 Python 写了一个自动化脚本,或者用 Node-RED 搭建了工坊的控制面板,现在需要将“工位1”的灯光接入进来。

场景需求:

  1. 当工坊的AHT10温湿度传感器检测到温度过高,自动开启复合开关的第2路(连接排风扇)。

  2. 用户点击网页上的“一键收工”按钮,关闭第1路(照明)和第2路(设备)。

接入代码示例 (Python)

五、 针对创客的高级调试技巧

  1. 使用 Postman / Apifox 快速测试:在写代码之前,可以先用API测试工具验证接口和签名是否正确。通过手动计算 sign 值,发送POST请求,能最快定位是硬件问题还是代码问题

  2. 利用“状态保持”功能进行节能改造:很多创客工坊的走廊或厕所灯经常被忘记关闭。可以直接利用复合开关自带的 “1路状态保持” 逻辑,设置物理按键按下后,通电5分钟自动关闭。这完全通过设备固件实现,即使你的服务器宕机,该自动化逻辑依然生效。

  3. 状态同步与心跳:虽然有HTTP接口用于下发命令,但如果需要实时获取灯的当前状态(看是开还是关),配合芯步的 消息服务器设备状态查询接口。但在简单项目中,也可依靠本地记录状态,因为HTTP控制成功率比较高,很少出现丢包。

六、 总结

将芯步1路/2路智能墙壁复合开关接入创客工坊项目,本质上是一次 “物理世界数字化” 的过程。通过标准的HTTP API,你可以屏蔽复杂的、不安全的强电操作逻辑,仅通过简单的几行代码就实现对照明的精准控制。

你的项目将不再受限于物理按键的位置,而是可以通过传感器、定时任务、甚至AI决策来驱动灯光和设备,从而提升工坊的智能化水平。