Tutorial de
MatLab
Por Hender Molina - Lisbeth Romn
Controladores PID
Para implementar los diferentes tipos de controladores (P, PD, PI, PID) en MatLab se hace uso de la
funcin de transferencia propia del sistema a objeto de estudio. Si dicho sistema es de la forma:
donde G(S) es la funcin de transferencia de la planta o proceso; mientras que C(S) es la funcin de
transferencia del controlador.
Para el caso del controlador proporcional, C(S)=Kp, que es una constante o valor escalar. El
controlador PI es C(S)=Kp +Ki/S que puede representarse como una relacin ente dos polinomios.
El controlador PID es C(S)=Kp +Ki/S +Kd S que se representa como:
que es de nuevo una relacin entre dos polinomios. Los coeficientes decrecientes en potencias de S
de estos polinomio pueden ser almacenados en vectores en MatLab. Si se multiplica el controlador C
(S) por la funcin de transferencia del proceso o planta G(S) se formar la funcin de transferencia
de lazo abierto. Por ejemplo un G(S) puede ser:
Para obtener la respuesta en lazo abierto ante una entrada escaln unitario tenemos:
>>Kp=50;
>>Ki=1;
>>Kd=10;
>>num=[Kd Kp Ki];
>>den=[1 10 20 0 0];
>>step(num,den)
Para obtener la respuesta de lazo cerrado en el tiempo para una entrada escaln unitario se emplea el
comando cloop, el cual genera los polinomios del numerador (numc) y denominador (denc) de la
funcin de transferencia de lazo cerrado con realimentacin unitaria a partir de los polinomios de la
Tierras Fsicas
Sistemas de Puesta a Tierra
Grounding & Lightning
Protection
www.faragauss.com
Mycesa (Medida y Control)
Control de Potencia Elctrica
Duomax. Controlador de
Cargas
www.mycesa.es
PLECS
Fast and accurate simulation
of electrical systems in
Simulink.
www.plecs.com
PID Control Si mu
Practice tuning PI
controllers using a
based simulator
www.jashaw.com
Pgina 1 de 2 Tutorial de MatLab
19/11/2004 http://www.angelfire.com/la/hmolina/matlab6.html
funcin de transferencia de lazo abierto (num y den). Su sintaxis es: [numc,denc]=cloop
(num,den,sign). El signo de la realimentacin viene dado por sign. Para el ejemplo anterior, tenemos:
>>Kp=500;
>>Ki=1;
>>Kd=100;
>>num1=[Kd Kp Ki];
>>den1=[1 0];
>>num2=1;
>>den2=[1 10 20 0];
>>[numc,numd]=cloop(conv(num1,num2),conv(den1,den2),-1);
>>step(numc,denc)
Se usa el comando conv para obtener la convolucin y multiplicacin polinomial de dos vectores. La
salida obtenida mediante el comando step se muestra a continuacin:
Implementacin de lazos de control PID mediante Simulink.
Ir a la pgina principal del tutorial de MatLab
Search the web with Hotbot Host your si
Pgina 2 de 2 Tutorial de MatLab
19/11/2004 http://www.angelfire.com/la/hmolina/matlab6.html