AUTOMATIZACIN
INDUSTRIAL
PRCTICA 6:
PROGRAMACIN AVANZADA:
CONTROLADOR PID
1
1. INTRODUCCIN. CONTROLADORES DE TIPO PID
En esta prctica se realizar un programa para controlar la velocidad de un motor de
corriente continua ya usado en asignaturas previas. Para controlar el sistema se
utilizar un tipo de controlador de uso muy frecuente: el controlador PID.
P: efecto proporcional
I: efecto integral
D: efecto diferencial
Efecto proporcional:
Genera una accin de control proporcional al error. Es el efecto ms corriente y ms
intuitivo: si el error es positivo (velocidad excesivamente baja), es necesario aumentar
la tensin sobre el motor para aumentar la velocidad; si es negativo (velocidad
excesiva), ser necesario reducir la tensin de entrada al motor. Existe una constante
de proporcionalidad que llamaremos KP que relaciona el error con la accin de control,
de modo que para errores grandes las variaciones de intensidad sern tambin
grandes. Si llamamos e(t) a la seal de error y u(t) a la accin sobre el sistema (tensin
a aplicar sobre el motor), quedar:
u (t ) =K P e(t )
Efecto integral:
En algunos casos, la aplicacin de un efecto proporcional no consigue que el sistema
alcance el valor de referencia indicado, an despus de un prolongado periodo de
tiempo. Se dice que el sistema presenta error en rgimen permanente. En estos casos
la mejor opcin es recurrir a un efecto integral, que no acta en funcin del error sino
en funcin de la integral del error. De este modo, mientras la referencia no sea
alcanzada la integral del error no parar de crecer, y con ella la accin de control sobre
el sistema, hasta que la accin sea suficiente para llevar al sistema al punto deseado.
La constante propia del efecto integral se denominar KI, con lo que la relacin entre
error y accin de control ser:
t
u (t ) =K I e(t ) dt
0
Efecto diferencial:
Este efecto busca conseguir un comportamiento ms suave del sistema de control.
Utilizando exclusivamente los efectos anteriores, la forma de alcanzar el valor de
referencia puede ser excesivamente brusca, presentando picos de sobreoscilacin
excesivos.
2
sobreoscilacin
Para evitar este problema, se introduce un efecto extra que es el efecto diferencial: la
accin de control es proporcional a la derivada de la seal de error. Esto evita que el
sistema pase de largo la referencia: si la derivada del error es negativa (nos acercamos
a la referencia), el efecto derivativo frena ligeramente la accin de control. La
constante propia de un efecto derivativo se denomina KD; y la expresin resultante
queda:
d
u (t ) =K D e(t )
dt
t d
u (t ) =K P e(t ) + K I e(t ) dt + K D e(t )
0 dt
3
2. SISTEMA A CONTROLAR
El sistema a controlar es el conjunto motor elctrico-freno conocido de asignaturas
previas:
4
3. CONTROL DE VELOCIDAD: CONEXIONADO
El flujo de informacin entre el autmata encargado del control y el motor elctrico
para el control de velocidad debe ser el siguiente:
El autmata debe recibir informacin sobre la velocidad angular a la que gira el eje del
motor y debe enviar al mismo una tensin de accionamiento. Las conexiones a realizar
para ello son las siguientes:
Velocidad angular:
Tensin de accionamiento:
Una vez realizadas las conexiones, no se encender la fuente del servomotor hasta que
no se haya configurado y programado el autmata para realizar el control PID de
velocidad.
5
4. CONFIGURACIN Y PROGRAMACIN DE CONTROLADORES PID
EN LOS AUTMATAS S7-1200
El programa de control PID debe realizar las siguientes operaciones:
Leer de la entrada analgica el valor de la seal que se desea controlar (en este
caso, la velocidad de giro del eje del motor.
Comparar esta medida con la referencia (velocidad deseada) y obtener el error
como resta de los dos valores.
Aplicar el algoritmo de control PID al error, calculando los efectos proporcional,
diferencial (derivada del error) e integral (integral del error).
Escribir en la salida analgica el resultado calculado.
Para ello, sobre el rbol del proyecto, dentro de la opcin "Bloques de programa",
hacemos doble click sobre "Agregar nuevo bloque", como se muestra en la figura
siguiente.
6
Aparecer la ventana de "Agregar nuevo bloque" en la que deberemos seleccionar
"Bloque de organizacin" en la columna de la izquierda y, a continuacin, el tipo
"Cyclic interrupt" en la parte central. Introduciremos como tiempo de ciclo 1 ms
(cuadro de texto de la parte derecha). En la figura siguiente se muestra la ventana
de Agregacin de nuevo bloque con las opciones descritas.
7
Paso 2. Insertamos en el bloque de interrupcin cclica creado una instruccin
del tipo "PID_Compact". Para ello, podemos arrastrar la instruccin
"PID_Compact" que puede encontrarse en la columna de instrucciones de la
derecha, en el apartado "Tecnologa", y dentro de la carpeta "PID Control"-
>"Compact PID", como se muestra en la figura siguiente.
o Setpoint: 3
o Input_PER: IW64
o Output_PER: QW80
8
En la figura siguiente se muestra una imagen del PID con los parmetros
introducidos.
9
Paso 4. Configuracin del PID. Para configurar el PID pulsamos sobre el icono
con forma de maletn en la esquina superior derecha de la instruccin del PID,
como se muestra en la figura siguiente.
10
indica cada cunto tiempo calcula el controlador PID la seal de
control y se la enva al motor.
Paso 6. Puesta en servicio del PID. Una vez que est ejecutndose el programa
realizaremos lo siguiente para poner en marcha el controlador:
11
o Aparecer la ventana de puesta en servicio del PID. En esta ventana
pulsaremos el botn "Start" que aparece en la parte superior izquierda
(empezar medicin) y a continuacin pulsamos el botn "Start" de la parte
superior derecha (empezar optimizacin), usando la opcin de optimizacin
inicial. En este momento el autmata comenzar la sintonizacin
automtica del PID (el motor se mover) y, si se sintoniza correctamente,
veremos que el motor se mueve a la velocidad indicada como referencia
previamente (Setpoint).
12
5. PRUEBAS A REALIZAR
Una vez que el autmata ha sido capaz de sintonizar correctamente el PID, debern
anotarse los valores de los parmetros sintonizados del mismo (accesibles en la
ventana de configuracin del PID, donde se introdujo el periodo de muestreo)
Una vez los parmetros ajustados para un buen comportamiento, el regulador debe
ser capaz de mantener la velocidad del motor incluso en presencia de perturbaciones.
Una prueba similar se puede efectuar llevando de nuevo el freno a la posicin superior
(mnimo frenado). En este caso la velocidad debe aumentar bruscamente pero el
regulador tambin tiene que actuar reduciendo la tensin a aplicar sobre el motor
para conseguir restablecer la velocidad adecuada. El tiempo que tarde en
restablecerse tambin indicar si el ajuste de los parmetros es correcto o no.
En esta prueba vamos a variar la referencia de velocidad del PID (Setpoint). Para ello,
introduciremos como parmetro "Setpoint" del PID la variable MD2.
13
Prueba 4. Variacin de los parmetros P, I, D del controlador
14
ANEXO: CONECTOR ADAM-3937
A continuacin se incluye un listado de todas las conexiones del servomotor accesibles
a travs del conector ADAM-3937:
15