Está en la página 1de 14

INGENIERA DE SISTEMAS Y AUTOMTICA

3 INGENIERA INDUSTRIAL

AUTMATAS Y SISTEMAS DE CONTROL


PRCTICA SISTEMAS DE CONTROL

CONTROL PID USANDO UN AUTMATA S7-200 DE SIEMENS

1.- OBJETIVOS
En la industria existen numerosos procesos a controlar (temperatura de un inyector, velocidad de una cinta transportadora, posicin de un actuador elctrico, ...) y a su vez, tambin es conocida la gran utilizacin de autmatas programables debido a su potencia, versatilidad y precio. En muchas ocasiones se usan para el control de los citados procesos PIDs industriales (existen muchas marcas en el mercado como WATLOW, OMRON, euroTHERM, ...), pero el problema de stos es que su perodo de muestreo no puede bajar de los 0.1 ... 0.5 segundos dependiendo de la marca y el modelo. Este perodo de muestreo es bueno para controlar procesos trmicos (control de temperatura) pero para controlar la velocidad de un motor, no es suficiente. Una solucin a este problema puede ser dotar a uno de los autmatas que tengamos en planta de una tarjeta E/S analgi ca. En nuestro caso, utilizaremos un autmata SIEMENS S7-200 (concretamente un 214) con un mdulo analgico EM235. Con ellos podemos llegar a muestrear del orden de milisegundos (0.001 ... 0.005), aunque este tiempo de muestreo depende en gran medida de la carga computacional que tenga la CPU. En esta prctica proponemos controlar un servomotor en posicin y velocidad, procesos que no se pueden realizar con un PID industrial, por lo que es el ejemplo ideal de eleccin de sistema de control. En este documento podemos encontrar adems del enunciado de la prctica, una ayuda completa para programar el PID, el modo de utilizar el PID una vez programado, la forma de configurar el mdulo analgico y el programa resultante.

INGENIERA DE SISTEMAS Y AUTOMTICA

2.- CONTROL DE POSICIN DE UN SERVOMOTOR


Se realizar la programacin del control de posicin de un servomotor accionado mediante una salida analgica(AQW0) del autmata de 10 a 10v. La posicin del servomotor se determina mediante un potencimetro rotativo que proporciona una seal d e 10 a 10v que ser conectada a una entrada analgica del autmata(AIW2). Mediante el asistente PID se realizar el programa de control de posicin del servomotor. La tabla de lazo comenzar en la posicin VB100. Mediante la tabla de estado se leern los 9 elementos de dicha tabla y se forzarn cada uno de dichos elementos a los valores indicados en los experimentos. En los dos experimentos se variar la consigna entre 0.3 y 0.7 para cada uno de los distintos valores de controlador propuesto. Nota: Configurar el mdulo analgico 10 a +10v Experimentos:

1.

Slo control proporcional

Parmetros: VD116 = 0,01 VD128 = 0,5 VD120 = 1E+13 VD124 = 0

Tiempo de muestreo Bias (ver tabla en Anexo II) Tiempo de accin integral Tiempo de accin diferencial

Variar la constante proporcional VD112 dando le los siguiente valores: 0.1, 0.5, 1.0, 3.0, 10.0

2.

Proporcional + Diferencial

Con los mismos parmetros del experimento 1. VD112 = 10,0 y VD124 = 0. Con los mismos parmetros del experimento 1. VD112 = 10,0 y VD124 = 0,002. Con los mismos parmetros del experimento 1. VD112 = 30,0 y VD124 = 0,002.

3.- CONTROL DE VELOCIDAD DE UN SERVOMOTOR


Se realizar la programacin del control de velocidad de un servomotor accionado mediante una salida analgica(AQW0) del autmata de 0 a 10v. La velocidad del servomotor se determina mediante un tacometro que proporciona una seal de 0 a 10v que ser conectada a una entrada analgica del autmata(AIW2). Se programar el PID que realice el control de velocidad del servomotor con ayuda de los ejemplos proporcionados en teoria. La tabla de lazo comenzar en la posicin VB100. Mediante la tabla de estado se leern los 9 elementos de dicha tabla y se forzarn cada uno de dichos elementos a los valores indicados en los experimentos. En los experimentos se utilizar el freno manual del servomotor para ver el efecto del controlador propuesto. Nota: Configurar el mdulo analgico 0 a +10v

INGENIERA DE SISTEMAS Y AUTOMTICA

Experimentos:

1.

Slo control proporcional

Parmetros: VD116 = 0,01 VD128 = 0 VD120 = 1E+13 VD124 = 0

Tiempo de muestreo Bias (ver tabla en Anexo II) Tiempo de accin integral Tiempo de accin diferencial

Variar la constante proporcional VD112 dando le los siguiente valores: 3, 6, 10, 20.0 Disminuye el error en rgimen permanente pero no se hace nulo.

2.

Proporcional + Diferencial

Parmetros: VD112 = 3,0 VD116 = 0,01 VD128 0 VD124 = 0

Cte proporcional Tiempo de muestreo Bias (ver tabla en Anexo II) Tiempo de accin diferencial

Con dichos parmetros variar VD120 (Tiempo de accin integral) entre los valores 0.1, 0.01, 0.001

Para programar un control PID con un SIEMENS S7-200, disponemos de una gran ayuda gracias al asistente PID que incorpora el software Step 7 MicroWin 32 . Describamos primero el funcionamiento del PID de SIEMENS y pasaremos despus a mostrar paso a paso las ventanas que nos aparecen en el asistente.

4.- ASISTENTE PID (DESCRIPCIN)


Nota: El Asistente PID slo est disponible en el modo SIMATIC.

3.1.- Para usar el asistente definimos una serie de pasos a seguir para programar con xito nuestro control.
PASO 1 2 3 4 5 6 7 Elegir un lazo Ajustar los parmetros del lazo Opciones de entrada y salida del lazo Opciones de alarma del lazo Especificar el rea de memoria para clculos Especificar la subrutina de inicializacin y la rutina de interrupcin Generar el cdigo

El Asistente de operaciones S7-200 se puede utilizar para simplificar la configuracin de operaciones PID. El Asistente le solicita que introduzca las opciones de inicializacin y genera luego un bloque lgico y un

INGENIERA DE SISTEMAS Y AUTOMTICA

bloque de datos para la configuracin que se haya indicado. Tras elegir PID en la primera pantalla, el Asistente le solicita que introduzca las siguientes informaciones: PASO 1 Elegir un lazo

Qu lazo PID desea configurar? Las diferentes CPUs soportan un nmero diferente de lazos PID, tendremos que buscar en la ayuda del autmata especfico que estamos usando para extraer este dato, pero en nuestro caso, usaremos solamente un PID, por lo que todas las CPUs de la serie 200 nos serviran. PASO 2 Ajustar los parmetros del lazo

Acciones a realizar: 1. La operacin PID utiliza una tabla de parmetros de 36 bytes en la memoria V. Se debe indicar la direccin de dicha tabla en forma de direccin directa (byte) de la memoria V.

Nota: No es recomendable definir un nombre simblico para la direccin de la tabla de parmetros. El cdigo generado por el Asistente PID utiliza esa direccin para crear operandos en forma de offsets relativos a la tabla de parmetros. Si define un nombre simblico para la tabla de parmetros y cambia luego la direccin asignada a dicho smbolo, el cdigo generado por el Asistente PID no se ejecutar correctamente. 2. Indicar la consigna normalizada del lazo. Para dicha consigna se puede indicar una direccin de palabra doble o una constante que debe ser un nmero real comprendido entre 0.00 y 1.00. En este punto, nos hemos de hacer una serie de preguntas que son de vital importancia para la realizacin del control: Cul de be ser la consigna del lazo?, Cul es el tiempo de muestreo del lazo?, Cul es el tiempo de accin integral del lazo?, Cul es el tiempo de accin derivada del lazo?. Consultar el ANEXOIII Clculo PID para obtener una descripcin de cmo los parmetros del lazo afectan la ejecucin del clculo PID.

PASO 3

Ajustar las opciones de entrada y salida del lazo

Opciones de la entrada del lazo: 1. Cul es el la variable del proceso? sta se puede indicar como direccin de palabra o como smbolo definido. 2. Cmo se debe escalar la variable del proceso antes de calcular el lazo? Opciones de la salida del lazo: 1. Se trata de una salida digital o analgica? 2. Cul es el la variable de salida del lazo? Si la salida es analgica, se podr indicar una direccin de palabra o un smbolo definido. Si la salida es digital, se podr indicar una direccin de bit o un smbolo definido. 3. Cmo se debe escalar la salida antes de calcular el lazo? PASO 4 Ajustar las opciones de alarma del lazo

INGENIERA DE SISTEMAS Y AUTOMTICA

1. Se debe activar un bit como valor de alarma baja? En caso afirmativo, se puede indicar una direccin de bit o un smbolo definido, as como especificar el lmite de la alarma baja. 2. Se debe activar un bit como valor de alarma alta? En caso afirmativo, se puede indicar una direccin de bit o un smbolo definido, as como especificar el lmite de la alarma alta. 3. Se debe activar un bit para indicar un error en el mdulo de entradas analgicas? En caso afirmativo, se puede indicar una direccin de bit o un smbolo definido, as como especificar en qu posicin est conectado el mdulo de entradas a la CPU. PASO 5 Especificar el rea de memoria para clculos

1. El clculo PID requiere una memoria "borrador para los resultados intermedios. Es preciso indicar la direccin (de byte) de la memoria V donde debe comenzar el rea de clculo. 2. Opcional: Desea agregar el control manual del lazo PID? PASO 6 Especificar la subrutina de inicializacin y la rutina de interrupcin

En esta pantalla se pueden asignar nombres a la subrutina de inicializacin y a la rutina de interrupcin que generar el Asistente. PASO 7 Generar el cdigo PID

Esta pantalla muestra una lista de las unidades de organizacin del programa generadas por el Asistente PID y describe brevemente cmo se deben integrar en el programa. Tras responder a las preguntas y hacer clic en el botn "Cerrar", el Asistente de operaciones S7-200 generar el bloque lgico y el bloque de datos para la configuracin que se haya indicado.

5.- ASISTENTE PID (INTRODUCCIN DE DATOS VENTANA A VENTANA)


Para la programacin del regulador usando este tipo de sistema, usamos el ya nombrado Step 7 MicroWin 32, de forma que partimos de una correcta instalacin del software y de la configuracin d el programa para trabajar con el autmata correspondiente. Para ms informacin sobre estos temas, remitirse a la prctica correspondiente. Aplicaremos el asistente al control de velocidad que se pide como segunda parte en el enunciado de la prctica, dejando como tarea el realizar las modificaciones oportunas para que funcione el control de posicin (primera parte). Una vez abierto el programa, en la opcin Herramientas, encontramos la opcin del asistende de operaciones. Pulsamos sobre ella.

INGENIERA DE SISTEMAS Y AUTOMTICA

Una vez seleccionada esta opcin, nos aparece la pantalla que podemos ver abajo. En ella tenemos las opciones de PID, NETR/NETW y HSC. Seleccionamos la opcin PID y pulsamos con el ratn en Siguiente.

En este momento nos aparece la pantalla con nombre Asistente de operaciones S7-200 (PID) en el que se nos pregunta que lazo queremos configurar. Seleccionamos el lazo 0, que es el que tenemos por defecto.

INGENIERA DE SISTEMAS Y AUTOMTICA

Una vez pasamos de pantalla, comenzamos con la configuracin del PID propiamente dicha. En primer lugar tenemos que usar 36 bytes de memoria del autmata para depositar una tabla en la que se encontrarn parmetros de configuracin. Ponemos este valor a VB100 como se especifica en el enunciado de la prctica en lugar de dejar el VB0 que tenemos en la pantalla por defecto. Por otra parte tenemos la consigna normalizada del lazo (VD4), que ser la referencia del sistema de control. Este valor ha de ir entre 0 y 1. En el enunciado de la prctica tenemos varios valores de prueba. En los parmetros del lazo, tenemos que especificar la ganancia, el tiempo de accin integral, el de derivativa y el perodo de muestreo. Para anular la accin derivativa, recordemos, hay que poner su valor a cero, pero en el caso del tiempo de accin integral, tenemos que poner un tiempo muy grande. El mximo permitido en el asistente es 9999999, pero despus en Bloque de datos, podemos introducir el 1E+013 que la prctica nos pide. El perodo de muestreo est en segundos y a pesar de que por defecto tenemos 1.00 seg. podemos llegar a unidades de milisegundo. Pero este tiempo depende de la carga de la CPU (tamao del programa que est ejecutando, tiempo de comunicaciones, ...) como ya se explic anteriormente. Si seleccionamos un T demasiado pequeo (el autmata no es capaz de procesar el algoritmo PID en el tiempo especificado), el S7-200 se pondr automticamente en modo STOP, indicando que no puede ejecutar el programa.

Accediendo a la siguiente pantalla, configuramos las opciones de la entrada y la salida del lazo. En la entrada, especificamos escalado unipolar debido a que vamos a programar control de velocidad y lo mismo con el escalado de la salida. Para los autmatas de los que se dispone, seleccionaremos AIW2 en la entrada y AQW0 en la salida debido a que stos son accesibles desde el frontal. Pulsando en Siguiente pasamos a la siguiente pantalla.

INGENIERA DE SISTEMAS Y AUTOMTICA

El sistema dispone de diversas alarmas de lazo, pero no usaremos ninguna de ellas en esta prctica.

El clculo de la accin de control en funcin del error y de los parmetros de PID es el resultado de una serie de operaciones que se han de realizar en la memoria del autmata. Para realizar estos clculos hemos de especificar la posicin de memoria a partir de la cual se realizarn. En este caso podemos dejar el v alor que nos viene por defecto en el asistente, VB54. Por otra parte, podemos tener una entrada del autmata que controle la ejecucin del algoritmo. Si no activamos la pestaa Activar control manual del PID, el PID se ejecuta con la SM0.0, es decir, siempre. Pero podemos desear que la entrada I0.6 controle la activacin del regulador, en tal caso, seleccionamos la pestaa y especificamos dicha entrada en lugar de la I0.0 que se nos presenta por defecto.

El asistente crear dos rutinas para manejar el PID, una de inicializacin y otra de interrupcin, podemos darles el nombre que queramos, PID_Ini y PID_Int o A y B, es indiferente. Lo que si deberemos hacer es

INGENIERA DE SISTEMAS Y AUTOMTICA

llamar desde el programa principal a la subrutina de inicializacin con SM0.0, como se especifica en la ltima pantalla del asistente.

En el bloque de datos del programa en uso podemos encontrar la lista de los valores para cada variable. Una vez programado el PID en el autmata, podemos cambiar el valor de stos y ajustar el regulador, cosa que se pide en el desarrollo de esta prctica. En la siguiente figura tenemos la pantalla del bloque de datos mencionada, valores que podemos modificar desde la tabla de estado. Bloque de datos:

INGENIERA DE SISTEMAS Y AUTOMTICA

Tabla de estado:

10

INGENIERA DE SISTEMAS Y AUTOMTICA

6.- ANEXO I
Regulacin PID La operacin Regulacin PID ejecuta el clculo de un lazo de regulacin PID en el LOOP referenciado en base a las informaciones de entrada y configuracin definidas en Table (TBL).

Condiciones de error que ponen ENO a 0:


0006 (direccionamiento indirecto), SM1.1 (desbordamiento), SM4.3 (tiempo de ejecucin). Estas operaciones afectan a las siguientes marcas especiales: SM1.1 (desbordamiento). La operacin PID (lazo de regulacin con accin proporcional, integral, derivada) sirve para ejecutar el clculo PID. Para habilitar el clculo PID, el primer nivel de la pila lgica (TOS) deber estar en ON (circulacin de corriente). Esta operacin tiene dos operandos: una direccin TBL que constituye la direccin inicial de la tabla del lazo y un nmero LOOP que es una constante comprendida entre 0 y 7. Un programa slo admite ocho operaciones PID. Si se utilizan dos o ms operaciones PID con el mismo nmero de lazo (aunque tengan diferentes direcciones de tabla), los dos clculos PID se interferirn mutuamente siendo incierta la salida resultante. La tabla del lazo almacena nueve parmetros que sirven para controlar y supervisar la operacin del mismo. Incluye el valor actual y previo de la variable del proceso (valor real), la consigna, la salida o magnitud manipulada, la ganancia, el tiempo de muestreo, el tiempo de accin integral, el tiempo de accin derivada y la suma integral (bias).Para poder realizar el clculo PID con el intervalo de muestreo deseado, la operacin PID deber ejecutarse bien dentro de una rutina de interrupcin temporizada o desde el programa principal, a intervalos controlados por un temporizador. El tiempo de muestreo debe definirse en calidad de entrada para la operacin PID a travs de la tabla del lazo.

11

INGENIERA DE SISTEMAS Y AUTOMTICA

7.- ANEXO II

8.- ANEXO III


El algoritmo PID En estado estacionario, un regulador PID vara el valor de su salida para llevar a cero el error de regulacin (e). ste ltimo se expresa como la diferencia entre el valor de consigna del lazo (SP) (el punto de trabajo deseado) y la entrada del lazo o variable del proceso (PV) (el punto de trabajo real). El principio de la regulacin PID se basa en la ecuacin que aparece abajo. Dicha ecuacin expresa la salida del lazo (Mn) como una funcin de un trmino proporcional, uno integral y uno diferencial:

12

INGENIERA DE SISTEMAS Y AUTOMTICA

donde:

El trmino proporcional El trmino proporcional MP es el producto de la ganancia (Kc), la cual controla la sensibilidad del clculo de la salida, y del error (e) que es la diferencia entre el valor de consigna (SP) y la variable del proceso (PV) para un instante de muestreo determinado. La ecuacin que representa el trmino proporcional segn la resuelve la CPU es la siguiente:

donde:

El trmino integral El trmino integral MI es proporcional a la suma del error del lazo a lo largo del tiempo. La ecuacin que representa el trmino integral tal y como la resuelve la CPU es:

donde:

El trmino diferencial El trmino diferencial MD, como lo implementa la CPU, es proporcional al cambio en la variable del proceso (PV). La ecuacin del trmino diferencial es la siguiente:

13

INGENIERA DE SISTEMAS Y AUTOMTICA

donde:

Ello implica que la variable del proceso se debe guardar para usarla en el prximo clculo del trmino diferencial. En el instante del primer clculo, el valor de PVn -1 se inicializa a un valor igual a PVn. Seleccin del tipo de regulacin En muchos sistemas de regulacin solo es necesario emplear una o dos acciones de regulacin. As, por ejemplo, puede requerirse nicamente la regulacin proporcional o la regulacin proporcional e integral. El tipo de regulacin se selecciona ajustando correspondientemente los valores de los parmetros constantes del lazo. As, si no se desea accin integral (sin "I" en el clculo PID), entonces el tiempo de accin integral deber ajustarse a infinito (tiempo integral). Incluso sin accin integral el valor del trmino integral puede no ser cero debido a que la suma integral MX puede tener un valor inicial. Si no se desea accin derivada (sin "D" en el clculo PID), entonces el tiempo de accin derivada deber ajustarse a 0.0. Si no se desea accin proporcional (sin "P" en el clculo PID) y se desea regulacin I o ID, entonces la ganancia del lazo deber ajustarse a 0.0. Como la ganancia interviene en las ecuaciones para calcular los trminos integral y diferencial, si se ajusta a 0.0 resulta un valor de 1.0, que es el utilizado para calcular los trminos integral y diferencial.

9.- ANEXO IV
Conexiones elctricas. Control PID de posicin: pin 11 ADAM(DB-37) : masa (de la entratada y de la salida) pin 33 ADAM(DB-37) : entrada al actuador de potencia del motor (AQW0) pin 12 ADAM(DB-37) : salida del potencimetro de posicin del motor (AIW2) Control PID de velocidad: pin 11 ADAM(DB-37) : masa (de la entratada y de la salida) pin 33 ADAM(DB-37) : entrada al actuador de potencia del motor (AQW0) pin 35 ADAM(DB-37) : salida del tacmetro del motor (AIW2)

14

También podría gustarte