OPC是OLEforProcessControl的缩写。顾名思义,OPC是一种利用微软的COM/DCOM技术来达成自动化控制的协定,那么在C#中怎么与OPC进行连接呢?
方法/步骤
1、OPC为硬件制造商与软件开发商提供了一条桥梁,透过硬件厂商提供的OPCServer接口,软件开发者不必考虑各项不同硬件间的差异,便可自硬件端取得所需的信息,一般采取OPCServer/Client运作方式
2、首先,新建C#应用程序,命名为OPCClient,然后将OPCAutomation.dll进行引用,并在代码页中添加如下语句进行引用:usingOPCAutomation;
3、接着,定义相关接口类,OPC的三个主要接口类OPCServer类、OPCGroup类和OPCItem类,如下列代码:OPCServerKepServer;OPCGroupsKepGroups;OPCGroupKepGroup;OPCItemsKepItems;OPCItemKepItem;
4、在使用前,要进行枚举网络OPC服务器。枚举OPC服务器主要用到GetOPCServ娣定撰钠ers()函数,关键代码如霍丶魇汜下:KepServer=newOPCServer();objectserverList=KepServer.GetOPCServers(strHostName);//枚举网络所有OPC服务器并写入ComboBox控件foreach(stringturnin(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;K髫潋啜缅epGroup=KepGroups.Add("OPCDOTNETGROUP");//列出OPC服务器中所有节点//展开分支oPCBrowser.ShowBranches();//展开叶子oPCBrowser.ShowLeafs(true);foreach(objectturninoPCBrowser){listBox1.Items.Add(turn.ToString());}