這是一個探索性項目,旨在提供一個完整的智能家居搭建指南,具體系統(tǒng)架構圖如下所示:
方案簡介:
使用 Home Assistant、HomeBridge 作為智能家居的核心
使用 Amazon Echo 作為語音輸入工具(當前僅支持英語)
使用 iPhone 的“家庭”應用作為控制工具
可以使用任何的設備連接 Home Assistant 服務來控制應用
智能家居簡介
當前,我們談論智能家居的時候,我們實現(xiàn)上是在討論:家庭自動化。引自維基百科,對于智能家居的介紹1:
Home automation or smart home (also known as domotics) is building automation for the home.
隨著機器學習和深度學習等 AI 技術的進一步普及,這一點(智能化)在最近幾年里,應該會發(fā)生一些劇烈的變化。而無論如何,我可不太希望我要被機器催著起床。
開始實戰(zhàn)之前,讓我們先關注于當前智能家居的幾個關鍵點:
設備。這些設備要么使用 WiFi,要么要使用藍牙,方便使用手機連接上這些設備。依當前的情況來看,主要是以 WiFi 為主,在手機上配置完后,可以輕松地實現(xiàn)遠程控制。與此同時,他們在與手機通訊的時候,會使用一些自定義的通訊規(guī)則,并且似乎很容易被破解(參見仿真器一節(jié))。如 Philips Hue 智能燈、Wemo 開關等等,他們都已經可以被仿真,并作為 Homekit 組件使用。
自動化。自動化是指你可以定時也開關某個特定的設備,鬧鐘一響,便打開燈諸如此類的。
場景(規(guī)則)。與自動化稍微區(qū)別的是,場景是某個特定場合下,對一系列設備的操作,如早起,便開燈、打開窗簾,離開家,則鎖門、關閉一系列用電器、開啟防盜功能等等。
中心網關。當我們所使用的一系列設備擁有 WiFi 功能時,裝有各種軟件的手機便相當于控制中樞。而這樣的設計本身是不合理的,你要在手機上安裝一系列的應用。這個時候,便需要一個額外的軟件作為中心,來接入這些設備,而手機上也不需要多余的額外軟件。如 HomeKit、Home Assistant 就是這樣的例子。
而作為一個普通的用戶,我們只需要關注便利的生活。作為一個極客,我們則關注于如何改造成需要的功能。
智能音箱
學術上有個概念是“傳聲器陣列”,主要由一定數(shù)目的聲學傳感器組成,用來對聲場的空間特性進行采樣并處理的系統(tǒng)。
如下圖所示 Amazon Echo 的電路板:
其及對應的麥克風的位置:
其所要主要解決遠距離語音識別的問題,以保證真實場景下的語音識別率。而這些設備的主要原理,都是將語音信號發(fā)送到服務器端,由服務器端識別,并匹配到對應的指令上。
Amazon Echo
實驗表明 AWS 的服務并不是那么可靠的~~,經常出現(xiàn):Your Echo dot is not connected
自定義組件的原理,如下圖所示:
中心網關
Home Assistant
Home Assistant 是一個運行在 Python 3 上的開源家庭自動化平臺。能跟蹤和控制家庭中的所有設備,并實現(xiàn)自動化控制,同時還完美的支持在 Raspberry Pi 上。
通過 Home Assistant 插件,它可以直接兼容各式硬件設備。其原理是通過 WiFi、BLE、Zigbee、MQTT 等不同的協(xié)議,來與不同的本地設備互聯(lián),并提供一個響應式的 Web 界面、PWA 應用、iOS 應用,讓用戶可以輕松地與設備進行交互。
其在桌面瀏覽器上的界面如下圖所示:
手機瀏覽器的界面如下圖所示:
對于提供豐富功能(如 RGB 燈)的設備來說,它也能支持豐富的操作,即上圖。同時,還能接上 Amazon Echo、HomeKit 等各式各樣的中心。
HomeBridge
HomeKit 是由 Apple 公司推出的智能家居平臺,包括iOS 上的 SDK、智能家居硬件通信協(xié)議 (HAP: HomeKit Accessory Protocol) 、以及 MFi(Made for iPhone/iPod/iPad) 認證等等。
借助于 iPhone、iPad、iWatch 等設備及『家庭』應用,用戶可以輕松地掌控各種 HomeKit 配件。并且可以通過設備上 Siri 應用、Homepod,直接用語音來與設備交互。
當前要在 Homekit,有三種方法:
購買昂貴的 MFi 設備。
借助于 Home Assistant,來自建 Homekit API 服務連接設備。
模擬現(xiàn)有的 MFi 設備。諸如使用 ESP8266 仿真 Philip Hues。
引自:使用iOS Homekit控制樹莓派:HAP 協(xié)議部分是需要加入 MFi Program 才能獲取文檔,而且 MFi Program 無法以個人開發(fā)者身份加入。
因此,這個時候我們就需要借助于 Homebridge。
Homebridge 是一個用 Node.js 實現(xiàn)的輕量級后臺,可以在家庭網絡上運行,用于模擬iOS HomeKit API。 它支持插件——由社區(qū)提供的模塊,這些插件能提供從 HomeKit 到 “智能家居” 設備制造商,提供的各種第三方API的基本橋梁。
而我們只需要有一個 iPhone 在手便可以了。
設備
如果只有上面的幾種中心網關,而缺少設備,那么整個智能的中心就是不完善的。而這也是最近幾年來,限制智能家居發(fā)展的一個因素:找不到合適的用戶需求。
通訊機制與協(xié)議
WeMo
ZigBee
WiFi
BLE
紅外
舊設備中樞
如小米的萬能遙控、Broadlink RM Pro 等。
仿真設備
設備:
Amazone Echo Dot
NodeMCU
Broadlink RM Pro
Yeelight
Raspberry Pi 2
Android、iOS 設備
(審核編輯: 林靜)
分享