Matlab Pade 逼近对波特图和阶跃响应的影响

信息处理 matlab 控制系统 延迟
2022-02-24 09:40:47

我想通过 pade 近似来近似延迟。我通过指数项设置了正常延迟,并通过 pade 近似设置了延迟,我通过波特图和阶跃响应查看了两者之间的差异。这是完全不同的......所以这不是一个近似值......我的错误在哪里?

在此处输入图像描述

在此处输入图像描述

在此处输入图像描述

祝你今天过得愉快 :)

2个回答

您需要为阶跃函数正确选择时间向量。我怀疑 Matlab 无法自动为小延迟选择一个好的时间向量。

试试这个

close all;
clear all;
clc;

s = tf('s');

sys_retard = exp(-2E-6*s);
sys_retard_pade = pade(sys_retard, 3);

T = linspace(0, 10*2E-6, 1000);

figure(1);
output1 = step(sys_retard, T);
output2 = step(sys_retard_pade, T);
figure
plot(T, output1,'b', T, output2,'r');

在此处输入图像描述

编辑 :

为您的波特图尝试相同的操作。自己选择频率矢量并以良好的分辨率为目标。

Padé 逼近技术寻求找到一个有理传递函数,该函数与被逼近到尽可能多的项的函数的泰勒级数展开相匹配。 从 Matlab 手册的内容来看,看起来这就是该pade方法正在做的事情。

如果您希望近似值与波特图匹配,请使用不同的近似技术。如果您希望近似值与阶跃响应相匹配,还可以使用不同的技术。