在物聯(lián)網(wǎng)時(shí)代,越來越多的設(shè)備被連接起來。這也適用于你自己的Raspberry Pi智能家居。然而,每個(gè)設(shè)備都使用不同的傳輸協(xié)議,這可能會(huì)讓控制它們變得相當(dāng)不便。幸運(yùn)的是,有一個(gè)解決辦法:智能家居系統(tǒng)OpenHAB提供了許多現(xiàn)成的軟件包,通過這些軟件包,可以使用一個(gè)界面來控制所有來自知名制造商的設(shè)備。甚至對(duì)于那些默認(rèn)尚不支持的組件,我們也可以簡單地編寫自己的插件。
這的主要優(yōu)勢(shì)是,我們可以通過一個(gè)控制面板來監(jiān)控和控制所有連接的設(shè)備,無論是在室內(nèi)還是室外。
為了能夠使用OpenHAB,從而為我們的Raspberry Pi智能家居邁出第一步,我們?cè)谶@個(gè)教程中首先進(jìn)行OpenHAB的安裝、設(shè)置和配置,然后在接下來的教程部分中連接更多模塊。
Raspberry Pi 智能家居所需的硬件部件
正如已經(jīng)提到的,幾乎所有設(shè)備和傳感器都可以與OpenHAB一起使用,包括我們?cè)谥暗慕坛讨幸呀?jīng)使用過的許多設(shè)備。此外,以下組件是必不可少的,這些硬件都能通過文章末尾的聯(lián)系方式進(jìn)行購買:
Raspberry Pi(推薦使用3B型號(hào))
micro SD卡(最小16GB,推薦32GB)
可能需要的LAN線
- 最佳選擇:Raspberry Pi外殼
為了讓你對(duì)可能性和進(jìn)一步的教程有一個(gè)大致的了解,以下是支持的一些其他設(shè)備、協(xié)議和服務(wù):
Amazon Echo
Amazon Dash Buttons
IFTTT
KODI媒體中心
Philips Hue燈
Sonos HiFi系統(tǒng)
Belkin WeMo開關(guān)
- 以及更多
所有新的物聯(lián)網(wǎng)設(shè)備(或宣傳用于智能家居應(yīng)用中的設(shè)備)的協(xié)議都被OpenHAB支持,并且越來越多的協(xié)議正在被添加。
在 Raspberry Pi 上安裝 OpenHAB
基本上有兩種方法來安裝OpenHAB。第一種(稍微復(fù)雜一些)方法是在現(xiàn)有的Raspbian系統(tǒng)上擴(kuò)展所有軟件包。另一種更方便的解決方案是使用預(yù)裝了軟件包的Raspbian系統(tǒng),這也是我們?cè)诒窘坛讨兴龅摹?/p>
首先,我們?cè)陧?xiàng)目頁面上加載最新的鏡像,它的名字是“openhabianpi-raspbian-……xy”。保存文件。
最新的鏡像:https://github.com/openhab/openhabian/releases
如果你的micro SD卡還沒有插入到你的電腦/Mac的卡槽中,請(qǐng)將其插入。如果你的SD卡還沒有格式化,我推薦使用SD Formatter工具。這樣你可以簡單地用兩次點(diǎn)擊刪除你的(micro)SD卡,然后繼續(xù)使用。
我們現(xiàn)在需要一個(gè)可以將“.xy”文件寫入SD卡的工具。為此,我使用Etcher,它適用于所有常見的操作系統(tǒng)。下載并安裝它。然后選擇當(dāng)前加載的文件并按下“Flash!”。
這個(gè)過程需要幾分鐘。在此期間,你可以先將以太網(wǎng)電纜連接到Pi。如果你無法建立以太網(wǎng)連接,你也可以立即輸入WiFi數(shù)據(jù)。
在鏡像寫入SD卡后,在文件資源管理器中打開該目錄。有一個(gè)名為“openhabian.conf”的文件,需要用文本編輯器打開。下面是兩行帶有注釋(用井號(hào)/哈希標(biāo)簽)的行。刪除開頭的井號(hào)標(biāo)簽,并輸入你的WiFi網(wǎng)絡(luò)的名稱和密碼,然后保存文件:
#wifi_ssid="My Wi-Fi SSID"#wifi_psk="password123"
現(xiàn)在將micro SD卡插入Pi并連接電源。在接下來的45到60分鐘內(nèi),你不應(yīng)該斷開電源,因?yàn)樗斜匾母潞团渲梦募紝⒈患虞d!只有在所有點(diǎn)都完成(安裝步驟會(huì)顯示出來,因此你可以在必要時(shí)重新啟動(dòng))
如果一切順利,你的Raspberry Pi已經(jīng)連接到網(wǎng)絡(luò),你現(xiàn)在可以在瀏覽器中打開頁面:http://openhabianpi:8080
將顯示設(shè)置菜單(下面的文章中會(huì)提供逐步說明)。
通過SSH訪問更新 OpenHAB
你可以通過Raspberry Pi上的鍵盤直接輸入命令,或者通過SSH來輸入。選擇你的SSH客戶端(如Putty),并輸入以下主機(jī)名:
openhabianpi
默認(rèn)用戶名是openhabian,密碼也是openhabian。你也可以事先在配置文件中更改這些信息。
如果更新過程尚未完成,會(huì)顯示相關(guān)信息。否則,或者一旦此過程完成,輸出將如下所示:
在這里,我們調(diào)用以下命令:
sudo openhabian-config
如果你已經(jīng)更改了密碼,請(qǐng)輸入當(dāng)前密碼進(jìn)行確認(rèn),否則使用默認(rèn)密碼:openhabian
首先,我們選擇“01 | 更新”,然后選擇“02 | 更新系統(tǒng)”。在“30 | 系統(tǒng)設(shè)置”下,你可以更改其他設(shè)置,如主機(jī)名、時(shí)區(qū)(默認(rèn)為柏林)、密碼、端口和WiFi網(wǎng)絡(luò)。
通過“可選組件”,你可以添加更多軟件包,如Node-RED等,這包括你可以輕松創(chuàng)建自己的物聯(lián)網(wǎng)應(yīng)用,而無需編寫太多程序。如有必要,我可以在另一個(gè)教程中詳細(xì)介紹。
Raspberry Pi 家庭自動(dòng)化:OpenHAB用戶界面
當(dāng)然,我們也希望為我們的Raspberry Pi家庭自動(dòng)化提供一個(gè)用戶界面或圖形用戶界面,以便我們可以從智能手機(jī)、平板電腦、觸摸屏或PC控制后續(xù)組件。因此,我們現(xiàn)在就來設(shè)置它。HMI可以能通過文章末尾的聯(lián)系方式進(jìn)行購買。
首先,我們?cè)谕痪W(wǎng)絡(luò)的瀏覽器上打開:http://openhabianpi:8080/start/index:
在這里,我們選擇“標(biāo)準(zhǔn)”,這將預(yù)先安裝一些主題。稍后,可以手動(dòng)添加更多。
等待片刻后,我們現(xiàn)在可以確定用戶界面的外觀。有HABPanel、Paper UI和基本UI可供選擇。你可以稍后更改選擇。例如,我喜歡Paper UI。
在左側(cè),你會(huì)找到菜單。可以在這里進(jìn)行選擇。由于我們還沒有安裝任何內(nèi)容,因此控制菜單也是空的。在“配置”下,我們可以在“附加組件”中為智能家居設(shè)置和安裝新軟件包。
在 Raspberry Pi 上安裝 OpenHAB 附加組件
為了能夠使用某些模塊,如Phillips Hue Light或Z-Wave,必須先安裝必要的文件。在本例中,我們從網(wǎng)絡(luò)綁定開始,它檢查設(shè)備當(dāng)前是否處于本地網(wǎng)絡(luò)中。這可用于觸發(fā)某些操作,例如你離家時(shí)。
我們?cè)谧髠?cè)切換到“附加組件”,然后切換到“綁定”選項(xiàng)卡。在這里,我們正在尋找要安裝的軟件包,在我們的例子中是“網(wǎng)絡(luò)綁定”。點(diǎn)擊“安裝”后,可能需要幾分鐘時(shí)間來完成安裝。
一旦所有內(nèi)容都安裝完畢,我們導(dǎo)航回左側(cè)欄中的“收件箱”。點(diǎn)擊大加號(hào)(+)會(huì)顯示已安裝的綁定,包括我們的網(wǎng)絡(luò)綁定。如果選擇它,則會(huì)在我們的網(wǎng)絡(luò)中搜索設(shè)備。
如果你不確定智能手機(jī)的內(nèi)部IP地址,你可以查看路由器(192.168.1.1)或直接查看設(shè)備的設(shè)置。
點(diǎn)擊藍(lán)色勾選標(biāo)記,我們可以添加設(shè)備并相應(yīng)地命名它們。其他設(shè)備也可以從列表中忽略或刪除(忽略它們只是暫時(shí)不顯示,完全刪除會(huì)使它們消失,直到你再次搜索)。
我們現(xiàn)在切換到“配置”>“事物”。選擇你剛剛添加的設(shè)備。在這里,你會(huì)找到“在線”和“時(shí)間”這兩個(gè)項(xiàng)目。我們選擇這兩個(gè)復(fù)選框:
通過點(diǎn)擊上方的引腳按鈕,可以更改某些設(shè)置(如IP地址等)。其他設(shè)備有可以按需激活的不同項(xiàng)目。
如果我們現(xiàn)在在左側(cè)面板中切換到“控制”,我們會(huì)看到已激活的設(shè)備。下面是已激活的項(xiàng)目。在我們的例子中,這只是一個(gè)布爾值或數(shù)字,但也可以是溫度值等。
在后續(xù)教程中,我們將安裝和配置其他內(nèi)容。
創(chuàng)建自己的OpenHAB事物和項(xiàng)目——顯示CPU溫度
最后,我想展示一下創(chuàng)建自己的模塊有多簡單。但是,此步驟是可選的,如有必要可以跳過。
OpenHAB知道兩種類型的對(duì)象:事物(Things)和項(xiàng)目(Items)。簡而言之,事物在控制面板中以磁貼的形式顯示,并且可以有多個(gè)項(xiàng)目(值、按鈕等)。在一個(gè)小示例中,我們將顯示CPU溫度:
在這個(gè)示例中,我們將創(chuàng)建一個(gè)帶有兩個(gè)項(xiàng)目(溫度和最后一次查詢的時(shí)間)的事物。
由于我們將為此執(zhí)行shell命令,因此必須首先為此安裝一個(gè)附加組件。在“附加組件”->“綁定”下搜索Exec Binding(文檔)并安裝它。
然后通過SSH連接到Raspberry Pi。首先,我們創(chuàng)建一個(gè)腳本以讀取CPU溫度。這也可以是Python腳本、Java或C++程序。
sudo nano /etc/openhab2/scripts/cpu_temp.sh
它包含以下內(nèi)容:
#! /bin/bashINPUT=$(/bin/cat /sys/class/thermal/thermal_zone0/temp)TEMP=$(echo "scale=3; $INPUT / 1000" | bc)echo $TEMP
按CTRL + O保存,然后按CTRL + X退出Nano編輯器。
我們現(xiàn)在授予必要的權(quán)限:
chmod +x /etc/openhab2/scripts/cpu_temp.sh
作為測(cè)試,你可以立即運(yùn)行它,應(yīng)該會(huì)顯示溫度:bash/etc/openhab2/scripts/cpu_temp.sh接下來,使用以下內(nèi)容創(chuàng)建我們的事物:
sudo nano /etc/openhab2/things/cpu_temp.things
Thing exec:command:cpu_temp "CPU Temperatur" [command="bash /etc/openhab2/scripts/cpu_temp.sh", transform="REGEX((.*?))"]
保存并關(guān)閉編輯器后,我們創(chuàng)建項(xiàng)目:
sudo nano /etc/openhab2/items/cpu_temp.items
在這里,我們插入以下兩個(gè)項(xiàng)目:
StringCPUTEMPRaw"Temperature[%.1f°C]"(All){channel="execcpu_temp:output"}DateTime CPUTEMPLastExecution "Executed[%1$tH:%1$tM Uhr]" {channel="execcpu_temp:lastexecution"}
導(dǎo)航回控制面板后,你將看到上面顯示的視圖。
在您的網(wǎng)絡(luò)外部訪問面板
您還可以使用內(nèi)部網(wǎng)絡(luò)名稱(http://openhabianpi:8080)從智能手機(jī)或平板電腦訪問控制面板。此外,還有適用于Android設(shè)備和iOS iPhone或iPad的應(yīng)用程序。
然而,您可能還希望在外出時(shí)(例如,在移動(dòng)中或在工作場所)訪問您的智能家居控制面板,但如果不采取預(yù)防措施,這是不可能的。為此,您需要做到以下幾點(diǎn):
一方面,如果您沒有靜態(tài)IP地址,則需要一個(gè)使用動(dòng)態(tài)域名系統(tǒng)(Dynamic Domain Name System,簡稱dDNS)服務(wù)的賬戶,如NoIP或DynDNS。
此外,您需要在路由器的“端口轉(zhuǎn)發(fā)”設(shè)置中為您的Raspberry Pi(Raspberry Pi)的內(nèi)部IP地址激活端口(對(duì)我們來說為8080)。
另外,當(dāng)全局IP地址更改時(shí),必須通知dDNS服務(wù)。您的路由器可能提供此選項(xiàng)(如Fritz Box等路由器有相關(guān)設(shè)置),或者您可以在Raspberry Pi上執(zhí)行此步驟。有關(guān)此步驟的教程可在此處找到。
但請(qǐng)注意,控制面板未受密碼保護(hù),因此您很容易面臨安全風(fēng)險(xiǎn)。因此,除非您已采取適當(dāng)?shù)念A(yù)防措施并確保自己的操作無誤,否則我不建議將面板設(shè)置為可從外部訪問。
-
智能家庭
+關(guān)注
關(guān)注
0文章
74瀏覽量
21643 -
智能生活
+關(guān)注
關(guān)注
5文章
38瀏覽量
18833 -
樹莓派
+關(guān)注
關(guān)注
121文章
1926瀏覽量
106919
發(fā)布評(píng)論請(qǐng)先 登錄
【OK210申請(qǐng)】智能家庭控制中心
未來家庭健康中心--壽蟠桃智能藥箱來啦
如何用AR結(jié)合AI系統(tǒng)打造一個(gè)智能魔鏡?
智能家居,現(xiàn)代家庭生活的新浪潮。
智能音箱的實(shí)際作用有哪些?如何在家庭中使用智能音箱?
樹莓派的智能語音控制系統(tǒng)
如何利用樹莓派讓家庭nas和智能家居中控系統(tǒng)進(jìn)行組合呢
請(qǐng)問樹莓派py能寫一個(gè)gpio一鍵恢復(fù)系統(tǒng)的功能嗎?
樹莓派在生活中的運(yùn)用
Leader智能空調(diào) Home一鍵掌控溫度
一鍵掌控全局,樓宇自控系統(tǒng)引領(lǐng)智能化潮流
樹莓派+Balena OS:一鍵解鎖智能硬件新技能!

評(píng)論