基于组态软件嵌入式数据库的设计-本科毕业论文.pdf_第1页
基于组态软件嵌入式数据库的设计-本科毕业论文.pdf_第2页
基于组态软件嵌入式数据库的设计-本科毕业论文.pdf_第3页
基于组态软件嵌入式数据库的设计-本科毕业论文.pdf_第4页
基于组态软件嵌入式数据库的设计-本科毕业论文.pdf_第5页
已阅读5页,还剩53页未读 继续免费阅读

基于组态软件嵌入式数据库的设计-本科毕业论文.pdf.pdf 免费下载

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

文档简介

哈尔滨工程大学本科生毕业论文 基于组态软件嵌入式数据库的设计 院(系) :计算机科学与技术学院 专业:计算机科学与技术 学号:2014061422 学 生 姓 名:王延康 指 导 教 师:李江华 教授 2015 年 4 月 哈尔滨工程大学本科生毕业论文 摘要 组态王软件是近些年深受用户欢迎的国产工控组态软件之一。它为国内 外大多数变频器、板卡、仪器仪表等都编写了相应的驱动程序,使用户可以 方便快捷的使用。并且组态王软件用户界面友好,可利用计算机的软件资源 进行二次开发,因此在国内受到工程人员和开发者的青睐。但是组态王软件 的数据功能比较薄弱,例如存储数据的文件占用磁盘空间大、数据格式复杂 而且不能达到通用的效果。 本文就针对组态王软件的数据功能,进行嵌入式的设计。在组态王软件中完 成实际的案例工程井供水监测系统,由于组态王软件支持动态数据交换 技术,可以将组态王软件的实时数据传输到 visual basic 中,进行数据分析 和监测。组态王软件的 sql 访问管理器可以用来建立数据序列和组态王软件 变量之间的联系,将组态王软件产生的海量数据传输到了 access 数据库中, 完成了它们之间的数据交换,并且利用 visual basic 的数据处理功能进行海 量数据的管理和处理。最后组态王软件调用 visual basic 的可执行文件,完 成了嵌入式数据库的设计。 关键词:组态软件;数据交换;嵌入式数据库 哈尔滨工程大学本科生毕业论文 abstract the kingview software is one of the domestic configuration software which is welcome in the recent years. the kingview software includes the corresponding drivers for the most of frequency changers, the board card, the instrument measuring appliance etc. and it enables the user to uses the software quickly and conveniently. the user interface of kingview software is friendly, and the kingview software can be improved by using computer software resources. therefore, the engineers and developers in our country show great favor to kingview software. but the data function of kingview is a weak point of kingview software, for example the document of storing data takes the floppy disk a large space, the data format is complex, moreover it cannot achieve the general effect. this paper aiming at the data function of kingview software carries on the embedded design. we implement practical case project in the kingview softwaremonitoring system of well water supply. because the kingview software supports dynamic data exchange technology, it can transmit its real-time data to visual basic, then analyze and monitor the data. sqls visiting manager of kingview is applied to establish the relationship between the data sequence and the kingview variable. it transmits the plentiful data which is produced by the kingview to the access database, exchanges the data between them, manages and processes plentiful data by using visual basic data processing function. at last, the embedded database can be complemented by executing the executable program which is generated by visual basic. key words: configuration software; data exchange; embedded database 哈尔滨工程大学本科生毕业论文 目录 第一章 绪论1 1.1 工业组态软件概述.1 1.1.1 工业组态软件的发展过程1 1.1.2 工业组态软件的主要特点3 1.2 课题的设计背景及意义4 1.2.1 国内外研究现状.4 1.2.2 组态王软件数据功能分析.5 1.3 论文结构7 第二章 软件简介及设计概要.8 2.1软件工具简介.8 2.1.1visual basic 6.0 简介.8 2.1.2access 数据库简介.9 2.2组态王软件的介绍.9 2.2.1组态王软件的组成9 2.2.2组态王开发工程项目的一般过程11 2.3需求分析.13 2.3.1案例工程的设计需求分析13 2.3.2visual basic 数据库设计分析.13 2.4嵌入式数据库设计思想.14 2.5本章小结.15 第三章 案例工程的设计.16 3.1井供水监测系统简介.16 3.2变量的定义.18 3.3画面的设计与动画连接.22 3.3.1画面制作22 3.3.2动画连接22 3.4命令语言的编写.25 3.5报警窗口的设计.26 3.6实时趋势曲线的绘制.27 3.7本章小结.28 第四章 vb 程序开发设计. 29 4.1本设计的关键技术.29 哈尔滨工程大学本科生毕业论文 4.1.1组态王与 access 数据库之间的数据传输29 4.1.2dde 动态数据交换技术.31 4.2数据功能的实现.33 4.2.1数据分表功能的实现33 4.2.2数据表格功能的实现36 4.2.3各种图形显示数据38 4.2.4实时数据的设计39 4.3用户功能的设计.44 4.4嵌入式设计.44 4.5在组态王中设计帮助说明.44 4.6运行和调试.46 4.6.1案例工程的测试46 4.6.2数据交换中出现的问题46 4.6.3嵌入式数据库功能的测试47 4.7本章小结.47 结论48 参考文献.50 致谢52 哈尔滨工程大学本科生毕业论文 1 第一章 绪论 1.1 工业组态软件概述 新型的工业组态软件是伴随着计算机技术的蓬勃发展而兴起的。目前, 组态技术在许多行业得到了广泛的应用,并且发展迅速。工业组态技术发展 迅速的主要原因是 pc 机以及组态软件的普遍使用。 工业组态软件主要是采用 计算机语言进行工业工程的设计,例如:它将各种硬件设备(工业 pc 机、控 制板卡、plc、仪器仪表等)有机的组合在一起,从而形成一个能完成实时监 控的系统专业软件。工业组态软件将复杂的工控过程简单化,使得项目开发 周期短,并带动着工控技术的快速发展。 工控组态软件是利用其软件提供的工具,通过简单形象的组态工作,即 可构成所需功能的软件。与以往用计算机语言开发软件相比,组态软件开发 实际生产工程的成功率很高,可靠性较强;并且运用组态软件进行开发的周 期短,且易于更改、扩充和升级。因此,工控组态软件发展迅速,得到了开 发人员和设计者的充分肯定1。 1.1.1 工业组态软件的发展过程 20 世纪 60 年代虽然计算机开始进入工业生产控制,但当时的计算机开 发人员所具备的工控知识并不完备,导致计算机科学与技术在工业控制行业 的发展速度缓慢。 到 70 年代初期, 微处理器的出现使计算机控制得到了快速 的发展。微处理器在数据计算能力、数据处理能力提高的同时,计算机的硬 件成本也大副的下降,并得到了广泛的应用。在这种情况下,一些从事控制 仪表和原来一直从事工业控制的公司陆续推出了新型控制系统。在随后的 20 哈尔滨工程大学本科生毕业论文 2 年中, dcs(distributed control system)及其计算机控制控制技术日趋成熟, 此时的集散型控制系统已具有较丰富的软件,包括计算机系统软件、工业组 态软件、各种控制软件及其它辅助软件。 工业组态软件的发展历史 这一阶段虽然 dcs 技术的发展很迅速, 但是软件本身还是专用和封闭的, 除了在功能上不断的加强外,软件成本却一直没有下降,造成 dcs 在中小型 项目开发上的成本过高,因此,这段时期的 dcs 普及推广也不尽人意。20 世 纪 80 年代中后期, 随着个人计算机的普及和开放系统概念的推广, 基于计算 机的监控系统开始进入市场, 并发展壮大2。 工业组态软件作为个人计算机 监控系统的重要组成部分, 比 pc 机监控的硬件系统具有更为广阔的空间。 主 要原因如下: 原因一:很多 dcs 和 plc 厂商公开了通信协议,加入了“pc 机监控”的队伍。 绝大多数的 plc 和 dcs 都使用 pc 作为操作站。 原因二: 由于 pc 监控大大的降低了系统的成本, 使得市场空间得到了迅速的 扩大,从远程控制、数据采集与计量、数据分析到过程控制,几乎无处不用。 原因三:各类嵌入式系统和系统总线的飞速发展,把工业组态软件推到了自 动化系统的主要位置,工业组态软件在自动化控制领域的地位越来越重要。 原因四:各类智能仪器仪表、控制板卡和现场总线设备可与工业组态软件构 成完整的低成本自动化系统,具有广阔的市场空间。 应用领域 工业组态软件在工业控制领域发挥着重要的作用;同时,它得到了广大 用户和 dcs 厂商的认可,有以下几点原因: 哈尔滨工程大学本科生毕业论文 3 微型计算机操作系统日趋成熟,实时处理能力强大且价格低廉。 微型计算机的软件及开发工具也非常的丰富,使工业组态软件的功能趋于完 善,缩短了开发周期。 所以,新型的工业控制系统正以标准的工业计算机软、硬件平台构成的 集成系统取代传统的封闭式系统,它们具有适应性强、开放性好、易于扩展、 开发周期短等鲜明优点。可以把这样的系统划分为控制层、监控层、管理层 3 个层次结构。 其中,监控层对下连接控制层,对上连接管理层,它不但实现对现场的 实时监测与控制,而且常在自动控制系统中完成上传下达、组态开发的重要 作用。监控层的硬件以工业级的微型计算机和工作站为主,目前更趋向于工 业 pc 机。 1.1.2 工业组态软件的主要特点 组态软件最突出的特点就是实时多任务3。 数据的输入输出, 数据的处 理、显示、存储及管理等多个任务需在同一个系统中同步快速的运行。 组态软件大都由专业软件公司开发,提高了系统的成功率和可靠性,减 轻了工程开发人员的工作量。组态软件通常有以下几方面的特点: 强大的画面显示组态功能 目前,工控组态软件大都运行于 windows 环境下,充分利用 windows 的 图形功能完备,界面美观的特点,提供给用户丰富的作图工具,可随心所欲 的绘制出各种工业画面,并可任意编辑,从而将开发人员从繁重的画面设计 中解放出来,丰富的动画连接方式,如隐含、闪烁、移动等等,使画面生动、 直观。 哈尔滨工程大学本科生毕业论文 4 丰富的功能模块 提供丰富的控制功能库,满足用户的测控要求和现场要求。利用各种功 能模块,完成实时监控、产生报表、显示历史曲线、实时曲线、提供报警等 功能,使系统具有良好的人机界面,易于操作。 强大的数据库 配有实时数据库,可存储备种数据,如模拟型、离散型、字符型等,实 现与外部设备的数据交换。 可编程的命令语言 有可编程的命令语言,使用户可根据自己的需要编写程序,增强图形界 面。 周密的系统安全防范 对不同的操作者, 赋予不同的操作权限, 保证整个系统的安全可靠运行。 仿真功能 提供强大的仿真功能,使系统并行设计,从而缩短开发周期。 1.2 课题的设计背景及意义 1.2.1 国内外研究现状 目前世界上的组态软件有近百种之多。国际上知名的工控组态软件有美 国商业组态软件公司 wonderware 公司的 intouth、intellution 公司的 fix、 ta engineering 公司的 aimax、通用电气公司的 cimplicity、rock-well 公 哈尔滨工程大学本科生毕业论文 5 司的 rsview32、德国西门子公司的 wincc 等。国外的这些组态软件在中国市 场上占有重要地位。他们的共同特点是系统稳定、功能强大、界面友好4。 国内的组态软件起步也比较早,目前实际工业过程中运行可靠的有北京昆仑 通态自动化软件科技有限公司的 mcgs、北京三维力控科技有限公司的力控、 北京亚控科技发展有限公司的组态王以及台湾研华的 geniee 等。 国内不少单 位,如一些高校、研究所、公司正在积极地进行组态软件的开发。国产化的 组态软件具有较强的价格竞争优势,但软件工程组织薄弱,目前主要用于一 些小型的非重要性的项目中。 整体上看,国外组态软件发展较为成熟,但价格十分昂贵,而且普遍无 中文界面,不易推广使用;相比之下,国内组态软件还处于发展阶段,在全 汉化、价格等方面具有较明显的优势,其功能和性能同国外优秀组态软件相 比虽有一定差距,但前景美好。 1.2.2 组态王软件数据功能分析 在工业组态软件中,组态王软件能充分利用 windows 的图形编辑功能, 方便地构成监控画面。以动态显示控制设备的状态,具有报警窗口,实时趋 势曲线, 历史趋势曲线。 并可利用现代计算机丰富的软件资源进行二次开发, 便于生成各种报表以及数据的关系和分析5。 为应用程序开发者提供了十分 方便的软件平台。在工业控制中组态王软件的运用越来越广泛。本文中的案 例工程就是在组态王中完成的。 基本功能简介 本文主要是对组态王软件的数据库部分进行设计,下面简单的总结组态 王 kingview6.5 的数据库部分功能: 哈尔滨工程大学本科生毕业论文 6 组态王 kingview6.5 可以通过 sql 访问管理器将数据序列与组态王变量进行 联系,并将实时数据写入到指定的数据库文件。 可以动态的生成数据表。在组态王系统中,开发者设计一个或者多个数 据表格模板,通过应用表格模板就可以在数据库中创建数据表。 组态王本身提供了大量的数据库函数。这些函数可以通过用户指定的记 录体实现数据的插入、删除、编辑、查询等功能。 组态王支持多种数据源。 通过操作系统下的 odbc 访问接口, 可以实现多 种数据源的访问,如本文将要提到的 access 数据库,还有例如 sql server 和 oracle 等,以适应不同的需求环境。 组态王 kingview6.5 还提供历史趋势曲线 odbc 显示功能。 组态王软件的 “工具箱” 中有历史趋势曲线控件, 它可以通过 odbc 数据源将其它数据库文 件中的数据显示在组态王的历史趋势曲线画面中。 组态王 kingview6.5 提供报警记录的数据库输出功能。组态王根据监测 数据会产生报警事件, 而组态王可以通过 odbc 将报警事件记录到开放数据库 中,信息分别储存在 alarm、operate、enter 和 station 四个数据表中,使 用者必需按组态王中的报警配置选项来定义表结构,这样报警事件就自动的 写入相应的数据表中,方便了用户的使用。 但是组态王 kingview6.5 仍然存在薄弱环节。 例如存储时间要求较长时, 数据占用的磁盘空间就会很大;数据库格式复杂且不通用;数据统计与查询 功能也较弱。因此并不能很好的满足用户的实际要求。 功能扩充 visual basic 作为 basic 语言的一种扩充,它因可视化强、简单易学, 哈尔滨工程大学本科生毕业论文 7 受到广大用户的喜欢。visual basic 在数据库的应用程序开发领域中,提供 了包含数据管理器、数据控件等功能非常强大的工具,可以方便的协助开发 人员轻松地创建、链接数据库文件,并访问其中的数据。本文通过 visual basic 设计组态王的数据库功能,有很多优点:如人机界面友好、操作简单、 并可以实现海量数据库的在线管理等。 1.3 论文结构 本论文共分 4 章。 第 1 章为绪论。介绍了选题背景依据,工业组态软件的发展及国内外的研究 现状,并分析了国产组态软件组态王软件在数据功能的不足,说明了本 设计的意义。 第 2 章介绍了系统开发工具,并简述了组态王软件的组成和使用方法,针对 本文做了需求分析及总体的设计思想。 第 3 章详细介绍案例工程的设计,主要从变量定义、画面设计、动画连接、 命令语言编程、实时曲线绘制等几个方面进行介绍。 第 4 章是本文的重点,主要介绍了本文采用的关键技术,并在此基础上完善 了组态王软件的数据库部分功能。 最后对全文进行了总结,分析了设计的不足之处,同时提出了一种设计组态 软件功能模块的方法。 哈尔滨工程大学本科生毕业论文 8 第二章 软件简介及设计概要 2.1软件工具简介 2.1.1visual basic 6.0 简介 visual basic 6.0 编程是面向对象的编程,这意味着利用 visual basic 6.0 编程,只需跟对象打交道即可。需要完成的工作就是创建对象,设置对 象的属性,捕捉来自对象的事件,处理发生的事件,而不必关心对象是如何 产生和如何工作6。 例如, 在窗体上显示一个按钮, 只需创建一个按钮对象, 不必使用一长串的语句来绘制按钮,这样就大大缩短了程序开发的周期。本 设计之所以使用 visual basic 6.0 开发,主要有以下两点原因: 访问数据库 visual basic 系统具有很强的数据库管理功能。利用系统提供的控件, 用户可以直接连接 microsoft access 数据库,并提供了强大的数据存储和检 索功能。同时 visual basic 提供开放式数据链接 odbc(open database connection)功能, 可以通过直接访问或建立链接的方式使用并操作后台大型 数据库。 动态数据交换(dde)技术 利用动态数据交换(dynamic data exchange)技术,可以把一种应用程序 的数据动态地链接到另一种应用程序中去,使两种完全不同的应用程序可以 交换数据进行通信, 在windows环境下为多个应用程序之间以client/server 方式建立了一条动态数据交换通道。 哈尔滨工程大学本科生毕业论文 9 2.1.2access 数据库简介 access 数据库是 microsoft 公司在 office 中推出的数据库编辑程序。 采用 access 作为系统海量数据存储有以下几方面原因7: access 的广泛应用性 access 数据库由 microsoft 公司推出,microsoft 公司的产品,比如: windows 操作系统、 office 办公软件集成等等, 在全球范围内被广泛的运用; 在国内大部分 pc 机中都是以 windows 作为操作平台,且都安装着 office 应 用软件。 access 的实用性 本设计主要是利用数据库存储工业组态软件的海量数据,故数据的结构 比较简单,采用 access 数据库进行数据存储简单、方便。 access 的通用性 access 数据库的数据源驱动程序就在 windows 操作系统中自带,不用去 寻找数据源驱动程序,就可在 windows 操作系统中实现数据调用。 2.2组态王软件的介绍 我国的组态软件的开发虽起步较晚,但经过科技工作者的努力,在许多 方面现己赶上或接近国外的先进工控组态软件的水平。其中,由北京亚控科 技发展有限公司开发的“组态王”是优秀国产组态软件的代表8。 哈尔滨工程大学本科生毕业论文 10 2.2.1组态王软件的组成 组态王软件可以在 windows 98、windows nt 和 windows 2000 操作系统 下运行。目前常用的版本是组态王 kingview6.5 版。 组态王软件包由工程管理器、 工程浏览器、 画面运行系统三大部分组成。 其中,工程管理器用于新建工程以及工程管理等。工程浏览器内嵌画面开发 系统, 即组态王开发系统。 工程浏览器和画面运行系统是各自独立的 windows 应用程序,均可单独使用;两者又相互依存,在工程浏览器的画面开发系统 中设计开发的画面应用程序必须在画面运行环境中才能运行。 工程管理器主要用于组态王工程的管理,可以新建工程、搜索工程、工 程的备份、工程恢复、变量的导入导出、定义工程的属性等。 工程浏览器是组态王软件包的核心部分,它具有管理开发系统的功能, 它将画面制作系统中已设计的图形画面、命令语言、设备管理、变量管理、 配方管理、数据库访问配置等工程资源进行集中管理,并在一个窗口中以树 形结构排列,窗口界面与 windows 操作系统中的资源管理器的非常相似。组 态王工程浏览器的结构如图 2.1 所示。 哈尔滨工程大学本科生毕业论文 11 图 2.1组态王工程浏览器的结构图 工程浏览器内嵌画面开发系统,在工程浏览器界面进入画面开发系统的 操作方法有以下三种: 方法一:在工程浏览器的右上方图标快捷菜单中单击“make”图标。 方法二:在工程浏览器窗口中选择“文件”下的“画面” ,则在工程浏览器显 示出“新建”图标,双击“新建”图标就可以进入组态王开发系统。 方法三:在工程浏览器的空白区,点击右键并选择“切换到 make”也可以进 入到组态王开发系统。 画面运行系统是组态王软件的实时运行环境, 它用于显示画面开发系统中 建立的动画图形画面,并负责数据库与 i/o 服务程序的数据交换,将各种数 据采集到组态王系统中,并把数据的变化用动画的方式形象地展示给用户, 同时组态王自身可以完成报警窗口、历史数据记录、实时和历史趋势曲线等 监视功能,并可生成历史数据库文件。 2.2.2组态王开发工程项目的一般过程 下面简单的介绍一下组态王 kingview6.5 进行实际项目开发过程时必要 的几个步骤9: 步骤一:启动组态王工程管理器,单击“新建”按钮,在随后出现的“新建 工程向导”中单击“下一步”按钮,输入工程项目所在的目录,再单击“下 一步”按钮,输入工程名称和工程描述(可以省略) ,再单击“完成”按钮, 此时在工程管理器中显示出所建的工程项目名。 哈尔滨工程大学本科生毕业论文 12 步骤二:双击新建立的工程项目或者单击菜单“make” ,都可以进入工程浏览 器。 步骤三:进行设备配置。在组态王工程浏览器的工程目录显示区,单击“设 备”大纲项下相应设备成员名,然后在工程浏览器目录显示区双击“新建” 图标,出现“设备配置向导”窗口,在此窗口中完成与组态王软件进行数据 通信的设备的配置工作。 步骤四:构造数据库。数据库是组态软件的核心部分。建立在数据库中的各 种变量负责与各种外部设备进行数据交换,以及完成相关数据的存储。在工 程浏览器中单击“数据库”大纲项下的“数据词典”成员名,然后在右边的 目录内容显示区中双击“新建”图标,则弹出“定义变量”对话框,在此对 话框中输入变量名,选择变量类型、数据范围、连接设备等,完成配置后, 单击“确定”按钮就完成了一个变量的配置。 步骤五: 启动画面开发系统。 在组态王工程浏览器的目录显示区中, 单击 “文 件”大纲下的“画面”成员名,再在工程浏览器目录内容显示区中单击右键, 在弹出菜单中单击“新建画面”菜单,此时程序会切换到组态王开发系统, 并且弹出“新画面”对话框,在此对话框中输入要建立的画面的名称以及画 面的大小,也可以选择背景颜色等,然后单击“确定”按钮,则出现了一个 空白的新画面。用户可以在这个画面上利用各种绘图工具进行显示画面的设 计开发。 步骤六:定义动画连接。动画连接建立了数据库中变量与图形画面中的图素 之间的关系。只有建立了动画连接,才能将数据库中的变量信息反映到图形 画面中来。在建立好的画面上双击图形对象,则会弹出“动画连接”对话框, 用户可以对一个图形对象同时定义若干个动画连接,构成比较复杂的显示效 果。 哈尔滨工程大学本科生毕业论文 13 步骤七:运行与调试。启动组态王运行系统,通过对画面的观察和操作验证 设计是否正确与完善,根据出现的问题可以重新进行上述的步骤,直到系统 的功能正常。 2.3需求分析 2.3.1案例工程的设计需求分析 井供水监测系统可应用于实际的工程生产中,在本系统中,需要实现井 供水的实际输入与输出。并且监测实时数据蓄水池水位、池水温度、池 中压力和池底压力。根据系统的具体要求,可实现蓄水池水位的自动和手动 控制。 在水位数据监测时,需要制作报警系统,在运行时,如果蓄水池水位出 现不符合实际要求的情况,组态王就可以将蓄水池水位数据变量以报警的方 式显示给用户。 数据采集通过组态王 kingview6.5 的设备来完成,通过亚控公司提供的 仿真 plc 设备连接到 com2 串口,可实现数据采集监测;然后利用组态王 kingview6.5 对数据进行实时记录和分析,并建立实时曲线,实时趋势曲线 用于实时显示数据的变化情况。在画面运行时,实时趋势曲线对象由系统自 动更新,因此,使用者就可以看到实时数据的变化情况。在建立了文本输出 的同时, 它设定为模拟值输出, 这样就将实时数据以数字的形式呈现给用户。 2.3.2visual basic 数据库设计分析 在本文中,visual basic 主要完成数据库的设计与管理。首先,实现对 海量数据的在线操作:组态王可以将数据存储在特定格式的文件中,但是它 不利于用户的查看、管理,并且占用的磁盘空间很大,在设计中就要将组态 哈尔滨工程大学本科生毕业论文 14 王的数据存储在通用的数据库中,例如:access 数据库,这部分就要通过组 态王的 sql 访问管理器来完成, 将海量的多种数据正确的传到 access 数据库 中。然后通过 visual basic 进行 access 数据库文件的管理,以多种图形和 数据表格的形式传递给使用者。其次,实现实时数据的 dde 交换:通过 dde 机制,可以实现组态王与 visual basic 之间进行数据交换,来完善组态王的 数据功能,从而建立完善的数据库系统,更能体现它的实用性。 2.4嵌入式数据库设计思想 本文结合组态王软件以及 vb 的数据库开发功能, 对实际案例工程进行设 计,并且能够实现通用性,即通过简单的配置,不同的用户均可使用本软件 来完善不同工程的数据库部分的功能,总的设计如图 2.3 所示。 图 2.2系统功能结构图 哈尔滨工程大学本科生毕业论文 15 通过用户配置,组态王中的数据可以传输至 vb 和 access 数据库中,在 利用 vb 强大的数据功能对各种数据进行管理,另外,vb 还可以增加用户管 理功能, 最后由组态王软件调用 vb 的可执行文件。 这样就可以完善组态王软 件的数据库部分功能,同时与案例工程形成了一个完整的系统。 2.5本章小结 本章主要简述系统开发工具vb6.0、access 数据库及组态王 kingview6.5, 并给出利用组态王软件进行工程项目开发设计的一般步骤。 对 系统设计进行了需求分析,简述了嵌入式数据库的设计思想,这为后面的实 际案例工程的建立以及数据库功能的开发做了良好的铺垫。 哈尔滨工程大学本科生毕业论文 16 第三章 案例工程的设计 3.1井供水监测系统简介 井供水监测系统在实际的工业生产中有着重要的意义,它可以同时监测 系统的实时变量,并且可以以自动或者手动的方式来进行对系统的控制,使 得用户能够根据实际要求更方便的操作。 首先,图 3.1 所示为本文所述的井供水监测系统的总体设计图。 图 3.1井供水监测系统示意图 哈尔滨工程大学本科生毕业论文 17 蓄水池通过一台水泵从水源抽水,通过相应进水管道为蓄水池供水。蓄 水池的出水管道连接到多个用户,为用户提供水源。为了保持系统的相对稳 定,要求同时监测系统的 4 个实时数据变量,即蓄水池水位、池水温度、池 中压力、池底压力。其中蓄水池水位要设定两个报警限,分别是上限和下限。 1、井供水监测系统的控制要求 在自动控制时 如果蓄水池水位低于下限,则水泵工作,为蓄水池供水。 当蓄水池水位上升到上限,则水泵关闭,蓄水池水位得到下降。 蓄水池水位从上限到下限之前,水泵不会工作(除非改用手动方式) 。 在手动控制时 通过人为的控制电动调节阀,可以使水泵在瞬间工作或者关闭,但是在出现 蓄水池水位报警时,它仍然按照自动方式进行控制。 本工程的主要硬件组成 水泵 蓄水池中的水是靠水泵从水源抽水而来的。水泵采用单相泵,正常使用电压 为 220v,电源电压不得低于 10%,以免烧毁电机。 蓄水池 蓄水池是储存水的容器。这里假定水池高 102cm,上限 100cm,下限 20cm。 液位变送器 哈尔滨工程大学本科生毕业论文 18 为了监测蓄水池中的水位, 必须依靠一定的检测设备对蓄水池水位进行检测, 液位变送器就完成了此项功能。 电动调节阀 通过电动调节阀的开关状态,可以将水泵供水改为自动或者手动方式,实现 了可以人为的改变系统的工作方式。 潜水泵 供水潜水泵可以将蓄水池中的水向用户输出。 当然,系统还需要其它的设备进行配合使用,如:管道、套筒、压力变送器 等。在它们之间互相配合的工作,使得系统可以正确的运行。 3.2变量的定义 在组态王运行时,工业现场的生产状况要以动画的形式反映在屏幕上, 同时工程人员在计算机前发布的指令也要迅速送达生产现场,数据词典(数 据库)是联系计算机和现场、上位机和下位机的桥梁。组态王的变量包括用 户定义变量和系统变量两大类。变量定义在工程浏览器的数据词典中运行, 定义时要指定变量名和变量类型10。 用户定义的变量有内存离散、内存实型、内存长整数、内存字符串、i/o 离散、i/o 实型、i/o 长整数、i/o 字符串八种类型,这 8 种基本类型的变量 是通过“变量属性”对话框定义的,同时在“变量属性”对话框的属性页中 设置它们的部分属性。 系统变量包括报警窗口变量、历史趋势曲线变量、系统预设变量三种, 其中报警窗口变量和历史趋势曲线变量分别是在画面上绘制报警窗口和历史 哈尔滨工程大学本科生毕业论文 19 趋势曲线时自动定义的,设置它们的属性是在画面上的报警窗口或历史趋势 曲线完成,报警组变量是在“报警组定义”对话框中定义的。时间变量是系 统已定义过的,工程人员可以直接引用。 为了满足工控软件的需求,还必须设置变量的属性。 “变量属性”对话框 的“基本属性”页中的各项用来定义变量的基本特征,包括:变量名、变量 的类型、描述、变量灵敏度、变量的取值范围,以及 i/o 变量的连接设备信 息等。 在井供水监测系统工程中,需要采用变量来存放外部设备传送进来的检 测信号,这些变量需要与外部设备进行数据交换,首先建立工程,然后进行 设备配置,再建立相应的变量。 建立工程 在“组态王工程管理器”窗口中单击“新建”按钮,出现“新建工程向 导之一”窗口。单击下一步“按钮” ,在出现的“新建工程向导之二”窗口中 输入工程的目录,单击“下一步”按钮,在出现的“新建工程向导之三”窗 口中输入工程名称为“井供水监测系统” ,最后单击“完成”按钮并且在出现 的“是否将新建的工程设置为组态王当前工程”对话框中单击“是”按钮, 完成了工程的建立,组态王在硬盘上建立了“井供水监测系统” ,以后所进行 的组态工作的所有数据都将存储在这个文件夹中。 配置设备 在组态王工程管理器中,根据已建立的“井供水监测系统”工程,启动 组态王的 “工程浏览器” , 设置工程目录显示区中 “设备” 大纲项下面的 “com2” 成员名,然后在出现的窗口中输入串行通信口 com2 的通信参数:波特率为 9600b/s,偶校验,8 位数据位,1 位停止位,rs232 通信方式,然后单击“确 哈尔滨工程大学本科生毕业论文 20 定”按钮,完成了对 com2 的通信参数配置,保证 com2 同 plc 的通信能够正 常的运行。 由于工程是在模拟状态下完成的,所以要用到仿真 plc,组态王提供的 仿真 plc 设备, 可以模拟实际设备向程序提供数据, 以供用户调试。 仿真 plc 提供五种类型的内部寄存器变量 increa、decrea、radom、static、commerr, increa、decrea、radom、static 寄存器变量的编号从 1-1000,变量的数据 类型均为整型(即 int)。 然后在目录显示区中,双击“新建”图标,在出现的“设备配置向导” 中单击“plc”-“亚控”-“仿真 plc”-“串行” 。然后,在下一个窗口 中给这个设备取一个名字“plc” ,为设备指定所连接的串口“com2” ,同时还 要为设备指定一个地址“1” ,最后出现“信息总结”窗口,其中设置后的界 面如图 3.2 所示。检查无误后单击“完成”按钮,完成设备的配置。 图 3.2仿真设备配置图 定义变量 哈尔滨工程大学本科生毕业论文 21 要在组态王软件中知道外部设备的状态,以及能够输出控制信号,这就 要建立相应的变量,以便组态王能够与 plc 进行数据交换。 定义蓄水池水位变量 单击“数据库”大纲项下面的“数据词典”成员名,然后在目录内容显 示区中双击“新建”图标,出现“变量定义”窗口。在“基本属性”页中输 入变量名 “蓄水池水位” , 变量类型设置为 “i/o 实数” , 连接设备设置为 “plc” , 寄存器设置为“increa102” ,数据类型设置为“short” ,读写属性设置为“读 写” ,采集频率设置为 1000ms,最大值和原始最大值设定为 102,其余值为默 认值就可以,并且设置为“允许 dde 访问” 。 然后,单击“报警定义”选项卡,设定高报警限为 90,低报警限为 10。 在单击“记录和安全区”选项卡,单击选中“数据变化记录”单选按钮,并 设置变化灵敏为 0.01,也就是蓄水池每变化 0.01cm 进行一次历史数据记录。 最后单击“确定”按钮,完成了“蓄水池水位”的建立。 定义水池温度变量 同样在目录内容显示区中双击“新建”图标,出现“变量定义”窗口。 在“基本属性”页中输入变量名“水池温度” ,变量类型设置为“i/o 实数” , 连接设备设置为 “plc” , 寄存器设置为 “increa33” , 数据类型设置为 “short” , 读写属性设置为“只读” ,采集频率设置为 1000ms,最大值和原始最大值设 定为 33, 初始值为 15, 其余值为默认值就可以, 并且设置为 “允许 dde 访问” 。 其余的设置均可设置为默认情况,另外两个变量“池中压力”和“池底 压力”的设置与“池水温度”相似,这里就不详细的说明了。 (3) “开关”与“开关 1”变量的设置 哈尔滨工程大学本科生毕业论文 22 为了使用户可以方便灵活的控制运行系统,在这里设定这两个变量来进 行控制,在目录内容显示区中双击“新建”图标,出现“变量定义”窗口。 在“基本属性”页中输入变量名“开关” ,变量类型设置为“内存离散” ,初 始值状态为“关” ;同样的“开关 1”也是如此设置。 (4) “水流”变量的建立 为了在运行画面中给用户一个逼真的流水动画,需要建立变量,在动画连接 时引用,来产生动态的效果,可设置为“内存整形” ,最大值设定为 10,其 余的设置为默认值。 3.3画面的设计与动画连接 3.3.1画面制作 后在目录显示区中双击“新建”图标,出现“新画面”对话框。在“画 面名称”旁边的编辑框中输入“供水系统流程图” ,具体的画面如上面的图 3.1 进行设计。 其余部分画面的设计比较简单,这里不作为本文的重点内容讲述。 3.3.2动画连接 动画连接就是建立画面的图素与数据库变量的对应关系。 在建立动画连 接后, 根据数据库中变量的变化图形对象可以按照动画连接的要求进行变化。 组态王的动画连接具有以下几个特点: 特点一:一个图形对象可以同时定义多个动画连接,从而可以实现复杂的动 画功能。 哈尔滨工程大学本科生毕业论文 23 特点二:建立动画连接的过程非常简单,不需要编写任何程序即可完成。 特点三:动画过程的引发不限于变量,也可以是由变量组成的连接方式。 特点四:为每一个有动画连接的图形对象设置了访问权限,以增强系统安全 性。 创建动画制作连接的基本步骤如下: 步骤一:创建或者选择连接对象(线、填充图形、文本、按钮或者符号) 。 步骤二:双击图形对象,弹出“动画连接”对话框。 步骤三:选择对象想要进行的连接。 步骤四:为连接定义输入详细资料。 当用户创建动画制作连接时,在连接生效之前,使用的标记名必须在数据库 中定义。如果未被定义,当“确定”按钮按下时,将要求用户立刻定义它。 在已绘制出的画面还不能真实的反映出系统运行时的情况,必须把各个图素 与数据库中的相应变量建立联系,才能真正的使画面生动,给用户一个直观 的视觉。 各种按钮的功能实现 双击按钮,在“按下时”或者“弹起时”输入命令语言: “开始”按钮的命令 语言为 “本站点开关=1;” ,“停止” 按钮的命令语言为 “本站点开关=0;” , “实时曲线”按钮的命令语言为“showpicture(“实时趋势曲线“); ” , “报警” 按钮的命令语言为“showpicture(“报警和事件窗口“);” , “画面说明”按钮 的命令语言为“showpicture(“供水系统流程图 1“);” , “退出”按钮的命令 哈尔滨工程大学本科生毕业论文 24 语言为“closepicture(“供水系统流程图“);” 。通过这些命令语言的设计, 在系统运行时,按钮的功能就可以体现出来。 电动调节阀的动画连接设计 双击“电动调节阀” ,选择变量名为“本站点开关 1” , “关闭时颜色”选 择为红色, “打开时颜色”选择为绿色,完成了电动调节阀的画面设计,在运 行状态下,通过电动调节阀就可以完成“手动”控制水泵的工作状态。 蓄水池的动画显示 蓄水池在运行时应该体现出“蓄水池水位”的变化情况,在其“动画连接” 属性页中选择“缩放”功能,在“缩放连接”中设定表达式为“本站点 蓄水池水位” 。 文本显示的动画设计 上面设计的 “文本显示” 是为了展示给用户一个数据实时变化的现场, 在 “文 本显示”的动画连接对话框中利用“模拟值输出”进行选择变量。其中的一 个连接如图 3.3 所示。其余的文本动画连接与此例相似,完成的“文本显示” 在运行时就可以将实时数据显示在画面中。 主画面的设计虽然已经设计完成,但是它还不能实现系统的功能,这就需要 命令语言来驱动应用程序。 哈尔滨工程大学本科生毕业论文 25 图 3.3模拟值输出连接图 3.4命令语言的编写 组态王软件能够让用户定义命令语言来驱动应用程序。命令语言语法类 似于 c 语言。命令语言包括应用程序命令语言、热键命令语言、事件命令语 言、数据改变命令语言、自定义函数命令语言和画面命令语言等。命令语言 具备完备的词法、语法查错功能和丰富的运算符、数学函数、字符串函数、 控件函数、sql 函数和系统函数。 应用程序的初始化 应用程序命令语言是在程序启动时、程序关闭时或者在程序运行期间执 行的命令语言。如果选择在程序运行期间执行命令语言,还可以指定程序运 行的周期。它通常用于系统的初始化、系统退出时的处理以及常规程序的处 理。选择应用程序命令语言的执行命令、关键字、函数、变量等,只需单击 相应的按钮即可。 在本工程中,需要对蓄水池水位、池水温度、池中压力、池底压力四个 变量进行控制和监测。由于本工程是模拟计算机工业现场,所以必须设置变 量的初始值和运行变化值,具体要求如下: 如果水位低于下限,则水泵工作,蓄水池水位增高。 哈尔滨工程大学本科生毕业论文 26 如果水位上升到上限,则水泵关闭。 水泵从上限下降到下限之前,水泵不工作。 压力变量与水位成正比关系。 池水温度变量有一定的范围限制,如池水温度要大于 15 度而不大于 33 度。 应用程序运行方法 画面命令语言是在画面显示时执行、隐含时执行或在画面存在期间时执 行的命令语言。在本案例工程中,要实现手动的控制实现水位的升降,必须 将手动的控制变量(开关 1)与当前的蓄水池水位有机的结合在一起,实现 蓄水池水位的正确运行: 手动工作开始时,在蓄水池水位没有达到上限时,蓄水池水位上升,即 水泵工作;当蓄水池水位达到上限时,系统设置手动控制变量(开关 1)为 关闭状态。 手动工作关闭时,在蓄水池水位没有达到下限时,蓄水池水位下降,即水 泵不工作;当蓄水池水位达到下限时,系统设置手动控制变量(开关 1)为 开启状态。 通过动画连接和命令程序的编写, 已经完成了主画面的基本功能的实现, 为了完善工程的功能,还要设计报警窗口和实时趋势曲线。 3.5报警窗口的设计 运行报警事件是控制软件必不可少的功能,当变量是数值或数值变化异 常时将产生报警,以便操作者采取必要的措施。组态王软件能够自动对“变 哈尔滨工程大学本科生毕业论文 27 量定义”有效的数据变量进行监视,如果发生报警事件,就将这些事件存于 内存中的报警事件缓冲器中,其中,报警窗口的报警和报警事件都是取自报 警缓冲区。 组态王中的报警和事件主要包括变量报警事件、操作事件、用户登陆事 件和工作站事件。组态王系统“变量属性”对话框中的“报警配置”选项卡 进行变量报警条件的定义。报警定义后,如果在运行阶段,变量的数值或变 化情况满足已定义的报警条件或从报警条件恢复正常应答时均可以产生报警 事件(报警发生、报警恢复、报警应答) 。同时对每一个变量的报警可以规定 报警的优先级和所在的报警组,分别用于描述报警的严重程度和报警分类信 息。报警信息可以在报警窗口中显示。 在本工程中需要对“蓄水池水位”进行报警配置,在“通用属性”页面 中将“报警窗口名”设置为“alarm” ,在“条件属性”页面中将“报警服务 器”设置为“本站点” ,选中“报警信息资源站点”中的“本站点”多选框, 并且将“报警组”设置为“rootnode” ,完成了工程的报警窗口设置。 当“蓄水池水位”的数值出现高于 100cm 或者低于 20cm 时,均会在报警 窗口中出现相应的信息。 3.6实时趋势曲线的绘制 实时趋势曲线用于实时显示数

温馨提示

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

评论

0/150

提交评论