OPC通訊配置詳解參考模板_第1頁
OPC通訊配置詳解參考模板_第2頁
OPC通訊配置詳解參考模板_第3頁
OPC通訊配置詳解參考模板_第4頁
OPC通訊配置詳解參考模板_第5頁
已閱讀5頁,還剩5頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、OPC通訊協(xié)議解析1 / 101 通訊步驟1.1 第一問OPC Client和OPC Server之間通訊誰是主動(dòng)的?答:當(dāng)然是OPC Client。1.2 第二問OPC Client第一次動(dòng)作做了什么?答:從大多數(shù)OPC Client行為來看,一是自動(dòng)遍歷本機(jī)已注冊的OPC Server列表名稱,二是等待用戶定義預(yù)訪問的OPC Server的信息。1.3 第三問OPC Client第二次動(dòng)作做了什么?答:OPC Client的第一步動(dòng)作會(huì)產(chǎn)生分支,訪問本地OPC Server的這個(gè)分支就不再說了。要分析的是網(wǎng)絡(luò)方式訪問OPC Server這個(gè)分支。第二個(gè)動(dòng)作是根據(jù)用戶指定的IP地址或計(jì)算機(jī)名

2、去查詢遠(yuǎn)程計(jì)算機(jī)上已注冊的OPC Server列表名稱。從這步開始就比較復(fù)雜了。1.4 第四問OPC Client是用什么協(xié)議去和遠(yuǎn)程計(jì)算機(jī)交流的?答:用的是TCP/IP這個(gè)協(xié)議。OPC Client用TCP/IP 135端口去打開遠(yuǎn)程計(jì)算機(jī)的那一扇門。簡單解釋下:在Windows操作系統(tǒng)中,135端口主要用于使用PRC協(xié)議并提供DCOM(分布式組件對象模型)服務(wù),通過RPC可以保證在一臺(tái)計(jì)算機(jī)上運(yùn)行的程序可以順利地執(zhí)行遠(yuǎn)程計(jì)算機(jī)上的代碼。使用DCOM可以通過網(wǎng)絡(luò)直接進(jìn)行通信,能夠跨包括HTTP協(xié)議在內(nèi)的多種網(wǎng)絡(luò)傳輸。多年來,135端口一直被人利用。1.5 第五問OPC Client去訪問遠(yuǎn)程

3、計(jì)算機(jī)的TCP135這扇門時(shí),第一道關(guān)卡是誰?答:網(wǎng)絡(luò)安全防火墻是第一關(guān)卡,網(wǎng)絡(luò)安全放火墻中,如果不允許遠(yuǎn)程計(jì)算機(jī)的TCP 135端口,那么連接就被掐斷了。后續(xù)的通訊就無法進(jìn)行。要想能向下進(jìn)行,網(wǎng)絡(luò)安全防火墻必須允許對TCP 135這扇門的訪問。這里需要在防火墻中將135端口例外操作。1.6 第六問各系統(tǒng)的安全策略有什么不同?答:(一)Windows 2000的安全策略:支持來訪者以自己的身份進(jìn)行驗(yàn)證,且不拒絕來賓用戶從網(wǎng)絡(luò)中訪問,來賓用戶默認(rèn)啟用。(二)Windows XP和Windows 2003的安全策略:支持來訪者以自己的身份進(jìn)行驗(yàn)證或?qū)⑺衼碓L者都看成是來賓訪問,默認(rèn)將所有來訪者都看

4、成來賓訪問。且默認(rèn)拒絕Guest用戶從網(wǎng)絡(luò)訪問本機(jī)。來賓用戶默認(rèn)禁用。(三)Windows 7的安全策略:支持來訪者以自己的身份進(jìn)行驗(yàn)證或?qū)⑺衼碓L者都看成是來賓訪問(經(jīng)典-對本地用戶進(jìn)行身份驗(yàn)證,不改變其本來身份),默認(rèn)支持來訪者以自己的身份進(jìn)行驗(yàn)證。且默認(rèn)拒絕Guest用戶從網(wǎng)絡(luò)訪問本機(jī)(拒絕從網(wǎng)絡(luò)訪問這臺(tái)計(jì)算機(jī))。來賓用戶默認(rèn)禁用。(四)Windows 2008的安全策略:支持來訪者以自己的身份進(jìn)行驗(yàn)證或?qū)⑺衼碓L者都看成是來賓訪問,默認(rèn)支持來訪者以自己的身份進(jìn)行驗(yàn)證。來賓用戶默認(rèn)禁用。配置OPC Client和OPC Server之間的網(wǎng)絡(luò)通訊,先得看看對應(yīng)的操作系統(tǒng)。選好安全審核機(jī)制

5、再說。舉例說明:例1:OPC Client和OPC Server都在Windows 2000操作系統(tǒng)上來舉個(gè)例子:由于操行系統(tǒng)都是Windows 2000,那么安全策略都是來訪者以自己的身份進(jìn)行驗(yàn)證(自己指OPC Server)。這里的以來訪者以自己的身份進(jìn)行驗(yàn)證是什么意思?就是指OPC Client去敲OPC Server的135這扇門時(shí),會(huì)告知OPC Client的登錄用戶名是誰,我的登錄密碼是多少。OPC Server所在的操作系統(tǒng)通過來訪者告知的用戶名和密碼去自己的用戶列表中去查找是否也存在這個(gè)用

6、戶,密碼是否正確。如果用戶名和密碼正確,則進(jìn)入下一步工作。例2: OPC Client和OPC Server都在Windows XP操作系統(tǒng)上來舉個(gè)例子:由于操行系統(tǒng)都是Windows XP,那么默認(rèn)的安全策略都是將所有來訪者都看成是來賓訪問。(對本地用戶進(jìn)行身份驗(yàn)證,其身份為來賓。)且默認(rèn)拒絕Guest用戶從網(wǎng)絡(luò)訪問本機(jī)。這里的將所有來訪者都看成是來賓訪問是什么意思?就是指OPC Client去敲OPC Server的135這扇門時(shí),會(huì)告知,我的登錄用戶名是誰,我的登錄密碼是多少。OPC Server所在的操作系

7、統(tǒng)卻不管你是誰,所有來訪者一視同仁,都是來賓,而且按照規(guī)定,來賓都拒絕掉。這下可好,后面二者之間的通訊也不用繼續(xù)了。上面的(一)這種情況工作還能繼續(xù)往下做,(二)這種情況就完全不行了,啥都不管了。因此(二)這種情況是需要修改安全策略的,一種是將安全策略修改為來訪者以自己的身份進(jìn)行驗(yàn)證;另外一種是將“拒絕從網(wǎng)絡(luò)中訪問此計(jì)算機(jī)”規(guī)則中的來賓用戶給去掉,從用戶管理中將來賓用戶啟用,且密碼為空。(僅來賓-對本地用戶進(jìn)行身份驗(yàn)證,其身份為來賓)1.7 第七問網(wǎng)絡(luò)防火墻允許進(jìn)入,操作系統(tǒng)的安全審核也通過了,終于可以訪問OPC Server了吧?答:還得問一問DCOM的安全配置同不同意。運(yùn)行“組件服務(wù)”檢查

8、一下。DCOM的“訪問權(quán)限”默認(rèn)只有Sell和System,需要添加指定用戶或者允許所有人,需要注意的是,“本地訪問”與“遠(yuǎn)程訪問”都需要選擇“允許”。DCOM的“啟動(dòng)和激活權(quán)限”默認(rèn)只有“Administrator”和“System”,需要添加指定用戶或者允許所有人,需要注意的是,“本地訪問”與“遠(yuǎn)程訪問”,“本地激活”和“遠(yuǎn)程激活”都需要選擇“允許”。 1.8 總結(jié)1.8.1 小結(jié)1經(jīng)過上面的一些處理過程,我們在這里可以總結(jié)一下都做了些什么?(一)配置防火墻,允許訪問OPC Server所在計(jì)算機(jī)的TCP 135端口。(二)配置操作系統(tǒng)的安全策略,使得可以接受遠(yuǎn)程計(jì)算機(jī)

9、的rpc請求,可配置為按照來訪者身份驗(yàn)證模式或來賓模式。(直接選擇以本地身份驗(yàn)證)(三)配置操作系統(tǒng)的用戶管理。來訪者身份驗(yàn)證模式需在OPC Server所在計(jì)算機(jī)中添加來訪者的用戶名和密碼;來賓模式需要啟用Guest用戶。(四)配置計(jì)算機(jī)全局的DCOM安全配置,使之允許遠(yuǎn)程訪問,已經(jīng)遠(yuǎn)程啟動(dòng)和激活。 以上4步基本已將OPC Server這端的訪問權(quán)限配置得差不多。但在實(shí)際操作過程中,還需要檢查如下一些內(nèi)容:(一)OPC庫文件是否安裝注冊?OPC庫文件沒有正確的安裝注冊,OPC Server是無法工作的。而現(xiàn)在的不少OPC Server安裝時(shí)并

10、不會(huì)自動(dòng)安裝OPC庫文件。(二)OPC server是否注冊?OPC Server未注冊,是無法訪問的,OPC Server必須正確注冊。而現(xiàn)在的不少OPC Server安裝后也不會(huì)自動(dòng)注冊,需要手動(dòng)在程序界面上提供的功能按鈕進(jìn)行注冊。(三)OPC server的主程序是否存在?有的時(shí)候OPC Server注冊了,但主程序可能被誤刪除或改名了,這個(gè)操作系統(tǒng)可不會(huì)告訴你。只能自己檢查一下或重新注冊一遍。(四)OPC Server的主程序與其他程序是否有依賴關(guān)系?因?yàn)镺PC Server只是軟件對外提供數(shù)據(jù)的一種標(biāo)準(zhǔn)接口,它本身也是通過從其他的軟件

11、獲取數(shù)據(jù),常見的如組態(tài)軟件,實(shí)時(shí)數(shù)據(jù)庫等,而現(xiàn)在的一些OPC Server啟動(dòng)時(shí)會(huì)檢查依賴的程序是否啟動(dòng),如未啟動(dòng),要么退出,要么啥都提供不了,也不會(huì)告訴OPC Client出了啥問題。(五)OPC Server在DCOM環(huán)境中自己的配置信息,OPC Server在DCOM的環(huán)境中的配置信息如下圖。如OPC Server是NT服務(wù)方式啟動(dòng),那么“標(biāo)識”這一欄就為系統(tǒng)帳戶,不推薦使用“下列用戶”。如OPC Server是COM方式注冊,那么“標(biāo)識”這一欄默認(rèn)為“交互式用戶”或“啟動(dòng)用戶”(各家OPC Server注冊時(shí)處理方法

12、不太一樣),最好都使用?!敖换ナ接脩簟保煌扑]使用“啟動(dòng)用戶”和“下列用戶”。具體原因后期再說。(OPC Server是NT服務(wù)方式啟動(dòng),標(biāo)識這欄為“系統(tǒng)賬戶(僅用于服務(wù))”)(OPC Server是COM方式注冊,標(biāo)識這欄為“交互式用戶”)1.8.2 小結(jié)2到了這一步,可能絕大部分人都會(huì)覺得這完成沒有問題了。OPC Server都連接上了,增加個(gè)OPC組還不是輕而易舉的事情嗎?而實(shí)際上,OPC的組是一個(gè)大有深意的設(shè)計(jì)。OPC的組是用來給OPC Client靈活定義數(shù)據(jù)采集方式的一個(gè)方法,如希望對OPC Server中測點(diǎn),一些測點(diǎn)的采樣頻率是1秒,一些測點(diǎn)的采樣

13、頻率是5秒,一些測點(diǎn)數(shù)據(jù)變化即采集,一些測點(diǎn)數(shù)據(jù)變化超過量程多少才采集等等。而且還定義了數(shù)據(jù)采集的兩種模式,Synchronous I/O(同步)和Asynchronous I/O(異步)。對同步和異步進(jìn)行一個(gè)簡單的說明: 同步模式:OPC Client向OPC Server要5000個(gè)測點(diǎn)的數(shù)據(jù),必須等到OPC Server將5000個(gè)測點(diǎn)的數(shù)據(jù)都返回后才做后面的事情。異步模式:OPC Client向OPC Server要5000個(gè)測點(diǎn)的數(shù)據(jù),OPC Client告訴OPCServer:“我為你留了一個(gè)

14、通道,我要的這5000個(gè)點(diǎn),只要任何點(diǎn)有變化,你就立馬按照預(yù)定的周期告訴我”,于是OPC Server就按照預(yù)定的周期將數(shù)據(jù)發(fā)生變化的測點(diǎn)通過OPC Client預(yù)留的通道告知OPC Client。異步模式中,就會(huì)發(fā)生OPC Server反向連接OPC Client的情況,那么就會(huì)再次發(fā)生前面9個(gè)問題的所有事情。這也是很多時(shí)候OPC Server配置完成了,但OPC的通訊還是不正常的緣故。因?yàn)楝F(xiàn)在的絕大多數(shù)OPC Client默認(rèn)都是采用異步方式與OPC Server進(jìn)行通訊,這就要求OPC Client

15、所在計(jì)算機(jī)的網(wǎng)絡(luò)防火墻、操作系統(tǒng)的安全策略,DCOM的全局安全配置也需要配置正確。某OPC Client客戶端添加OPC組時(shí)的屬性配置。此處給各位留下一個(gè)問題:既然異步方式增加了對OPC Client端的配置要求,那為何大家默認(rèn)不使用同步模式呢? 1.8.3 小結(jié)3到了這一步,還問這樣的問題,估計(jì)有人會(huì)很憤怒了,“這種弱爆了的問題還要問嗎?”,其實(shí)不然,在很多實(shí)際的案例中,就遇到了OPC的通訊配置問題解決了。但卻看不到測點(diǎn),一般會(huì)有如下幾種原因:(一)OPC Server真的沒有測點(diǎn)。(二)仔細(xì)閱讀第10問中的檢測要點(diǎn)的第4條。OPC Serv

16、er中的測點(diǎn)來自于組態(tài)軟件或?qū)崟r(shí)數(shù)據(jù)庫,當(dāng)組態(tài)軟件和實(shí)時(shí)數(shù)據(jù)庫未啟動(dòng)或OPC Server啟動(dòng)在組態(tài)軟件和實(shí)時(shí)數(shù)據(jù)庫之前時(shí),OPC Server中很可能就沒有測點(diǎn)。如何解決?重啟一下就好了嘛。2 OPC Client/OPC Server2.1 問題現(xiàn)象目前市場上的OPC Client與OPC Server軟件在Windows上的運(yùn)行方式有Windows桌面程序和Windows NT服務(wù)。本來也沒啥。但由于OPC Client 是一個(gè)廠家的軟件,而OPC Server是另一家的軟件,正因?yàn)檐浖亩鄻有?,也就?dǎo)致了如下一些現(xiàn)像:1:OPC Client 連接目標(biāo)OPC Ser

17、ver,發(fā)現(xiàn)無法連接,但在OPC Serve計(jì)算機(jī)上明明看見OPC Serve進(jìn)程已經(jīng)啟動(dòng)。2:OPC Client連接目標(biāo)OPC Server,能連接,也能看見測試點(diǎn),但無法獲取到數(shù)據(jù)。經(jīng)過多次現(xiàn)場的積累后,發(fā)現(xiàn)此類問題多出現(xiàn)在OPC Client和OPC Server軟件在Windows上運(yùn)行方式不同導(dǎo)致的。也就是說,OPC Client和OPC Server軟件的運(yùn)行方式不一樣。譬如:OPC Client是Windows桌面程序方式,OPC Server是Windows NT服務(wù)時(shí),發(fā)現(xiàn)上面的現(xiàn)象基本不出現(xiàn)。這是為什么呢?2.2 問題解決原因如下:OPC Client和OPC Serve

18、r都是基于DCOM的應(yīng)用,DCOM的特點(diǎn)是OPC Server無需先運(yùn)行或啟動(dòng),等待OPC Client請求時(shí),由操作系統(tǒng)在將OPC Server拽起來。這種機(jī)制的好處就是隨用隨啟。但這種機(jī)制如果處理不好吧,就會(huì)導(dǎo)致一些問題。當(dāng)OPC Client是Windows NT服務(wù)時(shí),OPC Server被拽起來后,是運(yùn)行在System這個(gè)系統(tǒng)帳戶下面的。相對于Windows的桌面用戶來說,是另外一個(gè)隔離開的空間。因此當(dāng)桌面運(yùn)行類型的OPC Server被Windows NT服務(wù)方式的OPC Client拽起來后,被運(yùn)行在System這個(gè)系統(tǒng)帳戶的空間。而如果這個(gè)OPC Server程序又做了全局唯一進(jìn)程運(yùn)行的限制或與數(shù)據(jù)庫只允許一個(gè)TCP連接時(shí),上述的兩種現(xiàn)象基本就會(huì)出現(xiàn)。這就是這段時(shí)間好幾個(gè)朋友遇到的OPC通訊故障現(xiàn)象。如何讓自己開發(fā)的OPC程序兼容性更好的?1:當(dāng)開發(fā)O

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論