Vous êtes sur la page 1sur 19

Trabajo Prctico N 10

IMPLEMENTACIN EN LabView DE UN CONTROLADOR PID


Breve introduccin terica:
PID = Proporcional Integral Derivativo

Es un tipo de control analgico, un controlador que satisfaga el modo de control


analgico PID se caracteriza por una salida del controlador p(t) relacionada con la
seal de error e(t) mediante la expresin:

p(t ) = K P .e(t ) + K I . e(t )dt + p I (0) +.K D .


0

de(t )
dt

(1)

Donde KP no tiene dimensiones, KI se da en seg-1 y KD en seg. Tambin se utiliza


en muchas ocasiones el tiempo integral TI y el derivativo TD, los cuales vienen
relacionados mediante expresiones inversas de KI y KD respectivamente:

TI =

1
KI

TD =

1
KD

(2)

Usaremos las expresiones (3) y (4) ms adelante para implementar en LabView


los modos integral y derivativo.
Vemos, del grfico que en rigor podemos implementar 4 tipos de control:

Proporcional

Proporcional + integral

Proporcional + integral + derivativo

Proporcional + derivativo

El quinto posible (integral + derivativo) no es posible, pues carece de la


amplificacin de la seal de error.
 P: accin de control proporcional, da una salida del controlador que es
proporcional al error, es decir:
u(t) = KP. e(t)
que descripta desde su funcin transferencia queda:
CP(s) = KP (1)
Donde KP es una ganancia proporcional ajustable. Un controlador proporcional
puede controlar cualquier planta estable, pero posee desempeo limitado y error
en rgimen permanente (off-set).
 I: accin de control integral: da una salida del controlador que es proporcional
al error acumulado, lo que implica que es un modo de controlar lento.
t

u (t ) = K I e( )d
0

Que en el dominio de Laplace ser:


CI ( s) =

KI
s

La seal de control u(t) tiene un valor diferente de cero cuando la seal de error
e(t) es cero. Por lo que se concluye que dada una referencia constante, o
perturbaciones, el error en rgimen permanente es cero.
 PI: accin de control proporcional-integral, se define mediante:

u (t ) = K P e(t ) +
Lo que en el dominio de Laplace ser:

KP t
e( )d
Ti 0

C PI ( s ) = K P (1 +

1
)
Ti s

Con un control proporcional, es necesario que exista error para tener una accin
de control distinta de cero. Con accin integral, un error pequeo positivo siempre
nos dar una accin de control creciente, y si fuera negativa la seal de control
ser decreciente. Este razonamiento sencillo nos muestra que el error en rgimen
permanente ser siempre cero. Muchos controladores industriales tienen solo
accin PI. Se puede demostrar que un control PI es adecuado para todos los
procesos donde la dinmica es esencialmente de primer orden. Lo que puede
demostrarse en forma sencilla, por ejemplo, mediante un ensayo al escaln.
 PD: accin de control proporcional-derivativa, se define mediante:
u (t ) = K P e(t ) + K PTD

de(t )
dt

Lo que en el dominio de Laplace queda:


C PD ( s ) = K p + SK PTD

Cuando una accin de control derivativa se agrega a un controlador proporcional,


permite obtener un controlador de alta sensibilidad, es decir que responde a la
velocidad del cambio del error y produce una correccin significativa antes de que
la magnitud del error se vuelva demasiado grande. Aunque el control derivativo no
afecta en forma directa al error en estado estacionario, aade amortiguamiento al
sistema y, por tanto, permite un valor ms grande que la ganancia K, lo cual
provoca una mejora en la precisin en estado estable.
 PID: accin de control proporcional-integral-derivativa, esta accin
combinada rene las ventajas de cada una de las tres acciones de control
individuales. La ecuacin de un controlador con esta accin combinada se obtiene
mediante:

u (t ) = K P e(t ) +

KP t
de(t )
e( )d +K PTD

TI 0
dt

Que en el dominio de Laplace quedara:


C PID ( s ) = K p (1 +

1
+ TD s )
TI s

No vamos a entrar en el anlisis de los mtodos de Oscilacin, o de Respuesta en


frecuencia, o de la curva de reaccin o de la respuesta al escaln (ajustes de
Ziegler and Nichols). Por no ser tema de este curso, pero nos baste con saber lo
siguiente:

Desde una perspectiva moderna, un controlador PID es simplemente un


controlador de hasta segundo orden, conteniendo un integrador.

Descubrimientos empricos demuestran que la estructura del PID por lo general


tiene la suficiente flexibilidad como para alcanzar excelentes resultados en
muchas aplicaciones.

El trmino bsico es el trmino proporcional, P, que genera una actuacin de


control correctivo proporcional al error.

El trmino integral, I, genera una correccin proporcional a la integral del error.


Esto nos asegura que si aplicamos un esfuerzo de control suficiente, el error de
seguimiento se reduce a cero.

El trmino derivativo, D, genera una accin de control proporcional al cambio de


rango del error. Esto tiende a tener un efecto estabilizante pero por lo general
genera actuaciones de control grandes.
Aplicaciones / Ejemplo
Un ejemplo muy sencillo que ilustra la funcionalidad bsica de un PID es cuando
una persona entra a una ducha. Inicialmente abre la llave de agua caliente para
aumentar la temperatura hasta un valor aceptable (tambin llamado "Setpoint"). El
problema es que puede llegar el momento en que la temperatura del agua
sobrepase este valor as que la persona tiene que abrir un poco la llave de agua
fra para contrarrestar el calor y mantener el balance. El agua fra es ajustada
hasta llegar a la temperatura deseada. En este caso, el humano es el que est
ejerciendo el control sobre el lazo de control, y es el que toma las decisiones de
abrir o cerrar alguna de las llaves; pero no sera ideal si en lugar de nosotros,
fuera una maquina la que tomara las decisiones y mantuviera la temperatura que
deseamos?

Esta es la razn por la cual los lazos PID fueron inventados. Para simplificar las
labores de los operadores y ejercer un mejor control sobre las operaciones.
Algunas de las aplicaciones ms comunes son:

Lazos de Temperatura (Aire acondicionado, Calentadores, Refrigeradores,


etc.)

Lazos de Nivel (Nivel en tanques de lquidos como agua, lcteos, mezclas,


crudo, etc.)

Lazos de Presin (para mantener una presin predeterminada en tanques,


tubos, recipientes, etc.)

Lazos de Flujo (mantienen la cantidad de flujo dentro de una lnea o tubo)

Al implementar mediante software los trminos integral y derivativo hay que tener
en cuenta que para poder representar de forma discreta mediante las
instrucciones del software que se utilice los valores deben aproximarse. El trmino
integral se aproxima teniendo en cuenta el mtodo numrico trapezoidal de
integracin (figura 1).

De la figura 1, es posible aproximar el trmino integral (rea sombreada) mediante


la funcin:
n

n
e(k .T ) + e((k + 1)T )
e
(
t
)
dt
=

.T

0
2

k =0

(3)

Por otra parte, la accin derivativa puede aproximarse mediante la regla de la


diferencia finita (figura 2).

El trmino derivativo se aproxima, por tanto mediante la expresin:

de(t ) e( k .T ) e(( k 1).T )


=
dt
T

(4)

Para ver la eficiencia del control PID, en esta direccin se puede ver un video de
equilibrio de una pelota en una bandeja, con y sin PID, implementado en labview:
http://www.youtube.com/watch?v=uERF6D37E_o

DESCRIPCIN DE LA PRCTICA.
Vamos a disear un IV que realice el clsico algoritmo de control PID
(proporcional-integral-derivativo).
La prctica consta de 5 ejercicios. En los primeros disearemos los VI que realicen
por separado los modos proporcional, integral y derivativo. En el cuarto se
implementar el tiempo entre muestra y muestra de las variables involucradas en
el controlador PID, y el quinto y ltimo utilizar los cuatro anteriores para realizar el
algoritmo con el nombre PID.
Ejercicio 1: Creacin de un sub-IV para implementar el modo proporcional.

Panel frontal:

Abrir un instrumento virtual en blanco y crear el panel frontal de la figura 3.


En este panel colocamos dos controles y un indicador con las etiquetas Error,
Kp y Accin proporcional, respectivamente.
Diagrama de bloques:
Cableamos como muestra la figura, luego de definir a los elementos como de
doble precisin, con lo que llegamos a algo como lo de la figura 3.
Panel Frontal

Diagrama de bloques

Figura 3

Este VI se encargar de realizar la accin proporcional.


Para ello editaremos el cono y lo cablearemos para guardarlo como un Sub VI,
con el nombre de
Proporcional.vi
Para lo que ejecutamos los siguientes pasos, dados en forma muy resumida, dado
que y fueron vistos oportunamente.

Editamos el cono para


dejarlo como se indica
en la figura:

A continuacin definimos y
cableamos los conectores de

entrada y de salida al VI, y procedemos a salvarlo con el nombre de


proporcional.vi.

Con lo que nos quedara:

Ejercicio 2: Creacin de un sub-IV para implementar el modo integral.


Panel frontal:
Abrir un instrumento virtual en blanco y crear el panel frontal de la figura 4.
En este panel colocamos tres controles, un indicador y una booleana con las
etiquetas Error, Dt, KI y Accin integral, respectivamente.
Diagrama de bloques:
Armamos el diagrama que muestra la figura 5.

Figura 4

Figura 5

Veamos ahora el nico bloque que nos puede resultar desconocido:

Functions Numeric Compound Arithmetic Click derecho Change


Mode Multiply.
Este bloque es un operador aritmtico de varias entradas, donde la operacin
seleccionada es la multiplicacin.
Al crear la estructura repetitiva While, en ella aparecen estos
dos conos. Un ndice de repeticin (es el cuadrado azul i) y
un icono rojo de finalizacin. El bucle repetitivo While se
ejecuta mientras el icono rojo sea evaluado a Verdadero.
Nosotros haremos lo siguiente: click derecho sobre el botn
rojo y seleccionamos:

Continue if True

Create Constant

Otros elementos que pueden resultar novedosos


son los elementos que estn en los bordes de la
estructura y se llaman registros de
desplazamiento.
Su misin es la de incorporar en la iteracin
siguiente los valores obtenidos en la iteracin
anterior. Para que aparezcan, hay que situar el
cursor y con click del ratn sobre el borde del
bucle y mediante su botn derecho seleccionar Add Shift Register.
Una vez hecho esto,
editamos el cono para
dejarlos como se indica
en la figura:

Definicin de conectores: En el panel frontal, con el ratn situado en el rea del


icono y hacemos click derecho y tomamos las siguientes
opciones:
Disconnect All Terminals
Patterns
Seleccionamos el que tenga 4 entradas y 1 salida.

Y cableamos los terminales en


forma secuencial el conector y el
terminal del cono del panel frontal
que se desea asignar a dicho
conector. Realizando, en particular,
las siguientes asignaciones:

Ahora lo salvamos con el nombre de Integral.vi, para usarlos luego:

Ejercicio 3: Creacin de un sub-IV para implementar el modo derivativo.


Panel frontal:
Abrir un instrumento virtual en blanco y crear el panel frontal de la figura 6.
En este panel colocamos tres controles y un indicador con las etiquetas Valor
anterior, Dt, Kd y Accin derivativa, respectivamente.
Diagrama de bloques:
Armamos el diagrama que muestra la figura 6.

Figura 6

Editamos el cono para que


nos quede como muestra la
figura

Hacemos la seleccin del cono de


terminales como se vio en el caso anterior
y cableamos como vemos en esta figura.

Salvamos con el nombre de Derivativa.vi

Ejercicio 4: Creacin de un sub-IV para implementar el tiempo entre muestras.


Panel frontal:
Abrir un instrumento virtual en blanco y crear el panel frontal de la figura 7.
En este panel colocamos un indicador con la etiqueta Dt.
Diagrama de bloques:
Armamos el diagrama que muestra la figura 7.

Figura 7
Donde el tiempo lo tomamos de la paleta:
Functions Timing Tick Count (ms).
Ahora
nuestro

creamos
sub

VI

modificando el cono
como lo vemos en la
figura.

Y lo cableamos de la siguiente manera

Y lo guardamos con el nombre de Tiempo.vi:

Ejercicio 5: Creacin de un sub-IV para implementar el control PID.


Panel frontal:
Abrir un instrumento virtual en blanco y crear el panel frontal de la figura 8.
Dicho panel est formado por iconos de tres tipos: indicadores, controles y
waveform chart.

Figura 8
Diagrama de bloques:
Armamos el diagrama que muestra la figura 9.

Figura 9

Los elementos que pueden resultarnos nuevos:


Functions Comparison In Range and Coerce.
Que evala el rango de la salida.

Functions Select a VI Buscar la carpeta donde

est guardado el VI correspondiente.

Ahora editaremos el
cono para crear el
smbolo de nuestro VI.
Lo cablearemos:

Y lo guardaremos bajo el nombre de PID bsico.vi

Ejercicio 6: Control de lazo cerrado con PID y NI USB 6008

Vamos a trabajar con nuestra placa USB 6008. Para ello vamos a adquirir datos
de entrada, ejecutar un algoritmo de control (PID) y con ello generar una respuesta
por la salida analgica.
Para ello vamos a colocar en el panel frontal un Wave Form chart (Modern 
Graph  Wave form chart). Configuramos el valor mnimo (0) y el mximo (6) que
queremos mostrar. Con click derecho seleccionamos Y Scale y destildamos
Austoscale Y.

En la ventana de los diagramas de bloques abrimos el DAQ assistant y


seleccionamos como entrada analgica de tensin a ai0, en la configuracin
mantengo el rango de -10 V a 10 V y elijo entrada referencial (RSE), y en el modo
de adquisicin, una muestra a la vez:

De la misma forma, creamos ahora nuestra salida, eligiendo el canal ao0, en la


configuracin seleccionamos entrada referencial (RSE), y en el modo de
adquisicin, una muestra a la vez, si es que no est definida por defecto.

Y ahora seleccionamos el algoritmo de control, para ello vamos a usar el que


desarrollamos, para ello hacemos click derecho para desplegar el men y
seleccionamos Select a VI . . .

Y en la pantalla que se abre seleccionamos: PID Basico.vi:

Quedndonos ahora la siguiente pantalla en el diagrama de bloques:

Adaptar el sistema para que la entrada provista por la placa genere la salida de
correccin a travs de instrumento PID Bsico y muestre ambas en el indicador
grfico.

Vous aimerez peut-être aussi