APP下载

基于MATLAB/GUI的控制系统性能评价研究

2015-12-11张涛王印松田靖雨

仪器仪表用户 2015年1期
关键词:时域界面对象

张涛,王印松,田靖雨

(华北电力大学 控制与计算机工程学院,河北 保定 071003)

0 引言

控制系统性能评价的目的是提出一个在线的自动化程序,能够实时监测并评价控制系统的性能。目前的研究方法主要由基于最小方差基准(MVC)、基于用户自定义基准以及基于数据驱动等性能评价方法,然而这些方法的应用都比较繁琐和复杂,非常有必要设计针对控制系统性能评价的仿真软件,便于性能评价方法的实际应用。

MATLAB是当今科研领域最常用的应用软件之一,它具有强大的矩阵运算、符号运算和数据可视化功能,是一种简单易用、可扩展的系统开发环境和平台。图形用户界面GUI(Graphical User Interface)是一种提高程序易用性、交互性的计算机编程方法,用户可以在这样的界面中通过一系列鼠标、键盘操作指挥后台程序实现某些功能[1]。利用MATLAB/GUI设计控制系统性能评价仿真界面,用户只需输入系统的待测参数便可得到控制系统性能评价的指标值,极大地减少了工作人员的工作量,保证控制系统地安全运行。

1 性能评价仿真软件概述

使用控制系统性能评价软件的主要目的就是对控制系统的性能作出定量地分析,评定出它的等级,例如优、良、中、差等,并在运行早期提出控制系统可能存在的问题,它可以实时地指导操控人员对控制系统存在的潜在问题采取各种应对措施[2]。控制系统性能评价软件向用户提供各种类型的数据和报表以便进行分析,必须具备以下几个功能[3]:

1)具有良好的操作和显示界面。

2)能够存储和共享分析数据。

3)提供性能评价报告,具有数据查询功能。

4)能够扩展,满足用户对软件功能不断完善的需要。

图1 图形对象的层次结构Fig.1 Hierarchy of the graphics object

图2 GUI编辑界面Fig. 2 GUI editing interface

5)对控制系统性能定期评价和保存历史性能信息。

6)跟踪控制系统的参数变化及其对控制性能的影响。

7)掌握扰动和不同操作条件对于控制系统性能的影响。

8)具有完整的系统接口,方便数据地导入与导出。

9)能够保障软件地安全和准确运行。

2 软件开发用到的相关技术

图形用户界面GUI是由窗口、光标、按键、菜单、文字说明等对象(Objects)构成的一个用户界面。用户通过一定的方法(如鼠标或键盘)选择、激活这些图形对象,使计算机产生某种动作或变化,如实现计算、绘图等[1]。

2.1 句柄图形对象

MATLAB是一种面向对象的高级计算机语言,其数据可视化技术中的各种图形元素,实际上都是抽象图形对象的实例。MATLAB在创建这些图形对象实例时会返回一个用于标识此对象实例的数值,称为该对象实例的句柄。通过操作句柄,用户就可以实现对相应图形对象实例的各种底层控制和设置。句柄是图形对象的标识代码,标识代码含有图形对象的各种必要的属性信息。因此,这些对象也被称为句柄图形对象[4]。

1)面向对象的思维方法

面向对象是一种程序设计方法,是相对于面向过程而言的。面向对象的优越性在于可以重复使用对象进行编程。相对于过程而言,对象是一个更为稳定的描述单元。由于面向对象有这样一些优越性,它目前是主流的编程技术。

2)句柄图形对象的层次结构

在MATLAB中,由图形命令产生的每一个对象都是图形对象。图形对象按父对象和子对象组成层次结构,如图1所示。

2.2 GUI基本概念

一个好的GUI能够使程序更加容易使用,它提供给用户一个常见的界面,还提供一些空间,如按钮、列表框、滑块、菜单等[4]。

创建MATLAB用户图形界面必须具有以下3类基本元素:

1)组件

在MATLAB GUI中的每一个项目都是一个图形化组件。组件可分为3类:图形化控件(如按钮、编辑框、列表、滚动条等)、静态元素(如窗口和文本字符串)、菜单和坐标系。

2)图形窗口

GUI的每一个组件都必须安排在图像窗口中。在画数据图像时,图像窗口会被自动创建或用函数figure来创建。

3)回应

用户单击某一按钮使相应的MATLAB语句被执行,这些相应的语句被称为回应。

2.3 GUI层次结构

GUIDE是MATLAB图形用户接口开发环境(graphical user interface development environment)的简称,它提供了一系列工具用于建立GUI对象。GUIDE是一个组件布局工具集,能够生成用具所需的组件资源并保存在一个FIG文件;其次,GUIDE还可以生成一个包含GUI初始化和发布控制代码的M文件,该文件为回调函数提供了一个框架。利用GUIDE创建GUI时,样板可以选择以下4种:Blank GUI、GUI with Uicontrols、GUI with Axes and Menu、Modal Question Dialog。一般采用默认的Blank GUI样板,编辑界面如图2所示[4]。

GUIDE可以在布局GUI的同时生成以下两个文件:

1)FIG文件。该文件包括GUI的图像窗口和所有子对象(包括用户控件和坐标轴)的完全描述以及所有对象的属性值。

2)M文件。该文件包括用户用来发布控制界面和回调函数的各种函数。

3 性能评价软件的结构与功能

设计软件界面的目的无非是为用户提供方便,满足用户需求。基于这样的设计概念,结合火电机组负荷控制系统的特点以及传统时域指标和协方差指标性能评价算法,设计的软件界面分别包含以下几大功能块,如图3、图4所示。

图3 基于时域指标的负荷控制系统性能评价模块Fig.3 Load control system based on time-domain index of performance evaluation module

图4 基于时域指标的负荷控制系统性能评价模块Fig.4 Load control system based on time-domain index of performance evaluation module

1)基于时域指标的负荷控制系统性能评价[5,6]:

①运行数据的载入。主要是将过程输出参数主蒸汽压力和机组输出功率的原始数据以曲线的形式显示在坐标轴中。

②动态性能指标的计算及显示。根据输出数据的动态响应曲线计算系统的动态时域性能指标,如峰值时间、衰减比、最大动态误差、平方误差积分等。

③系统性能指标的计算及性能等级的划分。根据系统的动态时域性能指标计算系统的总体性能指标并将控制性能划分为优、良、中、差4个等级并显示。

④历史数据清除模块。将已评价过的数据清除,载入新的数据重新进行评价。

2)基于协方差指标的负荷控制系统性能评价[7-10]:

①基准数据与监测数据的载入。分别将主蒸汽压力和机组输出功率的机组数据和监测数据以曲线的形式显示在坐标轴中。

②性能评价模块。根据基准数据与监测数据计算系统的协方差指标并将样本个数与协方差指标的上限值和下限值显示在界面中。

③历史数据清除模块。将已评价过的历史数据进行清除,载入新的数据重新进行评价。

图5 基于时域指标的负荷控制系统性能评价仿真界面Fig.5 Time domain index of load control system performance evaluation based on simulation interface

图6 基于协方差指标的负荷控制系统性能评价Fig.6 Loading control system performance evaluation based on covariance index

4 软件功能模块的设计与实现

图形用户界面的程序是在图形界面下创建与用户交互的控件元素,用户可以通过操作这些交互控件实现特定的功能,并且可以返回显示在程序界面响应的结果显示区域中。因此,用户只和前台界面下的控件发生交互,而所有运算、绘图等内部操作都封装在内部,终端用户不需要去追究这些复杂过程的代码。

4.1 设计原则

设计好的图形界面需要考虑以下因素:简单性、一致性、习常性、其他因素(比如界面的响应要迅速、连续,对长时间运算的要给出等待的时间提示,并允许用户中断运算)。

4.2 设计步骤

界面的制作包括界面设计和程序实现,一般制作步骤如下[1]:

步骤1 分析界面所要求实现的主要功能,明确设计任务。

步骤2 构思草图,从使用者和功能实现的角度出发,并上机实现。

步骤3 编写对象的相应程序,对实现的功能进行逐项检查。

4.3 界面设计

根据前面讲述的GUI设计原则和一般步骤,设计了火电机组负荷控制系统的性能评价仿真界面。

1)基于时域指标的负荷控制系统性能评价仿真界面。

根据基于传统时域指标的性能评价算法设计性能评价仿真界面。软件界面截图如图5所示。

2)基于协方差指标的负荷控制系统性能评价性能评价仿真界面。

根据基于协方差指标的性能评价算法设计性能评价仿真界面。软件界面截图如图6所示。

5 结束语

本文根据MATLAB/GUI分别设计了基于历史数据基准的协方差性能评价指标和基于时域指标的火力发电机组负荷控制系统性能评价软件仿真界面。用户在界面中载入待评价的运行数据后,系统会在后台运行程序,并将结果显示在界面中对应的文本框中。通过图5、图6所示的性能评价软件界面可以很直观地看出待评价的系统的各项性能评价指标,结合前面所做的理论研究,便可实现火力发电机组负荷控制系统性能评价指标的计算及各种主要参数的计算并实时显示。通过上面的仿真界面,也可方便地向别人提供性能评价的应用程序,并进行时域性能评价方法的演示,具有非常实际的应用价值。

[1]罗华飞.MATLAG GUI设计学习手记[M].北京:北京航空航天大学出版社,2009.

[2]张彩.火电厂热控系统控制性能评价方法的研究[D].河北:华北电力大学,2006.

[3]孙海涛.热工系统控制性能评价软件的开发[D].河北:华北电力大学,2008.

[4]陈垚光.精通MATLAG GUI设计[M].北京:电子工业出版社,2011.

猜你喜欢

时域界面对象
涉税刑事诉讼中的举证责任——以纳税人举证责任为考察对象
判断电压表测量对象有妙招
国企党委前置研究的“四个界面”
一种可用于潮湿界面碳纤维加固配套用底胶的研究
基于复杂网络理论的作战计划时域协同方法研究
攻略对象的心思好难猜
基于FANUC PICTURE的虚拟轴坐标显示界面开发方法研究
山区钢桁梁斜拉桥施工期抖振时域分析
一种用于高速公路探地雷达的新型时域超宽带TEM喇叭天线
电子显微打开材料界面世界之门