fuzzy pid cotroller is not converging to a reference point while pid controller converges for the same scenario

3 ビュー (過去 30 日間)
I am trying to implement fuzzy pid controller in simulink as uploaded at
Fuzzy controller has two inputs, error and derivative of error and 3 outputs Kp, Ki, Kd. Problem is that if I run this program in ode 45 it gets stuck and if I run in ode 4 it gives me wrong output. However for the same state space and same values of Kp, Ki, Kd obtained through fuzzy controller if I make another program not involving fuzzy controller but having only PID controller then I get the perfect converging output. Can anyone please please guide me what is the reason behind this.

採用された回答

Arkadiy Turevskiy
Arkadiy Turevskiy 2013 年 2 月 1 日
Is Fuzzy Logic Controller always creating just constants for Kp, Ki, and Kd? If not, then the results would be expected to be different from a PID controller with fixed gains.
Another suggestion is not to use a pure derivative block, and instead use implementation of a derivative signal as discussed here.
HTH.
Arkadiy
  1 件のコメント
Beenish Mazhar
Beenish Mazhar 2013 年 2 月 3 日
Sir I think you are suggesting to implement pid in the way as I have uploaded at: http://tinypic.com/view.php?pic=e2io3&s=6 but implementing it in this way simulink gives me error:'Derivative input 1 of 'piddifftry/Transfer Fcn1' at time 0.062867815254137 is Inf or NaN. Stopping simulation. There may be a singularity in the solution. If not, try reducing the step size (either by reducing the fixed step size or by tightening the error tolerances)'. Using a simple pid controller it works absolutely well. How to resolve this.Also fuzzy controller is just creating constants Kp, Ki, and Kd.

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

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeFuzzy Logic in Simulink についてさらに検索

タグ

製品

Community Treasure Hunt

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

Start Hunting!

Translated by