ema 2: Programación de PLCs 1. SEP 7 2. PROGRAMACIÓN BÁSICA AWL Introducción Operaciones lógicas a nivel de bit Marcas Simbólicos Flancos emporizadores Diagnosis e información del sistema Contadores Carga y ransferencia Operaciones con acumuladores Saltos 3. PROGRAMACIÓN ESRUCURADA Página 1
Simbólicos Son nombres simbólicos que le podemos dar a entradas, salidas, marcas, temporizadores, contadores y módulos. En el programa podemos usar esos nombres en vez de las direcciones absolutas. Para cada símbolo debemos rellenar: nombre simbólico, dirección absoluta a la que sustituye, tipo de dato que es (se rellena sólo), y un comentario (opcional) Página 2
Simbólicos Hay dos maneras de crear tabla de símbolos: Desde el administrador Simatic (Programa S7): Fuentes Bloques Símbolos Creando abla de Símbolos desde OB1: herramientas --> tabla de símbolo. Esto llama al editor de símbolos. Se introducen símbolos y se cierra, abla --> cerrar y eso la guarda. Además para insertar/editar símbolos en tabla: Si estamos en el editor de AWL: insertar --> símbolo --> Nuevo. Se meten las entradas adecuadas y se acepta En Ver decidimos si se quiere ver: direcciones absolutas o símbolos. Página 3
Flancos Permiten averiguar en qué ciclo ha habido un flanco positivo FP (paso de 0 a 1 del RLO) o un flanco negativo FN (paso de 1 a 0 del RLO) de una señal. Se necesita una marca auxiliar que almacena el estado anterior, para poder compararlos. Puede usarse cualquier marca. Ej. Flanco positivo U E 124.0 FP M1.0 = A 124.1 E 124.0 M 1.0 RLO El RLO sólo estará a 1 un tiempo de ciclo: en el que cambie. Página 4
emporizadores Un temporizador es un contador de tiempos. La CPU 314- IFM tiene 128 temporizadores Por cada temporizador se reservan 16 bits y tiene un rango de valores de 10ms a 9990s (2h 46m 30s) Un temporizador realiza dos funciones Contar tiempo Poner una variable de salida asociada a nivel alto Los tipos de temporizadores se diferencian entre sí en: cuándo comienzan a contar el tiempo y cuándo activan la salida asociada. Página 5
emporizadores ipos de temporizadores SI - emporizador de impulso El tiempo máximo que la señal de salida permanece a 1 corresponde al valor de temporización o programado. La señal de salida permanece a 1 durante un tiempo inferior si la señal de entrada cambia a 0. SV - emporizador de impulso prolongado La señal de salida permanece a 1 durante el tiempo programado, independientemente del tiempo que la señal de entrada esté a 1. Página 6
emporizadores Resumen tipos temporizadores Página 7
emporizadores ipos de temporizadores SE - emporizador con retardo a la conexión La señal de salida es 1 solamente si ha finalizado el tiempo programado y (AND) la señal de entrada sigue siendo 1. SS - emporizador con retardo a la conexión con memoria La señal de salida cambia de 0 a 1 solamente si ha finalizado el tiempo programado, independientemente del tiempo en que la señal de entrada esté a 1. cuándo termina la temporización? SA - emporizador con retardo a la desconexión La señal de salida es 1 el tiempo que la señal de entrada es 1 y, a partir de ahí, el tiempo marcado por el temporizador. El temporizador arranca cuando la señal de entrada cambia de 1 a 0. Página 8
emporizadores Resumen tipos temporizadores Página 9
emporizadores Programación de un temporizador (0, 1,...) Carga el tiempo de inicialización en un acumulador interno con la operación load (L) Formato: L S5#aH_bM_cS_dMS Ejemplo: L S5#10M_30S Generación de un RLO que condicionará la activación del temporizador Activación del temporizador Formato: tipo nº timer Si hay un flanco en el RLO de entrada respecto del ciclo anterior. El temporizador se inicializa con el tiempo que se había cargado en el acumulador interno. SI 0 - SV 0 - SE 0 - SS 0 - SA 0 Página 10
Inicialización: U E124.0 L S5#10S L S5#10S U E124.0 SI 0 SI 0 Reseteo de un temporizador Ejemplo: U E124.1 R 0 Consulta de la salida Ejemplo: U 0 = A124.0 emporizadores Página 11
emporizadores emporizador de Impulso (SI) El temporizador arranca con el flanco de subida del RLO de entrada de la sentencia SI se detiene al finalizar el tiempo de temporización La salida asociada se pone a 1 al arrancar el temporizador se pone a 0 al terminar la temporización o al ponerse a cero el RLO de entrada E X.x RLO A- 0 Página 12
emporizadores emporizador de Impulso Prolongado (SV) El temporizador arranca con el flanco de subida del RLO de entrada de la sentencia SV se detiene al finalizar el tiempo de temporización La salida asociada se pone a 1 al arrancar el temporizador (flanco de subida del RLO de entrada de SV) se pone a 0 al terminar la temporización E X.x RLO A- 0 Página 13
emporizadores emporizador de Retardo a la Conexión (SE) El temporizador arranca con el flanco de subida del RLO de entrada de la sentencia SE se detiene al finalizar el tiempo de temporización o con un cero en el RLO de entrada La salida asociada se pone a 1 al terminar el temporizador se pone a 0 al cuando el RLO de entrada de SE pasa a cero E X.x RLO A- 0 Página 14
emporizadores emporizador de Retardo a la Desconexión (SA) El temporizador arranca con el flanco de bajada del RLO de entrada de la sentencia SA se detiene al finalizar el tiempo de temporización La salida asociada se pone a 1 con el flanco de subida del RLO de entrada de SA se pone a 0 al terminar la temporización E X.x RLO A- 0 Página 15
emporizadores emporizador de Retardo a la Conexión Memorizado (SS) El temporizador arranca con el flanco de subida del RLO de entrada de la sentencia SS se detiene al finalizar el tiempo de temporización La salida asociada se pone a 1 al terminar la temporización se pone a 0 sólo mediante una instrucción de reset E X.x RLO Reset A- 0 Página 16
emporizadores Otras consideraciones sobre los temporizadores Hay que ser muy cuidadosos si utilizamos el mismo temporizador en dos sitios distintos del código, ya que podemos estarlo arrancando o no en los distintos puntos y se producirá un funcionamiento erróneo. La variable que arranca el temporizador debe producir un flanco positivo. Para que ese flanco positivo se produzca, el programa debe pasar por ese punto con valor 0 y posteriormente con valor 1, o no verá el flanco. Esto es especialmente crítico en el caso de utilizar temporizadores con elementos que se verán posteriormente como saltos o bloques (FCs/FBs). Página 17
emporizadores Comprobar el funcionamiento de los diferentes tipos de temporizadores U E 124.0 L S5#10S SI 0 U E 124.1 R 0 Condición de arranque del temporizador Condición de reseteo del temporizador U 0 Presentación de la señal asociada al temporizador = A124.0 Probar otros ejemplos con SV SE SA SS Página 18
EJERCICIO (Entregable 2) A124.0 A124.1 A124.2 A125.0 A125.1 Se dispone de un semáforo, el cual en condiciones normales se encuentra del modo siguiente: - Verde vehículos - Rojo Peatones. En el mismo instante que un peatón accione sobre el pulsador situado en el semáforo, éste pasará a amarillo para vehículos, estado que durará durante 3. Finalizado este, pasara a estado rojo para vehículos y verde para peatones. El tiempo de duración fijado para rojo vehículos: 6. Press butto n E124.0 Finalizado el proceso, el semáforo regresará al estado normal. Durante el tiempo de duración del ciclo, deberá evitarse que cualquier nueva activación sobre el pulsador verde, rearme el ciclo. Página 19