MATLAB的GUI设计在时域分析中的应用
工 业 技 术
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字,全部文档内容请下载后查看。喜欢就下载吧 ……相关推荐:
- [教育文库]夜场KTV服务员的岗位职责及工作流程[1]
- [教育文库]企划、网络、市场绩效考核方案
- [教育文库]学党史、知党情、强党性--“党的基本理
- [教育文库]2016年高考物理大一轮总复习(江苏专版
- [教育文库]干部廉洁自律自查自纠的报告
- [教育文库]2010年北京大学心理学系拟录取硕士研究
- [教育文库]资金时间价值练习题及答案
- [教育文库]保护环境的心得体会
- [教育文库]英语角内容:英语趣味小知识
- [教育文库]档案收集与管理工作通知
- [教育文库]劳动规章制度范本范本
- [教育文库]高考物理一轮复习课后限时作业1运动的
- [教育文库]机械工艺夹具毕业设计195推动架设计说
- [教育文库]通用技术教学比赛说课稿2
- [教育文库]2018年四年级英语下册 Module 7 Unit 2
- [教育文库]第2章 宽带IP网络的体系结构
- [教育文库]九年级化学第五单元课题3《根据化学方
- [教育文库]小学英语六年级情态动词用法归纳
- [教育文库]甲级单位编制窑井盖项目可行性报告(立
- [教育文库]2016-2021年中国城市规划行业全景调研
- 高考英语听力十大场景词汇总结
- 全省领导班子思想政治建设座谈会会议精
- 人教版新课标高一英语提优竞赛试题 下
- 江西省2014年生物中考试题
- 长沙镇食品药品安全事故应急预案
- 《金刚石、石墨和C60》片段教学设计
- 福州教育学院(王旭东)
- 基于EDA音乐播放器的设计
- 9、古诗两首《夜书所见》《九月九日忆
- 小学语文课外阅读有效策略探讨
- 贵州文化产业发展成支柱产业的问卷调查
- 膀胱类癌的诊治体会(附3例报告)
- 发动机积碳产生的原因
- Configuring Code Composer Studio for
- 学生良好的心理素质如何培养点滴谈
- 46 电沉积法制备锂离子电池用硅-锂薄膜
- 美舍雅阁公司管理中各部门职责
- 去壳剥皮的小妙招
- 六自由度运动平台的仿真研究
- Pride and Prejudice(傲慢与偏见)




