摘 要: 以S3C2410為核心,,以Linux操作系統(tǒng)為平臺,運用嵌入式視頻服務器設計了嵌入式智能家居監(jiān)控系統(tǒng),,實現(xiàn)了對家庭監(jiān)控的智能化管理,。同時通過GPRS和Internet實現(xiàn)了對家庭系統(tǒng)的遠程控制。
關鍵詞: ARM,;Linux,;GPRS;智能家居,;遠程監(jiān)控
智能家居系統(tǒng)利用多項高新技術把家電設備,、家庭安全防護、家居智能化以及互聯(lián)網(wǎng)有機的結合在一起,。本文闡述了基于GPRS技術,、ARM嵌入式技術、網(wǎng)絡技術以及視頻采集與傳輸技術來實現(xiàn)智能系統(tǒng)的遠程控制,。
1 總體設計
本系統(tǒng)使用FS2410開發(fā)板,、GPRS模塊以及USB攝像頭完成對現(xiàn)場的監(jiān)控功能,硬件來源于FS2410開發(fā)板自帶的資源以及相應的傳感器模塊,,如溫度傳感器,、紅外傳感器等。當溫度傳感器所測量的溫度值高于系統(tǒng)設置溫度的上限值或者紅外傳感器探測到有不法分子闖入時,,則開啟相應的報警功能,、防盜功能和滅火功能,并通過GPRS模塊以短消息的形式通知用戶,,及時反饋現(xiàn)場情況,,等待用戶操作。同時用戶可以通過Internet異地遠程實時查看現(xiàn)場情況,,并根據(jù)系統(tǒng)中定時捕獲的圖片數(shù)據(jù)以及具體情況采取不同的措施,,以達到遠程控制的目的。系統(tǒng)總體結構如圖1所示,。
2 系統(tǒng)硬件設計
家居監(jiān)控系統(tǒng)的硬件部分如圖2所示,,主要包括S3C2410主控制器、USB攝像頭,、GPRS模塊,、溫度傳感器、紅外傳感器,、報警器和SD卡等,。
系統(tǒng)選用FS2410開發(fā)板作為開發(fā)平臺,。由于該開發(fā)板資源豐富,考慮到系統(tǒng)的實際需求,,以ARM2410內(nèi)核為重點,,裁剪了必要的功能模塊,設計了家居監(jiān)控的硬件模塊,。它包含S3C2410 MCU,、2片32 MB NAND Flash、1片2 MB NOR Flash以及1片以太網(wǎng)控制芯片,,同時還包括2路串口通信模塊,、2個USB接口、1個HOST接口,、1個SD卡接口和1個液晶接口等,。
攝像頭模塊采用中星微ZC301攝像頭,它最高分辨率可達640×480,,圖像清晰,、視頻流暢且亮度和對比度可調(diào)。通過它可以抓取實時的數(shù)據(jù),,直接通過壓縮編碼技術存儲在SD卡中,,也可以把數(shù)據(jù)發(fā)送到BOA服務器中,這樣可以通過Internet查看實時情況,。
GPRS是在現(xiàn)有的GSM移動通信系統(tǒng)的基礎上發(fā)展起來的一種移動分組數(shù)據(jù)業(yè)務,。GPRS通信模塊主要由GSM基帶處理器,、GSM射頻模塊,、供電模塊、閃存,、ZIF連接器和天線接口6部分組成,,支持數(shù)據(jù)、短信,、語音和傳真業(yè)務,。該模塊在本設計中與S3C2410的UART接口1相連接。
溫度報警器模塊是由單片機(89C52)作為主控芯片,,通過RS485總線與主控制器(ARM處理器)進行通信,。溫度傳感器選用Dallas公司的單線數(shù)字溫度傳感器芯片DS18B20。該芯片與傳統(tǒng)的熱敏電阻有所不同,,它可以直接將被測溫度轉化為數(shù)字信號,,以供單片機處理,不需要再設計模數(shù)轉換電路,。此外,,它還具有微型化,、低功耗、高性能及抗干擾能力強等優(yōu)點,。用戶可以自動設定報警的上限溫度,。溫度報警器模塊如圖3所示。
紅外監(jiān)控模塊是一種能檢測人或動物身體的紅外線而輸出電信號的傳感器,。這里把它作為機器的一種傳感器來應用,。例如,在房間無人的時候,,開啟自動監(jiān)控,,結合攝像機或數(shù)碼照相機自動記錄動物和人的活動等。
SD卡是一種基于半導體快閃記憶器的新一代記憶設備,,它被廣泛地應用于便攜式裝置,,這里將其應用于系統(tǒng)中數(shù)據(jù)的快速備份。
3 系統(tǒng)軟件設計
系統(tǒng)的目標代碼運行在S3C2410上,,選用的開發(fā)平臺是ubuntu 8.10,,uboot選用的版本是0.3.2,Linux內(nèi)核選用的版本是Linux-2.6.8.1,,交叉編譯器選用的是gcc-4.1.1,,以Linux為嵌入式操作系統(tǒng)來進行開發(fā)。圖4為開機啟動的主進程,;當發(fā)現(xiàn)盜賊時,,則進入圖5所示的防盜進程;當發(fā)生火災時,,則進入圖6所示的防火進程,。
系統(tǒng)中,消息的傳遞采用共享內(nèi)存的通信方式,,共享內(nèi)存相比其他幾種方式有著更方便的數(shù)據(jù)控制能力,,數(shù)據(jù)在讀寫過程中會更透明。當成功導入一塊共享內(nèi)存后,,它只是相當于一個字符串指針來指向一塊內(nèi)存,,在當前進程下,用戶可以隨意的訪問,,決定使用共享內(nèi)存的通信方式,。在共享內(nèi)存中定義的協(xié)議如下:
typedef struct
{
short int fireflag;//防火標志
short int thief_start,;//防盜標志
short int fire_proofing_opt,;//防火開關
short int thief_proofing_opt;//防盜開關
short int fire_putout_opt,;//滅火開關
short int photo_opt,;//照相開關
short int beep_opt,;//報警開關
short int message_opt;//短消息開關
float temperature,;//溫度值
}shm_buff,;
攝像頭模塊的程序設計主要是在Linux內(nèi)核中加入對ZC301的支持。Video4Linux(簡稱V4L)是Linux中關于視頻設備的內(nèi)核驅(qū)動,,它為針對視頻設備的應用程序編程提供一系列接口函數(shù),,這些視頻設備包括現(xiàn)今市場上流行的TV卡、視頻捕捉卡和USB攝像頭等,。
溫度報警器模塊主要利用DS18B20來獲取現(xiàn)場實時的溫度值,,同時和系統(tǒng)中設置的上限值(這里設置為40℃)進行比較,如果大于上限值,,則執(zhí)行防火監(jiān)控進程,。內(nèi)核空間通過中斷方式獲取當前的溫度值,應用程序通過內(nèi)核提供的copy_to_user函數(shù)來獲取溫度數(shù)據(jù),。
紅外監(jiān)控模塊主要利用了熱釋電紅外傳感器來感受外界的變化,,產(chǎn)生跳變沿,從而產(chǎn)生中斷的方式,,以異步的方式上報事件,,進行防盜監(jiān)控。
內(nèi)核空間的設計為:
irqreturn_t s3c2410but_keyevent(),;
kill_fasync(&async_queue,,SIGIO,POLL_IN),;
//內(nèi)核空間發(fā)送SIGIO信號給用戶空間
用戶空間的設計為:
signal(SIGIO,,input_handler);//SIGIO的信號處理函數(shù)
fcntl(dev_fd,,F(xiàn)_SETOWN,,getpid());
//為應用程序指定進程為文件的屬主
oflags=fcntl(dev_fd,,F(xiàn)_GETFL);//獲取文件描述符
fcntl(dev_fd,,F(xiàn)_SETFL,,oflags|FASYNC);
//修改相應的描述符,,在設備中設置FASYNC異步標志
SD卡模塊主要是利用Linux內(nèi)核提供的udev機制處理可熱插拔/動態(tài)設備,,結合Linux下的linuxrc腳本文件,快速實現(xiàn)數(shù)據(jù)的轉移,。
為了實現(xiàn)動態(tài)Web戰(zhàn)術,,本系統(tǒng)在設計中選用了支持CGI(Common Gateway Interface)技術的BOA服務器,。CGI在物理上是一段程序,運行在服務器上,,提供同客戶端 Html頁面的接口,。
本系統(tǒng)選用SQLite數(shù)據(jù)庫,該數(shù)據(jù)庫具有功能強大,、接口簡單,、速度快、占用空間小的優(yōu)點,,使其比較適用于嵌入式系統(tǒng)中,。SQLite主要用于BOA服務器登錄的驗證。
4 系統(tǒng)的實現(xiàn)
本文結合GPRS,、Internet以及視頻采集技術實現(xiàn)了具有豐富軟硬件資源,、低成本、低功耗,、便于擴展,、升級及維護等特點的智能家居監(jiān)控系統(tǒng)。
本文基于Linux操作系統(tǒng),,利用S3C2410為主處理器,,結合GPRS以及Internet實現(xiàn)了智能家居監(jiān)控系統(tǒng)。實驗結果表明,,各項測量數(shù)據(jù)準確,,控制過程可靠,使其可以廣泛的應用于實際生活中,。
參考文獻
[1] 周曉玲.嵌入式系統(tǒng)的設計與實踐[M].北京:北京航空航天大學出版社,,2004.
[2] 周立功.S3C2410&嵌入式Linux教程[Z].廣州致遠電子有限公司.
[3] 戴麗.基于Video4Linux的USB攝像頭圖像采集實現(xiàn)[D].合肥:合肥工業(yè)大學,2008.
[4] 韋東山.嵌入式Linux應用開發(fā)完全手冊[M].北京:人民郵電出版社,,2009.
[5] 孫勇,,劉杰.基于ARM的GPRS通信終端設計[J].工業(yè)控制計算機,2010(5):49,,52.
[6] Liu Zhiwai. Research of embedded image monitor system based on ARM[D]. Xi′an:Xi′an University of Industry,,2006.