1、引言
組態(tài)軟件(hmi)是國內(nèi)對scada(supervisory control and data acquisition,監(jiān)控和數(shù)據(jù)采集)系統(tǒng)的一種流行的簡稱。它是以計(jì)算機(jī)為基礎(chǔ)的生產(chǎn)過程控制與調(diào)度自動化系統(tǒng),它可以對現(xiàn)場的運(yùn)行設(shè)備進(jìn)行監(jiān)視和控制,以實(shí)現(xiàn)數(shù)據(jù)采集、測量、各類信號報(bào)警、設(shè)備控制以及參數(shù)調(diào)節(jié)等各項(xiàng)功能。
隨著現(xiàn)代工業(yè)生產(chǎn)規(guī)模的日益擴(kuò)大,工業(yè)自動化應(yīng)用日益呈現(xiàn)規(guī)模化、復(fù)雜化和廣域分布化特性,同時(shí)隨著信息化時(shí)代的到來,使得用戶對組態(tài)軟件的功能和結(jié)構(gòu)都提出了更高的要求。針對不同的行業(yè),其對組態(tài)軟件的實(shí)時(shí)性、多任務(wù)性、分布性等的要求也不一樣。例如航天、電力等領(lǐng)域?qū)?shí)時(shí)性和分布性要求較高,對分布性要求相對較低。而環(huán)境、供水供氣等行業(yè)對實(shí)時(shí)性要求較低,對分布性要求較高。由于行業(yè)條件要求的差異,相應(yīng)的組態(tài)軟件的體系結(jié)構(gòu)也會有所差別。
2、 c/s、b/s體系結(jié)構(gòu)
c/s (客戶機(jī)/服務(wù)器)和b/s(瀏覽器和服務(wù)器)是當(dāng)今的兩大主流技術(shù)。c/s是美國borland公司最早研發(fā),b/s是美國微軟公司研發(fā)。兩種體系結(jié)構(gòu)各有優(yōu)劣,因此也可將兩種體系結(jié)構(gòu)混合使用。
2.1c/s體系結(jié)構(gòu)
c/s軟件體系結(jié)構(gòu),即client/server(客戶機(jī)/服務(wù)器)結(jié)構(gòu),有兩層結(jié)構(gòu)和三層結(jié)構(gòu)。三層結(jié)構(gòu)將應(yīng)用功能分成表示層、功能層和數(shù)據(jù)層三個(gè)部分。它是兩層結(jié)構(gòu)的進(jìn)化,主要解決客戶機(jī)負(fù)荷太重、數(shù)據(jù)安全性低等局限。下面主要講三層c/s軟件體系結(jié)構(gòu)。
表示層是應(yīng)用的用戶接口部分,它擔(dān)負(fù)著用戶與應(yīng)用間的對話功能。它用于檢查用戶從鍵盤等輸入的數(shù)據(jù),顯示應(yīng)用輸出的數(shù)據(jù)。為使用戶能直觀地進(jìn)行操作,一般要使用圖形用戶接口,操作簡單、易學(xué)易用。在變更用戶接口時(shí),只需改寫顯示控制和數(shù)據(jù)檢查程序,而不影響其他兩層。檢查的內(nèi)容也只限于數(shù)據(jù)的形式和取值的范圍,不包括有關(guān)業(yè)務(wù)本身的處理邏輯。
功能層相當(dāng)于應(yīng)用的本體,它是將具體的業(yè)務(wù)處理邏輯編入程序中表示層和功能層之間的數(shù)據(jù)交往要盡可能簡潔。通常,在功能層中包含有確認(rèn)用戶對應(yīng)用和數(shù)據(jù)庫存取權(quán)限的功能以及記錄系統(tǒng)處理日志的功能。功能層的程序多半是用可視化編程工具開發(fā)的。
數(shù)據(jù)層就是數(shù)據(jù)庫管理系統(tǒng),負(fù)責(zé)管理對數(shù)據(jù)庫數(shù)據(jù)的讀寫。數(shù)據(jù)庫管理系統(tǒng)必須能迅速執(zhí)行大量數(shù)據(jù)的更新和檢索。
與傳統(tǒng)的二層結(jié)構(gòu)相比,三層c/s結(jié)構(gòu)具有以下優(yōu)點(diǎn):
(1)允許合理地劃分三層結(jié)構(gòu)的功能,使之在邏輯上保持相對獨(dú)立性,從而使整個(gè)系統(tǒng)的邏輯結(jié)構(gòu)更為清晰,能提高系統(tǒng)和軟件的可維護(hù)性和可擴(kuò)展性。
(2)允許更靈活有效地選用相應(yīng)的平臺和硬件系統(tǒng),使之在處理負(fù)荷能力上與處理特性上分別適應(yīng)于結(jié)構(gòu)清晰的三層;并且這些平臺和各個(gè)組成部分可以具有良好的可升級性和開放性。
(3)三層c/s結(jié)構(gòu)中,應(yīng)用的各層可以靈活的選擇各自最適合的開發(fā)語言,使之能并行地而且是高效地進(jìn)行開發(fā),達(dá)到較高的性能價(jià)格比。
(4)用戶必須通過功能層的授權(quán)才能訪問數(shù)據(jù)層,這就為嚴(yán)格的安全管理奠定了堅(jiān)實(shí)的基礎(chǔ),整個(gè)系統(tǒng)的管理層次也更加合理和可控制。
2.2b/s體系結(jié)構(gòu)
b/s(browser/server)結(jié)構(gòu)即瀏覽器和服務(wù)器結(jié)構(gòu),它是internet技術(shù)的興起產(chǎn)物,是基于c/s結(jié)構(gòu)理論上,改進(jìn)的一種結(jié)構(gòu),如圖2所示。
在這種結(jié)構(gòu)下,用戶工作界面是瀏覽器,通瀏覽器來訪問服務(wù)器。此結(jié)構(gòu)在事務(wù)邏輯處理上,極少部分在前端(browser)——瀏覽器端實(shí)現(xiàn),主要在服務(wù)器端(server)實(shí)現(xiàn),形成所謂三層3-tier結(jié)構(gòu)。這樣就簡化了客戶端電腦載荷,減輕了系統(tǒng)維護(hù)與升級的成本和工作量,降低了用戶的總體成本(tco)。
以目前的技術(shù)形勢下,建立b/s結(jié)構(gòu)的網(wǎng)絡(luò)應(yīng)用,并通過internet/intranet模式下數(shù)據(jù)庫應(yīng)用,相對易于把握,成本也是較低的。它是一次性到位的開發(fā),能實(shí)現(xiàn)不同的人員,從不同的地點(diǎn),以不同的接入方式(比如lan,wan,internet/intranet等)訪問和操作共同的數(shù)據(jù)庫;它能有效地保護(hù)數(shù)據(jù)平臺和管理訪問權(quán)限,服務(wù)器數(shù)據(jù)庫也相對比較安全。尤其在java語言出現(xiàn)之后,b/s架構(gòu)管理軟件更是方便、快捷、高效。
2.3c/s、b/s混合體系結(jié)構(gòu)
c/s、b/s混合體系結(jié)構(gòu)是基于c/s體系結(jié)構(gòu)的成熟性和b/s體系結(jié)構(gòu)的先進(jìn)性,采用靈活的結(jié)合方式將二者組織起來一種混合結(jié)構(gòu)體,如圖3所示。
這種結(jié)構(gòu)體的紐帶是數(shù)據(jù)服務(wù)器,一方面數(shù)據(jù)服務(wù)器要響應(yīng)應(yīng)用服務(wù)器的請求,另一方面要同時(shí)響應(yīng)web服務(wù)器的請求。在此結(jié)構(gòu)體中,c/s結(jié)構(gòu)部分主要解決純b/s系統(tǒng)對用戶請求響應(yīng)速度慢的問題,而b/s結(jié)構(gòu)部分則打破了用戶群只在局域網(wǎng)中的困局。
2.4c/s與b/s體系結(jié)構(gòu)比較與建議
c/s與b/s體系結(jié)構(gòu)比較的格式化表參見表1所示。
c/s與b/s體系結(jié)構(gòu)比較的格式化表根據(jù)上述對上述組態(tài)軟件體系結(jié)構(gòu)的比較,根據(jù)工控環(huán)境對組態(tài)軟件的實(shí)時(shí)性,分布性要求的高低,提出以下設(shè)計(jì)建議表如表2所示。
3、 結(jié)束語
在工業(yè)組態(tài)軟件開發(fā)過程中,軟件所應(yīng)用的環(huán)境決定了軟件的體系結(jié)構(gòu),一般實(shí)時(shí)性要求比較高的,可以采用c/s結(jié)構(gòu),要求能在廣域網(wǎng)中發(fā)布的(分布性高),可以采用b/s結(jié)構(gòu),如果實(shí)時(shí)性和分布性都要求比較高的可以采用c/s、b/s混合模式。
c/s結(jié)構(gòu)的典型應(yīng)用有北京亞控公司的組態(tài)王、北京昆侖公司的mcgs、大慶三維公司的force control;b/s結(jié)構(gòu)的典型應(yīng)用有加特儀表有限公司通用組態(tài)軟件;混合結(jié)構(gòu)的典型應(yīng)用有萬洲電氣集團(tuán)有限公司的配網(wǎng)智能優(yōu)化節(jié)電系統(tǒng),實(shí)際應(yīng)用表明,該體系結(jié)構(gòu)兼顧了響應(yīng)速度快和廣域網(wǎng)發(fā)布的雙重優(yōu)點(diǎn),滿足監(jiān)控系統(tǒng)對數(shù)據(jù)處理的及時(shí)性和web發(fā)布的要求,保證了系統(tǒng)的實(shí)時(shí)性、穩(wěn)定性和安全性。
責(zé)任編輯:gt
-
監(jiān)控
+關(guān)注
關(guān)注
6文章
2205瀏覽量
55178 -
計(jì)算機(jī)
+關(guān)注
關(guān)注
19文章
7489瀏覽量
87876 -
數(shù)據(jù)采集
+關(guān)注
關(guān)注
38文章
6060瀏覽量
113630
發(fā)布評論請先 登錄
相關(guān)推薦
評論