摘 要:文章從社會(huì)實(shí)際需求出發(fā),針對(duì)傳統(tǒng)監(jiān)控系統(tǒng)的一些缺陷,依據(jù)簡(jiǎn)單、易操作、方便、智能的原則,設(shè)計(jì)了一種基于手機(jī)的嵌入式網(wǎng)絡(luò)監(jiān)控系統(tǒng)。本系統(tǒng)以Web編程為核心技術(shù),實(shí)現(xiàn)了遠(yuǎn)程監(jiān)控。
關(guān)鍵詞:監(jiān)控系統(tǒng);ARM;嵌入式Linux;遠(yuǎn)程控制
隨著高新技術(shù)的發(fā)展,監(jiān)控系統(tǒng)也得到了飛速的發(fā)展,智能網(wǎng)絡(luò)監(jiān)控系統(tǒng)以其簡(jiǎn)單、方便、性能優(yōu)越和擴(kuò)展性強(qiáng)等特點(diǎn),在工廠監(jiān)控、辦公監(jiān)控、校園監(jiān)控、交通監(jiān)控等方面得到了廣泛的應(yīng)用。與一般的監(jiān)控系統(tǒng)相比,智能網(wǎng)絡(luò)監(jiān)控系統(tǒng)在技術(shù)上有很大的改進(jìn),功能更加完善,性能也得到了很大的提高。智能網(wǎng)絡(luò)監(jiān)控系統(tǒng)的快速發(fā)展及廣泛應(yīng)用使智能家居系統(tǒng)更加完善。
隨著科學(xué)技術(shù)和生活水平的提高,人們對(duì)家庭、辦公樓、廠房、交通、工業(yè)生產(chǎn)等領(lǐng)域監(jiān)控管理的要求更加嚴(yán)格。先進(jìn)的網(wǎng)絡(luò)監(jiān)控系統(tǒng)可以很好地提升企業(yè)或家庭監(jiān)控管理質(zhì)量,降低管理成本,增強(qiáng)生產(chǎn)線人員的責(zé)任心,便于調(diào)查和明確責(zé)任,提高企業(yè)形象和增強(qiáng)企業(yè)競(jìng)爭(zhēng)力。
1 監(jiān)控系統(tǒng)底層驅(qū)動(dòng)的設(shè)計(jì)及移植
運(yùn)行在嵌入式系統(tǒng)上的軟件有嵌入式操作系統(tǒng)、應(yīng)用程序、驅(qū)動(dòng)程序及部分開(kāi)發(fā)工具。驅(qū)動(dòng)程序是操作系統(tǒng)內(nèi)核與機(jī)器硬件之間的接口[1]。
1.1 DM9000驅(qū)動(dòng)移植
DM9000的地址總線與數(shù)據(jù)總線復(fù)用,當(dāng)CMD引腳為高電平時(shí),傳輸?shù)氖菙?shù)據(jù)信息,當(dāng)為低電平時(shí),傳輸?shù)臑榈刂沸畔?。?shù)據(jù)的傳輸需要兩次,當(dāng)訪問(wèn)DM9000中的寄存器時(shí),需要先寫(xiě)地址信息,即將CMD置0,然后讀數(shù)據(jù)信息。本嵌入式系統(tǒng)的DM9000的片選信號(hào)與nGCS4相連接,所以DM9000訪問(wèn)的基地址為0x20000000,這是物理地址。傳輸寄存器數(shù)據(jù)的時(shí)候,操作的總線地址滿(mǎn)足以下條件:以基地址起頭,偏移基地址LADDR2為1(低四位:0100),也就是在寫(xiě)的時(shí)候總線地址為0x20000004。中斷引腳是與ENT7相連,使用的是系統(tǒng)的外部中斷7,有數(shù)據(jù)接收時(shí)就會(huì)觸發(fā)中斷,然后由中斷服務(wù)函數(shù)向協(xié)議層傳輸數(shù)據(jù)。修改DM9000源碼驅(qū)動(dòng)的時(shí)序和總線寬度,然后編譯進(jìn)內(nèi)核。
1.2 攝像頭驅(qū)動(dòng)的移植
USB攝像頭原理是用一個(gè)DSP芯片驅(qū)動(dòng)以及一個(gè)CMOS,這個(gè)DSP芯片可以提供USB通信協(xié)議,CMOS的所有配置操作都是由DSP控制完成的,CMOS數(shù)據(jù)流通過(guò)USB傳給上位機(jī),就是把CMOS的計(jì)算機(jī)PBX接口(Computer PBX interface,CPI)接口轉(zhuǎn)成USB接口1。嵌入式Linux內(nèi)核支持USB攝像頭驅(qū)動(dòng),需要下載相應(yīng)驅(qū)動(dòng)的源代碼,將源代碼編譯,然后加入內(nèi)核配置選項(xiàng),修改相應(yīng)的攝像頭參數(shù),從而完成了攝像頭驅(qū)動(dòng)的移植[2]。
1.3 WiFi驅(qū)動(dòng)的移植及設(shè)計(jì)
本系統(tǒng)采用的WiFi為Atheros的AR9271,AR9271內(nèi)嵌TCP/IP協(xié)議棧,降低了設(shè)計(jì)的難度,提高了主控制器資源利用率。AR9271與S3C2440A通過(guò)標(biāo)準(zhǔn)的USB接口直接相連,使用USB協(xié)議進(jìn)行數(shù)據(jù)傳輸,方便開(kāi)發(fā)人員的使用,且其性能良好。創(chuàng)銳訊的官網(wǎng)提供AR9271驅(qū)動(dòng)程序,將其編譯并加入內(nèi)核,修改相應(yīng)的配置參數(shù),使其成為熱點(diǎn)。
2 監(jiān)控系統(tǒng)軟件的設(shè)計(jì)
監(jiān)控應(yīng)用程序主要完成遠(yuǎn)程訪問(wèn)端溫度監(jiān)測(cè)模塊、燈光控制模塊、監(jiān)控系統(tǒng)等軟件設(shè)計(jì),該應(yīng)用程序使用CGI語(yǔ)言實(shí)現(xiàn),軟件整體設(shè)計(jì)如圖1所示。
圖1 系統(tǒng)軟件設(shè)計(jì)框架
2.1 網(wǎng)絡(luò)服務(wù)器web移植及設(shè)計(jì)
隨著互聯(lián)網(wǎng)技術(shù)的飛速發(fā)展,在嵌入式中基于嵌入式Web服務(wù)器的應(yīng)用也得到了很大的發(fā)展。本系統(tǒng)在嵌入式設(shè)備上運(yùn)行Web服務(wù)器程序,在用戶(hù)端的瀏覽器上生成動(dòng)態(tài)網(wǎng)絡(luò)頁(yè)面,用戶(hù)通過(guò)Web瀏覽器訪問(wèn)。本系統(tǒng)選擇的嵌入式Web服務(wù)器是Boa,其具有代碼量小、單任務(wù)、支持CGI等特點(diǎn),符合監(jiān)控系統(tǒng)對(duì)速度和安全的要求。
2.2 遠(yuǎn)程訪問(wèn)終端模塊的設(shè)計(jì)
應(yīng)用程序主要完成遠(yuǎn)程訪問(wèn)端溫度監(jiān)測(cè)模塊、燈光控制模塊、監(jiān)控系統(tǒng)等軟件設(shè)計(jì),該應(yīng)用程序使用CGI語(yǔ)言實(shí)現(xiàn)。通過(guò)嵌入式設(shè)備上搭建的嵌入式Web服務(wù)器,用戶(hù)可在移動(dòng)設(shè)備的瀏覽器上[3],對(duì)監(jiān)控區(qū)的環(huán)境參數(shù)進(jìn)行實(shí)時(shí)監(jiān)測(cè),并通過(guò)網(wǎng)絡(luò)通信及數(shù)據(jù)交換來(lái)改變監(jiān)控設(shè)備的狀態(tài)。
登錄模塊完成用戶(hù)名與密碼的校驗(yàn),驗(yàn)證后進(jìn)入管理界面。界面模塊包括各子模塊,并支持進(jìn)入子系統(tǒng)操作。溫度監(jiān)測(cè)界面子系統(tǒng)顯示各房間的溫度;家電管理子系統(tǒng)顯示家電的狀態(tài),同時(shí)可操作界面按鈕,來(lái)設(shè)置各類(lèi)家電狀態(tài);燈光管理界面顯示和操作各房間的燈開(kāi)關(guān)情況。每個(gè)模塊利用CGI傳輸數(shù)據(jù)和操作指令,完成家電的操作和數(shù)據(jù)保存,其流程如圖2所示[4]。
圖2 系統(tǒng)程序結(jié)構(gòu)
3 監(jiān)控系統(tǒng)軟件的設(shè)計(jì)及測(cè)試
通過(guò)有線的局域網(wǎng)訪問(wèn)控制,保證PC機(jī)和嵌入式設(shè)備在同一網(wǎng)段,網(wǎng)絡(luò)地址為:172.22.137.201:80;WiFi網(wǎng)址為:192.168.1.1:80。
登錄模塊完成用戶(hù)名與密碼的校驗(yàn),驗(yàn)證后進(jìn)入管理界面。視頻監(jiān)控模塊具有安防監(jiān)控功能,使用攝像頭采集圖像,通過(guò)該模塊可以查看家里電器、房門(mén)、窗口等狀態(tài),并通過(guò)網(wǎng)絡(luò)通信即數(shù)據(jù)交換來(lái)實(shí)現(xiàn)監(jiān)控。實(shí)驗(yàn)結(jié)果表明,該系統(tǒng)可靠性高、抗干擾能力強(qiáng)、通用性好,非常適合在監(jiān)控系統(tǒng)中應(yīng)用?;贚inux系統(tǒng)的視頻采集系統(tǒng)編程完成以后,系統(tǒng)就可以實(shí)現(xiàn)每秒規(guī)定幀的圖像采集,可以直接連續(xù)顯示到屏幕上,構(gòu)成實(shí)時(shí)監(jiān)控系統(tǒng)。也可以借助Mencoder編碼工具將多幅JEPG圖片合成AVI視頻流,并實(shí)現(xiàn)視頻回放,用播放器播放。如果需要系統(tǒng),還可以通過(guò)以太網(wǎng)或UART口將保存的圖片和視頻流傳到指定位置,實(shí)現(xiàn)遠(yuǎn)程的網(wǎng)絡(luò)監(jiān)控具體的操作。目前,很多監(jiān)控系統(tǒng)采用Windows操作系統(tǒng),因?yàn)閃indows提供大量的圖形界面,有各種外部設(shè)備及應(yīng)用程序,所以系統(tǒng)的開(kāi)發(fā)就容易很多。但Windows系統(tǒng)龐大復(fù)雜,占用CPU資源大,外圍硬件較為復(fù)雜,穩(wěn)定性、可靠性不如RTOS系統(tǒng)。為監(jiān)控專(zhuān)門(mén)設(shè)計(jì)的嵌入式實(shí)時(shí)操作系統(tǒng)的特點(diǎn)在于系統(tǒng)簡(jiǎn)單,減去了與監(jiān)控?zé)o關(guān)的功能,減少了出問(wèn)題的概率。由于開(kāi)發(fā)者掌握源代碼,可隨時(shí)解決硬件沖突及優(yōu)化系統(tǒng),控制系統(tǒng)實(shí)現(xiàn)了用戶(hù)對(duì)前端設(shè)備如鏡頭、云臺(tái)和畫(huà)面切換的控制。服務(wù)器接收到由客戶(hù)中心監(jiān)控終端發(fā)送過(guò)來(lái)的控制信息幀后,對(duì)其進(jìn)行判斷解析,并送入各個(gè)相應(yīng)的控制部件接口,以實(shí)現(xiàn)相應(yīng)的控制。
4 結(jié)語(yǔ)
本設(shè)計(jì)把嵌入式技術(shù)和家庭網(wǎng)絡(luò)化相結(jié)合,進(jìn)行了方案的總體設(shè)計(jì),并且對(duì)設(shè)計(jì)的硬件資源和軟件資源進(jìn)行了詳細(xì)的說(shuō)明,最后通過(guò)不斷地調(diào)試和改進(jìn),基本實(shí)現(xiàn)了手機(jī)控制端到監(jiān)控終端的信息通路,是智能監(jiān)控系統(tǒng)中實(shí)現(xiàn)統(tǒng)一管理和控制的基礎(chǔ),是一個(gè)成本低、操作簡(jiǎn)便的監(jiān)控系統(tǒng)的成品。
作者簡(jiǎn)介:王振威(1998— ),男,河南商丘人,本科生;研究方向:嵌入式系統(tǒng)設(shè)計(jì)與開(kāi)發(fā)。
[參考文獻(xiàn)]
[1]趙方鵬.基于ARM和Linux的嵌入式網(wǎng)絡(luò)視頻監(jiān)控系統(tǒng)研究[D].西安:西北工業(yè)大學(xué),2007.
[2]曹占中.基于S3C2440的Linux攝像頭驅(qū)動(dòng)開(kāi)發(fā)[J].電子測(cè)量技術(shù),2009(2):108-111.
[3]WALSH G C.Scheduling of networked control systems[J].IEEE Control Systems Magazine,2001(1):57-65.
[4]柳亞?wèn)|.基于S3C2440的嵌入式視頻網(wǎng)絡(luò)監(jiān)控系統(tǒng)[D].上海:上海交通大學(xué),2007.
Design of embedded network monitoring system based on Linux
Wang Zhenwei
(College of Traffic Engineering, Hunan University of Technology, Zhuzhou 412007, China)
Abstract:Based on the actual needs of the community, This paper aims at some shortcomings of traditional, designs a kind of monitoring system based on the mobile phone and based on the principles of simple operation, convenience and intelligence.This system realized remote monitoring with the Internet based on web programming technology.
Key words:monitoring system; ARM; Linux embedded; remote control