[小 迪 导读]:OPC软件作为工业自动化领域应用最广泛的软件,深受工业控制人员的喜爱。但也有许多情况下,OPC软件并不能满足实际的使用需求:
使用场景
1.OPC只在内网运行,希望可以将数据传递至外网,随时随地查看
2.OPC数据难以存库
3.希望可以更好展示数据,进行数据分析
整体交互图
1. dgiot_dtu从kepserver获取数据
在opc与kepserver完成连接之后,dgiot_dtu通过调用GetOpcDaService函数连接kepserver实现数据回调
public OpcDaService GetOpcDaService(string host, string serviceProgId)
{
var service = hostCollection.Where(a => a.ServiceIds.Contains(serviceProgId) && a.Host == host)
.FirstOrDefault();
if (service == null)
{
return null;
}
OpcDaService service1 = null;
if (CheckServiceExisted(service, serviceProgId))
{
service1 = opcDaServices.Find(item => { return item.Host == service.Host && item.ServiceId == serviceProgId; });
}
else
{
OpcDaServer daService = new OpcDaServer(serviceProgId, service.Host);
service1 = new OpcDaSer