du/dt avoiding in system

6 views (last 30 days)
Marcel Büttner
Marcel Büttner on 28 Jun 2015
Commented: Marcel Büttner on 29 Jun 2015
Is there any possibility to solve
x = L*y*s + 2*y , without a du/dt block. ..
(x:output ; y:input)
Just e.g. integrators.
My system is very dynamic and du/dt would cause errors.
  6 Comments
Walter Roberson
Walter Roberson on 29 Jun 2015
Under what circumstances would you get an error from the du/dt block?
Marcel Büttner
Marcel Büttner on 29 Jun 2015
The values would rise too high. The simulation stops cause of infinity.

Sign in to comment.

Accepted Answer

Stefan
Stefan on 29 Jun 2015
Edited: Stefan on 29 Jun 2015
Two remarks here:
1. If you draw the Bode plot of the transfer function of the derivator, it looks like a line that ramps up with 20 dB/decade. In other words, for high frequencies it amplifies the signal (most likely it is a noise in this region). So, what you want is to avoid this phenomena, however keeping the derivator behavior for lower frequencies. In order to achieve this, replace your derivative block with a transfer function block:
where you have to choose tau sufficiently low. Notice that if tau = 0, then you end up with the derivator H(s) = s.
2. You say something about using integrators. This is possible if you solve your equation the other way around, namely you know x and want to calculate y. The dynamics of y is described by:
dy/dt = (1/L) (2y-x)
For this, you need to know the initial condition y(0) of your system, together with x(t). You code this equation in matlab or Simulink using an integrator block.
  2 Comments
Marcel Büttner
Marcel Büttner on 29 Jun 2015
Perfectly explained. Thanks Stefan
Marcel Büttner
Marcel Büttner on 29 Jun 2015
The second remark is not right for this question, cause your input is y and your output is x . As you explained I could only get y as an output value.

Sign in to comment.

More Answers (0)

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!