Escalado Analógica en Logix con instrucción CPT Capítulo 2

logo2dominios


En la anterior entrada, hicimos una introducción y realizamos los pasos para crear una aplicación y la configuración de hardware:

Escalado Analógica en Logix con instrucción CPT Capítulo 1

Siendo el montaje del controlador y la tarjeta de EA el siguiente:

Fuente de alimentación 24VCC, Compact Logix L16 y módulo EA.

Detalle de tarjeta de entrada analógica 1734-IE4C

Antes de seguir, os aconsejo que leáis la serie de entradas sobre Señales Analógicas:

Señales Analógicas

Y si ya lo habéis hecho, vamos a repasar unos conceptos en los siguientes párrafos, éstos están extraídos de la siguiente entrada:

Señales Analógicas Cap.11 (Práctica-Parte 7)

1. Escalado de Señal Analógica.

Trabajar en unidades de ingeniería (m, mca, rpm, %, ppm….) es más intuitivo para los integradores que hacerlo con las unidades internas de los PLC o PAC, las llamadas “números de cuentas”, además éstas últimas presentan el problema que dependen de la resolución de la tarjeta y de cada tipo y marca, por lo que se suele convertir a unidades de ingeniería. Además es necesario hacer esta conversión, para representar estos valores en los HMI’s, de esta manera, explotación-producción podrá interpretar más fácilmente los valores de proceso.

Podemos realizar el escalado de tres formas diferentes:

  • En PAC’s de alta gama como es el Control Logix de Allen Bradley, el escalado se realiza en la propia tarjeta de analógicas, por lo que obtenemos directamente el valor en unidades de ingeniería, sin tener que realizar ningún tipo de programación adicional.
  • Realizar el escalado mediante funciones y librerias propias de los PLC’s-PAC’s.
  • Mediante un algoritmo que realice el cálculo.

En nuestro caso, disponemos de un PAC que no dispone de escalado en la tarjeta, por lo que el escalado lo tenemos que realizar mediante una función interna o un algoritmo, esta segunda opción la dejamos para entradas posteriores.

 

Una vez que conocemos el hardware con el que realizaremos las prácticas y hemos repasado algunos conceptos, comenzamos:

1 – Declarar una estructura de datos de usuario (UDT User Defined Data Types).

Para declararla, debemos desplegar en el “Controller Organizer” la carpeta Data Types” y tras pulsar en botón derecho seleccionamos “New Data Type”.

Nos aparecerá la siguiente ventana emergente.

Le asignamos el nombre que deseemos para nuestra estructura de datos, recordad que debe ser un nombre descriptivo de su uso, en nuestro caso le asignamos el nombre “ESCALADO”.

Rellenamos la estructura con los datos que necesitemos para la UDT. Cabe recordar, que una UDT puede estar formada por variables que sean datos predefinidos y/o por matrices de éstos. En nuestro ejemplo, introducimos los siguientes datos:

  • ENTRADA_ANALOGICA, dato que usaremos para almacenar la variable que nos da la variable con los datos de la entrada analógica. Elegimos un dato tipo DINT, no obstante podría ser de tipo INT, ya que el dato que nos entrega la tarjeta de EA es de tipo INT.

  • NUMERO_CUENTAS_BAJO, dato que usaremos para fijar el extremo inferior del número de cuentas, este dato depende de la resolución de la tarjeta (número de bits) que equipemos. Veremos esto con más detalle más adelante.
  • NUMERO_CUENTAS_ALTO, dato que usaremos para fijar el extremo superior del número de cuentas, este dato depende de la resolución de la tarjeta (número de bits) que equipemos. Veremos esto con más detalle más adelante. De tipo DINT, podríamos usar
  • UDS_INGENIERIA_BAJO, dato que usaremos para fijar el extremo inferior de las unidades de ingeniería de nuestro instrumento.
  • UDS_INGENIERIA_ALTO, dato que usaremos para fijar el extremo superior de las unidades de ingeniería de nuestro instrumento.
  • RESULTADO, variable para almacenar la salida de la instrucción con el la EA ya escalada.

En los tres últimos datos elegimos datos de tipo REAL para disponer de decimales.

De momento, estos son los datos que declaramos en la UDT y que iremos ampliando a medida que introduzcamos más funcionalidades.

Una vez que tenemos definida nuestra estructura, declaramos en “Controller Tags” una variable que llamaremos “TEMPERATURA” y será de tipo “ESCALADO” (UDT declarada en el paso anterior).

Ya tenemos una estructura que nos facilitará el escalado de una señal analógica con la instrucción CPT.

En la siguiente entrada, usaremos la instrucción CPT y la función de escalado que implementaremos en ella.

¡Saludos!.

favicon