实验四离散相似法数字仿真
《车辆仿真技术》课程教学大纲
《车辆仿真技术》课程教学大纲Vehicle Simulation Technique学分:1.5 总学时:24 理论学时:24 实验/实践学时:0一、课程性质与任务《车辆仿真技术》课程是车辆工程专业的一门专业选修课,本课程共24学时,1.5学分,考查课。
《车辆仿真技术》主要介绍计算机建模和仿真技术的基本理论、方法及应用。
介绍连续系统、离散事件系统的数字仿真和具有前沿性的现代仿真技术,即面向对象的仿真技术、分布交互式仿真技术、虚拟现实技术和建模与仿真的VV&A技术;介绍目前在各领域应用越来越广泛的MATLAB和SIMULINK在计算机建模和仿真中的应用;介绍汇编语言和C语言在计算机仿真中的应用。
二、课程的基本要求学习本课程后,应达到下列基本要求:1.了解车辆计算机建模和仿真技术的基本理论、方法及应用;2.掌握面向对象的仿真技术、分布交互式仿真技术、虚拟现实技术和建模与仿真的VV&A技术。
三、先修课程先修课程:汽车构造、汽车理论。
四、主要参考教材[1] 徐宝云.《计算机建模与仿真技术》.北京:北京理工大学出版社,2007.五、课程内容(一)计算机建模和仿真的基本概念主要内容:系统与模型的概念;计算机仿真的概念;计算机仿真的组成和分类;计算机仿真的工作流程和仿真算法;计算机仿真技术的应用与仿真技术的发展趋势。
重点:计算机仿真的工作流程和仿真算法。
难点:计算机仿真技术的应用与仿真技术的发展趋势。
教学要求:介绍系统与模型的概念、计算机仿真的概念、计算机仿真的组成和分类、计算机仿真技术的应用与仿真技术的发展趋势,掌握计算机仿真的工作流程和仿真算法。
(二)系统数学模型与仿真技术主要内容:系统数学模型;连续系统的数学模型及其相互转换;离散时间系统的数学模型;数学模型在MATLAB中的实现。
重点:数学模型在MATLAB中的实现。
难点:离散时间系统的数学模型。
教学要求:了解系统数学模型、连续系统的数学模型及其相互转换、离散时间系统的数学模型,掌握数学模型在MATLAB中的实现。
第三章 离散相似法仿真
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
幅频特性
脉冲过渡函数
相频特性
控制系统数字仿真 要点
词汇表1. 解析法:就是运用已经掌握的理论知识对控制系统进行理论上的分析、计算。
它是一种纯理论上的试验分析方法,在对系统的认识过程中具有普遍意义。
2. 实验法:对于已经建立的实际系统,利用各种仪器仪表及装置,对系统施加一定类型的信号,通过测取系统的响应来确定系统性能的方法。
3. 仿真分析法:就是在模型的基础上所进行的系统性能分析与研究的实验方法,它所遵循的基本原则是相似原理。
4. 模拟仿真:采用数学模型在计算机上进行的试验研究称之为模拟仿真。
5. 数字仿真:采用数学模型,在数字计算机上借助于数值计算的方法所进行的仿真试验称之为数字仿真。
6. 混合仿真:将模拟仿真和数字仿真结合起来的仿真方法。
7. 数值计算:有效使用数字计算机求数学问题近似解的方法与过程。
数值计算主要研究如何利用计算机更好的解决各种数学问题,包括连续系统离散化和离散形方程的求解,并考虑误差、收敛性和稳定性等问题。
8. 病态问题:闭环极点差异非常大的控制系统叫做病态系统,解决这类系统的问题就叫病态问题。
9. 显式算法:在多步法中,若计算第k+1次的值时,需要的各项数据均是已知的,那么这种算法就叫做显式算法。
10. 隐式算法:在多步法中,若计算第k+1次的值时,又需要用到第k+1次的值,即算式本身隐含着当前正要计算的量,那么这种算法就叫做隐式算法。
11. 数值稳定性:数值积分法求解微分方程,实质上是通过差分方程作为递推公式进行的。
在将微分方程离散为差分方程的过程中,有可能将原本稳定的系统变为不稳定系统。
如果某个数值计算方法的累积误差不随着计算时间无限增大,则这种数值方法是稳定的,反之是不稳定的。
12. 实体:就是存在于系统中的具有实际意义的物体。
13. 属性:就是实体所具有的任何有效特征。
14. 活动:系统内部发生的任何变化过程称之为内部活动;系统外部发生的对系统产生影响的任何变化过程称之为外部活动。
15. 描述模型:是一种抽象的、无实体的,不能或者很难用数学方法精确表示的,只能用语言描述的系统模型。
《计算机仿真技术》报告
《计算机仿真技术》实验报告实验一 数字仿真方法验证一、实验目的1.掌握基于数值积分法的系统仿真、了解各仿真参数的影响; 2.掌握基于离散相似法的系统仿真、了解各仿真参数的影响; 3.掌握SIMULINK 动态仿真;4.熟悉MATLAB 语言及应用环境。
二、实验环境网络计算机系统,MATLAB 语言环境三、实验内容、要求(一)试将示例1的问题改为调用ode45函数求解,并比较结果。
示例1:设方程如下,取步长 h =0.1。
上机用如下程序可求出数值解。
调用ode45函数求解: 1)建立一阶微分方程组 du=u-2*t/u2)建立描述微分方程组的函数m 文件 function du=sy11vdp(t,u) du=u-2*t/u3)调用解题器指令ode45求解y[t,u]=ode45('sy11vdp',[0 1],1) plot(t,u,'r-'); xlabel('t'); ylabel('u'); 结果对比:euler 法:t=1,u=1.7848; RK 法:t=1,u=1.7321; ode45求解:t=1,u=1.7321;[]1,01)0(2∈⎪⎩⎪⎨⎧=-=t u u t u dt duode45求解t-u 图:00.10.20.30.40.50.60.70.80.9111.11.21.31.41.51.61.71.8tu(二)试用四阶RK 法编程求解下列微分方程初值问题。
仿真时间2s ,取步长h=0.1。
⎪⎩⎪⎨⎧=-=1)0(2y t y dt dy 四阶RK 法程序:clear t=2; h=0.1; n=t/h; t0=0; y0=1;y(1)=y0; t(1)=t0;for i=0:n-1 k1=y0-t0^2;k2=(y0+h*k1/2)-(t0+h/2)^2; k3=(y0+h*k2/2)-(t0+h/2)^2 k4=(y0+h*k3)-(t0+h)^2;y1=y0+h*(k1+2*k2+2*k3+k4)/6; t1=t0+h; y0=y1; t0=t1;y(i+2)=y1; t(i+2)=t1;end y tplot(t,y,'r'); 结果:t=2,y=2.61090.511.522.511.21.41.61.822.22.42.62.83:(三)试求示例3分别在周期为5s 的方波信号和脉冲信号下的响应,仿真时间20s ,采样周期Ts=0.1。
离散相似法
第五章 连续系统离散相似法数字仿真上一章讲的数值积分法,其结果得到的是递推公式。
其出发点不是建立一个与被仿真的连续系统等价(某种误差意义下)的离散模型,而是建立在数值计算的基础上,即对积分进行数值计算(某种求和计算)。
或从另一角度说,对微分算子s(以一阶微分方程为对象) 找更好的替代方法。
所得的公式,只是这种思路的结果。
也就是说,人们为了计算方便,将其设法整理成了递推公式,递推公式在固定步长的情况下,就变成了通常所用的常系数的差分方程,可用z变换与频域联系起来(也正因为这点,使其结果从形式上与离散相似累积法类似)。
对这种方法精度的分析,是从截断、舍入误差累积角度进行的。
其改进思路,是减小这两种误差。
时域看失真。
可为线性系统,也可为非线性系统。
离散相似法的出发点与数值积分法不同。
它的出发点在于:采样系统可用差分方程 和z变换来描述,而用计算机求解差分方程式很方便的(差分方程可看作多步法递推公式)。
所以,设法找到一个采样系统,使其输入—输出值与被仿真的连续系统在采样时刻的值近似相等。
这个采样系统称为连续系统的离散等价模型(二次模型、仿真模型)。
从此模型,可得出原系统的一系列值。
“等价”程度的高低,就是此法的精度问题。
所以精度分析从保持器引入的幅度与相位失真进行。
频域看失真。
只有线性时,才可列出整个系统的差分方程。
上述二法从结果(即所得递推公式)看有某种相似性。
所以精度稳定性等的解释可互换借鉴。
改进思路的不同,可看作看问题的角度不同(或出发点不同)而已。
因角度等价手段不同,各自能达到的“等价”程度也就有差别。
小结:1.数值积分法:出发点: 对积分进行数值计算,对微分算子s找更好的替代方法。
结果: 递推公式。
定步长时,为差分方程。
精度分析: 从截断、舍入误差累积角度进行。
时域看失真。
2.离散相似法:出发点:出发点与数值积分法不同。
用计算机解差分很方便,找一个采样系统,使其I-O值与被仿真连续系统(在采样时刻)近似相等。
计算机仿真教案04-2-第四章 离散相似法的连续系统仿真
G (Z ) Z { 1 e sT G (s) }(1 z 1 )Z { G (s)}
s
s
通过脉冲传递函数导出系统差分方程
脉冲传递函数在大多情况下是z的有理分 式,即可表示为
G (z) U Y ( (z z) )b 1 0 a b 1 1 z z 1 1 a b 2 2 z z 2 2 a b p m z z p m
对其进行拉氏变换:
L [f ( t) ] F (s ) L k 0f(k T )( t k T ) k 0f(k T )e k T s
令 z e T s , 则 上 式 变 为 Z [f ( t) ] F (z )f( k T )z k k 0 此式称为采样函数 f ( t ) 的Z变换。
z1
1 2j
1
1 e jT
z1
z1 sinT
z1 sinT
1e jT z1 e jT z1 z2 1 2z1 cosT z2
Z变换的性质
线性性质 延迟定理 超前定理 复位移定理 初值定理 终值定理 卷积和定理
线性性质
若 : Z [f1 *(t)]F 1(z),Z [f2*(t)]F 2(z),
s s 1
1
解: L[sint] 2 j 2 2 2 j 2 j 2 j
s2 2
s2 2
s j s j
因为 所以
L1
s
1
j
e
j
(t
)
F(z)
z
s2
2
1 2j
钱雪军-第4章 连续系统仿真——离散相似法2
◆本章将从连续系统离散化的角度出发,建立连续系统模型的等价离散化
模型,并用采样系统的理论和方法介绍另一种常用的仿真算法。这种算法 使得连续系统在进行(虚拟的)离散化处理后仍保持与原系统“相似”,故 称之为离散相似算法。
◆与数值积分算法相比,离散相似算法的每步计算量要小得多,允许采
用较大的计算步长。然而,它通常只适合线性定常系统的仿真,具有一 定的局限性。
U(s) s
系统微分方程为 dy(t) = u(t)
dt
将一阶导数用一阶前向差分近似 dy(t) = y[(k +1)T ] − y(kT ) = u(kT )
dt t=kT
T
或写成 y(k +1) − y(k) = Tu(k)
∫ 用积分:
(k +1)T
y[(k +1)T ] − y(kT ) =
u(t)dt ≈ Tu(kT )
T z = 1+ sT = 1+ σT + jωT , z 2 = (1+ σT )2 + (ωT )2
对于z平面上的单位圆(及稳定域)有 z 2 = 1 ,故
(1+ σT )2 + (ωT )2 = 1 jω [s]
(σ + 1 )2 + ω 2 = ( 1 )2
T
T
jω
[z]
−2
−1
0σ
T
T
−1
(4 + 0.4T + T 2 ) y(k + 2) + (2T 2 − 8) y(k +1) + (4 − 0.4 + T 2T ) y(k) = T 2u(k + 2) + 2T 2u(k +1) + T 2u(k)
仿真技术实验程序及思考题解答(仅供参考)
实验一 连续系统的数字仿真一、实验目的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章 连续系统仿真——离散相似法2
4.2.2 保持器
系统辨识与仿真
通过保持器对采样后输入信号的重构,通常可采用三种类型的保持器。
◨ 零阶保持器
◨ 一阶保持器
◨ 三角保持器
▶三种保持器比较:零阶保持器最简单,但重构信号的误差较大; 三角保持器最复杂,恢复信号的失真最小。
▶常用的还是零阶或一阶保持器,特别是零阶。
零阶保持器
u(t)
t0
u(t)
u*(t)
保持器
T
uk(t) x(t) = Ax(t) + Bu(t) x(t)
x*(t)
T
图4.2 状态空间模型离散化原理结构图
4.2.1 采样定理
系统辨识与仿真
采样频率ωs大于或等于两倍的采样器输入连续信号e(t)频谱 中的最高频率ωmax。即ωs>=2ωmax,这就是香农采样定理。
抽样频率小于模拟信号最好频率的2倍会造成频谱混叠 。
比较G(z)与G(s),可以得到置换关系 s ≈ 2 ( z −1) T (z +1)
映射关系
系统辨识与仿真
1+ Ts
考虑到
z
≈
1
−
2 Ts
将 s = σ + jω 代入上式,可得
2
1+ Ts 1+ T (σ + jω) 1+ T σ + j T ω
(1+ T σ )2 + (T ω)2
z
≈
2 1− Ts
◆为了使输入信号u(t)离散化后仍能保持原来的变化规律, 在输入采样开关后设置信号保持器(亦称为信号重构器), 复现原输入信号u(t),其结构如图4.1。
u(t)
u*(t) 保持器
实验四离散相似法数字仿真
实验四离散相似法数字仿真【实验目的】掌握离散相似法仿真方法【实验内容】用离散相似法仿真程序(参考课本sp4-4m)重现下图输出Y1的数据和曲线,并与四阶龙格一库塔法比较精度。
【实验的程序】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);elseW(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);%若为积分比例,修正dFID(i)=D(i)/B(i);else %求惯性环节或惯性环节比例系数end;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); %若为惯性比例环节修正 c dFIM(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);elseend;end;end;%求输入作用Y=zeros(n,1);X=Y;y=0;Uk=zeros(n,1 );Ub=Uk;%置初值t=T0:h:Tf;N=length(t);%建立时间序列向量 n维for k=1:N-1Ub=Uk;%保存当前一次输入值Uk=W*Y+W0*Y0;%保存当前ukUdot=(Uk-Ub)/h;%求当前uk导数Uf=2*Uk-Ub;%求下一步输入ufX=FI'.*X+FIM'.*Uk+FIJ'.*Udot;%点运算求取状态和输出Y=FIC'.*X+FID'.*Uf;y=[y,Y(Nout)];end;figure(1)plot(t,y,'g')hold以下运用龙格-库塔法实现: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;figure(2)[T',y'];%输出plot(T,y,'r');%绘图axis([0 5 0 350])实验的结果如下:运用离散化的方法得到的结果运用龙格-库塔方法得到的结果【实验总结:】。
离散相似法仿真
实验名称:将传递函数为s s 2612 的环节与单位反馈组成系统,将其离散化1.实验原理1 )离散相似法 所谓离散相似法,就是将一个连续系统进行离散化处理,从而得到等价的系统离散模型,此种方法按系统的动态结构图建立仿真模型。
在计算过程中,按各典型环节离散相似模型,根据环节的输入来计算环节的输出。
2) 环节的离散化模型将连续系统按下图所示对其进行离散化处理,在系统的输入、输出端加上虚拟采样开关,T 为采样周期。
为保证输入信号复现原信号,在输入端加上一个保持器。
使用零阶保持器,可得到离散化状态方程的解:3) 仿真算法实现过程当给定连续系统的动态结构图后,将其等效为各典型环节的组合,按前面讨论的典型环节离散系数 表达式,经程序处理,事先将各环节的类型、参数、初始条件、各环节连接关系矩阵、输入输出连接矩阵等参量送入程序中,既可通过离散相似的模型求出在特定信号作用下,系统中各环节输出变量的变化情况,从而得到系统的仿真结果。
3.实验方案1)连续系统的结构图这是一个单位反馈的二阶系统。
2)引入采样开关将其离散Zero-Order (零阶保持器)及采样开关对系统进行离散化,采用状态转移法进行离散化3)将传递函数转化成状态方程并对其进行离散化传递函数 1261)()()(2++==s s s U s Y s G 变形得)()()(2)(62s U s Y s sY s Y s =++假设其为零状态响应取Laplace 反变换得u y y y =+''+''26将其转变成状态方程有u x x ⎥⎦⎤⎢⎣⎡+⎥⎥⎦⎤⎢⎢⎣⎡--=10016131x y ]01[=通过求矩阵指数及相关变化将状态方程离散化得)(]01[)()()()1(k u k y k Bu k x A k x =+=+由于矩阵A ,B 过于复杂,这里简写,详细表达式见后面程序4.实验程序1)由传递函数求状态方程建立传递函数并转化为状态方程clearclcA = tf2ss([1],[6 2 1]) %建立传递函数模型%并转化为状态方程运行结果:2)将状态方程离散化对应脚本程序:A =[-1/3 -1/6;1 0] %syms s tB= [s 0;0 s] % SID = inv(B-A) %求逆矩阵AI = ilaplace(D,s,t)%laplace 变换 求A 阵BI = AI*[0 ;1]BI =int(BI,'0','t') %积分求B 阵pretty(AI) %A 转化陈易读形式。
第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
离散相似模型的精度分析
保持器的影响
零阶保持器可无失真地重构阶跃信号 一阶保持器可无失真地重构斜坡信号 但与理想保持器特性有差别
离散相似法
3.1时域离散相似法的基本原理
仿真计算过程:
原连续系统 离散后系统
输入信号 u(t) uh(kT)
2012-12-17
3-0 离散控制系统基本原理
3-0 离散控制系统基本原理
4 离散控制系统:
5 x(t) 和 x(kT) 的数学描述
系统中既含有连续信号[x(t), e(t), u(t)],又含有采样 信号[x*(t)]或者数字信号[x(kT), u(kT)]的系统。 离散控制系统是由连续的控制对象、离散的控制器、 采样器和保持器等几个环节所组成。
控制系统建模与仿真 rjliu@ 19
1.连续系统的离散化:微分方程-》差分方程
Ax Bu, x y Cx Du x (0) x0 , t 0
2012-12-17
2012-12-17
控制系统建模与仿真 rjliu@
20
对系统进行离散化:(T为采样周期)
控制系统建模与仿真 rjliu@ 5 2012-12-17 控制系统建模与仿真 rjliu@ 6
2 采样信号 x*(t)
3 数字信号 x(kT)
2012-12-17
北京交通大学
1
控制系统建模与仿真 rjliu@
3-0 离散控制系统基本原理
数值积分的计算,是根据计算步长h,一步一步的逐步计 算,得到t1,t2, …,tk (采样点)的数值x1, x2,…, xk 。 对原连续的系统进行了离散化处理。求解时,用一个等价 离散模型,代替原连续系统。 在自动控制领域,随着计算机的引入和广泛应用,形成了 一套系统的理论——计算机控制(离散控制,数字控制)。 我们可以从连续系统离散化的角度出发,用控制理论中采 样和信号重构的理论,建立离散模型,并用计算机控制的 理论分析计算。 离散后的系统和原来的连续系统是相似的(输入输出信号 在采样点上是近似相等的),所以叫做离散相似法。
7.离散相似法仿真
7.2
典型环节的离散模型
按照前面的讨论,我们将常见的典型环节由传递函数表 达式推导出其离散系数及离散状态方程。
7.2.1 典型线性动态环节 ˆ (T ) Φ Φ m (T ) , Φ(T ) , m 的计算
• 典型线性动态环节有:积分、比例积分、惯性、超前-滞 后、比例五种。均以(Ci+Dis)/(Ai+Bis)形式描述。根据每种 情况的Ai,Bi,Ci,Di取值,确定分别所对应的线性环节 类型,进而计算出该环节的状态转移矩阵的值,包括下面 几个。
离散相似法仿真
本章主要教学内容
离散相似法原理 典型环节的离散模型 线性系统离散相似法仿真 非线性系统离散相似法仿真 采样系统仿真分析
7.1
7.1.1 仿真算法描述
离散相似法原理
所谓离散相似法,就是将一个连续系统进行离散化处理, 从而得到等价的系统离散模型,此种方法按系统的动态结 构图建立仿真模型。 在计算过程中,按各典型环节离散相似模型,根据环节 的输入来计算环节的输出。 1. 环节的离散化模型 将连续系统按图7-1所示对其进行离散化处理,在系统的 输入、输出端加上虚拟采样开关,T为采样周期。为保证输 入信号复现原信号,在输入端加上一个保持器。
Ts = 10 T
如果给定系统开环截止频率时,系统的采样周期也可 以按下式进行选择:
1 Ts = (30 ~ 50)ω c
2.
保持器特性对仿真精度的影响
为使经采样后的信号无失真地复现,要在系统中加入保持器。虽然零
阶保持器比较容易实现,但其精度较低。为了提高控制精度,可以采用 三角保持器,它复现信号的高频部分失真较小,并且无相位滞后,可以 得到比较满意的结果。 此外,为了提高精度还可以采用校正补偿措施,在离散模型中加入 一个确定的校正环节,适当调整参数,可使离散模型尽可能地接近原型。
第4-1章 时域离散相似法Matlab编程
当T=0.1时,计算结果与c2d函数得 到的结果一致。
3
4.2 针对离散状态空间模型的仿真程序
离散状态空间 模型为
x[( k 1)T ] Gx (k T) Hu (k T) y (k T) Cx(k T) Du (k T)
对此模型编写仿真程序,只需要按模型方程迭代即可。 function [t,y]=w_DiscreteSimu(tstart,tstop,h,x0,u0,G,H,C,D) % 函数功能:对线性离散系统x(k+1)=G*X(k)+H*u(k), y(k)=C*x(k)+D*u(k)进行仿真 % 输入参数:tstart, tstop,h 分别是起始时间、结束时间和仿真步 % 长,是标量 % x0,u0是状态、输入的初值,都是列向量 % G,H,C,D是线性离散状态空间模型的系数矩阵 % 输出参数:t是仿真结果的时间序列 % y是仿真结果系统的输出序列
5
【例4.2.1】对下面的连续系统,采用数值积分法和离散相似法仿真。
2 G( s) 2 s 3s 2
解:该系统连续状态空间模型矩阵为
1 0 0 A 2 3 , B 1 , C 2 0
其离散状态空间模型矩阵为
2e T e 2T G (T ) 2T T 2e 2e
12
function [t,p]=w_DisNodesSimu2(tstart,tstop,h,x0,y0,r0,W,W0,G,H,C,D,Q)
t=[tstart:h:tstop];%t数一个行序列 cntt=size(t,2);%返回列数 cnty=size(Q,1);%返回y的维数 p=zeros(cnty,cntt);%构造一个空矩阵,用来存储结果 p(:,1)=Q*y0; % for i=1:1:cntt-1 u=W*y0+W0*r0; x0=G*x0+H*u; y0=C*x0+D*u; p(:,i+1)=Q*y0 ;%将y0作为输出的第1列 end
自动控制系统仿真离散相似法算法的改进
自动控制系统仿真离散相似法算法的改进自动控制的发展已经成为现代工程工作的一个必要部分,系统仿真也成为了许多项目的重要环节。
然而,仿真的准确性和效率却成为了人们关注和追求的目标。
离散相似法是目前仿真中常用的一种方法,而其算法的改进也一直是研究的焦点。
本文介绍离散相似法算法改进的相关信息,包括原理、目的、方法和效果等方面。
1. 原理离散相似法是一种将实际工程中的连续系统仿真成离散系统的一种方法,是工程仿真中最常用的方法之一。
离散相似法的基本原理是利用与实际系统的定义特性相同的代理模型以及在系统状态变化点上的数据来重构系统。
其原理如下:(1) 基于实际系统定义特性的代理模型代理模型是实际系统的模拟模型,在仿真中被用来模拟实际系统的动态行为。
它的定义特性应与实际系统的定义特性相同,且其输入输出特性应能仿真实际系统的输入输出行为。
通常,这种输入输出特性可能包括时间延迟、频率响应、非线性特性以及各种噪声特性等内容。
(2)基于系统状态变化点上的数据的重构操作系统状态变化点是指仿真过程中离散系统状态向连续系统状态的转化点。
在这些状态变化点处,数据被采样并分析,被用来确定仿真过程中的离散系统参数,包括时延、频率响应等内容。
这些参数被用来重构仿真过程中的连续系统,并最终用于评价仿真结果。
这种操作可以保证仿真结果与实际系统间的相似性并提高仿真的准确度和效率。
2. 目的离散相似法算法的改进,主要是为了提高其仿真效率和准确性,是一个基于最优控制方法的研究方向。
主要目的包括:(1) 改进仿真精度离散相似法算法需要保证仿真精度,在模型参数的测定以及模型拟合方面采用多种优化控制方法,从而实现最优参数测定和最优模型拟合,减少误差的产生,达到最佳仿真效果。
(2) 优化计算过程随着计算技术的发展,优化计算过程成为了提高仿真速度的重要手段。
离散相似法算法的改进直接关系到仿真计算的速度和效率。
因此,在研究离散相似法的改进时,优化计算过程也成为了关注的焦点。
4.3离散相似法
x( n
1)
e aT
x( n
)
k a
(1
e aT
)u( n )
k a2
( eaT
1)
k a
T u( n
)
y(n 1) (b a)x(n1) ku( n 1)
2022/1/12
33
第33页,共40页。
三、状态转移矩阵的计算
(1)解析计算(拉氏逆变换)
利用定义 (T ) eAT L1[(sI A)1] 进行求解
2022/1/12
12
第12页,共40页。
h0(t)
h0(t)
1
1
0
Tt
0
Tt
-1
a
b
零阶保持器的特性:
g0 (t) 1(t) 1(t T )
➢ 对采样值既不放大, 也不衰减
➢只能不增不减地保 持一个采样周期
2022/1/12
保持器的传递函数:
1 eTs 1 eTs G0 (s) s s s
b
k
/
s
系统模拟结构图: u
s
y
b
状态空间模型: X kU Y X bU
A 0, B k
离散状态空间模型:x(n 1) x(n) kTu(n) 0.5kT2u(n)
y(n 1) x(n 1) bku(n 1)
2022/1/12
31
第31页,共40页。
(3)惯性环节
传递函数: G( s ) Y ( s ) k k 1 / s U(s) s a 1 a / s
0 1
0 0
1 1
s 0
1 s 1
(sI
A)1
1 s(s 1)
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验四离散相似法数字仿真
【实验目的】
掌握离散相似法仿真方法
【实验内容】
用离散相似法仿真程序(参考课本sp4-4m)重现下图输出Y1的数据和曲线,并与四阶龙格一库塔法比较精度。
【实验的程序】
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:m
if
(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:n
if(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);%若为积分比例,修正d
FID(i)=D(i)/B(i);
else %求惯性环节或惯性环节比例系数
end;
else
FI(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); %若为惯性比例环节修正 c d
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);%建立时间序列向量 n维
for k=1:N-1
Ub=Uk;%保存当前一次输入值
Uk=W*Y+W0*Y0;%保存当前uk
Udot=(Uk-Ub)/h;%求当前uk导数
Uf=2*Uk-Ub;%求下一步输入uf
X=FI'.*X+FIM'.*Uk+FIJ'.*Udot;%点运算求取状态和输出
Y=FIC'.*X+FID'.*Uf;
y=[y,Y(Nout)];
end;
figure(1)
plot(t,y,'g')
hold
以下运用龙格-库塔法实现:
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:N
k1=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;
figure(2)
[T',y'];%输出
plot(T,y,'r');%绘图
axis([0 5 0 350])
实验的结果如下:
运用离散化的方法得到的结果运用龙格-库塔方法得到的结果【实验总结:】。