|
1 引言 組態軟件(hmi)是國內對scada(supervisory control and data acquisition,監控和數據采集)系統的一種流行的簡稱。它是以計算機為基礎的生產過程控制與調度自動化系統,它可以對現場的運行設備進行監視和控制,以實現數據采集、測量、各類信號報警、設備控制以及參數調節等各項功能。 隨著現代工業生產規模的日益擴大,工業自動化應用日益呈現規模化、復雜化和廣域分布化特性,同時隨著信息化時代的到來,使得用戶對組態軟件的功能和結構都提出了更高的要求。針對不同的行業,其對組態軟件的實時性、多任務性、分布性等的要求也不一樣。例如航天、電力等領域對實時性和分布性要求較高,對分布性要求相對較低。而環境、供水供氣等行業對實時性要求較低,對分布性要求較高。由于行業條件要求的差異,相應的組態軟件的體系結構也會有所差別。 2 c/s、b/s體系結構 c/s (客戶機/服務器)和b/s(瀏覽器和服務器)是當今的兩大主流技術。c/s是美國borland公司最早研發,b/s是美國微軟公司研發。兩種體系結構各有優劣,因此也可將兩種體系結構混合使用。 2.1c/s體系結構 c/s軟件體系結構,即client/server(客戶機/服務器)結構,有兩層結構和三層結構。三層結構將應用功能分成表示層、功能層和數據層三個部分。它是兩層結構的進化,主要解決客戶機負荷太重、數據安全性低等局限。下面主要講三層c/s軟件體系結構。
功能層相當于應用的本體,它是將具體的業務處理邏輯編入程序中表示層和功能層之間的數據交往要盡可能簡潔。通常,在功能層中包含有確認用戶對應用和數據庫存取權限的功能以及記錄系統處理日志的功能。功能層的程序多半是用可視化編程工具開發的。 數據層就是數據庫管理系統,負責管理對數據庫數據的讀寫。數據庫管理系統必須能迅速執行大量數據的更新和檢索。 與傳統的二層結構相比,三層c/s結構具有以下優點: (1)允許合理地劃分三層結構的功能,使之在邏輯上保持相對獨立性,從而使整個系統的邏輯結構更為清晰,能提高系統和軟件的可維護性和可擴展性。 (2)允許更靈活有效地選用相應的平臺和硬件系統,使之在處理負荷能力上與處理特性上分別適應于結構清晰的三層;并且這些平臺和各個組成部分可以具有良好的可升級性和開放性。 (3)三層c/s結構中,應用的各層可以靈活的選擇各自最適合的開發語言,使之能并行地而且是高效地進行開發,達到較高的性能價格比。 (4)用戶必須通過功能層的授權才能訪問數據層,這就為嚴格的安全管理奠定了堅實的基礎,整個系統的管理層次也更加合理和可控制。 2.2b/s體系結構 b/s(browser/server)結構即瀏覽器和服務器結構,它是internet技術的興起產物,是基于c/s結構理論上,改進的一種結構,如圖2所示。
以目前的技術形勢下,建立b/s結構的網絡應用,并通過internet/intranet模式下數據庫應用,相對易于把握,成本也是較低的。它是一次性到位的開發,能實現不同的人員,從不同的地點,以不同的接入方式(比如lan,wan,internet/intranet等)訪問和操作共同的數據庫;它能有效地保護數據平臺和管理訪問權限,服務器數據庫也相對比較安全。尤其在java語言出現之后,b/s架構管理軟件更是方便、快捷、高效。 2.3c/s、b/s混合體系結構 c/s、b/s混合體系結構是基于c/s體系結構的成熟性和b/s體系結構的先進性,采用靈活的結合方式將二者組織起來一種混合結構體,如圖3所示。
2.4c/s與b/s體系結構比較與建議 c/s與b/s體系結構比較的格式化表參見表1所示。
在工業組態軟件開發過程中,軟件所應用的環境決定了軟件的體系結構,一般實時性要求比較高的,可以采用c/s結構,要求能在廣域網中發布的(分布性高),可以采用b/s結構,如果實時性和分布性都要求比較高的可以采用c/s、b/s混合模式。 c/s結構的典型應用有北京亞控公司的組態王、北京昆侖公司的mcgs、大慶三維公司的force control;b/s結構的典型應用有加特儀表有限公司通用組態軟件;混合結構的典型應用有萬洲電氣集團有限公司的配網智能優化節電系統,實際應用表明,該體系結構兼顧了響應速度快和廣域網發布的雙重優點,滿足監控系統對數據處理的及時性和web發布的要求,保證了系統的實時性、穩定性和安全性。(網絡) |