孫建林 王蘇梅 盛磊
1 項(xiàng)目背景
梅山熱軋畫面系統(tǒng)采用了美國(guó)通用電氣公司設(shè)計(jì)開(kāi)發(fā)的基于多層架構(gòu)的Cimplicity產(chǎn)品,該產(chǎn)品應(yīng)用領(lǐng)域非常廣泛,是一種專門應(yīng)用于需要人機(jī)接口設(shè)計(jì)和管理的各種控制場(chǎng)合。
梅山熱軋自動(dòng)化系統(tǒng)采用Client/Server 結(jié)構(gòu)和面向?qū)ο蟪绦蛟O(shè)計(jì)技術(shù)(OOP)進(jìn)行設(shè)計(jì),畫面系統(tǒng)作為一個(gè)相對(duì)獨(dú)立的系統(tǒng),可以非常方便的嵌入到整個(gè)自動(dòng)化系統(tǒng)中去,使之成為一個(gè)整體來(lái)進(jìn)行軋制過(guò)程的控制。該畫面系統(tǒng)采用一臺(tái)Cimplicity Server管理整個(gè)畫面系統(tǒng)和20多臺(tái)畫面節(jié)點(diǎn)Complicity View。畫面服務(wù)器中配置的工程要完成對(duì)15000多個(gè)信號(hào)點(diǎn)的采集、控制,以及370多幅畫面的管理。
由于生產(chǎn)工藝、操作等方面的要求,在自動(dòng)化系統(tǒng)中增加了多個(gè)瀏覽站Cimplicity View,其總數(shù)達(dá)到了四十臺(tái)。造成了畫面服務(wù)器負(fù)擔(dān)過(guò)重,系統(tǒng)響應(yīng)慢,乃至部分畫面在控制過(guò)程中多次發(fā)生突發(fā)性停滯現(xiàn)象。在緊急情況下由于畫面上數(shù)據(jù)刷新不及時(shí),畫面的不可操作性,造成了多塊廢鋼,對(duì)生產(chǎn)產(chǎn)生了很大的影響。
2 畫面系統(tǒng)Cimplicity的工作原理
Cimplicity畫面系統(tǒng)是GE Faunc的產(chǎn)品,該軟件具有很高的靈活性和可伸縮性,它可以適用于單一的人機(jī)到完全網(wǎng)絡(luò)化的監(jiān)督控制和數(shù)據(jù)采集系統(tǒng)。在產(chǎn)品系列的各個(gè)層次上都具有網(wǎng)絡(luò)互聯(lián)的能力。
Cimplicity可靈活的構(gòu)成二層或三層架構(gòu)。對(duì)于簡(jiǎn)單、小型應(yīng)用場(chǎng)合,它可配置為傳統(tǒng)的服務(wù)器和瀏覽站組成的基于客戶服務(wù)器體系結(jié)構(gòu)的系統(tǒng)結(jié)構(gòu),如圖1所示;而對(duì)于復(fù)雜的控制場(chǎng)合,它又可配置為瀏覽站、中間處理服務(wù)器及后臺(tái)實(shí)時(shí)分布式數(shù)據(jù)庫(kù)的三層結(jié)構(gòu),如圖2所示。后臺(tái)實(shí)時(shí)分布式數(shù)據(jù)服務(wù)器負(fù)責(zé)數(shù)據(jù)的采集和數(shù)據(jù)的分配。瀏覽站連接到中間處理服務(wù)器上可以對(duì)被采集到的數(shù)據(jù)進(jìn)行完全的訪問(wèn)以便觀察和控制,以及執(zhí)行用戶的操作請(qǐng)求。
圖1 基于Client/Server架構(gòu)的畫面系統(tǒng)
圖2 基于三層架構(gòu)的畫面系統(tǒng)
三層結(jié)構(gòu)是傳統(tǒng)的客戶服務(wù)器體系結(jié)構(gòu)的發(fā)展,代表了企業(yè)級(jí)應(yīng)用的未來(lái),典型的有Web下的應(yīng)用、多層C/S應(yīng)用等。多層結(jié)構(gòu)和三層結(jié)構(gòu)的含義是一樣的,只是細(xì)節(jié)有所不同。之所以會(huì)有二層、三層這些提法,是因?yàn)閼?yīng)用程序要解決三個(gè)層面的問(wèn)題:
(1) 瀏覽層(界面層)提供給用戶一個(gè)視覺(jué)上的界面,通過(guò)界面層,用戶輸入數(shù)據(jù)、獲取數(shù)據(jù)。界面層同時(shí)也提供一定的安全性,確保用戶不會(huì)看到機(jī)密的信息。
(2) 邏輯層(也稱中間層、中介代理)是界面層和數(shù)據(jù)層的橋梁,它響應(yīng)界面層的用戶請(qǐng)求,執(zhí)行任務(wù)并從數(shù)據(jù)層抓取數(shù)據(jù),并將必要的數(shù)據(jù)傳送給界面層。使用清晰的語(yǔ)言陳述論點(diǎn)。
(3) 數(shù)據(jù)層,數(shù)據(jù)層定義、維護(hù)數(shù)據(jù)的完整性、安全性,它響應(yīng)邏輯層的請(qǐng)求,訪問(wèn)數(shù)據(jù)。這一層通常由大型的數(shù)據(jù)庫(kù)服務(wù)器實(shí)現(xiàn),如Oracle、Sybase、DB2、MS SQL Server等。
單層結(jié)構(gòu)將瀏覽層、邏輯層、數(shù)據(jù)層合并在一起。二層結(jié)構(gòu)有兩種,一種將瀏覽層和邏輯層合為一層,數(shù)據(jù)層是另一層,通常稱為胖客戶/服務(wù)器結(jié)構(gòu);另一種將邏輯層和數(shù)據(jù)層合為一層,瀏覽層是另一層,通常稱為瘦客戶/服務(wù)器結(jié)構(gòu)。三層結(jié)構(gòu)則將這幾層分離處理。它是最簡(jiǎn)單的多層應(yīng)用,它把應(yīng)用程序分為:瘦客戶端應(yīng)用程序、應(yīng)用程序服務(wù)器和遠(yuǎn)端數(shù)據(jù)庫(kù)服務(wù)器。其中,客戶端主要負(fù)責(zé)用戶界面的處理;服務(wù)器端主要負(fù)責(zé)商業(yè)邏輯的處理,為客戶端提供公共的數(shù)據(jù)服務(wù),處理客戶端與數(shù)據(jù)庫(kù)間的數(shù)據(jù)流;遠(yuǎn)端數(shù)據(jù)庫(kù)服務(wù)器提供關(guān)系數(shù)據(jù)庫(kù)的存取與維護(hù)。
其優(yōu)點(diǎn)在于:① 具有靈活的硬件系統(tǒng)構(gòu)成及更好的支持分布式計(jì)算環(huán)境。② 提高程序的可維護(hù)性。③ 瘦客戶的模式。④ 進(jìn)行嚴(yán)密的安全管理,此外,系統(tǒng)管理簡(jiǎn)單,可支持異種數(shù)據(jù)庫(kù),有很高的可用性。
3 設(shè)計(jì)思想及方法
經(jīng)過(guò)仔細(xì)分析,筆者認(rèn)為:原畫面服務(wù)器采用的硬件配置偏低,且設(shè)計(jì)時(shí)考慮的客戶機(jī)節(jié)點(diǎn)CimView數(shù)目較少,但現(xiàn)在整個(gè)畫面服務(wù)系統(tǒng)客戶機(jī)節(jié)點(diǎn)CimView數(shù)量增加較多,造成了畫面服務(wù)器負(fù)擔(dān)過(guò)重,畫面服務(wù)器的信號(hào)處理能力不足,這是發(fā)生部分畫面變灰故障的主要原因。
設(shè)計(jì)思想:針對(duì)這個(gè)原因筆者把目光集中到提高數(shù)據(jù)處理能力,降低畫面系統(tǒng)負(fù)載上,首先提高了畫面服務(wù)器的內(nèi)存容量,提高至512M,但效果不明顯。這時(shí)決定以犧牲整個(gè)畫面系統(tǒng)數(shù)據(jù)信號(hào)點(diǎn)的刷新頻率為代價(jià),降低畫面系統(tǒng)負(fù)荷,把數(shù)據(jù)信號(hào)點(diǎn)的刷新頻率由每秒鐘刷新4次,降低到每秒鐘刷新3次,但效果也甚微。
在此情況下筆者重新考慮,提出對(duì)整個(gè)畫面系統(tǒng)進(jìn)行重新設(shè)計(jì),區(qū)域劃分。采用雙畫面服務(wù)器在線聯(lián)機(jī)控制整個(gè)畫面系統(tǒng),來(lái)提高控制系統(tǒng)的性能。很顯然,實(shí)現(xiàn)這一設(shè)想,要解決諸多技術(shù)上的問(wèn)題。首先原畫面系統(tǒng)管轄范圍需重新分離,按照區(qū)域?qū)υ械脑O(shè)備、CimView、資源、用戶及相關(guān)的點(diǎn)分別劃歸兩臺(tái)在線服務(wù)器響應(yīng),管理。兩者之間既要相互獨(dú)立,又要互不干擾,相輔相成,組成統(tǒng)一的畫面系統(tǒng),如圖3所示。
圖3 基于三層架構(gòu)的雙畫面中間處理服務(wù)器
但該方案實(shí)施難度較大,整個(gè)畫面系統(tǒng)有15000多個(gè)數(shù)據(jù)信號(hào)點(diǎn)需重新規(guī)劃,按照區(qū)域?qū)υO(shè)備、資源重新劃分,劃分后的系統(tǒng)其數(shù)據(jù)信號(hào)點(diǎn)一個(gè)也不能少。其次要對(duì)原有的370多幅畫面重新修改,修改后的畫面既要能滿足生產(chǎn)要求,又要盡可能的避免一幅畫面同時(shí)訪問(wèn)兩個(gè)畫面服務(wù)器,造成時(shí)間響應(yīng)上的遲緩。外方工程師對(duì)該設(shè)計(jì)方案的獨(dú)特性給予了肯定,但由于沒(méi)有成功實(shí)踐過(guò)的經(jīng)驗(yàn),所以很難預(yù)料是否能成功實(shí)現(xiàn)這一設(shè)想。
設(shè)計(jì)方法:
(1) 硬件方面,提高數(shù)據(jù)處理能力。增大原畫面服務(wù)器的內(nèi)存容量,由256M提高到512M。新增的畫面服務(wù)器采用奔4處理器和512M DDR內(nèi)存。
(2) 軟件方面,對(duì)原有的畫面服務(wù)器系統(tǒng)進(jìn)行重新規(guī)劃,修改畫面。對(duì)原有整個(gè)軋線的CimView、設(shè)備、資源、用戶及相關(guān)的點(diǎn)重新劃分。粗軋、精軋區(qū)域的歸“精軋工程”服務(wù)器管理,卷取區(qū)域的歸“卷取工程”服務(wù)器管理。修改畫面使粗軋、精軋區(qū)域畫面歸“精軋工程”服務(wù)器管理,卷取區(qū)域畫面的歸“卷取工程”服務(wù)器管理。
(3) 預(yù)留將來(lái)粗軋、加熱爐改造擴(kuò)展余量。“卷取工程”服務(wù)器留有足夠余量以加入粗軋、加熱爐區(qū)域的設(shè)備、資源及信號(hào)點(diǎn)。
4 項(xiàng)目具體實(shí)施步驟
(1) 安裝配置WIN2000操作系統(tǒng)及相關(guān)硬件,設(shè)置TCP/IP通訊網(wǎng)卡、UDP/IP網(wǎng)卡。
(2) 配置Cisco交換機(jī)端口。
(3) 安裝配置Cimplicity畫面服務(wù)器軟件,完成用戶注冊(cè)。
(4) 安裝配置基于TCP/IP 協(xié)議的GE IO_Services通訊軟件。
(5) 安裝配置基于NT環(huán)境下的瀏覽站與服務(wù)器之間的專用通訊軟件GE HINT。
(6) 安裝配置GE 信號(hào)交換SDB_Exchange軟件。
(7) 配置數(shù)據(jù)庫(kù)ODBC數(shù)據(jù)源。
(8) 修改所有畫面。
(9) 重新配置畫面工程、CimView、設(shè)備、資源、用戶及相關(guān)的點(diǎn)。
5 項(xiàng)目實(shí)施后存在的問(wèn)題及改進(jìn)對(duì)策
存在的問(wèn)題:① 由于現(xiàn)在是兩個(gè)畫面服務(wù)器管理畫面系統(tǒng),這就造成操作工第一次系統(tǒng)登錄時(shí)必須登錄兩個(gè)工程,且要經(jīng)過(guò)兩次身份認(rèn)證。② 在從精軋畫面工程切換到卷取畫面工程時(shí)等待時(shí)間較長(zhǎng)。③ 整個(gè)計(jì)算機(jī)網(wǎng)絡(luò)系統(tǒng)負(fù)荷有所增大。
改進(jìn)對(duì)策:① 操作工在一次成功登錄時(shí),選擇系統(tǒng)自動(dòng)保存用戶和密碼。② 操作工成功登錄后,先進(jìn)行工程之間的切換。③ 雖然網(wǎng)絡(luò)系統(tǒng)負(fù)荷增大,但對(duì)整個(gè)網(wǎng)絡(luò)負(fù)載能力來(lái)說(shuō)還是較小的。
6 項(xiàng)目評(píng)價(jià)
實(shí)時(shí)控制系統(tǒng)對(duì)信號(hào)的響應(yīng)性要求非常高,尤其是熱連軋過(guò)程控制系統(tǒng)。隨著軋制節(jié)奏的加快,要求各功能軟件能夠快速的做出反映,而且還需要快速的展現(xiàn)在操作人員面前,以便及時(shí)了解成品質(zhì)量情況。項(xiàng)目攻關(guān)小組通過(guò)近半年的設(shè)計(jì)、規(guī)劃、試驗(yàn)、投入運(yùn)行,終于實(shí)現(xiàn)了原有一個(gè)畫面中間處理服務(wù)器到建立二個(gè)畫面中間處理器的成功過(guò)渡,從中反映出大型實(shí)時(shí)控制系統(tǒng)分布式處理與三層架構(gòu)的結(jié)合對(duì)提高系統(tǒng)整體性能的有效性。對(duì)原有的CimView、設(shè)備、資源、用戶及相關(guān)的點(diǎn)重新規(guī)劃后,每臺(tái)畫面中間處理器的CPU使用率降低到50%以下,系統(tǒng)響應(yīng)更及時(shí)。自該項(xiàng)目成功投入使用后未發(fā)生畫面變灰和畫面不可操作的現(xiàn)象,基本杜絕了由于畫面系統(tǒng)問(wèn)題而造成的廢鋼,從而有效的保證了生產(chǎn)的順行,同時(shí)該項(xiàng)目的成功實(shí)現(xiàn)也為將來(lái)我廠進(jìn)行粗軋、加熱爐計(jì)算機(jī)系統(tǒng)改造積累了豐富的經(jīng)驗(yàn)。
7 結(jié)語(yǔ)
自動(dòng)化實(shí)時(shí)控制領(lǐng)域向多層分布式應(yīng)用系統(tǒng)跨越已經(jīng)成為一種必然趨勢(shì)。開(kāi)發(fā)好多層應(yīng)用系統(tǒng)關(guān)鍵是清晰、合理地劃分好瀏覽層、中間層和數(shù)據(jù)層并使其獨(dú)立,可以使系統(tǒng)構(gòu)成變的非常簡(jiǎn)單,選擇什么樣的平臺(tái)和工具,如何簡(jiǎn)化分布式應(yīng)用的開(kāi)發(fā)、分發(fā)及管理工作,已成為企業(yè)迫切需要解決的問(wèn)題。多層體系并不單是技術(shù)問(wèn)題,它是一種軟件開(kāi)發(fā)的方法論。而且,多層結(jié)構(gòu)主要是指邏輯上的三層,不是物理意義上的多層。傳統(tǒng)的Client/Server也可以采用三層開(kāi)發(fā)思想。另外,若采用多層開(kāi)發(fā)模式,而不運(yùn)用OOP的開(kāi)發(fā)思想,很難做到真正意義的多層結(jié)構(gòu)。如果把多層和OOP結(jié)合起來(lái),進(jìn)行軟件開(kāi)發(fā),那么開(kāi)發(fā)出來(lái)的應(yīng)用系統(tǒng)就具有很強(qiáng)的適應(yīng)性,物理上既可以是多層的,也可以是傳統(tǒng)兩層的,可以根據(jù)實(shí)際的需要靈活配置。