MATLAB离散控制系统

版权声明: https://blog.csdn.net/leida_wt/article/details/78750440

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)%奈奎斯特图

查看系统根轨迹
可从根轨迹明显看到差异,非理想采样的加入降低了稳定性
这里写图片描述
奈奎斯特图:
这里写图片描述
伯德图:
红色:连续
蓝色:经zero保持器采样
黄色:经理想采样
这里写图片描述

先按照连续时间方法搭建系统
然后应用离散化工具,选择离散化方法,采样时间对模型离散化
这里写图片描述
这里写图片描述
这里写图片描述
仿真得到不同采样周期下的情况如下
T=1:
这里写图片描述
T=0.1;
这里写图片描述

猜你喜欢

转载自blog.csdn.net/leida_wt/article/details/78750440
今日推荐