1、OPC
??OPC是OLE for Process Control的縮寫。顧名思義,OPC是一種利用微軟的COM/DCOM技術(shù)來達(dá)成自動(dòng)化控制的協(xié)定。

2、建立KepServer OPC服務(wù)器
??KepServer模擬器的使用,參見han_better的博客https://blog.csdn.net/han_better/article/details/81666740
示例使用服務(wù)器隨附的 Simulator 驅(qū)動(dòng)程序來演示創(chuàng)建、配置和運(yùn)行項(xiàng)目的過程。
??Simulator 驅(qū)動(dòng)程序是基于內(nèi)存的驅(qū)動(dòng)程序,能為演示提供靜態(tài)數(shù)據(jù)和變化數(shù)據(jù)。
3、C#如何與OPC連接
??OPC 為硬件制造商與軟件開發(fā)商提供了一條橋梁,透過硬件廠商提供的 OPC Server 接口,軟件開發(fā)者不必考慮各項(xiàng)不同硬件間的差異,便可自硬件端取得所需的信息,一般采取OPC Server/Client 運(yùn)作方式

4、引用
??首先,新建C#應(yīng)用程序,命名為kepOPC_test,然后將OPCAutomation.dll進(jìn)行引用,并在代碼頁中添加如下語句進(jìn)行引用:
using OPCAutomation;

5、設(shè)計(jì)
- 接著,定義相關(guān)接口類,OPC的三個(gè)主要接口類OPCServer類、OPCGroup類和OPCItem類;
- 在使用前,要進(jìn)行枚舉網(wǎng)絡(luò)OPC服務(wù)器。枚舉OPC服務(wù)器主要用到GetOPCServers()函數(shù);
- 連接OPC服務(wù)器Connect
- 創(chuàng)建組和列出OPC服務(wù)器中所有節(jié)點(diǎn)信息進(jìn)行使用。
//獲取OPC所有的變量
KepBrowser = KepSever.CreateBrowser();
KepBrowser.ShowBranches();
KepBrowser.ShowLeafs(true);
this.lst_Items.Items.Clear();
foreach (var item in KepBrowser)
{
this.lst_Items.Items.Add(item);
}
//初始化OPCGroup
KepGroups = KepSever.OPCGroups;
KepGroups.DefaultGroupDeadband = 0;
KepGroups.DefaultGroupIsActive = true;
KepGroup = KepGroups.Add("測(cè)試通訊組");
KepGroup.IsActive = true;
KepGroup.IsSubscribed = true;
KepGroup.UpdateRate = 250;
//增加一個(gè)事件(異步調(diào)用)
KepGroup.AsyncReadComplete +=KepGroup_AsyncReadComplete;
6、程序界面
7、參考資料
1、han_better的博客https://blog.csdn.net/han_better/article/details/81666740
2、百度經(jīng)驗(yàn)https://jingyan.baidu.com/article/546ae185dab6921149f28cc6.html
3、優(yōu)酷視頻KEPServerEX6之C#開發(fā)OPC客戶端實(shí)現(xiàn)OPCDA通訊,https://v.youku.com/v_show/id_XNDYwNjc4NDIwMA==
8、程序下載地址
1、dalong10的下載https://download.csdn.net/download/dalong10/12741990