CATALOG

这是一份关于“自动化设备三路电源管理与自定义场景联动”的解决方案。

我们将结合芯步的开放接口,聚焦如何把硬件层面的“电源切换”变成软件层面的“场景联动”。

一、 我们面临什么问题?

在很多自动化场景中,设备不仅仅是要“通电”或“断电”,而是需要“聪明地用电”。例如,一个边缘计算节点需要主电(市电)、备电(UPS)、太阳能三种输入;或者一个无人值守机房需要根据负载情况动态切换电源。

传统的物理开关或简单的电路板(如LTC4417这样的硬件优先控制器)虽然能完成自动切换,但它是“死”的。它只管电压够不够,不管“我现在为什么要切”以及“切完之后别的设备该干嘛”。

我们的核心思路是:将芯步的智能硬件作为执行端,利用其开放的HTTP/API接口,结合上位机(服务器或边缘网关)的逻辑判断,实现“软件定义电源”。

简单来说,我们不是去焊电路板,而是写几行代码,让服务器根据“温度”、“电价”、“人流”等条件,去告诉电源模块:“现在,给我切到第二路去!”

二、 核心架构与硬件准备

要实现这个方案,我们需要把以下三个角色捋清楚:

  1. 大脑(云平台/服务器): 运行联动逻辑的地方,也就是芯步平台或者你自己的业务服务器。

  2. 神经(开放接口): 芯步提供的HTTP API 和 MQTT 协议。

  3. 手脚(三路电源管理设备): 具备三路输入/输出的智能电源硬件。

假设硬件设定:我们有一台支持芯步协议的 “智能双电源切换器”“可编程PDU” ,它有三个通道:

  • 通道A:市电主路

  • 通道B:发电机/备电

  • 通道C:光伏/电池

三、 技术实现:如何通过接口“指挥”电源?

在传统的物理联动中,你需要去按按钮。在芯步的方案中,我们全靠接口。

根据芯步的开放文档,最核心的动作是 [向设备下发指令]

我们需要通过这个指令,去修改电源设备(假设Device ID为 POWER_001)的属性值。

1. 如何让电源切换到某一路?

假设我们的电源设备有一个属性叫 power_source(取值范围:1,2,3)。

我们要从“市电”切到“备电”,只需要在你的业务代码中,向芯步平台发送一个HTTPS POST请求:

请求地址:https://api.thingboot.com/{你的AppID}/device/control/?sign={签名}&ts={时间戳}

请求体 (JSON格式,推荐):

芯步的返回:如果code返回200,代表指令下达成功。此时,你的电源硬件物理上就会“咔哒”一声切换到备电。

2. 如何知道切换成功了?硬件切过去了吗?电压稳吗?这里要用到 “异步消息推送” 。芯步平台在你下发指令后,会通过MQTT回调告诉你设备的最新状态。你的服务器监听这个回调,就能更新界面显示:“已切换至备电,电压220V”。

四、 场景联动实战:三个典型的自定义场景

有了“下发指令”这个超能力,我们就可以玩出很多花样了。

第一种场景:经济模式联动——根据电价/时间自动切换

需求背景: 很多地区实行峰谷电价。晚上12点后电价便宜,白天贵。逻辑设定: 白天10:00-16:00,电价最贵,强制切换到储能电池(C路)供电;晚上22:00后,切换到市电(A路)并给电池充电。实现步骤:

  1. 在你的服务器上写一个定时任务。

  2. 判断:if current_hour in [10,11,12,13,14,15,16]

  3. 动作: 调用芯步接口,下发 {"power_source": 3}

  4. 反馈: 同时触发一个语音音柱(也是芯步的设备)播报:“已进入峰电时段,切换至电池供电”

第二种场景:环境应急联动——温度过高自动切备电并告警

需求背景: 机房空调坏了,温度升高,主路负载大导致发热严重。逻辑设定: 当温度传感器检测到 > 40°C,强制切换到效率更高的备电路,并开启排风扇。实现步骤:

  1. 温度传感器上报数据到平台(假设温度值 temp > 40)。

  2. 触发规则: 平台(或你的业务逻辑)捕获到该事件。

  3. 联动动作A: 调用芯步接口控制电源设备:{"device": "POWER_001", "order": {"power_source": 2}}

  4. 联动动作B: 调用芯步接口控制智能插座:{"device": "FAN_01", "order": {"switch": "on"}}(打开排风扇)。

  5. 联动动作C: 调用芯步接口控制语音台卡,显示红色告警文字并发出提示音

第三种场景:边缘自治联动——主路掉电触发短信与自启动

需求背景: 市电突然断了,虽然硬件可能自动切到了备电,但你需要知道这件事,且某些非核心设备需要立刻关机保数据。逻辑设定: 监控电源设备状态,如果检测到input_1_status变为offline,立刻执行保护操作。实现步骤:

  1. 芯步平台收到设备状态变更(通过设备上报或MQTT)。

  2. 判断: 主路失电。

  3. 动作:

    • 调用短信/钉钉API(可由服务器发起):通知管理员“市电中断”。

    • 下发指令给非核心设备:关机。

    • 下发指令给核心路由:增加带宽限流(启用备电后需省电)。

五、 总结一下这套方案的“爽点”

相比于用单片机去读ADC、写PWM来控制MOS管,“芯步开放接口 + 三路电源硬件” 的方案有什么不同?

  1. 随用随取,零硬件开发:你不需要是电源专家,只需要懂HTTP协议。你甚至在Node-RED或者低代码平台里,拖拽一个按钮就能控制380V的工业电切换。

  2. 跨设备协同:物理开关只能控制自己。但在这个方案里,“三路电源切换”可以成为整个物联网场景的触发器。电源切换那一刻,灯要闪一下提醒、喇叭要响一下、后备硬盘要启动——这些都是几行代码的事。

  3. 可视化的远程控制:芯步的控制台本身就提供了设备列表和状态。你可以直接复用,不需要自己再画一遍UI。

一点:在实际调用接口时,特别是涉及电源切换这种高危动作,记得利用芯步接口里的 extra 字段。把每次切换的订单号、操作人、原因都带进去。这样以后查日志:“是谁昨天下午3点把电切了的?” 一查便知,做审计和复盘非常方便。