MATLAB Answers

Algebraic loop problem in attitude control

3 views (last 30 days)
Gianmarco Morelli
Gianmarco Morelli on 23 Oct 2020
Commented: Gianmarco Morelli on 28 Oct 2020
Hi,
I am working on the attitude control of a spacecraft with flexibles appendages, but my simulink model return an algebraic loop warning, and I think it could be the reason of the error in the control.
I can run the simulation but the quaternions, after a first moment of correct trend, start a constant oscillation (i link the picture of the trend).
So I reach the right quaternion value but then i start oscillating. All the suggestions are welcome.
I have already tried with a memory block or a delay block to break the loop, but the simulation can't work in this way.
I link also the equations that bring to the algebraic loop.
Thank you for the help!

  3 Comments

Mathieu NOE
Mathieu NOE on 23 Oct 2020
hello
what solver and options are you running ?
Gianmarco Morelli
Gianmarco Morelli on 23 Oct 2020
Hello,
I am using ode 45 (Dormand-Prince) and the simulation time lenght is 1000.
Mathieu NOE
Mathieu NOE on 23 Oct 2020
do you want to share your code and simulink file ?

Sign in to comment.

Answers (1)

Amrtanshu Raj
Amrtanshu Raj on 27 Oct 2020
Hi,
You can refer to this to understand the execution order of the simulink blocks and edit your model so that you no longer get the algebric loop. In most cases simulink itself will solve the algebric loop iteratively. I would also advice you to look into your model if there is some other error which is causing the oscilations.

  1 Comment

Gianmarco Morelli
Gianmarco Morelli on 28 Oct 2020
Hi,
I think that the error could be outside the algebraic loop, did you have any idea of which could be the problem?

Sign in to comment.

Community Treasure Hunt

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

Start Hunting!