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