图形界面什么意思 [MATLAB图形界面开发技术及在控制系统分析中的应用]

发布时间:2020-02-16 来源: 幽默笑话 点击:

  摘要:本文对 MATLAB图形界面开发技术进行了全面的研究,具体论述了图形窗口、菜单、对话框和回调函数的设计方法及其编程技巧, 利用 Matlab软件进行控制系统的分析设计,并通过 GUI界面 (图形用户界面 ) 实现交互式系统设计计算平台。
  关键词:MATLAB;图形界面;时域分析; 频域分析
  中图分类号:TP1 文献标识码:A
  
  1人机界面GUI介绍
  图形用户界面(Graphical User Interfaces ,GUI)是由窗口、光标、按键、菜单、文字说明等对象(Objects)构成的一个用户界面。用户通过一定的方法(如鼠标或键盘)选择、激活这些图形对象,使计算机产生某种动作或变化,比如实现计算、绘图等。用户图形界面(GUI)是程序的图形化界面。一个好的GUI 能够使程序更加容易的使用。它提供用户一个常见的界面,还提供一些控件,例如,按钮,列表框,滑块,菜单等。用户图形界面应当是易理解且操作是可以预告的,所以当用户进行某一项操作,它知道如何去做。例如,当鼠标在一个按钮上发生了单击事件,用户图形界面初始化它的操作,并在按钮的标签上对这个操作进行描述。
  通过在MATLAB的命令行窗口中输入GUIDE指令即可打开GUI编辑窗口(也可以通过选择文件――>新建――>gui进入到GUI编辑窗口),如图1所示:
  
  2平台功能实现
  2.1环境介绍
  该界面主要由标题栏、菜单栏、工具栏、控件栏和绘图窗口组成。
  本平台所要实现的功能主要是:根据用户的要求对给定的系统进行时域分析,根轨迹分析和频域分析,用户可以即时的输入和改变系统的参数,然后通过各种响应曲线来观察和分析系统在不同参数和输入信号的作用下,系统的快速性、稳定性、准确性。基于此,人机界面应包括以下操作项:系统参数输入框,各种响应曲线选项(此系统主要是阶跃响应和脉冲响应),系统稳定性分析,附加零点或附加极点对二阶连续系统脉冲响应的影响,根轨迹曲线,系统频率特性分析。
  2.2模块介绍
  据此可设计四大模块:系统参数输入模块(System Parameters),时域响应模块(Time Domain Response),根轨迹分析模块(Root Locus Analysis),频域响应模块(Frequency Domain Response)。
  其中,系统参数模块由三个静态文本和两个文本编辑框组成,一个文本框用于输入分子,另一个用于输入分母,它的输入是以分子、分母系数降幂次形式实现的。通过此模块就可以确定任一个系统。
  时域响应模块由一个静态文本和两个按钮组成,两个按钮分别实现两种响应曲线的输出,由于在控制系统的分析和设计中,常采用典型响应特性来描述系统的动态性能,所以此模块用一个按钮来实现阶跃响应,另一个来实现脉冲响应,该系统使用直接计算的方法,即直接用有关的函数计算输出相应,此模块用的就是step和impulse函数,通过得到的响应曲线,根据系统的各种性能指标对系统的性能进行分析。
  频域响应模块同样是由一个静态文本和两个按钮组成,一个按钮用于生成系统的伯德图,另一个按钮用于生成系统的奈奎斯特图,伯德图使用两张图来描述系统的频率响应。其中一张图描述系统输出与输入振幅之比与频率的关系,称为幅频图,另一张图描述系统输出与输入相位差与频率的关系,称为相频图,通过综合两种曲线即可获得系统的谐振振幅、谐振频率和相位角等系统指标。
  最后一个模块就是根轨迹模块,该模块是通过对开环系统的零极点分布来求取闭环系统的零极点,并分析闭环系统稳定性和其他性能指标的方法,通过生成的根轨迹曲线,再结合根轨迹分析法的原理即可方便的对系统的稳定性进行分析,比如,根轨迹与虚轴的交点是具有临界稳定性能的闭环极点,因此,可以据此确定系统闭环稳定的边界。用零极点图来分析系统的稳定性也很方便,即开环的极点全部落在s平面的左半平面,系统稳定。系统计算及设计平台界面如图2所示:
  
  通过该图形用户界面,可以很容易的对这个虚拟实验系统的总体结构和要实现的功能有一个非常清晰的认识。
  3实例分析
  3.1时域分析模块
  时域响应模块根据给定的模型生成各种时域响应曲线,以便根据系统的响应曲线来直观的分析系统各方面的性能。本系统主要设置了两种响应曲线即典型的阶跃响应曲线和脉冲响应曲线。因此该模块设计两个Push Button按钮来达到这种功能。
  阶跃响应如图3所示。鼠标置于图形上,右击鼠标,在快捷菜单中选择Grid(网格)功能也可以给图形添加网格线。鼠标置于Characteristics(特性)项,在子菜单中选择Peak Response(响应峰值)、Settling Time(调整时间)、Rise Time(上升时间)和Steady State(稳态值),MATLAB将在响应曲线上标出这些点的位置。将鼠标置于响应曲线的任意位置,单击,MATLAB都将显示与该点对应的时间及响应值。完整的阶跃响应曲线如图所示。从该阶跃响应曲线中我们可以清楚的看到该系统的各种性能指标,如上升时间为0.689(sec);超调量为31.5%;过度过程时间为5.49(sec)。
  
  同理单击Impulse按钮就会生成该系统的脉冲响应曲线,如图4所示:
  
  从该图中我们可以看出,脉冲响应的性能指标有峰值和峰值时间、过渡过程时间等。该系统的峰值为0.0636,峰值时间为7.36;过度过程时间为32.2。
  实现此功能所用的程序指令为:
  clc;
  G=tf(num,den);
  ltiview(‘step’,G);
  G=tf(num,den);
  ltiview(‘impulse’,G);
  3.2频域分析模块
  控制系统的频率响应时控制系统对正弦输入信号的稳态特性。控制系统的频率响应也是反映控制系统瞬态响应的定性指标。虽然频率响应和瞬态响应之间的相互关系是间接的,但可以从系统开环频率响应和所需动态特性,分析和提出改进系统品质的方法。常用的频率响应表示方法是图形表示法。根据系统频率响应幅值、相位和频率之间的不同显示形式,有奈奎斯特图和伯德图等。此本模块设计两个PushButton,通过两个函数Bode,Nyquist来实现。如图5、6所示为系统的Nyquist和Bode图。
  
  实现此功能所用的程序指令为:
  clc;
  G=tf(num,den);
  ltiview(‘nyquist’,G);
  G=tf(num,den);
  ltiview(‘bode’,G);
  3.3根轨迹分析
  根轨迹法是在已知控制系统开环传递函数的零极点分布的基础上,研究某一参数变化时对系统闭环传递函数极点分布的影响。此模块可根据给定的模型生成根轨迹曲线、零极点图,从而能够让用户根据根轨迹的走向分析系统的稳定性和动态性能,并能进一步分析根与轨迹的关系,通过改变零极点来改变轨迹,从而改变系统的性能。据此本模块设计两个PushButton,通过两个函数rlocus,rltool来实现。如图7、8所示分别为系统的根轨迹图和零极点图。
  
  从系统的根轨迹图中,可以读出任意点处的增益Gain、根的位置Pole、阻尼比Damping、超调量Overshoot和相应的频率Frequency。在根轨迹图中,径向线是等衰减比线,同心圆是等自然频率线。
  实现此功能所用的程序指令为:
  G=tf(num,den);
  figure(1)
  rlocus(G);
  sgrid;
  G=tf(num,den);
  ltiview(‘pzmap’,G);
  p=roots(den)
  z=roots(num)
  参考文献
  [1]刘叔军, 盖晓华等. MATLAB控制系统应用与实例[M]. 北京: 机械工业出版社, 2004.
  [2]张静. MATLAB在控制系统中的应用[M]. 北京: 电子工业出版社, 2007.
  [3]胡寿松. 自动控制原理(第四版)[M]. 北京: 科学出版社, 2002.
  [4]黄忠霖. 控制系统MATLAB计算及仿真[M]. 北京: 国防工业出版社, 2001.

相关热词搜索:系统分析 图形界面 控制 MATLAB图形界面开发技术及在控制系统分析中的应用 比matlab好的软件 matlab软件开发

版权所有 蒲公英文摘 www.zhaoqt.net