基于嵌入式的智能家居網(wǎng)關(guān)設(shè)計(jì)_第1頁(yè)
基于嵌入式的智能家居網(wǎng)關(guān)設(shè)計(jì)_第2頁(yè)
基于嵌入式的智能家居網(wǎng)關(guān)設(shè)計(jì)_第3頁(yè)
基于嵌入式的智能家居網(wǎng)關(guān)設(shè)計(jì)_第4頁(yè)
基于嵌入式的智能家居網(wǎng)關(guān)設(shè)計(jì)_第5頁(yè)
已閱讀5頁(yè),還剩4頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、    基于嵌入式的智能家居網(wǎng)關(guān)設(shè)計(jì)    江寧+桂斌【摘 要】隨著物聯(lián)網(wǎng)技術(shù)的發(fā)展,智能家居已經(jīng)悄然走進(jìn)了千家萬(wàn)戶(hù)。而在這些繁雜的系統(tǒng)中為了實(shí)現(xiàn)異地控制與監(jiān)測(cè),網(wǎng)關(guān)模塊是必不可少的。本文正是根據(jù)這種需求提出了一種基于嵌入式linux+qt的,使用433mhz作為通信媒介的一種智能家居網(wǎng)關(guān)設(shè)計(jì)。從而能夠?qū)崿F(xiàn)對(duì)智能家居子節(jié)點(diǎn)的協(xié)調(diào)、控制以及將它們接入互聯(lián)網(wǎng)實(shí)現(xiàn)遠(yuǎn)程控制與監(jiān)控等功能?!娟P(guān)鍵詞】物聯(lián)網(wǎng);嵌入式;433mhz通信;qt0 概述智能家居(英文:smart home, home automation)是以住宅為平臺(tái),利用綜合布線技術(shù)、網(wǎng)絡(luò)通信技術(shù)、安

2、全防范技術(shù)、自動(dòng)控制技術(shù)、音視頻技術(shù)將家居生活有關(guān)的設(shè)施集成,構(gòu)建高效的住宅設(shè)施與家庭日程事務(wù)的管理系統(tǒng),提升家居安全性、便利性、舒適性、藝術(shù)性,并實(shí)現(xiàn)環(huán)保節(jié)能的居住環(huán)境。目前常見(jiàn)的智能家居網(wǎng)關(guān)產(chǎn)品有的直接采用微機(jī)系統(tǒng),使用其他系統(tǒng)的產(chǎn)品也多采用基于wifi的通信手段并且軟件定制化很強(qiáng)。因此,導(dǎo)致的結(jié)果是功耗較高、可容納子節(jié)點(diǎn)較少、添加子節(jié)點(diǎn)后系統(tǒng)升級(jí)麻煩。本文正是為了解決這些缺點(diǎn),提出一種可能的解決方案。本文使用arm核心板作為基礎(chǔ),配合433mhz無(wú)線收發(fā)模塊設(shè)計(jì)了一個(gè)智能網(wǎng)關(guān)。該系統(tǒng)包含智能網(wǎng)關(guān)1個(gè)和用于與之測(cè)試通信的子節(jié)點(diǎn)若干。1 硬件設(shè)計(jì)1.1 硬件總設(shè)計(jì)本系統(tǒng)包含智能網(wǎng)關(guān)1個(gè)和用于

3、與之測(cè)試通信的子節(jié)點(diǎn)若干。在網(wǎng)關(guān)上應(yīng)當(dāng)配有方便人機(jī)交互的裝置,例如觸摸屏,同時(shí)應(yīng)當(dāng)能夠接入到互聯(lián)網(wǎng),具有網(wǎng)卡控制器。對(duì)于節(jié)點(diǎn)而言,并不是本文討論的重點(diǎn),但是其應(yīng)該具備一定的傳感器或控制器,然后通過(guò)微處理器將傳感器數(shù)據(jù)轉(zhuǎn)換成特定格式的數(shù)據(jù)幀由無(wú)線通信模塊發(fā)出與網(wǎng)關(guān)通信或者將接收到的數(shù)據(jù)根據(jù)相關(guān)邏輯驅(qū)動(dòng)控制器動(dòng)作。而無(wú)線通信模塊的選取必須避免人們?nèi)找鎸挸ǖ募揖用娣e以及鋼筋墻壁所帶來(lái)的通信盲區(qū)。同時(shí),由于設(shè)備24小時(shí)工作,其空閑功耗必須較低。而對(duì)于環(huán)境數(shù)據(jù)以及控制信號(hào)其數(shù)據(jù)量卻并不大。為了滿足上述需求,本文選取國(guó)產(chǎn)匯承hc-21 433mhz通信模塊作為無(wú)線傳輸介質(zhì)。其空閑電流小于1ma,而通信距離

4、則可大于600m,并具有良好的穿墻能力。彌補(bǔ)了傳統(tǒng)智能家居使用wifi帶來(lái)的高功耗及穿墻能力不足,也避免了zigbee復(fù)雜的布設(shè)過(guò)程。1.2 網(wǎng)關(guān)硬件設(shè)計(jì)通過(guò)分析既定的需求,該系統(tǒng)必須能夠流暢的執(zhí)行多任務(wù),因?yàn)橹辽儆?33mhz數(shù)據(jù)通信和網(wǎng)絡(luò)請(qǐng)求處理兩個(gè)繁重的任務(wù)需要不斷執(zhí)行。而且,最為整個(gè)家庭控制的核心,還需要有人機(jī)交互的友好界面,如果使用時(shí)下流行的lcd觸摸屏對(duì)于系統(tǒng)的性能是有較高的用途的。因此綜合上述分析,本文選取banana pi開(kāi)發(fā)板作為網(wǎng)關(guān)的核心。本開(kāi)發(fā)板擁有一顆cortex-a7 雙核核心以及1gb內(nèi)存板載有線+無(wú)線網(wǎng)卡并且留有l(wèi)vds觸摸屏接口。能夠滿足多任務(wù)并發(fā)同時(shí)cpu內(nèi)置

5、的顯卡能夠處理一般的人機(jī)交互界面。1.3 子節(jié)點(diǎn)硬件設(shè)計(jì)子節(jié)點(diǎn)負(fù)責(zé)對(duì)相關(guān)監(jiān)測(cè)量進(jìn)行采集或響應(yīng)網(wǎng)關(guān)發(fā)來(lái)的指令控制相應(yīng)的控制器動(dòng)作,而這種工作狀態(tài)具有實(shí)時(shí)性和突發(fā)性。因此,子節(jié)點(diǎn)需要有一定的邏輯處理能力,較好的i/o性能以及較低的功耗。本系統(tǒng)選取溫濕度采集和調(diào)光燈這兩個(gè)常見(jiàn)的功能作為節(jié)點(diǎn)功能以供測(cè)試網(wǎng)關(guān)的功能。為了滿足上述需求采用stm32f103c8t6作為控制核心,其具有cortex m3的內(nèi)核并且支持休眠模式。2 軟件設(shè)計(jì)2.1 軟件總設(shè)計(jì)本系統(tǒng)軟件部分除了提供有好的用戶(hù)ui和實(shí)現(xiàn)網(wǎng)絡(luò)控制的框架外。需要解決2個(gè)根本矛盾:互斥資源排他性訪問(wèn)、并發(fā)性與433mhz通信慢速的矛盾。對(duì)于矛盾1不能簡(jiǎn)

6、單使用p-v操作來(lái)完成,因?yàn)榧揖硬僮骶哂忻黠@的順序性對(duì)于嵌入式系統(tǒng)利用這點(diǎn)這將節(jié)省大量硬件開(kāi)銷(xiāo);針對(duì)矛盾2為了節(jié)省成本也不能采用增加收發(fā)器的方式來(lái)增加速率。綜上,本系統(tǒng)提出以下軟件結(jié)構(gòu)來(lái)解決這些問(wèn)題。2.2 串口驅(qū)動(dòng)層這是由一系列類(lèi)組成的軟件模塊,主要功能是向下連接操作系統(tǒng)api操縱串口,向上封裝操作,將初始化、寫(xiě)、讀等操作進(jìn)行封裝方便上層調(diào)用。串口驅(qū)動(dòng)最主要要解決的是讀取問(wèn)題,由于linux不支持事件驅(qū)動(dòng)讀取方式。故提出解決方案,創(chuàng)建守護(hù)進(jìn)程監(jiān)視串口,有數(shù)據(jù)來(lái)就啟動(dòng)軟件定時(shí)器每次定時(shí)器到期就查看串口緩沖數(shù)據(jù)有沒(méi)有增加,有則在啟動(dòng)一次定時(shí)器周期,若無(wú)則向輪詢(xún)接收線程發(fā)送一信號(hào),同步阻塞接收線程

7、收到信號(hào)后返回緩沖區(qū)全部字節(jié)。由于串口訪問(wèn)排他性,為了避免程序中錯(cuò)誤的多次實(shí)例化需要將該類(lèi)設(shè)為單例模式。同時(shí),繼續(xù)向上封裝數(shù)據(jù)操作方法,并防止程序在多個(gè)線程內(nèi)重復(fù)訪問(wèn)串口,在這些方法中均使用了互斥鎖。2.3 http監(jiān)聽(tīng)程序httplistener類(lèi)對(duì)tcp連接進(jìn)行監(jiān)聽(tīng),然后解析http數(shù)據(jù)包,并且將連接存入連接池。基于線程類(lèi)qthread派生出httpconnectionhandle和 httpquesthandler子類(lèi)進(jìn)行http數(shù)據(jù)包的處理。最終questhandler繼承httpquesthandler并重寫(xiě)虛函數(shù)service實(shí)現(xiàn)獲取請(qǐng)求內(nèi)容。然后反序列化請(qǐng)求內(nèi)容交由串行化調(diào)度器完

8、成任務(wù),期間阻塞本線程直到任務(wù)完成向客戶(hù)端發(fā)回響應(yīng)。若完成時(shí)間過(guò)長(zhǎng),則停止阻塞返回超時(shí)錯(cuò)誤。2.4 脫機(jī)寄存器為了解決無(wú)線信道并發(fā)的沖突,本系統(tǒng)使用串行化調(diào)度器。但是實(shí)際應(yīng)用中大多數(shù)時(shí)間信道是閑置的,僅當(dāng)例如用戶(hù)下達(dá)某一操作時(shí)信道將同時(shí)發(fā)生多個(gè)原子操作從而降低通信效率,433mhz的低速率特點(diǎn)將加劇這一現(xiàn)象。因此,本系統(tǒng)采用脫機(jī)寄存器,將硬件控制位抽象到網(wǎng)關(guān)作為緩沖。從而解決了極低速通信與高并發(fā)之間的矛盾,而且增加了數(shù)據(jù)吞吐率和信道利用率。2.5 串行化調(diào)度器和任務(wù)隊(duì)列串口的使用具有互斥性,雖然linux底層對(duì)此有排他性訪問(wèn)限制,但是一次串口操作并不能滿足一個(gè)邏輯功能。為了實(shí)現(xiàn)原子操作,解決方

9、案有二:一是,剖析linux底層代碼,將這些特殊功能寫(xiě)入驅(qū)動(dòng),將串口進(jìn)一步邏輯化,編寫(xiě)自己的設(shè)備。為了降低開(kāi)發(fā)精力,故選擇第二種方案,即在應(yīng)用層人為調(diào)度這些任務(wù)。首先為原子操作建立基類(lèi),然后添加到任務(wù)隊(duì)列中,最后串行化調(diào)度器依照優(yōu)先級(jí)取出這些操作,通過(guò)統(tǒng)一抽象入口函數(shù)進(jìn)行處理。其工作流程如圖3所示。2.6 其他模塊ui采用派生自qwidget的豐富控件庫(kù)構(gòu)建,然后設(shè)置對(duì)應(yīng)的槽接收來(lái)定時(shí)器的信號(hào)進(jìn)行周期性更新。同時(shí)定時(shí)器也負(fù)責(zé)周期性更新離線寄存器的值。最后網(wǎng)頁(yè)服務(wù)采用nginx服務(wù)器,其小巧、占用資源少、并發(fā)性好特別適合本系統(tǒng)??蛻?hù)端采用html5+ajax給用戶(hù)提供美觀、便利的界面。3 小結(jié)智能家居的發(fā)展體現(xiàn)出了人們追求高質(zhì)量生活的趨勢(shì)。而其中智能網(wǎng)關(guān)的發(fā)展程度充分體現(xiàn)出整個(gè)智能家居的發(fā)展程度。如今許多產(chǎn)品多在智能家居中扮演子節(jié)點(diǎn),而多家產(chǎn)品又難以統(tǒng)一連接,加之網(wǎng)關(guān)標(biāo)準(zhǔn)的缺失使得其偏離了物聯(lián)網(wǎng)的主旨。而本系統(tǒng)的提出正好解決了這個(gè)問(wèn)題,在種種近距無(wú)線離通信技術(shù)不成熟的今天通過(guò)充分利用嵌入式系統(tǒng)的資源和對(duì)軟件的合理設(shè)計(jì)完全可

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論