• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      基于Raspberry Pi的智能家居系統(tǒng)設(shè)計(jì)

      2017-01-12 10:03殷賢華劉明緣王寧
      現(xiàn)代電子技術(shù) 2016年23期
      關(guān)鍵詞:客戶端服務(wù)器

      殷賢華+劉明緣+王寧

      摘 要: 針對(duì)普通智能家居系統(tǒng)接口標(biāo)準(zhǔn)多、維護(hù)成本高、移動(dòng)性差等缺點(diǎn),提出一種基于Raspberry Pi嵌入式平臺(tái)的智能家居系統(tǒng)設(shè)計(jì)方案。該系統(tǒng)由控制器、Web服務(wù)器、Web瀏覽器、APP移動(dòng)終端和監(jiān)控終端組成,采用ZigBee技術(shù)實(shí)現(xiàn)監(jiān)控終端與控制器之間的通信。實(shí)驗(yàn)表明,該系統(tǒng)能使用戶通過Web瀏覽器或手機(jī)APP終端實(shí)現(xiàn)對(duì)家居的遠(yuǎn)程監(jiān)控,具備較好的應(yīng)用價(jià)值。

      關(guān)鍵詞: Raspberry Pi; 服務(wù)器; 客戶端; ZigBee

      中圖分類號(hào): TN911?34; TP311 文獻(xiàn)標(biāo)識(shí)碼: A 文章編號(hào): 1004?373X(2016)23?0161?04

      Design of smart home system based on Raspberry Pi

      YIN Xianhua, LIU Mingyuan, WANG Ning

      (School of Electronic Engineering and Automation, Guilin University of Electronic Technology, Guilin 541004, China)

      Abstract: In order to overcome the disadvantages of multiple interface standards, high maintenance cost and poor mobility of the general smart home system, a new design scheme of smart home system based on Raspberry Pi embedded platform is proposed. The system is composed of controller, Web server, Web browser, APP mobile terminal and monitoring terminal. The ZigBee technology is adopted to communicate between the monitoring terminal and controller. The experimental results show that the system can help users to realize the home remote monitoring through Web browser or mobile phone APP terminal, and has good practical value.

      Keywords: Raspberry Pi; server; client; ZigBee

      0 引 言

      智能家居是以住宅為平臺(tái),利用綜合布線技術(shù)、網(wǎng)絡(luò)通信技術(shù)、自動(dòng)控制技術(shù)等,兼顧自動(dòng)化和智能化為一體的高效、安全、便利的家居環(huán)境[1]。隨著物聯(lián)網(wǎng)技術(shù)日趨成熟,智能家居設(shè)備正受到廣泛的關(guān)注。開發(fā)成本低、移動(dòng)性強(qiáng)、擴(kuò)展性更好的普通智能家居系統(tǒng)是當(dāng)前亟需解決的問題[2]。

      Raspberry Pi(中文名稱:樹莓派)是一個(gè)新興的嵌入式平臺(tái),在國(guó)外得到廣泛的應(yīng)用,在國(guó)內(nèi)的研究應(yīng)用較少,該嵌入式平臺(tái)的核心優(yōu)勢(shì)在于成本低,拓展性強(qiáng),應(yīng)用領(lǐng)域廣,社會(huì)關(guān)注度高。樹莓派微型計(jì)算機(jī)的發(fā)展證明,樹莓派在許多領(lǐng)域都有巨大的應(yīng)用潛力[3]。為了緊跟國(guó)際發(fā)展趨勢(shì),研究、拓展和創(chuàng)造更具競(jìng)爭(zhēng)力的智能家居系統(tǒng),選擇關(guān)注度高的Raspberry Pi更有優(yōu)勢(shì)和應(yīng)用價(jià)值[3]。該智能家居系統(tǒng)以Raspberry Pi 為核心進(jìn)行開發(fā),整合了傳感器技術(shù)、ZigBee無(wú)線通信、Linux系統(tǒng)應(yīng)用、Web 服務(wù)器與頁(yè)面設(shè)計(jì)以及Android 客戶端設(shè)計(jì)等。該系統(tǒng)具有成本低、可靠性高與拓展性好等優(yōu)勢(shì),避免了重復(fù)的構(gòu)架設(shè)計(jì)與產(chǎn)品研究,讓產(chǎn)品的升級(jí)拓展更加便捷,在一定程度上減少了人力物力的花費(fèi)。

      1 系統(tǒng)結(jié)構(gòu)

      基于Raspberry Pi的智能家居系統(tǒng)由家居監(jiān)控終端、Raspberry Pi服務(wù)器、Web客戶端與Android客戶端組成,系統(tǒng)框圖見圖1。

      家居監(jiān)控終端應(yīng)用ZigBee無(wú)線組網(wǎng)技術(shù)、家用電路控制技術(shù)與攝像頭監(jiān)控技術(shù),實(shí)現(xiàn)對(duì)家居環(huán)境的火災(zāi)、水災(zāi)、溫濕度、光照度、煤氣泄漏和入室盜竊等信息的實(shí)時(shí)監(jiān)測(cè);Raspberry Pi服務(wù)器應(yīng)用Raspberry Pi嵌入式平臺(tái),實(shí)現(xiàn)了智能家居系統(tǒng)的服務(wù)器設(shè)計(jì)、數(shù)據(jù)庫(kù)搭建與后臺(tái)服務(wù)支持;客戶端應(yīng)用基于Internet的通信技術(shù),通過網(wǎng)頁(yè)界面開發(fā)、頁(yè)面與服務(wù)器數(shù)據(jù)交換技術(shù)設(shè)計(jì)Web客戶端,通過Android界面開發(fā)、Android網(wǎng)絡(luò)通信技術(shù)設(shè)計(jì)Android客戶端,使用戶能通過計(jì)算機(jī)和移動(dòng)智能設(shè)備對(duì)智能家居實(shí)時(shí)監(jiān)控。

      2 家居監(jiān)控終端設(shè)計(jì)

      家居監(jiān)控終端使用ZigBee與傳感器構(gòu)建監(jiān)測(cè)、控制電路,利用TI公司研發(fā)的Z?Stack協(xié)議棧實(shí)現(xiàn)組網(wǎng)通信。

      2.1 家居監(jiān)控終端硬件設(shè)計(jì)

      家居監(jiān)控終端由ZigBee CC2530核心模塊與底板擴(kuò)展電路構(gòu)成,不同功能的監(jiān)控終端需要設(shè)計(jì)不同的底板擴(kuò)展電路:協(xié)調(diào)器節(jié)點(diǎn)直接通過串口與Raspberry Pi服務(wù)器連接,需要為其設(shè)計(jì)CH340 USB轉(zhuǎn)串口模塊;控制節(jié)點(diǎn)通過接收協(xié)調(diào)器節(jié)點(diǎn)發(fā)布控制信息,實(shí)現(xiàn)開關(guān)家用電器的作用,需要為其設(shè)計(jì)繼電器電路模塊;監(jiān)測(cè)終端實(shí)時(shí)監(jiān)測(cè)家居環(huán)境的溫濕度、煙霧水浸、人體紅外與光照強(qiáng)度等信息,需要為其設(shè)計(jì)相應(yīng)的傳感器電路模塊。

      協(xié)調(diào)器節(jié)點(diǎn)實(shí)現(xiàn)了CH340芯片及其外圍電路的設(shè)計(jì),為CH340提供電源電壓與晶振,能支持50 b/s~2 Mb/s的波特率通信,USB硬件原理圖見圖2(a)??刂平K端利用繼電器與LED實(shí)現(xiàn)模擬控制家電設(shè)備的開關(guān),控制電路原理圖見圖2(b)。

      2.2 家居監(jiān)控終端軟件設(shè)計(jì)

      家居監(jiān)控終端圍繞ZigBee CC2530設(shè)計(jì),監(jiān)測(cè)、控制終端利用ZigBee協(xié)議棧實(shí)現(xiàn)組網(wǎng)通信,在智能家居系統(tǒng)中,基于TI公司研發(fā)的ZStack?CC2530?2.5.1a版本進(jìn)行開發(fā)。Z?Stack采用模塊化方法,基于ZigBee規(guī)范中的協(xié)議棧構(gòu)架進(jìn)行設(shè)計(jì)[4]。

      在ZigBee協(xié)議棧中,首先由ZMain.c對(duì)系統(tǒng)進(jìn)行一系列的初始化,初始化結(jié)束后將控制權(quán)交給操作系統(tǒng),協(xié)議棧ZMain程序流程圖見圖3。

      智能家居系統(tǒng)中,協(xié)調(diào)器節(jié)點(diǎn)通過USB接口與Raspberry Pi服務(wù)器直接相連,需要實(shí)現(xiàn)創(chuàng)建ZigBee無(wú)線網(wǎng)與接入網(wǎng)內(nèi)的控制終端、監(jiān)測(cè)終端交互數(shù)據(jù)等功能。在協(xié)調(diào)器與Raspberry Pi通信時(shí),需要將數(shù)據(jù)封裝成特定的幀格式。

      3 Raspberry Pi服務(wù)器設(shè)計(jì)

      構(gòu)建Raspberry Pi服務(wù)器需要搭建Raspbian系統(tǒng),為系統(tǒng)根目錄擴(kuò)容并添加鏡像站支持;安裝與配置Nginx,使Web服務(wù)器支持HTTP訪問支持;安裝MySQL,并為服務(wù)器優(yōu)化數(shù)據(jù)庫(kù)配置、設(shè)計(jì)數(shù)據(jù)表;設(shè)計(jì)Python后臺(tái)程序,實(shí)現(xiàn)家居監(jiān)控終端與Raspberry Pi服務(wù)器的數(shù)據(jù)交互。

      3.1 構(gòu)建Raspbian系統(tǒng)

      Raspbian是Debian Linux為Raspberry Pi定制的版本,專門對(duì)ARM架構(gòu)進(jìn)行優(yōu)化[5]。Raspbian支持ssh登錄,當(dāng)其接入控制后,可以直接使用Putty登錄Rasberry Pi。

      登錄Raspbian后,執(zhí)行操作sudo raspi?config,選擇Expand Filesystem則可將Raspbian存儲(chǔ)空間擴(kuò)大至SD卡容量大小。Raspbian軟件的更新由鏡像站支持,其默認(rèn)使用國(guó)外鏡像站,相對(duì)而言,國(guó)內(nèi)的開源鏡像站同步速度更穩(wěn)定,下載速度也更快,故需要更換國(guó)內(nèi)合適的鏡像站作為軟件源。

      3.2 構(gòu)建Web服務(wù)器

      Nginx(“engine x”)是一款高性能的HTTP和反向代理服務(wù)器[6]。它可以直接內(nèi)部支持PHP對(duì)外服務(wù)[7],也可以支持作為HTTP代理服務(wù)器對(duì)外服務(wù)。為了在Raspberry Pi上構(gòu)建Web服務(wù)器,需要修改/etc/local/nginx/conf/路徑下的nginx.conf文件,改變數(shù)據(jù)流量的壓縮率,優(yōu)化Nginx對(duì)內(nèi)存的使用。

      3.3 數(shù)據(jù)庫(kù)設(shè)計(jì)

      MySQL是Web應(yīng)用方面最好的關(guān)系數(shù)據(jù)庫(kù)系統(tǒng),由于其體積小、速度快、成本低、源代碼開放[8],能夠很好地配合PHP和Nginx組成良好的開發(fā)環(huán)境,可以滿足設(shè)計(jì)的需求,減輕Raspberry Pi服務(wù)器的運(yùn)行負(fù)擔(dān),減少存儲(chǔ)空間的消耗。

      為了構(gòu)建合適的智能家居系統(tǒng)數(shù)據(jù)庫(kù),需要對(duì)MySQL進(jìn)行一定的設(shè)置與優(yōu)化,修改路徑/etc/mysql下的my.cnf文件。設(shè)計(jì)數(shù)據(jù)庫(kù)時(shí),需要構(gòu)建與監(jiān)測(cè)、控制信息相對(duì)應(yīng)的表。在構(gòu)建溫度濕度、煙霧光照、控制信息表時(shí),使用Datetime格式標(biāo)記時(shí)間戳,使用變長(zhǎng)浮點(diǎn)數(shù)Decimal格式標(biāo)記對(duì)應(yīng)的攝氏度(℃)、相對(duì)濕度(Relative Humidity,簡(jiǎn)寫RH)、光照xLX、煙霧濃度(PPM)等數(shù)據(jù)。

      對(duì)于圖片存儲(chǔ),MySQL支持以BLOB,MEDIUMBLOB,LONGBLOB格式直接存儲(chǔ)圖片,但在Raspberry Pi的硬件平臺(tái)上,若頻繁存儲(chǔ)、讀取圖片會(huì)增加服務(wù)器的運(yùn)行負(fù)擔(dān)。所以在設(shè)計(jì)圖像信息結(jié)構(gòu)表時(shí),使用存儲(chǔ)圖片的存儲(chǔ)路徑方式代替直接存儲(chǔ)圖片的方式。在服務(wù)器端,將圖片以特定的格式命名(例如,2015?05?06 10:10:10 時(shí)間點(diǎn)存儲(chǔ)的圖片對(duì)應(yīng)命名為20150506101010.jpg),加快客戶端數(shù)據(jù)鏈接速度。在客戶端,第一次讀取的是圖片路徑,第二次讀取對(duì)應(yīng)路徑下的圖片。

      3.4 服務(wù)器后臺(tái)程序設(shè)計(jì)

      在智能家居服務(wù)器的后臺(tái)程序設(shè)計(jì)中,使用Python作為服務(wù)器腳本語(yǔ)言,實(shí)現(xiàn)家居監(jiān)控終端的數(shù)據(jù)通信功能、數(shù)據(jù)庫(kù)數(shù)據(jù)存取功能。

      家居監(jiān)控終端數(shù)據(jù)通信程序?qū)崿F(xiàn)了服務(wù)器與家居監(jiān)控終端的實(shí)時(shí)通信,實(shí)時(shí)存儲(chǔ)家居監(jiān)測(cè)終端采集的數(shù)據(jù),并將Web客戶端、Android客戶端改變的控制參數(shù)發(fā)送至家居控制終端。攝像頭圖像采集程序通過攝像頭實(shí)時(shí)監(jiān)控?cái)?shù)據(jù)庫(kù)變化。當(dāng)監(jiān)控環(huán)境中有人時(shí),程序控制攝像頭采集圖像信息,獲取監(jiān)控環(huán)境的人物圖像,將獲取的圖像以特定格式命名,并將圖片路徑存入數(shù)據(jù)庫(kù)。

      4 客戶端設(shè)計(jì)

      客戶端有Web客戶端與Android客戶端兩種,使用MVC框架模式構(gòu)建,通過構(gòu)建通用Model可以實(shí)現(xiàn)客戶端同步服務(wù)器數(shù)據(jù)。

      4.1 Web客戶端設(shè)計(jì)

      Web客戶端采用瀏覽器/服務(wù)器結(jié)構(gòu)(簡(jiǎn)稱B/S結(jié)構(gòu))[9],該結(jié)構(gòu)將客戶端統(tǒng)一到頁(yè)面上,用戶只需要訪問網(wǎng)絡(luò)頁(yè)面就可以瀏覽信息并產(chǎn)生交互。Web客戶端需要進(jìn)行MVC實(shí)例化,視圖實(shí)現(xiàn)彈窗、描繪曲線、顯示圖片的功能,控制器部分實(shí)現(xiàn)日期選擇,模型部分使用PHP對(duì)數(shù)據(jù)庫(kù)相關(guān)信息實(shí)現(xiàn)調(diào)用與修改。

      Web客戶端實(shí)現(xiàn)了登錄、瀏覽監(jiān)測(cè)數(shù)據(jù)、瀏覽監(jiān)控圖片、控制家電設(shè)備等功能。從軟件結(jié)構(gòu)上,Web客戶端的實(shí)現(xiàn)可以分為三大部分:前端顯示頁(yè)面實(shí)現(xiàn)了瀏覽界面的布局、標(biāo)記以及樣式定制;頁(yè)面動(dòng)態(tài)交互操作實(shí)現(xiàn)了網(wǎng)頁(yè)操作的響應(yīng)、動(dòng)態(tài)加載數(shù)據(jù)以及動(dòng)態(tài)構(gòu)建頁(yè)面;后端數(shù)據(jù)處理實(shí)現(xiàn)了RESTful API,數(shù)據(jù)庫(kù)存取與JSON數(shù)據(jù)格式化[6]。

      在Web客戶端,將溫度濕度、煙霧光照、RPi信息三個(gè)頁(yè)面中的數(shù)據(jù)信息轉(zhuǎn)化為數(shù)據(jù)曲線,并對(duì)圖像進(jìn)行實(shí)時(shí)采集;在室內(nèi)控制頁(yè)面中,通過自定義CSS實(shí)現(xiàn)了家電開關(guān)按鈕與閾值設(shè)置框,關(guān)按鈕可以通過改變開關(guān)狀態(tài)控制家電設(shè)備;閾值框可以更新閾值大小設(shè)置監(jiān)測(cè)警報(bào)參數(shù)。Web客戶端的數(shù)據(jù)曲線、圖像采集和控制界面,如圖4所示。

      4.2 Android客戶端設(shè)計(jì)

      Android客戶端采用客戶機(jī)/服務(wù)器結(jié)構(gòu)(簡(jiǎn)稱C/S結(jié)構(gòu))。該結(jié)構(gòu)應(yīng)用在移動(dòng)智能設(shè)備上,用戶能通過移動(dòng)智能設(shè)備隨時(shí)隨地獲取服務(wù)器信息,獲取服務(wù)器的服務(wù)[10]。Android客戶端需要進(jìn)行MVC實(shí)例化,視圖實(shí)現(xiàn)了顯示字符、圖片、數(shù)據(jù)曲線的功能,控制器部分實(shí)現(xiàn)響應(yīng)用戶控制信息,模型部分實(shí)現(xiàn)對(duì)數(shù)據(jù)庫(kù)對(duì)應(yīng)信息的調(diào)用與修改。

      Android客戶端實(shí)現(xiàn)瀏覽監(jiān)測(cè)數(shù)據(jù)、瀏覽監(jiān)控圖片、控制家電設(shè)備等功能。在客戶端的設(shè)計(jì)中,使用Activity構(gòu)建客戶端界面,通過Service獲取/修改服務(wù)器數(shù)據(jù)實(shí)現(xiàn)相應(yīng)功能。

      Android客戶端設(shè)計(jì)了4種不同的界面:主界面用于顯示不同項(xiàng)目的菜單;監(jiān)測(cè)數(shù)據(jù)曲線界面用于顯示監(jiān)測(cè)數(shù)據(jù)在不同時(shí)間的變化曲線;圖像信息界面用于顯示有人時(shí)采集到的監(jiān)控圖像畫面;室內(nèi)控制界面用于顯示家電設(shè)備控制、設(shè)置警報(bào)閾值;信息欄彈窗用于提示有人進(jìn)入圖像監(jiān)控區(qū)域,通過點(diǎn)擊信號(hào)欄圖標(biāo)可以瀏覽獲取到的最新圖像。Android客戶端的主界面、監(jiān)測(cè)數(shù)據(jù)曲線和室內(nèi)控制界面,如圖5所示。

      5 結(jié) 語(yǔ)

      利用ZigBee技術(shù)構(gòu)建家居環(huán)境監(jiān)測(cè)終端,基于Raspberry Pi嵌入式平臺(tái),使用Nginx+MySQL+PHP的軟件方案實(shí)現(xiàn)了網(wǎng)頁(yè)服務(wù)器的搭建,并與Web客戶端及Android客戶端結(jié)合,組成了完善的多平臺(tái)智能家居系統(tǒng)。經(jīng)過測(cè)試和運(yùn)行,本系統(tǒng)能很好地提供智能家居服務(wù)功能,用戶可以通過智能移動(dòng)設(shè)備或?yàn)g覽器網(wǎng)頁(yè)訪問系統(tǒng),對(duì)家居環(huán)境實(shí)時(shí)監(jiān)控,并通過客戶端界面對(duì)系統(tǒng)進(jìn)行控制,實(shí)現(xiàn)了多平臺(tái)的人機(jī)交互。系統(tǒng)工作穩(wěn)定、可靠,具有良好的擴(kuò)展性,具備較大的實(shí)用價(jià)值。

      參考文獻(xiàn)

      [1] 陶在紅,楊宇,常建華.基于ZigBee的智能家居控制系統(tǒng)設(shè)計(jì)[J].現(xiàn)代電子技術(shù),2014,37(23):9?12.

      [2] 楊曉迪,廖昕,古麗米拉·克孜爾別克,等.基于ARM的智能家居控制系統(tǒng)設(shè)計(jì)[J].現(xiàn)代電子技術(shù),2015,38(8):93?95.

      [3] EDWARDS C. Not?so?humble Raspberry Pi gets big ideas [J]. Engineering & technology, 2013, 8(3): 30?33.

      [4] 江丹丹,唐煜程,唐東.一種基于ZigBee及GSM混合網(wǎng)絡(luò)的輕智能家居安防系統(tǒng)設(shè)計(jì)[J].現(xiàn)代電子技術(shù),2015,38(3):6?8.

      [5] 李楊,郭培源,劉波,等.基于嵌入式技術(shù)的居室健康環(huán)境監(jiān)測(cè)系統(tǒng)[J].電子技術(shù)應(yīng)用,2014,40(8):24?26.

      [6] ALLAMARAJU S. RESTful Web Services Cookbook(中文版)[M].北京:電子工業(yè)出版社,2011.

      [7] 陳亮,高宏力,周倫.嵌入式服務(wù)器在智能家居系統(tǒng)中的應(yīng)用[J].計(jì)算機(jī)測(cè)量與控制,2015(5):1758?1761.

      [8] 馮興利,索志海,徐墨.基于PHP+MySQL的Web系統(tǒng)安全防范及全站靜態(tài)化[J].現(xiàn)代電子技術(shù),2012,35(8):25?27.

      [9] 李紅剛,張素萍,方佳,等.基于ARM的智能家居遠(yuǎn)程監(jiān)控系統(tǒng)設(shè)計(jì)[J].現(xiàn)代電子技術(shù),2009,32(5):134?138.

      [10] 顧菊芬,陳敏鋒,楊國(guó)華.基于Android的物聯(lián)網(wǎng)移動(dòng)數(shù)據(jù)網(wǎng)關(guān)的設(shè)計(jì)與應(yīng)用[J].測(cè)控技術(shù),2014(6):107?110.

      猜你喜歡
      客戶端服務(wù)器
      通信控制服務(wù)器(CCS)維護(hù)終端的設(shè)計(jì)與實(shí)現(xiàn)
      縣級(jí)臺(tái)在突發(fā)事件報(bào)道中如何應(yīng)用手機(jī)客戶端
      孵化垂直頻道:新聞客戶端新策略
      基于Vanconnect的智能家居瘦客戶端的設(shè)計(jì)與實(shí)現(xiàn)
      中國(guó)服務(wù)器市場(chǎng)份額出爐
      得形忘意的服務(wù)器標(biāo)準(zhǔn)
      計(jì)算機(jī)網(wǎng)絡(luò)安全服務(wù)器入侵與防御
      客戶端空間數(shù)據(jù)緩存策略
      辽宁省| 扶绥县| 汝州市| 色达县| 涿鹿县| 德化县| 尼木县| 闽侯县| 荣昌县| 江孜县| 巧家县| 阳曲县| 浮山县| 中西区| 开化县| 留坝县| 吴旗县| 封开县| 建水县| 永康市| 巢湖市| 龙门县| 嘉禾县| 固原市| 黄龙县| 六安市| 六盘水市| 綦江县| 河源市| 井冈山市| 木兰县| 沙田区| 新闻| 三亚市| 高州市| 宜章县| 青阳县| 日喀则市| 滁州市| 昭平县| 阳朔县|