1. OPC UA客戶端/服務(wù)器模型
客戶端/服務(wù)器模型是OPC UA中標(biāo)準(zhǔn)的通信模型。基于這樣一種思想:存在一個(gè)被動(dòng)的服務(wù)器組件,該組件對(duì)所有客戶端的應(yīng)用程序公開其數(shù)據(jù)。客戶端應(yīng)用程序可以通過一些標(biāo)準(zhǔn)化的服務(wù)從服務(wù)器訪問數(shù)據(jù)和信息。
客戶端/服務(wù)器模型在客戶端/服務(wù)器架構(gòu)下,客戶端要做的第一件事是實(shí)現(xiàn)與服務(wù)器的連接。客戶端通過一個(gè)連接地址(在此我們略過一些細(xì)節(jié)),將創(chuàng)建一個(gè)與服務(wù)器的會(huì)話通道。該會(huì)話包含一個(gè)安全的報(bào)文,其中包括可選擇的加密和身份驗(yàn)證等參數(shù)——用于識(shí)別服務(wù)器中的客戶端應(yīng)用程序和用戶是否匹配。客戶端還可以識(shí)別服務(wù)器,并決定是否允許與該服務(wù)器通信。
會(huì)話建立之后,客戶端應(yīng)用程序可以從服務(wù)器請(qǐng)求一些標(biāo)準(zhǔn)服務(wù)。這些服務(wù)包括:
1.連接并創(chuàng)建會(huì)話
2. 瀏覽地址空間——查找服務(wù)器上可用的內(nèi)容
3.讀取-變量值或原始數(shù)據(jù)
4. 寫入-變量值或原始數(shù)據(jù)
5. 調(diào)用方法
6. 閱讀歷史信息-變量和事件
7. 關(guān)閉會(huì)話并斷開連接
所以最后,當(dāng)客戶端完成需求時(shí),它將關(guān)閉會(huì)話并斷開連接。
客戶端/服務(wù)器訂閱
客戶端/服務(wù)器模型內(nèi)還包含一個(gè)訂閱模型。在這個(gè)模型中,每個(gè)客戶端可以創(chuàng)建任意數(shù)量的服務(wù)器訂閱(在此的訂閱為訂閱功能)。每個(gè)訂閱都可以包括變量、EventNotifier的MonitoredItems(具有EventNotifier屬性集的對(duì)象節(jié)點(diǎn))。
客戶端/服務(wù)器模型內(nèi)訂閱客戶端/服務(wù)器的優(yōu)缺點(diǎn)
客戶端/服務(wù)器模型已經(jīng)成功地用于各種的SCADA場(chǎng)景中,當(dāng)不同應(yīng)用程序之間的連接數(shù)量不是很多時(shí),它就會(huì)順利交互。但是如果有數(shù)十或數(shù)百個(gè)設(shè)備(即服務(wù)器)需要持續(xù)連接或類似數(shù)量的客戶端需要連接到任何服務(wù)器,可能會(huì)在資源配置方面遇到麻煩,因?yàn)槊總€(gè)連接和訂閱都需要內(nèi)部維護(hù),并且它們會(huì)在網(wǎng)絡(luò)中占用單獨(dú)的流量。
客戶端/服務(wù)器模型主要場(chǎng)景OPC UA的設(shè)計(jì)不是為了實(shí)現(xiàn)任何確定性的通信或不可靠網(wǎng)絡(luò)上的通信。但是它支持同步服務(wù)調(diào)用,接收即時(shí)結(jié)果或?qū)Σ僮髦噶畹拇_認(rèn),這對(duì)應(yīng)用程序非常重要。其安全性也很靈活,可以為每個(gè)應(yīng)用程序和用戶定義規(guī)則,甚至為每個(gè)變量定義規(guī)則。
隨著OPCUA技術(shù)的應(yīng)用范圍越來越廣,對(duì)OPCUA技術(shù)的更多需求也不斷增加。很多應(yīng)用希望OPCUA能具備更多確定性通訊特性,或者具備更好的伸縮性。為了應(yīng)對(duì)這類需求,OPCUA定義了Pub/Sub模型。下期我們深入討論P(yáng)ub/Sub模型的技術(shù)詳情。
-
OPC
+關(guān)注
關(guān)注
7文章
339瀏覽量
46156 -
OPCUA
+關(guān)注
關(guān)注
1文章
25瀏覽量
2319
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論