控制系统计算机辅助分析的MATLAB实现方法
- 格式:pdf
- 大小:151.04 KB
- 文档页数:4
摘要MATLAB语言是一种十分有效的工具,能容易地解决在系统仿真及控制系统计算机辅助设计领域的教学与研究中遇到的问题,它可以将使用者从繁琐的底层编程中解放出来,把有限的宝贵时间更多地花在解决科学问题上。
MATLAB GUI 是MATLAB的人机交互界面。
由于GUI本身提供了windows基本控件的支持,并且具有良好的事件驱动机制,同时提供了MATLAB数学库的接口,所以GUI 对于控制系统仿真的平台设计显得十分合适。
GUI对于每个用户窗口生成.fig和.m 文件。
前者负责界面的设计信息,后者负责后台代码的设计。
本文所做的研究主要是基于MATLAB GUI平台,结合控制系统基础理论和MATLAB控制系统工具箱,实现了用于控制系统计算机辅助分析与设计的软件。
本软件主要功能:实现传递函数模型输入、状态方程模型输入、模型装换、控制系统稳定性分析、系统可观性可控性判断,绘制系统奈奎斯特图、波特图、根轨迹图以及零极点分布图。
在继续完善的基础上能够用于本科自动控制原理教程的教学实验和一般的科学研究。
关键词:控制系统;MATLAB GUI;计算机辅助设计AbstractMATLAB language is a very effective tool,and can be easily resolved in the system simulation and control system of teaching in the field of computer-aided design and research problems,it could be the bottom of the user from tedious programming liberate the limited spend more valuable time to solve scientific problems.The MATLAB GUI is the interactive interface.As the GUI itself provides the basic control windows support,and has a good mechanism for event-driven,while providing the MATLAB Math Library interface,the GUI for control system simulation platform for the design of it is suitable. GUI window generated for each user. Fig and.M file. The former is responsible for the design of the interface information,which is responsible for the design of the background code.Research done in this article is mainly based on MATLAB GUI platform,the basis of combination of control system theory and MATLAB Control System Toolbox,the realization of control systems for computer-aided analysis and design software. The main functions of the software: the realization of transfer function model input,the state equation model input,the model fitted for the control system stability analysis,system observability controllability judgments、rendering the system Nyquist diagram、Bode plots、root locus and Pole-zero distribution. While continuing to improve based on the principle of automatic control can be used for undergraduate teaching course experiments and scientific research in general.Key words:Control System;MATLAB GUI; Computer-assistant design目录第1章概述 (1)1.1 论文选题背景和意义 (1)1.2 计算机辅助分析与设计在控制系统仿真中的发展现状 (1)1.3 本文主要内容 (3)第2章控制系统与MATLAB语言 (4)2.1 控制系统理论基础 (4)2.2 MATLAB语言与控制系统工具箱 (5)第3章 MATLAB GUI简介及应用 (9)3.1 MATLAB GUI (9)3.2 软件设计步骤 (10)第4章仿真系统测试与演示 (16)4.1 控制系统的模型输入 (16)4.2 控制系统的稳定性分析 (19)4.3 控制系统可控可观性分析 (20)4.4 控制系统频率响应 (23)4.5 控制系统时域响应 (27)4.6 控制系统根轨迹绘制 (28)结论 (31)参考文献 (32)致谢 (33)第1章概述1.1 论文选题背景和意义自动控制原理是自动控制专业和自动化专业的主要课程之一,是研究自动控制技术的基础理论课,是必修的专业基础课程。
Bode图法基本要求为了获得比较高的开环增益及满意的相对稳定性,必须改变开环频率特性响应曲线的形状,这主要体现为:1)在低频区和中频区增益应该足够大,2)且中频区的对数幅频特性的斜率应为-20dB/dec,并有足够的带宽,以保证适当的相角裕度;3)而在高频区,要使增益尽可能地衰减下来,以便使高频噪声的影响达到最小。
Bode图设计方法的频域指标为。
K c ,,ωγ基本思路在Bode图中的对数频率特性的低频区表征了闭环系统的稳态特性,中频区表征了系统的相对稳定性和响应性,而高频区表征了系统的抗干扰特性。
在大多数实际情况中,校正问题实质上是在稳态精度和相对稳定性之间取折衷的问题。
05101520M a g n i t u d e (d B )10-11010110210310403060P h a s e (d e g )Bode DiagramFrequency (rad/sec)串联超前校正描述:超前校正装置的主要作用是改变系统开环Bode 图中曲线的形状来产生足够大的超前相角,以补偿原系统中过大的相角滞后,从而提高系统的相对稳定性,致使闭环系统的频带扩宽。
设超前校正装置的传递函数为TsaTss G c ++=11)(1>a mm a φφsin 1sin 1−+=alg 10mφ串联超前校正Bode图的几何设计方法1.根据稳态指标要求确定未校正系统的型别和开环增益,并绘制Bode图;2.根据动态指标要求确定超前校正装置的参数;第一种情形:给出了的要求值(1)确定超前校正所应提供的最大超前相角(2)求解的值)20~5( ,)](180[0°°°=+′∠+−=εεωγφc m j G amm a φφsin 1sin 1−+=a j G m lg 10)(lg 200−=′ω(确定)m ωc ω)(0s G ′如果,说明值选择合理,能够满足相角裕度要求,否则按如下方法重新选择的值:c m ωω≈a a 2)(1c j G a ω′=a j G c lg 10)(lg 200−=′ω11sin 1+−=′−a a mφm mφφ≥′若,则正确,否则重新调整值。
最优控制的MATLAB实现摘要线性二次型最优控制是一种普遍采用的最优控制系统设计方法。
使用MATLAB 软件设计的GUI控制界面实现最优控制,有较好的人机交互界面,便于使用。
线性二次型最优控制又叫做LQ最优控制或者称为无限长时间定常系统的状态调节控制器。
本文分别从连续系统线性二次型最优控制的MATLAB实现,离散系统相形二次型最优控制的MATLAB实现,最优观测器的MATLAB实现,线性二次性Guass 最优控制的MATLAB实现四个研究方案。
本论文就是从这四个方面分别以不同的性能指标设计不同的GUI界面以及不同的程序实现其功能并说明其各自的应用范围。
关键词:线性二次型,最优控制, GUI控制界面,最优观测器,Guass最优控制The Linear Quadratic Optimal Control of MATLABAbstractLinear quadratic optimal control is a widely used to optimal control system design method. Use of MATLAB software design GUI interface control to realize the optimal control, Have good man-machine interface, easy to use. The linear quadratic optimal control and called LQ optimal control or an infinite long time of the system state regulation and constant controller.This paper respectively from the continuous system linear quadratic optimal control MATLAB, Discrete system in quadratic optimal control MATLAB, The optimal observer MATLAB, sexual Guass linear quadratic optimal control MATLAB four research plan. This paper is from the four aspects of the performance index respectively in different design different GUI interface and Different programs that realize its function and their application scope.Keywords:Linear quadratic, The optimal control, GUI control interface, The best Guass observer, the optimal control目录1 引言 (1)1.1 概述 (1)1.2课题研究的背景、意义及研究概况 (1)1.3本文研究的主要内容 (2)2 最优控制的基本概念 (3)2.1最优控制基本思想 (3)2.2最优控制的性能指标 (3)2.2.1 积分型性能指标 (4)2.2.2 末值型性能指标 (5)2.3最优控制问题的求解方法 (6)3 最连续系统最优控制的MATLAB实现 (7)3.1连续系统线性二次型最优控制 (7)3.2连续系统线性二次型最优控制的MATLAB实现 (8)3.3连续系统线性二次型最优控制的MATLAB实现示例 (8)4 离散系统线性二次型最优控制的MATLAB实现 (18)4.1离散系统稳态线性二次型最优控制 (18)4.2离散系统线性二次型最优控制的MATLAB实现与示例 (20)5 最优观测器的MATLAB实现 (25)5.1 连续时不变系统的KALMAN滤波 (25)5.2K ALMAN滤波的MATLAB实现 (26)5.3K ALMAN滤波的MATLAB实现示例 (27)6 线性二次型GUASS最优控制的MATLAB实现 (34)6.1LQG最优控制的求解 (34)6.2LQG最优控制的MATLAB实现与示例 (36)7 结论 (41)参考文献: (42)致谢 (43)1 引言1.1 概述随着计算机技术的飞速发展,控制系统的计算机辅助设计与分析得到了广泛的应用,目前已达到了相当高的水平。
实验五 控制系统计算机辅助设计一、实验目的学习借助MATLAB 软件进行控制系统计算机辅助设计的基本方法,具体包括超前校正器的设计,滞后校正器的设计、滞后-超前校正器的设计方法。
二、实验学时:4 学时 三、实验原理1、PID 控制器的设计PID 控制器的数学模型如公式(5-1)、(5-2)所示,它的三个特征参数是比例系数、积分时间常数(或积分系数)、微分时间常数(或微分系数),因此PID 控制器的设计就是确定PID 控制器的三个参数:比例系数、积分时间常数、微分时间常数。
Ziegler (齐格勒)和Nichols (尼克尔斯)于1942提出了PID 参数的经验整定公式。
其适用对象为带纯延迟的一节惯性环节,即:s e Ts Ks G τ-+=1)( 5-1式中,K 为比例系数、T 为惯性时间常数、τ为纯延迟时间常数。
在实际的工业过程中,大多数被控对象数学模型可近似为式(5-1)所示的带纯延迟的一阶惯性环节。
在获得被控对象的近似数学模型后,可通过时域或频域数据,根据表5-1所示的Ziegler-Nichols 经验整定公式计算PID 参数。
表控制器的参数。
假定某被控对象的单位阶跃响应如图5-4所示。
如果单位阶跃响应曲线看起来近似一条S 形曲线,则可用Ziegler-Nichols 经验整定公式,否则,该公式不适用。
由S 形曲线可获取被控对象数学模型(如公式5-1所示)的比例系数K 、时间常数T 、纯延迟时间τ。
通过表5-1所示的Ziegler-Nichols 经验整定公式进行整定。
如果被控对象不含有纯延迟环节,就不能够通过Ziegler-Nichols 时域整定公式进行PID 参数的整定,此时可求取被控对象的频域响应数据,通过表5-1 所示的Ziegler-Nichols 频域整定公式设计PID 参数。
如果被控对象含有纯延迟环节,可通过pade 命令将纯延迟环节近似为一个四阶传递函数模型,然后求取被控对象的频域响应数据,应用表5-1求取PID 控制器的参数。
《MATLAB与控制系统仿真》实验指导书(2011年第一版)西安邮电学院自动化学院2011年6月目录前言 (1)MATLAB语言实验项目 (3)实验一熟悉MATLAB集成环境与基础运算 (3)实验二 MATLAB的基本计算 (7)实验三 MATLAB图形系统 (9)实验四 MATLAB程序设计 (13)实验五 MATLAB函数文件 (15)实验六MATLAB数据处理与多项式计算 (17)实验七 SIMULINK仿真实验 (21)前言MATLAB 产品家族是美国 MathWorks公司开发的用于概念设计、算法开发、建模仿真、实时实现的理想的集成环境。
是矩阵实验室(Matrix Laboratory)的简称,是美国MathWorks公司出品的商业数学软件,用于算法开发、数据可视化、数据分析以及数值计算的高级技术计算语言和交互式环境,主要包括MATLAB和SIMULINK两大部分。
MATLAB由于其完整的专业体系和先进的设计开发思路,使得 MATLAB 在多种领域都有广阔的应用空间,特别是在科学计算、建模仿真以及系统工程的设计开发上已经成为行业内的首选设计工具,它将数值分析、矩阵计算、科学数据可视化以及非线性动态系统的建模和仿真等诸多强大功能集成在一个易于使用的视窗环境中,为科学研究、工程设计以及必须进行有效数值计算的众多科学领域提供了一种全面的解决方案,并在很大程度上摆脱了传统非交互式程序设计语言(如C、Fortran)的编辑模式,代表了当今国际科学计算软件的先进水平。
MATLAB软件工具在自动化专业、测控技术与仪器和电气工程及其自动化等专业的本科生学习中,经常用来计算、仿真和设计,尤其是MATLAB软件的仿真功能,能使学生对所学知识有更加深入的理解和分析。
《MATLAB与控制系统仿真》课程,和《自动控制原理》、《现代控制理论》、《数字信号处理》、《电力电子技术》等重要的专业课程相互支撑、相辅相成,同时也有利于学生完成课程设计和毕业设计等实践教学环节。
第8卷 第2期集美大学学报(自然科学版)V ol.8 N o.2 2003年6月Journal of Jimei U niv ersity(Natural Science)Jun.2003[文章编号]1007-7405(2003)02-0145-04控制系统计算机辅助分析的M AT LAB实现方法罗成汉,张富忠,江小霞(集美大学信息工程学院,福建厦门361021)[摘要]阐述了描述控制系统的四种主要数学模型,以及控制系统计算机辅助分析的M A T LAB实现方法,尤其是用Simulink建模,利用L T I V iewer进行系统的辅助分析的方法,该方法能实现从系统建模到系统的分析和仿真,全过程都是可视化操作.[关键词]控制系统;数学模型;计算机辅助分析[中图分类号]T P273[文献标识码]A0 引言控制系统计算机辅助分析是以控制系统的数学模型为基础,以计算机为工具,对控制系统进行实验和研究的一种方法,它为控制系统的设计提供强大的分析工具,可检验控制系统的设计效果.计算机辅助分析必须根据系统的数学模型编制相应的仿真程序.MATLAB语言是一种面向科学与工程计算的高级语言,具有强大的计算功能、计算结果和编程可视化及极高的编程效率,并提供了许多强大功能的工具箱,而且M ATLAB语言易学易用,不要求使用者具备高深的数学与程序的知识,不需要使用者深刻了解算法与编程技巧.因此,在此方面,MATLAB有一般高级语言难以比拟的优势,从而为传统的控制系统辅助分析与设计开辟新的方法与途径提供了充分的条件[1].1 控制系统的数学模型控制系统的数学模型对于控制系统的分析、设计具有十分重要的意义,可以通过解析法、实验法建立系统的数学模型.在M ATLAB中,可用四种数学模型描述线性定常时不变控制系统,包括传递函数模型、零极点增益模型、状态空间模型以及基于传递函数获得的图形化形式———动态结构图,也就是MATLAB里的Simulink结构图模型[2].在MAT LAB中,提供了许多函数建立系统的数学模型,函数tf()建立传递函数模型,函数zpk()建立零极点增益模型,函数ss()建立状态空间模型,这三种系统模型之间可以用函数: ss2tf(a,b,c,d),ss2zp(a,b,c,d),tf2ss(num,den),tf2zp(num,den),zp2ss(z,p,k),zp2tf(z,p,k)来转换.对于结构图模型,可在Simulink工作窗里画出动态结构图模型,其中,输入与输出环节必须采用模块库浏览中“signal and system”中的“in1”与“out1”模块(因为进行何种仿真是由命令确定的),并取扩展名为mdl的某一文件名并存盘.该模型可用linmod()、linmod2()、dlinmod()函数命令将从所保存结构图模型中,提取一个在某一平衡工作点处的线性模型,也将其转换成LTI对象的状态空间模型. [收稿日期]2002-07-03[作者简介]罗成汉(1970-),男,讲师,从事测控系统的教学、科研工作.2 控制系统辅助分析及其相关MA T LAB 函数控制系统辅助分析方法主要有:时域分析、频域分析、稳定性分析、根轨迹分析四种方法.2.1 稳定性分析由控制理论的一般规律可知,对线性系统而言,若一个连续系统的所有极点都位于s 平面的左平面,则该系统为一个稳定的系统;若一个离散系统的所有极点都位于z 平面的单位圆内,则该系统是一个稳定系统.在MATLAB 中,采用直接求根的方法很容易实现.2.2 时域分析时域分析法是根据自动控制系统微分方程,用拉普拉斯变换求解动态响应的过程曲线的方法.典型响应有单位阶跃响应、单位脉冲响应等.时域分析的另外一个目的是求解响应的性能指标,响应的性能指标主要有:峰值时间、超调量、调节时间及上升时间.M ATLAB 跃响应函数step ()、dstep (),脉冲响应函数impluse ()、dim pluse (),也可通过这些函数,可方便地求取系统的相应响应,编写相应的程序求取系统的性能指标.2.3 频域分析频域分析法是自动控制中应用一种数学工具———频率特性来研究系统控制过程性能(稳定性、快速性及稳态精度)的方法,不必直接求解系统的微分方程,而是间接地用系统的开环频率特性曲线,来分析闭环系统的响应,是一种图解的方法.频域分析主要用到三种图:Bode 图、Nyquist 曲线图、Nichols 曲线图.其中Bode 图可以用于分析系统的相角稳定裕度、幅值稳定裕度、剪切频率、-π穿越频率、带宽、扰动抑止及稳定性等.Nyquisrt 与Nichols 曲线图,可以用来分析系统的相角稳定裕度、幅值稳定裕度及其稳定性等.MAT -LAB 提供了求取系统Bode 图函数:bode ()、dbode (),求取系统Nyquist 曲线图函数:nyquist ()、dnyquist (),求取系统Nichols 曲线图函数:nichols ()、dnichols (),求取系统的频域性能指标函数margin (),通过这些函数可方便地绘制相应的曲线图.2.4 根轨迹分析根轨迹分析法是分析与设计线性定常系统特别有效的图解方法,它根据根轨迹法则,迅速地作出近似的根轨迹图,直观地反映系统参数变化时对根分布位置的影响.M ATLAB 提供了绘制根轨迹的相关函数,其中有绘制系统零极点图的函数pzmap ()、求系统根轨迹的函数rlocus (),计算系统根轨迹增益函数rlocfind ().3 控制系统的辅助分析的MA T LAB 实现方法3.1 编程实现应用MATLAB 提供的函数与其他函数、命令、语句,针对实现控制系统各种辅助分析方法,可编制相应的MATLAB 程序.可以在MATLAB 指令窗口中直接输入程序,或者在MATLAB 编辑窗口输入程序,并取扩展名为M 的某一文件名并存盘,运行时只需在MATLAB 指令窗口直接输入该文件名.该方法需要编写大量的程序,并且用户界面不友好,操作不方便.3.2 利用线性定常系统分析工具(LTI Viewer )来实现M ATLAB 控制系统工具箱针对线性定常系统提供了分析工具LTI View er ,它是具有良好图形用户界面(GUI )的交互式LTI 模型分析工具.利用LTI Viewer 可以在图形方式下交互地进行LTI 模·146·集美大学学报(自然科学版)第8卷型的各种时域和频域特性分析,并能直观观察图形方式的结果.LTI View er 允许从MATLAB Workspace 或Simulink 中输入系统的模型.3.2.1 从MATLAB Workspace 输入系统模型首先在MATLAB 的工作区建立LTI 模型,对于传递函数模型、零极点增益模型、状态空间模型可直接在MATLAB 工作区域建立;对于Simulink 的结构图模型,可先转化成状态空间模型,再在M ATLAB 工作区域建立.接着打开LTI View er ,在其File 菜单中,选择import ,在出现对话框中选择模型,把LTI 模型对象从MATLAB 工作空间引入到LTI Viewer 工作空间,同时在LTI View er 窗口中按照缺省设置画出LTI 模型的阶段响应曲线;最后在图形窗口中按下鼠标右键,出现一个上下文菜单,该菜单主要用来调整图形窗口的显示,利用LTI Viewer 能方便地对控制系统进行各种辅助分析,并能求取相应响应曲线的特征值.该方法适合版本较低的M ATLAB ,其LTI View er 不能直接从Simulink 中输入系统的模型,对于版本较高的MA TLAB 采用直接从Simulink 中输入系统的模型更方便.3.2.2 直接从Simulink 中输入系统的模型LTI Viewer 也允许从Simulink 环境中输入系统的结构图模型,这样一来,从系统建模到系统的分析和仿真,全过程都是可视化操作,尤其是对于大型控制系统来说,非常直观、方便.操作流程如下:首先通过Simulink 建立结构图模型并存盘.然后进入LTI Viewer 中设置输入点和输出点:在Simulink 的tools 菜单中,选择Linear analysis ,将出现imput point 、output point 元件窗口,这是LTI View er 提供的元件,其功能是在LTI View er 仿真界面和Simulink 系统模型之间传递信息.元件im -put point 、output point 是LTI Viewer 与Simulink 系统结构图的接口,系统的仿真信息是通过这两个元件在两界面之间传递,具体输入函数的类型和输出方式需在LTI Viewer 仿真界面下设置,现在只需将这两个元件拷贝到Simulink 界面下,用元件imput point 取代模型输入环节in1模块,用元件output point 取代模型输出环节out1模块.最后在LTI Viewer 仿真界面的菜单项Simulink 中,选择get linearized model ,就能对系统进行分析.若建模不是采用in1、out1模块,而是直接采用Control system 工具箱中imput point 、output point 元件,操作更方便,在Simulink 的tools 菜单中,选择Linear analysis ,再在LTI Viewer 仿真界面的菜单项Simulink 中,选择get linearized model ,就能对系统进行分析.4 仿真实例选取某一典型二阶系统的模型:G (s )=16s 2+4s +16,以它为例说明使用LTI View er 对其进行系统分析的步骤:1)在Simulink 中建立如图1所示系统的结构图模型.2)利用控制系统分析工具LT I Viewer 对其进行系统分析,系统分析工具LTI Viewer 的分析界面如图2所示.3)单击Plo t Type 菜单,根据分析需要可选择Step 或Bode 等命令项,方便得到仿真结果,如图3所示的阶跃响应曲线和图4所示的波德图,还可通过设置Characteristics 菜单,对不同类型响应曲线标出相关的特征值,如图3所示,能得到峰值响应.5 结论基于MATLAB 控制系统辅助分析的方法,通过编程实现,需要编写大量程序,并且用户界面不友好,操作不方便;Simulink 非常适合复杂系统的动态建模,LTI View er 是功能十分强大的线性定常系统分析工具,通过Simulink 建模,利用LTI Viewer 直接从Simulink 环境中输入系统的模型,对·147· 第2期罗成汉等:控制系统计算机辅助分析的M AT LA B 实现方法系统进行辅助分析,该方法从系统建模到系统的分析和仿真,全过程都是可视化操作,尤其对于大型控制系统来说,非常直观、方便,为控制系统的设计提供了强大的分析工具.[参考文献][1]张志涌.精通MA T LAB 5.3[M ].北京:北京航空航天大学出版社,2000.[2]黄忠霖.控制系统M A T LAB 计算及仿真[M ].北京:国防工业出版社,2001.Realizing Method for Computer -aided Analysis of ControlSystem Based on MATLAB LanguageLUO Cheng -han ,ZHANG Fu -zhong ,JIANG Xiao -xia(School of I nformation Engineering ,Jimei U niversity ,Xiamen 361021,China )A bstract :Four kinds of major mathematical model of control sy stem are presented ,and how to realize computer -aided analysis of control system based on MAT LAB language is discussed in the paper .The com -pl e te proc ess of operation ,from system model building to system analysis and simulation ,is visual with this method ,that is for building model by use of simulink and computer -aided analysis by use of LTI viewer .Key words :control sy stem ;mathematical model ;computer -aided analy sis ·148·集美大学学报(自然科学版)第8卷。