濟南達索機電科技有限公司
地 址:濟南市天橋區(qū)無影山中路153號香港國際
電 話:0531-85554311
傳 真:0531-85554537
QQ:1149156245
微 信:18663708113
WhatsApp:18663708113
Email:jndassaw@163.com
免責聲明:達索機電非本網(wǎng)站所推薦制造商的授權(quán)經(jīng)銷商,本網(wǎng)站上推薦制造商品牌名稱及商標歸其權(quán)屬人所有。
OPC技術(shù)提供了一種互聯(lián)、可靠、安全的通信平臺。然而,OPC技術(shù)依賴于DCOM架構(gòu),包括Windows安全和防火墻設置、訪問控制列表、Server認證等。本文給出了OPC DCOM配置過程中最常發(fā)生的5個問題、導致原因及解決方法。
1 不能瀏覽遠程計算機的OPC Server
瀏覽是指OPC Client應用程序能夠察看到安裝在遠程計算機上的OPC Server。OPC Client執(zhí)行一次瀏覽操作實際是連接到駐留在遠程計算機上的OPCEnum映像,并檢索出可訪問OPC Server列表。這包括了每個OPC Server的ProgID(用戶接口名字)和GUID(Global unique identifier,全局唯一標識符),如圖1所示。OPC Client并不真正直接連接到OPC Server。
因此,瀏覽出的列表與OPC Server的狀態(tài)無關,或者說與OPC Server的可操作與否無關,瀏覽OPC Server失敗的直接原因是不能獲得與遠程計算機上的OPCEnum通信所需的參數(shù),造成這個問題可能有如下原因。
1.1 OPCEnum沒有安裝
OPC基金會負責創(chuàng)建和維護OPCEnum。OPC基金會的成員能夠從OPC基金會直接免費獲得OPCEnum。
1.2 OPCEnum被禁止
即使OPCEnum被安裝在遠程的計算機上,它也必須能夠被執(zhí)行,否則通信將會失敗。
1.3 匿名訪問權(quán)限沒有被設置
OPCEnum需要匿名訪問權(quán)限才能正常的工作。因此需要在Windows COM缺省安全中添加匿名訪問權(quán)限。
2 不能連接遠程計算機的OPC Server
能夠瀏覽遠程計算機的OPC Server和連接遠程計算機的OPC Server是無關的。即使遠程計算機沒有安裝OPCEnum,也可以連接遠程計算機的OPC Server。在這種情況下,只要知道遠程計算機上要連接的OPC Server的GUID。導致不能連接遠程計算機的OPC Server可能有如下原因。
2.1 OPC Server被禁止
如果OPC Server被設置以Windows服務的方式運行是不能夠禁止的,故需要檢查一下OPC Server是否被禁止。
2.2 用戶身份認證的問題
認證是驗證用戶身份的流程。Windows系統(tǒng)會比較用戶名和密碼,如果是操作系統(tǒng)不能識別的用戶,就會拒絕訪問從而不能與OPC Server建立連接。下面兩種情況可能導致用戶身份認證失敗:
l 用戶的賬戶在遠程的計算機上并不存在;
l 關閉Simple File Sharing(簡單文件共享)會去掉遠程訪問計算機的用戶名和密碼,導致用戶不能被正確的認證。
2.3 訪問控制列表問題
當認證了一個來訪問的用戶賬戶后,系統(tǒng)將檢查用戶賬戶是否有啟動或者訪問OPC Server的權(quán)限,這是利用ACL(訪問控制列表)來完成的。每個應用程序的ACL包括了用戶賬戶的信息,操作權(quán)限等。因此,可能由于賬戶在ACL中沒有相應的操作權(quán)限而被操作系統(tǒng)拒絕訪問。
3 所有的Item顯示為Bad
當與一個OPC Server建立連接時,必須能夠識別遠程計算機的賬戶并且給予它適當?shù)脑L問權(quán)限。這就需要與OPC Server建立同步的通信連接,而且能夠輪詢到OPC Server的數(shù)據(jù)。如果所有的OPC Server項的數(shù)據(jù)屬性指示為bad quality,可能是由于下面兩個原因引起的。
3.1 在OPC Server里的數(shù)據(jù)實際就是bad
即OPC Server沒有正確的獲得數(shù)據(jù),這時需要檢查一下OPC Server和數(shù)據(jù)源之間的通信。
3.2 回調(diào)失敗
由于OPC Client采用訂閱的方式來更新,故可能由于回調(diào)失敗導致所有的Item顯示為Bad。
4 OPC Server所在計算機的CPU利用率高
4.1 OPC Client使用同步讀時的問題
在這種情況下,OPC Client沒有使用優(yōu)化的讀取方式,使得OPC Server花費更多的計算機CPU周期處理OPC通信,可以考慮采用異步或訂閱的方式改進。
4.2 OPC Client使用異步讀時的問題
在這種情況下,可能是由于OPC Server本身沒有優(yōu)化使得對OPC通信的響應慢。
4.3 OPC Client使用讀設備的問題:
在這種情況下,OPC Client不斷地通過OPC Server與設備進行直接的數(shù)據(jù)交換,這會明顯的減慢OPC Server。如果是這種情況,可把所有的讀設備改成讀Cache。
5.OPC Client不接收更新的數(shù)據(jù)
由于安全配置的問題會導致OPC Client不能接收更新的數(shù)據(jù)。OPC支持基于時間“subscription(訂閱)”機制,當數(shù)據(jù)發(fā)生了變化時,OPC Server會通過異步回調(diào)把訂閱的數(shù)據(jù)更新,同時發(fā)送更新的數(shù)據(jù)到OPC Client。在此過程中OPC Client不知道OPC Server將會在什么時候發(fā)送數(shù)據(jù),如果不能正確配置安全屬性,數(shù)據(jù)的更新就會失敗。在OPC Client應用程序指示為“Bad.”若發(fā)現(xiàn)從OPC Server中取得的數(shù)據(jù)不更新,可以嘗試用同步的方式從OPC Server讀數(shù)據(jù)。若此時數(shù)據(jù)讀到了,那么可以確定是異步回調(diào)失敗導致,這可能是由下面的原因造成:
5.1防火墻
如果OPC Client在計算機防火墻之外,則從OPC Server發(fā)出的回調(diào)請求可能被防火墻阻塞,到達OPC Client可能失敗,此時應關閉防火墻。
5.2身份認證失敗
當回調(diào)到達OPC Client所在的計算機后,操作系統(tǒng)會試圖認證這個用戶的賬號和密碼,與存在的列表進行比較,如果組合與列表不一樣Windows會拒絕訪問,原因如下:
5.2.1用戶名和密碼的組合
在回調(diào)的情況,可能出現(xiàn)OPC Client和OPC Server所在的兩臺計算機上的用戶和密碼不匹配導致身份認證失敗,必須保證在兩臺計算機的用戶名和密碼組合一致。
5.2.2 Guest
在Windows XP或者后期的版本,當使用工作組,缺省的情況下會把遠程的用戶賬號強制為本地的Guest用戶。這是由Simple File Sharing完成的,這種缺省的設置使得的認證不能正常工作。因此,需要關閉這個項。
5.2.3 OPC Server身份識別的問題
回調(diào)要對OPC Server作身份認證,這個身份認證由OPC Server的身份認證的設置管理。
OPC Server以交互的用戶認證,這個賬戶是當前登陸此計算機且駐留在OPC Server的計算機上,也就是必須有賬戶登陸,否則不能啟動OPC Server,當此用戶注銷時,OPC Server就會關閉,即使是計算機的重新啟動,也會造成OPC Server的短暫的關閉。
OPC Server以訪問的用戶認證,操作系統(tǒng)會為每個訪問的用戶創(chuàng)建一個實例,這樣會有三個問題出現(xiàn),若OPC Server只允許一個用戶訪問時,當系統(tǒng)中已經(jīng)有了一個實例,再有其它用戶就無法訪問。若是OPC Server允許多個用戶訪問時,那么帶來的問題是隨著不同用戶的訪問,就會打開多個實例,這樣就會占用更多的計算機的資源。另外的一個問題是硬件的搶占,如串口,當一個使用了,其它的用戶就無法再使用。
OPC Server以指定的用戶賬戶認證,這種情況需要在OPC Server的計算機上存在著要指定的賬戶,而且對于OPC Client必須知道此用戶。否則無法訪問。
OPC Server以操作系統(tǒng)賬戶認證,對于工作組還是域,系統(tǒng)賬戶都能被識別,也不需要有用戶登陸。但OPC server必須以服務的方式啟動。
5.3訪問控制列表的問題
當Windows認證用戶賬號初始化了回調(diào),接下來就會檢查OPC Client的賬戶的訪問控制列表里的訪問權(quán)限,必須確保OPC Client的賬戶可以被訪問。
濟南達索機電科技有限公司
地 址:濟南市天橋區(qū)無影山中路153號香港國際
電 話:0531-85554311
傳 真:0531-85554537
QQ:1149156245
微 信:18663708113
WhatsApp:18663708113
Email:jndassaw@163.com
免責聲明:達索機電非本網(wǎng)站所推薦制造商的授權(quán)經(jīng)銷商,本網(wǎng)站上推薦制造商品牌名稱及商標歸其權(quán)屬人所有。
濟南達索機電科技有限公司 魯ICP備14030587號-1免責聲明:達索機電非本網(wǎng)站所推薦制造商的授權(quán)經(jīng)銷商,本網(wǎng)站上推薦制造商品牌名稱及商標歸其權(quán)屬人所有。