我希望我能很好地解释我的问题,
假设我有一个闭环控制系统,并且我知道给定的物理对象Gp (补偿器和反馈传递函数是1)。问题是检查系统是否可以完美地跟踪2 rad/sec的频率。查看'Gp'(s=jw)|w=2并在T(s)=1/(s^2+5)中进行替换,我们可以看到它是1,并且可以很好地跟踪它,但T(s)本身并不稳定。假设我可以在Matlab中检查它,并看到(T(s)的)输出图没有跟踪w=2的输入(输出和输入图在同一张图上)。
我该如何编写代码来重现这种情况呢?(有人建议使用lsim,但我不能完全理解它)谢谢!
发布于 2016-05-09 08:33:04
从你的问题中不太清楚T(s)是什么,但我将从上下文中假设它是闭环传递函数,即T = Gp / (1 + Gp)。
T的极点是纯虚构的(+-j*sqrt(5)),因此T是“边缘稳定的”,或者更直观地说,你可以把它想象成弹簧上的质量-振荡器。
要回答这个闭环系统是否能完美地跟踪给定的输入正弦信号的问题,这取决于你对“完美”的标准是什么。
您提到在w = 2的稳态增益(T(jw)的幅度)是1,但是它的相位是什么?在MatLab中,尝试:
T = tf([1], [1, 0, 5]); % numerator = 1, denominator = 1s^2+0s+5 bode(T);
查看某一w范围内的幅值和相位图。https://www.wolframalpha.com/input/?i=bode+1%2F(s%5E2%2B5)
相位延迟对于除零以外的每个频率都是非零的(即,恒定输入)。这总是“弹簧上的质量”的情况;惯性导致它总是滞后于力函数。
有一个非零相位延迟意味着你的输出将不会“完美”跟踪你的输入。要查看这是什么样子,请尝试:
t = [0:0.001:10]; % array of times to compute simulation r = sin(2*t); % input to the closed loop system lsim(T, r, t); % simulate system T with input r for t seconds
https://stackoverflow.com/questions/36634006
复制相似问题