OPC通讯在西门子PLC与LabVIEW通讯中的应用
2015-05-30张德忠
张德忠
摘 要:文章主要介绍了使用LabVIEW作为上位机软件与西门子PLC通讯的实际应用。该应用中使用西门子300系列PLC,LabVIEW作为上位机组态软件,使用OPC通讯方式进行通讯。这种通讯方式简单易用,配置灵活,无需添加任何配置协议,而且具有很好的扩展、管理和可维护特性。
关键词:西门子PLC;OPC通讯;LabVIEW
前言
近年来,随着科技的发展和进步,越来越多的上位机编程组态软件涌现出来,例如:wincc、ifix、组态王等等。它们多数为功能强大的组态软件,但是它们却有着点数与价格的限制,而且往往價格不菲。然而,LabVIEW做为一个完全开放的编程软件,它完全没有点数与价格的限制,并且它几乎能够与任何的工业接口进行通讯。
随着LabVIEW的推广和使用,越来越多的工业控制领域开始使用LabVIEW这一开放式的编程软件作为上位机控制软件。
文章将详细介绍一种极为简单的通讯方式。使用OPC通讯建立西门子300PLC与LabVIEW的通讯。
1 硬件配置
如图1所示:本应用中硬件包括西门子300PLC、S120变频器、西门子电机、上位机、网线等。
该系统中PLC与上位机,PLC与变频器之间的通讯均采用Ethernet网线通讯。
2 通讯配置
本系统中西门子300PLC与S120变频器之间的通讯以及300PLC程序的编写不再介绍,仅对PLC与上位机LabVIEW程序的通讯进行说明。
2.1 软件配置
(1)SIMATIC NET PC SOFTWARE V8.20SP1;
(2)STEP 7 V5.5SP1;
(3)LabVIEW2013。
SIMATIC NET 是西门子在工业控制层面上提供给您的一个开放的,多元的通讯系统。它意味着您能将工业现场的 PLC、主机、工作站和个人电脑联网通讯,为了适应自动化工程中的种类多样性,SIMATIC NET 推出了多种不同的通讯网络以因地制宜,这些通讯网络符合德国或国际标准,它们包括:工业以太网、AS-I、PROFIBUS、PROFIBUS PA;SIMATIC NET 系统包括:传输介质,网络配件和相应的传输设备,协议和服务,连接 PLC 和电脑到 LAN 网上的通讯处理器(CP 模块)。
在文章中,需要通过SIMATIC NET建立OPC服务器站点。OPC(OLE For Process Control,用于过程控制的 OLE)的基本原理是,OPC客户应用程序可以通过一个标准、开放的多供应商接口,与 OPC服务器进行通讯。
OPC 服务器提供:
* 数据访问接口
* 报警和事件接口
* 在不同制造商自动化产品之间的标准化
* 用于不同部件的相同的、用户友好的用户接口
* 从工业网/广域网中每个计算机的可访问性
* 经过客户机接口(C++)的高性能数据存取
* 经过自动化接口(VB)或包含 OCX 数据控制
* 因特网通讯可通过 XML DA 接口实现
* 变量(项目)的成组化;这样可以在很短的时间内进行大容量的数据存取
2.2 通讯组态
2.2.1 OPC 服务器与 PLC S7 连接通讯的组态
(1)配置PC站的硬件机架
当 SIMATIC NET 软件成功安装后,在 PC 机桌面上可看到 Station Configurator 的快捷图标,同时在任务栏中也会有 Station Configuration Editor 的图标。
打开Station Configurator,选择一号插槽,点击 Add 按钮或鼠标右键选择添加,在添加组件窗口中选择 OPC Server 点击 OK;同样方法选择三号插槽添加 IE General。
点击 Network Properties 后,WINDOWS 网络配置窗口即打开,选择本地连接属性菜单设置网卡参数,将电脑本地连接地址改为PLC地址,并新建一个网络。
(2)组态PC Station
在开始>>所有程序>>中找到Simatic NCM软件,打开后新建项目,在硬件配置中新建OPC sever,和IE General,分别位于一,三两槽,完成后保存编译。
或者打开SIMATIC Manager软件后,通过File》New创建一个新项目,如“s7ethernetopc”。通过Insert》Station》Simatic PC Station插入一个PC站。如图4所示。
然后在硬件组态中,从硬件目录窗口选择与已安装的Simatic Net软件版本相符的硬件插入到与在Station Configurator Editor配置的PC硬件及技术相对应的插槽中。
点击IE General属性对话框中Properties按钮打开以太网接口参数设置对话框,按照要求设置以太网的IP地址和相应的子网掩码。IP地址应与实际硬件所设以太网卡IP地址一致。并新建一个Ethernet网络。
2.2.2 完成PC站组件设置后,保存并编译当前组态配置
(1)添加PLC数据为OPC变量
打开OPC Scout,选择Local COM sever》OPC.SimaticNET》\S7》objects》DB,在DB数据块文件中选择New definition,在弹出的窗口中选择PLC定义好的数据类型和地址。例如布尔型的数据数据类型为X,实数的数据类型为Real。这样依次将PLC中的数据添加为OPC变量。如图7所示。
在Scout中把已经添加好的OPC变量拖到DA View中可以实时查看这些变量的通信状态和数值。
(2)关联LabVIEW控件与OPC变量
在LabVIEW中右键控件选择属性》数据绑定,数据绑定选择中选择DataSocket;选择合适的访问类型;路径选择》DSTP服务器,在弹出的的窗口中选择localhost》OPC.SimaticNTE》S7》S7connection-1,选择此控件所要关联的OPC变量,即所要对应的PLC变量。
3 验证配置
将LabVIEW中的控件关联好OPC变量后,运行LabVIEW程序,在前面板的控件右上角会出现绿色的小矩形框,当控件与PLC变量通讯正常时,显示为亮绿色。此时改变前面板控件的值,可以在OPC Scout软件中看到相应的变量值发生了变化,并且PLC发出了正确的指令,这表明LabVIEW已经通过OPC变量的方式与PLC建立了连接。如下图为实验中控制电动机得到的曲线。
4 结束语
文章详细介绍了通过Ethernet建立OPC服务器与西门子300系列PLC连接的组态配置方法,通过在LabVIEW中建立OPC连接数据绑定使LabVIEW通过Ethernet建立OPC服务器以S7连接方式访问西门子300系列PLC并读取PLC数据的方法。这种基于LabVIEW组态的方法不仅编程简单,而且没有成本与常用组态软件点数的限制,配置简单,不需要要增加任何通讯模块部件,节省了大量的组态编程时间和软硬件成本,是一种简单易行的通讯方式。但是这种通讯方式有一些缺点,其通讯延时一般在几百毫秒以上,在实时性要求高的场合不建议使用。
参考文献
[1]Simens 以太网建立OPC[Z].
[2]西门子S7 300PLC OPC配置说明[Z].
[3]NI LabVIEW Help 2013[Z].