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 CenterFile Exchange에서 Fuzzy Logic in Simulink에 대해 자세히 알아보기

태그

제품

Community Treasure Hunt

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

Start Hunting!

Translated by