MATLAB离散控制系统

MATLAB离散控制系统仿真常用操作

1.离散传递函数构建

通过离散化连续时间传递函数得到

连续时间传递函数s函数用tf构建:

Gc=tf([1],[1 1 0]);%参数为分子分母降幂排列S的系数

对其离散化:通常在对象前面加上一个零阶保持器这里写图片描述

ans_zoh=c2d(Gc,1,'zoh')%添加零阶保持器离散化T=1
ans_imp=c2d(Gc,1,'imp')%或直接离散化T=1
%后者等效
ilaplace(1/(s^2+s))%拉普拉斯反变换
compose(ans,1*t)%T=1采样,t->T*t
ztrans(ans)%z变换
pretty(vpa(collect(ans)))%整理显示

2.性能分析

rlocus(ans_zoh);%根轨迹
bode(ans_zoh);%伯德图
nyquist(ans_zoh)%奈奎斯特图

查看系统根轨迹
可从根轨迹明显看到差异,非理想采样的加入降低了稳定性
MATLAB离散控制系统_第1张图片
奈奎斯特图:
MATLAB离散控制系统_第2张图片
伯德图:
红色:连续
蓝色:经zero保持器采样
黄色:经理想采样
MATLAB离散控制系统_第3张图片

先按照连续时间方法搭建系统
然后应用离散化工具,选择离散化方法,采样时间对模型离散化
MATLAB离散控制系统_第4张图片
MATLAB离散控制系统_第5张图片
MATLAB离散控制系统_第6张图片
仿真得到不同采样周期下的情况如下
T=1:
MATLAB离散控制系统_第7张图片
T=0.1;
MATLAB离散控制系统_第8张图片

你可能感兴趣的:(MATLAB)