Unable to properly feedback an updated signal in simulink

7 ビュー (過去 30 日間)
Anthony Maalouly
Anthony Maalouly 2020 年 10 月 20 日
コメント済み: Anthony Maalouly 2020 年 10 月 20 日
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.

採用された回答

Ameer Hamza
Ameer Hamza 2020 年 10 月 20 日
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 件のコメント
Anthony Maalouly
Anthony Maalouly 2020 年 10 月 20 日
This works now, thank you!
Anthony Maalouly
Anthony Maalouly 2020 年 10 月 20 日

サインインしてコメントする。

その他の回答 (1 件)

Paul
Paul 2020 年 10 月 20 日
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 件のコメント
Anthony Maalouly
Anthony Maalouly 2020 年 10 月 20 日
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.

サインインしてコメントする。

カテゴリ

Help Center および File ExchangeGeneral Applications についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by