技術(shù)頻道

娓娓工業(yè)
您現(xiàn)在的位置: 中國傳動(dòng)網(wǎng) > 技術(shù)頻道 > 應(yīng)用方案 > 怎樣通過OPC Client與世紀(jì)星交互

怎樣通過OPC Client與世紀(jì)星交互

時(shí)間:2010-07-09 14:53:07來源:zhangting

導(dǎo)語:?OPC的出現(xiàn)為基于Windows的應(yīng)用程序和現(xiàn)場(chǎng)過程控制應(yīng)用建立了橋梁。

1 OPC簡(jiǎn)介

  OPC是 OLE for Process Control 的縮寫,即把 OLE 技術(shù)應(yīng)用于工業(yè)控制領(lǐng)域。

  OPC的出現(xiàn)為基于Windows的應(yīng)用程序和現(xiàn)場(chǎng)過程控制應(yīng)用建立了橋梁。在過去,為了存取現(xiàn)場(chǎng)設(shè)備的數(shù)據(jù)信息,每一個(gè)應(yīng)用軟件開發(fā)商都需要編寫專用的接口函數(shù)。由于現(xiàn)場(chǎng)設(shè)備的種類繁多,且產(chǎn)品的不斷升級(jí),往往給用戶和軟件開發(fā)商帶來了巨大的工作負(fù)擔(dān)。通常這樣也不能滿足工作的實(shí)際需要,系統(tǒng)集成商和開發(fā)商急切需要一種具有高效性、可靠性、開放性、可互操作性的即插即用的設(shè)備驅(qū)動(dòng)程序。在這種情況下,OPC標(biāo)準(zhǔn)應(yīng)運(yùn)而生。OPC標(biāo)準(zhǔn)以微軟公司的 OLE技術(shù)為基礎(chǔ),它的制定是通過提供一套標(biāo)準(zhǔn)的OLE/COM接口完成的,在OPC技術(shù)中使用的是 OLE2技術(shù),OLE標(biāo)準(zhǔn)允許多臺(tái)微機(jī)之間交換文檔、圖形等對(duì)象。

  OPC是以O(shè)LE/COM機(jī)制作為應(yīng)用程序的通訊標(biāo)準(zhǔn)。OLE/COM是一種客戶/服務(wù)器模式,具有語言無關(guān)性、代碼重用性、易于集成性等優(yōu)點(diǎn)。OPC規(guī)范了接口函數(shù),不管現(xiàn)場(chǎng)設(shè)備以何種形式存在,客戶都以統(tǒng)一的方式去訪問,從而保證軟件對(duì)客戶的透明性,使得用戶完全從低層的開發(fā)中脫離出來。

  應(yīng)用程序與OPC服務(wù)器之間必須有 OPC 接口,OPC 規(guī)范提供了兩套標(biāo)準(zhǔn)接口:Custom 標(biāo)準(zhǔn)接口,OLE 自動(dòng)化標(biāo)準(zhǔn)接口。通常在系統(tǒng)設(shè)計(jì)中采用OLE自動(dòng)化標(biāo)準(zhǔn)接口,OLE 自動(dòng)化標(biāo)準(zhǔn)接口,及采用 OLE 自動(dòng)化技術(shù)進(jìn)行調(diào)用,其技術(shù)為上節(jié)所述的 OLE 自動(dòng)化技術(shù)。OLE 自動(dòng)化標(biāo)準(zhǔn)接口定義了以下三層接口,依次呈包含關(guān)系:

  1)OPC Server:OPC 啟動(dòng)服務(wù)器,獲得其他對(duì)象和服務(wù)的起始類,并用于返回 OPC Group 類對(duì)象。
  2)OPC Group:存儲(chǔ)由若干 OPC Item 組成的 Group 信息,并用于返回 OPC Item 類對(duì)象。
  3)OPC Item:存儲(chǔ)具體 Item 的定義、數(shù)據(jù)值、狀態(tài)值等信息。


2 采用OPC規(guī)范設(shè)計(jì)系統(tǒng)的優(yōu)勢(shì)

  1)OPC規(guī)范以 OLE/DCOM 為技術(shù)基礎(chǔ),而 OLE/DCOM 支持 TCP/IP 等網(wǎng)絡(luò)協(xié)議,因此可以將各個(gè)子系統(tǒng)從物理上分開,分布于網(wǎng)絡(luò)的不同節(jié)點(diǎn)上。
  2)OPC按照面向?qū)ο蟮脑瓌t,將一個(gè)應(yīng)用程序(OPC 服務(wù)器)作為一個(gè)對(duì)象封裝起來,只將接口方法暴露在外面,客戶以統(tǒng)一的方式去調(diào)用這個(gè)方法,從而保證軟件對(duì)客戶的透明性,使得用戶完全從低層的開發(fā)中脫離出來。
  3)OPC實(shí)現(xiàn)了遠(yuǎn)程調(diào)用,使得應(yīng)用程序的分布與系統(tǒng)硬件的分布無關(guān),便于系統(tǒng)硬件配置以及使得系統(tǒng)的應(yīng)用范圍更廣。
  4)采用OPC規(guī)范,便于系統(tǒng)的組態(tài)化,將系統(tǒng)復(fù)雜性大大簡(jiǎn)化,可以大大縮短軟件開發(fā)周期,提高軟件運(yùn)行的可靠性和穩(wěn)定性,便于系統(tǒng)的升級(jí)與維護(hù)。
  5)OPC 規(guī)范了接口函數(shù),不管現(xiàn)場(chǎng)設(shè)備以何種形式存在,客戶都以統(tǒng)一的方式去訪問,從而實(shí)現(xiàn)系統(tǒng)的開放性,易于實(shí)現(xiàn)與其它系統(tǒng)的接口。


3 使用VB6.0編寫OPC Client訪問世紀(jì)星

  世紀(jì)星同時(shí)提供OPC Client和OPC Server兩種功能,想要通過OPC方式和世紀(jì)星交換數(shù)據(jù),必須要編寫OPC Client和OPC Server其中的任意一種。由于編寫OPC Server程序具有一定難度,所以我們建議工程技術(shù)人員開發(fā)OPC Client來和世紀(jì)星的OPC Server交互。

  1)世紀(jì)星工程

  使用OPC Client訪問世紀(jì)星是不需要在世紀(jì)星中做任何特殊配置的,我們?cè)谑兰o(jì)星中創(chuàng)建如下類型變量。在應(yīng)用程序命令語言中讓這些變量發(fā)生變化。

 世紀(jì)星組態(tài)軟件

圖1 變量列表

世紀(jì)星組態(tài)軟件 

圖2 應(yīng)用程序命令語言腳本

 世紀(jì)星組態(tài)軟件

圖3 世紀(jì)星運(yùn)行畫面

 

  2)VB6.0編寫OPC Client

A、腳本

Option Explicit
Dim WithEvents opcSvr As OPCServer
Dim WithEvents opcGrp As OPCGroup
Dim opcItm(3) As OPCItem
Dim opcInt As Variant
Dim opcInfo As Variant
Dim opcDsc As Variant
Dim v As Variant
Dim q As Variant
Dim t As Variant
Private Sub cmdConnect_Click()
On Error GoTo ed
If opcSvr Is Nothing Then Set opcSvr = New OPCServer
opcSvr.Connect "CenturyStar.OPCServer", txtIP.Text
opcSvr.OPCGroups.DefaultGroupUpdateRate = 50
Set opcGrp = opcSvr.OPCGroups.Add("Group")
Set opcItm(0) = opcGrp.OPCItems.AddItem("opcInt", 1)
Set opcItm(1) = opcGrp.OPCItems.AddItem("opcInfo", 2)
Set opcItm(2) = opcGrp.OPCItems.AddItem("opcDsc", 3)
Set opcItm(3) = opcGrp.OPCItems.AddItem("opcFlt", 4)
If opcSvr.ServerState = 1 Then
    MsgBox "opc服務(wù)器已連接!", vbOKOnly, "提示:"
    tmrRun.Enabled = True
    cmdConnect.Enabled = False
    cmdDisConnect.Enabled = True
Else
MsgBox "opc服務(wù)器連接錯(cuò)誤!", vbOKOnly, "提示:"
End If
ed:
End Sub
Private Sub cmdDisConnect_Click()
On Error GoTo ed
tmrRun.Enabled = False
opcSvr.OPCGroups.RemoveAll
opcSvr.Disconnect
Set opcSvr = Nothing
cmdDisConnect.Enabled = False
cmdConnect.Enabled = True
ed:
End Sub
Private Sub Form_Unload(Cancel As Integer)
On Error GoTo ed
cmdDisConnect_Click
ed:
End
End Sub
Private Sub tmrRun_Timer()
On Error GoTo ed
 tmrRun.Enabled = False
If opcSvr.ServerState Then
    opcItm(0).Read 1, v, q, t
    txtInt.Text = v   
    opcItm(1).Read 1, v, q, t
    txtInfo.Text = v
    opcItm(2).Read 1, v, q, t
    txtDsc.Text = v   
    opcItm(3).Read 1, v, q, t
    txtFlt.Text = v
End If
 tmrRun.Enabled = True
ed:
End Sub


B、畫面

 世紀(jì)星組態(tài)軟件

圖4 OPC Client界面


  3)示例說明

  A、使用OPC之前可能需要安裝OPC Data Access 2.0 Components。
  B、聯(lián)網(wǎng)運(yùn)行需要配置DCOM,配置的詳細(xì)情節(jié)請(qǐng)參考世紀(jì)星幫助或世紀(jì)星安裝光盤中的《世紀(jì)星OPC Server配置指南》。
  C、本例只演示從世紀(jì)星中讀取數(shù)據(jù),讀者可自行研究回寫數(shù)據(jù)的例子。

4 世紀(jì)星 OPC Server 配置指南

  由于Windows XP SP2操作系統(tǒng)的安全特性非常高,所以配置也相對(duì)其他系統(tǒng)而言是最復(fù)雜的。下面以 Windows XP SP2操作系統(tǒng)為例來說明CenturyStar OPCServer的配置方法。

  1) CenturyStar OPCServer的安裝
  在安裝CenturyStar的過程中,CenturyStar OPCServer和OPC的核心組件會(huì)自動(dòng)被安裝到計(jì)算機(jī)上。安裝成功后,計(jì)算機(jī)上會(huì)注冊(cè)有一個(gè)服務(wù)器: CenturyStar. OPCServer。

  2)Windows安全性配置
  1.防火墻
  第一種方法是關(guān)閉防火墻。在控制面板中打開Windows防火墻,在“常規(guī)”頁面中選擇關(guān)閉。
  第二種方法是不關(guān)閉防火墻,添加一個(gè)例外到防火墻并開放DCOM端口。在控制面板中打開安全中心,選擇Windows防火墻,在“例外”頁面中選擇添加程序。需要“添加的程序”有Microsoft Management Console(即:mmc.exe,目錄:C:\Windows\System32), OPCServer.exe(目錄:C:\CenturyStar),OPCClient.exe(目錄:C:\CenturyStar),OPCEnum.exe(目錄:C:\Windows\System32)。選擇“添加端口”,名稱:DCOM,端口:135,類型:TCP。
  2.啟用文件共享
  在控制面板中打開網(wǎng)絡(luò)安裝向?qū)?,在“文件和打印機(jī)共享”頁面選擇啟用。

  3)DCOM配置
  在開始菜單中選擇“運(yùn)行”,輸入dcomcnfg,回車。打開“組件服務(wù)——計(jì)算機(jī)”,右鍵“我的電腦”——屬性,在“默認(rèn)”屬性頁面,“在此計(jì)算機(jī)上啟用分布式COM”上打勾;“默認(rèn)身份級(jí)別”選擇無,“默認(rèn)模擬級(jí)別”選擇標(biāo)識(shí);在“默認(rèn)協(xié)議”頁面,將“面向連接的TCP/IP”移到最上方;在“COM安全”頁面里,“訪問權(quán)限”中“編輯限制”添加Everyone并附給所有權(quán)限,附給Anonymous Logon所有權(quán)限,“編輯默認(rèn)值”添加Everyone并附給所有權(quán)限,附給System所有權(quán)限;“啟動(dòng)和激活權(quán)限”中“編輯限制”添加Everyone并附給所有權(quán)限,“編輯默認(rèn)值”添加Everyone并附給所有權(quán)限,附給Interactive,System所有權(quán)限。
  展開我的電腦——DCOM配置,選擇CenturyStar.OPCServer,“常規(guī)”頁面“身份驗(yàn)證”選擇無;“位置”頁面“在此計(jì)算機(jī)運(yùn)行應(yīng)用程序”上打勾;“安全”頁面在“配置權(quán)限”中添加Everyone并附給所有權(quán)限,附給System所有權(quán)限;在“標(biāo)識(shí)”頁面中選擇“交互式用戶”。
  OPCEnum的DCOM配置參考CenturyStar.OPCServer。
  注意:配置完必須重起計(jì)算機(jī)才能生效,客戶機(jī)可配置參考服務(wù)器配置。


5 小結(jié)

  如果需要世紀(jì)星和第三方軟件通訊盡量使用OPC方式,這種方式的優(yōu)點(diǎn)是效率較高,容易實(shí)現(xiàn)網(wǎng)絡(luò)連接。

標(biāo)簽:

點(diǎn)贊

分享到:

上一篇:三晶變頻器在回轉(zhuǎn)壽司/回轉(zhuǎn)火...

下一篇:微能WIN-V63矢量控制變頻器在...

中國傳動(dòng)網(wǎng)版權(quán)與免責(zé)聲明:凡本網(wǎng)注明[來源:中國傳動(dòng)網(wǎng)]的所有文字、圖片、音視和視頻文件,版權(quán)均為中國傳動(dòng)網(wǎng)(www.treenowplaneincome.com)獨(dú)家所有。如需轉(zhuǎn)載請(qǐng)與0755-82949061聯(lián)系。任何媒體、網(wǎng)站或個(gè)人轉(zhuǎn)載使用時(shí)須注明來源“中國傳動(dòng)網(wǎng)”,違反者本網(wǎng)將追究其法律責(zé)任。

本網(wǎng)轉(zhuǎn)載并注明其他來源的稿件,均來自互聯(lián)網(wǎng)或業(yè)內(nèi)投稿人士,版權(quán)屬于原版權(quán)人。轉(zhuǎn)載請(qǐng)保留稿件來源及作者,禁止擅自篡改,違者自負(fù)版權(quán)法律責(zé)任。

相關(guān)資訊

網(wǎng)站簡(jiǎn)介|會(huì)員服務(wù)|聯(lián)系方式|幫助信息|版權(quán)信息|網(wǎng)站地圖|友情鏈接|法律支持|意見反饋|sitemap

中國傳動(dòng)網(wǎng)-工業(yè)自動(dòng)化與智能制造的全媒體“互聯(lián)網(wǎng)+”創(chuàng)新服務(wù)平臺(tái)

網(wǎng)站客服服務(wù)咨詢采購咨詢媒體合作

Chuandong.com Copyright ?2005 - 2024 ,All Rights Reserved 版權(quán)所有 粵ICP備 14004826號(hào) | 營業(yè)執(zhí)照證書 | 不良信息舉報(bào)中心 | 粵公網(wǎng)安備 44030402000946號(hào)