Unable to properly feedback an updated signal in simulink

7 Ansichten (letzte 30 Tage)
Hello,
I'm trying to make a toy example work using simulink. I have a particle that i want to go in a circle. Basically what I want to do is to rotate progressively by 10 deg over 36 sec (so it makes a full circle).
How to code this in simulink? For the rotation, I used the 2d rotation matrix about z. I am basically having trouble feeding back the updated velocity as the new reference.

Akzeptierte Antwort

Ameer Hamza
Ameer Hamza am 20 Okt. 2020
If you directly feed it back, you will create an algebraic loop, which is sometimes difficult to solve. Feedback through a delay block https://in.mathworks.com/help/simulink/slref/delay.html. Give a delay of 1 between output and feedback input.
  4 Kommentare
Anthony Maalouly
Anthony Maalouly am 20 Okt. 2020
This works now, thank you!

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (1)

Paul
Paul am 20 Okt. 2020
Is there a reason why you wan to use a feedack loop where none really exists? Keep in mind that feedback loop is sampled and therefore the model is not integrating a continuous velocity. Why not just implement the equation for velocity directly, like so:
  1 Kommentar
Anthony Maalouly
Anthony Maalouly am 20 Okt. 2020
Yes there is a reason. Essentially, I want to use that feedback loop for a similar problem where I am controlling a particle and I want to add delta_v vectors under certain conditions. This toy example that I asked above simulated it well.
I do agree with you, one should not use feedback where no feedback is directly needed, and the solution above works as expected.

Melden Sie sich an, um zu kommentieren.

Kategorien

Mehr zu General Applications finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by