电脑桌面
添加盘古文库-分享文档发现价值到电脑桌面
安装后可以在桌面快捷访问

OPC通讯范文

来源:火烈鸟作者:开心麻花2026-01-071

OPC通讯范文(精选6篇)

OPC通讯 第1篇

In Touch软件系统是Wonderware公司研发的技术先进的人机接口界面 (HMI) 和具有面向对象特性的图形开发环境, 具有快捷、高效的用户配置功能的应用程序。它在报警信息存储和历史数据保存, 趋势显示方面的功能, 给用户对系统的监控提供极大的方便。在网络连接方面具有强大的功能, 通过DDE和SUITLINK、NETDDE等通讯协议方式, 可与本地系统或其它存在于网络中的计算机系统中的应用程序进行实时数据交换。同时, 它也可以支持通过ODBC协议访问各种类型的数据库, 实现对系统的综合管理。尤为重要的是, INTOUCH提供了多种通讯协议的转换接口I/O Server, 可以与各种控制系统进行通讯, 包括:HONEYWELL、SIEMENS、DELTAV等系统, 甚至也可以通过第三方Server进行连接。

2 OPC简介

OPC (是OLE for Process Control的缩写, 意为用于过程控制的OLE) , 是一个由多家工业行业领先者制定的行业标准, 由OPC基金会这个国际组织制定并管理这个标准, OPC基金会由全球两百多家行业领先的自动化厂家作为会员, 包括世界上所有主要的仪器仪表、自动化控制系统以及过程控制系统的公司, 如SIEMENS、HONEYWELL、Rockwell Software、微软等。OPC协议是以微软的OLE (如今的Active X) 、COM (意为部件对象模型) 、DCOM (意为分布式部件对象模型) 技术为基础。OPC技术包含关于接口、属性和方法的标准集等概念, 用于过程控制和制造业自动化系统之间的互联互通。OPC全称是OLE for Process Control, 它的出现为基于Windows的各种应用程序与现场过程控制应用程序建立了方便通道。在此之前, 为了存取现场控制系统的数据等信息, 相应的应用程序开发厂家都需要编写自己独有的接口函数。由于现场控制系统的种类繁杂, 而且产品时常更新换代, 经常给用户和软件开发厂家带来了额外的工作强度。即使这样亦不能满足实际工作的需要, 系统集成厂家和软件开发商迫切需要一种具有可靠性、高效性、开放性、可互操作性的即插即用的设备驱动程序。OPC标准就是在这种情况下应运而生的。OPC技术协议以微软公司的OLE技术为基础, 它的出现是通过提供一套标准的OLE与COM接口完成的, 在OPC技术协议中使用的是OLE 2技术, OLE协议标准允许多台控制系统之间交换图形、文档等数据对象。

3 进行OPC通讯时防火墙的配置

两台或多台计算机控制系统进行OPC通讯时, 由于防火墙的存在, 可能导致无法进行通讯的情况, 此时可以直接将Windows系统防火墙关闭, 或者在打开防火墙的情况下, 做程序的例外处理, 由于关闭系统防火墙, 可能存在系统安全隐患, 对系统安全造成影响, 所以建议以以做程序例外处理为首选, 处理过程如下:

(1) 打开防火墙, 添加端口, 名称为“DCOM”, 端口号为“135”, 类型为“TCP”。

(2) 添加例外程“OPCENUM”, 程序路径在“C:WINDOWSSYSTEM32OPCENUM.EXE”。

(3) 添加OPC SERVER例外程序, 根据实际通讯情况不通, 程序的名字会不通。

(4) 添加MMC控制台程序例外, 程序路径在“C:WINDOWSSYSTEM32MMC.EXE”。

(5) 打开“文件和打印共享”。

4 进行OPC通讯时DCOM的配置

(1) 运行DCOMCNFG, 进入DCOM配置程序, “组件服务”->“我的电脑”, 右键属性, “默认属性”->“默认身份验证级别”, 设置为“无”。

(2) “COM安全”中“访问权限”的“编辑限制”和“编辑默认值”, 分别添加“ANONYMOUS LOGON”、“Everyone”、“Guests”、“INTERACTIVE”、“NETWORK”、“SYSTEM”, 权限为允许“本地访问”和“远程访问”。

(3) “COM安全”中“启动和激活权限”的“编辑限制”和“编辑默认值”, 分别添加“ANONYMOUS LOGON”、“Everyone”、“Guests”、“INTERACTIVE”、“NETWORK”、“SYSTEM”, 权限为允许“本地访问”、“远程访问”、“本地激活”、“远程激活”。

(4) 选择“DCOM配置”并展开, 配置“OPCENUM”, 属性之常规为“无”, 安全之“启动和激活权限”选择使用默认值, “访问权限”使用默认值, “配置权限”自定义, 进行编辑, 增加“ANONYMOUS LOGON”、“Everyone”、“Guests”、“INTERACTIVE”、“NETWORK”、“SYSTEM”用户, 权限为允许“完全控制”和“读取”。

(5) 配置OPC SERVER程序, 程序以具体控制器为准, 例如SIEMENS WINCC的OPC SERVER程序为OPCServer.Wincc, HONEYWELL PKS的OPC SERVER程序为HWHsc.OPCServer, 配置方法按照“DCOM配置”方法配置。

5 进行OPC通讯时本地安全策略的配置

进行安全策略程序配置, 控制面板->管理工具->本地安全策略, “网络访问:本地账户的共享和安全模式”设置为经典, “网络访问:让每个人 () 权限应用于匿名用户”设置为已启用。

6 INTOUCH通过OPC LINK访问OPC SERVER

OPC通讯 第2篇

如何检验复杂先进的控制算法, 并将其有效地应用在生产现场一直是工业控制领域普遍关注的热点问题。PLC+工控机模式是常见的分布式监控系统结构, 但是PLC编程语言简单, 无法实现复杂的控制算法, 而传统的PID算法已经不能满足实际控制的需要, 神经网络、模糊控制等复杂算法取代PID算法成为工业控制的发展趋势[1]。

MATLAB工程计算能力强大, 程序设计流程灵活, 可实现复杂的控制算法[2]。若将MATLAB应用到PLC控制系统中, 将有利于故障诊断和过程控制复杂算法的设计与实现。但要实现上述目的, 问题节点在于PLC和MATLAB之间的数据交换。本文介绍通过OPC技术实现MATLAB与PLC之间数据交换的方法, 并通过一个实际的例子来说明PLC与MAT-LAB通讯的原理及过程。

1 OPC技术

OPC是以微软公司COM和DCOM技术为基础而创建的一种应用于自动化领域的软件接口标准, 具有传输可靠、速度快的特点, 已广泛应用在工控行业的各个领域[3]。

OPC目标是在客户和服务器之间构建一种通讯和数据交换的工业标准机制, 只要遵循OPC标准, 客户和服务器间就能形成一定规范的链接关系, OPC服务器就可为客户提供数据服务。通常情况下OPC服务器主要由服务器对象 (Server) 、组对象 (Group) 和数据项对象 (Item) 3类组成[4], 具体层次关系如图1所示。

2 MATLAB与PLC之间的通讯实现

PLC采集现场的数据, 通过工业以太网传给工控机, 再通过工控机内部的OPC协议分别传给组态软件和MATLAB的工作空间, 组态软件用来监控系统, 而MATLAB通过算法取得最优数据, 然后再通过OPC协议和以太网将数据返回到PLC内。数据交换系统结构如图2所示。

打开MATLAB并在指令空间中输入“opctool”, 在OPC工具箱进行OPC的配置, 将MATLAB设为本地服务器, 然后把“CoDeSys.OPC.02”添加为客户, 点击“connect”, 连接之后, 在客户端添加一个组, 重命名为“INPUT”, 并且在该组中添加一个对象, 画面如图3所示, 可以看到, 在PLC配置中设置的两个变量都显示在添加对象的对话框的左边, 选中“INPUT”变量, 点击“add”, 则PLC的变量“INPUT”添加到了组“INPUT”中。用同样的方法添加一个“OUTPUT”组, 然后将PLC的变量“OUTPUT”添加到组“OUT-PUT”中, 这时在PLC的模拟量输入端给一个5V的信号, 且看到在PLC编程软件PLC配置中, 模拟量输入有了一个整型值, 而在MATLAB的OPC工具箱中, 选中“INPUT”变量, 也显示了一个整型值, 它的值和PLC配置中模拟量端口显示的整型值完全相等。

接着在MATLAB的Simulink中对这个模拟量输入实时监测, 然后将此模拟量再送到模拟量输出端子。首先在MATLAB的Simulink工作空间中加入“OPC Configuration”、“OPC Read”、“OPC Write”三个模块, 并做好相应的配置。“OPC Read”模块中加入变量“INPUT”作为对象, “OPC Write”模块中加入变量“OUTPUT”作为对象, 添加完毕后PLC的两个变量名显示在Simulink工作空间的“OPC Read”和“OPC Write”中, 说明PLC的两个变量都已经导入到Simulink的工作空间。然后, 将“OPC Read”的端子V和“OPC Write”的端子相连, 再在中间加入一个“scope”, 用来实时显示从PLC读过来的数据, 配置好的Simulink工作空间如图4所示。设置完毕后开始仿真, 双击“scope”, 则随着时间的推移数据也在实时显示, 通过调节模拟量输入端的电压值, 可以看到显示数据也在随着调节而实时变化, 如图5所示。

这时PLC硬件配置中在线显示的数据、模拟量输入端口显示的数据和模拟量输出端口显示的数据完全相等, 与“scope”监测到的数据以及opctool中组“IN-PUT”和组“OUTPUT”中的两个变量的数据也完全相同, 由此可得, 模拟量输入的值通过MATLAB的Simulink中的OPC准确无误地传送到了模拟量输出端口。

3 结束语

(1) 文献[5]提出用MATLAB和组态软件通过OPC技术进行数据交换, 实现了PLC与MATLAB之间的数据交换, 但是要经过两层OPC协议, 而本文提出的MATLAB和PLC直接用OPC协议进行数据之间的通讯, 只经过一层OPC协议, 实时性强。

(2) 本文验证了模拟量输入数据通过OPC协议, 经过MATLAB的Simulink空间传送到模拟量输出端子, 有了这个基础, 可以在“OPC Read”中添加任何现场的开关量或模拟量数据, 而在“OPC Write”中添加需要控制的开关量或模拟量输出变量, 然后在它们之间加入智能控制算法的工具箱以及控制系统的数学模型, 就可以实现控制系统的精确控制。

(3) 工业控制系统一般都是一直在运行的, 平时用Simulink做仿真时都是设定一个仿真时间值, 要想使Simulink能够一直处于工作状态, 可以将仿真值设为“inf”, 这样控制系统就可以一直运行, 而不用担心Simulink仿真时间结束导致系统瘫痪。

摘要:PLC具有结构简单、编程方便、可靠性高等特点, 在工业及生产过程中得到了广泛应用, 但PLC的编程语言功能简单, 无法实现复杂的控制算法;MATLAB是一种高级矩阵语言, 并且包含工具箱和Simulink仿真环境, 可通过对控制系统进行可视化建模、仿真等工作, 实现复杂控制算法, 但不能直接应用在实时控制中。采用OPC通信技术, 实现MATLAB与PLC通讯, 为PLC控制下复杂算法的实现提供了技术基础。

关键词:OPC技术,MATLAB,PLC,通讯

参考文献

[1]王树东, 毕作文, 王红波.OPC技术下PLC与MATLAB相结合的实时模糊控制系统[J].电气自动化, 2011, 33 (5) :11-14.

[2]林宝全, 陈冲.基于MATLAB与PLC的实时控制系统[J].南昌大学学报 (工科版) , 2011, 33 (3) :298-302.

[3]柴兆森.基于工业以太网和OPC技术的异构系统集成研究[D].兰州:兰州理工大学, 2009:12-15.

[4]唐立学, 梁伟平, 杨维波.基于OPC的MATLAB与iFIX数据通信实现的过程控制[J].电力科学与工程, 2008, 24 (2) :26-28.

OPC通讯 第3篇

Atmos-Wave泄漏检测系统是一套集成了声波法, 负压波发和3D图形成像法的软件, 可以通过收集到的压力信号判断管道是否存在泄漏, 渗漏或偷盗油。与此同时, Atmos-Wave泄漏检测软件会将所收集的信息整合、处理并通过OPC通讯传输至用户的客户端, 使用户可以在第一时间对管道状况进行监控和做出判断。

1 Atmos-Wave泄漏检测软件介绍

Atmos-Wave泄漏检测软件 (以下简称Atmos-Wave) 是由英国阿特莫斯国际有限公司独立开发, 基于稀疏波、声波和3D图形成像法与一体的泄漏检测软件。AtmosWave可以通过对管道中压力变化的监控与收集, 通过软件后台运算, 甄别出其压力变化是由管道正常操作造成或是否有真实泄漏发生。在得出判断之后, Atmos-Wave泄漏检测软件可将所有运算信息通过OPC Server传输给长呼线原油管道已有的SCADA系统。

Atmos-Wave泄漏检测软件中包括了多种软件, 它们是:Detector, Logger, Mesh, OPC Server和Wave Manager。其中logger是用来收集以及传输数据的第一步骤软件, 数据经过logger会传输至DETECTOR以用来处理并得出结论, 之后得出的结论会传输至MESH显示出所得到的结论, 并通过OPC Server传至SCADA系统。

在长呼线原油管道上, 安装有10段Atmos-Wave泄漏检测单元, 并可以将此10段检测单元所得到的结论通过OPC协议传输至位于油坊庄首站的SCADA系统中, 让值班员能迅速发现泄漏报警。

2 Atmos-Wave与SCADA系统通讯的实现

为实现Atmos-Wave与SCADA系统之间的OPC通讯, 需对Atmos-Wave泄漏检测计算机进行DCOM设置, 以达到两台计算机之间可以进行数据交换。

OPC全称是Object Linking and Embedding (OLE) for Process Control, 它的出现为基于Windows的应用程序和现场过程控制应用建立了桥梁。在过去, 为了存取现场设备的数据信息, 每一个应用软件开发商都需要编写专用的接口函数。由于现场设备的种类繁多, 产品的不断升级, 往往给用户和软件开发商带来了巨大的负担。通常这样也不能满足工作的实际需要, 系统集成商和开发商急切需要一种具有高效性, 可靠性, 开放性, 可互操作性的即插即用的设备驱动程序。在这种情况下, OPC标准应运而生。OPC标准以微软公司的OLE标准为基础, 它的制定是通过提供一套标准的OLE/COM接口完成的, 在OPC技术中使用的是OLE 2技术, OLE标准允许多台微机之间交换文档, 图形等对象。[1]

COM是Component Object Model的缩写, 是所有OLE机制的基础。COM是一种为了实现与编程语言无关的对象而制定的标准, 该标准将Windows下的对象定义为独立单元, 可不受程序限制地访问这些单元。这种标准可以使两个应用程序通过对象化接口通讯, 而不需要知道对方是如何创建的。例如, 用户可以使用C++语言创建一个Windows对象, 它支持一个接口, 通过该接口, 用户可以访问该对象提供的各种功能, 用户可以使用Visual Basic, C, Pascal, Smalltalk或其它语言编写对象访问程序。在Windows NT4.0操作系统下, COM规范扩展到可访问本机以外的其它对象, 一个应用程序所使用的对象可分布在网络上, COM的这个扩展被称为DCOM (Distributed COM) 。

通过DCOM技术和OPC标准, 完全可以创建一个开放的、可互操作的控制系统软件。OPC采用客户/服务器模式, 把开发访问接口的任务放在硬件生产厂家或第三方厂家, 以OPC服务器的形式提供给用户, 解决了软、硬件厂商的矛盾, 完成了系统的集成, 提高了系统的开放性和可互操作性。[2]

OPC服务器通常支持两种类型的访问接口, 它们分别为不同的编程语言环境提供访问机制。这两种接口是:自动化接口 (Automation interface) ;自定义接口 (Custom interface) 。自动化接口通常是为基于脚本编程语言而定义的标准接口, 可以使用Visual Basic、Delphi、Power Builder等编程语言开发OPC服务器的客户应用。而自定义接口是专门为C++等高级编程语言而制定的标准接口。OPC现已成为工业界系统互联的缺省方案, 为工业监控编程带来了便利, 用户不用为通讯协议的难题而苦恼。任何一家自动化软件解决方案的提供者, 如果它不能全方位地支持OPC, 则必将被历史所淘汰。[3]

3 在Atmos-Wave泄漏检测软件配置DCOM

(1) 开始设置DCOM, 选择“开始→运行”, 在运行窗口中输入“dcomcnfg”然后点击OK, 这样就可以打开组件服务。

(2) 右键点击“我的电脑”, 选择属性, 随后属性窗口将会打开, 点击“默认属性”标签, 确定“开启本机分布式COM”和“开启本机Internet服务”都已经被选, 默认身份验证等级应设置为连接, 默认模拟级别等级应设置为识别。 (图2)

(3) 当默认属性配置完成后, 点击“COM安全协议”, “编辑限制”和“编辑默认值”可以按照相同的权限设置。在访问权限组中点击“编辑默认值”, 将“EVERYONE, IN-TERACTIVE, SYSTEM和NETWORK”添加至编辑默认值中。如果, 用户对访问机器有严格的规则规定下, EV-ERYONE选项可以被用户指定的用户名代替。确认所有在下方窗口下的选项都被选择上。并对所有提到的COM安全设置重复以上设置。 (图3)

(4) 右键点击本地OPCENUM服务, 选择属性。选择安全标签, 其中的启动和激活权限和访问权限可以设置为使用默认值, 配置权限设置为用户自定义, 点击编辑按钮, 将EVERYONE, INTERACTIVE, SYSTEM和NETWORK添加至用户或用户组中, 启用每一个添加用户的本地启动, 远程启动, 本地激活和远程激活。 (图4)

(5) 在安全标签下, 激活和启动权限和访问权限设置为使用默认值。

将配置权限设置为自定义, 点击编辑, 在权限窗口添加EVERYONE, INTERACTIVE, SYSTEM和NETWORK, 并在每一个选项上勾选上全控制。 (图5)

(6) OPCENUM多为OPC服务器的一部分已经自动安装。OPCENUM同时也已作为一个服务进行过注册, 因此在识别标签中需要选中系统账户 (服务) 。

(7) 关闭计算机防火墙。

(8) 以下列出的设置需要在OPC Server和OPC Client电脑上检查。

本地安全设置在:

开始>控制面板>管理工具>本地安全设置。 (图6)

“DCOM:安全描述符定义语言 (SDDL) 为机器访问限制定义的语法”

“DCOM:安全描述符定义语言 (SDDL) 为机器启动限制定义的语法”

以上这两个选项需要被配置为未定义。

与此同时:

将“网络权限:使所有人权限适用于匿名权限。”设置为可使用。

将“网络权限———本地账户共享和安全模式”设置为“经典”。

4 应用实例和效果

长庆-呼和浩特原油管道 (下称长呼线) 总长度为578公里, 管径为457mm。全线共有18座阀室, 其中RTU阀室5座, 普通阀室13座。采用英国ATMOS公司开发的ATMOS WAVE泄露检测系统软件。ATMOS为长呼线安装实施的产品为基于3D压力波法的ATMOS WAVE泄漏检测系统。长呼线原油管道拓扑图如图7所示。

Atmos Wave泄漏检测系统将音波、压力波和3D方法结合应用至泄漏检测当中, 通过管线上的高性能压力传感器来感知由于泄漏而引起的压力波和音波的传导的方向, 可以在各种各样复杂的工况 (连续开关阀门、管线充装、管线泄压) 等瞬态的情况下区分泄漏及偷盗油行为所产生的信号。当泄漏产生时, 系统可以在5分钟内检测到泄漏并提供泄漏定位, 泄漏报警、泄漏位置及泄漏量的等相关信息。

由于软件全是英文界面, 不方便操作人员观察, 最后通过OPC通信把泄漏报警、泄漏位置及泄漏量传至SCA-DA系统画面, 极大地方便了操作人员。

Atmos Wave泄漏检测系统在2014年9月间监测到管线压力异常变化, 并将其判断为偷盗油行为, 定位于89.7公里处。在偷盗油行为发生期间, 压力在129秒中下降0.024MPa, 压力变化率为0.000186MPa/秒, 压力变化极为缓慢。经过巡线人员排查, 在管线约89公里处发现盗油点。

在泄漏检测系统运行的过程中, 全年共出现报警次数约为30次, 其中除去GPS运行故障造成的报警次数7次外, 其他均由于工况操作、泵和阀门状态变化以及工艺流程造成的报警。该类报警均可通过操作人员的人工排查排除, 此类报警不计入误报警。同时现场的工程师已经将该类报警的数据交予Atmos公司, 在经过Atmos公司的工程人员调试后, 可以永久的将该类报警消除。2013年-2015年, 由于非设备故障造成的报警共有2次, 成功定位2次, 无误报警。

5 结论

通过对Atmos-Wave泄漏检测软件, 硬件的介绍, 以及对OPC通讯相关知识的研究学习对Atmos Wave泄漏检测软件与SCADA之间的OPC通讯有了初步的认识和了解, 在文档中同时介绍了如何实现OPC通讯, 位于长呼线原油管道上的Atmos-Wave泄漏检测系统中的OPC已与现有SCADA系统实现联通, 从而对管道安全生产和系统稳定起到了积极的作用。

参考文献

[1]Using OPC via DCOM with XP SP2 v1.10.pdf.http://www.opcfoundation.org/.

[2]OPC and DCOM Security.http://www.opcconnect.com/dcomcnfg.php.

[3]Using KEPServer Ex via DCOM with Microsoft XP Service Pack 2.KEPware, Inc.

[4]MSDN.Microsoft.

[5]潘爱民著.COM原理与应用[M].清华大学出版社, 1999, 1.

[6]兰景英, 刘月著.COM/DCOM技术与应用[J].玉溪师范学院学报, 2004, 08.

OPC通讯 第4篇

S7-200系列PLC是西门子SIMATIC PLC家族中的成员之一, 具有体积小, 软硬件功能强大等特点, 在我国工控领域应用中占有率很高, 但是在实际工程应用中经常遇到计算机与S7-200系列PLC通信问题。由于西门子PPI协议未公开, 西门子公司的监控软件WINCC虽然功能强大, 但因为Win CC6.0及以后版本中没有集成S7-200系列PLC的通信驱动程序 (老版本WINCC5中有Modbus Serial驱动) , 虽可以添加, 但还要再付费用购买相应软件, 价格比较昂贵, 而且也不方便。利用Prodave调用“w95_s7.dll”等库函数也可以解决, 但开发系统工作量大、可靠性难保证。这些问题给S7-200系列PLC的应用带来了一定的限制。

OPC全称是OLE for Process Control, 它的出现为基于Windows的应用程序和现场过程控制应用建立了桥梁。OPC包括一整套接口、属性和方法的标准集, 用于过程控制和制造业自动化系统。用高级语言以OPC方式实现监控, 灵活性好, 系统投资低, 能适用于各种系统, 为了解决这个实际问题, 笔者做了一些研究, 并在生产中得到成功应用, 本文以VB6.0为例把S7-200系列PLC与计算机通信问题展开说明。

二、S7-200系列PLC用VB以OPC方式监控的实现

西门子推出的PC Access软件是专用于S7-200 PLC的OPC Server (服务器) 软件, 它向OPC客户端提供数据信息, 可以与任何标准的OPC Client (客户端) 通讯。

以下通过用VB6与S7-200的OPCSERVER PCACCESS-SP3通讯实现数据交换。PCACCESS-SP3为西门子公司出品软件, 机器中应先安装。

1、定义全局变量

Option Explicit

Option Base 1'数组的索引从1开始

Private My OPCServer As OPCServer'定义OPC服务器

Private My Groups As OPCGroups'定义OPC组集合

Private With Events My Group As OPCGroup'定义可以引发事件的OPC组

Private My Items As OPCItems'定义OPC标签

Private My Item Server Handles () As Long'标签指针

Dim My TID As Long'异步调用ID

2、连接OPC服务器

Private Sub cmd Connect_Click ()

Set My OPCServer=New OPCServer'设置OPC服务对象

Call My OPCServer.Connect (txt Server.Text) '连接OPC服务

End Sub

3、服务器中增加组

Private Sub cmd Add Group_Click ()

Set My Group=My Groups.Add (txt Group.Text) '给组集合增加一个新组

End Sub

4、组中增加条目 (变量)

Private Sub cmd Add Item_Click ()

Dim i As Long

Dim Error Flag As Boolean

Dim Item Obj As OPCItem

Dim Item IDs (2) As String

Dim Item Client Handles (2) As Long

Dim Errors () As Long

C a l l M y I t e m s.A d d I t e m s (2, I t e m I D s, Item Client Handles, My Item Server Handles, Errors)

End Sub

5、同步读命令

用户窗体上应建一TIMER控件, 实现定时同步操作, 时间可根据具体情况设定, 比如1秒, 即可实现数据同步高效采集。

Private Sub cmd Read Sync_Click ()

Dim i As Long

Dim Values () As Variant

Dim Errors () As Long

Dim Qualities As Variant

Dim Time Stamps As Variant

Call MyGroup.SyncRead (OPCDevice, 2, My Item Server Handles, Values, Errors, Qualities, Time Stamps)

End Sub

文中仅以2个变量为例, 使用中可以做相应修改, 限于篇幅, 移走条目、移走组、断开连接、同步写等操作代码略。

三、结论

优点:该方法连接简单、数据通讯稳定可靠、可以读写S7-200系列PLC中所有存储区域, 加CP5611通讯卡后 (还要另加EM277) 可以走PRUFIBUS、PPI、MPI通讯协议, 通讯接口选择性较灵活, 允许同时访问同一个设备, 操作系统稳定可靠。

另外, 也可以通过其他高级语言如VB.net, C等实现通信, 实现方法与上述方法类似, 这种方法灵活性较好, 还特别经济实惠, 也省去了通讯的底层运行和许多烦琐的处理过程, 极大提高了控制系统的操作性和适应性, 经长期生产考验, 系统稳定可靠。

参考文献

[1]郭宗仁, 等:《可编程控制器及通讯网络技术》, 人民邮电出版社, 1999年。

[2]《s7-200中文系统手册》 (西门子公司电子文档2006)

OPC通讯 第5篇

由于西门子公司S7-200系列PLC比监控组态软件WinCC推出晚, 因此WinCC中没有集成S7-200系列PLC的通信驱动程序, S7-200系列PLC的通信协议也不公开, 这些问题给S7-200系列PLC的应用带来了一定的限制。S7-200 PC ACCESS是S7-200的一种OPC服务器, 是西门子公司推出的专为S7-200使用的低成本OPC工具。S7-200 PC ACCESS使用PPI、以太网或调制解调器与PLC通讯, 可同时从8个PLC读取数据。S7-200系列PLC的通讯口分三种工作方式:PPI方式、Freeport (自由口) 方式和PROFIBUS-DP方式, 其中自由口方式具备良好的开放性。本调度系统S7-200系列PLC通过CP243-1以太网卡经OPC与WinCC进行通讯, PLC与三相智能电力仪表通讯采用的是MODBUS协议。

一、应用背景

我公司50kt/aPVA生产线及配套工程投产后, 公司10KV配电系统有来自杨桥变电站的308、312、334、336四回路进线电源, 包括1#总配电房 (老装置区) 、26MW电站、390t锅炉配电房、2#总配电房 (新装置区) 四个区域性高压配电房, 各配电房联络复杂, 承担全公司的生产、生活用电。由于新老装置分别建设在不同时期, 设备状况和自动化水平不一致, 新老装置区综合保护装置、监控系统来自不同的厂家, 采用的通讯规约五花八门, 增加了上位监控软件与各个保护装置通讯实现的难度。为便于公司电网运行与调度管理, 决定采用S7-200通过OPC服务器与WinCC通讯具有良好开放性平台组建企业电力调度系统。

二、技术方案

各高压配电房开关量 (DI) 为50点左右, 模拟量 (AI) 为30个点左右。利用S7-224 PLC及配套的开关量输入、模拟量输入等扩展模块、三相智能电力仪表采集四个区域性高压配电房及各段母线、进线馈线电流、电压、负荷等数据, 利用三相智能电力仪表采集四趟电源进线、两台发电机电流、电压、有功、无功、频率、功率因数等数据, 可简化接线减少传感器的使用, 降低成本。开关量模块采集各高压断路器运行状态。电流电压变送器采集母线、联络、馈线电流电压数据。S7-224采集的实时数据通过OPC服务器与人机界面软件WinCC通讯, 交换机设电站高压配电房, 由于现场配电间、监控室、调度室分布较为分散距离比较远, 网络部分采用了光纤通讯。网络结构如图1所示。

在公司总调和电仪厂调度室安装上位机配置52寸液晶电视实时监控各高压配电房断路器状态及各回路运行数据, 关键数据有趋势图, 开关跳闸自动弹出画面, 并进行语音报警, 智能提示启动应急预案, 利于在系统停电事故状态下调度系统正确指挥、组织、协调, 快速恢复生产。

三、软件配置

系统共配OPC服务器2套, 每台S7-200PLC在以太网配置中均设置两个TSAP地址, 第一个用于连接电仪厂调度室OPC服务器, 第二个用于连接公司总调OPC服务器。每个OPC服务器与4套PLC均有连接。

1) 在西门S7-200编程软件Step7-Micro/Win32中用进行以太网向导配置CP243-1。根据以太网模块安装槽号, 在软件中设置正确的模块位置。在Step7-Micro/Win32软件中设置各套PLC的以太网IP地址, 设置以太网通讯连接数量, 用PC/PPI电缆下载。各套PLC的以太网通讯连接数量为2个, 具体配置见PLC与OPC服务器连接号对照表。设置完成后自动生成一个以太网配置子程序, 在主程序调用该子程序。

2) 配置O P C服务器。打开P C A c c e s s, 看到MicroWin的接口已经改为以太网, 属性中设定CP243-1的IP地址, 要保证PC Access中所设的IP地址和TSAP地址与Micro/Win以太网向导中所设置的一致, 特别注意两边远程和本地的TSAP地址设置要交叉过来, 才能保证正确的通讯, 具体配置下表。建立所有的变量或直接从MicroWin导入符号表, 则条目的符号名与项目中的符号名相对应, 也不用在WinCC中手动创建。PC Access软件自带OPC客户测试端, 用户可以方便的检测其项目的通讯及配置的正确性。配置完成后必须保存整个配置文件, 这样OPC客户端软件才能找到S7-200 OPC Server的配置。

3) 智能电力仪表的Modbus协议及与S7-200系列PLC通讯的编程组态。Modbus协议是GOULID公司为工业控制而设计的, 是一种可靠的工业控制系统通讯协议, 本系统中珠海派诺生产的三相智能电力仪表PMAC600BH-C采用这一通讯协议。仪表采用Modbus-RTU通讯模式, 遵从主-从通讯方式, 数据帧中包含地址信息、功能码、信息域以及校验码, 功能码仅支持03H和10H指令, 03H功能码在MODBUS规约下的功能为读取内部寄存器的内容, 10H为刷新多个寄存器内容。

STEP--Micro/WIN的Modbus指令库通过包括预组态的子程序和专门设计用于Modbus通讯的中断例行程序, 使与Modbus设备的通讯变得更简单。通过Modubs协议指令, 将S7--200组态为Modubs RTU主站设备工作, 并与两个Modbus从站 (智能仪表) 设备通讯。通讯程序略。

4) 在WinCC变量管理器中添加OPC通道, 在OPC Group上右键“系统参数”, 在“OPC条目管理器中”本地找到S7200.OPCServer, 选择“浏览服务器”, 进入变量列表, 添加好所有需要的变量后, 制作监控画面, 本项目根据需要组态了四个区域性配电房的系统图 (附电站系统图) 、10KV系统联络图、趋势图、报警记录等画面。并利用WinCC语音报警脚本编写语音报警程序, 实现了只要有断路器跳闸、母线失压、发电机机过负荷等异常出现就触发声音报警。

四、实施效果

该项目实施后, 调度室值班人员能够集中实时监控公司电网运行情况, 能够根据设备的负荷、电压、频率等情况及时和操作人员进行沟通调整运行方式。当断路器跳闸时, 报警画面有明显文字提示信息, 并进行语音报警, 能够让值班人员及时发现。现场PLC及OPC服务器都配备90minUPS (不间断电源) , 在系统失压停电等事故状态下值班调度能够根据系统提示正确指挥, 对防止误操作及快速恢复生产, 发挥了重要作用。

参考文献

[1]李艳杰, 等.S7-200PLC原理与实用开发指南[M].北京:机械工业出版社, 2008, 11.

OPC通讯 第6篇

1 工业以太网及OPC技术简介

OPC是为了解决应用软件和各种设备驱动程序的通讯而制定的一项工业技术规范和标准。它采用客户/服务器体系, 基于Microsoft的OLE/COM和DCOM (Distributed Component Object Mode1) 技术, 为硬件厂商和软件开发者提供了一套标准接口。OPC规范了接口函数, 不管现场设备以何种形式存在, 客户都以统一的方式去访问。当OPC服务器向上层应用程序提供标准接口时, 使上层的应用程序能够获取到OPC服务器中的数据, 从而向上实现互联。

2 基于工业以太网的OPC应用实例

安徽江淮汽车乘用车二厂冲焊分厂, 车间自动化程度较高, 目前拥有的五条自动化焊接线均采用西门子CPU3172DP型号的CPU来进行运行控制, 通过专用通讯模块CP3431以工业以太网的方式进行连接组网, 该模块也支持通用TCP/IP协议, 因此能够将其接入公司内部网络系统, 以现有的硬件网络为基础, 组网是基于公司内网, 自动化生产线自身又配置成一个局域网, 从而实现远程的访问, 通过高级语言VISUAL BASIC采集访问数据, 以目视化的形式展现出来, 这就是整个系统的网络结构。需要指出的是控制系统数据是不能被VISUAL BASIC直接访问的, 因此要实现控制系统的数据通过工业以太网为介质被生产管理者访问, 就必须通过第三方应用程序来实现通讯。OPC作为访问工业控制站数据的一种通用方式, 应用于这种场合非常适当, 通过配置就可以实现西门子程控器和上位机应用程序VISUAL BASIC之间的通讯。

系统的软件配置如下。

软件配置: (1) SIMATIC Step 7 V5.4。 (2) SIMATIC NET PC SOFTWARE V6.2SP 1。 (3) Visual Basic 6.0。其中SIMATIC Step 7和SIMATIC NET PC SOFTWARE V6.2 SP I用于对西门子PLC进行编程并组态OPC Server;Visual Basic 6.0用于PC机监控系统程序的编写。

系统的硬件配置如下。

硬件配置: (1) PC机。 (2) Siemens PLC.300; (CPU.317 2DP) 。 (3) 以太网通讯模块 (CP343-1) ; (4) 数字输入/输出模块。 (5) 存储卡。 (6) 普通自适应以太网卡。 (7) 网线。 (8) 多口交换机。

PC机与PLC通讯硬件配置方法[3]主要包括:西门子S7通讯及网络的配置方法、OPC服务器配置方法、Visual Basic软件设置及程序编写, 具体如下所述。

(1) 西门子S7通讯及网络的具体配置方法。

步骤1:将现场五个CPU程序项目F501, F601, F602, F801, F802集成到一起形成一个程序项目OPC_SERVER, 统一分配参数和地址。

步骤2:在集成项目插入SIMATIC PC STATION命名为OPC_server, 对PC STA-TION进行组态配置, 1#槽插入OP C服务器, 3#槽插入IE通讯模块。编译完成后进行网络组态配置。

步骤3:先配置IE通讯模块属性, IP地址设置同一网段, 然后加入工业以太网络 (深绿色线) 。

步骤4:右击OPC服务器, 选择”Insert New Connection”项分别插入五条连接, 设置时与五个CPU的通讯模块IP地址相对应, 最后需要对整个网络进行再编译。

(2) 3OPC服务器配置方法。

打开图标“Station Configurator”进入配置窗口。在第一槽加入“OPC server”服务器。在第三槽加入“IE General”, 并进行网络地址的配置。配置S7与OPC服务器通讯接口, 打开“CONFIGURATION CONSOLE”窗口, 在“ACCESS POINTS”窗口中选择“PC internel”。

打开之前在项目“OPC_server”中配置网络组态, 编译后下载, 即完成OPC基本配置。用网络指令“PING“测试各个网络是否连通。

3 Visual Basic软件的设置及程序编写

利用Visual Basic开发OPC应用程序时, 应加载OPC自动化接口的OPC包装DLL。在Visual Basic6.0中编程过程[2]如下:启动Visual Basic, 新建一个[标准EXE]的工程。菜单选择[工程 (P) ]-[引用 (N) ], 选择控件[OPC Automation 2.0]。在编辑程序中使用以下语句来进行OPC服务器的连接。

连接成功后就可以进行数据的读写操作, 接下来再进行一定的逻辑编写、画面制作及变量的连接等。最后就可以实现PC上位机通过OPC服务及VB可视化软件对西门子程控系统的数据进行采集, 达到生产线状态信息的反馈, 各线故障提示, 停线日志记录等功能, 图3表示的为主画面及其中一条自动化生产线的生产状态目视化界面。

4 结语

安徽江淮汽车乘用车焊装就是充分利用OPC的功能, 通过CP343-1通讯模块, 以工业以太网的方式实现Siemens s7300系列的多个PLC与Visual Basic之间的通讯。该系统采用OPC通讯方式与原有控制系统实现异构系统的数据共享和交换;通过OPC读取控制柜中PLC采集的数据, 在VB编写的软件中进行目视化输出, 供现场管理人员浏览, 以了解生产现场的设备运行信息;同时由以上组态形成的局域网络可以实现各个PLC的远程在线监控, 也从很大程度上方便现场各生产线故障的及时分析和排查。

摘要:本文以工业以太网为基础, 采用OPC技术, 应用面向对向的可视化编程语言, 实现与工厂内多个西门子317CPU的实时通讯, 同时采集现场各条生产线生产状态数据, 以目视化的方式表现出来。通过建立焊装自动化线信息目视化系统, 充分利用内部网络结构, 现场管理人员能够及时了解各条生产线的生产状态, 远程监控各PLC中程序状态, 同时为现场电气维护人员的远程分析或故障处理提供保障。

关键词:PLC,工业以太网,OPC技术,西门子,远程监控,VB

参考文献

[1]日本OPC协会, 郑立[译].OPC应用程序入门.

[2]刘莉.用VB编写OPC客户端程序的方法[J].工业控制计算机, 2005, 5.

OPC通讯范文

OPC通讯范文(精选6篇)OPC通讯 第1篇In Touch软件系统是Wonderware公司研发的技术先进的人机接口界面 (HMI) 和具有面向对象特性的图形...
点击下载文档文档内容为doc格式

声明:除非特别标注,否则均为本站原创文章,转载时请以链接形式注明文章出处。如若本站内容侵犯了原著者的合法权益,可联系本站删除。

确认删除?
回到顶部