zoukankan      html  css  js  c++  java
  • KepServer_PLC_OPC_Server_UcAsp.Opc_OPC.DA动态静态库libAPI示范程序代码

    UcAsp.Opc

    opc for da and ua

    注 意:

    [OPC.DA 环境下先安装lib文件夹下的:Core Components Redistributable (x64).msi ]

    Nuget 安装

    Install-Package UcAsp.Opc -Version 1.0.0.5 

    OPC.DA 读取变量

    OpcClient client = new OpcClient(new Uri("opcda://127.0.0.1/Matrikon.OPC.Simulation.1"));
    string r = client.Read<string>("Random.String");
    

    OPC.UA 读取变量

    OpcClient client = new OpcClient(new Uri("opc.tcp://127.0.0.1:26543/Workstation.RobotServer"));
    float r = client.Read<float>("Robot1.Axis1");
    var list = client.Read(new string[] { "Robot1.Axis1", "Robot1.Axis2" });

    读取和写入

    OpcClient client = new OpcClient(new Uri("opc.tcp://127.0.0.1:26543/Workstation.RobotServer"));
    client.Write<float>("Robot1.Axis1", 2.0090f);
    float r = client.Read<float>("Robot1.Axis1");
    var result = client.Write(new string[] { "Robot1.Axis1", "Robot1.Axis2" }, new object[] { 2.0090f, 2.0090f });

    分组监听数据变化

    public void UAGroup()
    {
        OpcClient client = new OpcClient(new Uri("opc.tcp://127.0.0.1:26543/Workstation.RobotServer"));
        OpcGroup group = client.AddGroup("Test");
        client.AddItems("Test", new string[] { "Robot1.Axis1", "Robot1.Axis2" });
        group.DataChange += Group_DataChange;
    }
    
    
    private void Group_DataChange(object sender, System.Collections.Generic.List<OpcItemValue> e)
    {
      foreach (OpcItemValue o in e)
       {
           Console.WriteLine(o.Value);
       }
    }
    

    获取节点信息

    OpcClient client = new OpcClient(new Uri("opc.tcp://127.0.0.1:26543/Workstation.RobotServer"));
    INode root = client.RootNode;           
    IEnumerable<INode> list = client.ExploreFolder(root.Tag);
    IEnumerable<INode> server = client.ExploreFolder(list.ToList()[0].Tag);
    IEnumerable<INode> s = client.ExploreFolder(server.ToList()[0].Tag);

    下载地址:
    https://github.com/servucn/UcAsp.Opc#ucaspopc
    欢迎讨论,相互学习。 txwtech@163.com
  • 相关阅读:
    QT4.8.7和VS2010环境搭建及使用
    SQL Server--获取磁盘空间使用情况
    SQL SERVER--DBA 常用到的一些脚本
    MySQL--REPLACE INTO与自增
    MySQL--更新自增列的潜在风险
    MySQL--Skip GTID CAP
    MySQL--MHA与GTID
    MySQL--自增列学习
    MySQL--MHA原理
    MySQL--BNL/ICP/MRR/BKA
  • 原文地址:https://www.cnblogs.com/txwtech/p/15353212.html
Copyright © 2011-2022 走看看