3、系统软件3.1组态王软件介绍本系统采集控制软件选用中国本土软件厂商北京亚控科技发展有限公司生产的,国内最早的商用组态软件“组态王”。截止到2009年底,“组态王”已在国内装机量有10万套,成功地应用于我国工业领域的各行各业,例如石油、化工、电力、冶金、造纸、橡胶、环保、机械制造等等,在中国使用的监控软件中,组态王拥有国内最多的用户。像国外众多的软件一样,组态王软件也经过了一个发展例程:1995年——组态王V1.01996年——组态王V1.21997年——组态王V1.511998年——组态王V2.01999年——组态王V5.12000年——组态王V5.1forInternet2001年——组态王V6.0、组态王电力专业版6.02002年——组态王V6.022003年——组态王V6.52005年——组态王V6.512006年——组态王V6.522007年——组态王V6.53下面介绍组态王通用强大的功能。3.1.1基本人机界面功能通过本功能完成画面组态。1.快速便捷的应用设计用组态软件构造“监控和数据采集系统”的好处之一就是能大大缩短开发时间,并能保证系统的质量。能快速便捷地进行图形维护和数据采集是此类系统的关键点。组态王正是提供了丰富的快速应用设计的工具。(1)方便实用的工程管理组态王6.53提供方便实用的管理工具——工程管理器。工程管理器是一个独立的可执行文件,用来管理本机的所有组态王工程,可以实现工程的压缩备份,备份恢复,数据词典的导出导入,实现开发和运行系统的切换等。(2).集成的开发环境最新设计的组态王工程浏览器为用户提供了便利的集成开发环境。工程设计者可以在工程浏览器中查看工程的各个部分,可以查看画面、数据库、配置通讯驱动程序、设计报表;可以完成系统的大部分配置。工程浏览器采用树形结构,操作简单方便,容易接受。在工程浏览器中,用户也可以方便地切换到组态王开发环境和运行环境。(3).功能强大、易用的绘图工具目前用简单的示意性图形已经不足以表示工业现场复杂的生产过程,用户普遍要求更加丰富多彩、生动逼真的画面。为满足此要求,组态王提供了丰富的绘图工具,并尽可能使绘图工具的使用方法容易掌握。组态王工具箱中提供的绘图工具包括直线、折线、圆弧、矩形(方形)、圆角矩形、圆形(椭圆)等工具。它们的使用方法与一般绘图软件(如“画笔”)大致相同,设计者不需专门的培训即可使用。(4).灵活的便捷菜单使用组态王的过程中,用户可以随时按下鼠标右键来得到上下文相关的快捷菜单。这种方式比普通的菜单命令更容易使用,将大幅度地提高开发应用系统的效率。(5).支持无限色和过渡色组态王6.53调色板改为支持无限色,支持二十四种过渡色效果,组态王的任一种绘图工具都可以使用无限色,大部分图形都支持过渡色效果,巧妙地利用无限色和过渡色效果,可以使您轻松构造面无限逼真、美观的画面。(6).图形对象丰富的动画效果图形界面上的任何对象或复合对象都可以随着过程参数的改变而变换状态,以产生动画效果。图形对象与过程参数建立变化对应关系的过程称为“动画连接”。图形对象可以按动画连接的要求改变颜色、尺寸、位置、填充百分比等属性。一个图形对象可以同时定义多个连接。把这些动画连接组合起来,应用软件将呈现出令人难以想象的图形动画效果。图形对象可以进行的“动画连接”包括:属性变化:包括线属性、填充属性、文本色位置与大小变化:包括水平和垂直移动、缩放、旋转、填充值输出:包括模拟值输出、离散值输出、字符串输出用户输入:包括模拟值输入、离散值输入、字符串输入滑动杆输入:包括水平滑动杆输入、垂直滑动杆输入特殊:包括闪烁、隐含两种命令语言连接:包括鼠标或等价键按下时、弹起时和按住时可执行的功能强大的命令语言程序提示文本:每个基本图素都可以定义一个提示信息条动画连接的定义非常简单。以旋转连接为例,设计者只需给出旋转的偏转角度和对应的过程参数的数值即可。定义的全过程都反映在一个简单的对话框中。(7).动画连接向导通过可视化图形操作,直接完成移动、旋转的动画连接定义。(8).图形界面“监控和数据采集系统”必须有易于使用的图形界面。当今的应用系统变得越来越复杂,操作者希望系统能提供容易理解而且灵活可靠的操作方式。设计者也希望能有快速而强大的系统开发工具。数千次成功的工程实践证明,组态王正是这样一种能满足多数设计者需要的系统开发工具。(9).大画面和导航图一个复杂的工艺流程有时很难在一个屏幕大小的画面上体现出来,如果分开为多个画面,则首先是不能体现工艺流程的完整性,其次在操作和浏览上造成不便。组态王6.53支持大画面和导航图,设计者可以将画面制作成4个1024X768屏幕大小的画面,通过画面的滚动条或导航图来选择浏览的画面部分。(10).方便快捷的变量替换组态王6.53中,提供了多种变量替换方式,可以在工程的不同范围——如整个工程或画面——中使用不同的替换方式进行变量替换。变量替换方式可以有:变量使用替换、变量名称替换、站点名称替换和外来变量替换。替换的范围可以选择整个工程、画面组、画面或画面组中的图素。(11).画面管理功能面对大量纷繁复杂的画面和变量列表,要找到一个想要使用的画面或变量实属不易。在组态王6.53中,不但提供了对设备列表、和变量列表的排序按照列表项的排序功能,而且还提供了变量的查找功能、画面按照名称、画面描述或画面文件名称的排序功能,画面的查找功能。为方便画面管理,提供了画面分组管理功能。用户可以创建9层,每层256个画面组的组列表。在画面组间可以进行画面的复制、移动和粘贴。2.丰富的可扩充的图形库设计者利用系统提供的图库,可以轻松构造自己需要的图形。(1).大量的标准工业元件组态王系统内部提供了一个全新的庞大的图形库,包含了大量预先建立好的组合图形对象,比如控制按钮、指示表、阀门、电机、泵、管路和其他标准工业元件。图库中的元素称为“图库精灵”,使用“图库精灵”将极大地加快应用系统的构造。(2).面向对象的设计图形库中的对象之所以称为“图库精灵”,因为它不仅仅是一组图形,更包含了丰富的动画连接。一个图形精灵实际上就是一个已定义对象全部条件的小型应用,它包括以下这些内容(对不同的精灵略有不同):组成精灵的图形对象、触发动画效果的过程参数(变量)、动画连接。设计者可以简单地从图库中取出图库精灵并放到自己的应用中,并按照需要的大小缩放它,图库精灵任意缩放也不会失真。图库精灵可作为一个整体来修改属性(包括动画连接),修改的全过程都在一个简单的对话框中完成。(3).扩展图库为满足不同行业用户的需要,图库被设计成可扩充的。设计者可以创建图库精灵,把它们加入到图库中去,或者把不再需要的精灵从图库中删除。设计者还可以创建新的图库。创建一个新的图库精灵非常简单:在画面上绘制精灵的外观,定义所有的动画连接,选择好对象,最后用菜单命令创建精灵,并把它放入图库。另外,组态王6.53提供功能:用户绘制图形,定义好动画连接后,可以生成关于图形的描述程序,通过编制程序,动态控制图形外观。创建一个新的图库也同样简单,只需使用菜单命令并输入新图库的名称。设计者自己定义的图库精灵,其使用方法与系统定义的精灵相同。3.对多媒体的支持组态王6.53进一步完善了对多媒体的支持。充分利用这些特性,用户可以设计出更容易被接受和使用的人机界面。(1).嵌入图片组态王可以嵌入各种各样格式的图片,例如BMP、GIF、JPG、JPEG、PNG等。图形的颜色仅受显示系统的限制(不局限于256色)。图形大小可根据需要任意调整。对于位图,支持透明操作。用户可以指定位图中的任一种颜色透明。经过透明处理后,位图中这种颜色的地方可以显示出背景图像。对于gif格式的图形,支持原有的动画效果,用户可轻松构造符合自己需要的画面效果。使用嵌入的图片后,设计者的画面将更加生动逼真。(2).使用声音组态王的PlaySound函数用于直接播放一个声音文件(.WAV),您可以根据需要在任意时刻调用它。比如作为语音报警。组态王的DisplayMCI函数提供了对多媒体设备的一个通用接口,具有强大的控制能力。您甚至可以用它播放一段电影(VCD)。例如在一工业控制系统中显示来自摄象机的实时视频图象,并且通过组态王控制摄象机云台的运动。下面的例子演示播放CD唱片中第3支歌曲的命令语言。[13]DisplayMCI(PLAYCD,3);停止播放CDDisplayMCI(STOPCD,);播放背景音乐MIDI格式DisplayMCI(PLAYMIDI,c:\midi.mid);注意:播放声音需要有声卡、扬声器等硬件设备的支持。(3).播放动画组态王具有播放动画的控件,用户可以使用此控件来播放AVI动画。用AVI动画制作的画面更加引人注目。(4).支持视频采集设备支持视频采集设备是组态王的一个强大功能。利用视频采集设备可以进一步加强对生产现场的监控。组态王通过视频采集控件,可以把视频头采集来的图象在运行画面上实时播放,组态王6.53可对画面进行拍摄和摄像,以供事后分析,另外,组态王还支持多通道云台设备,并且可以控制云台的动作。4.灵活简便的变量定义和管理设计者在数据库中定义过程参数和其他变量。变量的类型有:内存离散变量内存整数变量内存实数变量内存字符串变量I/O离散变量I/O整数变量I/O实数变量I/O字符串变量结构变量其中,IO变量用于和外部采集元件连接,也用于和其他应用程序交换数据。内存变量主要用来存放中间结果。组态王在系统运行过程中维护一个实时数据库,数据库中存放所有变量的最新数据。通过检测变量值的变化,组态王改变图形对象的状态并跟踪报警的发生。(1).基于结构的变量在许多应用系统中,用户需要定义大量变量,而这些变量往往具有相同属性。为方便用户快速、成批地定义这种变量,组态王6.53新增支持结构变量功能。结构模板可以嵌套,模板下面包含的成员无需再定义,可以直接引用,从而使工程人员可以快速完成画面组织。(2).变量分组管理为了便于用户管理和维护系统的变量,组态王6.53支持变量分组管理。将变量分组,主要作用是免除当系统有大量的变量时,给用户查找、修改变量带来的诸多麻烦。通过变量组,用户可按照不同的需要将变量放到不同的组中,查找、修改时只需在变量组中进行就可以了,大大缩小了查阅的范围,方便了用户。(3).多选变量修改属性当定义很多变量后,修改变量的属性成了问题,如果一个个的重新定义变量的属性,会花去设计者很多宝贵的时间,特别是对于修改相同属性的变量来说,更是一件让人头痛的事情。组态王6.53提供了多选变量修改变量共同属性的功能,设计者可以在数据词典中任选多个变量,选择修改属性快捷菜单,就可以在弹出的一个变量属性对话框里修改选中变量的共同属性。(4).变量统计与刷新工程中共用了多少变量、变量都在哪里被使用了、哪些变量没有被使用都是每一个工程人员关心的问题。组态王提供了变量使用报告和变量更新计数等功能。方便的提供了变量的各种使用信息。5.强大的控制语言利用组态王可以快速构造一个完善的“监控和数据采集系统”,但是每个工程系统又具有特殊性,需要一些细致的调整和扩充的功能。组态王命令语言是集成在组态王系统内部的简便、但功能强大的编程语言。它的作用就在于扩充应用系统的功能,以及对应用系统进行最精确的控制。(1)简便易学的语法组态王命令语言非常简便易学。它的语法是C语言的一个子集,任何了解或不了解C语言的开发者都可以迅速地掌握。组态王命令语言使用的算符包括数学算符和逻辑算符。命令语言内部支持顺序执行、条件分支和循环结构,可以用来开发完整的程序。组态王系统中所有的命令语言程序都在对话框中书写。为方便开发者,在对话框中可以查看算符、所有变量和函数。(2).丰富的内部函数命令语言程序的强大功能是通过函数来实现的。组态王内部函数可以按功能分为:字符串函数:对字符串进行分析、查找、替换、截取以及字符串和数值之间的转换数学函数:三角函数、对数和指数函数等系统函数:文件操作、取系统信息以及控制其他应用程序的函数控件函数:通过此类函数可以改变控件的外观和行为SQL函数:通过此类函数和ODBC