El contador rápido para encoder “HSC” del S7-1200
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”.
Por el contrario, si tuviésemos una función o aplicación que la frecuencia a contar los pulsos fuese menor que la del OB a utilizar, sí deberíamos utilizar las instrucciones de contaje de uso común como “CTU, CTD o CTUD”.
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. Con lo que podemos concluir que puede utilizarse en tres modos distintos, pero sólo es posible que se elija un modo de funcionamiento:
• Contaje: cuenta los pulsos cuadrados.
• Frecuencia: actúa como medidor de frecuencia de pulsos cuadrados.
• Eje: es la configuración para generar pulsos cuadrados.
Figura 2. Elección del modo de funcionamiento de la instrucción HSC
Si decidimos que vamos a utilizar un contador rápido, deberemos de configurar sus particularidades. Para visualizar en el TIA PORTAL sus características y cambiar su configuración, realizaremos los siguientes pasos:
1. Realizaremos doble click en “Configuración de dispositivos”.
2. Seleccionaremos en la ventana del interface gráfico “PLC_1[CPU 1211C AC/DC/Rly]”, “Propiedades”.
3. Clicamos en “Contadores rápidos HSC”, en la ventana lateral visualizaremos todos los HSC.
4. Si en el caso de que quisiésemos configurar alguno concreto deberemos abrir la pestaña que acompaña a dicha selección y seleccionar el HSC concreto.
A continuación expongo mediante una imagen el total de la explicación:
Figura 3. Visualización genérica del proceso explicado
Como se observa en la imagen, la CPU puede llegar a configurar hasta 6 instrucciones HSC, cada una de ellas se configurarán de manera especial.
Fase de servicio
En la ‘Figura 3’, podemos observar en la parte inferior de la imagen una función ‘Fase servicio’, si clicamos sobre ella aparecerán distintas elecciones:
• Monofásica
• Bifásica
• Contador A/B 1X
• Contador A/B 4X
Figura 4. Cuadro de elección
Estas elecciones van en función del tipo de señal de entrada que tengamos, imaginemos que dispusiésemos de un encoder incremental en cuadratura, pues bien, deberemos escoger ‘Contador A/B 1X’ o ‘Contador A/B 4X’, la elección de 1X o 4X dependerá de la resolución que queramos.
Valores asignados por defecto por la CPU 1200
Hay parámetros que están asignados por la CPU de manera inicial. Estos parámetros son entre ellos:
• La “entrada en el hardware” por parte de la señal del dispositivo.
• La “dirección de entrada y salida” en la memoria.
• Y la “ID del hardware”.
Figura 5. Valores por defecto de la CPU 1200
El valor actual del contador
Para aquellos que empezamos a utilizar este tipo de instrucción nos puede llamar la atención de manera inicial, que ésta no dispone de una salida de manera visual en su forma estricta a igual que sus homólogas como “CTU, CTD o CTUD”.
El valor actual de entrada será almacenado en la memoria imagen de la CPU, en una dirección de entrada ‘I’. Cada HSC almacena por defecto en una determinada dirección:
HSC |
Tipo de datos |
Dirección predeterminada |
HSC1 |
DInt |
ID1000 |
HSC2 |
DInt |
ID1004 |
HSC3 |
DInt |
ID1008 |
HSC4 |
DInt |
ID1012 |
HSC5 |
DInt |
ID1016 |
HSC6 |
DInt |
ID1020 |
Figura 6. Valores predeterminados de los HSC
Una de las maneras para visualizar estas direcciones predeterminadas con el TIA PORTAL, podría ser realizando lo siguiente:
1. Hacer doble click en “Dispositivos y redes”.
2 .Visualizamos la pestaña de “Vista de dispositivos”.
3. Visualizamos o nos fijamos en “Vista general de dispositivos”.
Figura 7. Panel frontal de visualización HSC
Detalle del valor actual leído
El valor que devuelve un programa, será el contaje para ese instante pero éste seguirá contando, con lo que el valor real puede cambiar antes de que el programa finalice un proceso.
Cargar la configuración en la CPU
Para que la CPU interprete la instrucción HSC deberemos configurar su hardware de manera interna además de compilarla. Para ello deberemos realizar los siguientes pasos:
1. Nos deberemos situar encima del nombre del dispositivo dentro del “árbol del proyecto”, en nuestro caso “PLC_![CPU 1211C AC/DC/Rly]” de tal manera que clicando con el botón derecho del ratón, nos saldrá un menú.
2. En ‘Compilar’ deberemos seleccionar “Configuración de hardware”.
Figura 8. Modo de compilación
Posteriormente también deberemos cargar dicha configuración en la CPU, para ello, realizaremos el mismo procedimiento, escogiendo otro menú, siguiendo los mismos pasos pero escogiendo “Cargar en dispositivo”, a continuación expongo dicha imagen:
Figura 9. Modo "Cargar en dispositivo"
Es en este momento cuando tendremos correctamente configurada nuestra CPU, en la que podremos disponer de la información del contador en la dirección por defecto, dependiendo del HSC utilizado.
Ejemplo básico de utilización de la lectura del valor HSC
Previamente, deberemos tener la configuración de qué tipo de funcionamiento queremos realizar, cargándola como he explicado con anterioridad.
Para el caso que a continuación expongo, lo configuro de la manera siguiente:
• Modo de contaje: Contaje
• Fase de servicio: Monofásica
• Dirección inicial: 1000
Para visualizar el valor del contaje del encoder a continuación inserto una imagen para que veáis el programa básico:
Figura 10. Ejemplo básico de la lectura del valor
Si quieres visualizar dicho valor, clicar en el botón para dicho cometido:
Por otra parte, si queremos tener un mayor control de las distintas operaciones con dicho contador, sí se hace necesario utilizar la instrucción ‘CTRL_HSC’.
Más artículos del contador de alta velocidad
# El contador rápido para encoder “HSC” del S7-1200
# Guardar el valor del contador rápido encoder "HSC" para un S7-1200
# Hardware interrupt - Entradas de Interrupción en autómata Siemens S7-1200
# Hardware interrupt - Programacion encoder con autómata S7-1200 CTRL_HSC