errors while implementing a fuzzy logic controller with feedback ...
5 ビュー (過去 30 日間)
古いコメントを表示
hi i have a simple temperature control simulink model which I am trying to control using fuzzy logic controller. One input (error between the desired and actual temperature) and one output (control voltage of heater).. however i am getting tons of errors while simulating, some which are:
1. "Input data dependency violation due to action subsystems. See Subsystem Examples in the Simulink library for valid and invalid examples of action subsystems" 2. Input ports (Action) of ".. my model path... " are involved in the loop
there are plenty of more errors all mentioning the "involved in the loop"issue. if i remove the feedback loop and just provide some random no. as my error variable then everything works fine.
any ideas on what might be going wrong ? any suggestions ?
thanks, dipan
0 件のコメント
回答 (3 件)
Vidhya Dharshini
2014 年 2 月 4 日
Try including a memory block or a delay block in feedback loop.....then the system will work fine.
0 件のコメント
Shashank
2016 年 12 月 30 日
This may be a case of Algebraic loop formed. Basically, algebraic loops occur when an input port with direct feedthrough is driven by the output of the same block, either directly, or by a feedback path through other blocks which have direct feedthrough.
Algebraic loops are difficult to solve mathematically. Simulink does have algebraic loop solvers that will attempt to resolve this situation iteratively and give the correct answer, which in a lot of cases it does.
You can try placing unit delay blocks before the inputs of Fuzzy Logic Controller.This will avoid the Algebraic loop.
2 件のコメント
Prana
2022 年 6 月 30 日
Although an old question, I am also facing the same issue. Kindly give more details about adding this delay block
参考
カテゴリ
Help Center および File Exchange で Fuzzy Logic in Simulink についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!