嵌入式智能家居控制系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)
掃描二維碼
隨時(shí)隨地手機(jī)看文章
引言
伴隨著人們工作節(jié)奏的加快和工作環(huán)境的不確定性,人 們?cè)絹碓阶⒅鼐幼…h(huán)境的安全,希望能在第一時(shí)間知道家中 的安全情況,因此,設(shè)計(jì)一種智能家居遠(yuǎn)程控制系統(tǒng)具有良 好的實(shí)際意義[%目前,大多數(shù)嵌入式系統(tǒng)都以處理器為核心, 與一些檢測(cè)、監(jiān)控設(shè)備配合實(shí)現(xiàn)一定的功能,但是由于視頻圖 像傳輸?shù)挠绊懸约氨O(jiān)控界面的問題,客戶端的遠(yuǎn)程監(jiān)控效果并不理想。如果嵌入式智能家居系統(tǒng)能夠連接到Internet和 GPRS模塊,則用戶可以通過遠(yuǎn)程登錄界面來了解家居環(huán)境信息。因此,本文提出了一款具有網(wǎng)絡(luò)功能的智能家居控制系 統(tǒng)的實(shí)現(xiàn)方案,使用火狐瀏覽器作為上位機(jī),采用JPEG高效 壓縮算法對(duì)視頻圖像進(jìn)行壓縮,用戶不僅可以通過瀏覽器 監(jiān)測(cè)家居環(huán)境信息,還可以訪問Web服務(wù)器中的視頻,同時(shí), GPRS通信模塊還能將異常信息以短信方式通知用戶,提高了 智能家居控制的靈活性叫
1系統(tǒng)架構(gòu)
系統(tǒng)采用S3C2440處理器作為主控芯片,該芯片是基于 ARM920T內(nèi)核的RISC微處理,S3C2440處理器內(nèi)部集成 了很多控制器接口,便于與外部器件連接。整個(gè)系統(tǒng)通過傳 感器檢測(cè)家居環(huán)境,USB攝像頭采集視頻數(shù)據(jù)。當(dāng)系統(tǒng)接入 Internet,用戶就可以登陸家居管理主頁(yè),查看各種傳感器的 數(shù)據(jù)信息,操作室內(nèi)照明燈,還可以瀏覽家居畫面。當(dāng)室內(nèi)有 危險(xiǎn)時(shí)還能觸發(fā)本地蜂鳴器報(bào)警,并能通過GPRS通信系統(tǒng) 向用戶發(fā)送緊急短信。整個(gè)系統(tǒng)的結(jié)構(gòu)如圖1所示。
圖1系統(tǒng)結(jié)構(gòu)框圖
1.1硬件設(shè)計(jì)
(1)嵌入式微處理器
本設(shè)計(jì)使用TX2440A開發(fā)板進(jìn)行設(shè)計(jì)。采用S3C2440 處理器作為主控芯片,主頻可以達(dá)到400 MHz,具有MMU 管理單元、控制器、支持外部存儲(chǔ)器,板載64 MB SDRAM, 256 MB NAND Flash,LCD顯示部分為3.5英寸TFT真彩色 液晶屏,網(wǎng)絡(luò)芯片為DM9000,1個(gè)10M以太網(wǎng)RJ-45接口, 4 個(gè) USB Host,1 個(gè) USB Slave B 型接口。TX2440A 開發(fā)板 上還擴(kuò)展了豐富的接口,如藍(lán)牙接口、CAN接口、ZigBee接 口等,方便進(jìn)行軟件調(diào)試以及系統(tǒng)測(cè)試。
( 2) 視頻采集模塊
采用了 ZC301攝像頭,利用Linux提供的Video4 Linux API函數(shù)對(duì)USB攝像頭采集視頻數(shù)據(jù),然后將視頻數(shù)據(jù)通 過內(nèi)部總線發(fā)送到視頻流服務(wù)器MJPG-streamer上,視頻 流服務(wù)器將視頻圖像數(shù)據(jù)進(jìn)行壓縮后,采用TCP/IP協(xié)議進(jìn)行 遠(yuǎn)程傳輸,再通過CGI函數(shù)集實(shí)現(xiàn)客戶端與服務(wù)器的之間的 交互,遠(yuǎn)端客戶機(jī)通過瀏覽器就可以查看現(xiàn)場(chǎng)監(jiān)控畫面。
( 3) 傳感器模塊
本系統(tǒng)采用DS18B20溫度傳感器采集室內(nèi)溫度;采用 HIH-4000濕度傳感器采集室內(nèi)的濕度;采用DSM501A粉塵 傳感器來檢測(cè)室內(nèi)粉塵濃度;采用PIP探頭LH1778為核心的 檢測(cè)電路來檢測(cè)是否有人員入侵,并利用蜂鳴器進(jìn)行本地報(bào) 警和GSM短信報(bào)警。這些傳感器模塊通過S3C2440的I/O 口接到控制中心,并把采集到的信息發(fā)送到Web服務(wù)器上。
(4) GPRS通信模塊
GPRS通信模塊選用西門子電氣公司生產(chǎn)的MC351,該 模塊可以提供語(yǔ)音傳輸、彩信業(yè)務(wù)和數(shù)據(jù)傳輸業(yè)務(wù)等接口, 內(nèi)置了彩信MMS協(xié)議和TCP/IP協(xié)議。該模塊與處理器 S3C2440采用串型端口進(jìn)行數(shù)據(jù)通信,MC35i上的TXD0端口 主要用于接收處理器發(fā)送的數(shù)據(jù);GPRS模塊上的RXD0端 口用于向處理器發(fā)送數(shù)據(jù)。通信模塊將GPRS網(wǎng)絡(luò)和Internet 網(wǎng)絡(luò)鏈接起來,通過與監(jiān)控中心建立通信鏈路來進(jìn)行雙向的 數(shù)據(jù)通信。
1.2軟件設(shè)計(jì)
軟件設(shè)計(jì)主要完成應(yīng)用程序的設(shè)計(jì)和監(jiān)測(cè)界面的實(shí)現(xiàn)。 應(yīng)用程序通過調(diào)用驅(qū)動(dòng)程序從而實(shí)現(xiàn)對(duì)硬件的控制,主要完 成室內(nèi)環(huán)境監(jiān)測(cè)模塊、照明控制模塊和視頻監(jiān)控模塊等軟件 設(shè)計(jì),該應(yīng)用程序使用CGI語(yǔ)言實(shí)現(xiàn),將CGI嵌入式網(wǎng)頁(yè)中, 用戶通過調(diào)用CGI程序,以表單的方式將返回信息呈現(xiàn)給用戶, 從而實(shí)現(xiàn)網(wǎng)絡(luò)監(jiān)控。
(1)環(huán)境檢測(cè)模塊的軟件設(shè)計(jì)
該模塊設(shè)計(jì)主要是檢測(cè)室內(nèi)的溫度、濕度、和粉塵濃度, 整個(gè)流程是先由傳感器獲取室內(nèi)的狀態(tài)信息,然后通過網(wǎng)絡(luò) 將信息傳輸?shù)椒?wù)器平臺(tái)上。用戶通過操作平臺(tái)就可以查看室 內(nèi)環(huán)境信息,當(dāng)達(dá)到危險(xiǎn)值時(shí),蜂鳴器進(jìn)行報(bào)警,同時(shí)微處 理器通過串口向GSM短信模塊發(fā)送命令,通知用戶家中有危 險(xiǎn)。以溫度傳感器為例的溫度采集流程圖如圖2所示。
( 2)照明模塊的軟件設(shè)計(jì)
該模塊主要設(shè)計(jì)室內(nèi)照明,系統(tǒng)采用開發(fā)板上的 LED1~LED3燈分別來模擬室內(nèi)照明燈。在/www/Leddate目 錄下建立一個(gè)文本文件:led.txt,保存LED燈的狀態(tài)信息, 將每次對(duì)LED燈的操作進(jìn)行數(shù)據(jù)實(shí)時(shí)更新。
( 3)視頻監(jiān)控模塊的軟件設(shè)計(jì)
視頻監(jiān)控實(shí)現(xiàn)分為三個(gè)部分:視頻圖像采集、視頻數(shù)據(jù) 傳輸、視頻圖像顯示。通過Linux系統(tǒng)內(nèi)部的V4L對(duì)視頻圖 像采集,將采集到的原始圖像數(shù)據(jù)通過JPEG壓縮輸出給客 戶端進(jìn)行實(shí)時(shí)播放,網(wǎng)絡(luò)傳輸中應(yīng)用層采用TRTP /RTCP協(xié) 議配合來保證傳輸?shù)馁|(zhì)量,傳輸層與網(wǎng)絡(luò)層采用TCP/IP協(xié)議。 同時(shí)移植BoaWeb服務(wù)器,通過CGI監(jiān)聽客戶端的請(qǐng)求,從 而實(shí)現(xiàn)與客戶端的網(wǎng)絡(luò)交互。視頻監(jiān)控的軟件設(shè)計(jì)框圖如 圖4所示。
1.3監(jiān)測(cè)界面的實(shí)現(xiàn)
根據(jù)CGI程序的工作原理,監(jiān)控頁(yè)面主要分兩部分組 成:靜態(tài)表單頁(yè)面設(shè)計(jì)和動(dòng)態(tài)Web頁(yè)面設(shè)計(jì),使用HTML 來設(shè)計(jì)靜態(tài)頁(yè)面,使用CGI技術(shù)制作動(dòng)態(tài)頁(yè)面。當(dāng)用戶通 過瀏覽器訪問Web服務(wù)器時(shí),訪問的第一個(gè)文件是index. html,將彈出一個(gè)對(duì)話框要求用戶輸入登錄信息,進(jìn)行身份驗(yàn) 證,由login.cgi對(duì)用戶的登陸信息進(jìn)行驗(yàn)證,通過認(rèn)證之后, 用戶才能進(jìn)入系統(tǒng)的主頁(yè)面main.html,在main.html主頁(yè)面 里為用戶提供三種功能:家居環(huán)境檢測(cè);室內(nèi)電燈控制;網(wǎng)絡(luò) 視頻監(jiān)控。其中家居環(huán)境檢測(cè)、報(bào)警信號(hào)、照明燈由main.cgi 程序進(jìn)行控制,每個(gè)模塊利用CGI傳輸數(shù)據(jù)和操作指令,完 成照明燈的操作和數(shù)據(jù)保存;網(wǎng)絡(luò)視頻由視頻流服務(wù)器Mjpg- streamer通過網(wǎng)絡(luò)傳輸?shù)綖g覽器。當(dāng)鼠標(biāo)點(diǎn)擊視頻查看按鈕時(shí), 該頁(yè)面會(huì)鏈接到stream.html上,顯示視頻監(jiān)控畫面,在此界 面上,點(diǎn)擊左側(cè)的菜單可以進(jìn)行遠(yuǎn)程畫面拍照,點(diǎn)擊控制菜單 將進(jìn)入視頻參數(shù)調(diào)整界面。
鏈接部分的HTML語(yǔ)句如下:
<a href="http : //202.117.66.20/ main.cgi">
<a href="http : //202.117.66.20 : 8080/stream.html"><img
src="/?action=stream" width="512px" height="384px"/>
其中202.117.66.20為Boa服務(wù)器及硬件電路板的IP地址, href的內(nèi)容為鏈接的地址,img里的src為該鏈接的顯示圖標(biāo)。
表1系統(tǒng)主要頁(yè)面功能說明表
序號(hào) |
程序名 |
功能描述 |
1 |
index.htm 1 |
用戶登錄界面 |
2 |
main.hm 1 |
智能家居監(jiān)控主頁(yè) |
3 |
stream.h血 1 |
視頻監(jiān)控畫面,實(shí)時(shí)顯示視頻設(shè)備捕獲的 |
視頻圖象 |
||
4 |
static.hm 1 |
監(jiān)控拍照頁(yè)面,實(shí)現(xiàn)對(duì)實(shí)時(shí)視頻當(dāng)下時(shí)刻 圖像進(jìn)行捕捉 |
5 |
login.cgi |
用戶登錄判定程序 |
6 |
main.cgi |
照明燈控制,環(huán)境監(jiān)測(cè)及報(bào)警系統(tǒng)程序 |
2系統(tǒng)測(cè)試
本測(cè)試方案是將開發(fā)板和PC主機(jī)通過路由器接入局域 網(wǎng),查看主機(jī)的IP地址為“202.117.66.100”,將ARM9開發(fā) 板的IP地址設(shè)置為“202.117.66.20”,使其與主機(jī)的IP地址 在同一網(wǎng)段。將主機(jī)與開發(fā)板在超級(jí)終端中Pmg通網(wǎng)絡(luò);然 后進(jìn)入開發(fā)板的MjPg-streamer目錄,并啟動(dòng)視頻監(jiān)控系統(tǒng) 的服務(wù)端[2];最后在客戶端火狐瀏覽器的地址欄輸入http : //202.117.66.20,就可以進(jìn)入用戶登錄界面。用戶登陸界面截 圖如圖4所示。
圖4用戶登錄界面
當(dāng)用戶輸入正確的用戶名和密碼后,登陸到遠(yuǎn)程控制主 界面,在主頁(yè)面就可以查看室內(nèi)的狀態(tài)信息,用戶可以通過 按鈕控制室內(nèi)的照明燈,遠(yuǎn)程控制界面截圖如圖5所示。
圖5遠(yuǎn)程控制界面
當(dāng)用戶點(diǎn)擊視頻查看鏈接后,將進(jìn)入視頻監(jiān)控界面,在 此界面可以觀看從攝像頭采集到的實(shí)時(shí)畫面,還能拍照、調(diào) 整視頻參數(shù),監(jiān)控畫面為實(shí)驗(yàn)室一角,在實(shí)驗(yàn)室的測(cè)試過程中, 監(jiān)控視頻畫面清晰流暢,網(wǎng)絡(luò)延遲較小。監(jiān)控畫面截圖如圖6 所示。
圖6視頻監(jiān)控畫面
3結(jié)語(yǔ)
本文提出了一種嵌入式的智能家居控制系統(tǒng)的實(shí)現(xiàn)方案。 介紹了系統(tǒng)的硬件組成、主要模塊的軟件設(shè)計(jì)過程、監(jiān)控界 面的實(shí)現(xiàn)過程、Web服務(wù)器的構(gòu)建與實(shí)現(xiàn)視頻網(wǎng)絡(luò)傳輸?shù)取?系統(tǒng)實(shí)現(xiàn)了家居環(huán)境中各參數(shù)的實(shí)時(shí)采集、安防檢測(cè)、照明燈 控制,視頻信息的智能化處理,以及家中有危險(xiǎn)時(shí)的報(bào)警功能。 主要特點(diǎn)是易搭建、操作簡(jiǎn)單、成本低廉,基本達(dá)到設(shè)計(jì)的要 求,有良好的應(yīng)用價(jià)值。下一步可以研究采用手機(jī)對(duì)智能家居 的遠(yuǎn)程控制,使用更加方便。
20211223_61c40d06a4c01__嵌入式智能家居控制系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)