实验3 连续系统离散相似法的数字仿真实验
第三章 离散相似法仿真

0 t
令 L1 sI A
1
(t )
系统的状态转移矩阵:
又 e
(t ) AX (t ) e BU (t ) X d e X (t ) e BU (t ) dt
At At At At t
积分并整理得:
系统状态方程的解
X (t ) e X (0) e A(t ) BU ( )d (t ) e At L1 sI A
第三章 离散相似法仿真
第三章 离散相似法 仿真
1
第三章 离散相似法仿真
控制系统的计算机仿真就是控制系统的数学模型在 数字计算机上求解的过程。控制系统的动态模型一般用 微分方程、一阶常微分方程组(状态方程)或者传递函 数来进行描述的,必须先将连续模型变换为离散化的数 学模型。 连续系统的响应是随时间连续变化的。但是连续系 统的解析解无法用计算机求出,只能求出其数值解,即 只能得到连续响应曲线上的有限个点。 因此,必须把连续系统离散化,得到差分方程,再 用计算机求解。这就是把微分运算转换成算术运算的过 程。 本章主要介绍连续模型离散化的方法及其差分方程 的求取,还介绍仿真程序的设计方法。
2
第三章 离散相似法仿真
§3-1 连续系统离散化
一、基本原理 离散相似法:将一个连续系统进行离散化处理,即加入 虚拟的采样开关、保持器(信号重构器)和补偿器,然后求 得等价的离散模型,因离散化处理过程使得离散系统与连续 系统是相似的,故可认为差分方程式的解序列就是连续系统 运动的采样值。 D 设有一个线性系统: B U(t) AX BU X
脉冲过渡函数与频率特性
2
幅频特性
脉冲过渡函数
相频特性
第3章连续系统的数字仿真通用算法

h y (t n +1 ) ≈ yn +1 = yn + ( K1 + 2 K 2 + 2 K 3 + K 4 ) 6 K1 = f (t n , yn ) K 2 = f (t n + h , yn + h K1 ) 2 2 式中 : K = f (t + h , y + h K ) n n 2 3 2 2 K = f (t + h, y + hK ) n n 3 4
da ( t ) a (t + t ) = a (t ) + t dt
b (t + t ) = b (t ) + db ( t ) t dt
(3-2)
c (t + t ) = c (t ) +
dc ( t ) t dt
假定模拟周期为T,可将T分成N个小的时间步长 t,即:T=N t 在时间为0时,我们知道a(0),b(0)和c(0)的实始值, 从这些初始值及常数K1和K2值出发,就可以计算 出t时间内的化学量的变化值.
(3)龙格--库塔法的精度取决于步长h的大小及求解的 方法.实践证明:为达到同样的精度,四阶方法 的步长h可以比二阶方法的h大10倍,而四阶方法 的每步计算量仅比二阶方法大一倍,所以总的计 算星仍比二阶方法小,使用的CPU机时也少.一 般工程中四阶龙格--库塔公式已能达到要求的精 度,故不再使用更高阶的公式.表3-1示出了f的 计算次数与精度阶数的关系. 表3-1 计算f的次数与精度阶数的关系 第一步计算f的次数 精度阶数 2 2 3 3 4 4 5 4 6 5 7 6 ≥8 n-2
y ( t n + 1 ) ≈ y n + f ( t n , y n ) h = y n +1
3连续系统的数字仿真

x
xk h f (tk , xk )
用梯形法校正。
x
( i 1) k 1
1 (i ) xk h [ f (tk , xk ) f (tk 1 , xk 1 )] 2
3.1.4 龙格—库塔法
原系统 积分:
f ( x, t ) x
tk h
x (t k 1 ) x (t k h) xk 1 x (t k ) xk
一般形式
xk 1 xk h Ci K i
i 1 s
其中,
K i f (t k ai h, xk h bij K j ) xk
j 1
i 1
i 1,2,..., s
式中各系数满足以下关系
a1 0 i 1 ai bij i 2,3,..., s j 1 s Ci 1 i 1
简单、计算量小,但不能实现每步都是最优步长
最优步长法
保证取得最大步长(最优步长) 策略:给定误差限 0 ,设本步步长为hk,本 步相对误差估计值为ek。假定所采用的积分算 法为K阶,则Ek可表示为:
Ek ( )h
k
( ) 其中, 是f(t,x)在积分区间(tk , xk+h)中某处变 量偏导数的组合,通常 t k
对x1在t0附近展开成泰勒级数,只保留 h2项,则有
1 f dx f 2 x1 x0 f (t0 , x0 )h ( )h 2 x dt t
(2)
假设解可写为: x1 x0 (a1K1 a2 K 2 )h
其中,
(3)
K1 f (t0 , x0 )
离散时间和连续时间模型的仿真

计算机仿真
用于模拟计算机系统的性能和行为,如操作系 统、网络通信等。
数字电路仿真
用于模拟数字电路的行为和性能,如逻辑门电路、微处理器等。于模拟控制系统的动态行为,如飞机、汽 车、机器人等。
电路仿真
用于模拟电路的动态行为和性能,如模拟电 路、数字电路等。
流体动力学仿真
05
离散时间和连续时间模型仿
真的发展趋势
离散时间模型仿真的发展趋势
01
离散时间模型仿真在计算机技 术的推动下,正朝着高精度、 高效率、高逼真度的方向发展 。
02
随着数值计算方法的改进,离 散时间模型仿真在处理复杂系 统时能够更准确地反映其动态 特性。
03
离散时间模型仿真在工程设计 、产品开发、生产制造等领域 的应用越来越广泛,成为解决 实际问题的有力工具。
骤或过程来模拟仿真过程。
02
连续时间模型仿真
连续事件的定义
连续事件
在连续时间模型中,事件的发生是在一个连续的时间段内,而不是离散的时刻。这些事 件通常与物理过程或自然现象相关,如温度变化、速度变化等。
时间变量
在连续时间模型中,时间是一个连续变化的变量,可以表示为实数轴上的一个点或一段 长度。
状态变化
用于模拟流体动力学系统的行为和性能,如 流体流动、热传导等。
离散时间和连续时间模型的适用性分析
离散时间模型适用于模拟离散事件系统,而连续时间模型适用于模拟连续 动态系统。
在选择使用离散时间模型还是连续时间模型时,需要考虑系统的特性和需 求,以及仿真的精度和计算成本等因素。
在某些情况下,可能需要结合离散时间模型和连续时间模型进行仿真,以 获得更准确的结果。
感谢观看
THANKS
ch2.3 连续系统仿真的离散相似法

12
5. Ga的迭代计算
Ga
T
At t G e Bdt a 0 T T
0
2` 3 3` 4 1 A t A t 2 Bdt It At T 2! 3!
1 T 2 AT 3 A2`T 4 A3`T 5 I B T 2 3 4 2! 5 3! T AT A T A T I 2 3 1! 4 2! 5 3! B
kAT G ( k 1 ) a ( k 1 )( k 1 )
13
6. 折半-加倍措施
T T T F ( ), G ( ), G () F ( T ), G ( T ), G ( T ) a a 2 2 2
T T F e e e F () F () 2 2
k
k
A Tk k !
k
矩阵R的范数
N 1 2 2 3 3 A TN1 A T A T A T 1 (N1 )! N 2 ( N 3 )( N 2 ) ( N 4 )( N 3 )( N 2 ) N 1 2 2 3 3 A TN1 A T A T A T 1 2 3 (N1 )! N 2 ( N 2 ) ( N 2 )
1
本章从连续系统离散化的角度出发,建立连续系 统模型的等价离散化模型,并用采样系统的理论和方
法介绍另一种常用的仿真算法—离散相似算法。
建立离散化模型采用的是: 1. 采样(sampling) 2. 信号重构(signal reconstruction)技术
22
ห้องสมุดไป่ตู้
离散相似算法的特点:
倒立摆仿真实验报告(连续、离散)

倒立摆仿真实验报告倒立摆是一个非线性、不稳定的系统,是经常作为研究比较不同控制方法的典型例子。
有许多抽象的控制概念,如控制系统的稳定性、可控性、系统抗干扰能力等,都可以通过倒立摆系统直观地表现出来,倒立摆系统的高阶次,不稳定,多变量,非线性和强耦合等特性,使得许多现代控制理论的研究人员一直将它视为研究对象。
倒立摆系统具有3个特性,即:不确定性,耦合性,开环不稳定性。
直线型倒立摆系统,是由沿直线导轨运动的小车以及一端固定于小车上的匀质长杆组成的系统,小车可以通过传动装置由交流伺服电机驱动,小车导轨一般有固定的行程,因而小车的运动范围是受到限制的。
一阶倒立摆建模在忽略了空气流动阻力,以及各种摩擦之后,可将倒立摆系统抽象成小车和匀质杆组成的系统,如下图所示M :小车质量;x :小车位置;m :摆杆质量J :摆杆惯量;F :加在小车上的力;l :摆杆转动轴心到杆质心的长度;θ:摆杆与垂直向上方向的夹角。
图1 倒立摆示意图倒立摆的数学模型为πθθπθθθθ180cos )3/4(]sin )180/([cos sin 22⨯-+-=l m ml l m f mg p p 我们可以实时量测角度θ(◦),并计算出角速度θ (◦/s ),控制的任务是产生合适的作用力f,以使倒立摆保持直立状态。
一 连续模糊控制器1、论域的正规化首先设定 15=m θ,s m/60 =θ,N F m 10=,将θ,θ ,f 的实际值分别除以m θ,mθ ,m F ,并加以1±限幅后,得到正规化的输入输出变量:其中]1,1[,,-∈z y x 2、定义模糊几何及其隶属函数对正规化的输入输出变量x,y,z 各定义五个模糊集合:NL ,NS ,Z ,PS ,PL ,分别用51~A A ,21~B B ,21~C C 来代表,x,y,z 三个变量的模糊集合的隶属函数均是对称,均匀分布,全交迭的三角形,如图2所示。
图2 变量的隶属函数 3、设计模糊控制规则集x 和y 各有五个模糊集合,所以最多有2552=条规则,根据经验只用11条规则即可,如表1所示。
建模与仿真及其医学应用

建模与仿真及其医学应用》实验讲义天津医科大学生物医学工程系2004 年实验一 系统建模的MATLAB 实现一、 实验目的:1 学习MATLA 基本知识。
2. 掌握数学模型的MATLA 实现:时域模型、状态空间模型和零极点 模型。
3. 学习用MATLA 实现系统外部模型到内部模型的转换。
4. 学习用MATLA 实现系统模型的连接:串联、并联、反馈连接。
5. 了解模型降阶的MATLA 实现。
二、 实验内容1. 系统的实现、外部模型到内部模型的转换2 (1)给定连续系统的传递函数G(s) (s 8)(s 22S 5),利用 (2 s 3)(3s 4s 13) MATLA 建立传递函数模型,微分方程,并转换为状态空间模型(2)已知某系统的状态方程的系数矩阵为:利用MATLA 建立状态空间模型,并将其转换为传递函数模型和零极 点模型MATLA 转换为传递函数模型和状态空间模型。
2. 系统的离散、连接、降阶2(1)给定连续系统的传递函数G(s) (s 8)(s 22s 5),将该连 (2s 3)(3s 2 4s 13) 续系统的传递函数用零阶重构器和一阶重构器转换为离散型传递函 数,抽样时间T=1秒。
⑶已知系统的零极点传递函数为G(s)(s 2豐31)(s 4),利用(2)该系统与系统H(s) 丁」分别①串联②并联③负反馈连s26s 5接,求出组成的新系统的传递函数模型。
(3)将串联组成的新系统进行降阶处理,求出降阶后系统的模型,并用plot图形比较降阶前后系统的阶跃响应。
要求:将以上过程用MATLABS程(M文件)实现,运行输出结果。
三、实验说明一关于系统建模的主要MATLA函数1 •建立传递函数模型:tf函数:格式:sys=tf(num,den)num=[b m,b m-i, ...... ,b]分子多项式系数den=[ai,a n-1, ......... ,a o]分母多项式系数2 •建立状态空间模型:ss函数:格式:sys=ss(a,b,c,d) %a,b,c,d为状态方程系数矩阵sys=ss(a,b,c,d,T)沪生离散时间状态空间模型3•建立零极点模型的函数:zpk格式:sys=zpk(z,p,k)4 •模型转换函数:tf2ss tf2zp ss2tf ss2zp zp2tf zp2ss%2为to的意思格式:[a,b,c,d]=tf2ss(num,den)[z,p,k]=tf2zp( nu m,de n)[n um,de n]=ss2tf(a,b,c,d,iu) %iu 指定是哪个输入[z,p,k]=ss2zp(a,b,c,d,iu)][num,den]=zp2tf(z,p,k)[a,b,c,d]=zp2ss(z,p,k)5.模型的连接串联:sys=series(sys1,sys2)并联:sys=parallel(sys1,sys2)反馈连接:sys=feedback(sys1,sys2,sign)%负反馈时sign可忽略;正反馈时为1 。
离散相似法

第五章 连续系统离散相似法数字仿真上一章讲的数值积分法,其结果得到的是递推公式。
其出发点不是建立一个与被仿真的连续系统等价(某种误差意义下)的离散模型,而是建立在数值计算的基础上,即对积分进行数值计算(某种求和计算)。
或从另一角度说,对微分算子s(以一阶微分方程为对象) 找更好的替代方法。
所得的公式,只是这种思路的结果。
也就是说,人们为了计算方便,将其设法整理成了递推公式,递推公式在固定步长的情况下,就变成了通常所用的常系数的差分方程,可用z变换与频域联系起来(也正因为这点,使其结果从形式上与离散相似累积法类似)。
对这种方法精度的分析,是从截断、舍入误差累积角度进行的。
其改进思路,是减小这两种误差。
时域看失真。
可为线性系统,也可为非线性系统。
离散相似法的出发点与数值积分法不同。
它的出发点在于:采样系统可用差分方程 和z变换来描述,而用计算机求解差分方程式很方便的(差分方程可看作多步法递推公式)。
所以,设法找到一个采样系统,使其输入—输出值与被仿真的连续系统在采样时刻的值近似相等。
这个采样系统称为连续系统的离散等价模型(二次模型、仿真模型)。
从此模型,可得出原系统的一系列值。
“等价”程度的高低,就是此法的精度问题。
所以精度分析从保持器引入的幅度与相位失真进行。
频域看失真。
只有线性时,才可列出整个系统的差分方程。
上述二法从结果(即所得递推公式)看有某种相似性。
所以精度稳定性等的解释可互换借鉴。
改进思路的不同,可看作看问题的角度不同(或出发点不同)而已。
因角度等价手段不同,各自能达到的“等价”程度也就有差别。
小结:1.数值积分法:出发点: 对积分进行数值计算,对微分算子s找更好的替代方法。
结果: 递推公式。
定步长时,为差分方程。
精度分析: 从截断、舍入误差累积角度进行。
时域看失真。
2.离散相似法:出发点:出发点与数值积分法不同。
用计算机解差分很方便,找一个采样系统,使其I-O值与被仿真连续系统(在采样时刻)近似相等。
仿真技术实验程序及思考题解答(仅供参考)

实验一 连续系统的数字仿真一、实验目的1. 熟悉Matlab 中m 文件的编写;2. 掌握龙格-库塔法的基本原理。
二、实验设备计算机、MATLAB 软件三、实验内容假设单变量系统如图所示。
试根据四阶龙格-库塔法,求系统输出y 的动态响应。
1.首先把原系统转化为状态空间表达式:⎪⎩⎪⎨⎧=+=•CXy bu AX X ,根据四阶龙格-库塔公式,可得到: ⎪⎩⎪⎨⎧=++++=+++1143211)22(6k k k k CX y K K K K h X X (1) 其中: ⎪⎪⎪⎩⎪⎪⎪⎨⎧+++=+++=+++=+=)()()2()2()2()2()(3423121h t bu hK X A K h t bu K h X A K h t bu K h X A K t bu AX K k k k k k k k k (2) 根据(1)、(2)式编写仿真程序。
2.在Simulink 环境下重新对上述系统进行仿真,并和1中结果进行比较。
四、实验结果及分析要求给出系统输出响应曲线,并分析计算步长对龙格-库塔法的影响。
计算步长对龙格-库塔法的影响:单从每一步看,步长越小,截断误差就越小,但随着步长的缩小,在一定求解范围内所要完成的步数就增加,不但引起计算量的增大,而且可能导致舍入误差严重积累,因此同积分的数值计算一样,微分方程的解法也有选择步长的问题。
源程序:r=5;numo=[1];deno=[1 4 8 5];numh=1;denh=1;[num,den]=feedback(numo,deno,numh,denh);[A,b,C,d]=tf2ss(num,den);Tf=input('仿真时间 Tf= ');h=input('计算步长 h=');x=[zeros(length(A),1)];y=0;t=0;for i=1:Tf/h;K2=A*(x+h*K1/2)+b*r;K3=A*(x+h*K2/2)+b*r;K4=A*(x+h*K3)+b*r;x=x+h*(K1+2*K2+2*K3+K4)/6;y=[y;C*x];t=[t;t(i)+h];endplot(t,y)Tf=5 h=0.02五、思考题1.试说明四阶龙格-库塔法与计算步长关系,它与欧拉法有何区别。
第4章 连续系统按环节离散化的数字仿真

数值积分法与离散相似法的对比
数值积分法:对已知初值的微分方程求数值解
计算公式的右端由两部分组成。一部分是上一步计算 的结果yk,后一部分是步长h乘上各点斜率f的加权 平均值(如RK-4)。 每计算一步,各点斜率都要计算一次,计算量大
离散相似法:通过加入虚拟的采样开关和保持器,
将系统的数学模型离散化,采样周期T选定,离散 化模型可以根据公式一次性确定。非常适用于线性 定常系统的离散化
0
0
4.3 非线性系统的数字仿真方法
四种非线性环节特性及MATLAB表示,假定
线性部分斜率为1 1、饱和非线性环节 function x=saturation(u,s)
x
if (abs(u)>=s)
if (u>0) x=s ;
-S S u
else
end else end
x=-s ;
x=u ;
2、死区非线性环节
%根据仿真模型求解 for j=1 : Tf/T u1=u; u=W*x+W0*R; %求各典型环节输入 for i=1 : n z(i)=E(i)*z(i)+F(i)*u(i)+G(i)*u1(i); x(i)=H(i)*z(i)+L(i)*u(i)+Q(i)*u1(i); %求各环节输出 end y=[y;Wc*x]; t=[t;t(j)+T]; end plot(t,y)
T (10 ~ 50 ) c
或T
r
或T
s
10
40
离散相似模型的精度分析
保持器的影响
零阶保持器可无失真地重构阶跃信号 一阶保持器可无失真地重构斜坡信号 但与理想保持器特性有差别
系统仿真技术_Chapter 3 时域离散相似法(1)

等效转移法(续)
得到新的状态方程:
X * A* X * B *u * * Y C * X *
A*、B*阵的各元素ai*、bi*与原来的ai、bi 相比较,分别乘以Ti+1、T i,时间常数加大, 状态矩阵计算的收敛性则大大加快。需要 注意的是,仿真结果的时间比例尺也放大 了1/T倍。
离散相似化
连续时间模型
离散时间模型
时域离散相似化
离 散 相 似 化
连续时间响应
离散时间响应
频域离散相似化
传递函数
脉冲传递函数
“离散相似法”
――对状态方程离散化得时域离散相似模 型――时域离散相似法 ――对传递函数作离散化处理得离散传递 函数,称为频域离散相似模型――频域离 散相似法
3.1 时域离散相似法基本原理
e
AT AiT i AiT i M R i! i 0 i L 1 i! L
AT
AiT i , i! i 0
A0 I
(12)
(13)
要求: rij E mij E 10 d , d为正整数 rmax E mmin 或 (14) 其中ri j和mi j对应为R与M的元素,rmax为ri j中最 大元素。
0
0
x(kT) e
AkT
~ x(0) e A( kT ) Bu ( )d
kT
基本方法 (续)
将(4)式-(3)式乘以eAT,可得:
x[(k 1)T ] e x(kT)
AT ( k 1)T kT
~ e A[(k 1)T ] Bu ( )d
(5)
(5)式右端的积分与k无关,故可令k=0。 若信号重构器使kT与(k+1)T之间的 u (t ) 不变, ~ ~ 积分式中的 u ( )保持常数 u () u( kT ) ,那么,(5) 式可改写为:
连续及离散时间信号基本运算的仿真设计 设计方案

连续及离散时间信号基本运算的仿真设计设计方案1.引言1.1 概述本篇文章主要讨论连续时间信号和离散时间信号的基本运算,并提出了相应的仿真设计方案。
在现代通信和信号处理领域中,信号的基本运算是非常重要且常见的操作,它们可以用于信号的合并、分解、调制和滤波等处理过程中。
连续时间信号是指在时间上连续变化的信号,其数学表示可以用连续函数描述。
本文将重点讨论连续时间信号的加法运算和乘法运算。
加法运算可以实现信号的叠加,而乘法运算可以实现信号的调制。
通过仿真设计,我们可以直观地观察信号的运算结果,并深入理解运算过程中的原理和特点。
离散时间信号则是在时间上以离散的方式变化的信号,其数学表示可以用序列表示。
本文同样关注离散时间信号的加法运算和乘法运算。
不同于连续时间信号,离散时间信号的运算过程需要考虑采样频率和采样定理等因素。
因此,通过仿真设计,我们可以探索离散时间信号运算的特点和限制,并对其进行更深入的研究和理解。
在本文的后续部分,我们将提出相应的仿真设计方案,通过计算机仿真的方法,将连续时间信号和离散时间信号的基本运算进行模拟,并观察其运算结果和特性。
通过这些仿真实验,我们可以更好地理解信号运算的原理和过程,并在实际应用中灵活运用。
总之,本文着重研究了连续时间信号和离散时间信号的基本运算,并通过仿真设计方案展示了信号运算的过程和特点。
通过深入研究和理解信号运算,我们可以更好地应用于信号处理和通信系统中,提高系统的性能和效果。
文章结构:本篇文章主要分为引言、正文和结论三个部分,在正文中又细分为连续时间信号的基本运算和离散时间信号的基本运算两个小节。
引言部分主要包括以下内容:1.1 概述:对于信号处理和通信领域来说,了解和掌握信号的基本运算是非常重要的。
本文围绕连续时间信号和离散时间信号的基本运算展开,旨在通过仿真设计的方式辅助读者更好地理解和应用基本运算。
1.2 文章结构:本文总共包括引言部分、正文部分和结论部分。
自动控制系统仿真实验三离散相似法数字仿真

实验三 离散相似法数字仿真一、实验目的1、掌握离散相似法仿真方法二、实验内容用离散相似法仿真程序(参考课本sp4-4m )重现实验三输出Y1的数据和曲线,并与四阶龙格一库塔法比较精度。
在下图中,若各环节传递函数已知为;01s .010044.0)s (G9 ;01s .011.0)s (G8 ;s 130)s (G7;15s .0121.0)s (G6 ;0067s .0170)s (G5 ;051s .015s .01G4(s);01s .011G3(s) ;085s .017s .01)s (2G ;s 01.011)s (1G +=+==+=+=+=+=+=+=但G10(s)=0.212;重新列写联接矩阵W,W0和非零元素阵Wij ,编写程序,求出y7响应曲线。
三、实验步骤1、整理状态空间矩阵:1098765432110987654321*0000000001*000100000000010000000000100000000010000010000100000000001000001000010000000000100100000001000000000y y y y y y y y y y y u u u u u u u u u u ⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎣⎡+⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎣⎡⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎣⎡---=⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎣⎡2、重新列写联接矩阵W,W0和非零元素阵Wij1y 2y 3y 4y 5y 6y 8y 9y 10y⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎣⎡---=0001000000000100000000001000000000100000100001000000000010000010000100000000001001000000010000000000W ⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎣⎡=00000000010W 10121129132143148154165161017618619711071IJ W ⎡⎤⎢⎥⎢⎥⎢⎥-⎢⎥⎢⎥⎢⎥⎢⎥-⎢⎥⎢⎥=⎢⎥⎢⎥⎢⎥-⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎣⎦ 3、实验仿真程序(1)离散相似法仿真 P=[1 0.01 1 0; 0 0.085 1 0.17; 1 0.01 1 0;0 0.051 1 0.15; 1 0.0067 70 0; 1 0.15 0.21 0; 0 1 130 0;1 0.01 0.1 0;1 0.01 0.0044 0]; WIJ=[1 0 1;2 1 1;2 9 -1;3 2 1;4 3 1; 4 8 -1;5 4 1;6 5 1;6 7 -0.212; 7 6 1; 8 6 1; 9 7 1]; n=9; Y0=1;Yt0=[0 0 0 0 0 0 0 0 0]; h=0.001; T=0; T0=0; Tf=5;Nout=7; A=P(:,1); B=P(:,2);C=P(:,3); D=P(:,4);m=length(WIJ(:,1)); W0=zeros(n,1); W=zeros(n,n); for k=1:mif(WIJ(k,2)==0);W0(WIJ(k,1))=WIJ(k,3); else W(WIJ(k,1),WIJ(k,2))=WIJ(k,3); end; end;for i=1:nif(A(i)==0); FI(i)=1;FIM(i)=h*C(i)/B(i); FIJ(i)=h*h*C(i)/B(i)/2; FIC(i)=1;FID(i)=0; if(D(i)~=0); FID(i)=D(i)/B(i); elseend;elseFI(i)=exp(-h*A(i)/B(i));FIM(i)=(1-FI(i))*C(i)/A(i); FIJ(i)=h*C(i)/A(i)-FIM(i)*B(i)/A(i); FIC(i)=1;FID(i)=0; if(D(i)~=0); FIM(i)=(1-FI(i))*D(i)/A(i); FIJ(i)=h*D(i)/A(i)-FIM(i)*B(i)/A(i); FIC(i)=C(i)/D(i)-A(i)/B(i); FID(i)=D(i)/B(i); else end; end; end; Y=zeros(n,1); X=Y;y=0;Uk=zeros(n,1);Ub=Uk; t=T0:h:Tf; N=length(t); for k=1:N-1 Ub=Uk;Uk=W*Y+W0*Y0; Udot=(Uk-Ub)/h; Uf=2*Uk-Ub;X=FI'.*X+FIM'.*Uk+FIJ'.*Udot; Y=FIC'.*X+FID'.*Uf; y=[y,Y(Nout)]; end;plot(t,y)(2)四阶龙格一库塔法: p=[1 0.01 1 0;0 0.085 1 0.17; 1 0.01 1 0; 0 0.051 1 0.15; 1 0.0067 70 0; 1 0.15 0.21 0; 0 1 130 0; 1 0.01 0.1 0;1 0.01 0.0044 0]; WIJ=[1 0 1;2 1 1; 2 9 -1;3 2 1;4 3 1; 4 8 -1;5 4 1;6 5 1;6 7 -0.212; 7 6 1; 8 6 1; 9 7 1]; n=9; y0=1;yt0=[0 0 0 0 0 0 0 0 0]; h=0.01; T=0; T0=0; Tf=10;nout=7;A=diag(p(:,1)); B=diag(p(:,2)); C=diag(p(:,3)); D=diag(p(:,4)); m=length(WIJ(:,1)); w0=zeros(n,1); w=zeros(n,n); for k=1:mif (WIJ(k,2))==0;w0(WIJ(k,1))=WIJ(k,3); elsew(WIJ(k,1),WIJ(k,2))=WIJ(k,3); end; end;Q=B-D*w; Qn=inv(Q); R=C*w-A; V1=C*w0; Ab=Qn*R; b1=Qn*V1; Y=yt0'; y=Y(nout);t=T0;N=round((Tf-T0)/h);for i=1:Nk1=Ab*Y+b1*y0;k2=Ab*(Y+h*k1/2)+b1*y0;k3=Ab*(Y+h*k2/2)+b1*y0; k4=Ab*(Y+h*k3)+b1*y0;Y=Y+h*(k1+2*k2+2*k3+k4)/6; y=[y,Y(nout)]; T=[T,t+h]; t=t+h; end;[T',y']; plot(T,y)4、仿真结果 (1)离散相似法:(2)四阶龙格一库塔法:。
计算机与CAD仿真第4章连续系统按环节离散化的数字仿真

xk 1 Gxk Hu k uk yk 1 c x d uk 1
a T b Ge T a a (T ) c T c d (1 e b ) H e b b a 0 T a a (T ) c T c d 2 (aT b be b ) e b b a 0 ad c 1 cb d d b
表4-2 非线性环节标志
标 志 FZ=0
FZ=1 FZ=2
说 明 典型环节前后均无非线性环节
典型环节前有饱和非线性环节,应修正其输入u 典型环节前有死区非线性环节,应修正其输入u
FZ=3
FZ=4 FZ=5
典型环节前有滞环非线性环节,应修正其输入u 典型环节前有继电器非线性环节,应修正其输 入u 典型环节后有饱和非线性环节,应修正其输出x 典型环节后有死区非线性环节,应修正其输出x
sX(s) X(0) AX(s) BU(s)
或者:
( sI A) X( s) X(0) BU( s)
sI A1
1
上式两边左乘
,可得
1
X(s) (sI A) X(0) (sI A) BU(s)
令: L1[(sI A) 1 ] Φ(t ) ,称为系统状态转移矩阵。
x[(k 1)T ] Gx(kT ) Hu (kT ) u(kT )
G e AT
T
式中:
H
e A(T t ) Bdt
0
T
te A(T t ) Bdt
0
2. 关于离散相似法的几点说明及结论
1. 它是一个递推算法(但不是数值积分法)。
2.G, H ,
连续系统离散化

离散相似法
连续系统的离散化
首先要得到一个与被仿真系统等价的离散 模型。这个模型可以通过对连续系统的离 散化过程来获得。它分成以下五步:
① 首先对输入信号u(t)进行采样,即在输入 端加一个采样开关S1,其采样周期为T。
② 连续变化的信号u(t)经过采样开关后,变 成了一个离散信号u(kT)。为保证模型的等 价性,首先要求信号等价,因此它不能直 接进入原来的连续系统,而必须加上一只 信号重构器,它使信号u(k)重新变成一个 连续信号uh(t), uh(t)u(t)。
环节2是一阶惯性环节,其传递函数为
X (s) k0 k0 T1 U (s) T1s 1 s 1 T1 x(k 1) eT T1 x(k ) k0 (1 eT T1 )u(k )
连续系统按结构图的离散相似法仿真
环节3也是一阶惯性环节,其传递函数为
Y (s) 1 1 T2 X (s) T2s 1 s 1 T2
对上式进行拉氏反变换,求得方程的解为
t
X (t) (t) X (0) 0 (t )BU ( )d
时域解法求取离散系统差分方程
(t) L1 (sI A)1
X (t) eAt X (0) t eA(t )ΒU ( )d 0 t
X (t) (t)X (0) 0 (t )BU ( )d
采用一阶保持器描述系统的差分方程
x(k 1)T (T )x(kT) m (T ) n (T )u(kT) n (T )u(k 1)T
e(k 1) R(k 1) y(k 1)
e(k) R(k) y(k)
x1(k
1)
x1(k
)
3 4
Te(k
)
1 4
Te(k
第3章 连续系统仿真方法

3.2连续系统仿真算法
3.2.1线性连续系统仿真算法
3.2.1.1线性连续系统数学模型的几种表示方法
⑴高阶微分方程
⑵传递函数
⑶状态方程
⑴、⑵只能给出输入输出的关系,⑶可描述中间的状态。
以上只是对SISO系统。
对于MIMO系统:分别为微分方程组,传递函数阵,状态方程。
方法的阶数可以作为衡量算法精度的一个标志。
截断误差的阶次越高,其求解的精度越高,不同算法的截法
亚当姆斯法
舍入误差:
由计算机的有限字长引起。
舍入误差会积累,随着积分时间的增加和积分法阶次的增高而增加,并且随着积分步长的减小而变得更加严重,原因是对于给定的积分时间,使用更小的步长就意味着更多的积分步数。
此时,系统仿真模型中将会有两种频率的采样开关:
离散部分的采样周期Ts;
连续部分的仿真步长T。
为了便于程序实现,一般取Ts=NT,N为正整数。
这种情况下的仿真流程见下图(计算方法):
还有一种情况:采样控制系统中有多个回路,且每个回路的采样周期不同。一般内回路的采样周期较小,外回路的相对较大。如双环调速、飞行器控制等。
绝对误差准则:
相对误差准则:
-表示规定的误差量
快速性:数字仿真是一步一步推进的,每一部的计算时间决定了仿真速度。
连续系统数字仿真算法:
数值积分方法:单步、多步
离散相似方法:适用范围较窄
数值积分方法采用递推方式进行计算,不同的方法会引进不同的计算误差;为了提高计算精度,会增加运算量。对同一种积分方法,为提高计算精度,可减小积分步距,但又降低了计算速度。
龙格-库塔法的截断误差为步长的n+1次方(n为算法的阶数)。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验3 连续系统离散相似法的数字仿真实验
(1) 掌握以系统结构图形式描述的连续系时域离散相似法的数字仿真方法和步骤。
(2) 学会利用时域离散相似法分析线性和非线性控制系统的动态性能以及典型非线性环节对控制系统动态性能的影响。
【实验内容】
含死区环节的非线性控制系统的结构图如图A.2所示
(1)按实验目的、要求和已知条件,建立系统的Simulink模型,并且用RK4法,求
出c=0,0.1,0.5,1.0情况下(c=0相当于IV环节为1,即没有加入死去环节)系统的单位阶跃响应作为标准解。
(2)求出图A.2中传递函数对应的状态空间模型,并在该模型前加入虚拟的采样开关和零阶保持器,得到离散化状态空间模型。
(3)在c=0,0.1,0.5,1.0情况下,利用时域离散相似法编程完成对该系统的仿真研究。
(1)搭建simulink模型
编写脚本文件:
c=0;
h1=plot(tout,y,'k'); set(h1,'LineWidth',1) hold on ;
sim('lab3');
c=0.1;
h2=plot(tout,y,'r'); set(h2,'LineWidth',1) hold on ;
sim('lab3');
c=0.5;
h3=plot(tout,y,'b'); set(h3,'LineWidth',1) hold on ;
sim('lab3')
c=1;
h4=plot(tout,y,'m'); set(h4,'LineWidth',1) hold on;
sim('lab3');
grid
绘制出单位阶跃相应图像:
(2)输入程序求出状态空间模型
(3)编程实现离散相似算法
clc;
clear;
G=tf([8 10],[0.1 1 0 0]);
G1=ss(G);
T=0.01;
sysd=c2d(G1,T);
Ad=sysd.a;
Bd=sysd.b;
Cd=sysd.c;
Dd=sysd.d;
X=[0;0;0];
yt=0;tt=0;
R=1;
c=0;
M=10/T;
for k=1:M
E=R-yt(end); X=Ad*X+Bd*E; Y=Cd*X+Dd*E; if Y<=c
Y=Y+c;
elseif Y>=c
Y=Y-c;
else
Y=0;
end
yt=[yt,Y];
tt=[tt,k*T]; end
plot(tt,yt,'k')
1.c=0
2.C=0.1
3.C=0.5
4.C=1。