西门子plc与上位机的opc通讯讯怎么获取plc数组数据?

要:西门子WINCC是一款上位机组态软件,在工控自动化行业领域大量应用,运行稳定可靠,支持多种通讯接口,如Profibus、TCP/IP、Modbus,且每种通讯中预置了多个品牌系列PLC的驱动程序,通讯时直接使用PLC的内部存储地址,快捷方便,但是市场上的PLC产品种类繁多,不能够将所有的产品驱动都内置,为解决其他品牌PLC等产品通讯问题,WINCC内置了OPC通讯方式,通过第三方的OPC Server作为中间桥梁,可实现WINCC与PLC的通讯。

在工业自动化行业中,各种现场总线广泛应用于电气设备、仪器、仪表、数字设备中,例如Profibus、TCP/IP、Modbus,支持同一种通讯协议的硬件就可以完成通讯连接,实现数据的交换,系统互联,大大提高了管理效率。针对支持不同通讯协议的设备,市场上出现了各种进行协议转换的网关设备,但是这种方式成本高且不具有普遍性。直到OPC的出现才大大提高了工业控制系统的开放性,实现了大范围的数据互通[1]。

OPC全称是Object Linking and Embedding(OLE) for Process Control,OPC定义了一个开放的接口,基于微软的OLC技术,在这个接口上,基于PC的软件组件能交换数据。OPC允许在不同供应商开发的硬件装置和应用软件之间通过公用接口进行数据交换, Windows技术和OPC 接口使之有可能将PLC 硬件和软件组合在一起, 而无需开发大量专用通信接口程序, 减少了人力物力资源的投入[2]。

在我公司的一个项目中应用到和利时LK系列冗余PLC和西门子WINCC 7.3上位机组态软件,在WINCC变量管理中没有与和利时PLC的通讯驱动,通过和利时的OPC Server可以实现PLC到WINCC的数据交互。

在和利时LK的编程软件安装包PowerPro V4.3.1B中包含了OPC 通讯服务的安装组件,在打开OPC Server 之前,先进行OPC注册,在注册表写入完信息后,就表示完成了注册,此时本机OPC Server已经建立完成。

在和利时PLC编程软件CoDeSys中使用变量名称声明全局变量。

下载PLC程序,将变量符号表下载至PLC,然后在OPCServer中依次建立通道(Channel,选择默认设置即可)-建立设备(Device,填入CPU的IP地址),直至在右侧空白处点击右键,选择“添加标签”。

前面在全局变量中声明了变量名,标签名可随意写,在此我们与PLC中变量名保持一致,全局变量的标签地址规则为“.变量名”,我们的第一个变量地址为“.W1_Control_Wincc”,访问类型以及数据类型按照实际选择。

按照上述方法将所有变量都建立完,建立完成后点击“操作——运行”运行OPC Server,连接上后会有建立变量的当前数据,至此OPCServer配置完成。

(1)打开变量管理,添加新的驱动“OPC”,选择“OPC.chn”,添加上OPC驱动;

(4)右键点击“OPC Groups”,选择“系统参数”,弹出“OPC条目管理器”,选中“Hollysys.OPCServer.1”,点击“浏览服务器”,弹出OPCServer中建立的所有变量,选择其中某一变量,添加至相应变量组,依次添加所有变量至Wincc变量组中去,完成Wincc中OPC变量管理。

通过OPC连接方式,实现了Wincc上位机与和利时PLC的通讯连接,将PLC中的变量通过OPCServer传递到Wincc中去,在Wincc组态画面中可以灵活使用这些变量,通过OPC接口技术免去了硬件接口高昂的费用及维护成本,实现了工业自动化中软件的无缝连接,随着OPC技术规范的逐步完善和现场大量应用,OPC已经成为了自动化控制系统中不可或缺的一部分。

[2]李鑫,吴爱国,何熠.基于OPC技术楼宇系统集成的研究与实现[J].低压电器,2005(08):14-17.

[3]张建会.OPC在工廠DCS控制系统中的应用[J].安徽冶金科技职业学院学报,2005,10,15(04):45-48.

项目名称:ESP地面紧凑式矢量变频控制系统集成开发

作者简介:栾德爵(1984-),男,山东人,硕士研究生,工程师,从事电气仪表类系统设计工作。


OPC UA 设计用于在较短的时间内传送大量数据。如果将数组和结构作为一个整体进行读写访问,而非对单个 PLC 变量进行访问,则可显著提高系统性能。

这是较快的访问数组的方式。因此,需将 OPC UA 客户端数据组合到数组中。

对于一次性或不频繁的数据访问,请使用标准的读/写访问。

对于少量数据的循环访问(循环间隔较长约为 5 秒),请使用订阅。

优化 OPC UA 服务器中的较短发布时间间隔设置和较小采样时间间隔设置。

如果定期访问某些特定变量(重复访问),则可使用函数“RegisteredRead”和“RegisteredWrite”。

通过增加通信循环负载值,可增大 PLC 上的通信负载。确保更改设置后应用程序仍能正常工作。

创建数组 DB 的操作步骤

在全局数据块中或某个函数块的背景数据块中,可创建数组或创建为一个数组 DB。以下章节中,将介绍如何创建一个数组 DB。

要创建带数组的数据块(数组数据块),请按照以下步骤进行操作:

    在项目树中选择带 OPC UA 服务器的 CPU。

    为数据块选择一个一名称,并接受已输入的名称。

    从“数组数据类型”(Array data type) 下拉列表中选择数组各个元素的数据类型。

    在“数组限值”(Array limit) 中,输入数组的上限。

    单击“确定”(OK)。

北京铁牛智能科技有限公司

铁牛智能科技专注于万物互联、本地智能化、边缘计算、大数据应用的物联网智能网关等系列产品、平台软件的研发、销售和服务。聚焦于物联网、泛在电力物联网、工业互联网、智能制造等领域聚焦于物联网、泛在电力物联网、工业互联网、智能制造等领域。目前,铁牛科技产品和服务分为两类,一:高性能物联网智能网关产品线:TNBUILD网关系列、工业通信安全网闸、边缘计算服务器、电力边缘路由器。二:物联网行业领域软件以及解决方案。公司凭借丰富的技术积累和行业经验,为石油、石化、轨道交通、智能交通、电力、钢铁、有色、市政、烟...

我要回帖

更多关于 西门子plc与上位机的opc通讯 的文章

 

随机推荐