CONTADORES
Lista de operaciones de contaje
Area de memoria
Los contadores tienen reservada un área de memoria en la CPU. Esta área de
memoria reserva una palabra de 16 bits para cada contador. KOP asiste 256
contadores. Las operaciones de contaje son las únicas funciones que tienen
acceso al área de memoria reservada para contadores.
Valor de contaje
Los bits 0 a 9 de la palabra de contaje contienen el valor de contaje en código
binario. El valor fijado por el usuario se transfiere del acumulador al contador al
activarse éste. El valor de contaje puede estar comprendido entre 0 y 999.
Dentro de este margen se puede variar dicho valor utilizando las operaciones
siguientes:
• ZAEHLER Parametrizar e incrementar/decrementar contador
• Z_VORW Parametrizar e incrementar contador
• Z_RUECK Parametrizar y decrementar contador
• ---( SZ ) Poner contador al valor inicial
• ---( ZV ) Incrementar contador
• ---( ZR ) Decrementar contador
ZAEHLER CONTADOR INCREMENTAL / DECREMENTAL
Z-Nr: Número de identificación del contador (Ej. Z10)
ZV: Entrada de contaje adelante
ZR: Entrada de contaje atrás
S: Entrada para predeterminar el contador
ZW: Valor numérico introducido en forma de C#<valor> en el margen comprendido
entre 0 y 999 para inicializar el contador
R: Entrada de puesta a cero
DUAL: Valor actual del contador (Número Hexagecimal)
DEZ: Valor actual del contador (Número BCD)
Q: Estado del contador
FUNCIONAMIENTO:
ZAEHLER queda inicializado con el valor de la entrada ZW cuando se produce un
flanco ascendente en la entrada S. Si hay un 1 en la entrada R, el contador se
pone a cero y el valor de contaje es 0.
El contador incrementa en "1" si el estado de señal de la entrada ZV cambia de "0"
a "1" y el valor del contador es menor que "999".
El contador se decrementa en "1" si en la entrada ZR se produce un flanco
ascendente y el valor del contador es mayor que "0". Al producirse un flanco
ascendente en ambas entradas de contaje se ejecutan ambas operaciones, y el
valor de contaje no varía.
El estado de señal de la salida Q será "1" si el valor de contaje es mayor que cero,
y será "0" si el valor de contaje es igual a cero.
EJEMPLO 1:
Al cambiar la entrada E 124.2 de "0" a "1", el contador toma el valor de
preselección 15. Si el estado de señal en E 124.0 cambia de "0" a "1", el valor del
contador Z2 incrementa en "1", a menos que el valor de Z2 fuera "999". Si E 124.1
cambia de "0" a "1", Z2 decrementa en "1", a no ser que el valor de Z2 fuera cero.
La salida A 124.0 será "1" si el valor de Z2 no es cero.
EJEMPLO 2:
Al cambiar la entrada E 124.0 de "0" a "1", el contador toma el valor de
preselección 10.
Si el estado de señal en E 124.1 cambia de "0" a "1", el valor del contador Z3
incrementa en "1".
Si E 124.2 cambia de "0" a "1", Z3 decrementa en "1".
La salida A 124.1 será "1" si el valor de Z3 llega a cero.
La salida A 124.0 será "1" si el valor de Z3 llega a 15.
Z_VORW CONTADOR INCREMENTAL
No Z: Número de identificación del contador (Ej. Z10)
ZV: Entrada de contaje adelante
S: Entrada para predeterminar el contador
ZW: Valor numérico introducido en forma de C#<valor> en el margen comprendido
entre 0 y 999 para inicializar el contador
R: Entrada de puesta a cero
DUAL: Valor actual del contador (Número Hexagecimal)
DEZ: Valor actual del contador (Número BCD)
Q: Estado del contador
FUNCIONAMIENTO:
Z_VORW queda inicializado con el valor de la entrada ZW cuando se produce un
flanco ascendente en la entrada S. Si hay un 1 en la entrada R, el contador se
pone a cero y el valor de contaje es 0.
El contador incrementa en "1" si el estado de señal de la entrada ZV cambia de "0"
a "1" y el valor del contador es menor que "999".
El estado de señal de la salida Q será "1" si el valor de contaje es mayor que cero,
y será "0" si el valor de contaje es igual a cero.
EJEMPLO:
En el siguiente programa, al activar E124.2, el contador es inicializado en 10. Al
pulsar 5 veces E124.1, se prende la lámpara.
Z_RUECK CONTADOR DECREMENTAL
Z-Nr: Número de identificación del contador (Ej. Z10)
ZR: Entrada de contaje atrás
S: Entrada para predeterminar el contador
ZW: Valor numérico introducido en forma de C#<valor> en el margen comprendido
entre 0 y 999 para inicializar el contador
R: Entrada de puesta a cero
DUAL: Valor actual del contador (Número Hexagecimal)
DEZ: Valor actual del contador (Número BCD)
Q: Estado del contador
FUNCIONAMIENTO:
ZAEHLER queda inicializado con el valor de la entrada ZW cuando se produce un
flanco ascendente en la entrada S. Si hay un 1 en la entrada R, el contador se
pone a cero y el valor de contaje es 0.
El contador se decrementa en "1" si en la entrada ZR se produce un flanco
ascendente y el valor del contador es mayor que "0".
El estado de señal de la salida Q será "1" si el valor de contaje es mayor que cero,
y será "0" si el valor de contaje es igual a cero.
EJEMPLO:
En el siguiente programa, al activar E124.2, el contador es inicializado en 5. Al
pulsar 5 veces E124.1, se prende la lámpara.
PONER EL CONTADOR A UN VALOR INICIAL
FUNCIONAMIENTO:
---( SZ ) se ejecuta solamente en caso de que haya un flanco ascendente en el
RLO. En este caso se transmite el valor predeterminado al contador indicado.
EJEMPLO:
El valor "100" quedará preseleccionado para el contador Z5 si en la entrada E 0.0
se produce un flanco ascendente (cambio de "0" a "1"). El valor del contador Z5 no
se altera en caso de que no se produzca ningún flanco ascendente.
INCREMENTAL EL CONTADOR
FUNCIONAMIENTO:
---( ZV ) incrementa en "1" el valor del contador indicado si hay un flanco
ascendente en el RLO y el valor del contador es menor que "999". El valor del
contador no se altera si no hay ningún flanco ascendente, ni tampoco en caso de
que el contador tenga ya el valor "999”.
EJEMPLO:
Si el estado de señal de E 0.0 cambia de "0" a "1" (flanco ascendente en el RLO),
se carga el valor predeterminado de "100" en el contador Z10.
Si el estado de señal de E 0.1 cambia de "0" a "1" (flanco ascendente en el RLO),
se aumenta en "1" el valor de contaje del contador Z10, a menos que el valor de
contaje sea igual a "999". El valor del contador Z10 no se altera si no hay ningún
flanco ascendente en el RLO.
Si el estado de señal de E 0.2 es 1, el contador se pone a "0".
DECREMENTAR EL CONTADOR
FUNCIONAMIENTO:
---( ZR ) decrementa en "1" el valor del contador indicado si hay un flanco
ascendente en el RLO y el valor del contador es mayor que "0". El valor del
contador no se altera si no hay ningún flanco ascendente, ni tampoco en caso de
que el contador tenga ya el valor "0.
EJEMPLO:
Si el estado de señal de E 0.0 cambia de "0" a "1" (flanco ascendente en el RLO),
se carga el valor predeterminado de "100" en el contador Z10.
Si el estado de señal de E 0.1 cambia de "0" a "1" (flanco ascendente en el RLO),
se decrementa en "1" el valor de contaje del contador Z10, a menos que el valor
de contaje sea igual a "0". El valor del contador Z10 no se altera si no hay ningún
flanco ascendente en el RLO.
A 4.0 se conecta si el valor de contaje equivale a cero.
Si el estado de señal de E 0.2 es "1", el contador se pone a "0".
Solución problemas Taller 3
Problema 1
Problema 2
Problema 3
Problema 4
Problema 5