cd ../
🏠 智能家居
Requires OpenClaw v2026.2+|MQTT + Whisper

零云端、零订阅:我的完全本地化智能家居

作者: u/AirGapMaxwellMarch 01, 2026 567 comments

一次云服务宕机让我依赖 Alexa 的家瘫痪了 6 小时,我决定彻底改造:用本地 OpenClaw 节点在 Mac Mini M4 Pro 上替换所有云依赖。47 个 Zigbee 设备、本地语音控制、AI 驱动自动化——全部运行在局域网上。以下是完整架构。

云端愤怒

2026 年 1 月,AWS us-east-1 宕机 6 小时。灯光、恒温器、门锁、车库门全部离线。智能家居变成了'愚蠢家居'。绝不再来。

6小时
宕机时长
47
受影响设备
$37/月
云订阅费
4次/年
历年宕机

架构概览

一切运行在网络机柜中的 Mac Mini M4 Pro(16GB 内存)上。Home Assistant 负责设备通信。OpenClaw 提供 AI 智能层——语音指令、智能自动化和异常检测。树莓派 5 作为核心功能的热备。

┌────────────────────────────────────────────────┐
│              局域网(无需互联网)                  │
├────────────────────────────────────────────────┤
│  ┌─────────────┐     ┌──────────────────┐      │
│  │  Mac Mini   │────►│  Home Assistant   │      │
│  │  M4 Pro     │     │  (Docker)         │      │
│  │  OpenClaw   │     └────────┬─────────┘      │
│  │  + Ollama   │     ┌────────┼────────┐       │
│  │  + Whisper  │   Zigbee  Z-Wave    MQTT     │
│  └──────┬──────┘     │        │        │       │
│  ┌──────┴──────┐   ┌─┴──┐  ┌─┴──┐  ┌──┴───┐  │
│  │  Whisper    │   │ 42 │  │ 5  │  │ ESP  │  │
│  │  麦克风阵列  │   │设备│  │门锁│ │传感器│  │
│  └─────────────┘   └────┘  └────┘  └──────┘  │
│  ┌─────────────┐  热备                         │
│  │  树莓派 5   │  (仅核心自动化)               │
│  └─────────────┘                               │
└────────────────────────────────────────────────┘

OpenClaw 配置

IDENTITY.md
# IDENTITY.md — 智能家居代理

你是一个智能家居控制器。
你通过 Home Assistant REST API 管理 47 个设备。
你通过本地 Whisper 转写处理语音指令。

## 语音指令模式
- "打开/关闭[房间]的[设备]" → HA 服务调用
- "把[设备]设到[值]" → 带数据的 HA 服务调用
- "[房间]温度多少?" → HA 状态查询
- "锁门/开门" → Z-Wave 命令(需要 PIN 确认)
- "晚安" → 运行场景:所有灯关、门锁好、警报启动
- "我出门了" → 运行场景:节能模式、摄像头激活

## 安全规则
- 绝不通过语音解锁门(无 PIN 确认不行)
- 绝不禁用烟雾/CO 检测器
- 车库门:如果 23:00 仍开着则自动关闭
docker-compose.yml
# docker-compose.yml — 智能家居服务栈
version: '3.8'
services:
  openclaw:
    image: openclaw/openclaw:latest
    environment:
      - OPENCLAW_MODEL=ollama:llama3:8b
      - HA_URL=http://homeassistant:8123
      - HA_TOKEN=${HA_LONG_LIVED_TOKEN}
      - WHISPER_MODEL=base.en
      - MQTT_BROKER=mqtt://mosquitto:1883
    depends_on: [ollama, homeassistant, mosquitto]
    restart: unless-stopped

  homeassistant:
    image: homeassistant/home-assistant:stable
    ports: ["8123:8123"]
    devices:
      - /dev/ttyUSB0  # Zigbee
      - /dev/ttyUSB1  # Z-Wave
    privileged: true

  ollama:
    image: ollama/ollama:latest

  mosquitto:
    image: eclipse-mosquitto:2
    ports: ["1883:1883"]

1. 硬件清单

无云智能家居的完整物料清单:

ItemCostNotes
Mac Mini M4 Pro (16GB)$599主脑——OpenClaw + Home Assistant + Ollama
SONOFF Zigbee 3.0 适配器$3042 设备:灯、传感器、开关、插座
Aeotec Z-Wave Gen7$455 个 Z-Wave 门锁
ReSpeaker USB 麦克风阵列$65厨房/客厅远场语音拾取
ESP32 开发板 (x6)$48自定义 MQTT 传感器
树莓派 5 (8GB)$80核心自动化热备
UPS (850VA)$9045 分钟电池备份
约 $957 一次性投入 | $0/月

2. 语音控制(100% 本地)

语音处理流水线——没有任何音频数据离开家:

语音流程(平均 800ms 端到端):

用户: "嘿 OpenClaw,关掉门廊灯"
  ▼ [ReSpeaker 麦克风 → USB 音频]
  ▼ [Whisper base.en 本地转写: ~200ms]
  │  转写结果: "关掉门廊灯"
  ▼ [OpenClaw LLM 意图解析: ~350ms]
  │  意图: ha.turn_off | 实体: light.front_porch
  ▼ [Home Assistant REST API: ~50ms]
  ▼ [Zigbee 命令 → 设备: ~200ms]
  ✅ 灯灭。总计: ~800ms

3. AI 驱动自动化

不同于规则自动化,OpenClaw 使用传感器数据+时间+在家状态做上下文决策:

# OpenClaw 自动化日志样本

[2026-03-15 14:23] 决策: 空调 → 节能模式
  推理: 室外 32°C,室内 24°C,无人在家
  动作: climate.set_hvac_mode(eco) → ✅

[2026-03-15 02:14] 告警: 检测到异常
  推理: 走廊运动传感器触发,所有门已锁
  动作: 拍照(前门摄像头) → 发送手机
  备注: 猫跳上了走廊桌子。误报已记录。

4. 故障转移与可靠性

系统有三层弹性保障:

故障转移层级:

层1: OpenClaw + LLM(Mac Mini)
  └─ AI 自动化、语音控制、异常检测
  └─ 如果宕机 → 层2 在 <5秒内接管

层2: Home Assistant(Mac Mini Docker)
  └─ 基于规则的自动化独立继续运行
  └─ 如果 Mac Mini 死机 → 层3

层3: 树莓派 5(热备)
  └─ 仅运行灯光、门锁、恒温器

层4: 物理控制(始终可用)
  └─ 所有智能开关都有物理按键

无云生活——8 个月后

8 个月完全空气隔离运行后的诚实对比:

指标云端方案本地方案胜者
月费$37/月订阅$8/月电费🏠 本地
8个月内宕机4次(共14小时)0次🏠 本地
语音响应时间1.2-3.5 秒0.6-0.9 秒🏠 本地
隐私音频上传云端100% 本地🏠 本地
搭建复杂度即插即用2个周末☁️ 云端
设备兼容性800+ 设备Zigbee/Z-Wave/MQTT☁️ 云端
「上周邻居的 Alexa 挂了,他过来问我的是否正常。我说'我的不需要互联网。'他的表情无价。」——u/AirGapMaxwell

成本对比(1 年)

云端智能家居本地方案
硬件$200(Echo 设备)$957(Mac Mini + RPi + 适配器)
第1年订阅$444($37/月)$0
第2年起$444/年$96/年(电费)
3年总计$1,532$1,149
隐私❌ 音频上传云端✅ 100% 本地

第 26 个月回本。之后每年节省 $348 + 完全隐私。无厂商锁定——即使 OpenClaw 消失,Home Assistant 继续工作。

安全与隐私

零互联网依赖——拔掉 WAN 网线一切照常
无音频录音离开家(Whisper 100% 本地运行)
Z-Wave 门锁使用 AES-128 加密
IoT 设备隔离在独立 VLAN
UPS 提供 45 分钟电池备份

⚠️ 物理安全:如果有人接触到 Mac Mini,可以控制所有设备。放在上锁的网络机柜中。启用 FileVault 磁盘加密。

常见问题

Q1. 语音控制和 Alexa 一样好用吗?

设备控制方面——是的,而且更快(800ms vs 1.2-3.5秒)。通用知识问题不行——它是家居控制器不是搜索引擎。

Q2. 固件如何更新?

Zigbee OTA 更新由 Home Assistant 内的 zigbee2mqtt 处理。OpenClaw 更新时临时连 WiFi,拉取后断开。每月一次,10 分钟。

Q3. 家人能用吗?

老婆适应了 2 周。关键:保持所有物理控制可用。智能开关仍有按钮。孩子们喜欢对着说'晚安'触发睡前场景。

Q4. 如何远程访问?

使用 Tailscale(点对点 VPN)远程访问。无端口转发,无云中继。

经验教训

物理控制不可妥协

每个智能开关必须有物理按钮。AI 宕机时,房子必须可手动控制。这是第一规则。

从灯光开始,慢慢扩展

不要一次性迁移所有设备。先搞定 5 盏灯,稳定后加传感器,再加门锁,然后语音。

VLAN 隔离必不可少

IoT 设备安全性差。放在独立 VLAN,禁止联网和访问主网络。唯一桥梁是 Mac Mini。

UPS 不是可选项

电力闪烁会中断执行中的自动化。一个 $90 的 UPS 可以防止数据库损坏和凌晨 3 点所有灯闪的恐怖事件。