6. Contador ascendente - Programación en TIA Portal V16 - Tutorial básico

Objetivo del tutorial

El objetivo de este tutorial es enseñar el funcionamiento y programación de la instrucción de contador ascendente disponible dentro del software de programación TIA Portal V16.

Configuración utilizada en el proyecto

  • CPU: 1511C-1 PN - Referencia: 6ES7 511-1CK01-0AB0

Contador ascendente (CTU)

Parámetros de la instrucción

  • CU: Entrada de contaje, este parámetro es el que se encarga de incrementar el valor del contador al activarse.
  • R: Entrada de reset, al activarse este parámetro, el valor del contador (CV) se reinicia a 0.
  • PV: Valor con el que se activa la salida Q del contador.
  • Q: Estado del contador, este parámetro se activa cuando el valor del parámetro CV es igual al valor del parámetro PV.
  • CV: Valor de contaje actual, este parámetro se incrementa en 1 cada vez que se produce un flanco positivo en el parámetro CU. Este valor deja de incrementarse cuando la señal de reset (R) está activada.

Funcionamiento de la instrucción

El funcionamiento de esta instrucción es bastante sencillo. Cada vez que se produzca un flanco positivo en el parámetro CU el valor del contador (CV) aumentará en 1. Una vez el valor del contador (CV) alcanza el valor configurado en el parámetro PV, se activa la salida Q. La salida Q permanece activa hasta que se activa la señal de reset (R).

Ejemplo de programación

Para este tutorial vamos a programar la instrucción de contador ascendente directamente en el OB1, utilizando el lenguaje KOP.

En un segmento vacío llamamos a la instrucción CTU. Esto lo podemos hacer de dos formas distintas:

1: Utilizando la instrucción “Cuadro vacío” y escribiendo en ella CTU.

2: Arrastrando la instrucción CTU desde la ventana de instrucciones. La instrucción de CUT se encuentra dentro del apartado de instrucciones básicas en la carpeta de contadores.

Para que la instrucción de contador ascendente pueda funcionar es necesario crear una instancia de esta instrucción mediante el uso de un bloque de datos. Esto es muy sencillo de hacer, ya que cuando llamamos a la instrucción en un segmento, automáticamente se nos abrirá una ventana que nos permitirá crear la instancia necesaria.

En esta ventana podemos cambiar el nombre del bloque de datos y seleccionar el número de bloque. En este caso al tratarse de un ejemplo sencillo dejaremos las dos cosas por defecto. Para terminar con la creación del bloque de datos pulsamos en “Aceptar”.

Una vez hecho esto, iremos a la tabla de variables del PLC y crearemos tres nuevas variables de tipo Bool y una variable de tipo Int, que direccionamos a marcas de memoria:

  • Conteo_Ascendente - Dirección: %M100.0
  • Reset_Conteo - Dirección: %M100.1
  • Conteo_Finalizado - Dirección: %M100.2
  • Conteo_Actual - Dirección: %MW102


Una vez hemos creado estas cuatro variables, volvemos al bloque donde estamos programando el contador, en nuestro caso, el bloque OB1.

Para terminar nuestra programación vamos a realizar los siguientes pasos:

1: Añadimos un contacto normalmente abierto en el parámetro CU de nuestro contador. A este contacto le asignaremos la variable “Conteo_Ascendente” que hemos creado previamente. Esta variable será la que tendremos que activar para hacer que el valor del contador aumente.

2: Añadimos otro contacto normalmente abierto en el parámetro R de nuestro contador. A este contacto le asignamos la variable “Reset_Conteo” que hemos creado previamente. Esta variable será la que tendremos que activar cuando queramos reiniciar a 0 el valor del contador.

3: Para hacer las cosas simples, en el parámetro PV del contador vamos a escribir directamente un 3. Esto quiere decir que la salida de nuestro contador se activará cuando el contador alcance el valor de 3.

Nota: A este parámetro también se le puede asignar una variable de tipo entero. Esto puede utilizarse para dinamizar el funcionamiento del contador. Por ejemplo, haciendo que el valor de activación del contador cambie en función de la situación de la instalación. También puede servir para que el contador pueda ser consignado desde un HMI.

4: Añadimos una bobina al parámetro Q de nuestro contador. A esta bobina le asignamos la variable “Conteo_Finalizado”. Esta variable se activará cuando el valor del parámetro CV del contador sea igual al valor que hayamos asignado al parámetro PV del contador.

5: Asignamos la variable “Conteo_Actual” al parámetro CV del contador. Esto nos permitirá visualizar en tiempo real, el valor del contador cuando lo estemos probando en el modo simulación.

Con esto habremos finalizado la programación de nuestro contador.

Simulación del programa

Ahora procederemos a probar nuestro programa, simulandolo mediante el uso del software PLC SIM.

Si hemos realizado la programación correctamente, la variable “Conteo_Finalizado” debería de activarse después de que activemos la variable “Conteo_Ascendente” tres veces. Para desactivarla activaremos la variable “Reset_Conteo”.

Nota: Para activar y desactivar las variables de manera cómoda, las seleccionaremos con el cursor y utilizaremos el comando Ctrl+F2 para forzar la variable 1 y el comando Ctrl+F3 para forzar la variable a 0.