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