汪建春,胡曉進(jìn)
隨著計(jì)算機(jī)技術(shù)、網(wǎng)絡(luò)技術(shù)和自動(dòng)控制技術(shù)的迅猛發(fā)展,家庭智能化和信息化應(yīng)運(yùn)而生,它為人們提供集信息安全、生活舒適、通訊快捷為一體的居住空間,使家居智能化、信息化、數(shù)字化及網(wǎng)絡(luò)化成為現(xiàn)實(shí)。隨著3G、4G時(shí)代的到來,移動(dòng)數(shù)據(jù)傳輸能力得到提高,使得人們通過移動(dòng)終端實(shí)時(shí)、快速監(jiān)測(cè)家居環(huán)境成為可能[1,2]。
移動(dòng)終端遠(yuǎn)程控制作為一個(gè)嶄新課題與常規(guī)的遙控方式相比,顯示出一定的優(yōu)越性。短消息、彩信通過GSM(Global System for Mobile Communication)或GPRS(General Packet Radio Service)服務(wù)中心提供文本信息、多媒體信息的收發(fā)服務(wù),其中服務(wù)中心完成存儲(chǔ)和轉(zhuǎn)發(fā)功能。利用服務(wù)中心進(jìn)行無線通信具有雙向數(shù)據(jù)傳輸功能,性能穩(wěn)定,為遠(yuǎn)程數(shù)據(jù)傳輸和監(jiān)控設(shè)備的通信提供一個(gè)強(qiáng)大的支持平臺(tái)[3,4]。
圖1為智能家居系統(tǒng)架構(gòu)示意圖。當(dāng)移動(dòng)終端想獲取家居控制系統(tǒng)實(shí)時(shí)數(shù)據(jù),通過GSM網(wǎng)絡(luò)發(fā)送文本短消息SMS到控制器??刂破鞲鶕?jù)文本內(nèi)容,控制器選擇不同IP地址和網(wǎng)絡(luò)端口,通過局域網(wǎng)將控制數(shù)據(jù)包發(fā)送到各監(jiān)控設(shè)備。監(jiān)控設(shè)備根據(jù)控制數(shù)據(jù)包進(jìn)行監(jiān)控動(dòng)作,并將數(shù)據(jù)進(jìn)行打包,回送給控制器。控制器獲得數(shù)據(jù)后解包并將相應(yīng)的數(shù)據(jù)通過GPRS網(wǎng)絡(luò)發(fā)送到移動(dòng)終端。
當(dāng)各監(jiān)控設(shè)備檢測(cè)到異常情況時(shí),通過局域網(wǎng)絡(luò)將監(jiān)測(cè)到異常數(shù)據(jù),如家中有人闖入、電器設(shè)備異常等,發(fā)送到控制器。控制器通過GPRS將異常發(fā)送到移動(dòng)終端。
圖1 智能家居系統(tǒng)架構(gòu)示意圖
整體硬件架構(gòu)如圖所示,控制器采用嵌入式S3C2440模塊通過串口與TC35模塊實(shí)現(xiàn)數(shù)據(jù)傳輸。TC35模塊通過GPRS/GSM網(wǎng)絡(luò)將監(jiān)控?cái)?shù)據(jù)傳輸?shù)揭苿?dòng)終端。各監(jiān)控設(shè)備通過S3C2440模塊的網(wǎng)絡(luò)端口與控制器S3C2440模塊網(wǎng)絡(luò)端口組建局域網(wǎng)絡(luò),實(shí)現(xiàn)數(shù)據(jù)的傳輸與交互,如圖2所示。
圖2 數(shù)據(jù)傳輸與交互
TC35是西門子推出的一款無線通信模塊,設(shè)計(jì)緊湊。TC35與GSM 2/2+兼容,雙頻(GSM900/GSM1800)工作,帶有RS232數(shù)據(jù)口。符合ETSI標(biāo)準(zhǔn)GSM0707和GSM0705,且易于升級(jí)為GPRS模塊。該模塊集射頻電路和基帶于一體,向用戶提供標(biāo)準(zhǔn)的AT命令接口,為數(shù)據(jù)、語音和短消息提供快速、可靠、安全的傳輸,方便用戶的應(yīng)用開發(fā)及設(shè)計(jì)。在系統(tǒng)中S3C2440通過RS232與其相連。
圖3 系統(tǒng)流程圖
嵌入式處理芯片S3C2440芯片是三星公司以ARM為架構(gòu)所推出的ARM920T的微處理器核心。具備16KB的指令緩存和16KB 數(shù)據(jù)緩存。內(nèi)存管理單元協(xié)處理器進(jìn)行內(nèi)存存儲(chǔ)管理,外部存儲(chǔ)控制器進(jìn)行SDRAM控制和片選控制。提供1通道LCD控制器并支持DMA數(shù)據(jù)傳輸。3通道通用異步接受發(fā)送器UART。8通道10位模數(shù)轉(zhuǎn)換和觸摸屏接口,130個(gè)通用I/O口和24通道外部中斷源。系統(tǒng)電源管理模塊具備普通,慢速,空閑和掉電模式,使系統(tǒng)運(yùn)行更省電。
控制器及監(jiān)控設(shè)備軟件是基于LINUX操作系統(tǒng)上開發(fā),LINUX操作系統(tǒng)是一款源代碼開放的自由軟件。LINUX具有良好的軟件開發(fā)工具、可移植性并支持多線程和多進(jìn)程編程[5]。針對(duì)系統(tǒng)特點(diǎn),軟件采用多線程編程方式,多線程具備并發(fā)執(zhí)行、共享主進(jìn)程資源等特性。
系統(tǒng)上電后,初始化串口、TC35無線通訊模塊。通過函數(shù)pthread_create創(chuàng)建TC35監(jiān)控及局域網(wǎng)絡(luò)監(jiān)控子線程。利用條件變量pthread_cond_init實(shí)現(xiàn)子線程的調(diào)度。主控制器通過循環(huán)監(jiān)測(cè)各子線程的條件變量,當(dāng)TC35模塊收到信息,系統(tǒng)解析信息內(nèi)容,并判斷終端想獲取的監(jiān)控模塊數(shù)據(jù)。主控制器停止TC35監(jiān)控線程、網(wǎng)絡(luò)監(jiān)控線程的運(yùn)行。通過局域網(wǎng)向監(jiān)控模塊發(fā)出數(shù)據(jù)請(qǐng)求。監(jiān)控模塊通過局域網(wǎng)將監(jiān)控?cái)?shù)據(jù)回傳給系統(tǒng),主控制器將數(shù)據(jù)通過串口將數(shù)據(jù)經(jīng)TC35無線通訊模塊發(fā)送到移動(dòng)終端。重新啟動(dòng)TC35監(jiān)控線程、網(wǎng)絡(luò)監(jiān)控線程。
當(dāng)監(jiān)控模塊檢測(cè)到異常,向上請(qǐng)求數(shù)據(jù)傳輸。網(wǎng)絡(luò)監(jiān)控子線程接受到異常信號(hào)后,主控制器暫停TC35監(jiān)控線程、網(wǎng)絡(luò)監(jiān)控線程,并獲得異常監(jiān)控設(shè)備的IP地址及終端號(hào)。主進(jìn)程通過IP地址及端口號(hào),與監(jiān)控設(shè)備建立網(wǎng)絡(luò)聯(lián)結(jié),進(jìn)行監(jiān)控?cái)?shù)據(jù)傳輸。主控制器將獲得的數(shù)據(jù)通過TC35模塊發(fā)送到移動(dòng)終端,如圖3所示。
系統(tǒng)依靠局域網(wǎng)絡(luò),通過TCP/IP編程實(shí)現(xiàn)監(jiān)控模塊與主控制器實(shí)現(xiàn)數(shù)據(jù)傳輸。通過函數(shù)socket創(chuàng)建面向TCP/IP協(xié)議、流套接字,bind函數(shù)套接字綁定在一個(gè)固定的端口上,listen函數(shù)將套接字轉(zhuǎn)換為被動(dòng)傾聽套接字,accept函數(shù)從建立連接的隊(duì)列中接受一個(gè)連接,read/write函數(shù)用于數(shù)據(jù)接收和發(fā)送,如圖4所示。
圖4 數(shù)據(jù)接收和發(fā)送
本文敘述一種新型的智能家居系統(tǒng)架構(gòu)。通過主控制器控制無線通訊模塊,和移動(dòng)終端實(shí)現(xiàn)數(shù)據(jù)交互。主控制器通過局域網(wǎng)絡(luò)與監(jiān)控設(shè)備數(shù)據(jù)交互,從而實(shí)現(xiàn)了移動(dòng)終端與監(jiān)控設(shè)備雙向互動(dòng),即監(jiān)控設(shè)備監(jiān)測(cè)到異常,主控制器主動(dòng)發(fā)送監(jiān)控?cái)?shù)據(jù)到移動(dòng)終端;和移動(dòng)終端想獲得監(jiān)控?cái)?shù)據(jù),發(fā)送文本短消息到主控制器,主控制器啟動(dòng)監(jiān)控設(shè)備,并將監(jiān)控?cái)?shù)據(jù)回送移動(dòng)終端。
[1] 董翠英. 基于ARM與GSM的智能家居控制器設(shè)計(jì)[J]. 唐山學(xué)院學(xué)報(bào). 2010, 23(3): 37-39.
[2] 馬鴻雁. 我國(guó)智能化住宅小區(qū)發(fā)展綜述[J]. 北京建筑工程學(xué)院學(xué)報(bào), 2003, 19(1): 88-93.
[3] 王藝. 基于GPRS的嵌入式智能家居終端的設(shè)計(jì)與實(shí)現(xiàn)[J]. 微計(jì)算機(jī)信息, 2007(26): 23-25.
[4] 黃爾烈, 等. GSM技術(shù)的智能家居控制[J].遼寧工程技術(shù)大學(xué)學(xué)報(bào): 自然科學(xué)版, 2008(27): 239-241.
[5] 楊水清, 等. ARM潛入式Linux系統(tǒng)開發(fā)技術(shù)詳解[M]. 北京: 電子工業(yè)出版社, 2008.