为了适应工业生产的发展趋势、满足市场要求,一些企业在建设或改进已有生产线时。常常采用多种自动化系统.由于开发商和设备的差异,这些系统都设计了各自专用的接口,不具备互操作性,各个生产线设备软、硬件不能够相互兼容,导致整个工业网络控制系统“自动化孤岛”的出现。此外,由于缺乏统一的通信接口标准,各系统之间的互连和互操作以及与上层服务器的信息交互均十分困难。OPC技术是一种组件对象模型接VI标准,能为基于Windows操作平台的工业应用程序之间提供高效信息集成和交互功能,它采用客户/N务器模式,能够相互通信并共享数据。
本系统采用VB开发上位自动监控人机界面与S7-400 PLC的通讯,利用Siemens公司为S7-300/S7-400提供的OPC服务器,采用OPC的技术实现工业网络控制系统中VB与S7-400 PLC的数据信息交互。本系统以风机变频调速系统为对象进行研究。
1 OPC接口技术
OPC即OLE For Process Control的缩写,是基于微软Microsoft公司的Distributed InterNet Appli- cation(DNA)构架和Component Object Model(COM)技术,是专门用于工业控制领域的0LE,以组件对象模型和分布式对象技术模型(CoM/DCoM)技术为基础,规范定义了一种工业标准接口,使之能够通过基于PC的软件组件将产品的物理I/O网络和协议与现场控制设备相连,从现场测控设备获取实时数据,实现OPC服务器和OPC客户端之间的通信,进行数据的交换,其中包含有OPC DA(oPC Data Ac—cess)和0PC DX(0PC Data Exchange)技术。
一个OPC服务器中包括3类对象:()PC服务器(Server)、OPC组(Group)和OPC项(Item),服务器对象(OPC Server)拥有服务器的所有信息,规定一个服务器对应于一个OPC server。在一个Server中,可以存在若干个组,组对象(OPC Group)除了记录本组信息外,还包容并逻辑组织OPC数据项(Item)。项对象(OPC Item)是最小单位的读写数据,项不能独立于组存在,必须隶属于组 ],如图1所示。同时,OPC服务器通常有2种访问接口:OPC定制接口和OLE自动化接口。其中自动化接口可以实现解释性语言访问OPC服务器,在本系统中采用的即是自动化接口。
图l OPC结构图
2 网络结构的设计
本研究以SIEMENS工业通讯网络中的工业以太网及PR0FIBUS-DP现场总线的研究平台,采用两级网络控制拓扑结构.第一级采用工业以太网,使用TCP/IP协议,用于工控机和西门子S7-4O0PLC之间的通讯,s7-400PLC作为通讯的枢纽,收发现场数据、操作指令、设定参数等数据和信号;第二级采用Profibus-DP现场总线,用于S7-400和各个控制设备之间的通讯.整个网络的结构如图2所示。由于工业网络控制系统按照功能划分,由客户端、数据层、网络层、数据服务层以及现场设备层组成。所以根据控制系统构成的不同,作为数据源的OPC服务器可以是和OPC应用程序在同一台计算机上运行的本地OPC服务器,也可以是在另外的计算机上运行的远程OPC服务器,本系统采用前一种方式。支持OPC接口技术的现场总线以及以太网接口设备可通过软硬件接口和Ethernet/IP方法连接到OPC服务器。
图2工业控制网络系统结构图
3 OPC技术通信实现
在上位机选用VB编写OPC客户端作为监控,利用VB中通用的OPC客户端控件,即OPC Autonla-tion 2.0来连接符合OPC规范的控制器驱动程序,通过工业以太网来访问西门子PLC S7-400的OPC服务器,西门子PLC S7-400连接上OPC服务器作为通讯纽带,收发PROFIBUS总线上各种数据参数。
3.1 硬件组态
OPC的硬件配置包括:在西门子S7-400配套软件SIMATIC NET的PC Station中添加上OPC Server以及以太网卡CP1612;在STEP7中增加PC Station并命名(如opc),配置硬件加上OPC Server和CP1612,配置CP1612时IP地址设定为使用的PC机的地址,并将其添加到$7-400站的Ethernet网络中,编译后下载;继续组态网络,点击Options下的Configure Network,出现的即是系统网络结构图,其中以太网Ethernet(1)上连接着2个主站,分别是S7-400CPU和刚刚建立的opc(pc station),如图3所示;在图3中,OPC控制面板中设置PG/PCINTERFACE为S7ONLINE指向改为PC INTERNAL(LO-CAL),是将网路配置信息下载到本地访问点.若要下载到S7-400的SPU中,则将S7 ONLINE改为Sie-mens CP1612(见图4);将s7-400的网络配置信息下载到PLC中,回到项目界面,将SIMATIC 400和opt均下载一次.观察PC机任务栏的PC STATION CONFIGRATOR,如果界面中的黑白色变成了彩色,说明PC STATION已经在运行。
图3 网路配置图
图4 网络信息配置
3.2 软件程序设计
用VB编写了OPC客户端应用程序,实现了上位子与西门子S7-400PLC的通信,主要程序代码如下:(1)变量声明,即声明OPC相关对象,定义服务器和客户端旬柄。
Dim NewOPCServer 定义OPC接口
Dim WithEvents NewOPCGroups 定义OPC组
Dim WithEvents NewOPCGroup
(2)建立服务器连接.
Set NewOPCServer=New 0PCServer 建立OPC服务器对象
NewOPCServer. Connect”SIMATIC Remote OPC
(3)异步读取(异步写人类似).
异步读写和同步读写不同,它不会一直占用系统的资源,而是在读取完成之后触发异步读写事件。
NewOPCGroup.AsyncRead 1 Numitems。arHandles,arErrors,1TransID,1CaeelID 从OPC服务器中异步读取数据
(4)断开0PC服务器.
完成数据的读写操作之后,应断开连接,在断开连接之前需要移除OPC相关对象。
objItems.Remove 8,1ServerHandles,1Errors 删除 OPC标签
Set objItems=Nothing
Dim NewOPCItems 定义OPC标签集合
Dim 1ServerHandles()定义服务器句柄
Dim ClientHandles() 定义客户端句柄
Server”,RemoteMachine 连接远程OPC服务器
NewOPCServer.Connect”SIMATIC 0PC Server” 连接本地OPC服务器
Private Sub NewOPCGroup_AsyncReadComplete(By-Val TransaetionID,ByVal NumItems,ClientHandles(),hemValues(),Qualities(),TimeStamps(),Errors()) 异步读取完成事件触发
NewOPCServer.OPCGroups.RemoveAll删除OPC
Set ONENewOPCGroup=Nothing
Set NewOPCGroups=Nothing
NewOPCServer.Disconnect 断开OPC服务器
4 应用实例
本研究以风机系统为对象,利用VB开发出系统的人机界面,并应用OPC技术实现在网络结构下与S7-400PLC的通讯,图5为系统中风机控制系统的监控画面,图6为风机的变频控制流量趋势图。
图5 上位机监控画面
图6 变频控制流量实时趋势图
5 结束语
本研究将OPC技术融人工业以太网和PROFIBUS总线中,通过VB设计OPC接口程序,采用客户端/服务器模式,实现工业网络控制系统中VB与S7-400 PLC的相互通信并共享数据。解决了不同产品的驱动以及服务程序与应用程序的集成问题,在客户端与服务器之间建立一种即插即用的简单链接关系,节约了成本,保证了结构的透明性,减少了开发周期,能够有效地利用资源,提高了网络控制系统的开放性。
台达DOP-W系列提供10.4”/12”/15&rdqu…
JetNet 3005G · 5口全千兆RJ-45交换机 …
显示规格 一般规格 环境规格 结构规格 外形…
功能规格 …
功能规格 …
西门子SIMATIC S7-400PLC的主要特色为:极高的处理…