基于组态王的监控系统设计及数据处理_第1页
基于组态王的监控系统设计及数据处理_第2页
基于组态王的监控系统设计及数据处理_第3页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

基于组态王的监控系统设计及数据处理在某污水处理系统监控系统设计中,笔者采用组态王6.5、单片机、ACCESS和E×CEL的合设计了整个监控系统。上位机采用研华的工控PC机,系统监控采用组态王软件;底层数据采集和控制由PLC、单片机、智能仪表完成。由于组态王在数据库功能上比较薄弱,在设计中采用SQL技术将数据保存到MSACCESS2000中,并且通过VBA(VlsuaIBasicForApp“cation)编程实现E×CEL对ACCESS数据库的查询。1系统概述系统中存在多种不同类型的监控变量,其中有一部分需要控制的变量(如压力等),这可以用PLC实现控制;有一部分变量只需要采集(如温度、电流等),这些量可以通过用组态王支持的智能仪表进行采集;还有一部分只需要采集的数据由于所用的采集仪表不能和组态王直接通讯,所以采用单片机AT89C52编写程序实现现场数据采集,并采用通用单片机ASCJI通信协议实现单片机和组态王的数据共享。整个系统结构上采用多级分布式结构,分为2个数据采集站和1个监控总站;按照功能划分本系统则分为设备现场控制、现场数据采集、远程设备监控三部分。底层由PLC、单片机、智能仪表组成.其中,PLC主要完成现场控制设备的控制。单片机和智能仪表完成对现场数据的采集。数据采集站作用是与底层的PLC、单机和智能仪表通讯,获取生产过程的数据,显示工艺流程,历史曲线图,实时曲线图、报警画面、生成数据库等。监控总站与数据采集站通过以太网连接,以获取生产工艺参数,报警记录等数据信息。监控总站可以根据操作人员的选择切换监视各个数据采集系统的运行情况。监控总站计算机还完成网络服务器的功能,将这些生产参数上网传输,实现网络化远程监控。2软件设计整个监控软件以组态王6.5作为编辑平台。整个监控系统具有如下主要功能:1)总体监控:显示采集数据的实时值,组态王通过和底层PLC、智能仪表和单片机通讯,访问相关设备寄存器来获得各设备的运行情况,并通过动画连接、实时曲线等显示出来。2)历史曲线:显示系统运行的时候各个主要变量的历史记录,可以查询以前的历史记录时段,任意时间的记录。3)控制功能:在上位机端可对底层PLC、智能仪表进行控制,实现远程控制。4)数据存储:每隔一定时间将数据保存到ACCESS中,方便以后的查询,所保存的数据还可以通过E×CEL进行查询,进行二次处理。5)报警功能:当有事故或故障发生时,微机通过外接音箱发出语音报警,并在微机屏幕上给出提示;报警画面上可以设置报警的上限、上上限、下限和下下限,当超过了设置的范围时就会有报警,保证了系统的安全运行。6)打印功能:打印各种报表、历史曲线、运行记录、报警数据等。PLC和组态王所支持的智能仪表与组态王之间的通讯不需要编写程序读取设备的内部寄存器的值,相关的驱动程序已经集成在组态王中,只需要在组态王中定义对应的设备,并定义相应的I/O变量即可读取设备内部寄存器的值。而组态王所不支持的仪表则由单片机进行数据采集、转换,并且由单片机通过通用单片机ASCI|通信协议和组态王数据共享。当组态王要读取单片机的数据时,将会向单片机发送基于该协议的读命令包,单片机响应后,将数据发送给组态王,其数据发送格式也是基于通用单片机ASC||通信协议的。3数据处理3.1数据存储组态王虽然可定义数据文件在硬盘中的保存日期(超过该日期自动从硬盘中删除),但如果要保存的时间较长,保存的数据量将非常庞大,不仅造成硬盘的浪费,而且由于组态王的数据文件结构形式复杂,年终时报表处理也需要花费大量的处理时间。因此,在本系统中使用SQL技术,将数据隔一定的时间(如1小时)保存到ACCESS2000中。具体实现步骤如下:首先,建立一个ACCESS数据库,在此命名为“变量数据”,并且建立相应的数据表“温度数据”,然后在控制面板中的ODBC数据源中添加一个基于驱动程序AC—CESSDrIver的数据源,在本系统中取名为“工作站”,并将该数据源连接到刚刚建立的ACCESS数据库“变量数据”。在组态王中用语句SQLConnect(DevicelD,“dsn=工作站;uid=;pwd=”)实现和数据库的连接。接着在组态王中建立对应的记录体,记录体名应和数据表名相同;记录体中的字段名称也需和数据表中的字段名称相同。建好记录体后,可以在组态王命令语言中的“运行时”,使用SQLInsert(DeviceID,“温度数据”,“温度数据”)语句将组态王的数据保存到ACCESS数据库中,当系统退出运行时语句SQLDISCONNECT(DeviceID)断开和数据库的连接。3.2数据检索考虑到组态王提供的报表格式有限,不能满足工程的需要,而使用EXCEL可以方便地进行表格式数据综合管理和分析等二次处理的功能,系统添加了E×CEL对ACCESS数据库进行查询的功能。EXCEL提供了“宏”的概念来进行功能扩展,宏是存储在VisuaIBasIc模块中的一系列命令和函数,当需要执行该项任务时可随时运行宏。其开发环境称之为VBA(VjsuaIBasicForApp¨cation),VBA提供了一套基于VB的面向对象的系统开发工具,很多语法继承于VB语言,可以像编写VB程序那样来编写VBA程序,实现特定的功能。支持VBA二次开发的应用程序都内建许多对象,这些对象都具有方法和属性。VBA通过改变这些对象的属性,调用相应的方法访问这些对象,实现编程目的。ExceI中的VBA,主要在VB中增加了关于ExceI工作簿、工作表、区域、数据透视表等对象的属性、事件和方法。要使用VBA进行数据库查询必须先添加“×Iodbc.xIa”加载宏,该宏中封装了对数据库访问、搜索、查询的功能,该宏在0f—fice安装盘中可以找到,添加方式为“E×CEL一工具一宏一VisualBasic编辑器一工具一引用”。在使用VBA编程时,首先要注意在E×CEL中工作簿定义为“Workb∞k”工作表为“worksheet”区域为“range”单元为“ce¨”。在编程时对单元格进行操作,必须指明单元格所在的工作表以及所在的区域。以下语句示例将Sheetl上A1单元格的值设置为3.1,Worksheets(“Sheetl”).Range(“A1”).VaIue=3.1下面介绍几个重要的数据库检索函数:chan=SQLOpen(“DSN=server,,)建立与数据源的连接,其中server为数据源名。SQLExecQuery(ConnectIon,TeXt)函数在该数据源上执行查询。Connection指定要查询的数据源的唯一连接标识;Text要在数据源上执行的查询内容。Setoutput=Worksheets(“电流”).Range(“A1”)将查询结果显示在表“电流”的A1单元格中。SQLRelr

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论