随笔分类 - C#与工业自动化
摘要:1,首先第一步,要连接OPC ,创建好 OPC对象。 /// <summary> /// 连接OPC /// </summary> private string OPCIP=127.0.0.1; private string OPCName=PCAuto.OPCServer; public void
阅读全文
摘要:使用的组件Nmodbus 定义参数,全局变量: //创建modbus实体对象 private static ModbusFactory modbusFactory; private static IModbusMaster master; //写线圈或写寄存器数组 bool[] coilsBuffe
阅读全文
摘要:在普通windows系统连接OPCServer可能会报这样的错,排查很长时间,OPCServer跟Client都运行正常,点号录入也正常。 最后发现,其实是OPCServer 与OPCClient 权限不对等导致, 当以管理员权限运行OPCServer时,也必须以管理员权限运行OPCClient;
阅读全文
摘要:使用modbus单点读取地址是轮询可能会导致效率很低,频繁发送读取报文会导致plc响应时间拉长,批量读取可大大减少数据通信的过程,每次读取完成后,在内存中异步处理返回来的数据数组。 modbus 功能码简介 : 0x01: 读线圈寄存器 0x02: 读离散输入寄存器 0x03: 读保持寄存器 0x0
阅读全文
摘要:最近在开发OPCServer组件过程中,在注册opcServer是总是返回false,后来查找原因得知在本地主机注册opcServer时,需要使用管理员权限。 OPCServer在一台机器上部署时只需注册一次即可。下面代码介绍如何在 .net 程序中调用管理员权限运行方法。 首先理清思路,将需要管理
阅读全文
摘要:总结自己在opc与自控开发的经验。首先介绍OPC DA模式下的OPC各种操作。 在使用opc时需要引用到 OPCDAAuto.dll 这个类库。 在项目引用后需要注册这个类库,否则程序跑起来会报错,“未找到工厂类 。。。” 将该dll文件放在任意目录下,建议在引用程序的的同级目录下。 在 cmd 控
阅读全文