监控组态技术及应用
上QQ阅读APP看书,第一时间看更新

1.3 工控组态软件的组成及特点

1.3.1 工控组态软件的组成

组态软件最突出的特点是实时多任务。例如,数据采集与输出、数据处理与算法实现、图形显示及人机对话、实时数据的存储、检索管理、实时通信等多个任务要在同一台计算机上同时运行。

组态软件的使用者是自动化工程设计人员,组态软件的主要目的是使用户在生成适合自己需要的应用系统时不需要修改软件程序的源代码,因此在设计组态软件时应充分了解自动化工程设计人员的基本需求,并加以总结提炼,重点、集中解决共性问题。下面是组态软件主要解决的问题。

(1)如何与采集、控制设备间进行数据交换。

(2)使来自设备的数据与计算机图形画面上的各元素关联起来。

(3)处理数据报警及系统报警。

(4)存储历史数据并支持历史数据的查询。

(5)各类报表的生成和打印输出。

(6)为使用者提供灵活、多变的组态工具,可以适应不同应用领域的需求。

(7)最终生成的应用系统运行稳定可靠。

(8)具有与第三方程序的接口,方便数据共享。

自动化工程设计技术人员在组态软件中只需填写一些事先设计的表格,再利用图形功能把被控对象(如反应罐、温度计、锅炉、趋势曲线、报表等)形象地画出来,并通过内部数据连接把被控对象的属性与I/O设备的实时数据进行逻辑连接。当由组态软件生成的应用系统投入运行后,与被控对象相连的I/O设备数据发生变化后直接会带动被控对象的属性发生变化。若要对应用系统进行修改,也十分方便,这就是组态软件的方便性。

从以上可以看出,组态软件具有实时多任务、接口开放、使用灵活、功能多样、运行可靠的特点。

无论是美国Wonderware公司推出的世界上第一个工控组态软件Intouch还是现在的各类组态软件,从总体结构上看一般都是由系统开发环境(或称组态环境)与系统运行环境两大部分组成。系统开发环境是自动化工程设计师为实施其控制方案,在组态软件的支持下进行应用程序的系统生成工作所必须依赖的工作环境,通过建立一系列用户数据文件,生成最终的图形目标应用系统,供系统运行环境运行时使用。系统运行环境是将目标应用程序装入计算机内存并投入实时运行时使用的,是直接针对现场操作使用的。系统组态环境和系统运行环境之间的联系纽带是实时数据库,它们三者之间的关系如图1-1所示。

图1-1 系统组态环境、系统运行环境和数据库关系图

组态软件由“组态环境”和“运行环境”两个系统组成。两部分互相独立,又紧密相关。其具体功能和相互联系如图1-2所示。

图1-2 系统组态环境和系统运行环境之间的联系

1.3.2 工控组态软件的特点

在不同的工业控制系统中,工控软件虽然完成的功能不同,但就其结构来说,一般具有如下特点。

(1)实时性。工业控制系统中有些事件的发生具有随机性,要求工控软件能够及时地处理随机事件。

(2)周期性。工控软件在完成系统的初始化工作后,随之进入主程序循环。在执行主程序过程中,如有中断申请,则在执行完相应的中断服务程序后,继续主程序循环。

(3)相关性。工控软件由多个任务模块组成,各模块配合工作,相互关联,相互依存。

(4)人为性。工控软件允许操作人员干预系统的运行,调整系统的工作参数。在理想情况下,工控软件可以正常执行。

1.3.3 组态软件的设计思想

在单任务操作系统环境下(例如MS-DOS),要想让组态软件具有很强的实时性,就必须利用中断技术,这种环境下的开发工具较简单,软件编制难度大,目前运行于MS-DOS环境下的组态软件基本上已退出市场。

在多任务环境下,由于操作系统直接支持多任务,组态软件的性能得到了全面加强。因此组态软件一般都由若干组件构成,而且组件的数量在不断增长,功能不断加强。各组态软件普遍使用了“面向对象”(Object Oriental)的编程和设计方法,使软件更加易于学习和掌握,功能也更强大。

一般的组态软件都由下列组件组成:图形界面系统、实时数据库系统、第三方程序接口组件、控制功能组件。下面将分别讨论每一类组件的设计思想。

(1)在图形画面生成方面,构成现场各过程图形的画面被划分成3类简单的对象:线、填充形状和文本。每个简单的对象均有影响其外观的属性。对象的基本属性包括:线的颜色、填充颜色、高度、宽度、取向、位置移动等。这些属性可以是静态的,也可以是动态的。静态属性在系统投入运行后保持不变,与原来组态时一致。而动态属性则与表达式的值有关,表达式可以是来自I/O设备的变量,也可以是由变量和运算符组成的数学表达式。这种对象的动态属性随表达式值的变化而实时改变。例如,用一个矩形填充体模拟现场的液位,在组态这个矩形的填充属性时,指定代表液位的工位号名称、液位的上下限及对应的填充高度,就完成了液位的图形组态,这个组态过程通常叫作动画连接。

(2)在图形界面上还具备报警通知及确认、报表组态及打印、历史数据查询与显示等功能。各种报警、报表、趋势都是动画连接的对象,其数据源都可以通过组态来指定,这样每个画面的内容就可以根据实际情况由工程技术人员灵活设计,每幅画面中的对象数量均不受限制。在图形界面中,各类组态软件普遍提供了一种类Basic语言的编程工具——脚本语言来扩充其功能。用脚本语言编写的程序段可由事件驱动或周期性地执行,是与对象密切相关的。例如,当按下某个按钮时可指定执行一段脚本语言程序,完成特定的控制功能,也可以指定当某一变量的值变化到关键值以下时,马上启动一段脚本语言程序完成特定的控制功能。

(3)控制功能组件以基于PC的策略编辑/生成组件(也有人称之为软逻辑或软PLC)为代表,是组态软件的主要组成部分。虽然脚本语言程序可以完成一些控制功能,但还是不很直观,对于用惯了梯形图或其他标准编程语言的自动化工程师来说简直是太不方便了,因此目前的多数组态软件都提供了基于IEC1131-3标准的策略编辑/生成控制组件,它也是面向对象的,但不唯一地由事件触发,它像PLC中的梯形图一样按照顺序周期地执行。策略编辑/生成组件在基于PC和现场总线的控制系统中是大有可为的,可以大幅度地降低成本。

(4)实时数据库是更为重要的一个组件,因为PC的处理能力太强了,因此实数据库更加充分地表现出了组态软件的长处。实时数据库可以存储每个工艺点的多年数据,用户既可浏览工厂当前的生产情况,也可回顾过去的生产情况,可以说,实时数据库对于工厂来说就如同飞机上的“黑匣子”。工厂的历史数据是很有价值的,实时数据库具备数据档案管理功能,工厂的实践告诉我们:现在很难知道将来进行分析时哪些数据是必须的,因此,保存所有的数据是防止丢失信息的最好的方法。

(5)通信及第三方程序接口组件是开放系统的标志,是组态软件与第三方程序交互及实现远程数据访问的重要手段之一,它有下面几个主要作用。

① 用于双机冗余系统中,主机与从机间的通信。

② 用于构建分布式HMI/SCADA应用时多机间的通信。

③ 在基于Internet或Browser/Server(B/S)应用中实现通信功能。

通信组件中有的功能是一个独立的程序,可单独使用;有的则被“绑定”在其他程序当中,不被“显式”地使用。