汪建春,胡曉進
隨著計算機技術、網絡技術和自動控制技術的迅猛發展,家庭智能化和信息化應運而生,它為人們提供集信息安全、生活舒適、通訊快捷為一體的居住空間,使家居智能化、信息化、數字化及網絡化成為現實。隨著3G、4G時代的到來,移動數據傳輸能力得到提高,使得人們通過移動終端實時、快速監測家居環境成為可能[1,2]。
移動終端遠程控制作為一個嶄新課題與常規的遙控方式相比,顯示出一定的優越性。短消息、彩信通過GSM(Global System for Mobile Communication)或GPRS(General Packet Radio Service)服務中心提供文本信息、多媒體信息的收發服務,其中服務中心完成存儲和轉發功能。利用服務中心進行無線通信具有雙向數據傳輸功能,性能穩定,為遠程數據傳輸和監控設備的通信提供一個強大的支持平臺[3,4]。
圖1為智能家居系統架構示意圖。當移動終端想獲取家居控制系統實時數據,通過GSM網絡發送文本短消息SMS到控制器。控制器根據文本內容,控制器選擇不同IP地址和網絡端口,通過局域網將控制數據包發送到各監控設備。監控設備根據控制數據包進行監控動作,并將數據進行打包,回送給控制器。控制器獲得數據后解包并將相應的數據通過GPRS網絡發送到移動終端。
當各監控設備檢測到異常情況時,通過局域網絡將監測到異常數據,如家中有人闖入、電器設備異常等,發送到控制器。控制器通過GPRS將異常發送到移動終端。

圖1 智能家居系統架構示意圖
整體硬件架構如圖所示,控制器采用嵌入式S3C2440模塊通過串口與TC35模塊實現數據傳輸。TC35模塊通過GPRS/GSM網絡將監控數據傳輸到移動終端。各監控設備通過S3C2440模塊的網絡端口與控制器S3C2440模塊網絡端口組建局域網絡,實現數據的傳輸與交互,如圖2所示。

圖2 數據傳輸與交互
TC35是西門子推出的一款無線通信模塊,設計緊湊。TC35與GSM 2/2+兼容,雙頻(GSM900/GSM1800)工作,帶有RS232數據口。符合ETSI標準GSM0707和GSM0705,且易于升級為GPRS模塊。該模塊集射頻電路和基帶于一體,向用戶提供標準的AT命令接口,為數據、語音和短消息提供快速、可靠、安全的傳輸,方便用戶的應用開發及設計。在系統中S3C2440通過RS232與其相連。

圖3 系統流程圖
嵌入式處理芯片S3C2440芯片是三星公司以ARM為架構所推出的ARM920T的微處理器核心。具備16KB的指令緩存和16KB 數據緩存。內存管理單元協處理器進行內存存儲管理,外部存儲控制器進行SDRAM控制和片選控制。提供1通道LCD控制器并支持DMA數據傳輸。3通道通用異步接受發送器UART。8通道10位模數轉換和觸摸屏接口,130個通用I/O口和24通道外部中斷源。系統電源管理模塊具備普通,慢速,空閑和掉電模式,使系統運行更省電。
控制器及監控設備軟件是基于LINUX操作系統上開發,LINUX操作系統是一款源代碼開放的自由軟件。LINUX具有良好的軟件開發工具、可移植性并支持多線程和多進程編程[5]。針對系統特點,軟件采用多線程編程方式,多線程具備并發執行、共享主進程資源等特性。
系統上電后,初始化串口、TC35無線通訊模塊。通過函數pthread_create創建TC35監控及局域網絡監控子線程。利用條件變量pthread_cond_init實現子線程的調度。主控制器通過循環監測各子線程的條件變量,當TC35模塊收到信息,系統解析信息內容,并判斷終端想獲取的監控模塊數據。主控制器停止TC35監控線程、網絡監控線程的運行。通過局域網向監控模塊發出數據請求。監控模塊通過局域網將監控數據回傳給系統,主控制器將數據通過串口將數據經TC35無線通訊模塊發送到移動終端。重新啟動TC35監控線程、網絡監控線程。
當監控模塊檢測到異常,向上請求數據傳輸。網絡監控子線程接受到異常信號后,主控制器暫停TC35監控線程、網絡監控線程,并獲得異常監控設備的IP地址及終端號。主進程通過IP地址及端口號,與監控設備建立網絡聯結,進行監控數據傳輸。主控制器將獲得的數據通過TC35模塊發送到移動終端,如圖3所示。
系統依靠局域網絡,通過TCP/IP編程實現監控模塊與主控制器實現數據傳輸。通過函數socket創建面向TCP/IP協議、流套接字,bind函數套接字綁定在一個固定的端口上,listen函數將套接字轉換為被動傾聽套接字,accept函數從建立連接的隊列中接受一個連接,read/write函數用于數據接收和發送,如圖4所示。

圖4 數據接收和發送
本文敘述一種新型的智能家居系統架構。通過主控制器控制無線通訊模塊,和移動終端實現數據交互。主控制器通過局域網絡與監控設備數據交互,從而實現了移動終端與監控設備雙向互動,即監控設備監測到異常,主控制器主動發送監控數據到移動終端;和移動終端想獲得監控數據,發送文本短消息到主控制器,主控制器啟動監控設備,并將監控數據回送移動終端。
[1] 董翠英. 基于ARM與GSM的智能家居控制器設計[J]. 唐山學院學報. 2010, 23(3): 37-39.
[2] 馬鴻雁. 我國智能化住宅小區發展綜述[J]. 北京建筑工程學院學報, 2003, 19(1): 88-93.
[3] 王藝. 基于GPRS的嵌入式智能家居終端的設計與實現[J]. 微計算機信息, 2007(26): 23-25.
[4] 黃爾烈, 等. GSM技術的智能家居控制[J].遼寧工程技術大學學報: 自然科學版, 2008(27): 239-241.
[5] 楊水清, 等. ARM潛入式Linux系統開發技術詳解[M]. 北京: 電子工業出版社, 2008.