控制系统数字仿真.ppt
《控制系统数字仿真.ppt》由会员分享,可在线阅读,更多相关《控制系统数字仿真.ppt(186页珍藏版)》请在三一办公上搜索。
1、返回总目录,第4章控制系统数字仿真,数字仿真是在数字机上建立系统模型并利用模型做实验,所以,进行数字仿真首先要建立描述被仿真系统的数学模型,并将此模型转换成计算机可接受的、与原模型等价的仿真模型,然后编制程序,使模型在计算机上运行。本章主要讲述数字仿真的基本理论与方法。,连续系统数值积分方法,连续系统的数学模型,一般都能以微分方程的形式给出,所以,连续系统数学仿真算法问题通常可归结为如何用计算机来求解微分方程的问题。数值积分法是解决该问题的重要方法之一,例如已知,(4.1),求,连续系统数值积分方法,解:对式(4.1)两边积分,则,当,时,令,则,(4.2),数值积分法是解决在已知初值的情况下
2、,对,进行近似积分,对,进行数值求解的方法,在数学上称为微分方程初值问题的数值方法。,连续系统数值积分方法,一.欧拉法,表示函数,在,和,相邻两次采样时刻之间的积分。,若将此定积分中的,近似看成常数,即,则,由式(4.2)得,即,(4.3),连续系统数值积分方法,式中,,为计算步距。,,1,2,,式为(4.3)著名的欧拉积分公式。欧拉公式计算简单,但精度较低,其原因是将,看成常数,,从而用矩形面积代替准确的曲面面积,,形成了较大的误差面积。为了提高计算精度产生了梯形法。,连续系统数值积分方法,二.梯形法,梯形法是用梯形的面积近似代替定积分,即 式中,;,所以 即,(4.4),连续系统数值积分方
3、法,从式(4.4)可以看出,用梯形法进行数值积分,会出现一个问题:在计算,时,先要用,去计算式(4.4)右端的,,而此时 还未求出,,显然,这是不可能实现的。所以,一般采用欧拉公式先预报一个,然后将预报 的代入式(4.4)进行校正,求出,即,(4.5),式中,,一般称式(4.5)为预报校正公式。显然,梯形法比欧拉法精度要高,同时,每前进一个步距,计算工作量也比欧拉法约多一倍。,连续系统数值积分方法,三.龙格-库塔法,对于微分方程式(4.1),若在其初值附近展开成泰勒级数,并只取前三项,则有,(4.6),设式(4.1)的解可以写成如下形式,(4.7),连续系统数值积分方法,将用 二元函数泰勒级数
4、展开式展开,并只取前三项,则,将、代入式(4.7),(4.8),比较式(4.6)与式(4.8),得,连续系统数值积分方法,三个方程中有四个未知数,因而解不是唯一的。所以,限定,则求出,。代入式(4.7)得,写成一般形式,(4.9),连续系统数值积分方法,若在 的假设下,时的准确解为,,为用式(4.9)求得的近似解,则它们之差,称为此时计算的截断误差。,式(4.6)只取到泰勒级数展开式中 的二阶导数项,略去了三阶以上高阶导数项。为纪念提出该方法的德国数学家C.Runge和M.W.Kutta,称这种计算方法为二阶龙格-库塔法。其截断误差正比于步长 的三次方,同理若在式(4.6)的计算中,取到的 三
5、阶或四阶导数项,则有相应的三阶或四阶龙格-库塔法,相应的截断误差也应正比于 或。,连续系统数值积分方法,一般在计算精度要求较高的情况下,多使用四阶龙格-库塔法。其计算公式为,(4.10),连续系统数值积分方法,将欧拉公式与 的泰勒级数展开式比较可知,欧拉公式即泰勒级数展开式只取前两项。而将预报校正公式与二阶龙格库塔公式比较,发现它们完全是一样的。这样,通过对龙格库塔法的介绍,可将前面讲的几种数值积分方法统一起来,都可看成是 在初值附近展开成泰勒级数所产生的,只是其泰勒级数所取项数的多少不同。欧拉法只取前两项,梯形法与二阶龙格库塔法取了前三项,四阶龙格库塔法取了前五项。从理论上说,取的项数越多,
6、计算精度越高,但相应的计算公式更复杂,计算工作量也更大。,连续系统数值积分方法,以上介绍的几种数值积分公式,有一个共同的特点,在计算 时只用到,而不直接用,各项的值,即在本次计算中,仅仅用到前一次的计算结果,而不需要利用更前面各步的结果。这类计算方法称为单步法。单步法运算有下列优点:,(1)需要存储的数据量少,占用的存储空间少。(2)只需要知道初值,就可启动递推公式进行运算,具有这种能力的计算方法称为自启动的计算方法。(3)容易实现变步长运算。与单步法相对应的还有一类数值积分方法,在它的数值积分公式中,本次计算不仅利用前一次的计算结果,还必须利用更前面各次结果,此类方法称为多步法。如四阶阿达姆
7、斯(Adams)积分公式,连续系统数值积分方法,即是多步法计算公式。多步法与单步法相比,欲达到相同精度,计算工作量较小,从式(4.11)和四阶龙格库塔式(4.10)的比较中可明显看出。在计算 时,式(4.11)只需计算,而,已由前三次计算求出,而四阶龙格库塔公式每前进一步都要计算,相当于四次计算右端函数,因此在相同的条件下多步法比单步法要快。,(4.11),连续系统数值积分方法,四.微分方程数值积分的矩阵分析方法,前面介绍的数值积分公式,都是以求解单个典型微分方程 进行介绍的。而工程实际系统中大量的仿真对象是以一阶微分方程组或矩阵微分方程的形式给出,如,或,连续系统数值积分方法,式中,,在这种
8、情况下,各数值积分公式显然应采用相应的矩阵形式,连续系统数值积分方法,(1)欧拉公式,(4.12),(2)梯形公式,(4.13),(3)二阶龙格-库塔公式,(4.14),连续系统数值积分方法,(4)四阶龙格-库塔公式,(4.15),连续系统数值积分方法,连续系统数值积分方法,对一个 维向量,每前进一个步距,至少要求 个 之值。,对常见的线性定常系统,四阶龙格库塔法的四个可表示为,连续系统数值积分方法,连续系统数值积分方法,对 维向量,取 是有四个分量的一维矢量,其中 再取 为一零向量,其中,。,则四个求,的公式可合并为一个公式,(4.16),在以后介绍的程序中,四阶龙格库塔法的计算将建立在上式
9、的基础上。,连续系统数值积分方法,五.数值积分方法的计算稳定性,这里所说的数值积分方法的计算稳定性,在数学上是指微分方程初值问题算法的数值稳定性或计算稳定性。由于在系统仿真运算阶段大量求解微分方程问题时,实际上是用不定数值积分方法求解微分方程的问题。如欧拉法就是在已知 时,用 完成对微分方程 的求解。习惯上将这些方法称为数值方法。,从稳定性理论中,可以知道如何从系统的微分方程或传递函数去判断该系统的稳定性。那么,对于一个稳定的连续系统,当用某数值积分方法进行仿真计算时,是否仍然稳定呢?先看下面的例子。,连续系统数值积分方法,【例4.1】已知微分方程,其精确解为,取,用欧拉法和四阶龙格-库塔法计
10、算 时的:,连续系统数值积分方法,欧拉法,四阶龙格-库塔法,精确解,连续系统数值积分方法,显然,此时数值积分法计算的结果是错误的。为什么会出现这种情况呢?这是因为数值积分方法只是一种近似方法,它在反复的递推运算中将引入误差。若误差的积累越来越大,将使计算出现不稳定,从而得出错误的结果。所以,原系统的稳定性与数值积分法计算的稳定性是不同的两个概念。前者用原系统的微分方程、传递函数来讨论,后者用逼近微分方程的差分方程来讨论。由于选用的数值积分法不同,即使对同一系统,差分方程也各不相同,稳定性也各不一样。如何分析数值积分法的数值计算稳定性呢?一般来讲,对高阶微分方程的数值计算稳定性作全面分析是比较困
11、难的,通常用简单的一阶微分方程来考查其相应差分方程的计算稳定性。,连续系统数值积分方法,微分方程,(4.17),称测试方程。据稳定性理论,当其特征方程的根在平面的左半平面,即根的实部 时,则原系统稳定。此时相应的数值积分法的计算稳定性如何呢?,连续系统数值积分方法,1.欧拉法的计算稳定性,对式(4.17)按欧拉公式计算有,(4.18),用式(4.18)计算的,并不是 时的真值,而只是真值包含了各种误差的近似值。随着递推次数的增加,此误差是否会不断扩大,使 完全不能表示此时的真值呢?这决定了此差分方程计算的稳定性。为简化问题的讨论,假设只在 时刻有误差引入,这样 的误差 仅由 的误差引起,所以,
12、(4.19),连续系统数值积分方法,式(4.19)减式(4.18)得误差方程,同理,当,则,表明此算法若在计算中的某步引入了误差,随着计算步数的增加,这个误差将逐渐扩大,以致差分方程的解完全失真。,连续系统数值积分方法,反之,当,则 随着计算步数的增加,误差 逐渐减小并趋于零或有界,在这种情况下,称此差分方程的算法是计算稳定的。显然,合理的选择步长使其满足,是保证欧拉法计算稳定的重要条件。,连续系统数值积分方法,2.梯形法的计算稳定性,对测试方程按梯形法计算公式,则,(4.20),所以,(4.21),连续系统数值积分方法,若原系统稳定,则根据稳定性理论,应是小于零的实数。对式(4.21),取任
13、何正数都可以保证下式成立:,所以,这就表明,某步计算引入的误差,将随着计算步数的增加而减小。也就是说,梯形法的计算在任何步长下都是稳定的,是一种绝对稳定的计算方法。,连续系统数值积分方法,六.数值方法的计算精度、速度、稳定性与步距的关系,从上面的分析可以看出,一般数值积分方法的稳定性与所选用的计算步距有关。各种数值积分方法的差分方程是对原微分方程的近似逼近,存在明显的截断误差。且计算机的字长有限,计算只能限制在有限位,将引入舍入误差。这些误差都和计算步距密切相关,所以计算步距是影响计算精度、速度和稳定性的重要因素。若步距取得较大,截断误差就会相应地增大;反之,若步距取得较小,截断误差就会减小,
14、但在给定时间范围内,计算次数必然增加,使舍入误差积累,相应地增加。,连续系统数值积分方法,这两种误差与步距的关系可用图4.1表示。从图中可知,两种误差对步距的要求是矛盾的,但两者之和有一个最小值,步距最好能选在最小值。然而,实际要做到这一点是很困难的。一般只能根据经验确定一个 附近的合理步长区,如可将 限制在系统的最小时间常数数量级上。,图4.1 误差与步距关系,控制系统的结构及其描述,一.控制系统的典型结构形式,1.单输入-单输出开环控制结构控制系统结构如图4.2所示。其中控制器、控制对象等环节可用第3章所述任何一种数学模型描述,为参考输入量,为控制量,为输出量。,图4.2 单输入-单输出开
15、环控制结构图,控制系统的结构及其描述,2.单输入-单输出前馈控制结构控制系统结构如图4.3所示。这种结构形式本身仍为开环控制形式,但为补偿输入引起的误差,在已知误差变化规律的情况下,加入补偿环节,对误差作提前修正。补偿环节同样可用任一种数学模型描述。,图4.3 单输入-单输出前馈控制结构图,控制系统的结构及其描述,3.单输入单输出闭环控制结构这是控制系统中应用最广泛的控制结构形式,大多数控制系统为保证其控制精度、性能指标要求,都采用这种闭环负反馈形式,如图4.4所示。该系统控制原理主要是根据偏差(或误差)确定控制量,使输出量按希望的精度变化,减小或消除偏差,即所谓的偏差控制系统。图中 为偏差量
16、(或误差量),为反馈量。反馈环节可用任一种数学模型描述。当反馈为单位反馈时,有,则偏差,控制系统的结构及其描述,图4.4 单输入-单输出闭环控制结构图,称作误差,而此时的闭环系统称作单位反馈系统。,控制系统的结构及其描述,凡是单输入-单输出控制系统结构均能方便地表示为图论中的拓扑结构形式,即使系统环节再增多,反馈和前馈联系再复杂,表述也很清晰,如图4.5所示。图中各环节用序号表示,每个环节都有自己的输入和输出变量 和(1,2,.,6),对应其相互关系的数学描述,可以是第3章所述形式的任一种。,图4.5 控制系统拓扑结构图,控制系统的结构及其描述,4.多输入-多输出控制系统结构若干个单输入-单输
17、出控制系统结构形式通过一定方式组合在一起,构成了多输入-多输出控制系统结构形式,用来描述较复杂的多变量控制系统。根据不同的环节组合形式,也有不同的控制结构。如变量和环节有单向耦合作用关系的结构形式见图4.6(a)、交叉反馈耦合作用关系的结构形式见图4.6(b)等。,控制系统的结构及其描述,(a)单向耦合结构(b)交叉反馈耦合结构图4.6 多输入-多输出控制结构图,控制系统的结构及其描述,二.控制系统的典型环节描述,任何一个复杂的控制系统,都是由一些简单的不同类型的典型环节采用串联、并联、反馈等形式组合而成的。若对常见的一些典型环节能准确地加以定量描述,则复杂系统的描述也只是复杂在各部分的相互连
18、接关系上。采用前述系统关系描述,把这种连接关系用相应的数学关系表达出来,就可以得到在计算机上能方便运行的“仿真模型”。经典控制理论中常见的典型环节如下所述:,控制系统的结构及其描述,(1)比例环节,(2)惯性环节,控制系统的结构及其描述,(3)惯性比例环节,(4)积分环节,控制系统的结构及其描述,(5)比例积分环节,(6)二阶振荡环节,式中,为阻尼比,01时,系统为欠阻尼二阶振荡情况;为无阻尼自然振荡频率。,控制系统的结构及其描述,(7)纯滞后环节,式中,,(8)高阶线性环节,为纯滞后时间。,控制系统的结构及其描述,式中,,为分母多项式系数,亦称特征多项式系数;,为分子多项式系数;它们均为反映
19、高阶线性环节动态响应性能的重要参数。,以上典型环节,无论其阶次高低,均可应用MATLAB语言方便地求出输入量作用下输出量的响应性能。和 之间的数学表达关系可以由传递函数 方便地转化为其他各种形式,如状态方程、零极点增益、部分分式等。,控制系统的结构及其描述,三.控制系统的连接矩阵,对图4.7所表示的线性系统,各环节均为线性的,在各自的输入量 作用下,给出各自的输出量,这种作用关系是通过各环节的数学描述体现出来的,其数学关系可以是(4.2.2)节所述的任何一种。但各环节之间存在相互作用,不是孤立的,只要与其他环节有连接关系,就要受到相应 变化的影响。因此,要完整地将系统描述出来,还应该分析各环节
20、输出 对其他环节有无输入作用,才能完整地进行仿真分析。,控制系统的结构及其描述,图4.7 控制系统拓扑结构,控制系统的结构及其描述,根据图4.7中、的连接关系,可逐个写出每个环节输入 受哪些环节输出 的影响,现列写如下:,(4.22),控制系统的结构及其描述,引入向量,则式(4.22)可表示为,控制系统的结构及其描述,即,式中,,控制系统的结构及其描述,式中,W为连接矩阵,nn型,矩阵中元素清楚地表示出各环节之间的连接关系,W0为输入连接矩阵,nm型(当参考输入为m维时),阵中元素表示环节与参考输入之间的连接关系。仔细研究连接矩阵W,可从其元素值直接看出各环节之间的连接情况,即,wij0,环节
21、j不与环节i相连;wij 0,环节j与环节i有连接关系;wij 0,环节j与环节i直接相连(wij=1)或通过比例系数相连(wij为任意正实数);wij 0,环节j与环节i直接负反馈相连(wij=-1或通过比例系数负反馈相连(wij为任意负实数);wii 0,环节i单位自反馈(wii=l或wii=-1)或通过比例系数自反馈(wii为任意实数)。,面向结构图的数字仿真,一.典型闭环系统的数字仿真,1.典型闭环系统结构形式控制系统最常见的典型闭环系统结构如图4.8所示。其中,面向结构图的数字仿真,图4.8 典型闭环系统结构图,面向结构图的数字仿真,2.系统仿真模型与求解思路所谓仿真模型是指经一定方
22、式把数学模型转化为便于在计算机上运行的表达形式。这种表达形式往往是一些适合于具体编程实现的数学关系式。对图4.8所示系统的开环传递函数,可按照能控标准型写出其开环状态方程,(4.23),式中,面向结构图的数字仿真,其中,矩阵中,(1,2,,0,1,,,)为式(3.4)首一化后分母、分子各系数,即,,且。,由图又知,控制量,代入式(4.23)得,再由,,,则,(4.24),即得系统闭环状态方程,其中,为系统闭环系数矩阵,而输入矩阵B和输出矩阵C不变。这就是图4.8系统的仿真模,面向结构图的数字仿真,仿真模型一旦确立,就可以考虑求解与编程实现。观察式(4.24)可知,该式其实为一个一阶微分方程组的
23、矩阵表达形式,而数值积分法最适宜解一阶微分方程,当采用四阶龙格库塔法求解此闭环状态方程时,其步骤如下:,对 知,此为对应 个状态变量的一阶导数 的n维向量表达式。其中,r为随时间变化的已知输入函数。于是,当求 解过程进行到 时刻,欲求 时刻各量,需先求,面向结构图的数字仿真,以上各系数、可认为是对应维状态变量在时刻的四组斜率,每组为维斜率向量,即每组个龙格库塔系数。,面向结构图的数字仿真,最后,再由,求得 时刻状态,立即可得输出相应时刻值,按以上算式,取k0,1,2,N不断递推,即求得所需时刻各点的状态变量 和输出量。,面向结构图的数字仿真,3仿真程序框图与实现,基于以上仿真模型和求解思路,我
24、们可以着手考虑面向这类典型闭环控制系统结构图的仿真程序的编制与实现。作为系统仿真程序,使用时应尽可能方便,使用者只要将开环传递函数 的分母、分子各系数,和反馈系数输入计算机,计算机就掌握了有关该系统的基本信息模型参数。然后求取首一化表达形式,以及形成开、闭环状态方程各矩阵等步骤均由仿真程序自动完成,无需人工干预。因此,程序应有输入数据模块和初始化程序模块。,面向结构图的数字仿真,在参考输入函数 的作用下,系统输出 开始随时间变化,仿真程序应能按照给定的计算步长,采用已确定的数值算法,对系统中各状态变量和输出逐点变化情况进行求解运算。这部分模块是整个仿真程序的核心部分,计算速度、精度误差均取决于
25、它。通常称为运行程序模块。在使用者规定的时间范围内,将计算数据按照一定要求存储,并在仿真结束时,按使用者指定格式输出仿真结果,以便对系统进行分析研究,这就是所谓的输出程序模块。综上所述,构成一个完整的仿真程序必须至少建立:输入数据块、初始化块、运行计算块、输出结果块四个子程序模块,才能正常地完成仿真任务。,面向结构图的数字仿真,1)程序框图程序框图如图4.9所示。,图4.9 典型闭环系统的仿真程序框图,面向结构图的数字仿真,2)程序语句用MATLAB语言编制的程序语句如下:EXP4-1.M%输入数据 aao,a1,an;%n1维分母系数向量 bb0,b1,.,bm;%ml维分子系数向量 XOx
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 控制系统 数字 仿真
链接地址:https://www.31ppt.com/p-5268594.html