1. 程式人生 > >轉載智能家居 作者:熱情的沙漠 出處:http://www.cnblogs.com/buptzym/

轉載智能家居 作者:熱情的沙漠 出處:http://www.cnblogs.com/buptzym/

它的 必須 環境光 暴力破解 研究生 破解 開始 印象 提醒

理工男打造帝都89平智能家庭

畢業後的2016年年初,搬入新家,總算不用在出租屋裏鬼混了,於是就想把之前童年的夢想:智能家居+家庭影院好好實現一下~ 相比帝都高昂的房價,這些東東還湊合玩得起,不過在有限預算下實現盡可能定制和強大的功能會更有意思。我yy了以下幾個場景:

  • 每當下班回家,指紋解鎖大門,家裏溫馨的燈光自動打開,天氣熱的話空調也會自動開啟。第二天如果下雨,前一天晚上燈光還會自動提醒我帶傘。

  • 即使出差在外地,我也能在賓館裏隨時看家裏電影,像訪問本地硬盤一樣讀取家裏文件,遠程控制下載。

  • 對手機說“我要看電影!”就能關閉所有強光源,打開柔和的背景燈光,120寸的投影自動點亮,客廳窗簾關閉,家庭影院啟動。然後手機還會推薦我哪些藍光碟我還沒看過。

整個戶型為兩室一廳,超長的客廳,集成了餐廳和陽臺,嚴格來說這不是多麽優秀的戶型,可是預算有限木有辦法。但好處是有一塊特別巨大的白墻供我安裝幕布,整體的家裝以白色調為主,我們的智能家庭配置就都在這些基礎之上進行。

智能家居

高端智能家居設備動輒成千上萬,而且根本不開放編程接口,這必然是我不接受的,由於之前就有一套樹莓派,功耗很低,用一根USB線供電就好,特別適合打造為中控。雖然我對小米手機等設備毫無好感,不過他家的智能家居物優價廉,還可以通過破解通信協議實現可編程控制,深得我意。

我購入了小米智能家居的大部分設備(溫濕度,人體監測,智能開關,智能插線板,彩光燈泡和彩色燈帶各一個),不過之前已經有三星空氣凈化器和凈水器,我對掃地機器人也無太大好感,夠用就好。所有這些成本不足1000元~

多功能網關(149元)是必須的,這樣才能發揮所有設備的優勢,並接入樹莓派(279元)。而智能遙控器(79)更是良心之選,這種圓形設計能夠控制身邊的所有紅外設備,因此改造成本很低。當然缺點很明顯,就是只能控制而無反饋,你根本不知道空調或者電視到底開沒開。

米家APP設計很簡單,你能設置各種觸發條件和情景模式,當進入衛生間時,人體傳感器會檢測到,之後照明會自動亮起。當想看電影或者打遊戲時,只需要一個按鍵,之後窗簾關閉,投影打開,音響啟動...

我把家裏都換成了智能插線板(小米WIFI),平日離家除了路由器和樹莓派之外都處於休眠狀態,大大減少了待機功耗,當我回家之後這些插線板才自動開啟,算下來一年能省好多電費~智能指紋鎖是三星SHS-H705(亞馬遜購入),我已經有四五次出門忘帶鑰匙了(ㄒoㄒ)

這些都是app的基本功能,稍微研究一下即可學會,只是這樣就夠了嗎?這不能滿足懶癌極客對智能設備的要求!iOS的語音喚醒讓我印象深刻,我希望完全不動手,對著手機說“打開投影儀!“就能完成所有功能。所以我們就需要解決HomeKit和小米設備的互聯互通。

網上類似的攻略不多,主要是用node.js實現的homebridge套件,以及專門用於小米智能家居的的homebridge-aqara插件。簡單來說,Homebridge可以把各種智能設備模擬為滿足iOS協議的設備,而後者則可通過TCP請求,訪問和讀寫連接小米網關的各種硬件,這些都在GitHub上開放源代碼。我在家裏折騰了兩個下午,才在樹莓派上將所有插件安裝完畢並成功運行,就像下面這個樣子:

技術分享

但是,這些插件的功能依然很弱,比如:

  • 無法一個命令同時控制多個設備
  • 不能實現”第二天下雨,則通過燈光顏色提醒我出門帶傘“
  • 不能時刻記錄我的習慣,實現更精確的數據分析

解決方法就是從小米的原生通信協議開始,修改homebridge源代碼,,讀取天氣API獲取天氣預報數據,使用js註入的方式自定義邏輯。除此之外,我還會將所有家裏行為數據的報表通過樹莓派寫入家裏的MongoDB數據庫,做之後的數據分析。看看幾年下來我到底變懶沒有。

離家之後,外網是無法通過樹莓派直接控制家裏設備的,這就需要做內網穿透,我不放心類似花生殼這類設備的安全性,因此就在阿裏雲主機上自己搭建了用go語言實現的ngrok反向代理,通過個人域名即可在任何地方管理家裏的所有設備。某天晚上我在杭州賓館閑來無事,還遠程家裏的樹莓派暴力破解了鄰居家的WIFI密碼...

當然,不是所有時候都適合用語音,我在沙漠之鷹公眾號上輸入一串密碼,即可切為管理員模式,通過自然語言就能與家裏的設備交互,其中語義解析的部分用了之前編寫的tnpy(也在GitHub上開源),超級方便。由於篇幅的關系,此處不展開。有興趣的同學可以後臺交流。

家庭影院

沙漠君是個特別喜歡宅在家裏看電影的人,以前沒有一大面墻供我安裝投影幕布,這次有了足夠的空間供我捯飭了。

投影儀使用了明基的W1070+, 1080P分辨率,2500流明,性價比較高,購入價6500左右,一年後價錢跌了1K,不過早買早享受嘛。雖然號稱支持梯度矯正和側投,但側投效果很渣,畫質影響很大,因此有條件一定要正面安裝。

我在幕布上費了很多心思,因為母上不喜歡關燈拉窗簾看電視(估計沒人喜歡),考慮過抗光幕,可是低端款的抗光幕就是七八千塊錢,而且是一整塊金屬,電梯進不去,只能從外面用繩子吊上來,還要拆窗戶,那畫面簡直累覺不愛。而且由於抗光幕的特性,對安裝位置和觀看角度都有需求。最後還是棄抗光幕選擇了普通的增益框架白幕,價格2k左右。雖然晚上的觀看效果出類拔萃,但是白天不拉窗簾則亮度感人,真是沒有辦法。

當時給我裝投影的小哥說道,家庭影院的效果至少一半來自聲音,因此他非常慫恿我換一套好的環繞音響系統。為了搭配整體的白色色調,且盡量不占面積,在預算之內可選並不多,於是就毅然選擇了這款:

Sony BDV-N9200WL

技術分享

JD平日價格6999,我在國慶優惠促銷時6399購入。白色款自帶燈光效果,會隨著音樂一起搖擺。周五搖滾之夜聽個DJ還是很帶感的。音質可圈可點,由於低音炮的加入,低頻渲染能力很強。但讓我印象深刻的是它的高音,磁流體揚聲器帶來的人聲相當幹凈。恕我沒有太多接觸過萬元以上的箱子,這套系統對我來說已經夠用。後置環繞音響的接線也完全不用考慮,索尼直接包含了無線音頻套件,只是接收器體積感人。

為了渲染氣氛,避免看電影時環境光太暗對眼睛造成傷害,我又在沙發後面安裝了yeelight智能燈帶,可以通過小米智能家居控制顏色和亮度。

由於沒有布線,我也不想通過天花板走明線,所以投影儀和播放器之間是通過無線HDMI傳送的,可選的設備並不多,我用的是

GUANYEE/冠藝,無線 1080P HDMI連接器,四進一出,1299。

除了剛啟動時配對有些慢,顯示效果與有線無異。

當然,還要有播放設備加持,XBox360+體感是研究生時候買的,現在除了極品飛車之外很少在用,PS4也有一票遊戲碟。看電影主要使用索尼藍光機,除了三四張藍光正版鐵盒電影之外,其他上百張藍光碟都是淘寶款,價格超便宜!電影也需要從網上下載,我不太信任百度雲和360雲盤這種設備的安全性,因此自建NAS成了最好的選擇,我使用樹莓派作為家庭媒體核心,掛載2塊2TB硬盤,通過阿裏雲代理到外網訪問。

效果類似下面這樣:

技術分享

最爽的還是玩類似使命召喚這種FPS遊戲,槍林彈雨在耳邊清晰可辨,爆炸從低音炮裏傳出震得茶幾直響,感覺甚爽!周五晚上早點回家,坐在沙發上來一瓶啤酒,看個槍戰電影也是極好的。

結語

整個智能家庭從前到後折騰了接近一年的時間,成本非常低廉:

  • 小米智能設備,樹莓派 約1500元
  • 投影儀,家庭影院,其他外設: 約16000元
  • PS4,XBOX,各類遊戲碟: 約5000元
  • 智能門鎖,智能馬桶蓋,空氣凈化器... (10000元所有)

所有設備的成本總和也就3W元左右,還不足北京一套房子首付的1/50,但是對生活幸福度的提升是巨大的。最重要的樹莓派,這個如此便宜卻功能強大的Linux系統擴展能力是無限的,我甚至還在上面跑了Python的數據分析服務,而你需要的僅僅是200多元和一條USB線!如果沒有它,去買相應的智能設備,價格最少也在五位數以上。

絕大多數情況下,都能通過語音控制一切設備,通過聯動實現各種豐富的場景,但這些還遠未達到我心目中對”智能“的定義。心情好的時候是不是應該自動幫我放個音樂?是不是早上能幫我自動烤面包?是不是能隨時告訴我今天穿什麽衣服最合適?我媽說,懶死你得了。

有任何問題,隨時留言交流~

轉載智能家居 作者:熱情的沙漠 出處:http://www.cnblogs.com/buptzym/