Take a look and give me your opinion about how to break the Algebraic Loop

1 次查看(过去 30 天)
I present you in the attached documents a DC load modeled, but I do not know how to model it without produce a ALGEBRAIC LOOP when i try to sense at the same time the voltage variation from battery against the time, I produce a algebraic loop by a feedback, that's why i set in the rigth place where should be a path to the voltaje meter a constant block, but for it's condition (constant block) it will not register the variability from the DC voltaje than supply the load demand, but it runs, I know than i'm near to the answer, because i need collect the battery discharge in funtion of the consumption that is variable in funtion of the time, i also need to see the current variation in amperes per load consume, and the %SOC versus the time. I will show you both with with and without Algebraic Loop Please help me with this.
  2 个评论
Rakesh Chavan
Rakesh Chavan 2016-1-6
Hi,
I was trying to simulate your model however some variables are missing in the Init call back of the model are missing. Can you please share those as well so that we can simulate the model.
Tony Castillo
Tony Castillo 2016-1-8
t=60 Temp=1 E=1 This are the variables that are missing in the model, excusme for forget it, thanks for interest showed by it

请先登录,再进行评论。

采纳的回答

Dennis
Dennis 2016-1-7
Is a delay acceptable? The Simulink User Guide suggests it at Page 13-13 "Cyclic Data Dependency".
Try inserting it between the looped signal and an input to one block. Does it work?
  2 个评论
Tony Castillo
Tony Castillo 2016-1-8
I set a memory block (is that you mean with add a delay block?), and happen this errors, it does not work my friend
Dennis
Dennis 2016-1-21
编辑:Dennis 2016-1-21
You could try to include the memory block after the green box, or at another place. That error means that one of the signal changes suddenly like a step signal and hence, the derivative is non finite. If you cannot help yourself by altering the position of the delay, try to include a transfer function with a fast filter like nom [1] and den [0.001 1], it will smoothen out your derivative. However, that last suggestion is not perfect.
Also, you can try to use "unit delay" instead of the memory block, but that might not be your issue. If you found a solution, please tell us what worked out for you.

请先登录,再进行评论。

更多回答(1 个)

Walter Roberson
Walter Roberson 2016-1-7

类别

Help CenterFile Exchange 中查找有关 Nonlinear Operators 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by