基于OPC和.NET的数据采集系统探究 下载本文

内容发布更新时间 : 2024/6/16 12:08:39星期一 下面是文章的全部内容请认真阅读。

基于OPC和.NET的数据采集系统探究

李 森

(莱钢集团自动化部 山东 莱芜 271104)

摘要:针对目前设备远程数据采集中出现的不足。对基于OPC和.NET的设备数据采集系统的实现技术进行了探究。分析了基于.NET技术的数据采集系统总体架构,研究了OPC-XML的服务实现机制,通过OPC技术和.NET编程实现了B/S模式下的远程数据访问。 关键词:数据采集;OPC;.NET

Research on Data Acquisition System Based on OPC

and .NET

Li Sen

(Automatization Department of LaiGang Group,ShanDong Province LaiWu City,271104)

Abstract:According to the deficiency appeared in data acquisition,implementation technology of data acquisition system is discussed based on OPC and .NET.The overall scheme of data acquisition system is innroduced and the realization mecha—nism of Web Service for OPC—XML is analyzed.Remote data access is realized through OPC and .NET programmingin the specific applicadonexample. Key words:Data Acquisition;OPC;.NET

1. 前言

随着现代IT技术的不断发展,针对具有高科技含量的复杂设备,开发嵌入式Web数据采集系统,为复杂设备的售后服务等提供支持,已经成为新的复杂设备协同服务模式的要求。通过数据采集系统,数控机床等复杂设备的运行状态信息可以暴露给服务网络中分布在不同地理位置的远程设备制造商、远程专家、技术人员,方便进行设备的状态跟踪、故障诊断等服务。这就使得设备用户能够享受到远端更加高效的敏捷服务,从而有助于减少用户损失,降低服务商的服务成本。OPC全称是Object Linking and Embeding(OLE) for Process Control,它的出现为基于Windows的应用程序和现场过程控制应用建立了桥梁。目前,OPC技术已经得到了工业过程控制领域的广泛接受和应用,许多复杂设备都已经集成OPC服务器。然而,一般基于C/S模式的OPC数据采集系统,缺乏跨平台的通用性,很难应用到其它平台上。本文通过研究OPC和.NET相关开发技术,发现了基于OPC和.NET技术的B/S系统结构可以有效解决C/S结构的不足。由于采用B/S模式,在底层设备端采用OPC-XML技术,在用户端使用.NET编程实现,系统用户可以通过浏览器访问设备数据,实现了系统的跨平台应用。

2. 系统框架

整个系统可分为三层,遵循数据视图层和业务层分离的系统设计原则。上层为数据视图层,用户可以于系统之间进行交互的界面,了解所需现场数据。该系统同时使用新式的Web应用程序,借助Macromedia Flash和XHTML,XML/XSL,WML等一些标识语言和Web Services技术达到与用户更优的交互。数据视图层通过Internet与中间层(Web服务器)进行数据通信,实现了B/S模式下的通信结构。底层采用OPC技术和ODBC技术实现现场数据采集和数据库访问,并通过工业以太网与中间层进行数据的传输。而中间层则响应来自数据视图层的用户请求。同时,中间层与局域网互联,方便局域网内用户的访问。如图1所示。

作者简介: 李森 1982年生 男 山东莱芜 工程学士 毕业于辽宁科技大学 目前以自动化控制为研究方向

用户打印机Web 浏览器 Interner OPC Server Ethernet LAN OPC DA Server DataBase Server

图1 系统总体框架

2.1 数据视图层

数据视图是用户看到并与之交互的界面。对老式的Web应用程序来说,视图就是由HTML

元素组成的界面,在新式的Web应用程序中,HTML依旧在视图中扮演着重要的角色,同时新的技术层出不穷,它们包括Macromedia Flash和象XHTML,XML/XSL,WML等一些标识语言和Web Services使用户更优的与系统进行交互。MVC一个大的好处是它能为你的应用程序处理很多不同的视图。在视图中其实没有真正的处理发生,不管这些数据是联机存储的还是一个雇员列表,作为视图来讲,它只是作为一种输出数据并允许用户操纵的方式。

2.2 中间层(Web服务层)

中间层在该系统中以应用组件形式出现,它逻辑性的为其他应用程序提供数据与服务.各应用程序通过网络协议和规定的一些标准数据格式(HTTP,XML)来访问Web Service,通过Web Service内部执行得到所需结果。Web Service可以执行从简单的请求到复杂商务处理的任何功能。在系统中部署以后,其他Web Service应用程序可以发现并调用它部署的服务。

2.3 数据采集层

随着OPC规范标准的发展,OPC技术在数据采集中得到越来越广泛的应用。由于OPC技术采用了一种从任何设备和数据库等数据源访问数据的方法,因此不用涉及程序和接口问题,即可实现自动化控制中软硬件之间的连接。这样,使用OPC技术实现数据采集更加的容易,我们只需开发设计OPC的客户端程序即可实现数据采集功能。

OPC常用的规范包括OPC规范、OPC XML-DA规范、OPC UA规范。其中OPC规范包括OPC DA数据存取规范、OPC DX数据交换规范、OPC HDA历史数据存取规范、OPC AE报警和事件规范等。OPC服务器本质上是分布在不同计算机上的COM组件,客户端通过COM端口与该组件进行通信,通过创建OPC服务器对象、OPC组对象以及各个接口和成员函数的访问,实现数据的同步和异步通信。

该系统中OPC-XML DA组件相当于客户端程序。OPC服务端集成在现场设备中,可以通过组态软件等方式实现服务器功能。OPC服务器实现与数据采集层的数据交互,以及与OPC-XML DA组件的数据交互。

3. 系统技术支持

系统采用.NET开发中间层服务器,采用C#.NET编写OPC-XML客户端,实现了跨Internet

访问组态软件OPC COM服务器的数据进而访问工业现场的数据。基于OPC-XML技术及.NET平台开发的远程数据访问系统可以跨Internet访问工业现场数据,使工业现场的数据不再局限在以太网内,从而改善了工业现场数据访问的灵活性,增加了访问工业现场数据的距离,为跨Intemet的远程监控、管理系统提供了一种解决方案,对于提高工业现场的管理水平具有重要的意义。本系统涵盖了多种先进技术如OPC-XML技术、.NET Web技术和ODBC技术等以下一一进行介绍。

3.1 OPC-XML技术

OPC-XML将提供一套具有电子商务功能的OPC集成方案。数据请求是请求OPC数据,有同步(请求-回应)与异步(订阅-更新)两种方式。它通过读取请求和订阅请求来实现。数据响应是对数据请求的响应。如果是同步请求,那么请求一次,回答一次,如果是异步请求,则是包括初始值与错误代码,此后,服务器发送包含发生值改变的条目的回应。写请求是指写过程控制值到一个特定条目的请求。如果超过了特定的过期时间,服务器没有收到请求的话,那就什么也写不上。响应就是对写请求的响应,它给出从写控制值到特定条目过程中存在的所有错误。取消数据请求就是取消特定数据请求的要求,如果数据请求是订阅请求,所有后续数据更新都被取消,如果请求不是订阅,则是请求服务器释放分配给这个请求的资源。取消数据响应就是对取消数据请求的响应,它显示出取消动作是否成功。浏览请求就是请求显示有服务器地址空间的特定位置的“枝”和“叶”的列表的请求,返回信息将显示“真实”存在于服务器地址空间的结构。或者能提供提示。请求的内容应包括浏览的“开始点”,空的请求默认是浏览“根”。浏览响应就是对浏览请求的响应,返回值则是位于服务器地址空间特定位置的“枝叶”。

3.2 .NET Web技术

.NET Web技术的ASP.NET 是建立在公共语言运行库上的编程框架,可用于在服务器上生成功能强大的 Web 应用程序。与以前的 Web 开发模型相比,ASP.NET 提供了数个重要的增强的性能。ASP.NET 是在服务器上运行的编译好的公共语言运行库代码,可利用早期绑定、实时编译、本机优化和盒外缓存服务,这相当于在编写代码行之前便显著提高了性能; ASP.NET 框架补充了 Visual Studio 集成开发环境中的大量工具箱和设计器。WYSIWYG 编辑、拖放服务器控件和自动部署只是这个强大的工具所提供功能中的少数几种;由于 ASP.NET 基于公共语言运行库,因此 Web 应用程序开发人员可以利用整个平台的威力和灵活性;.NET 框架类库、消息处理和数据访问解决方案都可从 Web 无缝访问;ASP.NET 也与语言无关,所以可以选择最适合应用程序的语言,或跨多种语言分割应用程序。另外,公共语言运行库的交互性保证在迁移到 ASP.NET 时保留基于 COM 的开发中的现有投资。

3.3 ODBC技术

开放数据库互连(Open Database Connectivity,ODBC)是微软公司开放服务结构

(WOSA,Windows Open Services Architecture)中有关数据库的一个组成部分,它建立了一组规范,并提供了一组对数据库访问的标准API(应用程序编程接口)。这些API利用SQL来完成其大部分任务。ODBC本身也提供了对SQL语言的支持,用户可以直接将SQL语句送给ODBC。

4.结束语

OPC技术规范已经工业标准,现场设备的数据采集按照OPC-XML规范实现了Web网页访问,有利于实现远程和分布式系统的数据交换。随着Internet的快速发展,基于B/S模式的服务架构,通过具有跨平台特性的.NET开发技术,增强了系统的适应性,增强了人机交互的功能,更加符合数据采集客户的要求。 参考文献: