芯步8路包间控制器的开放接口采用标准HTTP协议,任何支持HTTP请求的编程语言都可以快速对接。针对“灯光亮度调节”的需求,需要说明的是:该控制器的8路输出均为继电器开关量控制(通/断),而非PWM模拟调压,因此“亮度调节”实质是通过快速通断或调节亮灯数量来实现。以下是具体的二次开发解决方案。
1. 产品与技术背景
芯步的智能包间控制器(如型号 UNI-KZQ-BJ-MAX)专为共享棋牌室、茶室、影音房等场景设计。该设备提供 8 路独立输出接口,能够覆盖包间内的所有电器,包括第 1-3 路(照明)、第 4-6 路(插座)、第 7 路(门禁)和第 8 路(空调)。
核心开放能力:
接口协议:设备开放标准的 HTTP 接口,无需网关,设备直连 WiFi 2.4G 网络。
响应速度:从云端下发指令到设备执行的延迟约为 80-120ms,具备比较高的实时性。
控制本质:该设备的每一路均为继电器通断控制(开关量),而非电平模拟量。因此,常规的“亮度调节”不能直接通过电压变化实现,而是需要通过 PWM(脉宽调制)逻辑 或 分组控制 来达到亮度分级的视觉效果。
2. 亮度调节的硬件选型与预备方案
在开始二次开发前,需要根据现场灯具类型选择合适的调光策略。由于控制器输出为开关量信号,采用以下两种硬件搭配方案之一:
方案 A(推荐用于 LED 灯带/普通灯泡): 将控制器的一路输出接入 0-10V 或 TRIAC(前沿切相)调光驱动器。控制器通过控制驱动器的电源通断,结合“间隔通断”逻辑,实现亮度变化。
方案 B(最简单/低成本): 不修改灯具,利用控制器的多路特性。
场景举例:一个包间有 3 组吊灯,分别接在控制器的第 1、2、3 路上。
调光逻辑:全部打开为 高亮,只开第 1、2 路为 中亮,只开第 1 路为 低亮。
3. 接口调用与二次开发逻辑实现
要实现远程调光,开发者需要调用芯步提供的 API 接口。接口地址和签名机制(Sign/Token)可在芯步控制台获取。
3.1 基础控制指令
API 请求示例如下(以 JSON 格式为例):
请求地址
http(s)://api.thingboot.com/{AppId}/device/control/?sign={sign}&ts={ts}请求方法:POST
请求体示例(控制第 1 路灯打开)
(数据说明:
power1至power8对应 8 路输出,1代表通电,0代表断电)
3.2 “软调光”核心算法实现(PWM 模拟)
如果灯具不具备调光驱动,可利用继电器响应快的特点,在应用层通过 高频轮询 实现“呼吸灯”或固定亮度效果。需要注意的是:频繁操作继电器可能增加设备磨损或产生噪音,商用方案优先选用方案 A 或方案 B。
开发逻辑(伪代码):
3.3 批量指令与场景联动
针对“浪漫模式”、“观影模式”等场景,可以一次性下发指令控制多路灯光。利用 batch 指令可以同时调整 8 路状态,实现灯光组合的视觉亮度变换。
接口调用示例
4. 系统集成架构
该系统架构分为三层,确保用户操作到设备执行的链路畅通:
用户交互层(前端)
开发微信小程序或商家 SaaS 后台。
UI 表现:设计为滑动条(Slider),数值 0-100%。
交互细节:当用户滑动滑块时,前端不立即请求接口,而是防抖动处理(松手后才发指令),或者通过设置“高/中/低”三个快捷按钮来调用接口,避免因滑块滑动过快导致网络请求阻塞。
业务逻辑层(云服务器)
开发者服务器接收前端请求。
计算目标亮度对应的控制指令(如果是 PWM 控制,需服务器做定时调度)。
携带签名向
api.thingboot.com发起 POST 请求。
设备执行层(物理设备)
控制器通过 WiFi 接收指令。
控制继电器吸合/断开,调节灯光亮度。
5. 关键注意事项
在进行二次开发时,需注意以下三点:
继电器寿命:通用控制器的继电器有电气寿命(通常约为 10 万次)。如果通过高频通断(PWM)来模拟调光,对于大功率灯具可能会产生嗡嗡声并显著缩短设备寿命。仅在确认灯具支持快速开关且负载较小的情况下使用 PWM 策略。
签名机制:所有 HTTP 接口调用都需要携带
sign签名和时间戳ts,开发时请参考官方文档严格构建签名算法,以防接口调用失败。私有化部署:如果包间网络环境较为封闭(无外网),该控制器支持局域网私有化部署。开发者可将请求地址指向设备本地的局域网 IP,实现纯内网控制,降低延迟。
6. 总结
通过芯步 8 路控制器的开放接口,实现灯光亮度调节的核心在于软硬结合的策略。开发者只需掌握基础的 HTTP POST 请求,根据灯具类型选择“多路组合”或“PWM时序”方案,即可快速集成到包间管理系统中,实现高性价比的智能化升级。