近年來,人們的生活水平明顯提高,越來越多的人們關注家居生活。嵌入式智能家居控制系統通過構建家庭信息網絡,在家居環境中將不同家電產品結合成為一個整體,由控制系統對家電設備進行異地或者集中的智能化管理和控制,為人們提供各類家居信息,推動智能家居的快速發展。
嵌入式智能家居控制系統硬件設計要充分考慮到系統的擴展性和穩定性。嵌入式智能家居控制系統的硬件設計主要分為兩部分:控制板和核心板,控制板上主要包含一些外圍接口,核心板用來構建嵌入式家居的最小系統。
嵌入式智能家居核心板主要由外圍存儲芯片、微處理器等組成,智能家居控制系統可以采用S3C2440微處理器,S3C2440微處理器被廣泛的應用于多媒體、手持運算、便捷式通信產品等嵌入式領域,使Windows CE輕松運行,并且極大地提高嵌入式智能家居控制系統的實時性。嵌入式智能家居控制系統的GPRS模塊可以采用MC35TS芯片,將控制系統處理器和串口信號線RXD2、TXD2相連接[1]。同時,嵌入式智能家居控制系統的LCD可以由CPU進行控制,但是需要在控制系統中設置驅動電路,觸摸屏使用4線電阻式,使它和控制系統CPU的XMON、nXPON、YMON、nYPON相連。嵌入式智能家居控制系統的輸入控制信號要和CPU的GPIO端口相連接,當嵌入式智能家居控制系統在控制某個家電時,只需要將控制系統的指定端口寫入1或者0,再通過無線或者有線的方式,由智能家居控制系統的接口來控制家居的其他家電。
嵌入式智能家居控制系統要充分考慮到系統對網絡功能和實時性的要求,選擇Linux和Windows CE操作系統,綜合Windows CE操作系統的用戶界面和系統開發難度等情況,重點開發智能家居控制系統的應用層,優化Windows CE操作系統的運行。另外,在開發Windows CE.net產品時,要重點考慮三方面,其一是開發操作系統的應用程序,其二是開擦驅動程序,其三是定制操作系統內核。在操作系統開發過程中,可以采用Embedded Visual C++應用開發程序和Platform Builder內核定制工具[2]。
在構建嵌入式智能家居控制系統硬件平臺時,要根據嵌入式智能家居控制系統的具體應用,定制合適的操作系統平臺。通常情況下,嵌入式系統是一個資源非常受限的系統,并且在嵌入式智能家居控制系統硬件平臺上難以直接編寫軟件,當前主要采用目標機/宿主機模式,首先,在計算機網絡系統上編寫代碼,其次,利用交叉編譯在操作系統平臺上生成可以運行二進制文件,最后,將二進制文件下載到操作系統目標平臺上進行運行。在開發嵌入式智能家居控制系統之前,要配置和建立好交叉開發環境。
Windows CE操作系統平臺的定制過程如下:首先,選擇Windows CE操作系統基本配置,為操作系統特定平臺選擇板級支持包BSP和微處理器。其次,根據Windows CE操作系統架構和標準開發向導,構建一個特定的平臺,根據相關硬件設備適當添加和裁減組件,設置驅動程序,開發Boot Loader,如果需要修改Windows CE操作系統的配置文件,封裝操作系統的各個功能模塊,在特定平臺上編譯生成OS鏡像文件。再次,通過串口、USB或者以太網將鏡像文件下載到智能家居的目標設備上,利用Platform Builder提供的調試工具,根據Windows CE操作系統的運行情況進行調試、下載、封裝和重新配置,直到操作系統達到運行要求,創建系統平臺。最后,導出SDK軟件的開發工具包,在Windows CE操作系統平臺上運行并且安裝,在該特定硬件平臺上開發Windows CE操作系統的應用程序。SDK包含庫函數使用文檔、示例程序源代碼、頭文件程序庫、設備驅動工具包、API以及編程指導[3]。
嵌入式智能家居控制系統的中斷驅動程序和GPIO驅動,主要有兩種模型:分層驅動程序和單片驅動程序,而最常用的是分層驅動程序。分層驅動程序由提前設置好的下層和上層程序組成,下層主要是Windows CE操作系統平臺的驅動程序,上層是模型設備驅動程序,設備驅動程序接口是一套由GWES、MDD模型驅動程序調用的函數。模型設備驅動程序主要執行以下任務:其一,定義調用的系統設備驅動程序的接口函數,鏈接PDD層;其二,向Windows CE操作系統提供設備驅動程序接口函數集;其三,負責和控制系統內核和GWES模塊通信,如中斷操作。設備驅動程序接口是一個由GWES模塊和模型設備驅動程序調用的函數,模型驅動程序接口主要由即模型設備驅動程序和PDD層提供和調用。在編寫分層驅動程序時,在MDD層和PDD層上編寫DDI、DDIS函數,DDI函數主要是在嵌入式控制系統平臺上,和DDIS函數之間完成函數傳遞;DDIS函數用來調用控制系統寄存器和處理器中的參數值。
Windows CE是一個依托嵌入式應用程序的Windows操作系統,Windows CE操作系統和傳統的Windows操作系統包含一致的API。除了Windows的基本功能,在Windows CE操作系統上開發應用軟件具有更多的優勢。在開發Windows CE應用程序時,要注意以下兩個方面:一方面,開發Windows CE應用程序,必須調用Unicode字符集;另一方面,和臺式設備相比,嵌入式智能家居控制系統設備的內存空間較小,因此要盡量優化Windows CE應用程序代碼,簡化代碼流程,代碼越簡單,可以節約更多的代碼加載時間。
Windows CE操作系統應用程序利用GPIO驅動程序記錄傳感器S3C2440端口的狀態,并且將信息數據保存在Windows CE應用程序中,根據傳感器采集的相關數據信息,通過串口驅動程序調用函數,同時向GPRS模塊發送AT命令,GPRS系統可以直接將信息數據發送到用戶手機上,用戶就可以去全面掌握家里的情況。當用戶需要操作家里的家居設備時,可以直接發送短信到GPRS系統,無線通信系統將信息傳送給Windows CE操作系統應用程序,控制系統通過控制I/O口,實現家居設備的操作。
完成定制操作系統平臺、開發驅動程序和應用程序之后,在嵌入式智能家居的控制系統上下載應用程序和移植好的操作系統,通過智能家居控制系統將手機、傳感器、家電等設備聯系起來,構成一個完成的系統,實現遠程控制和本地操作。嵌入式智能家居控制系統具有很強的抗干擾能力,同時運行穩定可靠,操作方便,在未來的發展中具有廣泛的應用空間。
隨著家庭智能化技術的快速發展,家居智能控制器是嵌入式智能家居控制系統的關鍵,依靠無線通信技術,嵌入式智能家居控制系統具有低耗能、性能穩定、結構簡單等特點,應用前景非常廣闊。
[1]楊晨.嵌入式智能家居控制系統的研究[D].哈爾濱理工大學,2011.
[2]趙靜.嵌入式智能家居控制系統的研究與設計[D].武漢理工大學,2010.
[3]王留送.基于嵌入式的智能家居控制系統[D].中原工學院,2012.