如何开发OPCServer

合集下载

OPCSERVERDCOM配置方法

OPCSERVERDCOM配置方法

OPCSERVERDCOM配置方法OPCSERVERDCOM是一种用于实现互操作性数据访问的技术,通过使用DCOM(分布式组件对象模型)允许不同平台和应用程序之间的通信。

在配置OPCSERVERDCOM之前,我们需要确保已经安装了OPC Server和DCOM组件。

本文将详细介绍OPCSERVERDCOM的配置方法,并提供一些最佳实践。

第一步:检查OPC Server的安装和配置状态在配置OPCSERVERDCOM之前,首先确保OPC Server已经安装并正确配置。

检查OPC Server的运行状态、配置文件和日志文件,以确保其正常工作。

确定OPC Server是否支持DCOM,并确认当前的OPC Server是否已经允许远程访问。

第二步:配置DCOM组件配置DCOM组件是使OPCSERVERDCOM正常工作的关键步骤。

按照以下步骤进行配置:2.导航到“计算机”>“我的电脑”>“DCOM配置”:在组件服务控制台中,依次展开“计算机”>“我的电脑”>“DCOM配置”。

4. 配置OPC Server应用程序的属性:右键点击OPC Server应用程序,选择“属性”。

在属性窗口中,选择“安全”选项卡。

5. 配置访问权限:在安全选项卡下,配置访问权限。

可以设置哪些用户或组可以访问OPC Server,并确定用户的访问级别。

推荐配置只有必要的用户和组可以访问OPC Server。

6.配置启动和激活权限:在安全选项卡下,配置“启动和激活权限”。

同样,只允许必要的用户和组拥有启动和激活权限。

7. 配置默认属性:在“属性”窗口中,选择“默认属性”选项卡。

在这里,可以配置OPC Server的身份验证方式和默认权限。

根据需求进行配置。

第三步:配置防火墙和安全策略为了确保OPCSERVERDCOM的安全性和可靠性,还需要配置防火墙和安全策略。

以下是一些建议的配置方法:1. 配置防火墙规则:如果操作系统上启用了防火墙,需要允许OPC Server和DCOM的通信。

OPCSERVERDCOM配置方法

OPCSERVERDCOM配置方法

OPCSERVERDCOM配置方法以下是OPC Server DCOM配置的步骤:步骤1:选择适当的用户账户选择一个适当的用户账户来运行OPC Server。

这个账户必须在本地和远程计算机上都可用,并且需要具有足够的权限来启动OPC Server和访问相关资源。

通常建议创建一个专用的用户账户来运行OPC Server。

步骤2:配置OPC Server在OPC Server的设置中,确保配置正确的IP地址和端口号,这将用于后续DCOM配置中。

步骤3:打开DCOM配置工具步骤4:选择默认的访问权限在DCOM配置工具中,选择"我的电脑"(或"计算机")并右键点击,选择"属性"。

在弹出的对话框中,选择"默认COM安全设置"选项卡。

步骤5:设置默认的访问权限在"默认COM安全设置"选项卡中,选择"访问权限"部分,并点击"自定义级别"按钮。

在弹出的对话框中,选择"自定义"选项。

步骤6:配置访问权限在"自定义访问权限"对话框中,确保"启用"选项被选中。

然后,为各个用户组或用户指定相应的访问权限,如"启用"、"本地启动"、"远程启动"和"本地激活"等。

步骤7:配置安全权限在"默认COM安全设置"选项卡中,选择"安全"部分,并点击"自定义级别"按钮。

在弹出的对话框中,选择"自定义"选项。

步骤8:配置安全权限在"自定义安全权限"对话框中,确保"启用"选项被选中。

然后,为各个用户组或用户指定相应的安全权限,如"启用"、"本地启动"、"远程启动"和"本地激活"等。

OPC Server综合版软件(V3.4)用户使用说明书

OPC Server综合版软件(V3.4)用户使用说明书

OPC Server综合版(V3.4)软件安装规范浙江中控技术有限公司OPC Server综合版(V3.4)软件安装规范安装环境在安装OPC Server综合版(V3.4)软件前,必须确认所用的操作系统是Windows 2000且已经安装了补丁软件Service Pack4.0,以及Internet Explorer5.5以上版本的浏览器。

在此安装规范中不再针对此方面的安装做描述。

OPC Server综合版(V3.4)软件安装安装过程中,只需将软件的安装光盘插入光驱,运行安装程序,出现以下安装界面。

按照安装向导的提示,一步一步进行安装。

1、将目标文件夹设置为缺省的C:\JXServer;2、选择合适的模入类型,通讯协议和主控卡版本。

3、选择程序文件夹;4、点击“下一步(N)”后,开始软件的安装过程;5、开始软件狗驱动程序的安装;6、在语言选择框中选择“U.S.English”。

7、进入软件狗安装的“Welcome(欢迎)”界面之后,点击“Next”,以继续安装软件狗的驱动程序。

8、程序复制结束,出现“Installation status(安装报告)”后点击“Next”,进入“Finished”界面。

9、点击“Finished”完成软件狗驱动程序的安装;10、软件狗驱动程序安装完成后,结束OPC Server综合版(V3.4)软件的安装。

OPC Server综合版(V3.4)软件卸载1、选择“开始 \ 设置 \ 控制面板”。

2、选中“添加/删除程序”,再选择“SUPCON OPC Server综合版(V3.4)”,删除。

3、弹出如下对话框,请确认:4、选择“确定”后,卸载程序自动完成卸载功能。

OPC Server综合版(V3.4)用户使用说明书浙江中控技术有限公司声明:严禁转载本书的部分或全部内容。

在不经预告和联系的情况下,本说明书的内容有可能发生变更,请谅解。

本说明书所记载的内容,不排除有误记或遗漏的可能性。

OPC服务器开发

OPC服务器开发

OPC服务器开发
一、OPC服务器开发的原理及流程
OPC服务器开发的原理是使用OPC接口,将工控设备的数据传输到PC
机端,以供操作系统进行进一步的处理。

它由客户端和服务器端组成,客
户端可以访问远程系统中的数据,可以实现远程操作控制;服务器端负责
将从工业设备中采集的原始数据封装成OPC服务发送出去,解决PC机访
问工控设备的问题。

(1)客户端利用OPC接口发出访问请求,即向服务器端发出一个连
接请求;
(2)服务端接收到连接请求,将请求中的数据参数及类型读取出来;
(3)根据数据参数及类型,服务器端读取对应的工控设备的信息;
(4)服务端将读取到的信息封装成OPC服务;
(5)服务端将封装好的OPC服务通过网络发送给客户端;
(6)客户端收到OPC服务后,进行进一步的处理。

二、OPC服务器的开发过程
(1)开发前的准备工作:首先,分析客户需求,特别是对协议的要求,以及工控设备的型号,参数等信息。

(2)选择合适的编程语言:根据客户的需求,以及提供的设备厂家
的资料,确定使用的编程语言,例如C、C++等。

(3)搭建开发环境:安装OPC Server Toolkit工具箱,安装开发环
境中的调试助手。

OPC服务器和客户端程序开发指南.doc

OPC服务器和客户端程序开发指南.doc

OPC服务器和客户端程序开发指南第一章OPC概述关键词:Comdcmopcda通信标准CLIENTSERVER GROUP ITEM自定义接口自动化接口同步异步回调随着计算机科学技术、工业控制等方面新技术的飞速发展,计算机监控系统从早期的集中式监控向全分布式方向发展,计算机监控系统软件随着面向对象技术的成熟,分布式对象计算、多级客户机/服务器技术也从早期的功能系统软件,发展成为以特定现场设备为特征的面向对象的监控系统软件。

与此同时,计算机监控系统的规模越来越大,不同厂家生产的现场设备种类也越来越多。

由于不同厂家提供的现场设备的通信机制不尽相同,需要由计算机监控系统软件开发的硬件设备通信驱动程序越来越多,导致硬件通信驱动程序需要不断开发的现象。

基于COM/DCOM技术的OPC技术提供了统一的通信标准,不同的厂商只要遵循OPC技术标准,就可以实现软硬件的互操作。

过程控制技术是专门为过程控制而设计的。

它是由一些世界领先的自动化系统和软硬件公司与微软公司密切合作建立的,并成立了一个专门的OPC 基金会来管理它。

OPC基金会负责OPC规范的制定和发布。

OPC提出了一套统一的标准,采用典型的客户机/服务器模式。

硬件设备的驱动程序由硬件制造商或专业公司完成,为服务器程序提供统一的OPC接口标准。

软件制造商只能通过根据OPC标准编写客户端程序来访问(读/写)服务器程序来实现与硬件设备的通信。

如图1.1所示,与传统的通信开发方法相比,OPC技术具有以下优点:硬件供应商熟悉他们自己的硬件设备,因此设备驱动程序更加可靠和高效。

软件制造商可以缩短复杂设备驱动程序的开发周期,只需要开发一套符合OPC标准的程序来实现与硬件设备的通信,这样就可以投入人力和物力来改善系统功能。

可以实现软件和硬件的互操作性。

OPC区分了软件和硬件制造商,大大提高了双方的工作效率。

图1.1应用前后的OPC技术对比因此,OPC技术的出现得到了众多软硬件制造商的支持,并且发展迅速。

VB代码OPC server

VB代码OPC server

利用visual basic所开发的opc客户端应用程序主要采用自动化通信接口和opc服务器程序实施通信。

而opc基金会提供的opc 自动化接口 opcdaauto.dll动态链接库集成了所有用于对opc服务器进行访问的对象、属性和方法,为利用visual basic开发opc 客户端应用程序提供了极大方便。

程序设计时,opc客户程序应当首先生成opc服务器支持的opc对象,然后再使用opc对象支持的属性和方法,实现对opc服务器的操作和访问。

opc数据访问对象主要包括opc服务器(opcserver)、opc组集合(opcgroups)、opc组(opcgroup)、opc标签集合(opcitems)、opc标签(opcitem)、opc浏览器(opcbrowser)等几个部分。

程序设计时,要首先在visual basic环境下选择对opc automation 2.0接口的引用,此时,opc对象会被自动添加到正在开发的工程项目中,然后,再根据需要建立这些对象的实例并利用其属性和方法来实现对opc服务器的访问。

对opc服务器的访问主要包括声明opc对象实例、连接opc server、添加标签变量、读写opc服务器(同步/异步)、断开连接等几个步骤。

opc对象实例的声明主要包括对opc服务器、opc组集合、opc 组、opc标签集合、opc服务器句柄的声明及程序所需要的其它实例的声明。

opc客户端和opc server的连接主要靠调用opc服务器对象实例的connect方法函数来完成,例如,连接本地计算机dassidirect和rslinx opc server 的代码分别为connect ("archestra.dassidirect.1")和connect("rslinx opc server")连接网络远程计算机(ip地址为10.144.45.45)上dassidirect 和rslinx opc server 的代码分别为connect ("archestra.dassidirect.1", "\10.144.45.45")和connect ("rslinx opc server", "\10.144.45.45")需要说明的是当进行远程opc连接时,必须在远程计算机上运行dcomcnfg程序,并启动该计算机opc服务器的dcom服务。

OPCServer使用说明

OPCServer使用说明

OPCServer 使用说明上海迅饶自动化科技有限公司2011年12月目录1、OPCSRV简介 (1)2、OPC技术介绍 (1)3、OPCSRV说明 (2)3.1运行环境 (2)3.2程序标识 (2)3.3程序特性 (2)4、快速入门 (3)4.1关于驱动 (3)4.2关于设备 (3)4.3关于组 (3)4.4关于标签 (3)5操作步骤 (3)5.1、增加新驱动 (3)5.2增加设备 (4)5.3增加组或者标签 (5)6、DCOM配置说明 (5)6.1.服务器的配置 (5)6.2.客户端的配置 (17)6.3.OPC客户端连接OPCS RV过程 (17)1、OPCSrv简介OPCSrv服务器是国内最好的OPC服务器之一。

从2005年诞生,经过几年的不断完善,OPCSrv服务器通过了OPC基金会的CTT测试,性能卓越,运行稳定可靠,并不断应用到工业现场中。

OPCSrv.exe支持OPC DA1.0和2.0规范,同时集成了串口、网口等多种协议。

并提供一个简易的人机界面给用户,用来编辑和配置TAG;保存或者打开scd工程文件;导入或者导出CSV档;克隆设备、组和TAG对象;多重复制TAG;管理所有的驱动插件;还提供启动OPC客户端程序进程、Ping远程计算机、注册和注销OPC服务器等辅助功能。

2、OPC技术介绍OPC(OLE for Process Control,用于过程控制的对象链接和嵌入)是基于Microsoft的OLE(Object Linking and Embedding,对象链接和嵌入)/COM(Component Object Model,组件对象模型)技术,为解决工业客户机与各种设备驱动程序间通讯而产生的一项工业技术规范和标准。

OPC技术规范是OPC基金会制定的,它提供了统一的数据访问软硬件接口。

由于OPC技术比传统数据存取方式(驱动程序法和动态数据交换法)更具开放性和先进性,已经得到越来越多的工控领域硬件和软件制造商的承认和支持,实际上已成为工业控制软件公认的软件标准。

ABB Freelance 2000 OPC server 建立方法教材

ABB Freelance 2000 OPC server 建立方法教材

Customer
WAN Elektrischer Turnkey Finanzleistungen Elektromechanik Automatisierung
© ABB 7/20/2013 – PAPS
ABB PAPS
WINDOWS XP SP2下DCOM的配置过程如下:
1. 点击“开始”->“运行”。输入 DCOMCnfg,回车,打开“组件服务” 窗口。 2. 双击“控制台根目录”下的“组件服务” 展开“组件服务”文件夹,同样方式, 展开“计算机”文件夹,右键点击右侧 窗口的“我的电脑”图标,点击“属性 ”,打开属性对话框。
© ABB 7/20/2013 – PAPS
WINDOWS XP SP2系统中使用OPC的DCOM配置方法
大多数OPC Clients和OPC Servers利用DCOM通
Customer
过网络进行通信。在XP SP2中,经由DCOM的 OPC通信是默认关闭的
WAN Elektrischer Turnkey Finanzleistungen Elektromechanik Automatisierung
© ABB 7/20/2013 – PAPS
配置WINDOWS XP 防火墙
WINDOWS防火墙是基于“例外”的,也就 是默认情况下,防火墙将阻止外部“未被 请求”的连接通过网络,而管理员可以在 规则之外设置特定的应用程序或端口来响 应外部“未被请求”的连接。 防火墙的例外可被归入两种层次的情况,一 是应用程序层次,二是端口与协议层次。 前者可设置特定的程序来对“未被请求” 的连接进行响应,后者可设置特定的TCP 或UDP端口来允许相应的通信。为了使 OPC程序可以通过DCOM正常工作,必须 在这两个层次上都进行设置。
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

如何开发OPC Server
首先我们先来看一下什么是OPC
OPC (OLE for Process Control——用于过程控制的OLE)是基于Microsoft公司的DNA (Distributed Internet Application)构架和COM(Component Object Model)技术的一个工业标准接口,是根据易于扩展性而设计的。

再来了解一下OPC的用途
OPC主要适用于过程控制和制造自动化等应用领域。

OPC是以OLE/COM机制作为应用程序的通讯标准。

OLE/COM是一种客户/服务器模式,具有语言无关性、代码重用性、易于集成性等优点。

OPC规范了接口函数,不管现场设备以何种形式存在,客户都以统一的方式去访问,从而保证软件对客户的透明性,使得用户完全从低层的开发中脱离出来
然后我们再来看看OPC Server的组成
一个设备的OPC Server主要有两部组成,一是OPC标准接口的实现;二是与硬件设备的通信模块。

实现OPC 标准接口
[图1]
在这些接口中,IOPCServer 是OPC Server的主接口,通过它实现OPC Server在操作系统中的安装和注册。

此接口是必须要实现的,其所有方法也必须实现。

其它的接口都是可选的我们就不做介绍了,下面主要来介绍如何实现IOPCServer接口。

在IOPCServer接口中共有六个法:
1、 IOPCServer::AddGroup
HRESULT AddGroup( [in, string] LPCWSTR szName,
[in] BOOL bActive,
[in] DWORD dwRequestedUpdateRate,
[in] OPCHANDLE hClientGroup,
[unique, in] LONG *pTimeBias,
[in] FLOAT * pPercentDeadband,
[in] DWORD dwLCID,
[out] OPCHANDLE * phServerGroup,
[out] DWORD *pRevisedUpdateRate,
[in] REFIID riid,
[out, iid_is(riid)] LPUNKNOWN * ppUnk );
此方法是在OPC Server上建立一个组。

下在我们来实现这个方法:
….
….
首先要对组名(szName)进行检查,看是否有效或是否已经有这个组。

if (szName != NULL)
{
RequestedName = szName;
if (RequestedName == "")
RequestedName = pSvrObject->DefaultGroupName();
}
else
RequestedName = pSvrObject->DefaultGroupName();
for (i=0; i<pSvrObject->NumbrGroups(); i++)
{
pGroup = pSvrObject->GetGroup(i);
if (RequestedName == pGroup->Name)
return (OPC_E_DUPLICATENAME);
}
这需要在内存中维护OPC Group(组)的列表(还要有OPC 项的列表)。

如果szName(组名)正确并且没有建立过该组,就开始根据传过来的参数进行组的建立,建立好后将该组加到自己的组列表中以备后用。

最后将新建组的接口指针返回给客户端。

2、IOPCServer::GetErrorString
HRESULT GetErrorString( [in] HRESULT dwError,
[in] LCID dwLocale,
[out, string] LPWSTR *ppString );
为Server的错误代码返回相应的错误字符串。

代码略
3、 IOPCServer::GetGroupByName
HRESULT GetGroupByName( [in, string] LPCWSTR szName,
[in] REFIID riid,
[out, iid_is(riid)] LPUNKNOWN * ppUnk );
通过指定的组名(由同一客户端建立的)找到该组的接口指针。

此方法实现比较简单,只要根据提供的名子循环从组列表中找到该组的接口指针,并返回给客户端
4、 IOPCServer::GetStatus
HRESULT GetStatus( [out] OPCSERVERSTATUS ** ppServerStatus );
返回当前Server的状态信息。

此方法比较简单,但要注意的是在使用OPCSERVERSTAUS前要进行内存分配。

5、 IOPCServer::RemoveGroup
HRESULT RemoveGroup( [in] OPCHANDLE hServerGroup,
[in] BOOL bForce );
从服务器中删除指定组
在组列表中找到指定的组,并将其删除。

6、 IOPCServer::CreateGroupEnumerator
HRESULT CreateGroupEnumerator( [in] OPCENUMSCOPE dwScope,
[in] REFIID riid,
[out, iid_is(riid)] LPUNKNOWN* ppUnk );
为Server上所提供的组建立不同的列举器。

上面是直接使用COM技术进行开发的,这要求你必须熟悉COM技术。

如果你对COM不是很了解那也没关系,可以选择OPC Server的开发工具,你只需要简单的调用开发工具的函数就可以实现OPC Server中的所有接口。

我们虽然实现了IOPCServer接口中的所有方法,但它只是OPC Client与我们通信的一个桥梁,最主要的还是我们要自己维护好OPC Group和OPC Item列表。

这样我们才可以跟OPC Client进行真正的数据通信。

与硬件设备进行通信
接口已经实现好了,这回我们该从硬件设备中读取数据提供给OPC Client了。

相关文档
最新文档