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