实验室场景中,多设备联动需要同时满足可靠性(实验过程不能中断)、实时性(触发-响应延迟要低)和灵活性(不同设备电压/电流各异)。芯步的8路控制器采用WiFi直连+HTTP API架构,无需网关即可接入现有实验室网络,很适合这类需求。以下是具体方案:
1. 背景与需求分析
在实验室环境中,常常需要同时控制多种仪器、反应器、水泵、风机、照明或加热装置。传统的做法是实验人员手动操作或依赖 PLC,但这两种方式要么人力成本高,要么编程复杂且灵活性差。
痛点:
设备异构性:实验室设备有的需要 AC 220V 供电(如离心机、加热板),有的需要 DC 12V/24V(如电磁阀、散热风扇、LED 光源)。
协同困难:需要根据传感器反馈(如温度、液位)自动调整多个设备的开关顺序。
布线复杂:实验室改装不便,无线化需求迫切。
解决方案思路:利用芯步智能通用/直流控制器(8路) 作为执行终端,利用其开放 HTTP API 接口,通过实验室局域网,将现有的上位机(PC 控制软件)或 Web 系统与物理设备无缝连接。
2. 硬件选型
针对“交直流输出”的混合需求,选用以下两款硬件:
| 设备型号 | 负载类型 | 输出电压 | 典型应用场景 | 特点 |
|---|---|---|---|---|
| UNI-KZQ-TY-8(智能通用控制器) | 交流/直流 | 支持混合接入(AC 0-250V / DC 0-30V) | 控制离心机、振荡器、加热循环浴、通风橱风机 | 负载功率大(Max 4400W),直连强电设备 |
| UNI-KZQ-DC-8(智能直流控制器) | 直流专用 | DC 0-24V | 控制电磁阀、冷却风扇、LED 指示灯、小型直流电机 | 适合板卡级集成,安全性高,反应灵敏 |
注:若涉及大功率感性负载(如电机、压缩机),需参考手册换算负载能力或加装交流接触器。
3. 设计
系统采用 “端-管-云/本地” 三层架构。为了保障实验室数据不外泄,采用局域网私有化部署模式。
架构图描述
感知/执行层
芯步 8路控制器(连接各类实验室设备)。
传感器(温湿度、人体雷达等,用于触发联动)。
网络传输层
WiFi 2.4G(设备直连路由器,无需网关)。
协议:HTTP/HTTPS,数据格式 JSON。
控制核心层
实验室中央控制服务器(PC 或工控机)。
运行主控软件(Python、Node-RED 或组态软件),负责调用 API 和逻辑判断。
4. 核心对接机制:开放接口详解
芯步产品的核心优势在于简化的 HTTP API 调用方式 。
4.1 鉴权与请求地址
所有控制指令均通过 POST 请求发送,需要对接口权限进行验证。
URL:
https://api.thingboot.com/{AppId}/device/control/鉴权参数
ts:当前 Unix 时间戳。signMD5(MD5(AppSecret) + ts)注:AppId 和 AppSecret 在芯步控制台获取。
4.2 指令格式 (Order JSON)
这是实现“控制8路输出”的关键。请求 Body 包含 device(设备ID)和 order(命令)。
单路独立控制
开启第 3 路:
{“power3”: 1}关闭第 5 路:
{“power5”: 0}
批量控制(高效指令)
同时开启第 1、3、5 路:
{“batch”: {“relay”: [1,3,5], “power”: 1}}
场景模式控制(先通后断)
适用于互锁逻辑(如电机正反转),防止短路:
{“point”: {“relay”: [1], “interval”: 500}}(先接通第1路,500ms后断开)
5. 实施步骤:如何实现多设备联动
以下以 “反应釜温控联动实验” 为例,说明如何结合代码实现自动化。
场景设定当温度传感器检测到反应釜温度 > 60℃ 时,自动开启直流冷却水泵(接在第1路),同时关闭交流加热器(接在第2路)。
步骤 1:设备初始化与网络配置
将 8 路控制器接通电源。
通过芯步 App 或 Web 控制台,将设备配置为 Station 模式,连接实验室路由器的指定 SSID(设置静态 IP,防止 IP 变动导致控制失效)。
步骤 2:服务端开发 (Python 示例)
你需要编写一个简单的脚本(或集成到主控系统中),逻辑如下:
步骤 3:实现多路批量控制
如果需要同时启动“反应、搅拌、数据记录”三个动作,可以利用批量命令接口,一次请求完成,减少网络延迟:
6. 高级联动策略
6.1 基于传感器的闭环控制
芯步的传感器(如雷达、温湿度)支持 “实时状态上报”。
设置方法:在芯步控制台中配置“推送地址”(Your Server IP),当传感器检测到“有人移动”,会自动向你的服务器发送 POST 数据。
应用:实现“有人进入实验室自动开启通风橱(第8路),无人时自动关闭”。
6.2 时序控制与逻辑保护
在化学合成实验中,经常需要“先开后关”的切换逻辑。
使用命令
reset或point。代码示例(切换搅拌器速度):
{“reset”: {“relay”: [4,5], “interval”: 200}}:先断开第5路,200ms后接通第4路,实现电机速度挡位切换且保护电机不被反向电流冲击。
7. 网络与安全策略
针对科研数据敏感性,利用芯步的私有化部署特性:
纯局域网运行:配置路由器时断开外网(WAN口)。
自建消息服务器:设备数据可以不经过芯步的公有云,直接推送到实验室内部的 MQTT 或 HTTP Server。
API 调用频率控制:虽然接口响应很快(约 80-120ms),但在循环控制中增加
time.sleep(1),避免过于频繁的请求导致设备 WiFi 模块拥塞。
8. 总结
通过对接芯步 8 路控制器的开放接口,实验室可以在不改变现有设备电路的前提下,快速构建一个 “分布式、无线化、可编程” 的控制系统。
实施效果:实现了从“单点控制”到“场景联动”的升级。
扩展性:如果未来需要更多控制路数,只需增加设备 ID,服务器代码无需大幅改动,只需修改命令中的
device参数和relay列表即可。