董晨樂(lè),張富春,楊延寧
(延安大學(xué) 物理與電子信息學(xué)院,陜西 延安 716000)
物聯(lián)網(wǎng)概念的前身是傳感網(wǎng)[1]。中國(guó)科學(xué)院于1999年啟動(dòng)了傳感網(wǎng)技術(shù)的研究[2]。2009年6月歐盟委員會(huì)提出“物聯(lián)網(wǎng)行動(dòng)方案”[3],明確表示在技術(shù)層面給予該方案大量資金支持。2009年之后,國(guó)內(nèi)出現(xiàn)物聯(lián)網(wǎng)技術(shù)研究熱潮,2010年,物聯(lián)網(wǎng)被寫(xiě)入政府工作報(bào)告,2019年我國(guó)初步完成從互聯(lián)網(wǎng)到物聯(lián)網(wǎng)的過(guò)渡,預(yù)計(jì)在2030年全面完成全國(guó)“萬(wàn)物互聯(lián)”建設(shè)[4]。
隨著智能家居行業(yè)的迅速發(fā)展,國(guó)內(nèi)大批家裝企業(yè)推出多種智能家居解決方案[5]。但無(wú)論是手機(jī)APP還是智能音箱等設(shè)備[6]均自成體系,難以互通。
超低成本的家庭物聯(lián)網(wǎng)解決方案主要選用市場(chǎng)上的常規(guī)設(shè)備,旨在規(guī)避各智能家居廠商因采用軟件不通用、硬件不協(xié)調(diào)、物料價(jià)格貴、工作原理單一且復(fù)雜導(dǎo)致的一系列問(wèn)題。系統(tǒng)通過(guò)Home Assistant軟件環(huán)境平臺(tái)[7]實(shí)現(xiàn)自動(dòng)開(kāi)關(guān)電器、自動(dòng)報(bào)警、垃圾智能分類(lèi)、人臉?biāo)惴ㄗR(shí)別、無(wú)接觸乘坐電梯等功能,通過(guò)百度云平臺(tái)組建物聯(lián)網(wǎng)控制樞紐[8]。
1.2.1 硬件服務(wù)器
本方案服務(wù)器可采用樹(shù)莓派或各品牌路由器等。
1.2.2 多功能網(wǎng)關(guān)
網(wǎng)關(guān)(Gateway)即網(wǎng)間連接器、協(xié)議轉(zhuǎn)換器,它既可用于廣域網(wǎng)互連,也可用于局域網(wǎng)互連。小米多功能網(wǎng)關(guān)可看作家電傳感器、門(mén)窗傳感器、無(wú)線開(kāi)關(guān)等小米智能家居的聯(lián)接控制器[9]。
1.2.3 主要第三方傳感器
本方案采用的主要第三方傳感器包括WiFi智能插座、PM2.5傳感器、溫濕度傳感器。
WiFi智能插座[10]通過(guò)WiFi將手機(jī)與插座連接,由手機(jī)控制家中所有插座的開(kāi)關(guān),并隨時(shí)查看插座是否存在安全隱患。
PM2.5傳感器采用TF-LP01,它檢測(cè)精度高,響應(yīng)迅速,可自動(dòng)檢測(cè)空氣中PM2.5的含量。
溫濕度傳感器采用DHT11。DHT11可與其他設(shè)備聯(lián)動(dòng),實(shí)現(xiàn)對(duì)家庭環(huán)境溫濕度的智能控制。超低成本的家庭物聯(lián)網(wǎng)解決方案硬件見(jiàn)表1所列。
表1 超低成本的家庭物聯(lián)網(wǎng)解決方案硬件
Home Assistant是構(gòu)建智能家居的核心,它能識(shí)別并連接約1 000個(gè)外部設(shè)備,如小米系列智能設(shè)備、攝像頭等??赏ㄟ^(guò)手動(dòng)或按照自身需求自動(dòng)化聯(lián)動(dòng)上述外部設(shè)備,構(gòu)建個(gè)人智能空間。Home Assistant結(jié)構(gòu)如圖1所示。
圖1 Home Assistant結(jié)構(gòu)
樹(shù)莓派或Linux鏡像燒錄包括如下幾個(gè)方面。
(1)訪問(wèn)樹(shù)莓派中國(guó)官網(wǎng)
從https://www.raspberrypi.org/downloads/下載最新版Raspberry鏡像文件及鏡像燒錄工具。
燒錄軟件名稱(chēng)如圖2所示。
圖2 燒錄軟件名稱(chēng)
(2)樹(shù)莓派Raspbian系統(tǒng)的燒錄和寫(xiě)入
選擇Win32 Disk軟件進(jìn)行系統(tǒng)安裝,系統(tǒng)安裝界面如圖3所示。
圖3 系統(tǒng)安裝界面
(3)系統(tǒng)配置
將安全退出的系統(tǒng)SD卡插入到樹(shù)莓派SD卡的卡槽中,根據(jù)電路板上的指示燈判斷系統(tǒng)工作狀態(tài)。樹(shù)莓派指示燈狀態(tài)見(jiàn)表2所列。
表2 樹(shù)莓派指示燈狀態(tài)
(4)使用遠(yuǎn)程計(jì)算機(jī)連接并控制樹(shù)莓派(X-shell)
創(chuàng)建名稱(chēng)分別為ssh和wpa_supplicant.conf的空白文件,將其拷貝至系統(tǒng)根目錄。wpa_supplicant.conf代碼配置如下:
至此,連接權(quán)限的授權(quán)已完成,斷開(kāi)樹(shù)莓派的電源,取下存儲(chǔ)卡,修改其內(nèi)存卡中系統(tǒng)根目錄文件cmdline.txt。修改的內(nèi)容為:在最前端加IP設(shè)置:ip=aaa.bbb.ccc.x。
Putty連接狀態(tài)如圖4所示,樹(shù)莓派連接狀態(tài)如圖5所示。
圖4 Putty連接狀態(tài)
圖5 樹(shù)莓派連接狀態(tài)
無(wú)論Windows系統(tǒng)、MacOS系統(tǒng)或Linux系統(tǒng),均以常規(guī)方式安裝Home Assistant。
(1)訪問(wèn)網(wǎng)站https://www.python.org/,下載需要的安裝包,完成Python安裝。
(2)使用Python工具安裝Home Assistant。打開(kāi)命令行窗口,輸入命令:pip3 install homeassistant。
(3)運(yùn)行并啟動(dòng)Home Assistant,進(jìn)入后臺(tái)管理界面,輸入命令:hass。Home Assistant安裝完成界面如圖6所示。
圖6 Home Assistant安裝完成界面
(4)以Root身份運(yùn)行以下命令,完成軟件依賴(lài)包的安裝。
連接過(guò)程如下所示:
(1)進(jìn)入登錄界面;
(2)在登錄界面輸入賬戶名;
(3)輸入用戶賬戶密碼。
登錄成功后,進(jìn)入用戶控制界面。其中,home assistant.local為登錄電腦的IP地址。Home Assistant主界面如圖7所示。
圖7 Home Assistant主界面
將Linux系統(tǒng)中的所有文件通過(guò)局域網(wǎng)共享到Windows網(wǎng)絡(luò)中,再將樹(shù)莓派的用戶文件夾目錄或?qū)⒅付ㄐ韫蚕淼哪夸浽O(shè)置為共享文件夾。
具體操作方法如下:
(1)在樹(shù)莓派端下載Samba軟件,并設(shè)置其配置文件,從更新源獲取更新信息;
(2)下載并安裝Samba軟件;
(3)修改配置文件,為需要共享的目錄指定位置和授權(quán);
(4)重啟Samba服務(wù);
(5)添加默認(rèn)用戶Pi到Samba。
Samba配置界面如圖8所示。
圖8 Samba配置界面
2.5.1 小米網(wǎng)關(guān)接入說(shuō)明
(1)小米多功能網(wǎng)關(guān)簡(jiǎn)介
小米多功能網(wǎng)關(guān)可連接小米的溫濕度計(jì)、開(kāi)關(guān)、人體感應(yīng)器等多種設(shè)備。在Home Assistant中接入小米多功能網(wǎng)關(guān),使多功能網(wǎng)關(guān)連接的設(shè)備進(jìn)入Home Assistant系統(tǒng)。
(2)配置米家
打開(kāi)米家APP,選擇需要接入的多功能網(wǎng)關(guān),點(diǎn)擊右上角的“關(guān)于”,連續(xù)點(diǎn)擊下方的插件版本位置5次可激活開(kāi)發(fā)者模式。米家網(wǎng)關(guān)配置如圖9所示,網(wǎng)絡(luò)信息顯示如圖10所示。
圖9 米家網(wǎng)關(guān)配置
圖10 網(wǎng)絡(luò)信息顯示
(3)配置Home Assistant
打開(kāi)系統(tǒng)根目錄下Home Assistant下的配置文件configuration.yaml,在其中添加如下代碼:
保存配置文件后退出,重啟Home Assistant。小米配置界面如圖11所示。
2.5.2 DHT11傳感器接入
(1)DHT11傳感器簡(jiǎn)介
DHT11是一款已校準(zhǔn)數(shù)字信號(hào)輸出的溫濕度傳感器。DHT11工作原理如圖12所示。
(2)硬件電路連接與配置
將電源VCC接口連接樹(shù)莓派上任一個(gè)3 V引腳,GND接地,DATA數(shù)據(jù)接口連接樹(shù)莓派的4號(hào)GPIO口。
(3)配置根目錄下的Yaml文件
配置代碼如下:
(4)溫濕度顯示
保存已編輯文件,并重新啟動(dòng)樹(shù)莓派,即可看到圖13所示的溫濕度顯示界面。
圖13 溫濕度顯示界面
2.5.3 天氣預(yù)報(bào)數(shù)據(jù)接入
(1)天氣預(yù)報(bào)數(shù)據(jù)接入
天氣預(yù)報(bào)數(shù)據(jù)采用和風(fēng)天氣的開(kāi)放API進(jìn)行數(shù)據(jù)獲取,以確保數(shù)據(jù)的實(shí)時(shí)性、準(zhǔn)確性和高效性。
(2)安裝API接口讀取插件
所需命令如下:
(3)獲取密鑰
注冊(cè)和風(fēng)天氣API的免費(fèi)賬號(hào)(獲取數(shù)據(jù)接口),按步驟注冊(cè)之后獲取官方發(fā)送的密鑰。
(4)編輯Yaml文件
編輯Yaml文件代碼如下:
(5)顯示效果
保存已編輯文件,重新啟動(dòng)樹(shù)莓派查看和風(fēng)天氣顯示效果,如圖14所示。
圖14 和風(fēng)天氣顯示效果
2.5.4 人體傳感器配置
HC-SR501是基于紅外線技術(shù)的自動(dòng)控制模塊,靈敏度高,可靠性強(qiáng),具有超低電壓工作模式,被廣泛應(yīng)用于各類(lèi)自動(dòng)感應(yīng)電器設(shè)備。SR501結(jié)構(gòu)如圖15所示。
圖15 SR501結(jié)構(gòu)
在Home Assistant的配置文件中編輯Yaml文件的代碼如下:
(1)Yaml配置說(shuō)明
在對(duì)服務(wù)端進(jìn)行配置時(shí),任何代碼的修改都是在Yaml文件的基礎(chǔ)上進(jìn)行更改。Yaml文件的編寫(xiě)格式可參考如下內(nèi)容:
①“#”右邊的文字用于注釋?zhuān)瑹o(wú)實(shí)際意義;
②冒號(hào)(:)左邊的字符串代表配置項(xiàng)的名稱(chēng),冒號(hào)右邊為配置項(xiàng)的值;
③若冒號(hào)右邊為空,則從下一行開(kāi)始縮進(jìn)兩個(gè)空格的字符串皆是該配置項(xiàng)的值。
(2)樹(shù)莓派文件基礎(chǔ)配置
若Home Assistant軟件啟動(dòng)時(shí)未找到配置文件,則自動(dòng)配置相關(guān)設(shè)備、sun實(shí)體及天氣預(yù)報(bào)等內(nèi)容。
基礎(chǔ)配置見(jiàn)表3所列。
表3 基礎(chǔ)配置
(3)Home Assistanr添加設(shè)備
Home Assistant連接的外部程序包括處理程序、人臉識(shí)別程序等。
(1)客戶端控制
無(wú)論Android系統(tǒng)還是iOS系統(tǒng),都可將Home Assistant作為“Web APP”添加為手機(jī)應(yīng)用。其操作步驟為:打開(kāi)Chrome—定位到Home Assistant—點(diǎn)擊菜單??蛻舳孙@示效果如圖16所示。
圖16 客戶端顯示效果
(2)設(shè)置家庭APP
擁有家庭APP即可輕松、安全地掌控HomeKit配件。蘋(píng)果客戶端顯示效果如圖17所示。
圖17 蘋(píng)果客戶端顯示效果
本文以樹(shù)莓派和Home Assistant為基本架構(gòu),實(shí)現(xiàn)了超低成本物聯(lián)網(wǎng)解決方案,經(jīng)測(cè)試,效果良好,市場(chǎng)應(yīng)用前景廣闊。
物聯(lián)網(wǎng)技術(shù)2020年12期