Bloques de función predefinidos (BF)
Temporizador %TMi
Contador/descontador %Ci
Monoestable% MNi
Registro %Ri
Programador cíclico Drum %DRi
Temporizador serie 7 %Ti
Temporizador %TMi
El temporizador propone 3 modos de
funcionamiento:
.TON: este modo permite efectuar la gestión de retardos con conexión. El retardo es programable y puede modificarse desde el terminal o
no.
.TOF: este modo permite efectuar la gestión de retardos con desconexión. El retardo es programable y puede modificarse desde el terminal o
no.
.TP: este modo permite elaborar un impulso de duración precisa. La duración es programable y puede modificarse desde el terminal o no.
Casos específicos
• Incidencia de un arranque en frío: (%S0=1) tiene como consecuencia la puesta a 0 del valor actual, la puesta a 0 de la salida %TMi.Q y la reinicialización del valor de preselección al valor definido en la configuración.
• Incidencia de un rearranque en caliente: (%S1=1) no tiene incidencia en el valor actual del temporizador, ni en el valor de preselección. El valor actual no evoluciona durante el tiempo del corte de corriente.
• Incidencia de un paso a STOP, una desactivación de tarea o una ejecución de punto de parada: no inmoviliza el valor actual.
• Incidencia de un salto de programa: el hecho de no explorar las instrucciones donde se programa el bloque temporizador no inmoviliza el valor actual %TMi.V que sigue aumentando hacia %TMi.P. Asimismo, el bit %TMi.Q asociado a la salida Q del bloque temporizador conserva su funcionamiento normal y, por consiguiente, puede ser probado por otra instrucción. En cambio, no se activa la salida cableada directamente a la salida del bloque, puesto que el autómata no la explora.
• Prueba del bit %TMi.Q: se aconseja probar el bit %TMi.Q una sola vez en el programa.
• Incidencia de la modificación de la preselección %TMi.P: la modificación del valor de preselección mediante una instrucción o en modo de ajuste sólo se tiene en cuenta a la próxima activación del temporizador. La modificación del valor de preselección en el editor de variables (configuración) sólo se tiene en cuenta después de un arranque en frío (%S0=1).
Lenguajes IL y LD
Características
Número de temporizador %TMi De 0 a 63
Modo
TON . retardo con conexión (valor predeterminado)
TOF . retardo con desconexión
TP . monoestable
Base de tiempo: TB 1 mn (valor predeterminado), 1 s, 100 ms, 10 ms. Cuanto más débil la base de tiempo, tanto más preciso será el temporizador. 16 tempo. máx. con TB = 10 ms.
Valor actual %TMi.V Palabra que aumenta desde 0 hacia %TMi.P en el transcurso del temporizador. Puede ser leída y probada, pero no escrita por el programa (1).
Valor de preselección %TMi.P 0<%TMi.P<9999. Palabra que puede ser leída, probada y escrita por el programa. De forma predeterminada, se pone a 9999. La duración o el retardo elaborado es igual a %TMi.P x TB.
Ajuste desde el terminal (MODIF) Y/N Y: posibilidad de modificar el valor de preselección %TMi.P en modo de ajuste.N: sin acceso en modo de ajuste.
Entrada "Activación" IN Activa el temporizador en el flanco ascendente (modo TON o TP) o descendente (modo TOF).
Salida "Temporizador" Q Bit asociado %TMi.Q. Su puesta a 1 depende de la función realizada: TON, TOF o TP.
(1) %TMi.V puede ser modificado desde el terminal.
Contador/descontador %Ci
El bloque de función contador/descontador permite efectuar el contaje o descontaje de sucesos. Estas dos operaciones pueden ser simultáneas.
Funcionamiento
• Contaje: al aparecer un flanco ascendente en la entrada de contaje CU, el valor actual aumenta en una unidad. Cuando este valor se vuelve igual al valor de preselección %Ci.P, el bit de salida %Ci.D "preselección alcanzada" asociada a la salida D pasa al estado 1. El bit de salida %Ci.F (rebasamiento contaje) pasa al estado 1 cuando %Ci.V pasa de 9999 a 0. Se pone de nuevo a 0, si el contador sigue contando.
• Descontaje: al aparecer un flanco ascendente en la entrada de descontaje CD, el valor actual %Ci.V disminuye en una unidad. El bit de salida %Ci.E (rebasamiento de descontaje) pasa al estado 1 cuando %Ci.V pasa de 0 a 9999. Se pone a 0, si el contador sigue descontando.
• Contaje/Descontaje: para utilizar simultáneamente las funciones de contaje y descontaje, es necesario controlar las dos entradas correspondientes: CU y CD. Estas entradas se exploran sucesivamente. Si las dos entradas están simultáneamente en el estado 1, el valor actual permanece sin cambiar.
• Puesta a cero: cuando esta entrada se pone a 1, el valor actual %Ci.V se fuerza a 0 y las salidas %Ci.E, %Ci.D y %Ci.F se ponen a 0. La entrada de puesta a cero es prioritaria.
• Preselección: si la entrada de "preselección" S está en el estado 1 y la entrada de puesta a cero R a 0, el valor actual %Ci.V toma el valor %Ci.P y la salida %Ci.D el valor 1.
Casos específicos
• Incidencia de un arranque en frío: (%S0=1)
- puesta a 0 del valor actual %Ci.V.
- puesta a 0 de los bits de salida %Ci.E, %Ci.D y %Ci.F.
- inicialización del valor de preselección por el definido en la configuración.
• Incidencia de un rearranque en caliente (%S1=1), un paso a STOP, una desactivación de tarea o una ejecución de punto de parada: sin incidencia en el valor actual del contador (%Ci.V).
• Incidencia de la modificación de la preselección %Ci.P: el valor de preselección modificado mediante una instrucción o en modo de ajuste se tiene en cuenta cuando la aplicación efectúa la gestión del bloque (activación de una de las entradas).
Lenguajes IL y LD
Características
Número de contador %Ci De 0 a 31
Valor actual %Ci.V Palabra aumentada o disminuida en función de las entradas CU y CD. Puede ser leída y probada, pero no escrita por el programa (1).
Valor de preselección %Ci.P 0<%Ci.P<9999. Palabra que puede ser leída, probada y escrita. (Puesta a 9999 de forma predeterminada)
Ajuste desde el terminal (MODIF) Y/N Y: posibilidad de modificar el valor de preselección en modo de ajuste.N: sin acceso en modo de ajuste.
Entrada puesta a cero R En el estado 1: %Ci.V = 0.
Entrada preselección S En el estado 1: %Ci.V = %Ci.P.
Entrada contajeEntrada descontaje CUCD Aumenta %Ci.V en el flanco ascendente. Disminuye %Ci.V en el flanco ascendente.
Salida rebasamiento E (Empty) El bit asociado %Ci.E=1, cuando el descontaje %Ci.V pasa de 0 a 9999 (se pone a 1 cuando %Ci.V alcanza 9999; se pone a 0 si el contador sigue descontando), %S18=1.
Salida preselección alcanzada D (Done) El bit asociado %Ci.D=1, cuando %Ci.V=%Ci.P.
Salida rebasamiento F (Full) El bit asociado %Ci.F =1, cuando %Ci.V pasa de 9999 a 0 (se pone a 1 cuando %Ci.V alcanza 0; se pone a 0 si le contador sigue contando).
(1) %Ci.V puede ser modificado por el terminal.
Monoestable %MNi
El bloque de función monoestable permite elaborar un impulso de duración precisa.La duración es programable y puede modificarse desde el terminal o no.
Funcionamiento
Cuando aparece un estado 1 (flanco ascendente) en la entrada S del monoestable, el valor actual %MNi.V toma el valor de preselección %MNi.P y disminuye hacia 0 en una unidad a cada impulso de la base de tiempo TB.
El bit de salida %MNi.R (Running) asociado a la salida R pasa al estado 1 en cuanto el valor actual %MNi.V es distinto de 0.
Cuando el valor actual %MNi.V = 0, el bit de salida %MNi.R se pone de nuevo a 0.
Entrada "inicio" S: Valor actual %MNi.V: Salida "en curso" R:
Casos específicos
• Incidencia de un arranque en frío: (%S0 = 1) tiene como consecuencia la carga del valor de preselección en el valor actual %MNi.P; se pierde el valor de preselección modificado en el terminal y la salida %MNi.R se pone de nuevo a 0.
• Incidencia de un rearranque en caliente: (%S1) no tiene incidencia en el valor actual del monoestable (%MNi.V).
• Incidencia de un paso a STOP, una desactivación de tarea o una ejecución de punto de parada: cuando el autómata pasa a STOP, el valor actual no se inmoviliza. Ocurre lo mismo cuando se desactiva la tarea en curso o cuando se ejecuta un punto de parada.
• Incidencia de un salto de programa: el hecho de no explorar la red donde se programa el bloque monoestable no inmoviliza el valor actual %MNi.V que sigue disminuyendo hacia 0.
Asimismo, el bit %MNi.R asociado a la salida del bloque monoestable conserva su funcionamiento normal y, por consiguiente, puede ser probado en otra red.
Sin embargo, no se activarán las bobinas directamente "conectadas" a la salida del bloque (ej. %Q3.0) puesto que no las explora el autómata.
• Prueba del bit %MNi.R: este bit puede cambiar de estado durante el ciclo.
Lenguajes IL y LD
Características
Número %Mni De 0 a 7
Base de tiempo TB 1 mn, 1 s, 100 ms, 10 ms (valor predeterminado: 1mn).
Valor actual %MNi.V Palabra que aumenta de %MNi.P hacia 0 en el transcurso del temporizador. Puede ser leída y probada, pero no escrita.
Valor de preselección %MNi.P 0 < %MNi.P < 9999. Palabra que puede ser leída, probada y escrita. La duración del impulso (PRESET) es igual a %MNi.P x TB.
Modificación MODIF Y/N Y: posibilidad de modificar el valor de preselección en modo de ajuste.N: sin acceso en modo de ajuste.
Entrada "Inicio" S(Start) En el flanco ascendente %MNi.V = %MNi.P, luego %MNi.V disminuye hacia °0.
Salida "Monoestable" R(Running) El bit asociado %MNi.R está en el estado 1 si %MNi.V > 0 (transcurso "en curso") %MNi.R = 0 si %MNi.V = 0
Registro %Ri
Un registro es un bloque de memoria que permite almacenar hasta 255 palabras de 16 bits de dos modos distintos:- cola de espera (primero en entrar, primero en salir) llamada pila FIFO (First In, First Out),- pila (último en entrar, primero en salir) llamada pila LIFO (Last In, First Out).
Funcionamiento
FIFO
Cola de espera
FIFO (First In, First Out)La primera información introducida es la primera en salir.Cuando se tiene en cuenta una petición de entrada (flanco ascendente en la entrada I o activación de la instrucción I), el contenido de la palabra de entrada %Ri.I previamente cargada se almacena en lo alto de la cola (fig. a).Cuando la cola está llena (salida F=1), es imposible almacenar, %S18 = 1.Cuando se tiene en cuenta una petición de salida (flanco ascendente en la entrada O o activación de la instrucción O), la última palabra de información en la cola se almacena en la palabra de salida %Ri.O y el contenido del registro se desplaza un paso hacia abajo (fig. b).Cuando el registro está vacío (salida E=1), es imposible desalmacenar; la palabra de salida %Ri.O ya no evoluciona y conserva su valor.Es posible reinicializar la cola en todo momento (estado 1 en la entrada R o activación de la instrucción R).
LIFO
Pila
LIFO (Last In, First Out)La última información introducida es la primera en salir.Cuando se tiene en cuenta una petición de entrada (flanco ascendente en la entrada I o activación de la instrucción I), el contenido de la palabra de entrada %Ri.I previamente cargada se almacena en lo alto de la pila (fig. c).Cuando la pila está llena (salida F=1), es imposible almacenar, %S18 = 1.Cuando se tiene en cuenta una petición de salida (flanco ascendente en la entrada O o activación de la instrucción O), la palabra de información más alta (última información introducida) se almacena en la palabra %Ri.O (fig d).Cuando el registro está vacío (salida E=1), es imposible desalmacenar; la palabra de salida %Ri.O ya no evoluciona y conserva su último valor. Es posible reinicializar la pila en todo momento (estado 1 en la entrada R o activación de la instrucción R). El elemento indicado por el cursor se encuentra pues en lo alto de la pila.
Lenguajes IL y LD
El ejemplo de programa muestra la carga de %R2.I por la palabra %MW34 a petición de la entrada %I1.2 si el registro R2 no está lleno (%R2.F=0). %M1 asegura la petición de entrada en el registro. La petición de salida es realizada por la entrada %I1.3; %R2.O se almacena en %MW20 si el registro no está vacío (%R2.E=0). Configuración:
Los parámetros siguientes se introducen al configurar el bloque de registro:- Números: 1 a 4- Modo: FIFO o LIFO- Longitud: 1 a 255
Casos específicos
• Incidencia de un arranque en frío: (%S0=1) tiene como consecuencia la inicialización del contenido del registro. El bit de salida %Ri.E asociado a la salida E se pone a 1.
• Incidencia de un rearranque en caliente: (%S1=1) no tiene incidencia en el contenido del registro ni en el estado de los bits de salida.
• En la puesta a 0 (entrada R o instrucción R)
- En el lenguaje de contactos, los historiales de las entradas I y O se actualizan con los valores cableados.
- En el lenguaje Lista de instrucciones, los historiales de las entradas I y O no se actualizan; cada uno conserva el valor anterior a la llamada.
Número de registro %Ri De 0 a 3
Modo FIFO LIFO Cola de espera (predeterminado).Pila
Longitud LEN Número de palabras de 16 bits (1 < LEN < 255) que componen el bloque de memoria registro.
Palabra de entrada %Ri.I Palabra de acceso al registro. Puede ser leída, probada y escrita.
Palabra de salida %Ri.O Palabra de salida del registro. Puede ser leída, probada y escrita.
Entrada (o instrucción) "Almacenamiento" I (In) En el flanco ascendente, almacena el contenido de la palabra %Ri.I en el registro.
Entrada (o instrucción) "Desalmacenamiento" O (Out) En el flanco ascendente, almacena una palabra de información en la palabra %Ri.O.
Entrada (o instrucción) "Puesta a cero" R (Reset) En el estado 1, inicializa el registro.
Salida "Vacío" E (Empty) El bit %Ri.E asociado indica que el registro está vacío. Puede se probado.
Salida "Lleno" F (Full) El bit %Ri.F asociado indica que el registro está lleno. Puede ser probado.
Nota: cuando las entradas I y O se activan simultáneamente, el almacenamiento se realiza antes del desalmacenamiento.
Programador cíclico Drum %DRi
Según un principio de funcionamiento parecido al programador de levas, el programador cíclico (Drum) cambia de paso en función de sucesos exteriores. A cada paso, el punto alto de una leva emite un comando explotado por el automatismo. En el caso del programador cíclico, estos puntos altos se simbolizarán por un estado 1 al nivel de cada paso y se asignarán a bits de salida %Qi.j o internos %Mi llamados bits de orden.
Funcionamiento
Funcionamiento - el programador cíclico (Drum) se compone de:
- una matriz de datos constantes (las levas) organizada en pasos de 0 a N-1 (con N el número de pasos configurados) y de 16 informaciones binarias (estado del paso) almacenadas en columnas marcadas de 0 a F - una lista de bits de orden (1 por columna) que corresponden a las salidas %Q2.i o %Q3.i o a los bits internos %Mi. Durante el paso en curso, los bits de orden asumen los estados binarios definidos para este paso.Programador configurado con 16
pasos.
Casos específicos
• Incidencia de un arranque en frío: (%S0=1) tiene como consecuencia la reinicialización del programador al paso 0 (con la actualización de los bits de orden).
• Incidencia de un rearranque en caliente: (%S1=1) tiene como consecuencia la actualización de los bits de orden, según el paso en curso.
• Incidencia de un salto de programa, una desactivación de tarea o una ejecución de punto de parada: el hecho de no explorar el programador cíclico no provoca la puesta a 0 de los bits de orden.
• Actualización de los bits de orden: se efectúa sólo al cambiar de paso o al rearrancar en caliente o en frío.
Lenguajes IL y LD
Características
Número %DRi De 0 a 7
Número de pasos LEN De 1 a 16 (valor predeterminado: 16)
Base de tiempo TB 1 mn, 1 s, 100 ms, 10 ms (valor predeterminado: 1 mn)
Tiempo transcurrido o duración del paso en curso %DRi.V 0<%DRi.V<9999. Palabra que se pone a 0 a cada cambio de paso. Puede ser leída y probada, pero no escrita.
Número del paso en curso %DRi.S 0<%DRi.S<15. Palabra que puede ser leída y probada. Sólo puede ser escrita a partir de un valor inmediato. %S18 = 1 si se intenta escribir un valor de paso no configurado.
Entrada "regreso al paso 0" R (RESET) En el estado 1, inicializa el programador al paso 0.
Entrada "avance" U (UP) En el flanco ascendente, avanza el programador de un paso y actualiza los bits de orden.
Salida F (FULL) Indica que el último paso definido está en curso. El bit %DRi.F asociado puede ser probado (%DRi.F=1 si %DRi.S=número de pasos configurados - 1).
Estado de un paso %DRi.Wj Palabra de 16 bits que define los estados del paso j del programador i. Puede ser leída y probada, pero no escrita.
Bits de orden Salidas o bits internos asociados al paso (16 bits de orden).
Temporizador serie 7 %Ti
Este bloque de función temporizador, compatible con los bloques serie 7 PL7-2/3, permite controlar acciones específicas con retardo.El valor de este retardo puede programarse y modificarse desde el terminal o no.
Lenguajes IL y LD
Casos específicos
• Incidencia de un arranque en frío: (%S0 = 1) tiene como consecuencia la carga del valor de preselección (definido en la configuración) en el valor actual y la puesta a 0 de la salida %Ti.D; se pierde el valor de preselección tal vez modificado en el terminal.
• Incidencia de un rearranque en caliente: (%S1) no tiene incidencia en el valor actual del temporizador.
• Incidencia de un paso a STOP: el paso a STOP del autómata no inmoviliza el valor actual. Ocurre lo mismo cuando se desactiva la tarea en curso o se ejecuta un punto de parada.
• Incidencia de un salto de programa: el hecho de no explorar la red donde se programa el bloque temporizador no inmoviliza el valor actual %Ti.V que sigue disminuyendo hacia 0.
Asimismo, los bits %Ti.D y %Ti.R asociados a salidas D y R del bloque temporizador conservan su funcionamiento normal y, por consiguiente, pueden probarse en otra red.
En cambio, las bobinas que se "conectan" directamente a salidas del bloque no se activarán puesto que el autómata no las explora.
• Prueba de los bits %Ti.D y %Ti.R: estos bits pueden cambiar de estado en curso del ciclo.
Características
Número %Ti De 0 a 63
Base de tiempo TB 1 mn, 1 s, 100 ms, 10 ms (valor predeterminado: 1mn)
Valor actual %Ti.V Palabra que disminuye desde %Ti.P hacia 0 en el transcurso del temporizador. Puede ser leída y probada, pero no escrita.
Valor de preselección %Ti.P 0 < %Ti.P < 9999. Palabra que puede ser leída, probada y escrita. De forma predeterminada, se pone a 9999.
Modificación MODIF Y/N Y: posibilidad de modificar el valor de preselección en modo de ajuste. N: sin acceso en modo de ajuste.
Entrada "Activación" E(Enable) En el estado 0, reinicializa el temporizador %Ti.V = %Ti.P.
Entrada "Control" C(Control) En el estado 0, inmoviliza el valor actual %Ti.V.
Salida "Temporizador" transcurrido D(Done) El bit asociado %Ti.D = 1, si el temporizador transcurrido %Ti.V° = °0.
Salida "Temporizador en curso" R(Running) El bit asociado %Ti.R = 1, si el temporizador %Ti.P > %Ti.V° > °0 y si la entrada C está en el estado 1.