基于MATLAB控制系统的仿真与应用.docx

上传人:b****4 文档编号:4999440 上传时间:2022-12-12 格式:DOCX 页数:41 大小:501.59KB
下载 相关 举报
基于MATLAB控制系统的仿真与应用.docx_第1页
第1页 / 共41页
基于MATLAB控制系统的仿真与应用.docx_第2页
第2页 / 共41页
基于MATLAB控制系统的仿真与应用.docx_第3页
第3页 / 共41页
基于MATLAB控制系统的仿真与应用.docx_第4页
第4页 / 共41页
基于MATLAB控制系统的仿真与应用.docx_第5页
第5页 / 共41页
点击查看更多>>
下载资源
资源描述

基于MATLAB控制系统的仿真与应用.docx

《基于MATLAB控制系统的仿真与应用.docx》由会员分享,可在线阅读,更多相关《基于MATLAB控制系统的仿真与应用.docx(41页珍藏版)》请在冰豆网上搜索。

基于MATLAB控制系统的仿真与应用.docx

基于MATLAB控制系统的仿真与应用

目录

1引言

2绪论

2.1课题背景………………………………………………………………2

2.2现代控制系统的发展及现状………………………………………2

2.3MATLAB简介及其仿真现状………………………………3

2.4MATLAB仿真集成环境—Simulink……………………………………7

3控制系统的基本理论

3.1控制系统的模型………………………………………………………10

3.2控制系统的稳定性分析……………………………………………12

4连续系统

4.1连续控制系统数学模型……………………………………………14

4.1.1脉冲传递函数………………………………………………………14

4.1.2状态空间……………………………………………………………15

4.2MATLAB仿真………………………………………………………16

4.2.1连续系统的时域分析……………………………………………16

4.2.2连续系统的频域分析……………………………………………17

4.3SIMULINK仿真………………………………………………………22

4.4连续系统离散化…………………………………………………………23

5离散系统

5.1离散控制系统数学模型……………………………………………28

5.2MATLAB仿真…………………………………………………………28

5.3SIMULINK仿真…………………………………………………35

5.4离散系统连续化………………………………………………………41

6总结………………………………………………………………42

参考文献…………………………………………………………………43

致谢……………………………………………………………………44

基于MATLAB控制系统仿真应用研究

1引言

MATLAN是1984年有美国的MathWorks公司推出的产品,它的名字由Matrix和Laboratory两词的前三个字母组成的,是一套高性能的数值分析和计算软件,其功能不断的扩充,版本不断升级,发展至今,它已经发展成为一个集数值分析,矩阵计算,程序设计,系统建模,图形显示,系统仿真于一体,它支持控制系统设计过程的每个环节:

系统建模,分析,仿真到控制器设计和实现,并科研用于不同领域的系统设计,如制造、机械、航空航天、通信和计算机等领域。

它使用方便,用户界面友好的可视化软件,被誉为第四代编程语言,是世界上最流行的计算语言之一。

目前,它被广泛的应用于信号与图像处理、控制系统设计、计算机应用、通信仿真等诸多领域。

MATLAB在中国流行起来是在20世界90年代,目前已经成为广大科研工作者进行科学研究,工程计算的必备工具。

其中的仿真集成环境SIMULINK工具箱,是进行系统分析与设计的有力工具。

在系统开发直接,通过仿真科研优化系统参数,大大缩短了系统开发的时间,并提高了系统的性能。

在控制系统领域有大量复杂繁琐的计算与仿真曲线绘制任务。

随着计算机的广泛应用,MATLAB及其工具箱和Simulink仿真工具的出现为控制系统的设计与仿真提供了一个强有力的工具,使控制系统发生了革命性的变化。

 

2绪论

2.1课题背景

MATLAB语言是当今国际控制界最为流行的控制系统计算机辅助设计语言,它的出现为控制系统的计算机辅助分析和设计带来了全新的手段。

其中图形交互式的模型输入计算机仿真环境SIMULINK,为MATLAB应用的进一步推广起到了积极的推动作用。

现在,MATLAB语言已经风靡全世界,成为控制系统CAD领域最普及、也是最受欢迎的软件环境。

随着计算机技术的发展和应用,控制理论和技术在宇航、机器人控制、导弹制导及核动力等高新技术领域中的应用也愈来愈深入广泛。

不仅如此,自动控制技术的应用范围现在已扩展到生物、医学、环境、经济管理和其它许多社会生活领域中,成为现代社会生活中不可缺少的一部分。

随着时代进步和人们生活水平的提高,在人类探知未来,认识和改造自然,建设高度文明和发达社会的活动中,自动控制理论和技术必将进一步发挥更加重要的作用。

作为一个工程技术人员,了解和掌握自动控制的有关知识是十分必要的。

现代控制技术的应用不仅使生产过程实现了自动化,极大地提高了劳动生产率,而且减轻了人的劳动强度。

自动控制使工作具有高度的准确性,大大地提高了武器的命中率和战斗力,例如火炮自动跟踪系统必须采用计算机控制才能打下高速高空飞行的飞机。

某些人们不能直接参与工作的场合就更离不开自动控制技术了,例如原子能的生产、火炮或导弹的制导等等。

利用MATLAB软件中SIMULINK仿真工具来实现对自动控制系统建模、分析与设计、仿真。

能够直观、快速地分析系统的动态性能和稳态性能。

并且能够灵活的改变系统的结构和参数,通过快速、直观的仿真达到系统的优化设计。

2.2现代控制系统的发展及现状

仿真是对真实事物的模拟,它形成于40年代二战末期对火炮及飞行控制动

力学系统的研究,1948年电子微分分析器在美国的BELL实验室的研制成功开创了计算机仿真的新纪元。

50年代至60年代初对洲际导弹和宇宙飞船姿态及轨道控制动力学的研究,促进了混合仿真技术的发展。

70年代,系统工程被广泛用于社会、经济、生态等非工程系统,促进了离散事件系统仿真技术的发展。

仿真技术是以相似原理、系统技术、信息技术、网络技术及其应用领域有

关的专业技术为基础,以计算机和各种物理效应设备为工具,利用系统模型对真

实的或设想的系统进行动态试验研究的一门学科综合性技术。

控制系统仿真是系

统仿真技术在控制领域的应用。

其重要作用可以概括为如下几点:

(1)在系统尚未建立之前利用仿真技术可以论证系统方案及其可行性,可以避免许多不必要的挫折并为系统设计打下扎实的基础;

(2)在系统设计过程中利用仿真技术可以帮助设计人员建立系统的模型,进行模型验证与模型简化并进行最优化设计;(3)在系统建成后,利用仿真技术可以分析系统工作的状况,寻求系统改进的途径,以及找出最佳运行参数,尤其对于复杂控制系统,要采用智能的高级控制算法,而每一种算法在建立前是不成熟的.这就需要采剧仿真技术改进算法,并进行优化设计。

控制系统仿真经历了物理模型仿真,模拟计算机仿真和数字计算机仿真三个过程。

物理模型仿真是以物理过程相似、几何尺寸相似及环境条件相似为基础的仿真。

数学仿真是以综合参数比例相似及信息规律传递相似为基础的仿真。

物理仿真的优点是能最大限度地反映系统的物理本质,具有直观性及形象化的特点,它能将模型中发生的综合过程在模型中全面反映出来。

但它的缺点是为建造物理模型所需的费用高、周期长、技术复杂等。

而数学仿真不仅经济、方便、而且通用性强,在一定程度上满足了小系统或简单系统的仿真。

但是对于复杂的系统,数字仿真的局限性就明显表现出来,首先它建立的数学模型描述能力有局限性,它不能或难以描述复杂系统的某些问题或现象:

它所使用的仿真方法主要是近似的数值解法,缺少知识推理、逻辑判断和学习训练等智能特性。

因此,把仿真技术和人工智能技术相结合发展智能仿真技术,成为仿真技术发展的一个新的焦点。

当前仿真研究的前沿课题主要有:

仿真与人工智能技术的结合,分布式仿

真与仿真模型的并行处理,图形与动画仿真,建模环境与仿真支持系统等。

2.3MATLAB简介及其仿真现状

MATLAB(Matrixlaboratory)语言,早期只是数值线性代数软件包Linpack和Eispack的接口工具,用Fortran编程,后用C语言编写,八十年代中期,Mathwork公司将MATLAB推向市场,并逐步拓展其数值计算、符号解析运算、文字处理、图象处理功能,并采用面向对象的超高级的语言作为用户界面,使MATLAB成为一个多领域、多学科、多功能的优秀的应用软件,它的版本也从基于windowsw3.1x的16位的MATLAB4.2到今天基于windows95,windowsNT,Unix及Macintosh操作系统的32位的应用程序MATLAB52,它将数值分析、矩阵计算、科学数据可视化以及非线形动态系统的建模和仿真等诸多强大功能集成在一个易于使用的视窗环境之中,为科学研究、工程设计以及必须进行有效数值计算的众多学科领域提供一种简捷、高效的编程工具。

其几大功能可概括如下:

1.作为科学和工程计算的MATLAB

MATLAB以矩阵(或称数组)为计算单元,定义域为复数域,求解数值问题采用了有关领域中的先进技术和最新成果,其算法效率高、数值稳定性好、使用方便,对计算数学领域的特定问题类型用MATLAB系统求解,可以得到各种高效算法。

MATLAB5.1版本增加了五个新的常微分方程求解程序,包括支持刚性系统和事件定位;更快、更精确的Bessel函数,支持复数;稀疏矩阵迭代法、稀疏矩阵特征值和奇异值;2维积分:

多维内插:

不规则采样数据显示:

16位立体声(pc、Mac):

支持科学计算标准的开放式可扩充结构。

2.智能化程序设计语言

MATLAB不仅提供了极其结构化的程序设计语言,而且拥有超过任一高级语言系统调试技术,使用MATLAB的调试技术可以自动设置清除断点,在函数多层嵌套调用中可以考察改变多级工作空间的状态,在MATLAB工作过程中不必考虑数据类型,对数组无须事先定义其类型、名称及规模,系统本身会随机扩大或缩小,程序中既可以操作数组元素,也可以操作数组的一行或几行,还可以访问数组变量的整体,同时MATLA也拥有灵活多样的智能运算符这使得MATLAB的应用更加广泛。

3.MATLAB的数据可视化功能

MATLAB可以给计算数据以二维、三维的图形表现,通过对图形线型、立面、色彩、渲染、立视角等品质的处理,可把计算数据的特征表现的淋漓尽致,MATLAB还开发了一些面向图形对象的图形函数,它可以图形句柄为界面,设置各种不同按钮和控件,以执行相应的操作命令,从而实现人机交互控制。

MATLAB5.1版本的图形用户界面(GUI)增加了交互式GUI编码程序向导(GUIDE);句柄图形属性编辑程序:

列表框:

模态和非模态对话框,信息框:

多线程和直接插入可编辑文本等。

它的数据可视化和图形功能进一步加强,可以快速精确显示3D图形和各种图形文件格式,支持真彩色和高效8位图象数据输入显示。

4.MATLAB的文字处理功能

MATLAB把Microsoftword与notebook集成为一整体,它既可看作是能解决计算问题的字处理软件,也可看作是文字编辑功能的应用软件,在notebook中,可以对指令进行修改编辑,及时演算,及时执行命令,它的指令都是“活”指令,可以像在MATLAB的主窗口运行命令一样运行它。

5.MATLAB的工具箱

迄今为止MATLAB己拥有至少37个工具箱,这些工具箱可以分为两类:

功能型工具箱和领域型工具箱,功能型工具箱主要用来扩展MATLAB的符号计算功能,图形建模仿真,文字处理功能以及与硬件的实时交互功能,而领域型工具箱是专业性很强的工具箱如自动控制工具箱、信号处理工具箱、神经网络工具箱、模糊逻辑工具箱、通讯、小波分析、高阶谱分析、偏微分方程、统计、金融、图象处理等工具箱,应用领域遍布工程、经济、数学、化学以及电力等多个领域。

在这些工具箱中MATLAB提供了开放式体系结构使用户能够进入工具箱源码以便修改、定制、扩展算法和工具箱功能以适应用户特殊需要。

MATLAB进行仿真的现状如下:

MATLAB语言由于使用极其方便、且提供了丰富的矩阵处理功能,所以很快引起了控制理论领域研究人员的高度重视,并在此基础上开发了控制理论与CAD和图形化模块化设计方法相结合的控制系统仿真工具箱,目前它已成为国际控制界最流行的仿真语言。

MATLAB可以在各种类型的机型上运行,如:

PC及兼容机、Macintosh、Sun工作站、VAX机、Apollo工作站、HP工作站、DECstation工作站、SGI工作站、RS/6000工作站、Convex工作站及Cray计算机等。

使用MATLAB语言进行编程,可以不作任何修改直接移植到这些机器上运行,它与机器类型无关,这大大拓宽了MATLAB语言的应用范围。

MATLAB语言除可以进行传统的交互式编程来设计控制系统以外,可以调用它的控制系统工具箱来设计控制系统。

许多控制界的使用者还结合自己的研究领域将擅长的CAD方法与MATLAB结合起来,制作了大量的控制系统工具箱,如控制系统工具箱,系统辨识工具箱,鲁棒控制工具箱,多变量频域设计工具箱,“分析与校正工具箱,神经网络工具箱,最优化工具箱,模糊控制工具箱等,可以说伴随着控制理论的不断发展和完善,MATLAB的工具箱也在不断的增加和完善。

MATLAB的Simulink和Stateflow功能的增加使控制系统的设计更加简便容易,而且可以设计更为复杂的控制系统。

用MATLAB设计出控制系统进行仿真后,可以利用MATLAB的工具在线生成C语言代码,用于延时控制。

可以毫不夸张的说,MATLAB己不仅是一般的编程工具,而是作为一种控制系统的设计平台出现的。

目前,国外的许多工业控制软件的设计就明确提出了与MATLAB的兼容性。

MATLAB及其工具箱将一个优秀软件包的易用性、可靠性、通用性和专业性,以及以一般目的应用和高深的专业应用完美的集成在一起,并凭借其强大的功能,先进的技术和广泛的应用,使其逐渐成为国际性的计算标准,为世界各地超过20万名科学家和工程师所采用。

今天,MATLAB的用户团体几乎遍及西方各主要大学,公司和政府研究部门,其应用也已遍及现代科学和技术的方方面面。

据1996年的统计,全球共有52个国家,2000余所大学购买了MATLAB的使用许可,世界排名前100名的大公司有82家使用它,相反目前我国的科技人员了解和使用它的还比较少,使用的版本还比较低,离广泛使用和普及还有很大的距离。

下面是MATLAB的几个典型应用,由此可见一斑。

在瑞典Lunds大学反射物理学研究所在一项为期三个月的极地探险计划中,广泛使用MATLAB及其工具箱,在北冰洋研究放射性物质对环境生态学的影响。

研究人员主要用MATLAB进行数据分析,用神经网络工具箱辨识北冰洋流木的年轮图案,并据此识别这些漂流数年的数木成长自何方。

Forsmark核电站使用MATLAB优化反应堆的功率输出。

工程师们从堆芯读取大量数据,算出燃料棒和控制棒的最佳位置.以便产生最大的输出功率。

这是一个极为庞大且十分复杂的数值分析问题,包括分析1700个以上的节点。

为了简化计算过程,Forsmark用MATLAB开发出他们自己的图形用户界面,这个图形用户界面容许没有任何使用经验的使用者执行计算和评价分析结果。

Forsmark还使用MATLAB建模和分析各种设想的失效及扰动情况。

在反应堆中当发生扰动时,数据必须被详细分析以便确定扰动的原因。

借助于MATLAB和它的系统辨识及控制工具箱,Forsmark的工程师们将分析时间从原来的一星期减少到现在的15分钟。

Calspan先进技术中心试验高度可修改的实验型飞行器,它可以成倍提高其它飞行器的性能。

其仿真程序运行在一组并行操作的浮点DSP上,所用硬件来自dSPACE。

飞行器和飞行控制系统首先在地面用Simulink模块建模、仿真,然后用实时Workshop生成C源代码并被下载到飞行器的DSP上。

当实验飞机飞行时,试飞员可以在飞机在预先编好的程序DSP模块控制时评价飞行器和飞行控制系统,飞行中各种控制参数可以直接被调整并被下载给硬件作试验,这种形式的实时试验节省了大量时间和经费,一个1s行控制系统在其原型被建立之前就可以完成几乎全部试验。

2.4MATLAB仿真集成环境—Simulink

Simulink是对动态系统进行建模,仿真和综合分析的图形化软件。

它可以处理线性和非线性、离散、连续喝混合系统,也可以处理单任务和多任务系统,并支持具有多种采样频率的系统。

在Simulink是图形化仿真方式,使其具有更直观现象,更简单方便与灵活的特点。

比如,由Simulink创建的控制系统动态方框图模型,是系统最基本的直觉图形化形式、非常直观、容易理解。

并且可以再仿真进行的时间,就能看到仿真的结果。

这样可以大大的简化设计流程,减轻设计负担和降低设计成本,提高工作效率。

在MATLAB命令窗口键入Simulink,或在工具栏上选择按钮

打开SimulinkLibraryBrowser,即可打开一个空白模型窗口。

此时就可以再模型窗口中建立模型进行仿真工作,如图2-1所示

图2-1SimulinkLibraryBrowser界面

在模块库中选择构建系统模型所需的模块,并把它们直接拖放到所建立的系统模型窗口中。

之后需要做的工作是按照系统的信号流程将各系统模块真确连接起来。

用鼠标单击并移动所需功能模块至合适位置,将光标指向源模块的输出端口,此时光标变成“+”。

此时松开鼠标按键就完成如图2-2所示的连接。

图2-2Simulink模型窗口

 

3控制系统的基本理论

3.1控制系统的模型

在MATLAB里,可用4种数学模型表示控制系统,即:

传递函数模型、零极点增益模型、状态空间模型以及动态结构图。

其中前3种是用数学表达式描述的,每种模型都有连续系统的及离散系统的两种类别;而动态结构图是基于传递函数的图形化形式,就是MATLAB里的SIMULINK结构图。

(1)传递函数模型

不论是连续还是离散时间系统,传递函数分子/分母均按s或z的降幂排列。

在MATLAB里,都可直接用分子/分母多项式系数构成的两个向量num与den表示系统,即:

num=[c0,c1,…,cm];

den=[a1,a2,…,an];

在MATLAB中,用函数命令tf()来建立控制系统的传递函数模型,tf()函数命令常用的调用格式为:

sys=tf(num,den)

sys=tf(num,den,Ts)

sys=tf(M)

tfsys=tf(sys)

sys=tf(num,den)函数返回的变量sys为连续系统的传递函数模型。

函数输入参量num与den分别为系统的分子与分母多项式系数向量。

sys=tf(num,den,Ts)函数返回的变量sys为离散系统的传递函数模型。

Ts为采样周期,当Ts=-1或者Ts=[]时,则系统的采样周期未定义,num与den的定义同前。

sys=tf(M)函数定义一个增益为M的静态系统。

tfsys=tf(sys)函数将任意的LTI对象转换成传递函数模型,缺少时使用tzero()函数将状态空间模型转换成传递函数模型,使用poly()函数将零极点增益模型转换成传递函数模型。

(2)零极点增益模型

在MATLAB中,用函数命令zpk()来建立控制系统的零极点增益模型,zpk()函数的调用格式为:

sys=zpk(num,den)

sys=zpk(num,den,Ts)

sys=zpk(M)

tfsys=zpk(sys)

其中:

sys=zpk(num,den)函数返回的变量sys为连续系统的零极点增益模型。

函数输入参量的含义同tf()函数命令的解释。

(3)状态空间模型

在MATLAB中,用函数ss()来建立控制系统的状态空间模型,或者将传递函数模型与零极点增益模型转换为系统状态空间模型。

ss()函数的调用格式为:

sys=ss(a,b,c,d)

sys=ss(a,b,c,d,Ts)

sys=ss(d)

sys_ss=ss(sys)

sys=ss(a,b,c,d)函数返回的变量sys为连续系统的状态空间模型。

函数输入参量a,b,c,d分别对应于系统的A,B,C,D参数矩阵。

sys=ss(a,b,c,d,Ts)函数返回的变量sys为离散系统的状态空间模型。

Ts为采样周期,当Ts=-1或者Ts=[]时,则系统的采样周期未定义,a,b,c,d的定义同前。

sys=ss(d)函数等价于sys=ss([],[],[],d)。

sys_ss=ss(sys)函数是将任意的LTI对象sys转换成状态空间模型。

(4)系统的模型相互转换

在实际工程中,由于要解决自动控制问题所需要的数学模型,而该数学模型与该问题所给定的已知模型往往是不一致的,此时,就需要对控制系统的数学模型进行转换,即将给定模型转换为仿真程序能够处理的模型形式。

通常,系统的微分方程作为描述动态性能的基本形式,当作为共性的内容进行分析时,又常常将其转换为传递函数形式,而在计算机中,利用系统的状态空间描述最方便。

所以,讨论系统的数学模型之间的相互转换具有实际的知道意义。

各种数学模型适用于各类不同的应用场合,因而当研究的范围发生变化时,就需要对原有的数学模型进行转换,以适应工程实际的需要。

实际应用的往往都是一些很复杂的对象,分析这类对象时就要把实际工程分解为一些便于研究的数学模型的组合,然后再将他们连接起来研究其各种性能。

描述控制系统的数学模型主要有传递函数,零极点模型,部分分式模型和状态空间模型等,而这些模型之间又有着某种内在的等效关系。

在一些场合下需要用到其中的一种模型,而在另一种场合下可能需要另外的模型。

所以讨论由一种模型的转换方法是很有必要的。

MATLAB提供了一个对不同控制系统的模型描述进行转换的函数集,如表3.1所示:

表3.1模型转换函数及说明

函数

说明

ss2tf

由状态空间形式转换为传递函数形式

ss2zp

由状态空间形式转换为零极点形式

tf2ss

由传递函数形式转换为状态空间形式

ts2zp

由传递函数形式转换为零极点形式

zp2ss

由零极点形式转换状态空间形式

zp2tf

由零极点形式转换传递函数形式

3.2控制系统的稳定性分析

(1)稳定性的概念

经典控制分析中。

关于线性定常系统稳定性的概念是:

若控制系统在初始条件和扰动作用下,其瞬态响应随时间的推移而逐渐衰减并趋于远点(原平衡工作点),则称该系统是稳定的;反之,如果控制系统受到扰动作用后,其瞬态响应应随时间的推移而发散,输出成持续震荡过程,或者输出物限制地偏离平衡状态,则称该系统的不稳定性。

(2)系统稳定的意义

系统稳定性是系统设计与运行的首要条件。

只有稳定的系统,才有价值分析与研究系统自动控制的其他问题。

例如,只有稳定的系统,才会进一步计算稳态误差。

所以控制系统的稳定性分析是系统时域分析,稳态误差分析。

根轨迹分析与频率分析的前提。

对一个稳态的系统,还可以用想对稳定性进一步衡量系统的稳定度。

系统相对稳定性越低,系统的灵敏性和快速性越强,系统的震荡也越激烈。

(3)系统稳定性的判断

对于线性连续系统。

其稳定的充分必要条件:

描述该系统的微分方程的特征方程的根全部具有有负实部,即全部根在左半复平面内,或者说系统的闭环传递很熟的极点均位于左半s平面内。

对于线性离散系统。

其稳定的充分必要充分条件是:

如果闭系统的特征方程根或者闭环脉冲传递函数的极点为

则当所有特征根的模都小于1时,即|ki|<1(i=1,2,….n),该线性离散系统是稳定的;如果模的值大于1时,则该系统离散是不稳定的。

(4)其他稳定性判据

除上述稳定性判据之外,还有很多其他稳定性判据可从各个不同的角度对系统的稳定性加以判据,说明系统稳定性是系统能够成立与运行的首要条件。

(5)MATLAB直接判定的相关函数

由系统的稳定判据可知,判据系统的稳定与否实际上是判定系统闭环特征方程的根的位置。

其前提需要求出特征方程的根。

MATLAB提供了与之相关的函数,其用法如表3.2所示:

表3.2求特征方程根的函数

函数用

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 党团工作 > 党团建设

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1