DCS死機(jī)現(xiàn)象有兩種:人機(jī)界面死機(jī)、控制器死機(jī)。前者比后者損失要小。控制器死機(jī)是I/O卡件安排太多或存儲器容量不夠,一旦控制器程序運行到某一位置,就停留在該位置,程序不再往下走,即使重啟也無濟(jì)于事。
人機(jī)界面(主要是操作站)死機(jī)現(xiàn)象所有DCS都不同程度地存在,只是頻繁程度不同。另外與DCS使用時間長短有關(guān)。因硬件引起的死機(jī),顯示不再能恢復(fù)。如操作站電源電壓偏低,很容易使操作站死機(jī)。由于軟件和通信連線的速率選擇不合適引起的死機(jī)現(xiàn)象經(jīng)一段時間仍能恢復(fù)。操作站操作系統(tǒng)與監(jiān)控軟件磨合不好也能引起死機(jī),對此維護(hù)人員毫無辦法,稱為原發(fā)性死機(jī)。由于某些配置不合理引發(fā)網(wǎng)絡(luò)堵塞、內(nèi)存太小等原因造成的死機(jī),過幾分鐘后自己能恢復(fù)。
一 DCS人機(jī)界面的死機(jī)現(xiàn)象
近來,由于MIS系統(tǒng)需從DCS中讀取生產(chǎn)實時數(shù)據(jù)。在網(wǎng)絡(luò)中接進(jìn)動態(tài)數(shù)據(jù)服務(wù)器,有的采用DDE方式,在讀取數(shù)據(jù)較多情況下(如3000點),由于DDE消耗資源較多,網(wǎng)絡(luò)堵塞現(xiàn)象就變得十分頻繁,并使得各種人機(jī)界面的節(jié)點死機(jī)現(xiàn)象變得嚴(yán)重。
網(wǎng)絡(luò)堵塞現(xiàn)象的嚴(yán)重程度與多種因素相關(guān)。從操作站取數(shù)據(jù),采用DDE方式,如果取的數(shù)據(jù)在500點以下,問題還不算太大。如果取幾千點數(shù)據(jù),操作站死機(jī)幾乎是必然的。如果把節(jié)點連到DCS的通信網(wǎng)絡(luò)上,從網(wǎng)絡(luò)接口取數(shù)據(jù),情況要好一些。
控制器把數(shù)據(jù)送到接口,人機(jī)界面從網(wǎng)絡(luò)接口讀取數(shù)據(jù)應(yīng)遵守網(wǎng)絡(luò)通信協(xié)議。網(wǎng)絡(luò)物理結(jié)構(gòu)有環(huán)型和總線型兩種,總線網(wǎng)絡(luò)在邏輯上也是環(huán)型的。星型網(wǎng)絡(luò)只用于小系統(tǒng)(100個I/O點內(nèi))。常用通信協(xié)議是廣播式,網(wǎng)絡(luò)上的節(jié)點只要把數(shù)據(jù)送到網(wǎng)絡(luò)上,它就要不斷廣播數(shù)據(jù),需要數(shù)據(jù)的節(jié)點就接收數(shù)據(jù)。廣播式協(xié)議的網(wǎng)絡(luò)除這種方式外,還有一種方式:一個節(jié)點向網(wǎng)上其他節(jié)點問詢數(shù)據(jù),如其他節(jié)點沒有,它就反復(fù)進(jìn)行問詢直至讀取到這個數(shù)據(jù)。如果網(wǎng)絡(luò)上根本沒有這個數(shù)據(jù),就會造成網(wǎng)絡(luò)堵塞。
為使運行人員熟練DCS操作站的操作,可采用仿真系統(tǒng),了解DCS的鍵盤,以減少誤操作引起死機(jī);也可了解操作站死機(jī)情況。
在DCS運行時間較長的情況下,組態(tài)只加不減,有一部分組態(tài)實際上已沒有與真正的I/O點相連,與控制無關(guān)。在工程師站的用戶應(yīng)用程序中有這樣的I/O點。動態(tài)數(shù)據(jù)服務(wù)器接入時,欲將DCS上所有數(shù)據(jù)點都讀上去,因其中有大量數(shù)據(jù)點無效而造成網(wǎng)絡(luò)堵塞,所以人機(jī)界面就發(fā)生死機(jī)。這時可用逆向工程師站讀取控制器中的組態(tài),與正向工程師站的內(nèi)容進(jìn)行比較,刪除無效點,就可避免網(wǎng)絡(luò)堵塞。
另一個應(yīng)注意問題是在接入動態(tài)數(shù)據(jù)服務(wù)器時,應(yīng)檢查所有接口的軟件版本是否一致,否則會影響數(shù)據(jù)傳遞。
解決網(wǎng)絡(luò)堵塞的第三種方法是:如果采用例外報告方式,可加大例外報告區(qū)域以減少網(wǎng)絡(luò)通信量。例外報告是指現(xiàn)場某點只在發(fā)生變化時把數(shù)據(jù)送到網(wǎng)絡(luò)上。為防止點已壞而人機(jī)界面未知的情況,即使點不變化,超過一段時間也要報告。為減少網(wǎng)絡(luò)上的通信量,把例外報告的兩個參數(shù)都適當(dāng)加大,也能達(dá)到減少數(shù)據(jù)量的目的。
最近推出的通用操作站多采用Windows NT/2000操作系統(tǒng),監(jiān)控軟件也通用,如FIX、InTouch等。由于軟件銷售量大,存在問題較少,通用操作站開放性好,死機(jī)現(xiàn)象大大減少。如果驅(qū)動軟件不太好,也會引起死機(jī)。重要的是,它無論維護(hù)成本、備件采購都不受DCS制造廠家的限制。但為防黑客、病毒侵入,防火墻不可缺少。
二 C/S結(jié)構(gòu)的人機(jī)界面的死機(jī)現(xiàn)象
1. C/S結(jié)構(gòu)
DCS人機(jī)界面采用普通PC、Windows操作系統(tǒng)以后,為增加人機(jī)界面數(shù)量,采用C/S結(jié)構(gòu),只要控制器上通過接口與服務(wù)器相連,服務(wù)器和客戶機(jī)上使用網(wǎng)絡(luò)接口適配器用電纜連接,就成為C/S結(jié)構(gòu)。
客戶機(jī)共享服務(wù)器的資源。服務(wù)器通常安裝在安全場所,保存DCS控制器送來的最有價值的現(xiàn)場生產(chǎn)數(shù)據(jù)。
作為服務(wù)器的計算機(jī)可能同時為幾臺或十幾臺客戶機(jī)服務(wù),所以服務(wù)器須要具有比客戶機(jī)更快的處理器、較大的內(nèi)存和更大的存儲空間。
客戶機(jī)是標(biāo)準(zhǔn)的PC運行Windows操作系統(tǒng),僅與服務(wù)器通信,不和其他客戶機(jī)通信,有自備軟件包。在作DCS操作站時,服務(wù)器和客戶機(jī)可運行同一監(jiān)控軟件,以便共享服務(wù)器資源。兩者所裝軟件的區(qū)別是服務(wù)器應(yīng)有DCS控制器驅(qū)動軟件而客戶機(jī)不需要。
還有一種情況是,在服務(wù)器監(jiān)控軟件上安裝OPC服務(wù)器,在客戶機(jī)監(jiān)控軟件上安裝OPC Client,客戶機(jī)就可訪問服務(wù)器。如在服務(wù)器上不需用圖形方式觀察現(xiàn)場設(shè)備運行情況,在服務(wù)器上也可不安監(jiān)控軟件,而只安OPC服務(wù)器,只是在查找故障時,才需要顯示器。
采用C/S結(jié)構(gòu)可節(jié)省DCS昂貴的網(wǎng)絡(luò)專用接口。為系統(tǒng)可靠運行,采用雙服務(wù)器冗余運行,這就是雙機(jī)雙網(wǎng)。一個系統(tǒng)最多用到兩個專用接口。
最終用戶反映,采用多個接口的多主站結(jié)構(gòu)較好,原因是服務(wù)器和客戶機(jī)安排不合適容易死機(jī)。如INFI90的Conductor NT和Honeywell的GUS在版本較低情況下都容易死機(jī)。
2. C/S結(jié)構(gòu)死機(jī)現(xiàn)象的產(chǎn)生
C/S結(jié)構(gòu)網(wǎng)絡(luò)的兩種硬件,通常稱為客戶PC和服務(wù)器??蛻鬚C在中央控制室,而服務(wù)器放在安全的地方。DCS操作站死機(jī)的原因錯綜復(fù)雜。本文僅限于分析由于采用C/S結(jié)構(gòu)引起的死機(jī)原因,有兩種情況:
控制器、服務(wù)器和客戶機(jī)三者之間的連接有兩種情況:一是DCS控制器有以太網(wǎng)接口,三者用以太網(wǎng)交換機(jī)來連接。交換機(jī)有多種端口,每個端口數(shù)據(jù)傳輸速率可以不等。端口數(shù)量由連接的計算機(jī)臺數(shù)決定。交換機(jī)主要指標(biāo)是背板寬度和存儲器大小。如果采用以太網(wǎng)電纜如10BASE、100BASE等的速率都可傳輸,如采用5類線只能是10BASE。在圖2以太網(wǎng)的連接是星型。使用離散的
電纜將每臺計算機(jī)連接到中央連接點,通常稱為網(wǎng)絡(luò)集線器。每臺計算機(jī)使用獨立電纜,連接失敗只影響有關(guān)的單臺計算機(jī),其他計算機(jī)可繼續(xù)運行。如果各臺機(jī)器適配器速率相同,以太網(wǎng)星型連接通常使用10BaseT電纜。
控制器把信息送給服務(wù)器,客戶機(jī)從服務(wù)器讀寫數(shù)據(jù),由于客戶機(jī)數(shù)量較多,如果它們之間采用一樣的連線就可能死機(jī)。各臺客戶機(jī)從服務(wù)器讀取的數(shù)據(jù)可以一樣,也可以不一樣。也可以是所有客戶機(jī)顯示內(nèi)容一樣,多臺操作站冗余運行。每臺操作站與服務(wù)器交換的數(shù)據(jù)較多,可采用100BASE端口,服務(wù)器和控制器數(shù)據(jù)交換較少,該采用10BASE端口,客戶機(jī)之間基本不交換數(shù)據(jù),也可采用10BASE端口。如果不這樣,很可能產(chǎn)生客戶機(jī)死機(jī)。
客戶PC和服務(wù)器的配置不合適
客戶PC的配置取決于準(zhǔn)備使用的操作系統(tǒng)。如DOS和Windows 3.1只要8MB內(nèi)存就可運轉(zhuǎn),而Windows 9x至少要16~32MB,Windows NT最少要32MB,最好是64MB,特別是Windows 2000,更需要64MB內(nèi)存。除內(nèi)存外對Windows 2000來說,應(yīng)采用更快的處理機(jī)和更大空間的硬盤。 本文來自http://www.jdzyjs.com
在選用客戶PC時,雖然可以比服務(wù)器的機(jī)器差一些,但內(nèi)存一定要比上面的要求還高一些。因為機(jī)器除運轉(zhuǎn)操作系統(tǒng)以外,還要與服務(wù)器讀寫數(shù)據(jù)。
服務(wù)器的CPU和硬盤驅(qū)動器承受網(wǎng)絡(luò)上所有客戶機(jī)的服務(wù)請求。服務(wù)器需要大量存儲器,比客戶機(jī)存儲器容量要高得多才行。
最好知道主板上存儲器插槽數(shù)目和支持的最大內(nèi)存數(shù)量。檢查隨DCS服務(wù)器來的存儲器是如何配置的。單條64MB DIMM機(jī)器比用16MB模塊插滿4個插槽的機(jī)器更容易升級。
服務(wù)器最好采用支持ECC內(nèi)存的存儲器。當(dāng)ECC存儲器與一個支持ECC的主板芯片組一起使用時,可糾正單個位存儲器錯誤和檢測多位存儲器錯誤。
硬盤驅(qū)動器對于服務(wù)器也很重要,連在網(wǎng)上的計算機(jī)都共享服務(wù)器文件,硬盤驅(qū)動器應(yīng)耐用、可靠和適用于同時為多個用戶服務(wù)的。因此,采用SCSI硬盤驅(qū)動器較合適。SCSI驅(qū)動器有智能和較快的轉(zhuǎn)速,采用UtraWideSCSI時從驅(qū)動器到系統(tǒng)間有極高數(shù)據(jù)傳輸率。無論是IDE硬盤驅(qū)動器還是SCSI硬盤驅(qū)動器,都可采用RAID技術(shù),能更安全地保存數(shù)據(jù),提高服務(wù)器質(zhì)量。SCSI總線可連接多臺硬盤驅(qū)動器,采用一臺9GB的硬盤驅(qū)動器沒有9臺1GB的SCSI硬盤驅(qū)動器的效率高。
市場上有一種磁盤陣列,專為服務(wù)器設(shè)計,是一種海量存儲器產(chǎn)品。硬盤驅(qū)動器陣列可裝入大量驅(qū)動器,用磁盤鏡像或RAID提供容錯,自動將服務(wù)器數(shù)據(jù)的多個拷貝存儲到不同硬盤驅(qū)動器上。當(dāng)驅(qū)動器發(fā)生故障時,所有數(shù)據(jù)依然對用戶有用。有些陣列驅(qū)動器甚至可熱交換,能在機(jī)器運行時更換故障。
服務(wù)器使用的RAID最好版本是RAID5,能為所有現(xiàn)在版本的C/S網(wǎng)絡(luò)操作系統(tǒng)所支持。RAID5數(shù)據(jù)“分析(stripes)"到多個SCSI驅(qū)動器上,使單個損壞驅(qū)動器上的內(nèi)容可以從陣列中其他驅(qū)動器的信息里重建。當(dāng)一個帶熱交換驅(qū)動器和供電的服務(wù)器結(jié)合在一起時,RAID5可使服務(wù)器以接近連續(xù)的24×7正常運行。
如果DCS不是采用C/S結(jié)構(gòu)的操作站,因各個操作站互相獨立,只保存一部分?jǐn)?shù)據(jù),如果是冗余配置,可靠性已很高,就不一定采用RAID技術(shù)。
DCS操作站為文件備份,可在操作站上安裝一個SCSI磁帶驅(qū)動器。采用C/S結(jié)構(gòu)的,在服務(wù)器上最好安裝磁帶機(jī),可把用戶組態(tài)的應(yīng)用軟件拷貝在磁帶機(jī)上。操作站或服務(wù)器發(fā)生故障時,能把應(yīng)用程序重新輸入。磁帶機(jī)產(chǎn)品更新也較快,1990年左右進(jìn)口DCS配備的磁帶機(jī)現(xiàn)在已買不到備件或磁帶,新老磁帶機(jī)和磁帶不兼容。
S9000系統(tǒng)控制器由兩部分組成,一塊3C905卡完成模擬量控制,另一塊PLC主機(jī)LPM620-0072,主機(jī)上有以太網(wǎng)口,它在組成系統(tǒng)時,采用以太網(wǎng)連接,組成C/S結(jié)構(gòu)。以太網(wǎng)連線有兩種方式,在客戶機(jī)較多情況采用集線器連接。
如果只用1~2臺操作站和1~2臺控制器就把所有操作站、控制器連在公共電纜上,網(wǎng)上連接設(shè)備很少,也可以采用T型連接器。
服務(wù)器比客戶機(jī)包含更多驅(qū)動器,還需考慮它的電源功率和可靠性。電源很容易被忽視,如忽視電源直流輸出是否穩(wěn)定,還有噪聲、雜散信號、尖峰脈沖和浪涌。電源是最容易出故障的部件之一。電子線路采用+3.3V或5V,硬盤驅(qū)動器和風(fēng)扇采用+12V電壓。
有以太網(wǎng)的網(wǎng)絡(luò)適配器,也有其他網(wǎng)絡(luò)適配器,但都不如以太網(wǎng)用得多,所以價格也高。采用以太網(wǎng)能降低DCS成本。
三 容易產(chǎn)生死機(jī)的系統(tǒng)實例
設(shè)計一個系統(tǒng),操作站采用C/S結(jié)構(gòu),連線如圖所示。如配置8臺操作站,2臺服務(wù)器,下位是4臺S9000控制器,需要在操作站中顯示的I/O點數(shù)為2000,控制器和服務(wù)器通過以太網(wǎng)通信??刂破鳌⒎?wù)器和控制器的物理連線是通過16端口的集線器(Switch Hub)。16端口集線器的速率缺省值是100BASE。如果服務(wù)器和操作站的適配器是10BASE,服務(wù)器和客戶機(jī)的內(nèi)存都是64kB,系統(tǒng)運行后死機(jī)現(xiàn)象較嚴(yán)重。
把服務(wù)器的一塊適配器換成100BASE,客戶機(jī)仍采用10BASE網(wǎng)絡(luò)適配器,把服務(wù)器內(nèi)存增加到256kB、客戶機(jī)增加到128kB,情況改觀很多。
從實際情況看,服務(wù)器和操作站死機(jī)原因與服務(wù)器內(nèi)存容量關(guān)系很大。64kB的內(nèi)存是最基本的,它的內(nèi)存應(yīng)該與操作站臺數(shù)有關(guān)。運行情況表明,增加一臺操作站服務(wù)器至少需要增加10~30kB內(nèi)存。服務(wù)器內(nèi)有兩塊網(wǎng)絡(luò)適配器,與控制器通信的采用10BASE,與操作站通信的采用100BASE,操作站可以采用10BASE的適配器。連線采用普通電纜。
如果服務(wù)器軟件和操作站軟件是fix,原來S9000的操作站就是采用該軟件,操作系統(tǒng)是Windows 3.2,死機(jī)情況不太嚴(yán)重。目前S9000系統(tǒng)監(jiān)控軟件是專用的,該軟件可能還有一些BUG,再加上網(wǎng)絡(luò)、內(nèi)存配置不太合理,死機(jī)現(xiàn)象十分嚴(yán)重。
客戶機(jī)應(yīng)該組態(tài)的那一臺服務(wù)器是主服務(wù)器,另一臺是從服務(wù)器。否則,當(dāng)一臺服務(wù)器發(fā)生故障時,另一臺服務(wù)器不能很好工作。如果有3服務(wù)器的話,組態(tài)更是重要。