• 
    

    
    

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

      ?

      基于Cortex A8的智能家居控制系統(tǒng)

      2017-07-10 09:26吳雪琴陳虹君
      電腦知識(shí)與技術(shù) 2017年14期
      關(guān)鍵詞:無線傳感網(wǎng)絡(luò)智能家居監(jiān)控

      吳雪琴 陳虹君

      摘要:隨著現(xiàn)代化水平不斷提高,人們對(duì)智能要求也越來越高。為了提高家居的智能化控制,設(shè)計(jì)一種使用計(jì)算機(jī)無線網(wǎng)絡(luò)基于CortexA8的智能家居控制系統(tǒng)。該系統(tǒng)以CortexA8和ZigBee為核心,采用WEB服務(wù)器以B/S進(jìn)行控制和數(shù)據(jù)采集,通過移植Linux系統(tǒng),移植sqhte數(shù)據(jù)庫,移植驅(qū)動(dòng)程序?qū)崿F(xiàn)。

      關(guān)鍵詞:智能家居;ZigBee;無線傳感網(wǎng)絡(luò);監(jiān)控

      中圖分類號(hào):TP319 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1009-3044(2017)14-0193-03

      物聯(lián)網(wǎng)在人類生活中有著廣泛的用途,但同時(shí)物聯(lián)網(wǎng)的發(fā)展進(jìn)展緩慢,影響物聯(lián)網(wǎng)發(fā)展的一個(gè)重大因素就是它非常靈活,在系統(tǒng)中存在大量處于不同網(wǎng)絡(luò)的設(shè)備,這些處于不同網(wǎng)絡(luò)的設(shè)備相互通信很困難,因此設(shè)計(jì)一個(gè)物聯(lián)網(wǎng)的通用控制平臺(tái)尤為重要,通過此平臺(tái)和網(wǎng)絡(luò)監(jiān)控可以實(shí)現(xiàn)智能家居控制系統(tǒng),在本文中設(shè)計(jì)此平臺(tái)并通過該平臺(tái)就實(shí)現(xiàn)家居中常用設(shè)備的控制,除此以外還能進(jìn)行溫濕度采集、有毒有害氣體的檢測(cè)等,在實(shí)際應(yīng)用中有著廣泛的應(yīng)用。

      1系統(tǒng)簡介

      該系統(tǒng)是一個(gè)智能家居控制通用平臺(tái),考慮到設(shè)備間的兼容性,在系統(tǒng)中采用B/S方式進(jìn)行設(shè)計(jì)。因此系統(tǒng)結(jié)構(gòu)主要由底層感知層,核心通信層和應(yīng)用業(yè)務(wù)層這三層組成。

      底層感知層是系統(tǒng)最終被控制或者采集數(shù)據(jù)的層次,包括各種傳感器和執(zhí)行器。核心通信層是系統(tǒng)中唯一不變的層次,它為整個(gè)系統(tǒng)構(gòu)建框架,在這個(gè)層次中包含多個(gè)網(wǎng)絡(luò)服務(wù)器程序:隧道服務(wù)器、反向代理服務(wù)器、SN分配服務(wù)器、數(shù)據(jù)庫服務(wù)器等。應(yīng)用業(yè)務(wù)層是根據(jù)開發(fā)人員的實(shí)際需求,開發(fā)出相應(yīng)的應(yīng)用程序。由于系統(tǒng)采用B/S的方式,因此系統(tǒng)具有很大的延展性和可擴(kuò)展性。在這一個(gè)層次中,可以使用多種編程語言實(shí)現(xiàn)。

      2系統(tǒng)工作原理

      本系統(tǒng)控制原理是采用嵌入式Linux WEB服務(wù)器,通過CGI程序向Linux驅(qū)動(dòng)程序?qū)懭朊钭郑偻ㄟ^Linux驅(qū)動(dòng)程序控制ARM的GPIO的高低電平來控制電磁繼電器的方式來實(shí)現(xiàn)。傳感器則是單片機(jī)通過I/O收集來自傳感器的數(shù)據(jù)、通過串口發(fā)送到ARM開發(fā)板。步進(jìn)電機(jī)的控制原理則是ARM發(fā)送命令數(shù)據(jù)給CC2530,CC2530輸出高地電平控制ULN2003步進(jìn)電機(jī)驅(qū)動(dòng)芯片。從而達(dá)到控制步進(jìn)電機(jī)的目的。ARM開發(fā)板內(nèi)移植有Sqlite數(shù)據(jù)庫。收集的數(shù)據(jù)儲(chǔ)存在數(shù)據(jù)庫內(nèi)。用于顯示的CGI程序讀取數(shù)據(jù)庫里的值顯示到HTML網(wǎng)頁。嵌入式WEB服務(wù)器的登錄認(rèn)證是由CGI+JS+cookie配合完成的。

      由于IPV4的限制,使其它網(wǎng)絡(luò)的用戶無法訪問位于本地局域網(wǎng)內(nèi)部的WEB服務(wù)器,因此系統(tǒng)提供了能訪問內(nèi)網(wǎng)WEB服務(wù)器的反向代理程序。它是通過MAC地址對(duì)系統(tǒng)中每一個(gè)作為物聯(lián)網(wǎng)網(wǎng)關(guān)的ARM開發(fā)板提供獨(dú)一的sN編號(hào),它可使其用戶直接輸入即可訪問。整個(gè)系統(tǒng)通過移植linux系統(tǒng),WEB服務(wù)器,Sqlite數(shù)據(jù)庫和CCGI庫實(shí)現(xiàn)。

      1)linux系統(tǒng)的移植

      采用天嵌公司TQ210開發(fā)板,這款開發(fā)板采用S5PV210作為CPU內(nèi)核,它的架構(gòu)是ARM Cortex-A8,可在其上移植好linux內(nèi)核以及相應(yīng)必要的驅(qū)動(dòng)程序后就可以開始進(jìn)行WEB服務(wù)器的移植。

      2)WEB服務(wù)器的移植

      市場(chǎng)上有很多的嵌入式WEB服務(wù)器,對(duì)于嵌入式WEB服務(wù)器基本要求是占用內(nèi)存小,實(shí)時(shí)性高。對(duì)于我們的系統(tǒng)而言,必須支持CGI程序。比較好的嵌入式WEB服務(wù)器有:boa、thttpd、mini_httpd、shttpd、lighttpd、goaheand、appweb和apache等。Apache是主流的WEB服務(wù)器但是占用內(nèi)存多,開銷很大。因此不適用于嵌入式WEB服務(wù)器。對(duì)比了其他服務(wù)器后,最終采用boa服務(wù)器,boa服務(wù)器占用資源很少,并且支持CGI。在www.boa.org上下載boa的源碼,解壓后進(jìn)行交叉編譯,然后再把boa的可執(zhí)行文件可配置文件拷貝到開發(fā)板上,boa就可以開始運(yùn)行。

      3)Sqlite數(shù)據(jù)庫的移植

      Sqlite是一種小型的可用在嵌入式設(shè)備上的關(guān)系數(shù)據(jù)庫。它主要是用來存儲(chǔ)由傳感器采集的數(shù)據(jù)。在www.sqlite.org上下載sqlite的源代碼,解壓后交叉編譯,將可執(zhí)行文件和庫拷貝到開發(fā)板上即可。

      4)CCGI庫的移植

      CCGI庫是一個(gè)C語言庫,用于C語言編寫CGI程序的一個(gè)函數(shù)庫,下載解壓后用VIM打開Makefile文件,將里面的編譯器改為交叉編譯器即可。

      3核心通信層

      作為系統(tǒng)的核心,核心通信層為整個(gè)系統(tǒng)提供框架,為上層的應(yīng)用業(yè)務(wù)層提供設(shè)備的控制和采集接口,同時(shí)也為底層的底層感知層提供平臺(tái)支持。

      核心通信層可以劃分為兩個(gè)功能模塊:一個(gè)是網(wǎng)絡(luò)通信,它主要提供數(shù)據(jù)的傳輸,如隧道轉(zhuǎn)發(fā)、SN分配、上層接口調(diào)用;另一個(gè)是嵌入式WEB服務(wù)器(采用B/S通信方式),它主要提供WEB服務(wù)和底層驅(qū)動(dòng)程序以及安全認(rèn)證,以便于數(shù)據(jù)的傳輸以及對(duì)底層感知層的支持。

      3.1核心通信層嵌入式WEB服務(wù)器設(shè)計(jì)

      系統(tǒng)采用B/S方式進(jìn)行控制和數(shù)據(jù)采集,因此嵌入式WEB服務(wù)器是整個(gè)系統(tǒng)的核心,在實(shí)際項(xiàng)目中嵌入式WEB服務(wù)器實(shí)際上就是物聯(lián)網(wǎng)系統(tǒng)的物聯(lián)網(wǎng)網(wǎng)關(guān)。在本文中采用ARMlinux平臺(tái)實(shí)現(xiàn)嵌入式WEB服務(wù)器。嵌入式WEB服務(wù)器結(jié)構(gòu)圖如圖1所示。它主要通過網(wǎng)絡(luò)將物聯(lián)網(wǎng)網(wǎng)關(guān)(嵌入式WEB服務(wù)器)的端口轉(zhuǎn)發(fā)客戶端模塊與云服務(wù)器建立隧道通信和反向代理服務(wù)。同時(shí)嵌入式WEB服務(wù)器提供WEB服務(wù),收集來自協(xié)調(diào)器的數(shù)據(jù)后保存在sqlite數(shù)據(jù)中,再由CGI程序輸出和控制。端口轉(zhuǎn)發(fā)客戶端模塊將嵌入式WEB服務(wù)器轉(zhuǎn)發(fā)到云服務(wù)器使得外網(wǎng)用戶也能訪問。

      3.2核心通信層網(wǎng)絡(luò)通信設(shè)計(jì)

      通信設(shè)計(jì)是物聯(lián)網(wǎng)中的核心。在本系統(tǒng)中,由于采用B/S方式進(jìn)行通信,外網(wǎng)的客戶端不能夠訪問內(nèi)網(wǎng)的服務(wù)器,而物聯(lián)網(wǎng)系統(tǒng)是一個(gè)分布式網(wǎng)絡(luò),它負(fù)責(zé)連接所有的設(shè)備,因此網(wǎng)絡(luò)通信模塊主要是解決這個(gè)問題。網(wǎng)絡(luò)通信模塊主要實(shí)現(xiàn)如下三大功能:SSH隧道轉(zhuǎn)發(fā),代理服務(wù)及SN分配。

      1)SSH隧道轉(zhuǎn)發(fā)

      因?yàn)榍度胧絎EB服務(wù)器一般處于局域網(wǎng)內(nèi)部,因此想要訪問嵌入式WEB服務(wù)器必須依靠隧道轉(zhuǎn)發(fā)技術(shù),這種技術(shù)能讓用戶訪問處于內(nèi)網(wǎng)或者讓其他的網(wǎng)絡(luò)中的客戶端進(jìn)行訪問。公網(wǎng)服務(wù)器會(huì)分配一個(gè)端口號(hào),用于監(jiān)聽來自對(duì)嵌入式WEB服務(wù)器的請(qǐng)求。

      2)代理服務(wù)器

      在這個(gè)物聯(lián)網(wǎng)系統(tǒng)中的代理服務(wù)器是一個(gè)反向代理服務(wù)器,啟動(dòng)隧道轉(zhuǎn)發(fā)后,在公網(wǎng)服務(wù)器上就會(huì)有一個(gè)監(jiān)聽端口。這個(gè)端口是處于公網(wǎng)服務(wù)器的防火墻的內(nèi)部的。為了數(shù)據(jù)的安全性因此必須用防火墻對(duì)數(shù)據(jù)進(jìn)行過濾。反向代理服務(wù)器的作用就是將處于防火墻內(nèi)的端口代理出防火墻外,這樣一來有利于數(shù)據(jù)的安全性。在此系統(tǒng)中,反向代理服務(wù)器中常用的是Hap-roxy代理服務(wù)器,它將本地的嵌入式WEB服務(wù)器端口80映射到公網(wǎng)服務(wù)器上時(shí),公網(wǎng)服務(wù)器程序會(huì)分配一個(gè)端口。此時(shí)這個(gè)端口為127.0.0.1:port,再由Haproxy反向代理出去,并且生成一個(gè)URL,這個(gè)URL就是嵌入式WEB服務(wù)器的控制鏈接。每一個(gè)嵌入式WEB服務(wù)器的URL不同,因?yàn)樵趯?shí)際應(yīng)用中,可能存在多個(gè)嵌入式WEB服務(wù)器。

      3)SN分配

      在實(shí)際中系統(tǒng)中可能存在不僅一個(gè)嵌入式WEB服務(wù)器。這些不同的嵌入式WEB服務(wù)器控制和采集對(duì)應(yīng)的執(zhí)行器和感知器。SN分配的功能就是將不同的嵌入式WEB區(qū)別開,SN號(hào)在整個(gè)系統(tǒng)中獨(dú)一無二,SN對(duì)應(yīng)這一個(gè)嵌入式WEB服務(wù)器。SN分配的原理是端口轉(zhuǎn)發(fā)。嵌入式WEB服務(wù)器進(jìn)行端口轉(zhuǎn)發(fā)時(shí),服務(wù)器會(huì)分配一個(gè)端口號(hào)來進(jìn)行監(jiān)聽WEB端口請(qǐng)求,而數(shù)據(jù)庫對(duì)SN和端口號(hào)進(jìn)行關(guān)聯(lián)。服務(wù)器端程序流程和設(shè)備終端程序流程分別見圖2和圖3。

      4底層感知層

      TQ210與Zigbee通信采用串口通信。Zigbee CC2530電路圖如圖4所示。該系統(tǒng)中控制步進(jìn)電機(jī)的原理則是CGI程序發(fā)送串口數(shù)據(jù),Zigbee接收數(shù)據(jù)后,對(duì)命令進(jìn)行解析,從而實(shí)現(xiàn)對(duì)步進(jìn)電機(jī)的控制,而家居設(shè)備中的燈則是則是通過GPIO的高低電平來來控制電磁電器閉合實(shí)現(xiàn)其開、關(guān)狀態(tài)。傳感器則是由Zigbee收集數(shù)據(jù),通過串口發(fā)生給TQ210。CGI程序通過串口收集到數(shù)據(jù)后,將數(shù)據(jù)存入數(shù)據(jù)庫,再由用于顯示的CGI程序,讀取數(shù)據(jù)庫中的數(shù)據(jù),最后進(jìn)行顯示,從而實(shí)現(xiàn)所需功能。

      5應(yīng)用層

      應(yīng)用層為用戶提供輸入SN號(hào)的操作平臺(tái),并且注冊(cè)用戶名、已經(jīng)通過用戶輸人的SN來跳轉(zhuǎn)到對(duì)應(yīng)的智能家居網(wǎng)關(guān)控制監(jiān)控頁面。

      在此系統(tǒng)中,應(yīng)用層以網(wǎng)站形式呈現(xiàn),而在核心層服務(wù)器已經(jīng)生成好了頁面的鏈接,該網(wǎng)站只需要根據(jù)用戶輸入的SN號(hào)跳轉(zhuǎn)到對(duì)應(yīng)的頁面即可。

      6結(jié)束語

      本文實(shí)現(xiàn)了基于Cortex A8的智能家居控制系統(tǒng),能對(duì)家居設(shè)備進(jìn)行自動(dòng)開、關(guān),能通過步進(jìn)電機(jī)實(shí)現(xiàn)對(duì)電扇的順時(shí)針和逆時(shí)針旋轉(zhuǎn),還能對(duì)溫濕度和氣體進(jìn)行檢測(cè),通過多次實(shí)驗(yàn)表明,此設(shè)計(jì)方案較好地搭建了智能家居控制平臺(tái),達(dá)到了預(yù)期效果,這些思路和方法在實(shí)際中都值得借鑒,在工業(yè)上也有很高的應(yīng)用價(jià)值。

      猜你喜歡
      無線傳感網(wǎng)絡(luò)智能家居監(jiān)控
      The Great Barrier Reef shows coral comeback
      你被監(jiān)控了嗎?
      Zabbix在ATS系統(tǒng)集中監(jiān)控中的應(yīng)用
      基于Zigbee的無線通信技術(shù)在智能家居中的應(yīng)用
      試論無線傳感網(wǎng)絡(luò)動(dòng)態(tài)休眠通信協(xié)議
      關(guān)于智能家居真正需求的探討
      PDCA循環(huán)法在多重耐藥菌感染監(jiān)控中的應(yīng)用
      基于LD3320的智能家居控制
      中卫市| 手机| 凤阳县| 蒙城县| 左云县| 马关县| 涟水县| 白河县| 钟祥市| 金乡县| 盘锦市| 贞丰县| 白城市| 中山市| 图片| 广德县| 彝良县| 元氏县| 怀化市| 长子县| 桃江县| 乌什县| 乌兰浩特市| 博白县| 深水埗区| 晴隆县| 玉环县| 枣阳市| 惠东县| 商南县| 逊克县| 星子县| 诸城市| 遂昌县| 秭归县| 宜阳县| 湖口县| 安福县| 泗阳县| 商丘市| 德兴市|