|
|
這篇從零組一套會動的警報系統:買什麼、裝在哪、完整的設定檔、以及怎麼確認它真的會響。
先講一件最重要的事,它決定了這篇為什麼不用大部分教學的寫法:
保全系統最危險的失效模式,是「它已經關掉了但你不知道」。 這篇裡有三個地方會造成這件事,而且三個都不報錯:
- 用 `input_select` 存警報狀態並且設了 `initial:` —— HA 每次重開機都會自己撤防
- 門磁沒電或掉線 —— 系統會回報「一切正常」
- 自動化用 `mode: single` 配等待 —— 第二個入侵訊號會被直接丟掉

---
步驟 1:先決定要監控什麼
三個層次,按「從外到內」排。不要一次全做,先做周界。
- 層次 偵測什麼 裝什麼 優先度
- ------------------------------------------------------------------
- 周界 有人從外面進來 門窗磁簧感測器 最高,先做這個
- 室內 確認真的有人在動 人體 / 存在感測器 第二
- 環境 非人為的威脅 煙霧、瓦斯、水浸 獨立於警報,但必做
複製代碼
把你家的出入口列出來,拿一張紙寫下來:
- 位置 會不會被打開 要不要裝門磁
- ------------------------------------------------
- 大門 會 要
- 後陽台門 會 要
- 客廳落地窗 會 要
- 主臥窗 會 要
- 廁所小氣窗 不會 不用
- 廚房固定窗 不會 不用
複製代碼
只裝「真的會被打開」的。 永遠不開的窗裝了只會多一顆要換電池的東西。
---
步驟 2:買什麼
括號裡是台灣賣場的搜尋關鍵字與大概價格。前提是你已經有 Home Assistant 和一支 Zigbee 協調器;還沒有的話先把那一步做完再回來。
- Zigbee 門窗磁簧感測器 ×4(搜「Zigbee 門窗感測器 Aqara」或「Tuya Zigbee 門磁」,一顆約 250~400 元)—— 買 Zigbee 不要買 Wi-Fi。Wi-Fi 門磁為了省電會斷線休眠,開門到 HA 收到常常要三到五秒,而那三秒正是你需要它的時候
- Zigbee 人體感應器(PIR) ×2~3(搜「Zigbee 人體感應器 PIR」,一顆約 300~500 元)—— 便宜、省電、電池撐一兩年
- 毫米波存在感測器 ×1(搜「mmWave 存在感測器 LD2410」或「Zigbee 存在感測器」,約 600~1,200 元)—— 選配。PIR 只抓「動作」,人坐著不動十分鐘就變成「沒人」;毫米波抓得到靜止的人。但它要插電
- 攝影機 ×1(搜「RTSP 攝影機 ONVIF」,約 1,200~3,000 元)—— 一定要買支援 RTSP 或 ONVIF 的。只能用廠商 App 的接不進 HA
- 水浸感測器 ×2(搜「Zigbee 水浸感測器」,一顆約 250~350 元)—— 放洗衣機底下和熱水器底下。這是實際最常派上用場的一顆
- 住宅用火災警報器 ×2(搜「住警器 型式認可」,一顆約 400~800 元)—— 往下看
⚠ 煙霧與瓦斯不要交給 HA
這一點跟大部分教學寫的不一樣,但很重要:
- 火災警報器要買獨立運作、通過型式認可的,它自己就要會叫,不能依賴 HA、Wi-Fi、電力。想要通知手機的話買「獨立運作 + Zigbee 回報」雙功能的,但獨立運作那一半才是保命的
- 依《住宅用火災警報器設置辦法》第 5 條,廚房要用「定溫式」不是偵煙式。偵煙式裝廚房會被炒菜的油煙一直誤報,然後你會把它拆掉 —— 那才是真正的風險
- 瓦斯偵測器的位置法規同時規定「高度」和「水平距離」:天然氣(比空氣輕)裝天花板下 30 公分內、水平距瓦斯爐 8 公尺內;液化石油氣(桶裝,比空氣重)裝離地 30 公分內、水平 4 公尺內。只看高度裝在客廳天花板的話,高度正確但完全無效,而且沒有任何症狀
---
步驟 3:門磁怎麼裝(裝錯就是誤報的來源)
門磁是兩件:本體(有電池、比較大的那個)和磁鐵(小的那個)。
- 門框(不會動) 門片(會動)
- ┌──────────┐ ┌──────────┐
- │ │ │ │
- │ 本體 │ ← 間隙 → │ 磁鐵 │
- │ (電池) │ < 15mm │ │
- │ ▲ │ │ ▲ │
- └────┼─────┘ └────┼─────┘
- └─ 兩者側面都有一條對齊記號,
- 必須對到同一條水平線上
複製代碼
四個實際要注意的:
- 本體裝在不會動的那一側(門框),磁鐵裝門片。反過來裝的話你每次換電池都要在門片上操作,而且門片震動會影響它
- 兩者的對齊記號要在同一條線上。記號是側面印的一條短線或三角形,不是把兩個並排對齊就好
- 間隙不要超過 15mm(多數型號的規格是 20~25mm,但留餘裕)。間隙太大的症狀是風吹門晃一下就回報「開」再回報「關」,半夜給你一串誤報
- 裝在門的「開啟側」(把手那一側)不要裝在鉸鏈側。鉸鏈側門開 30 度磁鐵才分開,開啟側開 2 公分就分開了
裝完馬上驗:去「設定 → 工具 → 狀態」,找到那顆 `binary_sensor.front_door`,開門關門各三次。
- 你看到的 意思
- ------------------------------------------------------------------
- 狀態在 on / off 之間準確切換 裝對了
- 關著卻一直顯示 on 間隙太大或記號沒對齊,重貼
- 開門要開很大才變 on 裝在鉸鏈側了
- 狀態變化延遲三秒以上 Zigbee 訊號弱,中間需要一顆常電裝置當中繼
複製代碼
---
步驟 4:建立警報面板(用 HA 內建的,不要自己用 input_select 拼)
這是這篇跟舊版最大的差別。
自己用 `input_select` 存狀態看起來很直覺,但你會自己重新發明一整套狀態機:佈防倒數、進門延遲、觸發後自動復位、密碼驗證。而且最要命的一點:`input_select` 如果設了 `initial:`,每次 HA 啟動都會強制回到那個值,放棄還原上次的狀態。
實際發生的事情是:你出門前佈防 → HA 半夜自動更新重開 → 警報自己變回「解除」→ 而且沒有任何通知。
HA 內建的 `manual` 警報面板把這些都做好了,而且狀態是靠還原機制記住的。
第一步:加進 `configuration.yaml`
- # configuration.yaml
- alarm_control_panel:
- - platform: manual
- name: Home alarm
- unique_id: home_alarm_manual
- code: !secret alarm_code
- code_arm_required: false
- # 佈防倒數:按下佈防之後給你 60 秒走出門
- arming_time: 60
- # 進門延遲:門被打開之後給你 30 秒撤防
- delay_time: 30
- # 警報持續多久(秒)
- trigger_time: 300
- # 警報結束後要不要自動撤防
- disarm_after_trigger: false
- # 哪些佈防模式要出現在面板上
- arming_states:
- - armed_away
- - armed_home
- # 在家佈防不需要倒數,也不需要進門延遲
- armed_home:
- arming_time: 0
- delay_time: 0
- armed_away:
- arming_time: 60
- delay_time: 30
複製代碼
`secrets.yaml` 裡加一行:
|
|