matlab中对连续系统进行采样,控制系统仿真及MATLAB语言 第四章 连续系统的离散化方法.ppt...

控制系统仿真及MATLAB语言第四章连续系统的离散化方法整理

解: 令 y1=x,y2=x’ 1、建立M-文件vdp.m如下: function dy=vdp(t,y) dy=zeros(2,1); dy(1)=y(2); dy(2)=2*(1-y(1)^2)*y(2)-y(1); 2、取t0=0,tf=20,输入命令: [T,Y]=ode45(‘vdp’,[0 10],[1;1]); plot(T,Y(:,1),'-‘, T,Y(:,2)) 3、结果 解 1、建立m-文件rigid.m如下: function dy=rigid(t,y) dy=zeros(3,1); dy(1)=y(2)*y(3); dy(2)=-y(1)*y(3); dy(3)=-0.51*y(1)*y(2); 2、取t0=0,tf=12,输入命令: [T,Y]=ode45('rigid',[0 12],[0 1 1]); plot(T,Y(:,1),'-',T,Y(:,2),'*',T,Y(:,3),'+') 3、结果如图 图中,y1的图形为实线,y2的图形为“*”线,y3的图形为“+”线. 4.2 数值算法的稳定性及求解原则 1.数值算法的稳定性 特征根在s平面的左半平面,系统稳定。 (1)欧拉法:     稳定: (2)梯形法: 恒稳 2.数值算法的选择原则 Matlab提供了微分方程数值求解的一般方法,作为仿真算法的使用者,可不必考虑算法具体实现,而应关心各种方法在使用中会出现的问题,以及如何在仿真中恰当的选用这些方法. 一般,选用数值算法从以下几个方面考虑: (1)精度  受算法和h影响    截断误差+舍入误差=累计误差 (2)计算速度   受算法和h影响   算法简单,速度就快些。 (3)稳定性 受h影响,一般 h≤(2-3)τ 系统最小时间 4.3 数值算法中的“病态”问题 1 “病态”常微分方程 例: 其中 采用四阶龙格库塔法 h=0.01时,计算时间长 h=0.04时,误差很大 当h>0.05后,曲线发散振荡,数值不稳定,完全失去意义 系统矩阵的特征值差异较大 一般线性常微分方程组: 的系数矩阵A的特征值具有如下特征: 则称为“病态”方程。 定义: 2 控制系统仿真中的“病态”问题 1 病态系统中绝对值最大的特征值对应于系统动态性能解中瞬态分量衰减最快的部分,它反映了系统的动态响应和系统的反应灵敏度。一般与系统中具有最小时间常数Tmin的环节有关,要求计算步长h取得很小。 2 病态系统中绝对值最小的特征值对应于系统动态性能解中瞬态分量衰减最慢的部分,它决定了整个系统的动态过渡过程时间的长短。一般与系统中具有最小时间常数Tmax的环节有关,要求计算步长h取得很大。 3 对于病态问题的仿真需要寻求更加合理的算法,以解决病态系统带来的选取计算步长与计算精度,计算时间之间的矛盾。 3 “病态”系统的仿真方法 采用稳定性好,计算精度高的数值算法,并且允许计算步长能根据系统性能动态变化的情况在一定范围内作相应的变化,采用隐式吉尔法 该法已经证明对病态方程求解过程是数值稳定的。 隐式吉尔法从理论上十分适应于病态系统 ,但需要解决好以下问题 (1) 自启动 r阶多步算式无法自启动,需要用单步法求出前r步值 (2) 预估迭代 迭代方法要求收敛性良好,否则在大步长时会造成数 值发散。 (3) 变步长 初始阶段采用小步长,随后可逐步放大步长。 对不同精度要求的系统仿真,要考虑变阶次问题,即为减小每一步计算的截断误差,以提高精度,应选用较高的阶次,而当精度较低时,为减少工作量,则应选取较低的阶次。仿真时应根据估计误差 与给定的误差精度相比较改变步长或阶次来重新计算。 4.4 连续系统状态方程的离散化  上章所述的连续系统数学模型的离散化,是通过数值积分法实现的,尽管面向结构图的仿真方法是按环节给定参数,但是在计算时还是按整个系统进行离散化,这就不便于引进非线性环节以进行非线性系统的仿真。在本节,将介绍连续系统离散模型的建立和仿真。 数值积分法叠代求解 h改变时,叠代过程重复求解,费时繁琐 不能对非线性环节单独考虑。 连续系统离散化 思想:用差分方程描述连续系统的状态方程模型 (因为差分方程的主要特点就是方程中各变量由各相邻时刻的变 化量制约,这相当于递推方程) 1、连

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值