[摘 要]本文介紹了一種基于嵌入式網(wǎng)絡服務器的遠程監(jiān)控系統(tǒng)的工作原理和軟、硬件實現(xiàn),該系統(tǒng)可以實時地檢測目標信息,建立監(jiān)測數(shù)據(jù)檔案,為不同權限的用戶提供遠程訪問服務或數(shù)據(jù)資料下載,可以廣泛用于工業(yè)排污、環(huán)境監(jiān)測等領域。
[關鍵詞]嵌入式系統(tǒng) 服務器 在線檢測
一、引言
環(huán)境監(jiān)測是一個大的系統(tǒng)工程,監(jiān)測地域廣、采樣位置分散,靠人工采集數(shù)據(jù)的傳統(tǒng)方法十分不便。工業(yè)排污如污水、廢氣等排放也是環(huán)境部門的重要監(jiān)管內(nèi)容,當前普遍采用人工定期檢測,該方法操作繁瑣,而且不能全面地反映企業(yè)的實際排污狀況,漏檢、偷排現(xiàn)象時有發(fā)生。針對以上問題,提供一種連續(xù)的在線監(jiān)測措施十分必要。本文介紹了一種基于互聯(lián)網(wǎng)的在線檢測系統(tǒng)平臺,每一個信息采集點獨立分布,就近接入以太網(wǎng)。該系統(tǒng)可以按照用戶要求對監(jiān)測信息定時采樣分析,統(tǒng)計相關信息、建立信息數(shù)據(jù)檔案,授權用戶可以通過以太網(wǎng)查看、下載相關信息數(shù)據(jù),實現(xiàn)遠程監(jiān)測和網(wǎng)絡化數(shù)據(jù)采集。如果用于工業(yè)排污監(jiān)測,還可以全程監(jiān)測污染物排放、建立污染物排放的統(tǒng)計數(shù)據(jù),給管理部門提供準確可靠的信息,便于管理和排污按量收費。
二、系統(tǒng)結構介紹
下圖是基于嵌入式服務器的在線檢測系統(tǒng)的總體結構圖。從圖中可以看出,整個系統(tǒng)可分為三個基本環(huán)節(jié):基于嵌入式服務器的排污檢測系統(tǒng)、企業(yè)(或就近)局域網(wǎng)和Internet。
其中基于嵌入式服務器的檢測系統(tǒng)提供網(wǎng)絡接口和遠程訪問服務,同時具有現(xiàn)場數(shù)據(jù)采集、數(shù)據(jù)處理的功能,實現(xiàn)現(xiàn)場數(shù)據(jù)到局域網(wǎng)的數(shù)據(jù)傳輸。采用嵌入式系統(tǒng),避免了現(xiàn)場配置PC機的缺陷,使得系統(tǒng)可以適應于惡劣的環(huán)境條件,而且結構緊湊,可靠性提高,成本降低。該系統(tǒng)主要包括氣體采樣裝置、物理傳感器等檢測儀表子系統(tǒng)、數(shù)據(jù)采集和數(shù)據(jù)處理子系統(tǒng)、web服務子系統(tǒng)等。
檢測儀表子系統(tǒng)負責對被檢測信息實時采樣,數(shù)據(jù)采集和處理子系統(tǒng)采集儀表檢測數(shù)據(jù),生成監(jiān)測報告,根據(jù)需要可以對相關信息進行進一步處理,建立監(jiān)測檔案。Web服務子系統(tǒng)提供網(wǎng)絡接入并為用戶提供Web服務,使授權用戶可以通過Internet連接,使用IE瀏覽器或Netscape瀏覽器進行遠程訪問,瀏覽、下載相關數(shù)據(jù),或定制數(shù)據(jù)采集、數(shù)據(jù)處理子系統(tǒng)的工作模式而不受空間限制。
三、硬件設計
基于嵌入式Web服務器的煙囪排污監(jiān)測系統(tǒng)的硬件結構如圖所示。本系統(tǒng)中嵌入式Web服務器選用Cygnal的C8051F020單片機,該單片機是與MCS-51單片機兼容的高性能、高速8位單片機,速度可達到25MIPS,具有64個I/O 口,2個UART,以及SPI和SMBus/I2C串行接口。片內(nèi)具有64k 字節(jié)的Flash ROM和4352 字節(jié)的RAM,5個16位定時器、可編程計數(shù)器陣列(PCA),而且具有10路12位ADC,2路12位DAC,內(nèi)建比較器、電壓基準、溫度傳感器等。該單片機具有豐富的資源,對于檢測儀表的控制、管理以及信號采樣無需另外擴展接口。外部只需要擴展一片E2PROM作為數(shù)據(jù)存儲和網(wǎng)頁存儲單元,擴展一片網(wǎng)絡接口芯片即可。
外部擴展的存儲器采用24LC256,這是一種I2C總線的串行E2PROM,可以直接和C8051F020的I2C串口相連接。該芯片用于存放煙囪檢測數(shù)據(jù)、排污檔案以及網(wǎng)頁信息。網(wǎng)絡接口的擴展采用RTL8019AS,該芯片是臺灣REALTEK半導體器件公司生產(chǎn)的10BaseT全雙工以太網(wǎng)收發(fā)控制器。
四、軟件設計
監(jiān)測系統(tǒng)中嵌入式Web服務器的軟件主要由系統(tǒng)初始化設置、數(shù)據(jù)采集及處理、TCP/IP協(xié)議棧的實現(xiàn)等模塊組成。系統(tǒng)初始化以及數(shù)據(jù)采集、數(shù)據(jù)處理由系統(tǒng)自動完成,授權用戶也可以通過網(wǎng)絡訪問進行定制。
利用RTL8019AS實現(xiàn)的網(wǎng)絡協(xié)議棧中,物理層功能由網(wǎng)絡接口芯片來完成,程序的初始化部分包含網(wǎng)絡接口芯片的驅動,網(wǎng)絡層部分加入了地址解析協(xié)議(ARP),實現(xiàn)IP地址到物理地址的映射。整個層次結構如圖3所示。
協(xié)議棧主要包括接收數(shù)據(jù)包的解釋以及發(fā)送數(shù)據(jù)包的打包,以太網(wǎng)協(xié)議有兩種,一種是IEEE802.2/IEEE802.3,還有一種是以太網(wǎng)的封裝格式?,F(xiàn)在的操作系統(tǒng)均能同時支持這兩種類型的協(xié)議格式,考慮到嵌入式系統(tǒng)資源的局限性,本系統(tǒng)只采用后一種格式。以太網(wǎng)數(shù)據(jù)以幀的格式進行傳輸,其物理傳輸幀格式如下表所式:
其中PR稱為同步位,用于收發(fā)雙方的時鐘同步,同時也指明了數(shù)據(jù)傳輸?shù)乃俾?。SD稱為分隔位,表示后面跟著的是數(shù)據(jù)而不是同步時鐘。DA是目的地址,為48位二進制數(shù),表明該幀要傳輸?shù)降木W(wǎng)卡地址。SA是源地址,表明該幀數(shù)據(jù)是哪個網(wǎng)卡發(fā)的,即發(fā)送端的網(wǎng)卡地址。TYPE是類型字段,表明該幀的數(shù)據(jù)是什么類型的數(shù)據(jù),不同協(xié)議的類型字段不同。DATA為數(shù)據(jù)段,該段數(shù)據(jù)不能超過1500字節(jié)。PAD稱為填充位,由于以太網(wǎng)幀傳輸?shù)臄?shù)據(jù)包最小不能小于60字節(jié), 除去DA、SA、TYPE 共14字節(jié),還必須傳輸46字節(jié)的數(shù)據(jù),當數(shù)據(jù)段的數(shù)據(jù)不足46字節(jié)時,在該段用任意數(shù)補足。FCS是數(shù)據(jù)校驗位,它是32位的CRC校驗碼。在實際應用中,PR、SD、PAD、FCS這幾個數(shù)據(jù)段是由網(wǎng)卡自動產(chǎn)生的,我們只要處理DA、SA、TYPE和DATA四個段的內(nèi)容即可。
如果幀類型字段值為0800h,表示數(shù)據(jù)為IP包,幀類型字段值為0806h,則表示數(shù)據(jù)包為ARP包。接收幀時,首先判斷幀類型,不同的幀類型由不同的程序模塊對它進行處理。發(fā)送數(shù)據(jù)幀時,同樣根據(jù)不同的幀類型,分別由不同的程序進行打包處理。二者的處理方法基本相同,只是讀、寫操作的切換。數(shù)據(jù)幀的接收和發(fā)送都是建立在物理層對NIC操作的基礎上,包括讀接收緩沖區(qū)、寫發(fā)送緩沖區(qū),NIC采用8位工作方式。由于在Internet中都使用TCP/IP協(xié)議,因此,基于IP的TCP和UDP協(xié)議起著非常重要的作用。因為采用單片機作為服務器,其存儲器容量相對較小,采用傳統(tǒng)的方法實現(xiàn)TCP和UCP是不合理的,這里采用一邊構造套接字(SOCKET),一邊進行應用層處理的方式。發(fā)送數(shù)據(jù)時也是這樣,邊處理實用數(shù)據(jù)邊填充發(fā)送數(shù)據(jù),這種方法極大地節(jié)約了內(nèi)存資源,而且有效地提高了應用程序的處理速度。由于程序的主要功能是接收數(shù)據(jù)采集命令,發(fā)送相關數(shù)據(jù),實際傳送的數(shù)據(jù)量很小,不需巨大的緩存空間,所以上述硬件資源足以滿足軟件處理的需求。
五、結語
本文介紹的網(wǎng)絡化遠程監(jiān)測系統(tǒng),可以實現(xiàn)環(huán)境信息的在線、實時監(jiān)測,生成監(jiān)測數(shù)據(jù)報告,建立監(jiān)測檔案。同時作為一個服務器,配置了網(wǎng)頁資源,授權用戶可以通過網(wǎng)絡連接對其進行訪問,瀏覽、下載相關數(shù)據(jù),定制系統(tǒng)工作方式。服務器采用嵌入式系統(tǒng),具有結構緊湊、工作可靠、價格低廉、適應環(huán)境能力強等特點。
參考文獻:
[1]祝翠玲,蔣志方,王強,吳強,賈海濤,基于Internet的城市煙氣實時監(jiān)控系統(tǒng).計算機工程,2005.10
[2]黃建民.基于Internet的嵌入式系統(tǒng)Web服務器技術研究.江西師范大學,2004年
[3]毛勇,金傳正.基于嵌入式Web服務器的遠程故障診斷系統(tǒng).中國電子網(wǎng)
[4]李嘉,楊佃福.嵌入式遠程監(jiān)控系統(tǒng)的開發(fā).自動化儀表,2002.4:5
[5]馮建新,王光興.基于網(wǎng)絡的設備遠程監(jiān)控系統(tǒng)的設計與實現(xiàn).東北大學學報,2001.7:617