Tarea 9
Tarea 9
Tarea 9
SEDE LATACUNGA
ELECTRÓNICA E INSTRUMENTACIÓN
DESARROLLO ..........................................................................................................................3
RECOMENDACIONES ..........................................................................................................11
BIBLIOGRAFÍA ......................................................................................................................11
2
INTRODUCCIÓN
A veces, tenemos la necesidad de realizar operaciones de contaje a una frecuencia mayor
que la que puede tener un OB cualquiera, una aplicación típica podría ser el de un encoder,
éstos suelen tener frecuencias de trabajo mayores que las de un OB típico como el del OB1.
Aunque generalmente se suelen utiliza para realizar aplicaciones con encoders, para el
contaje de los pulsos, se deben realizar mediante las instrucciones adecuadas y en este caso
las instrucciones que deben tenerse en cuenta son las de lectura rápida, más concretamente
la “CTRL_HSC”.
Los contadores rápidos son elementos que cuentan los eventos más deprisa de lo que puede
explorarlos la CPU. Tienen un valor de contaje de entero de 32 bits con signo (denominado
también valor actual). Para acceder al valor de contaje del contador rápido, se indica la
dirección del mismo (utilizando el identificador HC) y el número del contador (p.ej. HCO).
El valor actual del contador rápido es de sólo lectura, pudiéndose acceder al mismo sólo en
formato de palabra dobie de 32 bits.
DESARROLLO
CONTADORES RÁPIDOS
Es un módulo de hardware independiente de la CPU, capaz de contar impulsos exteriores de
alta frecuencias procedentes de captadores como codificadores incrementales, detectores de
proximidad, etc.
3
El contador rápido puede estar incluido en el propio autómata, en algunos modelos
compactos de gama baja, o formar parte de módulos de expansión (caso de modelos
compactos) o como tarjeta especial en los de tipo modular.
El acceso al contador rápido puede establecerse de dos formas:
La frecuencia máxima de un contador rápido depende del tipo de CPU, todos los contadores
disponen de entradas que soportan funciones tales como relojes, control del sentido, puesta
a O y arranque, para los contadores de dos fases, ambos relojes pueden funcionar a máxima
frecuencia. En el caso de los contadores A/B, se puede elegir entre una velocidad máxima
de conteo simple (lx) o cuádruple (4x). Todos los contadores funcionan a velocidades
máximas sin interferirse mutuamente
Tienen un valor de contaje de entero de 32 bits con signo el cual es denominado como valor
actual. Para su utilización se debe acceder al valor de contaje del contador rápido, se indica
la dirección del mismo utilizando el identificó ador HC (número del contador rápido) y el
número del contador.
APLICACIONES
Los contadores rápidos se utilizan habitualmente como accionamiento para temporizadores
que funcionan impulsados por un árbol que gira a un régimen constante y provisto de un
encoder incremental. Éste último provee un número determinado de valores de contaje por
giro, así como un impulso de puesta a 0 una vez por giro. El reloj (o relojes) y el impulso de
puesta a 0 del encoder suministran las entradas para el contador rápido.
En el PLC S7-200
Los contadores rápidos cuentan eventos que se ejecutan más deprisa de lo que es posible
controlarlos en los ciclos de la CPU. Las CPUs S7-200 disponen de contadores rápidos
integrados que cuentan eventos externos a velocidades de hasta 20 KHz sin influir en el
funcionamiento de la CPU. A continuación, se describen dichos contadores rápidos:
• HSC0 y HSC4 son contadores versátiles que se pueden configurar para uno de ocho
modos de operación diferentes, incluyendo entradas de reloj de fase simple y de dos
fases.
• HSC1 y HSC2 son contadores versátiles que se pueden configurar para uno de doce
modos de operación diferentes, incluyendo entradas de reloj de fase simple y de dos
• fases.
• HSC3 y HSC5 son contadores sencillos que tienen sólo un modo de operación.
4
Figura 2.- Encoders Incrementales
Para cada modelo de CPU existe un número de contadores rápidos distinto. Por ejemplo la
CPU- 221 y la CPU-222 disponen de 4 mientras que la CPU-224 dispone de 6 contadores
rápidos.
Tabla 1: Contadores rápidos HSC0, HSC3, HSC4, HSC5
Como muestra la tabla, si HSC0 se está utilizando en los modos 3 a 10 (reloj y sentido o
alguna de las dos fases de reloj), HSC3 no se podrá utilizar, puesto que tanto HSC0 como
HSC3 utilizan la entrada I0.1. Esto mismo es aplicable a HSC4 y HSC5 (ambos utilizan
I0.4). Las entradas I0.0 a I0.3 se pueden utilizar no sólo para los contadores rápidos, sino
5
también para ocho eventos de interrupción de flanco. Dichas entradas no se pueden utilizar
simultáneamente para interrupciones de flanco y para los contadores rápidos.
Una misma entrada no se puede utilizar para dos funciones diferentes. No obstante, cualquier
entrada que no se esté utilizando en el modo actual del contador rápido se puede utilizar para
otro fin. Por ejemplo, si HSC0 se está utilizando en modo 2 (que utiliza las entradas I0.0 e
I0.2), I0.1 se podrá utilizar para interrupciones de flanco o para HSC3.
Tabla 2: Contadores rápidos HSC1 y HSC2
La tabla 2 muestra los modos de operación asistidos por los contadores rápidos HSC1 y
HSC2. Las CPU´s 224 y 226 son las únicas que soporta dichos contadores rápidos.
Configuración
Antes de poder utilizar un contador rápido es preciso elegir su modo de operación. Para ello
se utiliza la operación HDEF (Definir modo para contador rápido). HDEF establece la
conexión entre un contador rápido (HSCx) y el modo de contaje. Por cada contador sólo se
puede ejecutar una operación HDEF. Un contador rápido se define utilizando la marca del
primer ciclo SM0.1 (este bit se activa sólo en el primer ciclo y se desactiva posteriormente)
para llamar a la subrutina que contiene la operación HDEF.
Definir modo para contador rápido, Activar contador rápido.
La operación Definir modo para contador rápido asigna un modo (MODE) al contador rápido
direccionado (HSC). Consulte la siguiente tabla.
6
Tabla 3: Modos de operación del HSC0 (CPU 221, CPU222, CPU 224 y CPU 226)
7
Direccionamiento de los contadores rápidos (HC)
Para acceder al valor de contaje del contador rápido, se indica la dirección del mismo
(utilizando el identificador HC) y el número del contador (p.ej. HC0). El valor actual del
contador rápido es de sólo lectura, pudiéndose acceder al mismo sólo en formato de palabra
doble (32 bits), como muestra la siguiente figura.
8
EJEMPLO 1
Modos de Inicialización 0, 1 ó 2 para el contador rápido HSC1 Para inicializar HSC1 como
contador adelante/atrás de fase simple con control interno del sentido de contaje (modos 0,
1 ó 2):
1. Con la marca del primer ciclo, llame a una subrutina para ejecutar la inicialización.
Puesto que se utiliza una llamada a subrutina, los siguientes ciclos ya no llaman a la misma,
con lo cual se acorta el tiempo de ciclo y el programa queda mejor estructurado.
2. Cargue la marca SMB47 en la subrutina de inicialización conforme a la operación de
control deseado. Por ejemplo:
❖ SMB47 = 16#F8 Resultados:
❖ Se habilita el contador.
❖ Se escribe un nuevo valor actual.
❖ Se escribe un nuevo valor predeterminado.
❖ Se ajusta el sentido de contaje adelante.
❖ Se ajusta la actividad alta de las entradas de arranque y de puesta a 0.
3. Ejecute la operación HDEF con la entrada HSC puesta a 1 y la entrada MODE a 0 para
puesta a 0 o arranques no externos, o bien a 1 para puesta a 0 externa y sin arranque, o
bien a 2 para puesta a 0 y arranques externos.
4. Cargue el valor actual deseado en SMD48 (valor de palabra doble) (cargue 0 para borrar
la marca).
5. Cargue el valor predeterminado deseado en SMD52 (valor de palabra doble).
6. Para averiguar si el valor actual es igual al predeterminado, programe una interrupción
asociando el evento de interrupción CV = PV (evento 13) a una rutina de interrupción.
Para obtener más información acerca de la utilización de interrupciones, consulte el
apartado 9.15.
7. Para poder detectar una puesta a 0 externa, programe una interrupción asociando el
evento de interrupción Puesta a 0 externa (evento 15) a una rutina de interrupción.
8. Ejecute la operación Habilitar todos los eventos de interrupción (ENI) para habilitar las
interrupciones.
9. Ejecute la operación HSC para que el sistema de automatización S7-200 programe el
contador HSC1.
10. Finalice la subrutina
9
EJEMPLO 2
CONCLUSIONES
• Los contadores son variables internas del PLC que nos permite registrar las veces
que una marca, entrada o salida a realizado el cambio entre 0 a 1 lógico.
10
• Los contadores en algunos autómatas suelen compartir zona de memoria junto con
los temporizadores, con lo que en esos casos hay más limitación a la hora de utilizar
contadores (y también temporizadores). En otros los contadores tienen su propia zona
de memoria, siendo también limitada, pero en ningún caso dependiente de la cantidad
de temporizadores que se utilicen.
RECOMENDACIONES
• Es una instrucción bastante versátil, ya que esta misma instrucción también puede
servir para medir frecuencia de pulsos. Estos contadores también son utilizados para
la instrucción de generación de pulsos.
• Al finalizar para que la configuración del contador rápido sea reconocida por el PLC,
debemos cargar al dispositivo la configuración de hardware.
BIBLIOGRAFÍA
11