教学文库网 - 权威文档分享云平台
您的当前位置:首页 > 文库大全 > 教育文库 >

MATLAB的GUI设计在时域分析中的应用

来源:网络收集 时间:2026-09-10
导读: 工 业 技 术 2007 NO.11 科技资讯 MATLAB的GUI设计在时域分析中的应用 吴建华 周岳斌 (湖南理工学院机械与电气工程系 湖南岳阳 414000) 摘 要:MATLAB是面向科学与工程计算的科技应用软件。它具有速度快、使用方法简便等优

工 业 技 术

2007  NO.11

科技资讯

MATLAB的GUI设计在时域分析中的应用

吴建华  周岳斌

(湖南理工学院机械与电气工程系  湖南岳阳  414000)

摘 要:MATLAB是面向科学与工程计算的科技应用软件。它具有速度快、使用方法简便等优点。本文通过实例介绍了对自动控制系统进行时域分析的仿真软件的设计方法。这个仿真软件利用MATLAB的图形用户界面编程技术,能更直接更快速地观察并分析系统的时域特性。

关键词:MATLAB  时域分析  稳态误差  图形用户界面

中图分类号:TP311        文献标识码:A        文章编号:1672-3791(2007)04(b)-0029-01

1 引言

随着大量可视化编程语言的出现,为工程技术人员提供了可视化的编程环境,大大减少了技术人员工作量,极大推动了各种应用软件的发展。MATLAB同样提供了一个功能强大的用于编写图形用户界面(GUI)的工具,自美国Math Works公司于1967年推出MATLAB软件包到目前为止已经发展到了7.1版,由于其语句简练,功能强大,简单实用,成为面向科学与工程计算的大型优秀科技应用软件,在电路分析、计算中有广泛的应用前景。本文将通过一个对时域系统的稳态误差分析的实例来介绍MATLAB的GUI设计在时域分析中的应用。

2 原理及方法

系统仿真是对系统的数学模型进行求解,对控制系统来说,其数学模型实际上是某种微分方程和差分方程模型。因而在仿真过程中需要以某种数值算法从给定的初始值出发,逐步地计算出每一时刻系统的响应,最后绘制出系统的响应曲线,由此来分析系统的性能。

稳定是控制系统的重要性能,也是系统能正常工作的首要条件。控制系统中的稳态误差,是系统控制精度的一种度量。系统的稳态误差定义为被控量的希望值与实际值之差,它与系统本身的结构、参数以及外部的作用形式密切相关。

根据稳态误差分析方法,可计算不同输入下,各种系统类型的稳态误差。稳态误差与典型系统类型的关系如表1所示,其中K为

增益。

3 GUI的制作及程序的设计

3.1 图形用户界面的制作

所谓图形用户界面是指由窗口、光标、按钮、菜单、文字说明等对象构成一个用户界面。用户可以通过键盘输入相关的参数,通过鼠标选择、激活这些对象,使计算机完成相关的计算或者绘制曲线等功能。

在MATLAB中,应用程序的图形窗口有两种生成方法,利用可视化界面环境Guide实现或者编写M脚本文件实现,在命令窗口输入guide,调用GUI设计向导,然后选择空白的GUI模版,就可以通过托放控件工具栏中的不同控件来设计用户自己的界面。

根据时域分析中稳态误差的计算需要进行界面设计,选取了按钮、编辑文本框、静态文本框下拉菜单、坐标轴、框架等多种控件,然后双击相应的控件,可进行相应控件属性的修改,例如设置坐标、大小、颜色、字体等,无需修改的可保留其缺省值。

完成控件布局和属性设置后,还必须编写控件的回调函数的程序代码。其中ButtonDownFcn是当鼠标左键单击控件时执行的函数,Callback是与控件功能相关的标准毁掉函数,CreateFcn是当控件创建时执行的函数,DeleteFcn是删除控件之前执行的函数。设计时可从菜单View下的ObjectCallbacks选项中选择一种函数,打开Matlab自动生成的.m文件,在相应的函数下编写具体的操作程序代码。3.2 编写回调函数

在回调函数中,首先利用findobj和get获得图形界面的编辑框中用户设置的开环系统参数,并通过str2num将字符类型的参数转换为数值类型,再利用多项式乘积函数conv、串联结构函数series和反馈结构函数feedback得到闭环系统的传递函数模型。

然后根据下拉菜单控件选定的输入信号类型,求取实际响应曲线和稳态误差。单位阶跃输入响应可直接使用step函数,而单位斜坡输入或单位加速度输入则必须先将闭环系统的传递函数模型的分子部分提高1阶或2阶,再使用step函数。下面是部分程序示例:

pop=findobj('tag','popupmenu1');po=get(pop,'value');switch pocase 1

[y,x,t]=step(num,den,,t);plot(t,y,'b',t,1,':c');cc=1;

plot(t,y,'b',t,cc,'r','Linewidth',2.5);

k1=findobj('tag','k');kp=e1;

k='静态位置误差系数Kp=';set(k1,'string', [k kp]);k2=findobj('tag','wu');ess='稳态误差ess=';ess1=1/(1+e11);

set(k2,'string',[ess,sprintf('%1.4g\',ess1)]);

grid on;

legend('蓝色实线表示响应稳态曲线','红色虚实线表示单位斜坡信号',0);...

通过改变表达式的参数,可以得到不同情况下的稳态误差、静态误差系数以及响应

曲线,从而更便捷的进行各种控制系统的稳态误差分析。

图1

0型系统的单位斜坡输入响应和稳态误差。其他系统类型的不同信号的输入响应和稳态误差的具体求法与此类似。

4 结语

时域分析中包含了大量的数学计算分析和函数图形,利用MATLAB强大的计算功能和丰富的绘图功能进行控制系统的时域仿真,不仅可以很容易仿真出用户想要得到的仿真结果,而且能够提供用户一个可视化的GUI界面。对于专业教学的老师和学生来说,既简化了控制系统的分析过程,又具有直观、形象、生动的特点,易于学生接受,有助于巩固和加强学生的理解,同时也便于演示,这样一个仿真软件在教学和实验过程中使用起来将会特别方便。

参考文献

[1] 曹戈,赵阳.MATLAB实用教程[M].北京:

电子工业出版社,2005.

[2] 程鹏.自动控制原理[M].北京:高等教育出

版社,2003.

[3] 魏克新.MATLAB语言与自动控制系统设

计[M].北京:机械工业出版社,1997.[4] 何强,石惠.MATLAB在时域分析中的应

用[J].安徽水利职业技术学院学报,2005,5(1).

[5] 应亮.MATLAB的图形用户界面的应用

[J].电脑知识与技术.2005(11).

 科技资讯 SCIENCE & TECHNOLOGY INFORMATION29

…… 此处隐藏:727字,全部文档内容请下载后查看。喜欢就下载吧 ……
MATLAB的GUI设计在时域分析中的应用.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.jiaowen.net/wenku/110581.html(转载请注明文章来源)
Copyright © 2020-2025 教文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:78024566 邮箱:78024566@qq.com
苏ICP备19068818号-2
Top
× 游客快捷下载通道(下载后可以自由复制和排版)
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能出现无法下载或内容有问题,请联系客服协助您处理。
× 常见问题(客服时间:周一到周五 9:30-18:00)