简体   繁体   English

如何 plot 零点多于极点的系统的阶跃响应(不改变原始传递函数)

[英]How to plot step response of a system with more zeros than poles(Without changing original transfer function)

I am trying to plot step response of an electronic circuit(differentiator) using MATLAB but I get an error:我正在尝试使用 MATLAB 对电子电路(微分器)的 plot 阶跃响应,但出现错误:

Error using DynamicSystem/step (line 95)
Cannot simulate the time response of models with more
zeros than poles.

My code is below:我的代码如下:

R=47*10^3%resistance value
C=1*10^-6% capacitor value
den=[-1]%denominator of transfer function
num=[R*C 0]%numerator of transfer function
sys=tf(num,den)%transfer function expression of model/system
step(sys)%step response

How can I plot my graph without changing my original transfer function?如何在不更改原始传输 function 的情况下 plot 我的图表? Because if I change the original transfer function, it will become a new system.因为如果我把原来的转function改成新的系统。 However, I want to analyze original system.但是,我想分析原始系统。

I would try adding poles with very fast dynamic (going to -inf for continuous system, close to 0 for discrete).我会尝试添加具有非常快速动态的极点(对于连续系统,使用-inf ,对于离散系统,接近0 )。 This will make the system to meet the criteria and will have minimal impact on the system dynamic.这将使系统符合标准,并且对系统动态的影响最小。 But as for the step response you will probably have some spikes and maybe some nan will pollute your results.但至于阶跃响应,您可能会有一些尖峰,也许有些nan会污染您的结果。

What is a system with more zeros than poles?什么是零点多于极点的系统? You must have some derivatives in the response.您必须在响应中有一些衍生物。 What is the step response?什么是阶跃响应? Is the response of the system to a step input, and the step infput is not differentiable at t = 0 .是系统对阶跃输入的响应,并且阶跃输入在t = 0时不可微。 So, I would try to compute the response to another (differentiable) input.所以,我会尝试计算对另一个(可微分)输入的响应。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM