提供3000多款全球软件/控件产品
针对软件研发的各个阶段提供专业培训与技术咨询
根据客户需求提供定制化的软件开发服务
全球知名设计软件,显著提升设计质量
打造以经营为中心,实现生产过程透明化管理
帮助企业合理产能分配,提高资源利用率
快速打造数字化生产线,实现全流程追溯
生产过程精准追溯,满足企业合规要求
以六西格玛为理论基础,实现产品质量全数字化管理
通过大屏电子看板,实现车间透明化管理
对设备进行全生命周期管理,提高设备综合利用率
实现设备数据的实时采集与监控
利用数字化技术提升油气勘探的效率和成功率
钻井计划优化、实时监控和风险评估
提供业务洞察与决策支持实现数据驱动决策
翻译|使用教程|编辑:王香|2019-04-18 15:22:08.000|阅读 447 次
概述:此API可以轻松地从VC#和VB.NET opc客户端一次读取和写入数据。
# 慧都年终大促·界面/图表报表/文档/IDE等千款热门软控件火热促销中 >>
OPC Server是一套利用微软的COM/DCOM技术实现工业自动化资料获取的架构。OPC Server提供OPC接口,它将与之相连的物理设备(PLC)的信息值通过接口返回到客户端应用程序。也就是说,客户端通过这些接口,可以获得与OPC Server连接的物理设备的信息。对于集成应用程序,只要支持OPC接口,就能轻易访问物理设备,而无需相关的技术信息。 程序设计者可以使用相同的程序代码,操作不同的硬件装置,充分达成软件复用的目的。
此API可以轻松地从VC#和VB.NET opc客户端一次读取和写入数据。
在C#的简单API的DLL(DxpSimpleAPI.dll)中准备了以下函数。
namespace DxpSimpleAPI { public class DxpSimpleClass { public DxpSimpleClass(); public bool Connect(string sNodeName, string sServerName); public bool Disconnect(); public bool EnumServerList(string sNodeName, out string[] sServerNameArray); public bool Read(string[] sItemIDArray, out object[] oValueArray, out short[] wQualityArray, out FILETIME[] fTimeArray, out int[] nErrorArray); public bool Write(string[] sItemIDArray, object[] oValArray, out int[] nErrorArray); } }
它主要使用以下四个功能。
连接(连接到OPC服务器)
断开连接(断开与OPC服务器的连接)
读取(一次性读取)
数组arg2:读取值数组(out)
写入(一次写入)
OPC服务器的枚举可通过以下函数实现。
EnumServerList(OPC服务器的枚举)
使用Visual Studio创建VC#项目,并添加参考配置。 请从Visual Studio的参考配置的附加菜单中添加对此DLL和OPCRcw.Da.DLL的引用。
请使用using语句定义OpcRcw.Da,如下所示。
using OpcRcw.Da;
简单的API可以通过以下方式使用。
// Create OPC access instance DxpSimpleAPI.DxpSimpleClass opc = new DxpSimpleAPI.DxpSimpleClass(); // Connect: node name("localhost") and Server Prog.ID("Takebishi.Dxp") bool ret = opc.Connect("localhost", "Takebishi.Dxp");
// Read 3 points string[] sItemNameArray = new string[3]; sItemNameArray[0] = "Device1.D0"; sItemNameArray[1] = "Device1.D1"; sItemNameArray[2] = "Device1.D2"; object[] oValueArray; short[] wQualityArray; OpcRcw.Da.FILETIME[] fTimeArray; int[] nErrorArray; bool ret = opc.Read(sItemNameArray, out oValueArray, out wQualityArray, out fTimeArray, out nErrorArray);
// Write 3 points object[] oValArray = new object[3]; oValArray[0] = "1234"; oValArray[1] = "5678"; oValArray[2] = "9012"; int[] nErrorArray; bool ret = opc.Write(sItemNameArray, oValArray, out nErrorArray);
// Disconnect opc.Disconnect();
VC#客户端(VS2008)的示例程序比以下链接的可下载程序更易于下载。
使用此DLL时,请从Visual Studio 2008开始使用。并且,它需要.NET Framework 3.5作为运行时引擎。
连接目标OPC服务器应对应OPC DA3.0,因为该DLL使用OPC DA3.0的IOPCItemIO接口。
本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处、不得修改原文相关链接,如果存在内容上的异议请邮件反馈至chenjj@cahobeh.cn
本文探讨 SQL Server 中 NULL 和空值之间的区别,并讨论如何有效地处理它们。
Unity 是一款功能极其丰富的游戏引擎,允许开发人员将各种媒体集成到他们的项目中。但是,它缺少最令人兴奋的功能之一 - 将 Web 内容(例如 HTML、CSS 和 JavaScript)直接渲染到 3D 场景中的纹理上的能力。在本文中,我们将介绍如何使用 DotNetBrowser 在 Unity3D 中将 Web 内容渲染为纹理。
DevExpress v24.2帮助文档正式发布上线了,请按版本按需下载~
本教程将向您展示如何用MyEclipse构建一个Web项目,欢迎下载最新版IDE体验!
服务电话
重庆/ 023-68661681
华东/ 13452821722
华南/ 18100878085
华北/ 17347785263
客户支持
技术支持咨询服务
服务热线:400-700-1020
邮箱:sales@cahobeh.cn
关注我们
地址 : 重庆市九龙坡区火炬大道69号6幢