MATLAB Answers


How PI control tuned using the error information ?

Asked by LMBSRT
on 13 May 2019
Latest activity Edited by LMBSRT
on 14 May 2019
How PI control tunned using the error information
error = refefrence-measure
PI = kp+ki/s
vb =( refefrence-measure ) *(kp+ki/s);
I can access the error excil data, so i need to determone the PI gain. Any information please. thanks


Sign in to comment.


1 Answer

Answer by Raj
on 14 May 2019

I'll assume you have a set of time domain (rise time, settling time, overshoot etc) or frequency domain (gain margin, phase margin etc) criteria that should be met by your closed loop system. Now you have multiple options to estimate and tune your PI gains.
1) Use root locus technique to see the movement of system Poles-Zeros in the S-Domain and pick the gain which meets your desired criteria.
2) Use MATLAB pidTuner. Its a very user friendly tool to tune your controller. Just type 'pidTuner' in your command prompt. Contrary to the name, you have option to choose type of controller (P,PI,PID etc).
Hope this helps. Get back in case you are having any difficulty.


Thank you for your reply . I think these all options work for system having transfer function. But I do not have transfer funnction , I can only have the error data. Can your methods work for error data without having transfer function? if yes let me know please, thank you
Ok, so i understand that you dont have the system's transfer function and you are just using it as a black box. In that case i suggest you generate a set of input-output data and use the pidTuner to identify the system first. Then you can proceed with design and tuning of controller.
It is clear up to here, I have input data from the output of the PI and and output data from the negative feeedback loop. But, what is procedure to collect these INPUT/OUTPUT data for two or more parrallel PI control ( not cascaded or double loop)? They have influnce each other? Is threre any guiding rules?

Sign in to comment.