多语言展示
当前在线:1567今日阅读:26今日分享:39

C#如何与OPC连接

OPC是OLE for Process Control的缩写。顾名思义,OPC是一种利用微软的COM/DCOM技术来达成自动化控制的协定,那么在C#中怎么与OPC进行连接呢?
方法/步骤
1

OPC 为硬件制造商与软件开发商提供了一条桥梁,透过硬件厂商提供的 OPC Server 接口,软件开发者不必考虑各项不同硬件间的差异,便可自硬件端取得所需的信息,一般采取OPC Server/Client 运作方式

2

首先,新建C#应用程序,命名为OPC Client,然后将OPCAutomation.dll进行引用,并在代码页中添加如下语句进行引用:using OPCAutomation;

3

接着,定义相关接口类,OPC的三个主要接口类OPCServer类、OPCGroup类和OPCItem类,如下列代码:        OPCServer KepServer;       OPCGroups KepGroups;       OPCGroup KepGroup;       OPCItems KepItems;       OPCItem KepItem;

4

在使用前,要进行枚举网络OPC服务器。枚举OPC服务器主要用到GetOPCServers()函数,关键代码如下:               KepServer = new OPCServer();               object serverList = KepServer.GetOPCServers(strHostName);               //枚举网络所有OPC服务器并写入ComboBox控件               foreach (string turn in (Array)serverList)               {                   cmbServerName.Items.Add(turn);               }

5

连接OPC服务器,如下代码:               KepServer.Connect(remoteServerName, remoteServerIP);               if (KepServer.ServerState == (int)OPCServerState.OPCRunning)               {                   tsslServerState.Text = '已连接到-' + KepServer.ServerName + '   ';               }

6

最后,创建组和列出OPC服务器中所有节点信息进行使用即可,关键代码如下://创建组KepGroups = KepServer.OPCGroups;KepGroup = KepGroups.Add('OPCDOTNETGROUP');//列出OPC服务器中所有节点//展开分支oPCBrowser.ShowBranches(); //展开叶子oPCBrowser.ShowLeafs(true);foreach (object turn in oPCBrowser) {               listBox1.Items.Add(turn.ToString());}

推荐信息