OPC技术及应用(精选8篇)
OPC技术及应用 第1篇
在传统控制系统中, 随着智能仪表的大量运用和现场总线的迅速发展, 大量现场信息 (如现场的温度、压力等被测参数, 以及装置本身的运动状况、组态参数等) 在传入监控计算机时, 存在着计算机内部应用程序对现场信息的共享和交互问题。由于缺乏统一的标准, 对于不同供应商提供的硬件设备, 工控软件往往需要开发独立的驱动程序 (如图1) , 这给硬件设备的更新带来了困难。同时, 即使安装在同一计算机中的软件, 如SCADA (监控与数据采集) 系统, NMI (人机接口) 系统等应用程序, 由于具有独立的驱动程序, 一般也不允许同时访问相同的设备, 否则容易导致整个系统的崩溃。
综上所述, 传统控制系统存在着诸如驱动程序的重复开发和不一致, 不能随着硬件设备的升级而继续使用, 软件访问冲突等问题。正是这些问题, 促使了OPC规范的产生。
2 OPC技术规范概述
OPC (OLE for Process Control, 用于过程控制的OLE) 是一个工业标准, 它是基于微软的OLE (现在的Active X) 、COM (部件对象模型) 和DCOM (分布式部件对象模型) 生成的技术。OPC包括一整套接口、属性和方法的标准集, 用于过程控制和制造业自动化系统, 管理这个标准国际组织是OPC基金会。OPC实际上提供了一种标准的数据访问机制, 系统使用标准的方式从数据源获取数据, 并且提供标准的接口供客户应用程序使用, 客户应用程序通过标准的接口访问现场数据。现场设备生产商只需要开发出一套遵循OPC规范的服务器, 由服务器与现场设备进行通讯, 获取现场数据。如图2所示, 客户应用程序通过与服务器通讯获取现场数据, 也就是说只要现场设备提供了OPC服务器的支持, 就可以通过统一的OPC接口程序访问现场设备中的数据。与传统控制系统相比, 一个OPC客户端可以与多个OPC服务器同时进行通讯, 减少了驱动程序的开发, 提高了企业的工作效率;多个OPC客户端也可以同时与一个OPC服务器通讯, 不会出现系统崩溃等问题。
OPC规范定义了OPC服务器与客户端之间数据交换的方法, 使得用户能从底层开发中脱离出来, 避免开发的重复性, 提高系统的开放性和互操作性。但OPC规范只定义了特定的COM接口, 没有说明如何实现这些接口, 它只规定了OPC服务器提供给客户端应用程序的接口应该具有的行为特征。OPC服务器可由不同的供应商, 根据不同的物理设备, 通过不同的代码决定服务器访问物理设备的方式及数据处理等细节。这些细节对于客户程序都是透明的, 客户程序只要遵循相同的规范和方法就能从不同的服务器中读取数据, 这也就实现了硬件无关的数据访问机制。
OPC在不同领域推出了多种规范, 目前已经推出的OPC规范有:
●OPC数据存取 (Data Access) 规范3.0版
●OPC报警与事件 (Alarm and Event) 规范1.1版
●OPC历史数据存取 (Historical Data Access) 规范1.2版
●OPC批量数据存取 (Batch Data Access) 规范2.0版
●OPC安全性 (Security) 规范
●OPC可扩展标记语言 (XML) 规范
●OPC服务器数据交换 (Data eXchange) 规范
OPC主要技术规范及其关系如图3:
在OPC基金会推出的多种规范中, 目前最广泛应用的是OPC数据存取规范, 也是本研究遵循的主要规范, 下面就此规范进行更近一步的介绍。
3 基于OPC的嵌入式智能控制器的实现
由于传统控制系统存在的种种弊端与瓶颈, 在嵌入式智能控制器中引入OPC技术完成上下位机的通信解决方案。基于OPC的嵌入式智能控制器在工控领域有着广泛的应用前景, 利用OPC的优势有:
1.OPC以COM为技术基础, 实现了代码在二进制级上的重用和代码的语言无关性, 极大地提高了软件的重用性, 提高了开发效率。
2.OPC规范了接口函数, 不管现场设备以何种形式存在, 客户都以统一的方式去访问, 从而实现系统的开放性, 易于实现与其他系统的接口。
3.采用标准的Windows体系接口, 硬件制造商为其设备提供的接口程序的数量减少到一个, 软件制造商也仅需要开发一套通讯接口程序。即有利于软硬件开发商, 更有利于最终用户。
4.OPC封装了系统功能的实现, 只将接口方法暴露在外面, 客户以统一的方式去调用这个方法, 从而保证软件对客户的透明性, 使得用户完全从低层的开发中脱离出来。
5.采用OPC规范, 便于系统的组态化, 将系统复杂性大大简化, 可以大大缩短软件的开发周期, 提高软件运行的可靠性和稳定性, 便于系统的升级与维护。
3.1 硬件平台
平台使用了AT91SAM9260微处理器。这是一款基于ARM926EJ-S核心的工业级微控制器, 功能丰富, 性能强大, 且功耗较低。AT91SAM9260有丰富的接口资源, 且内置以太网MAC, 完成设计所需的以太网接口只需外接物理层芯片和RJ45接口。平台采用Intel的工业级以太网物理层芯片LXT971ALE, 它与AT91SAM9260之间通过标准的MII (media independent interface) 接口连接。平台还使用了DM9000, 这是一款完全集成的和符合成本效益的, 单芯片快速以太网MAC控制器, 使用它的目的在于其低功耗和高性能进程的3.3V与5V的支持。
3.2 嵌入式操作系统
嵌入式操作系统选择Windows CE。OPC是基于微软的OLE (现在的Active X) 、COM和DCOM技术的, 而Windows CE系统本身提供了DCOM组件的支持, 并且Windows CE的DCOM API与Windows的DCOMAPI有很大程度上的相似性, 因此, 采用Windows CE系统可以大大降低系统开发的复杂度和额外成本的开销。而其他系统诸如嵌入式Linux提供的DCOM解决方案不是由操作系统本身提供的组件来完成的, 而是通过购买第三方软件包的支持来完成的, 需要额外成本的开销;同时, 第三方软件有可能成为系统运行的不稳定因素。
操作系统的移植采用了ATMEL提供的AT91SAM9260EK_CE6.0_Source_v110_secure BSP包, BOOTLOADER选择EBOOT, 即通过Ethernet下载操作系统映像的BOOTLOADER。在开发的过程中使用EBOOT, 可以提高开发效率。通过使用EBOOT可以很快速的下载NK到目标设备中, 而利用Flash编程工具或者是通过JTAG下载则很慢。EBOOT移植完成后是OAL (OEM Adaption Layer, 即原始设备制造商适配层) 的移植, 主要是修改Startup.s函数、修改串口调试函数、修改OEMInit函数、修改系统时钟函数和修改中断处理函数等;接着移植各模块驱动程序, 修改平台配置文件, 编译完成即得到FIRSTBOOT, EBOOT及内核映像文件, 完成操作系统的移植工作。
3.3 嵌入式智能控制器
整个系统由三部分构成:智能电子设备 (IED) 、智能控制器以及上位机。整体设计方案如图4所示:
控制器的主要功能是对IED环节输入的模拟量或开关信号进行识别处理, 根据一定的协议打包传送给上位机, 同时根据控制程序对IED输出开关信号以达到控制的目的。与上位机的通信基于OPC采用客户/服务器形式, 设计完成基于OPC数据存取规范3.0的服务器程序与客户端应用程序, 分别运行与嵌入式智能控制器的硬件平台及上位机中, 完成OPC通信。
结论
通过对OPC规范的研究, 根据硬件平台设计并完成了基于OPC的嵌入式智能控制器的整体架构, 操作系统移植, 实现了基于OPC的以太网通信。OPC技术以其巨大的优势受到越来越多的工控领域厂商与用户的青睐, 其取代传统驱动程序的趋势是不可阻挡的, 通过在嵌入式智能控制器中对OPC的应用更加能够体会到这一点。
摘要:针对传统控制系统的发展状况, 指出当前传统控制系统存在的诸多问题, 通过研究OPC规范特别是OPC数据存取规范3.0版, 研究其数据组织形式与访问机制, 结合基于OPC技术应用的嵌入式智能控制器, 给出了基于OPC技术的解决方案。
OPC技术及应用 第2篇
关键词:OPC;COM;DCOM;风电场
针对当前风电场中风机控制系统及电力监控系统多系统并存的情况,将OPC技术引入其中,以实现风电场中风机控制系统和电气控制系统的无缝连接,解决了风电场多系统互联问题。
1.OPC的关键技术
OPC技术也是微软公司为了把Windows应用于控制系统而和控制界共同推出的一项技术。它以微软公司的组件对象模型/分布式组件对象模型(COM/DCOM)技术为基础,为工业控制软件定义了一套标准的对象、接口和属性,通过这些对象接口,实现了应用程序之间数据交换的标准化,从而大大提高自动化设备之间的开放性和互操作性。
A.COM与DCOM技术
随着软件技术的迅速发展,传统的程序升级已经不能满足技术发展的需要,解决这个问题的方法就是将应用程序分割成一些小的应用或组件,然后将这些组件在运行时组装起来形成应用程序。在组件技术规范方面主要有两个标准,其中一个是由微软推出的组件对象模型(Component Object Model,COM)技术。该技术提供了各个软件部件以标准模式在一起工作的框架和技术规范,此规范为了保证能够互操作、客户和组件应遵循的一些二进制和网络标准,任意的两个组件之间可以在不同的操作环境下进行通讯,甚至使用不同的开发语言开发的组件也能实现。COM是一种软件组件间相互数据交换的有效方法。
COM接口的COM规范中最重要的部分,COM规范的核心内容就是对接口的定义,COM都是以接口的形式出现。组件与组件之间、组件与客户程序之间都要通过接口进行交互。接口成员函数将负责为客户过其他组件提供服务。对于COM来说,接口是一个包含一个函数指针数组的内存结构。对于客户来说,一个组件就是一个接口集,任何一个具备相同接口的组件都可对组件都可以对此进行相对于其他组件透明的替换。
B.基于OPC的客户机/服务器数据交换模型
COM技术的出现为控制设备和控制管理系统之间的数据交换简单化提供了技术基础。但是如果不提供各异标准的化COM接口,各个控制设备厂家的COM组件之间的相互连接仍然是不可能的。
随着基于OPC标准的控制组件的推广和普及,不仅使控制系统功能的增减和组件的置换更加简单,而且使过程数据的访问也变得容易。比如,符合OPC规范的过程控制程序可以直接和数据分析软件包或电子表格应用程序连接。
2.OPC数据采集系统设计
在传统的数据采集系统中,监控与数据采集系统(SCADA)、人机接口(HMI)、组态软件等应用程序都是通过驱动程序与现场设备进行通信的,但驱动程序有着它自身的局限性,如同一设备为适应不同的客户端应用程序需要开发不同的驱动程序,造成劳动重复。一旦硬件设备升级,先前开发的驱动程序也应做相应的修改。驱动程序一般采用动态链接库(DLL)的形式,动态数据交换(DDE)是其进行数据交换的主要方式,但这种方式不允许多个应用程序同时访问一个设备。
A.风电场前置机数据采集系统设计
由于OPC定义了一套基于Microsoft OLE/COM或DCOM的接口访问方式,符合或支持OPC协议的应用程序只要基于TCP/IP协议可以互相访问,就可以通过OPC协议交换数据。风场前置接口机上安装多块网卡,需要和风机生产厂家提供的监控系统的工程师站相连,其IP地址设置成与工程师站在同一网段即可。
由于目前各风机生产厂商开放程度的不同,丹麦的Vestas风机开发了OPC接口,用于第三方厂商的接入,西班牙歌美萨风机是提供了其数据库的接口软件(DLL),东汽、华锐等国产风机是与风机控制器进行轮询,转发为MODBUS通讯协议,提供给第三方,由第三方完成。
B.风电场OPCSever接口软件设计
本文以华锐风机1500为例,介绍风电场OPCSever接口软件的设计方案。华锐风机是提供与风机控制器的进行通讯的MODBUS数据通讯服务器软件,其软件实现与现场风机进行实时数据交互,我们设计将MODBUS/TCP包装成OPCSever.在使用MODBUS/TCP协议规范时,采用面向连接的方法,在通信时要经过建立连接、传输数据、释放连接三个步骤。
a. MODBUS/TCP的报文解析
MODBUS/TCP请求报文:00 00 00 00 00 06 01 03 00 01 00 78 16 31
前七位为MBAP头,分别为事物处理标识符高位(1位),事物处理标识符低位(1位),协议标识符(2位),长度标识符(2位),单元标识符(1位)。后七位为MODBUS请求报文,03为功能码,为读取保持寄存器的内容,00 01为起始地址,00 78为寄存器数量,16 31為校验码,校验方式为CRC循环冗余校验。
MODBUS/TCP接收报文:00 00 00 00 00 F3 01 03 F0 00 00 40 E0…
从第十位开始,采用单浮点型float,每两位报文为一个寄存器响应数据,其中高字节在前,低字节在后。
b. OPCSever数据访问的实现
OPC数据存取服务器的主要功能是完成数的存取,OPCSever有4种数据访问方法:同步数据访问,异步数据访问,刷新访问,订阅方式访问。在本设计方案中,采用订阅方式进行访问,访问的数据在状态发生改变时主动的通知客户程序刷新数据。
报文解析Sockect通讯模块实现与MODBUS/TCP服务器进行读写操作,解析收到的报文。
OPC接口模块是主要完成OPCSever、OPCGroup和OPCItem的定义、连接、添加和删除等。其定义了订阅方式进行数据访问,OPC基金会提供了标准的接口函数客户以统一的方式去访问。
程序管理模块主要是现场数据的监视,测点信息的管理和从OPC接口模块中接收的项信息,包括时间戳和数据质量。
3.结论
OPC技术及远程访问OPC接口 第3篇
OPC协议是一个工业标准,是由OPC基金会制定的。它规范了过程控制和自动化软件与工业现场设备之间的接口。
OPC包括一整套接口、属性和方法的标准集,提供给用户用于过程控制和工业自动化应用。Microsoft的OLE/COM技术主要用于各种不同的软件部件如何分享数据和交叉使用,OPC能够提供通用的接口用于各种过程控制设备之间的通讯。复杂数据规范OPC技术的实现由两部分组成:OPC服务器和OPC客户应用部分。OPC服务器主要的任务是采集现场设备的状态信息,经过标准的OPC接口发送至OPC客户端作为应用。OPC客户端则通过标准的OPC接口接收相关现场设备状态信息,并进行显示。在不同的工作场合,用户可以挑选使用相应的规范。
2 OPC协议
OPC协议内容包括了数据访问规范、历史数据存取规范、报警和事件规范、数据交换规范、OPC安全性规范、合成数据规范、命令规范、公共I/O规范等。
OPC协议设计系统有以下的好处:
1)应用OPC协议标准的Windows体系接口,硬件制造商只需要为其设备提供一个接口程序,另软件开发商也只需要开发一套通讯接口程序而不需要考虑硬件;
2)各个子系统可以相对独立,同时分布于同一网络的不同节点上。因为OPC规范技术基础是OLE/COM/DCOM,而OLE/DCOM与TCP/IP等网络协议相互支持;
3)用户通过OPC可以从底层的开发中脱离。因为OPC按照面向对象的原则,这样使得客户对软件有透明的认识;
4)扩展了系统的应用范围。通过OPC远程调用,应用程序的分布与系统硬件的分布独立开来,系统硬件配置方便快捷,大大扩展了系统的应用范围;
5)便于系统的日常维护。采用OPC规范,系统的组态方便,大大简化系统复杂性,从而缩短软件开发周期,同时软件运行更加的可靠和稳定,便于系统的升级与维护;
6)实现了系统的开放性。OPC规范了接口函数,客户以统一的方式去访问,从而实现系统的开放性,易于实现与其它系统的接口。
OPC应用领域也很广泛:
OPC是为了提供数据信息源和用户之间连接的一个软件接口标准。数据信息可以来源PC、PLC,DCS,监控系统、条形码读取器等控制设备。不同构成的控制系统,数据源的OPC服务器可以是和OPC应用程序在本地OPC服务器,也可以是在远程OPC服务器。
3 远程访问OPC接口
综合以上技术可以实现远程访问OPC接口,在中控室直接访问装卸船机CMS电脑上的OPC Serve相关数据。该系统主要有3大部分:
1)PLC:收集现场设备数据,并实现控制;
2)CMS:服务器端的通用软件,安装有OPC Client,可以提供远程访问OPC接口;
3)客户机:通过远程访问OPC接口来获取数据,从而掌握设备现状;远程访问OPC接口的网络拓扑结构图如图1所示:
3.1 实现条件
1)为了统一设置DCOM,要访问OPC的电脑的登录用户名与密码必须公开;
2)要实现中控机访问CMS,中控机和CMS必须在同一局域网内,允许处于不同或者相同的工作组;同时由于DCOM通讯技术只支持局域网,故DCOM不能跨越网关和路由器。
3.2 具体实现
1)首先注册ABB的OPC ServeABB公司提供一个注册表文方便在客户机上注册ABB的OPC Serve。
2)配置DCOM
(1)打开开始运行键入dcomcnfg.exe;
(2)展开左侧目录数“控制台根目录”“组件服务”“计算机”“我的电脑”,点击落在菜单中选择“属性”;
(3)选择“默认属性”,“在此计算机上启用分布式COM”复选框前已打勾,同时设置“默认身份验证级别”为“无”;
(4)选择“COM安全”选项卡,单击“访问权限”中的“编辑默认值”按钮,然后选择“ANONYMOUS LOGON”的权限,确认远程访问的允许下打勾;
(5)重新启动计算机,才能使以上设置生效。
3.3 防火墙的设置
Windows操作系统会自动打开系统防火墙,要使DCOM设置生效,可选择以下方法中的一种:
最为直接的方式就是关闭防火墙;
开户防火的TCP/IP协议的135端口;
在防火中允许相关的OPC程序的运行。
4 结论
通过OPC接口,中控机可以实时高效的掌握装、卸船机的工作状态,为技术人员提供了实时的数据库数据。随着OPC协议的成熟及应用的推广,其应用也受到厂商高度的重视,很多公司都在原来产品的基础上添加了对OPC协议的支持。OPC协议统一了数据访问的接口,使控制系统进一步走向开放,实现信息的集成和共享,用户能够得到更多的方便。而且OPC协议技术改变了原有的控制系统模式,给工业自动化领域带来了勃勃生机,也给国内系统生产厂商提出了一个发展的机遇和挑战。而且在实时数据库开发中OPC协议的应用,也使得人们开发的实时数据库软件可以更好的符合实际的应用。应用OPC协议,可以高效实时的进行数据采集;在数据存储中,对实时数据和历史数据的存储都能保证实时性;在数据库管理中,能够及时对现场事件进行处理。同时通过远程访问OPC接口,使信息和资料更好更快的进行传递。
参考文献
[1]任思成,王书鹤,亓克贵.新一代工业过程控制软件接口标准—OPC技术-[J].仪器仪表学报,2002(S1).
OPC技术及应用 第4篇
OPC (OLE for Process Control)是一种先进的过程控制技术, 是凝结世界领先的自动化软、硬件公司与微软公司合作的结晶,拥有强大的过程控制能力。
2 OPC标准技术。
OPC技术采用微软面向工业过程控制的对象链接和嵌入方法,确保自动控制系统轻松集成各种现场设备,而不会有任何驱动程序上的困扰。通过DCOM技术和OPC标准,完全可以创建一个开放的、可互操作的控制系统软件。OPC采用客户/服务器模式,把开发访问接口的任务放在硬件生产厂家或第三方厂家,以OPC服务器的形式提供给用户,很好地解决软、硬件厂商的矛盾,有效地完成了系统的集成,提高了系统的开放性和可互操作性。快速高效的服务器每秒可以交换几千个以上的数据,系统在拥有数据共享灵活性的前提下保持了系统的高性能。OPC服务器可以为电力企业内部的各种信息系统访问自动控制系统中的各种实时数据和历史数据提供环境。OPC客户端可将各种提供OPC驱动程序的设备集成在系统中,任何支持OPC的设备和软件都将成为系统的一个部分。采用OPC技术,也为客户提供了更多的硬件选择,使系统集成更加方便。
3 传统的数据采集方法。
在综合自动化系统中,针对不同的设备,一般是通过编写一对一的驱动程序和接口程序的方法来进行数据采集。此种方法在实际应用中有如下缺点:3.1针对不同厂家多种不同类型的现场设备,需要编写特定的驱动程序和接口程序,其直接的后果就是造成了驱动程序种类的迅速增长。而驱动程序数量的增加加深了解决已经存在问题的困难程度。3.2对于开发监控程序软件的技术人员来说,花费大约三分之一左右的软件开发周期用于编写通信驱动程序。应用软件的提供者花费太多的资金开发和维护专用接口,这不仅增加了用户的负担,而且在实际上并不能解决不同系统的互操作性,在某种意义上,用户被他们的软件提供者所控制。3.3不同的设备制造厂家之间的设备驱动程序不一致。制造厂家一般个自从自己的需要出发,采用不同的数据交换协议开发驱动程序,从而使各设备生产厂家之间的驱动程序不一致,且驱动程序也比一定完全支持所有的硬件特性。3.4访问冲突。一般来说,两个软件包是不能同时访问同一个设备的,因为它们使用不同的驱动程序。
4 OPC技术采集方法。
正是基于传统的数据采集方法所具有的缺陷, 需要找到更好的替代方法。而OPC标准技术恰恰能够很好地解决上述问题, 同时还具有更多传统数据采集方法所没有的优点。只要选择生产厂家设备的驱动程序支持OPC规范, 那么系统选择上就可任意组合配置, 还可即插即用。对用户而言, 它只需按规范规定的数据品格与服务器交换数据, 而勿须关注其数据来往的细节 (例如硬件设备与通信规约) 。对客户端而言, 其系统平台是统一的。对设备生产厂家而言, 它所制造的设备的信息用户有了规范可依, 也就无须逐一制订适合不同应用的驱动软件, 相形之下也就相当于提高了生产效率, 缩短了开发周期。OPC为数据源的产生规定了一种机制, 为这些数据与任何客户程序之间的通讯提供了一种标准的方式。有了OPC标准, 硬件设备的生产厂家就可以开发出可重用的、高性能的OPC服务器软件, 并且能与其它数据源以及设备进行可靠有效的通讯。有了OPC服务器接口, 就允许任何OPC客户访问他们的设备。OPC技术与其它传统驱动方法相比, 具有以下优越性:a.基于TCP/IP协议, 支持Internet。b.高速数据传输性能。c.基于分布式COM安全性管理机制。d.开发成本的降低。e.实现高度柔韧性和高可靠性的系统。
5 结论
OPC标准给过程控制工业带来了巨大的利益,获得了广泛的支持并已经成为实际的工业标准。它所带来的利益并不只局限于过程控制,它还完全可以更好地应用于综合自动化系统。除了它采用了目前流行的客户/服务器架构外,还因为OPC标准仅仅对数据传输格式进行了规定,提供了统一的软件接口,而没有对设备的硬件接口和数据的传输方式进行限制,使得OPC标准在具体的实施过程中具有更大的创造空间,应用前景十分广阔。
摘要:是一种先进的过程控制技术, 针对OPC技术应用于综合自动化系统进行了阐述。
OPC技术及应用 第5篇
关键词:OPC服务器,OPC客户端,能源监测,SCADA
0 引言
目前,随着国家对节能减排的重视程度越来越高,许多专业的建筑节能企业都建立起了自己的能源监测系统,用于一些大型建筑能耗情况的实时监测,并将监测到的数据储存到数据库进行分析最终得到节能效益报告供管理层决策。随着工业技术的发展和生产经营管理需求的提高,越来越多的数据需要进入能源监测系统以得到更精确、更科学、更系统的分析结果,不仅仅是传统的电量表,还包括了工业控制系统PLC、DCS等。能源监测系统一般采用企业专网进行数据传输,属于管理层网络,而PLC/DCS工控系统都是生产工艺的小范围专网,属于控制层网络,安全要求很高。二者进行数据通信需要解决数据接口和系统安全两个问题,为实现能源监测系统对底层系统数据的采集,优化网络系统联网结构,减少二次计量仪表的投入成本,本文提出利用OPC数据通信技术来解决能源监测系统与PLC等控制系统间通信的问题。
1 OPC介绍
OPC是用于工业过程控制中的一种新的通信技术标准,是与硬件厂商无关的软件数据交换标准接口和规程。在各应用之间提供一种透明的数据访问以解决过程控制系统与其数据源的数据交换问题,它的出现为基于Windows的客户端应用程序和现场过程控制应用系统建立了桥梁。硬件生产厂家或第三方厂家负责开发访问接口,并以OPC服务器的形式提供给用户,这样很好的解决了软、硬件直接通信的矛盾,完成了系统的集成,提高了系统的可互操作性和开放性。
OPC技术通过OPC服务器和OPC客户端两部分来实现。OPC服务器负责从各种现场设备、系统、控制器获取数据,并通过标准的OPC接口将收集到的现场设备数据传递给OPC客户端应用程序。
而OPC客户端为数据接收端,主要通过OPC标准接口从OPC服务器中获取需要的各种数据信息。OPC标准的最大优点是凡是符合OPC标准的客户端应用,可以不用关心任何底层的硬件设备特性,也不必考虑软硬件之间的通信问题,只要通过OPC标准接口就能方便地从硬件厂商提供的OPC服务器中获得所需要的所有数据信息,而且OPC客户端能够同时与多个OPC服务器进行通信,OPC服务器也能同时为多个OPC客户端提供服务,从而降低了监测系统上层开发难度,并且增加了系统的灵活性和可扩展性。
2 建筑能源监测系统介绍
2.1 系统网络结构
本系统根据其结构特点可分为现场数据采集层、数据处理层及数据展示层。系统网络结构如图1 所示。
展现层:PC机进行一般的业务操作,大屏幕显示监控信息,手持终端进行设备巡检,电子信息板实时发布相关信息。
SCADA层:主要负责与设备PLC、DCS、智能表计进行通信,采集实时数据和传输控制命令。
数据库:实时数据库存储SCADA系统实时采集到的数据,历史数据库存储系统运行的历史数据,业务数据库存储维持系统运行的业务数据。
现场数据采集层:现场传感层集合了所有的现场传感器,包括温度、湿度、压力、流量等,以及各个电量表计。现场传感器层通过Modbus协议,走485总线的方式将现场采集的数据传到数据汇流层。
2.2 现场数据采集
本系统所有的数据都来自于现场传感器采集到的实时数据,因此数据采集的对象以及采集数据的方式对整个系统的后台数据分析起着至关重要的作用。目前,本系统数据采集的对象主要是建筑中的空调系统、采暖系统、照明系统、办公系统和其他各类耗能设备。
2.2.1 照明、办公及动力系统
本系统需要采集的一个重要数据就是建筑内各设备和线路的电力消耗,包括照明系统、办公系统、空调动力系统和其他动力系统。其中,空调动力系统的电力数据已通过集成中央空调节能系统解决。照明系统、办公系统及其他动力系统主要采集所有设备的有功功率、功率因素、累计电量等。采集仪表采用具有远传功能的多功能电能表,多功能电能表具有监测和计量三相电流、电压、有功功率、有功电度、无功功率、无功电度、有功功率因数、频率、总谐波含量功能。具有RS-485标准串行电气接口,采用MODBUS标准开放协议或符合《多功能电能表通信规约》中的有关规定。
2.2.2 中央空调系统
由于传统的中央空调存在着很大的节能空间,许多大型建筑都对中央空调系统进行过节能改造,通常都会有自己的中央空调节能系统,因此在获取现场空调系统、采暖系统的能耗数据以及设备状态数据时,往往会优先考虑将中央空调节能系统集成到本系统中来以减少现场采集设备的成本。以深圳清华研究院为例,深圳清华大学研究院中央空调机组共两台,单机制冷量为300RT。中央空调系统冷冻水泵3台,功率55kW,扬程30m,流量346m3/h;冷冻泵启动采用传统的Y-△启动方式,启动后随中央空调机组长期满负荷运行,存在着很大的浪费,经过节能改造,每台控制柜通过PLC控制相应冷冻泵变频运行,并采集这台冷冻泵的数据包括冷冻水进出水温度、冷冻泵运行频率、功率、流量、压力等,最后将所有的数据传送到中央控制柜中的PLC,中央控制柜通过以太网与客户端组态王通信,最后由客户端显示所有设备运行状态及能耗情况。
2.2.3 环境数据采集
外部环境对建筑能耗的影响非常重要,但一般的能耗监测系统往往忽略这一影响因素,导致不能得到更加科学、系统的能耗报告,本系统重视了对外部环境数据的采集,采集的数据包括:
(1)室外气象数据:包括温度、相对湿度、CO2浓度、大气压力、天气情况等。
(2)室内环境数据:包括温湿度、CO2浓度、空气平均流速。
(3)建筑物本体参数:建筑地理位置、建筑外形、建筑材料、传热系数、窗体面积、窗体结构、楼层数、建筑功能、建筑高度等等。
3 基于OPC的设计
结合能源监测系统中对基础数据采集的需求, 可以发现通过OPC技术可以很好的解决系统中不同类型系统数据采集的集成问题, 因此基于 OPC标准的通信方案在本系统中的应用具有非常典型的代表意义。
3.1 系统通信方案
OPC标准为系统中基础数据通信的整合提供了可行性方案。系统架构方案如图 2所示。在这种架构下,基础自动化级及以下的通信都是由硬件厂商解决,并且提供相应的 OPC 服务器,系统的 SCADA层不需要关心具体底层具体使用什么协议,只需要开发符合 OPC标准的客户端监测程序, 就可以调用 OPC接口与不同硬件厂商提供的 OPC服务器程序进行通信。使用这样的架构, 系统的 SCADA层对现场数据的访问非常便捷,而且有效的解决了以下问题。
(1)集成了传统的离散I/O系统、广泛应用的现场总线控制系统FCS和PLC系统。
(2)利用OPC增强了系统的可扩展性,如果系统需要集成新的系统或增加新的设备,只需要将新的系统或设备接入本系统,并且安装用于访问该系统或设备的OPC服务器,扩展后的系统便可正常工作,不会影响其它系统的使用和运行,在SCADA层增加访问此服务器的OPC客户端模块便可实现对新系统或设备数据的访问。
(3)利用OPC实现不同系统间的数据交换,在本系统中经常会出现不同系统间的数据交换,例如中央空调节能系统往往需要来自外部环境的数据来分析外部环境对空调能耗的影响,而通过OPC技术可以很方便的解决这一问题,所有系统的数据信息都通过各自的OPC服务器集中到SCADA层的OPC客户端,并由它充当信息的集散地,例如外部环境系统采集到的数据会通过自己的服务器传送到OPC客户端,然后客户端会通过中央空调系统的服务器将外部环境的数据发送至该系统,实现不同系统之间的信息交互。
3.2 VC环境下OPC客户端开发
OPC客户端程序在设计时需要遵守OPC数据访问规范,实现规范所规定的全部必需接口。下面介绍下在VC环境下开发OPC客户端的关键步骤:
(1)初始化COM库,在使用接口类前需要用CoInitialize(NULL)初始化COM库,初始化成功后会返回S_OK。
(2)通过函数CLSIDFromProgID()和COM服务器对应的参数ProgID, 查找注册表中相关COM服务器的CLSID。
(3)调用CoCreateInstance()来创建新的OPC服务器对象并连接OPC服务器,在连接之前,OPC客户端需要事先指定计算机名和OPC数据访问服务器名。
(4)创建OPC组和OPC数据项,使用OPC服务器对象IOPCServer接口的AddGroup()方法可以创建一个OPCGroup,并返回这个OPCGroup对象的IOPCItemMgt接口,该接口可以增加、删除、修改这个OPCGroup内的Item。
(5)添加OPC数据项,使用调用AddGroup接口返回的IOPCItemMgt接口的AddItem()方法可以添加需要的数据项。
(6)OPC的数据项读写,对OPC数据项的读写可以有同步与异步之分,对少量的数据传输,一般选用同步方式,但对于大量的数据传输,异步则是更好的选择。
(7)OPC连接断开,释放接口指针。当程序退出或停止服务器时,需要依次删除Item、Group,以释放资源。
使用OPC技术之后,可以通过OPC客户端直接访问由硬件供应商提供的OPC服务器,从而达到直接获取现场设备数据的目的。图3即为基于VC开发的OPC客户端程序空调系统访问界面,实现了OPC客户端与OPC服务器进行数据交互的功能,为开发其它功能更加完善的OPC客户端软件提供了基础。
4 结束语
通过本文的论述可知,虽然在建筑能源监测系统中,对现场信息采集的情况较为复杂, 需要整合不同系统或设备的各种数据,但如果使用基于OPC技术的通信解决方案,就能够方便统一的收集这些信息,从而大幅度地减少硬件厂商、软件厂商以及客户编写通信程序的工作量,而且增强了系统的灵活性和可扩展性,在应对系统的需求变化时,适应性会比较好,只需要扩展不同的服务端或者客户端程序就可以便捷地适应系统通信需求的变化,不同系统间的信息交换也变得非常方便。
参考文献
[1]GB/T58-2008.国家机关办公建筑和大型公共建筑分项能耗数据采集技术导则[S].
[2]杨明极,王建永.基于S5PC100实现OPC Server功能的嵌入式系统的硬件设计[J].自动化技术与应用,2011,30(5):51-53.
[3]沈兵,吴毅平,李海刚.基于三层架构模式的基础能源管理系统[J].控制工程,2009(S2):23-25.
[4]李蕾,戴瑜兴.COM技术在OPC服务器中的应用及实现[J].控制工程,2005(3).
[5]刘敏层.基于COM技术的OPC数据存取服务器开发与研究[J].低压电器,2007(20).
[6]朱立军,安娜,陈未如.基于Visual C#的OPC客户端实现[J].现代电子技术,2009(2).
[7]董超.OPC技术在异构控制网络互联中的研究与应用[J].自动化仪表,2009(12).
[8]郭春雨,王良平.大型公建能耗监测系统软件平台框架[J].建设科技,2010(8):42-45.
[9]李铁牛,裴念强.建立大型公共建筑能耗集中在线监测平台[J].智能建筑,2008,6:34-37.
[10]OLE for Process Control Data Access Custom Interface StandardVersion 3.00 Released[S].OPC Foundation,2003.
[11]Surapong Chirarattananon,Juntakan Taweekun.A Technical Re-view of Energy Conversion Programs for Commercial and GovernmentBuildings in Thailand[J].Energy Conversion and Management,2003(44):743-762.
OPC技术及应用 第6篇
新能源汽车是未来汽车产业的发展趋势, 我国各大汽车电子配件生产厂商正在大力进行混合动力汽车和纯电动汽车核心零部件的研发。针对此类核心零部件, 厂商需要采取严格的检测手段来对产品进行功能测试和数据采集以保证产品的质量和日后的技术改进。本文讲述的电子电力控制器 (Power Electronic Unit) 简称PEU, 是混合动力汽车或纯电动汽车的核心零部件, 具有广泛的市场应用前景。其测试平台采用PLC与上位机对工业控制系统进行控制, 下位机PLC选用的是西门子S7-300PLC, 主要承担控制功能, 上位机主要实现与各仪器仪表的通讯。为了实现设备上下位机的实时数据交互, 提高系统的开放性和可互操作性, 该测试系统软件采用OPC技术进行底层通讯程序设计。
1 OPC技术简介
O P C是由O P C基金会在1 9 9 6年提出的工业控制软件接口标准, 其全称是OLE for Process Control, 即:面向过程控制的OLE。它是一套以OLE、COM、DCOM (Distribute COM) 技术为背景, 基于Windows操作平台, 为工业应用程序之间提供高效的信息集成和交互功能的组件对象模型接口标准。OPC实质上是提供了一种机制, 通过这种机制, 系统能够以服务器/客户端标准方式从服务器获取数据并将数据传递给任何客户应用程序。它的目的是使过程控制工业中的自动化控制应用程序、现场系统、仪表以及商业办公应用程序之间有更强大的互操作性和兼容性[1]。
O P C规范建立的核心是数据存取规范 (O P C DA) , 它提供给用户访问实时过程数据的方法。在实际应用中, 应用程序采用Client/Sever结构, 服务器提供标准的OPC接口, 客户端则按照OPC标准定义访问服务器上的数据对象。OPC Sever由三个对象组成:服务器 (Server) , 组 (Group) 和项 (Item) 。其中组对象提供了OPC客户程序用来组织数据的一种方法。项则代表了OPC服务器到数据源的一个物理连接, 它可以是PLC的一个寄存器, 也可以是PLC中的一个寄存器的某一位[2], 因此OPC项是控制程序所需的直接数据。在程序设计过程中值得注意的一点是, OPC规范中没有对应于项的COM接口, 所有对项的访问需要通过包含项的OPC组对象来实现。OPC项包括三个属性值:值 (Value) 、品质 (Quality) 、时间戳 (Time Stamp) , 其数据值是以VARIANT形式标识的。OPC服务器、组、项的关系如图1所示。
2 系统工作原理及构成
2.1 PEU功能简介
电子电力控制器, 简称PEU, 由联合汽车电子有限公司研发生产, 主要用于驱动汽车电动机以及为车载低压电器供电。如图2所示, PEU主要包括逆变器 (Inverter) 与DC/DC转换器 (DC/DC) , Inverter将输入的直流电压 (150~430V) 转换为三相幅值与频率可变的交流电压驱动电机;DC/DC将输入直流高压 (240~430V) 转化为12V的低压, 给车载低压电池及低压电器供电。PEU通过CAN总线与外部设备 (如纯电动汽车上的整车控制器) 通信。整车控制器向PEU发出获取电机扭矩值、DC/DC输出电压幅值等指令, PEU根据接收到的指令控制Inverter及DC/DC工作, 并通过CAN向整车控制器发送当前Inverter实际输出转矩值, DC/DC实际输出电压及一些错误诊断信息等。
2.2 测试平台工作原理及构成
测试平台需要模拟PEU实际工作状况, 完成各项功能指标测试。为了保证平台的可扩展性, PEU测试平台采用模块化设计, 主要由:控制模块、高/低压测试模块、高/低压接触器模块、负载线圈模块、测试工作台、冷却水回路等6大部分组成, 其中控制模块主要是由PLC、IPC以及CCS (Common Core System) 组成。控制模块的核心CCS是中央控制系统, 属于工业网络的一个节点, 为PEU提供内部测试资源, 并负责将平台测试结果发送至远程数据中心。控制模块PLC采用西门子S7-300系列CPU314C-2DP, 其性能如下:24路DI和16路DO, 4路模拟量输入和2路模拟量输出, 96KB内存。测试平台构成如图3所示。
平台工作原理:CCS模块发送测试指令至控制模块中的工控机 (IPC) , IPC解析命令后控制测试模块中各仪器仪表就绪, 同时发送指令至PLC进行逻辑电路控制, IPC根据PLC的反馈信息开始对产品进行测试, 测试的结果经由测试模块反馈至CCS系统并将测试结果显示在CCS系统的测试报告面板上。
在整个电气控制系统中, PLC需要控制高/低压接触器模块, 由于CPU自身集成的I/O点数不够, 故需要对数字量输入输出模块进行扩展, 选用1块32输入点的SM321模块和1块32输出点的SM322模块。测试过程中, 各项高精度测量指标则主要由YOKOGAWA横河功率计进行数据采集。PLC的CPU模块自身集成的模拟量输入输出通道已满足测试要求, 无需进行模拟量输入输出模块的扩展。为了实现数据的快速有效传输和工业局域网设计, PLC采用了以太网模块CP343-1Lean。
3 通讯方案实现
测试平台上位机编程软件选用的是VC2008。一般S7-300 PLC与上位机的通讯有两种实现方式:一种是自定义串行通讯协议, 通过串口与上位机进行通讯;另一种是利用OPC技术实现通讯, 无需自定义通讯协议。鉴于前一种通讯方法抗干扰能力差, 传输速率低, 传输距离短, 我们选择了后一种方案。平台OPC通讯模块采用西门子SIMATIC NET软件[3]提供的OPC服务器来与B+下B-位机PLC进行通讯, 并且根据数据存取规范在上位机软件内编写OPC客户端程序, 以此来读取OPC服务器内的各项值。
3.1 OPC服务器组态
在SIMATIC NET与SIMATIC STEP7软件安装成功后, 我们需要分四步对OPC服务器进行组态。
1) 配置PC站。在Station configurator中对PC站进行配置, 配置界面一号槽内添加OPC Server, 三号槽内添加IE General, 并且在其属性对话框中进行以太网接口参数设置。配置完成后, 我们对此PC站的Station Name命名为“PEUOPC”。
2) 配置控制台Configuration Console。在配置的时候, 我们在Access Points设定窗口中将S7ONLINE指向PC internal (local) , 为PC站组态下载做准备。
3) 建立PLC站。首先在SIMATIC Manager中新建项目, 通过Insert PC Station插入一个PC站, 插入的PC站的名称必须重新命名为第一步配置时PC站的Station Name, 否则无法将组态下载到PC站内。接下来打开硬件配置界面, 在硬件目录窗口选择与已安装的SIMATIC NET软件版本相符的硬件插入到相应插槽中。
4) 网络节点配置。进入Net Pro配置界面, 选择OPC Server, 在连接表第一行插入新的连接, 由于上面已经配置好了PLC站, 所以连接会自动创建, 直接确认即可。编译无错后, 在Net Pro窗口点击下载按钮将组态下载到PC站中, OPC服务器组态完成。
3.2 OPC通讯类程序设计
OPC客户端不仅能将PLC传入OPC服务器中的数据读取出来, 还可对OPC服务器进行写操作来将数据传入PLC[4,5]。测试平台编程语言采用C++, 为了能将OPC客户端嵌入测试平台软件内, 我们设计了一个自定义类My PLC, 对OPC客户端进行类封装。
程序开头必须包含OPC接口和OPC标准库文件:#include″opc.h″和#include″opc_i.c″。类方法主要有:Initial (LPCTSTR Server Name, LPCTSTR Group Name, int Item Num) 、Read (int Item Num, int Itemtype) 、Write (int Item Num, int Itemtype) 、Exit (int Item Num) 。
Initial () 初始化函数, 程序主要内容如下:
Read () 数据读取函数主要是利用OPC库函数中的同步读取函数:m_p IOPCSync IO->Read (OPC_DS_DEVICE, Item Num, p Read Server, &p Item Value, &p Errors) ;该函数会将读取到的值存入p Item Value指针指向的存储区内, 并返回读取状态。
Write () 数据写函数主要利用OPC库函数中的同步写函数:m_p IOPCSync IO->Write (Item Num, p Write Sever, Write Value, &p Errors) ;Write Value为写入的数据, 数据类型为VARIANT数组。由于OPC在读写时数据类型使用的是VARIANT, 而上位机与PLC数据交互时, 需要使用布尔型、整型、浮点型等数据类型, 因此我们在写入时需要对VARTYPE数据类型进行准确赋值。布尔型数据使用VT_BOOL, 整型使用VT_I2, 浮点型使用VT_R4。其中VT_I2代表32位整型, 这与PLC数据存储区D区整型量相符, 故选择VT_I2而不是VT_I4。
Exit () 对象释放退出函数, 对象释放时一定要先移除数据项, 再移除组, 然后再依次删除已经创建好的OPC对象, 同时断开与OPC服务器的连接, 释放COM库:
3.3 PLC通讯程序实现
PEU测试平台通讯有:CAN通讯, 串口通讯, GPIB通讯, OPC网络通讯等。由于通讯类型多, 数据量大, 为了避免各通讯间互相干涉, 各通讯模块分别单独使用线程与仪器进行数据交互。上位机PLC通讯数据交互程序设计流程图如图4所示。
测试平台OPC线程初始化:
回调函数OPCProc实现上位机与PLC的数据循环读写, 其格式如下:
数据交互过程中, 上位机通过项的属性Quality来判定读写是否成功, 如果成功Quality值为GOOD, 失败则为BAD。当同一读写操作失败次数超过10次以上, 系统判定OPC服务器与PLC连接断开并报警提示。为了保持PLC实时采集数据和系统状态在上位机的及时更新, 线程需要不断读取OPC服务器的项以获取PLC中的实时数据。
4 结束语
本文详细说明了测试平台上位机和PLC间的通讯原理和方法, 并利用OPC技术实现了OPC客户端程序在测试平台软件中的嵌入以及PC机与PLC之间的实时通讯。经过半年的开发和调试, PEU测试平台运行良好、稳定, 已正式投入使用。测试平台底层控制使用了OPC技术, 保证了现场检测信息及时准确的送入CCS中央控制器, 而且将来我们可以进行平台扩展, 实现一中央控制器多工作平台的局域网工作模式。
摘要:本文以电动汽车核心零部件电子电力控制器PEU测试平台为具体应用背景, 介绍了测试平台的工作原理和OPC技术在测试平台通讯程序中的实现方法, 采用SIMATIC NET OPC服务器和VC++实现上位机与西门子S7-300系列PLC之间的实时通讯, 给出了OPC通讯模块的设计步骤和具体程序。
关键词:电子电力控制器,OPC技术,SIMATIC NET,VC++
参考文献
[1]OPC Foundation, OPC Data Access Custom Specification Version 2.05, December 17, 2001, http://www.opcfoundation.org.
[2]徐志良, 宋志强, 吴晓蓓.基于OPC技术的上位机监控软件设计[J].仪器仪表学报.2003 (S2) .
[3]西门子 (中国) 自动化与驱动集团.通过ETHERNET建立SIMATIC NET OPC服务器与PLC的S7连接[Z].北京:2005.
[4]张景忠.基于OPC技术的实时数据采集程序的实现[J].包钢科技.2010 (04) .
OPC技术及应用 第7篇
在传统的控制系统中, 底层设备和上层软件通信是通过驱动程序来实现的, 不同厂家的设备又使用不同的驱动程序, 软件开发商们需要大量地开发专用的驱动程序来连接工业控制现场用到的各种现场设备。OPC通信技术为监控中心数据库中大量数据源和工业现场底层设备的通信提供一种标准的通信机制, 采用这项标准后, 不但可避免开发的重复性, 也提高了系统的开放性和可互操作性, 降低了开发与维护的难度[1~3]。
本文从工业应用的角度出发, 在深入分析、研究OPC技术的基础上, 提出了一种将OPC通信技术应用于矿井排水监测系统中的技术方案, 实现现场设备信息与Archestr A IDE创建的客户端进行数据交互[4]。运用Factory Suite Gateway软件创建OPC服务器, 在Archestr A IDE开发环境中完成OPC客户端的配置, 编写脚本语言实现OPC服务器与客户端的通信, 实现现场设备与监控中心的数据交互, 实时地对矿井排水系统进行监测。
2 OPC 技术的实现方法
OPC技术的实现由两部分组成, OPC服务器部分及OPC客户端部分。只要客户应用程序符合OPC接口规范, 就可以与OPC服务器进行数据交换与传输。一个企业的综合自动化信息系统由3部分组成, 包括现场设备层、过程监控层和企业管理层。现场设备的数据被采集到各个PLC, 用网线将PLC ( 可编程逻辑控制器) 与工控机相连, 通过OPC服务器中的通信模块将上传的数据解包并将数据读入OPC服务器, OPC客户端按照统一标准便可以实时访问OPC服务器中的数据[5,6]。具体连接图如图1所示。
3 基于 OPC 通信技术的排水监测系统的整体架构
详细分析了排水系统中所要监测的数据类型, 在Archestr A IDE开发环境中完成系统模型的建立。运用Factory Suite Gateway软件进行OPC服务器的配置与部署, 在Archestr A IDE开发环境中完成OPC客户端的配置, 编写脚本语言实现OPC服务器与客户端的通信, 使用Object Viewer软件测试服务器与排水监测系统的通信能否实现。
3. 1 数据类型的分析
系统所要监测的数据类型分别为模拟量和开关量。模拟量主要包括: 流量、水泵出口压力、水泵后轴轴温、水泵前轴轴温、水泵绕组、水泵真空压力; 开关量主要包括: 水泵出口球阀关闭与打开、水泵电机故障、水泵电机运行、水泵入口球阀关闭与打开、水泵闸阀开与关、水泵闸阀过力矩、水泵真空球阀关与开。
3. 2 系统建模
在ArchestrA IDE开发环境中完成建模。根据数据类型在模板工具箱Template Toolbox的Application文件夹中找到对应的基础模板, 并重复两次衍生一个它的用户模板。采用二次衍生的模板优点在于, 当数据量的统一属性需要修改时, 只需改动它的上级衍生模板, 而无需对其进行逐一修改, 节省了工作时间, 提高工作效率。最后, 在衍生成的用户模板上, 生成实例, 就完成了系统建模的过程[7]。建完的系统模型如图2所示。
4 基于 OPC 的数据采集的实现
数据采集是上层监控系统与工业现场设备进行数据传输必不可少的部分, 工业现场放置许多OPC服务器, 数据采集系统从这些服务器上获取设备信息, 并将数据传输给上层数据库进行存储。本论文采用Factory Suite Gateway软件实现OPC Server数据采集。
4. 1 OPC 服务器的配置
OPC服务器向下对底层硬件设备进行读写操作, 向上通过OPC接口与客户端进行数据交互, 它有3个基本对象: 服务器对象、组对象和项对象[8]。在Factory Suite Gateway软件中选定并且创造OPC的实施对象。首先建立OPC Server对象来提供与客户端交互的对象, 并进行相应的参数设置来实现OPC Server对象各个接口的功能, OPC客户端通过接口与OPC服务器对象进行通信。接着, 新建OPC组对象并进行各项参数配置来对OPC服务器内部的实时数据进行存取。配置过程如图3所示。
然后添加OPC项对象并设置参数, 项对象与设备驱动程序直接连接, 实现服务器和每个数据源之间的连接。最后, 导出并编辑CSV文件, 使用数据点汉语名称中每个字的第一个拼音字母作为数据点的自定义名称。部分CSV文件如表1所示。
4. 2 OPC 客户端的部署
OPC客户端不直接跟底层设备打交道, 而是通过OPC服务器, 统一实现 对现场设 备数据的 读写[9]。本文采用Wonderware公司的组态软件对OPC客户端进行开发, 在Archestr A IDE开发环境中创建客户端实例, 把服务器采集的数据源与图形设备连接, 从而与现场数据源进行通信, 实时的将现场信息反映到监控界面。整体流程图如图4所示。
首先, 要按照基本模板 - > 用户模板 - > 生成实例的顺序创建客户端实例。选择Archestr A IDE开发环境中的 $ DDESuite Link Client, 将新生成的模板命名为 $ 数据采集, 并生成实例。然后, 配置客户端实现客户端与服务器的信息交互, 从而与现场数据源进行通信。此过程包括两个方面: 1) 在General面板中配置参数: 设置运行OPC Server的计算机名称和OPC Server的名称。2) 选择从服务器中导出的CSV文件, 将数据直接导入到列表中。至此, 完成客户端的全部部署。
4. 3 OPC 服务器与客户端之间通信的实现
本文采用编写脚本程序实现OPC客户端与服务器的数据源链接。在新添加的名为io的Script中编写脚本程序:
表示所链接的数据源客户端模板是数据采集, 服务器对象A组对象B, 新建模板水泵。PV表示是模拟量, CKYL是出口压力的表示。Input表示是开关量, _CK_OPEN表示出口球阀打开。其他数据的脚本程序也按类似的方法编写。在所有的数据都配置完成以后, 对整个排水监测系统的模型进行部署, 就完成了数据源的链接过程。
4. 4 OPC 服务器与监测系统通信的测试
本文使用Object Viewer软件测试通信的有效性与可靠性, 在观察窗口可以观察到具体的数据。OPC服务器与OPC客户端实现通信的标志是: 模拟型数据量的Value显示的是整形或者浮点型的数据, 开关型数据的Value显示的是Running /Stopped、Open / Closed或True / Fault, Timestamp下显示的是当前的运行时间, Quality下显示Good, Status下显示Ok。表明显示的均为有效的数据, 通信过程能顺利实现。
5 结束语
本文深入分析了OPC通信技术, 提出了它在企业自动化监测中的实现方式, 实现了OPC技术在排水监测系统的应用。通过详细分析所采集的数据类型, 完成了系统的建模。利用FS Gateway软件创建OPC服务器, 在Archestr A IDE开发环境中完成OPC客户端的配置, 采用脚本语言实现数据源的链接, 最后通过Object Viewer软件完成矿井排水监测系统的通信测试, 实时的反映现场设备工作状况, 实现了对排水系统的实时监测功能, 大大提高了工业自动化监测水平, 有广阔的应用前景。
参考文献
[1]刘文光.OPC技术在企业管控一体化中的应用[J].自动化与仪器仪表, 2009 (01) .
[2]朱智华.OPC技术在企业实时数据库系统中的应用[J].电子世界, 2013, 14:5.
[3]李京.OPC技术及其在工业控制系统中的应用[D].华东理工大学, 2002:20-23.
[4]邹孝付, 马小平, 焦晓宇.OPC在煤矿生产中的应用研究[J].工矿自动化, 2010, 8:117-120.
[5] (德) 马科等著.OPC统一架构[M].马国华译.北京:机械工业出版社, 2012:2-3.
[6]饶克克.基于C/S架构的OPC数据访问技术的研究及实现[D].兰州交通大学, 2012.
[7]Wonderware Training Manual--System Platform of Wonderware Application Server 3.1 and Device Integration Products, Revision A[Z].2009:45-66.
[8]黄锦花, 常喜茂.基于快速开发工具的OPC客户端的开发与实现[J].化工自动化及仪表, 2013, 07:894-897.
OPC技术及应用 第8篇
关键词:OPC,全液压矫直机,通信协议,专家系统
1 OPC通讯协议的构成
OPC技术是为了使不同制造厂商的设备和用户程序之间的软件接口规范化, 并且使得它们之间的信息转换更加简便化。因此它可以向客户提供这样的过程控制产品对于特定研发语言和研发环境不存在依赖性, 并且可以自由组合使用。
所使用的OPC系统, 是由以下几部分组成:按照用户程序客户程序的要求提供信息采集服务的OPC服务器、使用OPC服务器所特定的OPC接口、接受服务的OPC用户程序。OPC服务器是根据各种各样制造厂商硬件的硬件所研发的, 因而使它可以吸收各个制造商硬件和系统的差别和不同, 从而达到不依赖于硬件的系统组成。与此同时, 采用一种被叫做VARIANT的变量, 完全可以不依靠于硬件中特有的信息类型, 根据用户程序的要求和条件提供信息格式, 使用可以使接口规范化。应用客户可以不对设备的内部结构及它们的供应厂商产生依赖性。从而来选用监视、趋势图和报表用户程序。
OPC是一种客户端服务器模式。它是具有以下几种优点语言无关性、代码重用性、易于集成性等。如图1所示, 服务器中的代码规定了服务器所存取的设备和数据、数据项的命名规律和服务器存取信息的细节问题。无论现场设备以什么形式的方式存在, 客户都会以特定和固有的方式去访问。从而保证软件对用户的透明度, 使得用户完全从低层的研发中解脱开来。客户用户程序只需要利用规范化接口和服务器通信, 而并不需要了解底层的实现细节信息。利用服务器, 用户不仅可以直接识别物理设备的信息, 而且还可以对等系统的端口变量进行操作。
2 全液压矫直机开发实例
该矫直机矫直的对象是不规则的中厚钢板, 而且矫直过程是在高温下进行的。
在矫直过程中, 需要矫直的钢板的厚度、宽度、长度、温度都在变化。有时甚至出现明显的凹陷或凸起。因此钢板的参数在变, 操作控制量在变。它们构成了十分复杂的随机变动, 在矫直过程中, 希望情况稳定, 提高矫直钢板质量。最主要的问题就是根据错综复杂的变动, 制定正确的操作控制方案。因此对钢板异常情况的预测和控制是当前矫直控制的主要问题, 最好的解决办法是建立矫直机预测、控制专家系统。依靠专家提供的经验、知识构造知识库, 根据系统的推理进行逻辑运算和判断, 对异常矫直状况进行预测, 而且给出相应的操作方案。以便增强矫直控制的准确性和规范性。
矫直异常状况预测、控制专家系统是在控制系统中加入一个有经验的“监测工程师”。系统可以为他提供一个“监测工具箱”, 也就是可对监视、测量、辨识、判定等各种方法和算法选择自便, 调用自如。所以, 专家系统能够看成是一个“矫直操作专家”, 在判定矫直时, 对各种情况或控制操作时的思路、方法、经验、策略进行模拟。在执行操作任务的过程中, 矫直控制专家主要进行三件工作, 一是观察、检测系统中相关的变量和状态。二是利用自身的知识和经验, 确定当前系统运行的状况, 而且分析比较每种可能使用的控制策略。最后再选择控制方案予以执行。
设计矫直异常状况预测、控制专家系统, 首先我们要定义所需的异常炉况预测参数, 这些主要是在矫直生产中随时可以得到的钢板类型、钢板块数、钢板宽度 (mm) 、钢板厚度 (mm) 、实测矫正温度等各项实时数据。作为专家系统的通讯模块, OPC客户端必须能够达到这样的目的, 即要把矫直时有关数据实时采集到SQL数据库中。在数据处理确定矫直状况后, 再准确地把控制信息通过网络传送到矫直生产现场, 使矫直工作正确操作。专家系统的结构如图2
另外, 该专家系统亦接受自学习数据, 从现场液压伺服阀反馈出的数据, 经过自学习系统, 写入到专家系统, 经专家系统运算后再返回到现场。该系统具有以下几大部分: (1) 数据采集:要是获取各种钢板状况的实时数据, 如钢板宽度 (mm) 、钢板厚度 (mm) 、实测矫正温度以及一些计算所需的常数。具有两种输入方式, 一种是手动输入, 一种是通过OPC客户端自动采集矫直实时运行工况。 (2) 数据预处理:盖所有特征参数和复合参数的计算。从现场设备采集到的数据经常夹杂很多噪音信号, 所以在采用这些信号之前必须要用数据预处理模块对采集的数据信息进行滤波、平滑处理及复合参数的运算。 (3) 数据库:存一定历史阶段的即时数据和信息库等。 (4) 专家系统核心:主要是知识库和推理机这两部分, 是专家系统的重要组成部分。 (5) 自学习系统:接受来自伺服阀的实时现场数据, 返回到专家系统对比运算。
OPC客户端程序的主要功能就是通过实时获取OPC服务器中的数据。把异常矫直预测所需的参数, 即时写入SQLServer:数据库保存起来, 再提供给专家系统预测推理。因为系统对数据的即时性要求较高, 所以开发工具必须采用VC++6.0, 与OPC服务器的通讯使用OPC定制接口。应用在全液压矫直机上的服务器有Wincc和Simatic.net两种。OPC客户机可以通过Wincc的OPC服务器访问Wincc的数据, 可以通过Simatic.net的OPC服务器访问PLC的数据。数据通讯采用异步方式通讯结构。
本节所讨论的连接包括两种, 一种是Simatic.net与PLC的连接;一种是Wincc服务器与Wincc监控数据的连接。只介绍前一种连接。设置Simatic.net与PLC的连接具体步骤如下: (1) 准备工作。所需组件:Pc机、以太网网卡、Simatic.net软件、57-400以太网模块、NCM PC, STEP 7软件。成功安装软件和硬件并重启机器。 (2) 配置PC站。a.在STEP7中, 建立PC站, 组态OPCSERVRE, 设置IP地址。b.打开SIMATIC NET的站组态编辑器, 组态OPCSERVER。设置同 (1}一样的IP地址。c.配置NCM, 建立驱动连接。 (3) 测试连接。OPC SCOUT进行设置, 创建项, 建立连接。
3 总结与展望
OPC技术在工业控制领域中的优势越来越明显, 受到越来越多的工控硬、软件开发商和生产商的青睐。关于今后的发展, 在很多领域OPC技术将要代替先前的驱动程序技术, 这种趋势是无法阻挡的。OPC技术不仅能应用于应用程序与现场设备之间, 而且还应该把它作为一种Windows应用程序相互交换数据的通用规范。
参考文献
[1]冯冬芹.《工业通信网络与系统集成》.科学出版社, 2005.77-93.
[2]张卫钢《通信原理与通信技术》.西安电子科技大学出版社.2003.67-70.







