Está en la página 1de 8

Prctica 2 Automatizacin Industrial (10/11)

TEMPORIZADORES Y CONTADORES
1 Objetivo
El objetivo de esta prctica es ahondar en las tcnicas de programacin bsicas del autmata. Para ello, el alumno deber implementar en STEP 5 un automatismo que necesite de elementos de temporizacin y de cuenta e implementarlo sobre el autmata S95-U de Siemens. Como sistema se emplear la maqueta neumtica a disposicin en el laboratorio de prcticas. El entorno de programacin ser el programa S5Win empleado en la prctica anterior.

2 Temporizadores en STEP 5
El identificador de las variables de temporizacin viene predefinida en STEP 5 con la letra T seguido del nmero de temporizador que se va a usar. En el modelo de autmata S95-U el nmero de temporizadores a disposicin del programador es de 128 (T 1 hasta T 128). Cada temporizador tiene un rea de 16 bits reservada en la memoria de la CPU. Los bits desde el 0 al 11 del rea de memoria contienen el valor de temporizacin en decimal codificado en formato BCD (cada grupo de cuatro bits contiene el cdigo binario de dicho valor decimal). Los bits 12 y 13 contienen la base de tiempo en cdigo binario (ver figura 1). Cuando el autmata est en estado RUN, va decrementando en una unidad (que corresponde a un tiempo fijado en la base de tiempos) el valor de temporizacin hasta llegar a 0.

Figura 1. Presencia en memoria de un temporizador El valor de temporizacin se representa mediante una constante que en STEP 5 tiene el formato KT X.Y donde X es el valor de temporizacin (0-999) e Y es la base de tiempos. Existen 4 bases de tiempos posibles (bits 12-13 en la figura 1): 0 para 10ms (centsimas de segundo), 1 para 100ms (dcimas de segundo), 2 para 1s y 3 para 10s. As por ejemplo, la constante de tiempo KT 500.0 marca un tiempo de 5s con precisin de 10ms. El

Prctica 2 Automatizacin Industrial (10/11) mximo tiempo de contaje de un temporizador es, por tanto, 9990 segundos (no llega a las 3 horas). Nota: Esta sintaxis de formato de tiempo cambia para el lenguaje ms moderno STEP 7; ste proporciona el tipo de dato S5TIME para preservar compatibilidad.

2.1 Tipos de temporizadores


El lenguaje STEP 5 (y tambin STEP 7) ofrece al programador 5 tipos de temporizadores, dos temporizadores de pulso, dos de retardo a la conexin y uno de retardo a la desconexin. Su uso se determina por la instruccin de disparo empleada. stos son: SI: Temporizador de pulso sin memoria SV: Temporizador de pulso con memoria redisparable SE: Temporizador de retardo a la conexin sin memoria SV: Temporizador de retardo a la conexin con memoria y redisparable SA: Temporizador de retardo a la desconexin con memoria y redisparable. (en negrita el nemnico del operador correspondiente) Es imprescindible que el alumno conozca a la perfeccin el funcionamiento de cada uno de ellos ya que, en cada situacin, la eleccin de uno u otro puede resultar del todo inapropiada o, al menos, complicar en exceso la implementacin. Para ello consultar los manuales de Step5/Step 7 que se encuentran en el servidor del departamento. Si se dispone del entorno avanzado de programacin Simatic Manager para Step 7 lo ms cmodo es consultar directamente la ayuda contextual con el comando F1.

2.2 Programacin de un temporizador


Para utilizar cualquier temporizado son imprescindible al menos dos instrucciones. La primera es una instruccin que carga el valor de memoria del temporizador en el registro ACU1 (alias AKK1 en la documentacin de STEP 5), el primer acumulador disponible en la ALU de los autmata SIEMENS. Esta instruccin es del tipo: L KT X.Y donde L es la instruccin conocida de carga y KT X.Y la constante de tiempo, es decir el lapso de tiempo que marca la temporizacin. La segunda instruccin necesaria es la de disparo y tiene la forma: <Tipo de temporizador> <Identificador de temporizador> As por ejemplo, la instruccin SI T1 indica que se va a emplear al temporizador T1 como temporizador de pulso. Una tpica secuencia de instrucciones para configurar el comportamiento de dicho temporizador es: U L SI E KT T 32.0 500.0 1

donde se emplea el temporizador de pulso para medir un tiempo de 5s con seal de disparo la entrada U E 32.0. Esto es as porque la seal de disparo queda determinada

Prctica 2 Automatizacin Industrial (10/11) por el valor lgico del registro RLO justo en el momento de ejecutarse la instruccin de disparo (SI T1 en el ejemplo), que en este caso es E 32.0 (suponiendo, claro est, que U E32.0 sea una instruccin de primera consulta). NOTA IMPORTANTE: Todos los temporizadores (y contadores) se ven estimulados por un flanco de la seal de disparo (y no por su nivel). Este flanco es normalmente de subida a excepcin de los temporizadores de retardo a la desconexin que detectan un flanco de bajada. Internamente, el temporizador guarda un registro binario con el valor de la seal de disparo en el anterior ciclo scan y comparan dicho valor con el del ciclo actual.

2.3 Valor de un temporizador


El valor lgico de un temporizador viene determinado por su comportamiento. Para razonar con dicho valor durante la programacin se emplea su identificador (por ejemplo T1) como argumento de un operador lgico (U, O, UN, ON etc.). Nunca se puede modificar el valor lgico de un temporizador (el acceso a memoria est protegida), por lo que las instrucciones S T1 o = T1 no son admisibles en STEP 5 (ni en STEP 7). El valor numrico de un temporizador es su valor de temporizacin (el tiempo contado hasta el momento). La instruccin L T1 carga dicho valor en el primer acumulador (ACU1) en formato decimal y LC T1 lo carga en formato BCD.

3 Contadores en STEP 5
Los elementos para la cuenta de eventos vienen predefinidos en STEP 5 por la letra Z seguido de un nmero de identificacin. El modelo S95-U lleva integrados 128 contadores numerados desde el 1 al 128. Al igual que los temporizadores, los contadores tienen un rea reservada en memoria de 16 bits de los que slo se emplean los 12 primeros para almacenar el valor de cuenta en formato BCD. Esto supone que, como en el caso del valor de temporizacin, el valor de cuenta est siempre comprendido entre 0 y 999 (en consecuencia, no es posible almacenar nmeros negativos). Cuando el valor del contador llega a 999 simplemente deja de aumentar ante un evento incremento. Lo mismo ocurre al intentar decrementar un contador a 0. Existen dos tipos de contadores en STEP 5: los ascendentes, que suman una unidad al valor de cuenta y los descendentes que restan una unidad. En ambos casos el evento de disparo es por flanco de subida (no por nivel). Los nemnicos de los operadores para SETP 5 son: ZV: Contador ascendente ZR : Contador descendente A diferencia de los temporizadores, basta una nica instruccin que determine la seal de disparo para emplear un contador en AWL. Dicha seal ser el valor del RLO en el momento de ejecutar la instruccin. Como ejemplo, la secuencia de instrucciones U ZV E Z 32.0 1

programa al contador Z1 para incrementar en una unidad su valor siempre que se produzca un evento flanco positivo de la seal E 32.0. Como no existe ninguna

Prctica 2 Automatizacin Industrial (10/11) informacin adicional, el valor de cuenta vale inicialmente 0. Para poder iniciar la cuenta en cualquier otro nmero, es necesario asignar dicho valor al contador antes de la instruccin de disparo. Este valor se carga previamente en formato BCD en el acumulador ACU1 y despus se utiliza una instruccin del tipo S <Identificador de contador> para realizar la copia al rea de memoria. Como ejemplo, el conjunto de instrucciones: U L S U ZV E KZ Z E Z 32.1 12 1 32.0 1

inicia la cuenta del contador ascendente en 12 cuando la entrada E 32.1 est a nivel alto. En este caso, tras el primer flanco positivo de E 32.0 el valor del contador ser 13, el segundo flanco positivo provoca que el valor del contador llegue a 14 y as sucesivamente. KZ <X> es la forma de definir en STEP 5 una constante en BCD. El nmero X (de tamao WORD), se introduce en formato decimal pero internamente se almacena como BCD (4 bytes para cada dgito). Para el caso de los contadores, es imprescindible introducir el valor de contaje con este formato.

3.1 Valor del contador


El valor lgico del contador es el mismo que le otorga el lenguaje C a un nmero: 0 (falso) si el contador vale 0 y 1 (verdadero) para cualquier otro valor (se recuerda que no es posible que el valor numrico del contador sea negativo). Para razonar con el valor lgico dentro de un programa se deben utilizar, como en el caso de los temporizadores, los operadores lgicos (por ejemplo U Z1 copia el valor lgico del contador en el registro RLO si es una instruccin de primera consulta). Anlogamente a los temporizadores, la instruccin L Z1 carga el valor del contador en decimal en el registro ACU1 y LC Z1 carga el valor en formato BCD.

EJERCICIO 1
Para una mejor comprensin de los recursos que ofrece STEP 5 en relacin con los temporizadores y contadores se recomienda al alumno el siguiente ejercicio: 1) Arranque la herramienta de desarrollo S5Win y abra un nuevo proyecto 2) En el bloque OB1 y mediante contactos escriba la siguiente ecuacin compuesta por un contador ascendente (ZV) y un temporizador de pulso con memoria (SV) (figura 2).

Prctica 2 Automatizacin Industrial (10/11)

Figura 2. Temporizacin y Cuenta 3) Alterne entre las representaciones AWL y KOP para ver la sintaxis empleada y su trascripcin al lenguaje ensamblador. 4) Cierre el editor del bloque y guarde la aplicacin. 5) Arranque el simulador y transfiera el bloque OB1. 6) Configure el simulador para visualizar las variables relativas al programa que acaba de transferir. En concreto, debe activar la entrada E 32.0 e incluir los identificadores Z1 y T1 en cualquiera de las cajas de texto situadas debajo de la etiqueta Visualizar. Al terminar este proceso, la ventana de simulacin debera tener el aspecto siguiente:

Figura 3. Ventana de simulacin del entorno S5Win

Prctica 2 Automatizacin Industrial (10/11) 7) Arranque ahora el simulador y verifique lo que ocurre cuando se pulsa y se apaga la seal E 32.0. 8) Modifique ahora el bloque OB1 cambiando el temporizador de tipo SV por uno de tipo SI. Para ello basta con editar el segmento en modo AWL y sobrescribir el texto de forma conveniente. 9) Grabe y transfiera el nuevo bloque OB1 modificado al simulador. Presione el botn Reset en la ventana de simulacin para borrar los valores del contador y el temporizador y ejecute nuevamente el programa. Hay alguna diferencia de comportamiento respecto al caso anterior? Justifique la respuesta al profesor.

EJERCICIO 2
Para realizar esta prctica con xito ser necesario programar el control del sistema automtico que se describe a continuacin en STEP 5, prestando especial atencin a los detalles de implementacin que se exigen.

1 Descripcin del automatismo


El ciclo de trabajo del automatismo implica el movimiento automtico de los dos cilindros de doble efecto de la maqueta neumtica a disposicin del alumno para que se correspondan con los diagramas de desplazamiento-fase que se muestran en la figura 4.
E C1

t
5s E C2 2s 2s

Figura 4. Diagrama Desplazamiento-Fase de dos cilindros de doble efecto El sistema arranca con ambos cilindros comprimidos. Tras un flanco positivo de un interruptor de arranque P_ON, se expanden simultneamente ambos cilindros. Posteriormente se producen compresiones y expansiones consecutivas del cilindro C2 mientras que el C1 se mantiene expandido, segn indica la figura. La tercera compresin del cilindro C2 marca el punto de sincronismo para la compresin de C1 y la terminacin el ciclo. El sistema debe cumplir adems las siguientes especificaciones: 1-Tiene un interruptor de arranque P_ON (detectado por flanco) y un pulsador de reanudacin P_CON (cuya funcin se describe en el apartado 3). Para simplificar el

Prctica 2 Automatizacin Industrial (10/11) problema, no se tiene en cuenta la necesidad de un pulsador OFF para detener el automatismo, ni la de un pulsador de emergencia. La figura 5 muestra el cuadro de mandos del operario. 2-Modo semiautomtico: Terminado el ciclo de produccin es necesario volver a pulsar ON para que empiece un nuevo ciclo.
8 CONT 9

Compresin de C1 y C2

P_ON

P_CON

Figura 5: Cuadro de mandos

A etapa de reposo
Figura 6: Secuencia de escape

3-Watch dog que controla el tiempo total de ciclo: El tiempo previsto para el ciclo completo es de 19 segundos ms los retardos derivados de los tiempos de compresin y expansin de los cilindros. Superado dicho tiempo en 1 segundo sin que haya terminado el ciclo principal se efectuar la siguiente secuencia de escape (ver figura 6): Se detiene toda accin (figura 6, etapa 8), lo que permitir revisar el estado de los cilindros. Corregido el problema manualmente, el operador activar el pulsador P_CON con lo que se comprimen los dos cilindros (figura 6, etapa 9). Dicho evento se detectar por nivel. Finalizada la compresin se vuelve a la etapa inicial de reposo y el sistema retorna al funcionamiento semiautomtico.

2 Normas para la realizacin de la prctica


Esta prctica se realizar en el laboratorio dispuesto a tal efecto situado en la primera planta. Para la realizacin de la misma ser necesario: 1) Modelado GRAFCET del ciclo principal (obviamente incluyendo la secuencia de escape). El modelo debe incluir obligatoriamente una rama de actividad para cada cilindro que funcionan en paralelo. 2) Estructuracin del cdigo: OB1, OB21 PB1: Ecuaciones de activacin de etapas (parte secuencial del automatismo) PB2: Ecuaciones de transicin Estado-Actuadores PB3: Secuencia de escape 3) Todos los bloques PB deben ser invocados incondicionalmente desde el bloque OB1 (instruccin SPA <Nombre de bloque>).

Prctica 2 Automatizacin Industrial (10/11) 4) Es obligatorio el uso de un contador descendente disparado por cada compresin del cilindro C2. Por tanto, debe arrancarse con valor inicial 3 y se utilizar su valor lgico como condicin dentro del programa. 5) Simulacin previa del programa en el ordenador y supervisin del profesor de prcticas del correcto funcionamiento. 6) Cableado del sistema y control de la maqueta neumtica. El alumno deber traer al inicio de la prctica un borrador con los Grafcets de niveles 1 y 2. Este punto es fundamental para poder terminar la prctica en tiempo y forma. Durante la realizacin de la misma se proceder en primer lugar a la simulacin del programa para posteriormente realizar el cableado y la ejecucin en el autmata S5. Al comienzo de la siguiente prctica el alumno entregar en papel el cdigo debidamente comentado, los Grafcets de niveles 1 y 2 as como la tabla de smbolos empleada para su realizacin. Consejos adicionales: 1) Se recomienda realizar una segmentacin adecuada del cdigo, lo que facilitar su posterior depuracin y evitar la aparicin de errores. 2) Ambos cilindros son de doble efecto y se controlan mediante electrovlvulas de 2 posiciones y 5 vas. 3) Toda la informacin adicional relativa a temporizadores y contadores para STEP 5 se encuentra a disposicin del alumno en la pgina Web del departamento (http://www.elai.upm.es).

También podría gustarte