跳到正文
CADS LAB·· 2026-09-04AI 评分69

CADS LAB基于本地Qwen3.8 27B大模型跑通实验室暖通照明等设备管控闭环

我把整个实验室,交给了一个本地大模型

AI 导读

CADS LAB已跑通基于本地部署Qwen3.8 27B大模型的实验室暖通、照明等设备智能管控闭环。该系统通过MQTT、zigbee2mqtt及Home Assistant对接红外发射器、吊扇、VRF空调、风机盘管、灯光、智能插座、ESP32音箱等设备,语音、设备数据与控制指令均在本地网络流转,不对外流出。

正文

原创 CADSLAB 2026-09-04 17:01 河南

风扇、空调、灯、插座、音箱…… 现在一句话,它们都听我的。而且 —— 大脑是本地跑的,数据不出实验室。

01 一个朴素的念头

实验室里有一堆设备:吊扇、VRF 空调、风机盘管、三路灯光、一排智能插座,还有台 ESP32 音箱。

以前要控制它们,我得掏出手机翻几个 App,或者走到墙边按开关。

我想要的其实很简单:我说人话,设备干活。

于是,我开始搭一套属于自己的 "实验室管家"。

02 大脑:本地部署的 Qwen3.8 27B

很多智能方案都把大脑放在云端 —— 你的每句话、每个设备数据,都要上网。

但这是一个实验室,我不想让数据和语音跑出去。

所以我选了一条更 "硬核" 的路:把大模型本地跑起来。本地 Qwen3.8 27B 负责理解我的指令、做决策、调用工具;它连上 MQTT、连上 Home Assistant API,就能像一个真正的助理那样思考并动手。

关键优势一句话:语音、设备数据、控制指令,全部留在本地网络里,不出门。

03 红外这条线:MQTT + zigbee2mqtt

先说风扇、空调、风机盘管这三个 "红外设备"。

它们不是智能设备,只有一个传统红外遥控器。实验室里有个 zigbee2mqtt 的红外发射器(IR_Control),能替遥控器发红外码。

我的做法:

把三种设备的红外码整理成三张 Excel 码表(fan / fcu / vrf)

LLM写一个 Python 脚本,通过MQTT把 base64 红外码推到 topic zigbee2mqtt/IR_Control/set/ir_code_to_send

用 uv 管理虚拟环境,一条 uv run python ir_control.py fan 3 就能切风扇 3 档

踩过的坑,都值得记下来:

这个 topic 要发裸 base64 字符串,发 {"code": "..."} 的 JSON 反而被拒

红外发射器是 "只发不收"——MQTT 侧确认" 发送成功 "≠ 设备真的动了,最终还得看实物

风扇档位是循环累加(5→1→2→3→4),所以切档要先发一次 off 归零,再按次数发 on

04 Home Assistant:把灯、插座、音箱统一收编

红外之外的设备 —— 房间灯、智能插座、音箱屏幕 —— 全都走Home Assistant 的 Zigbee。

HA 给了我一个统一的 API:

关灯 → 调 switch.light_switch_left/center/right

断 GPU 电源 → 调 switch.4070ts_power(这条很危险,动手前我会先确认)

让音箱说话 → 调 tts.speak

最让我惊喜的是那个ESP32 音箱。配好本地 Piper 语音合成后,我控制完设备,它能主动开口播报一句结果 —— 虽然音箱的数据链不能开放给LLM,大模型在这里只能说不能听,但实验室里 "Fan at gear three." 这么一响,仪式感直接拉满。不过也有很多种方法来实现听这件小事。

到这里,一个 "你说一句 → 大模型理解 → 分派到 MQTT 或 HA → 设备执行 → 音箱播报" 的完整闭环,就跑通了。

05 语义网:让实验室 "可被理解"

设备能控制了,但我还想要一层更深的东西 ——机器能 "读懂" 这个实验室的结构。

我用Brick Schema(一套建筑物联网语义本体)写了一个 TTL 文件 lab_layout.ttl,把整个实验室建模成一张语义网:

两个房间 Office3611 / Office3611_1,挂在 6 楼 → 3 号楼 → 校区

谁控制谁

:brick:isControlledBy IR_Control 标出风扇、空调、FCU 是红外控的

谁给谁供电

:brick:feeds 画出一棵供电树 ——West_Socket 一个总闸喂着 4070ts、K0、K2、K3、VRV_2

谁在哪

:brick:hasLocation 把每个设备钉在正确的房间

做完这张网,大模型就不只是 "会发命令",而是理解空间关系:它能查 "VRV_2 为什么我控不了"(因为在另一个房间、不在红外覆盖内),能推 "断 West_Socket 会连带影响哪些设备"。

最后我把它做成技能里的参考文件,配上 rdflib 解析校验 ——248 条三元组,全部合法。

06 一点感想

回头看,这套东西的骨架其实是三个词:

层

技术

作用

大脑

本地 Qwen3.8 27B

理解指令、决策、调工具

神经

MQTT + Home Assistant

真正驱动设备

记忆 / 世界观

Brick Schema 语义网

让 AI 理解 "实验室是什么结构"

最有意思的一点:我没有用任何现成的 "智能家居套件"。红外码表、控制脚本、语义模型,全是一步步自己搭、自己踩坑、自己验证出来的。

它现在还远谈不上完美 —— 红外发射器偶尔会掉线、音箱只会英文、我暂时还 "听不见" 你的声音。

但它已经证明了一件事:在本地跑一个大模型,真的能让一整个实验室,听懂人话。

跳转微信打开

来源:CADS LAB · mp.weixin.qq.com