這次裝潢的時侯,主臥跟客廳都採用了電動窗簾。客廳採用電動窗簾,最主要的原因是怕傢俱、木作久了會變色,所以想說用了電動窗簾,設定 schedule 後,白天就可以自動把窗簾拉上,增加傢俱及木作的耐用度。

 

 

 

但是這款電動窗簾其實並沒有 schedule 的功能,只有一個無線遙控器,因此只好自己來了 XD

 

原廠附的遙控器質感還不錯,是採用磁吸式跟掛架結合

 

我使用了 OpenHAB + RM2 Pro +RM Bridge 來完成第一步。

 

第一步 - 用 RM Bridge 來控制窗簾

http://rm-bridge.fun2code.de/

原本的 RM2 Pro 就可以透過它的 App 就來控制窗簾了,但 App 並沒有提供任何 API 或者 HTTP command 讓我們透過程式去操作,因此我另外用了 RM Bridge 操作 RM2 Pro。

RM Bridge 本身就有提供 learning code 的介面 http://rm-bridge.fun2code.de/rm_manage/code_learning.html,你可以自己定義指令名稱,然後按下原本的遙控器讓他學習即可。下面則是窗簾、投影機及布幕等學習完的指令清單。接下來只要透過 URL 就可以去發射遙控器訊號了。

 

 

 

當然,RM2 Pro 本身也有提供完整的 SDK,所以其實要全部自己來,不透過 RM Bridge 也是可以的。

 

第二步 - 整合進入 OpenHAB

http://www.openhab.org/

OpenHAB 是我目前最喜歡的 home automation 平台,因為各式各樣的 binding 非常豐富,從常見的 Philips Hue, Sonos, INSTEON,到 DAIKIN 冷氣,SAMSUNG電視,甚至我的音樂撥放器 SqueezeBox 都有。而一般 RD 最喜歡看到的 HTTP,TCP也都一應俱全,而且如果覺得不夠,也可以自己再擴充,真的是夢幻逸品啊 XD

 

這裡我是使用 HTTP binding 來跟 RM Bridge 整合。OpenHAB 最困難的地方是它的設定檔,官方網頁開宗明義就有說:很難學,但是很值得 XD

 

首先要把它加到 OpenHAB 的 item 中,以我的環境為例:

/opt/openhab/configurations/items/demo.items

 

在最後面加入

Switch  Curtain           "Living Room Curtain"                   { http=">[ON:GET:http://192.168.11.5:7474/code/openit] >[OFF:GET:http://192.168.11.5:7474/code/closeit]" }

 

這樣就多了一個 type 為 Switch 的 Curtain 物件,並在 ON/OFF 時分別會送不同的 URL

 

接下來要在 sitemaps 中把這個 Curtain 加進去:

/opt/openhab/configurations/sitemaps/homekit.sitemap

 

sitemap homekit label="Diro HomeKit" {

  Switch item=Curtain label="Curtain"

  Switch item=Screen label="Screen"

  Switch item=Projector label="Projector"

}

 

接下來啟動 OpenHAB 後,就可以透過瀏覽器看到:

 

這樣就可以透過 OpenHAB 去設定 schedule 來定時開關窗簾了。

 

第三步 - 整合 HomeKit bridge

https://github.com/htreu/OpenHAB-HomeKit-Bridge

最後就是要想辦法跟 SIRI 做整合了,只能說 OpenHAB 實在太強大了,貢獻者眾,竟然已經有人寫好了 HomeKit Bridge!!

 

因此只要正確的啟動,就沒有問題了

npm start -- --name "myopenhab-bridge" --sitemap homekit

 

如果平常沒有在用 node.js 的,應該會缺很多 package,基本上補一補就沒什麼問題了

npm install --save-dev babel-preset-es2015

npm install --save-dev babel-preset-stage-2

npm install stdio

npm install hap-nodejs

npm install ws

 

 

 

npm install debug

...

 

接下來最重要的是要安裝 eve  來編輯 HomeKit database。打開 eve 後,就會有設定介面,並且可以找到 myopenhab-bridge 這個裝置,加進去之後,就可以看到下面所有的設備啦(Curtain, Projector, Screen...)

 

接下來就跟操作一般 HomeKit 的設備一樣了,設定房間、設備名稱等,然後就可以用 SIRI 來控制他們了 :)

 

 

示範影片:

創作者介紹
創作者 diro 的頭像
diro

Diro - 探索生活中的美好事物

diro 發表在 痞客邦 留言(11) 人氣()