尹然然
(安徽交通職業(yè)技術學院,安徽 合肥 230051)
?
基于嵌入式Web的智能家居遠程控制系統(tǒng)
尹然然
(安徽交通職業(yè)技術學院,安徽 合肥 230051)
[摘要]本文以linux為開發(fā)平臺,設計了一種基于嵌入式Web的智能家居系統(tǒng),其中包括系統(tǒng)硬件、CGI程序和DM9000網(wǎng)卡驅動程序等,該系統(tǒng)實現(xiàn)客戶端與家居設備之間通過Web服務器進行數(shù)據(jù)交換,從而達到遠程控制的目的。該系統(tǒng)的使用和推廣將對人們的生活產(chǎn)生深遠和巨大的影響。
[關鍵詞]嵌入式系統(tǒng);Web服務器;智能家居
1引言
進入21世紀,Internet技術飛速發(fā)展,網(wǎng)絡在人們的生活中越來越重要。通過網(wǎng)絡人們可以快速獲取信息,可以便捷地與外界交流,人類社會進入了一個嶄新的現(xiàn)代化信息時代[1]。雖然網(wǎng)絡已經(jīng)給我們的生活帶來了翻天覆地的變化但是我們對它的利用可能遠不止這些。隨著嵌入式技術的發(fā)展,家用電器、手持設備、測控儀器等設備都可以統(tǒng)一在Internet網(wǎng)絡中[2],嵌入式設備接入Internet成為可能,對遠程嵌入式設備進行實時控制已逐漸成為許多專家學者研究的熱點。
人們希望通過網(wǎng)絡實現(xiàn)遠程控制,比如:舉行異地網(wǎng)絡會議、在單位控制家里有網(wǎng)絡功能的家用電器等。因此要不斷研究遠程控制的新技術來滿足人們的需求。本文以linux為開發(fā)平臺,設計了一種基于嵌入式Web的智能家居系統(tǒng),該系統(tǒng)實現(xiàn)客戶端與家居設備之間通過Web服務器進行數(shù)據(jù)交換,從而達到遠程控制的目的。
2系統(tǒng)設計
2.1結構設計
本系統(tǒng)以家居設備為主控對象采用三層體系結構,由客戶端,嵌入式Web服務器和家居設備控制接口組成。系統(tǒng)結構如圖1所示。
(1)上層是客戶端,客戶端可以通過Internet遠程瀏覽和監(jiān)測家居設備的工作狀態(tài)、遠程控制家居設備操作。
(2)中間層是嵌入式Web服務器,它作為連接Internet與家居設備的紐帶,實現(xiàn)家居設備和Internet之間的數(shù)據(jù)交換。
(3)底層是設備控制接口和數(shù)據(jù)采集接口以及接入接口的家居設備,它通過驅動控制模塊、參數(shù)采集模塊與嵌入式Web服務器之間交換數(shù)據(jù)。
2.2硬件設計
本系統(tǒng)采用S3C2440處理器,構建了嵌入式Web智能家居系統(tǒng)的硬件平臺。智能家居系統(tǒng)硬件結構主要包括下面幾個部分:處理器、網(wǎng)絡接口模塊、存儲器、電源開關、輸入/輸出接口、復位調(diào)試模塊。硬件結構如圖2所示。
2.3嵌入式智能家居系統(tǒng)Web服務器的移植
移植基于BOA進行。BOA是一個運行于linux下的,適合于嵌入式系統(tǒng)的單任務http服務器軟件,其源代碼開放、性能好。
移植具體實現(xiàn)過程是:將源代碼解壓后進入源碼目錄的 src 子目錄,對 BOA 進行配置,生成 Makefile 文件。用戶可以根據(jù)需要修改 Makefile 文件和源文件,然后運行 make 進行編譯,得到的可執(zhí)行程序 BOA。 接下來進行 BOA 的配置,使其能夠支持 CGI 程序的執(zhí)行。 然后在var目錄下建立所需的文件夾,修改初始化文件,程序即可自動運行BOA 。通過制作cramfs文件系統(tǒng),下載文件系統(tǒng),啟動Linux ,完成嵌入式Web服務器的移植。
2.4網(wǎng)卡驅動程序的設計
嵌入式系統(tǒng)具有可裁剪性[3],每個系統(tǒng)使用的軟硬件都可能有所不同,對于不同的軟硬件需要不同的驅動程序,因此,需要進行網(wǎng)卡驅動的開發(fā)。
DM9000是一種快速以太網(wǎng)MAC控制器[4]。它有一個10/100M自適應的PHY,一個通用處理接口和4K DWORD值的SRAM 。DM9000提供了連接家庭網(wǎng)絡設備或其他收發(fā)器的接口。DM9000支持8位,16位和32位接口訪問內(nèi)部存儲器。DM9000物理協(xié)議層接口完全支持10MBps下3類、4類、5類非屏蔽雙絞線和100MBps下5類非屏蔽雙曲線。它的自動協(xié)調(diào)功能將自動完成配置以最大限度地適合其線路帶寬。
DM9000與S3C2440通過ARM 嵌入式系統(tǒng)和以太網(wǎng)的接口連接,如圖3所示。
驅動程序分為主程序和中斷服務程序。主程序包括DM9000 的初始化和網(wǎng)卡參數(shù)獲取、網(wǎng)卡檢測、中斷服務程序。中斷服務程序以程序查詢方式來識別中斷源,完成具體處理任務。
驅動程序流程圖如圖4所示。
3系統(tǒng)測試
本地端將一組LED接入繼電器驅動控制電路,通過LED的亮滅顯示來表示照明設備的通斷。當用戶點擊某個設備的開關按鈕(ON或OFF)時,瀏覽器將相應請求發(fā)送到控制器,控制器解析該命令,提取出設置命令并將其發(fā)送到相應處理單元,完成對本地端LED的控制,同時將更新的狀態(tài)通過相反的過程反饋給用戶。
測試中,點擊電燈、電視機、空調(diào)等設備的狀態(tài)設置按鈕,其狀態(tài)由“OFF”變?yōu)椤癘N”,同時,本地端相應的LED顯示點亮,遠程控制測試成功,測試結果如圖5所示。
4小結
本文構建智能家居系統(tǒng)的功能模塊、進行系統(tǒng)軟硬件設計、在原型系統(tǒng)上進行系統(tǒng)測試。測試了系統(tǒng)的信息發(fā)送和控制功能。通過電視機的開關控制,液晶屏的信息發(fā)送,表明遠程控制器支持TCP/IP協(xié)議和HTTP協(xié)議。用戶在位于Internet上的任意計算機上都可以通過Web頁面控制遠程家居設備。測試過程中穩(wěn)定性滿足用戶的要求,網(wǎng)絡延遲處在智能家居要求范圍之內(nèi),整個系統(tǒng)設計達到了預期理想的效果。該系統(tǒng)不需要安裝特定軟件,而且主要通過無線方式連接設備,能有效降低成本,提高運行效率,具有實際使用和推廣的價值。隨著人們生活逐漸信息化和智能化,對智能家居也會有更多更高的要求。我們還可以通過在嵌入式Web服務器中添加相應的服務就能實現(xiàn)相應的功能,比如:新鮮空氣置換系統(tǒng)、防電磁輻射報警、家庭辦公等等。
[參考文獻]
[1]Moritz G Pruter S,Timmermann D,et a1.Web Services Oil Deeply Embedded Devices with Real—time Processing[C]//Proc.Of the 1 3th IEEE International Conference Oil Emerging Technologies and Factory Automation.Hamburg,Germany:[ s.n.],2008:432-435.
[2]葉朝輝,楊士元.智能家居網(wǎng)絡研究綜述[J].計算機應用研究,2001:3-4.
[3]周根林.嵌入式系統(tǒng)原理與應用[M].南京:南京大學出版社,2006:1-51.
[4]ARM Ltd. ARM Target Development System User Guide[J]. ARM Ltd, 1997: 3-8.
[收稿日期]2016-01-20
[作者簡介]尹然然(1980-),女,安徽靈璧人,碩士,講師,主要研究方向:計算機網(wǎng)絡。
[中圖分類號]TP393
[文獻標識碼]A
[文章編號]1674-2273(2016)03-0035-02