基于嵌入式Web服務(wù)器的遠(yuǎn)程故障診斷系統(tǒng)
1 系統(tǒng)原理及組成
圖1是基于嵌入式Web服務(wù)器的數(shù)據(jù)采集與故障診斷系統(tǒng)的結(jié)構(gòu)圖。從圖1中可以看出,整個(gè)遠(yuǎn)程故障診斷系統(tǒng)可分為三個(gè)部分:嵌入式Web服務(wù)器的數(shù)據(jù)采集、客戶方局域網(wǎng)、遠(yuǎn)程診斷服務(wù)器與網(wǎng)上診斷資源。
1.1 嵌入式Web服
務(wù)器
近年來(lái)互聯(lián)技術(shù)發(fā)展的一個(gè)重要趨勢(shì)就是它被越來(lái)越多地用于低成本的場(chǎng)合,如手持設(shè)備、智能家電等。8位處理器已經(jīng)在很多場(chǎng)合替代昂貴的32位處理器實(shí)現(xiàn)互聯(lián);而且這種策系統(tǒng)也有著自身的優(yōu)點(diǎn),例如:低廉的價(jià)格、易于與各種傳感器和采集器接口、體積小巧,而且能很方便地?cái)U(kuò)展各種協(xié)議如UART、I2C、SPI協(xié)議等與以太網(wǎng)協(xié)議的轉(zhuǎn)換,從而實(shí)現(xiàn)遠(yuǎn)程數(shù)據(jù)采集和遠(yuǎn)程控制。 本系統(tǒng)中嵌入式Web服務(wù)器為客戶方局域網(wǎng)提供網(wǎng)絡(luò)接口,同時(shí)具有現(xiàn)場(chǎng)數(shù)據(jù)采集的功能,實(shí)現(xiàn)現(xiàn)場(chǎng)采集數(shù)據(jù)到客戶局域網(wǎng)的數(shù)據(jù)傳輸??朔藗鹘y(tǒng)方法中需要現(xiàn)場(chǎng)配置PC機(jī)的缺陷,而且更能克服環(huán)境條件的限制。
(1)硬件結(jié)構(gòu)
嵌入式Web服務(wù)器硬件結(jié)構(gòu)如圖2所示。
本系統(tǒng)中嵌入式Web服務(wù)器選擇SX52BD作為主控CPU。SX52BD是美國(guó)Ubicom公司專門為網(wǎng)絡(luò)通信設(shè)計(jì)的一款8位超高速控制器,運(yùn)行速度可高達(dá)50MHz。該芯片基于RISC架構(gòu)、運(yùn)算速度高、靈活的I/O控制、高效的數(shù)據(jù)操作,而且支持ISP在線編程。
本系統(tǒng)選擇24LC256串行EEPROM作為數(shù)據(jù)存儲(chǔ)單元(網(wǎng)頁(yè)存儲(chǔ)單元)。24LC256是32K字節(jié)的串行EEPROM,通過(guò)I2C總線與SX52BD通信。可以存放采集數(shù)據(jù)或者網(wǎng)頁(yè)。如果需要存儲(chǔ)網(wǎng)頁(yè),應(yīng)該預(yù)留網(wǎng)絡(luò)下載接口(可以通過(guò)I/O口線擴(kuò)展串行口,網(wǎng)頁(yè)內(nèi)容通過(guò)PC機(jī)串口下載)。NIC芯片可選擇RTL8019AS或者美國(guó)DAVICON公司的DM9008。RTL8019AS是臺(tái)灣REALTEK半導(dǎo)體器件公司生產(chǎn)的10BaseT全雙工以太網(wǎng)收發(fā)控制器。
這兩款控制器與NE2000完全兼容,只是管腳分布有些不同。數(shù)據(jù)采集部分可以根據(jù)需要自行選擇,具有相當(dāng)?shù)撵`活性。
(2)軟件實(shí)現(xiàn)
本系統(tǒng)中嵌入式Web服務(wù)器的軟件主要由芯片初始化設(shè)置、TCP/IP協(xié)議棧的實(shí)現(xiàn)、數(shù)據(jù)采集及處理等模塊組成。在程序中加入基于TCP/IP協(xié)議的用戶自定義數(shù)據(jù)通信協(xié)議。這樣使客戶局域網(wǎng)中的PC機(jī)能夠與嵌入式Web服務(wù)器進(jìn)行自定義的通信,如:發(fā)送數(shù)據(jù)采集命令、采集參數(shù)初始化命令等。利用SX52BD實(shí)現(xiàn)的網(wǎng)絡(luò)協(xié)議棧中,物理層功能由網(wǎng)絡(luò)接口卡(NIC芯片)來(lái)完成。
程序的初始化部分包含其驅(qū)動(dòng)程序。網(wǎng)絡(luò)層部分加入了地址解析協(xié)議(ARP),實(shí)現(xiàn)IP地址到物理地址的映射。整個(gè)結(jié)構(gòu)如圖3所示。
協(xié)議棧的實(shí)現(xiàn)主要分為接收數(shù)據(jù)包的解釋以及發(fā)送數(shù)據(jù)包的打包。以太網(wǎng)數(shù)據(jù)以幀的格式進(jìn)行傳輸,其幀格式如下:(字段沒(méi)有按比例畫(huà)出,數(shù)據(jù)單位為Octet) 如果幀類型字段值為0x0806,則為ARP包;如果為0x0800,則為IP數(shù)據(jù)包。接收幀時(shí),根據(jù)不同的幀類型由不同的軟件模塊對(duì)它進(jìn)行處理。發(fā)送數(shù)據(jù)幀時(shí),也根據(jù)不同的幀類型由不同的程序進(jìn)行打包處理?;痉椒ê吞幚斫邮諑嗤皇前炎x操作改為寫(xiě)操作。幀的接收和發(fā)送都是基于物理層對(duì)NIC的操作,包括讀接收緩沖區(qū)、寫(xiě)發(fā)送緩沖區(qū)。NIC采用8位工作方式,對(duì)其緩沖區(qū)的操作需要逐一讀寫(xiě)每個(gè)8位組。讀接收緩沖區(qū)時(shí)對(duì)不同的字段進(jìn)行判斷、記錄處理。NIC操作具體內(nèi)容可以參考芯片資料,限于篇幅,不作詳細(xì)介紹。
由于在Internet中都使用約定俗成的TCP/IP協(xié)議,因此,基于IP的TCP和UDP協(xié)議起著非常重要的作用。由于SX52BD是一種嵌入式微控制器,內(nèi)存較小,不能用傳統(tǒng)的方法實(shí)現(xiàn)TCP和UCP。因此它們需要很大的緩沖區(qū)來(lái)構(gòu)造套接字(SOCKET),一邊進(jìn)行應(yīng)用層的處理。發(fā)送數(shù)據(jù)時(shí)也是這樣,邊處理實(shí)用數(shù)據(jù)邊填充發(fā)送數(shù)據(jù)。這種方法極大地節(jié)約了內(nèi)存資源,而且有效地提高了應(yīng)用程序的處理速度。由于程序的主要功能是接收數(shù)據(jù)采集命令,真正傳送的數(shù)據(jù)量很小,不需巨大的緩存空間。
1.2 客戶方局域網(wǎng)
客戶方局域網(wǎng)對(duì)設(shè)備進(jìn)行在線監(jiān)測(cè)及一般故障的診斷,主要負(fù)責(zé)重要信息的存儲(chǔ),為數(shù)據(jù)采集站或現(xiàn)場(chǎng)工作站提供簡(jiǎn)單的診斷服務(wù),與外界溝通獲得幫助。數(shù)據(jù)庫(kù)技術(shù)是這種監(jiān)測(cè)與診斷系統(tǒng)的一項(xiàng)關(guān)鍵技術(shù)。系統(tǒng)必須利用數(shù)據(jù)庫(kù)對(duì)采樣子系統(tǒng)所采集的實(shí)時(shí)數(shù)據(jù)進(jìn)行分析和處理生成歷史數(shù)據(jù)庫(kù)。庫(kù)中數(shù)據(jù)可以被用戶查詢并進(jìn)一步分析,從而了解設(shè)備的運(yùn)行狀況和發(fā)展趨勢(shì)。在故障發(fā)生后也可對(duì)相關(guān)測(cè)點(diǎn)進(jìn)行追憶,為診斷和維修提供依據(jù)。在本系統(tǒng)中,客戶局域網(wǎng)能夠與嵌入式Web服務(wù)器進(jìn)行通信,對(duì)嵌入式Web服務(wù)器進(jìn)行控制??赏ㄟ^(guò)命令應(yīng)答的方式將采集的現(xiàn)場(chǎng)數(shù)據(jù)取回進(jìn)行處理。如果嵌入式Web服務(wù)器配置了網(wǎng)頁(yè)存儲(chǔ)資源,也可通過(guò)訪問(wèn)嵌入式Web服務(wù)器的網(wǎng)頁(yè)內(nèi)容與之進(jìn)行交互。
1.3 遠(yuǎn)程診斷服務(wù)器與網(wǎng)上診斷資源
遠(yuǎn)程診斷服務(wù)器是診斷服務(wù)提供者在Internet上建立的服務(wù)站點(diǎn)
2 系統(tǒng)實(shí)現(xiàn)與應(yīng)用
本系統(tǒng)用于發(fā)電機(jī)及低壓配電網(wǎng)中的變壓器故障檢測(cè)診斷,如振動(dòng)、掉相、欠壓、過(guò)壓、超載、功率越界等。數(shù)據(jù)采集在嵌入式Web服務(wù)器的I/O端口上接入相應(yīng)傳感器,使用實(shí)驗(yàn)室的局域網(wǎng)資源,用一臺(tái)微機(jī)作為客戶機(jī)與嵌入式Web服務(wù)器通信,同時(shí)訪問(wèn)遠(yuǎn)程診斷服務(wù)器。遠(yuǎn)程診斷服務(wù)器利用Windows NT4.0及IIS4.0作為操作系統(tǒng)和WWW服務(wù)器,并在此基礎(chǔ)上分別利用Microsoft Interdev和Visual C++開(kāi)發(fā)建立遠(yuǎn)程診斷系統(tǒng)。
診斷時(shí),客戶端微機(jī)利用WWW瀏覽器登錄診斷服務(wù)器,并在交互式網(wǎng)頁(yè)中,利用表單提供故障征兆信息和數(shù)據(jù)文件,請(qǐng)求診斷服務(wù)。診斷服務(wù)器調(diào)用診斷資源進(jìn)行診斷得到的診斷結(jié)果,利用交互式網(wǎng)頁(yè)和Java小程序返回給客戶機(jī)。
評(píng)論