论文部分内容阅读
摘要:通过OPC技术结合XML技术实现上位机与西门子S7-300工业控制平台的实时通信,解决了集中采集和监控生产现场数据的延时以及数据中断的问题。
关键词:XML技术;OPC技术;S7-300;实时通信
中图分类号:TP273 文献标识码:A文章编号:1007-9599 (2011)05-0000-01
Application of XML Technology in the OPC Client and S7-300 PLC in Real-time Communication
Shi Hui,Liu Tao
(Xinyu Steel Special Steel Co., the new company,Xinyu338013,China)
Abstract:Through OPC XML technology combined with PC and Siemens S7-300 real-time communication in industrial control platform to address the concentration of field data collection and monitoring the production delay and data disruptions.
Keywords:XML technologies;OPC technology;S7-300;Real-time communication
随着社会的进步,冶金设备的自动化层度也在逐步提高。出于对自动化控制设备的稳定性和性能等多方面的要求,冶金行业越来越多的自动化控制系统都选择了西门子S7-300工业控制平台作为自动化控制的核心。OPC(OLE for Process Control,用于过程控制的OLE)技术是与自动控制设备建立通信的一种方法,由于西门子的S7系列平台均支持OPC技术,因此采用OPC技术可以实时的读取S7-300 PLC数据。通过对比以数据库为存储介质的OPC客户端数据实时更新情况发现,使用了XML技术的OPC客户端可以更快地存取S7-300 PLC平台的数据,提高了公司的数据采集和监控系统的实时性并且数据中断现象明显减少。
一、主要技术
(一)OPC技术
OPC是一个工业标准,包括一整套接口、属性和方法的标准集,用于过程控制和制造业自动化系统。OPC为基于Windows的应用程序和现场过程控制应用建立了桥梁。在OPC技术出现之前为了存取现场设备的数据信息,每一个应用软件开发商都需要编写专用的接口函数。由于现场设备的种类繁多,且产品的不断更新换代,给用户和自动化人员带来了巨大的工作负担,通常这样也不能满足工作的实际需要,有了OPC技术就可以解决上述难题。OPC是一种具有高效性、可靠性、开放性、可互操作性的即插即用的设备驱动程序。
(二)XML技术
XML(Extensible Markup Language)即可扩展标记语言,它与HTML一样,都是SGML(Standard Generalized Markup Language,标准通用标记语言)。XML是依赖于内容的技术,是当前处理结构化文档信息的有力工具。XML也可以作为一种新的数据库形式,广泛应用于计算机、自动化等多个行业中。
二、建立与S7-300的通信连接
(一)软件与硬件环境
建立OPC服务器与S7-300PLC的S7连接,需要的软件与硬件环境为:SIMATIC NET PC SOFTWARE V6.2 SP1,STEP 7 V5.3 SP1,普通网卡,S7-300 CPU 315-2DP,CP343-1(6GK7 343-1EX20-0XE0)
(二)建立连接的方法
建立OPC服务器与S7-300控制平台连接,需要配置OPC服务器。首先,通过Station Configuration Editor 配置窗口配置 PC 站的硬件机架,将OPC Server组件和IE General添加到相应的插槽中。然后在STEP 7中组态PC站,打开SIMATIC Manager软件,在硬件组态中,从硬件目录中选择与Station Configuration Editor窗口中配置相对应硬件插入到硬件机架的插槽中,在NetPro网络配置窗口中插入新连接。配置相应参数后,已建好的S7连接就会显示在连接列表中。
三、在OPC客户端中使用XML
OPC客户端的开发使用VB.NET 2005,客户端的开发分为与S7-300实时通信和参数数据存储两个部分。OPC客户端的配置与数据存储全部采用XML文档的形式。为了方便的使用XML技术,因此在.NET的代码段中首先添加了对XML命名空间的引用:Imports System.Xml以下操作XML的代码实现了将网络上的OPC服务器列表存储到OPCServerList.xml文档的功能:在通用代码段中声明一个新的XML文档。Private MyXMLDoc As New XmlDocument()读取程序根目录下用于存储OPC服务器列表的XML文档。MyXMLDoc.Load(Application.StartupPath & "OPCServerList.xml")声明xml文档的头,并将头文件添加到XML中。Dim OPCDeclare As XmlDeclaration
OPCDeclare = MyXMLDoc.CreateXmlDeclaration("1.0", "GB2312", "no")
MyXMLDoc.AppendChild(OPCDeclare)添加XML文档的根元素,即0级结点,一个XML文件必须至少有一个根元素。
Dim OPCServer As XmlElement
OPCServer = MyXMLDoc.CreateElement("OPCServerList")
MyXMLDoc.AppendChild(OPCServerList)
Dim OPCServerList(10) As XmlElement
For i As Integer = LBound(OPCServerList) To UBound(OPCServerList)
OPCServerList(i) = MyXMLDoc.CreateElement("OPCServer")
OPCServerList(i).SetAttribute("ServerName", AllOPCServer(i))
XlServer.AppendChild(XlOPCServer(i))
Next
保存OPC服务器列表。MyXMLDoc.Save(Application.StartupPath & "OPCServerList.xml")
四、连接测试
将PC机与OPC服务器和一个带有以太网通讯模块的S7-300 PLC通过以太网交换机连接到一起。在OPC服务器中建立一个“OpcServer”的PC站。在OPC客户端中,点击“搜索OPC服务器”按钮搜索网络上存在的OPC服务器,之后向活动的OPC服务器中添加组"连铸公用",添加变量"S7:[S7 GY]DB52,REAL4",此时变量列表中的"S7:[S7 GY]DB52,REAL4"这个点的数据每3秒变化一次,说明与S7-300站的通讯成功。打开程序根目录的OPCServerList.xml文档,可以看到如下所示的文档结构:
76
以上文档内容表明,通过OPC客户端建立XML文档成功,数据点"S7:[S7 GY]DB52,REAL4"的值通过更新XML文档的方式实现实时刷新,同样可以通过读取XML文档的方式实时读取。
五、结语
同采用数据库为存储介质的OPC客户端相比,以XML文档的方式与S7-300实时交换数据传输稳定,可以有效的减少数据延时并且设计简单。适用于为生产管理系统和统一的实时监控系统提供更高效率的生产现场数据的相关项目。
参考文献:
[1]孙伟.XML数据库查询优化及相关技术研究[D].哈尔滨:哈尔滨工程大学,2006
[2]邹光华.基于XML的PLC数据描述[J].计算机工程,2006,32(1)
[作者简介]石慧(1982.04-),女,江西新余人,江西新余新钢特殊钢有限责任公司,助理工程师,从事自动化软件的管理和维护工作。
关键词:XML技术;OPC技术;S7-300;实时通信
中图分类号:TP273 文献标识码:A文章编号:1007-9599 (2011)05-0000-01
Application of XML Technology in the OPC Client and S7-300 PLC in Real-time Communication
Shi Hui,Liu Tao
(Xinyu Steel Special Steel Co., the new company,Xinyu338013,China)
Abstract:Through OPC XML technology combined with PC and Siemens S7-300 real-time communication in industrial control platform to address the concentration of field data collection and monitoring the production delay and data disruptions.
Keywords:XML technologies;OPC technology;S7-300;Real-time communication
随着社会的进步,冶金设备的自动化层度也在逐步提高。出于对自动化控制设备的稳定性和性能等多方面的要求,冶金行业越来越多的自动化控制系统都选择了西门子S7-300工业控制平台作为自动化控制的核心。OPC(OLE for Process Control,用于过程控制的OLE)技术是与自动控制设备建立通信的一种方法,由于西门子的S7系列平台均支持OPC技术,因此采用OPC技术可以实时的读取S7-300 PLC数据。通过对比以数据库为存储介质的OPC客户端数据实时更新情况发现,使用了XML技术的OPC客户端可以更快地存取S7-300 PLC平台的数据,提高了公司的数据采集和监控系统的实时性并且数据中断现象明显减少。
一、主要技术
(一)OPC技术
OPC是一个工业标准,包括一整套接口、属性和方法的标准集,用于过程控制和制造业自动化系统。OPC为基于Windows的应用程序和现场过程控制应用建立了桥梁。在OPC技术出现之前为了存取现场设备的数据信息,每一个应用软件开发商都需要编写专用的接口函数。由于现场设备的种类繁多,且产品的不断更新换代,给用户和自动化人员带来了巨大的工作负担,通常这样也不能满足工作的实际需要,有了OPC技术就可以解决上述难题。OPC是一种具有高效性、可靠性、开放性、可互操作性的即插即用的设备驱动程序。
(二)XML技术
XML(Extensible Markup Language)即可扩展标记语言,它与HTML一样,都是SGML(Standard Generalized Markup Language,标准通用标记语言)。XML是依赖于内容的技术,是当前处理结构化文档信息的有力工具。XML也可以作为一种新的数据库形式,广泛应用于计算机、自动化等多个行业中。
二、建立与S7-300的通信连接
(一)软件与硬件环境
建立OPC服务器与S7-300PLC的S7连接,需要的软件与硬件环境为:SIMATIC NET PC SOFTWARE V6.2 SP1,STEP 7 V5.3 SP1,普通网卡,S7-300 CPU 315-2DP,CP343-1(6GK7 343-1EX20-0XE0)
(二)建立连接的方法
建立OPC服务器与S7-300控制平台连接,需要配置OPC服务器。首先,通过Station Configuration Editor 配置窗口配置 PC 站的硬件机架,将OPC Server组件和IE General添加到相应的插槽中。然后在STEP 7中组态PC站,打开SIMATIC Manager软件,在硬件组态中,从硬件目录中选择与Station Configuration Editor窗口中配置相对应硬件插入到硬件机架的插槽中,在NetPro网络配置窗口中插入新连接。配置相应参数后,已建好的S7连接就会显示在连接列表中。
三、在OPC客户端中使用XML
OPC客户端的开发使用VB.NET 2005,客户端的开发分为与S7-300实时通信和参数数据存储两个部分。OPC客户端的配置与数据存储全部采用XML文档的形式。为了方便的使用XML技术,因此在.NET的代码段中首先添加了对XML命名空间的引用:Imports System.Xml以下操作XML的代码实现了将网络上的OPC服务器列表存储到OPCServerList.xml文档的功能:在通用代码段中声明一个新的XML文档。Private MyXMLDoc As New XmlDocument()读取程序根目录下用于存储OPC服务器列表的XML文档。MyXMLDoc.Load(Application.StartupPath & "OPCServerList.xml")声明xml文档的头,并将头文件添加到XML中。Dim OPCDeclare As XmlDeclaration
OPCDeclare = MyXMLDoc.CreateXmlDeclaration("1.0", "GB2312", "no")
MyXMLDoc.AppendChild(OPCDeclare)添加XML文档的根元素,即0级结点,一个XML文件必须至少有一个根元素。
Dim OPCServer As XmlElement
OPCServer = MyXMLDoc.CreateElement("OPCServerList")
MyXMLDoc.AppendChild(OPCServerList)
Dim OPCServerList(10) As XmlElement
For i As Integer = LBound(OPCServerList) To UBound(OPCServerList)
OPCServerList(i) = MyXMLDoc.CreateElement("OPCServer")
OPCServerList(i).SetAttribute("ServerName", AllOPCServer(i))
XlServer.AppendChild(XlOPCServer(i))
Next
保存OPC服务器列表。MyXMLDoc.Save(Application.StartupPath & "OPCServerList.xml")
四、连接测试
将PC机与OPC服务器和一个带有以太网通讯模块的S7-300 PLC通过以太网交换机连接到一起。在OPC服务器中建立一个“OpcServer”的PC站。在OPC客户端中,点击“搜索OPC服务器”按钮搜索网络上存在的OPC服务器,之后向活动的OPC服务器中添加组"连铸公用",添加变量"S7:[S7 GY]DB52,REAL4",此时变量列表中的"S7:[S7 GY]DB52,REAL4"这个点的数据每3秒变化一次,说明与S7-300站的通讯成功。打开程序根目录的OPCServerList.xml文档,可以看到如下所示的文档结构:
以上文档内容表明,通过OPC客户端建立XML文档成功,数据点"S7:[S7 GY]DB52,REAL4"的值通过更新XML文档的方式实现实时刷新,同样可以通过读取XML文档的方式实时读取。
五、结语
同采用数据库为存储介质的OPC客户端相比,以XML文档的方式与S7-300实时交换数据传输稳定,可以有效的减少数据延时并且设计简单。适用于为生产管理系统和统一的实时监控系统提供更高效率的生产现场数据的相关项目。
参考文献:
[1]孙伟.XML数据库查询优化及相关技术研究[D].哈尔滨:哈尔滨工程大学,2006
[2]邹光华.基于XML的PLC数据描述[J].计算机工程,2006,32(1)
[作者简介]石慧(1982.04-),女,江西新余人,江西新余新钢特殊钢有限责任公司,助理工程师,从事自动化软件的管理和维护工作。