1 引言
人們生活水平的提高以及科技的進步,特別是計算機技術、網(wǎng)絡技術和通信技術的發(fā)展,智能家居將慢慢成為未來家居生活的發(fā)展方向。1984年在美國誕生了世界上第一座智能家居建筑,從此以后,世界上的各大公司和科研單位不斷加速在智能家居方面的研究,他們分別提出了自己的智能家居解決方案,其中以新加坡提出的技術方案最具代表性,他的智能家居系統(tǒng)包括三表抄送、安防報警、家電控制、家庭智能控制面板、監(jiān)控中心等功能,目標在于將家庭中與信息相關的通信設備、家用電器和家庭安防裝置通過總線技術連接到家庭智能化系統(tǒng)上,從而進行集中或遠程控制和管理。在未來,智能家居不僅要為用戶提供健康、舒適安全和安全的生活環(huán)境,而且用戶還能夠
遠程控制家庭電器設備和監(jiān)控自己的家居狀態(tài)。因此,本系統(tǒng)家從遠程要滿足這樣的需求,一方面需要把家庭無線網(wǎng)絡接入互聯(lián)網(wǎng),因為互聯(lián)網(wǎng)已經(jīng)滲透到我們生活的各個角落,通過互聯(lián)網(wǎng)可以隨時隨地的遠程控制家庭電器設備和監(jiān)控自己的家居狀態(tài);另一方面在家庭內部采用無線網(wǎng)絡技術,這樣可以提供更大的靈活性、流動性,更符合家庭網(wǎng)絡簡潔性、靈活性、模塊化、擴展性及獨立性的通信特點。因此本系統(tǒng)將從網(wǎng)絡化和無線化兩方面著手來構建智能家居系統(tǒng)。
2 系統(tǒng)的總體設計
為了讓智能家居控制系統(tǒng)之間實現(xiàn)無線通信,以及為了方便以后擴展外圍模塊去實現(xiàn)更多的功能,本設計基于嵌入式智能家居監(jiān)測控制系統(tǒng)在擬采用模塊化設計,擬由4個子系統(tǒng)組成:ARM控制中心、協(xié)調器、節(jié)點1、節(jié)點2,其系統(tǒng)總體如圖1所示。
ARM控制中心主要完成的工作有:處理協(xié)調器發(fā)過來的信息,并且將相關的控制信息發(fā)送給協(xié)調器;其內部安裝嵌入式 WEB服務器,主人可以通過網(wǎng)頁獲取各個節(jié)點的工作狀態(tài)和控制各個節(jié)點的工作。此外,它還要處理火災,盜賊闖入燈異常信息,然后通過GPRS模塊用短信把相應的報警信息發(fā)送給主人。
協(xié)調器主要負 責ARM控制中心和各個節(jié)點之間的無線通信。一方面接收節(jié)點1和節(jié)點2的數(shù)據(jù),然后通過串口送入到ARM控制中心進行處理;另一方面可以把前端的控制指令轉發(fā)給相應的節(jié)點。
節(jié)點1的功能:把傳感器采集到的溫度數(shù)據(jù)實時的通過無線傳輸給協(xié)調器;當有火情和盜賊闖入的時候,蜂鳴器立即報警并把相應的信息通過無線發(fā)送給協(xié)調器;實現(xiàn)對點燈的控制。
節(jié)點2完成 “電器”的定時控制功能。定時器的定時時間可以通過客戶機來設定,并且可以通過網(wǎng)絡查詢定時器的剩余時間;在此,實現(xiàn)濕度的監(jiān)測。
3 系統(tǒng)的硬件設計
3.1 控制中心的設計
本設計中采用的ARM芯片為 S3C2440,S3C2440是由三星公司生產(chǎn)的一種性價比很高的CPU芯片,由于該芯片價格低、功耗低和體積小等顯著的特點,主要用于手持設備和一般類型應用的設備。
控制中心硬件電路主要有主控模塊(S3C2440)、存儲單元(64M SDRAN 和64M Nand Flash)、以太網(wǎng)接口、串行通信接口等,其硬件結構如圖2所示。
3.2 手機短消息模塊
系統(tǒng)采用的是SIM300模塊,該模塊是SICOM公司研制和生產(chǎn)的 GSM/GPRS無線通信模塊,其可以實現(xiàn)的功能有 GPRS網(wǎng)絡數(shù)據(jù)收發(fā)、語音通話、短信收發(fā)、彩信收發(fā)等[5]。本系統(tǒng)主要用到的功能是短信的發(fā)送,當有火災或者盜賊 闖 入 的 時 候,系統(tǒng)會議短信的方式告訴主人。
SIM300和S3C2440之間是通過串口通信的。其短信數(shù)據(jù)傳輸硬件組成如圖3所示。
3.3 nRF24L01無線模塊
目前比較流行的無線通信技術有 Z-Wave和 Zigbee技術。Z-Wave是一種高可靠性、低 成 本、低 功的短距離無線傳輸技術,其信號室內傳輸距離為30m,室外可達100m,數(shù)據(jù)傳輸速率可達906k/s;單 一 家 庭 網(wǎng) 絡 可達 到232個節(jié)點,可滿足一般家庭的需要。目前市場上已經(jīng)出現(xiàn)了關于Z-Wave的智能家居產(chǎn)品,但是Z-Wave聯(lián)盟沒有開放它的相關標準,阻礙了關于產(chǎn)品的開發(fā)和擴展。
ZigBee技術是一種基于IEEE802.15.4協(xié)議的短距離通信標準。一 個ZigBee網(wǎng)絡可以包 含65536個 節(jié)點,并且各個節(jié)點間的通信非??煽浚送?,ZigBee標準是一個開放的標準。但是ZigBee器件的成本是相當?shù)陌嘿F。為了克服上面的問 題,本系統(tǒng)現(xiàn)選擇了nRF24L01無線通信模塊,該塊工作在2.4g頻段,價格低廉,配合 ATmea16單 片 機使用不經(jīng)可以節(jié)省成本,而且可以減低開發(fā)難度。nRF24L01模 塊的系統(tǒng)原理如圖4所示。
4 系統(tǒng)的軟件設計
系統(tǒng)的軟件設計主要包括6部分,分別為遠程控制WEB前端設計 、手機短消息模塊 、控制中心程序的設 計 、協(xié)調器的程序設計 、節(jié) 點1和節(jié)點2的程序設 計 。
4.1 遠程控制WEB前端的程序設計
系統(tǒng)頁面主要由htm語言、javascript腳本語言設計而成,完成的主要功能有顯示家電的狀態(tài),顯示室內環(huán)境的參數(shù)如:溫濕度,控制家電等。系統(tǒng)的控制頁面如圖5所示。
4.2 控制中心程序的設計
本系統(tǒng)上面用到的操作系統(tǒng)是linux,其上面移植有BOA服務器 ,BOA服務器非常適合單任務的HTTP服務,并且其支持CGI接口 。CGI程 序 可 以 采用she腳本語言、pre、php、c語言等語言來實現(xiàn) ,但是由于c語言的兼用性表較好 ,以及用C語 言編寫的CGI程序可以直接在boa服務器面執(zhí)行且比較小,因此 ,本系統(tǒng)用c語言作為CGI程序的開發(fā)語言。用C語言編寫CGI程序設計到字符串的處理 ,因此是一個非常復雜且容易出錯的過程 ,但幸運的是可以借助第三方庫CGI來 編 寫CGI程 序。 如圖6所示控制中心程序的流程。系統(tǒng)采用的是雙線程并行執(zhí)行的 ,一條進程用來讀取串口發(fā)送過來的信息并重定向顯示到網(wǎng)頁上 ,另一條進程用來解析網(wǎng)頁中的控制信息,并將相關信息發(fā)送出去 。線程1和線程2的流程如圖6a和b所示 。
4.3 手機短消息模塊程序設計
SIM300和S3C2440之間是通過串口通信的。中 文短信的發(fā)送要進過如下步驟:1)變換號碼;2)短信內容編碼;3)PDU格式編碼;4)短信的發(fā)送。根據(jù)這4部分 在Linux環(huán)境下編寫了如下短信發(fā)送程序。
4.4 協(xié)調器的程序設計
協(xié)調器主要完成的功能有,將nRF24L01接受到的數(shù)據(jù)通過串口發(fā)送給ARM;將串口接受到的數(shù)據(jù)通過nRF24L01發(fā)送出去。協(xié)調器的主函數(shù)程序流程如圖7所示。
在此函數(shù)中中斷有2個,1個是串口接受中斷 ,1個是INT2中斷 。串口接受中斷函數(shù)的主要功能是將串口接受到的控制信息發(fā)送給相應的目標板 ;INT2中斷函數(shù)的功能是將無線模塊接受到的信息通過串口 傳給ARM。
4.5 節(jié)點1的程序流程
發(fā)送機1的功能:完成與協(xié)調器之間無線通信;定時采集溫度信息;當有火情出現(xiàn)時,蜂鳴器立即報警,并立即向接收機0發(fā)送無線數(shù)據(jù);當有盜賊闖入的時候,蜂鳴器報警,并立即接收 機0發(fā) 送 無 線 數(shù) 據(jù);同時接收接收機0發(fā)送過來的無線數(shù)據(jù),通過解碼后去控制LED燈的亮滅。節(jié)點1的函數(shù)流程圖如圖8所示。
4.6 節(jié)點2的程序設計
節(jié)點2主要完成的功能是完成同協(xié)調器的無線通信通過按鍵來定時;通過WEB前端來定時,顯定時器的剩余信息。節(jié)點2的程序設計流程如圖9所示

5 系統(tǒng)測試
要對系統(tǒng)的性能和功能有個全面的了解,看起是否滿足現(xiàn)實什么的需要,就必須對系統(tǒng)進行。整個系統(tǒng)的測試采用分模塊的測試辦法進行。
5.1 射頻發(fā)射模塊的測試
對該模塊的測試,首先需要個節(jié)點部分的nRF24L01工作在發(fā)射狀態(tài) ,連續(xù)不斷的發(fā)射數(shù)據(jù),然后驗證協(xié)調器部分的nRF24L01射頻模塊能否接收到正確的數(shù)據(jù) 。協(xié)調器通過串口與上位機相 連 接 ,通 過 查 看securecrt的 打印信息來驗證接收到的數(shù)據(jù)。經(jīng)過以上測試可以驗證智能家居 的無線部分是否正常工作 。
理論上nRF24L01無線模塊的傳輸距離是100m。經(jīng)測量nRF24L01在無障礙的情況下的傳輸距離是45m;如果中間有一個障礙物的話,實際的傳輸距離迅速遞減到15m。表1是傳輸50個字節(jié)的數(shù)據(jù)。
? ? ? ?節(jié)點2主要完成的功能是完成同協(xié)調器的無線通信通過按鍵來定時;通過WEB前端來定時定時器的剩余信息。節(jié)點2的程序設計流 程如圖9所 示
以100m2的住宅為例,兩點之間最遠的地方為14m,因此nrf24l01無線射頻模塊可以滿足智能家居各個節(jié)點之間的無線傳輸需求。
5.2 溫度檢測模塊的測試
將節(jié)點1和市面上常用的溫度計放在裝有空調的房間中進行測試,通過調節(jié)空調的溫度來控制室內的溫度,然后將檢測的溫度同溫度計上面顯示的溫度進行比較。通過6次實驗,得到6組不同的實驗。實驗數(shù)據(jù)表2所示。
通過上面數(shù)據(jù)可以看出系統(tǒng)測量的溫度與溫度計所測的溫度非常接近,最大的溫差為0.4°,平局誤差約為0.3°例外,將該模塊放在冰箱的冷凍室和剛燒開的開水中,分別測 得溫度為 —105和98°。因 此 ,可以看出該模塊能很好的反映實際 的環(huán)境溫 度 。
5.3 紅外報警系統(tǒng)的測試
首先將紅外報警所在的節(jié)點1放在離地面1.5m左右的桌子上面,測試30次,未發(fā)生錯誤報警的情況。實驗表明,報警范圍在室內是30m左右,在 室外到50m。
5.4 火災報警系統(tǒng)的測試
本實驗參考,國家標準GB4515《點型感煙火災探測器技術要求及試驗方法》的要求,布置了一個火災實驗室,活在設在實驗室的中心地面上,由于 MQ2煙霧傳感器在節(jié)點2上面,所以將節(jié)點2安置在距離活在3m的上空。采用國標 GB4515中的標準試驗火SH2-90根棉繩點火進行實驗。將棉繩綁在節(jié)點1所在的支架上面,點燃后迅速熄滅火焰,使棉繩產(chǎn)生持續(xù)的煙霧。表3是6次實驗采集的數(shù)據(jù)。
從以上數(shù)據(jù)可以看出火災報警系統(tǒng)能夠對火災產(chǎn)生準確的響應。
5.5 對電器的控制
由于本系統(tǒng)沒有連接實際的電器,對點燈的控制本系統(tǒng)才有4個LED燈做替代。對空調的控制,無非就是設定的定時時間、控制溫度。因此,本系統(tǒng)有一個思維數(shù)碼管做一個替代空調。通過實驗,可以看到,可以達到通過網(wǎng)頁對它們的控制。
結論
設計了一種基于BOA和nRF24l01的智能家居系統(tǒng)。實現(xiàn)了通過web對家庭環(huán)境的監(jiān)測,闖入的監(jiān)測 ,對火災的監(jiān)測和對家電的遠程控制等功能 。本系統(tǒng)能基本滿足一般家庭的需要, 具有智能、成本低廉等優(yōu)點 。此外,本系統(tǒng)經(jīng)過簡單的改進之后可以應用在智能交通監(jiān)測體統(tǒng) ,森林防火系統(tǒng)以及智能用電家居系統(tǒng)中。因此本系統(tǒng)具有非常廣闊的應用前景 。
評論