Hoy hablamos sobre el escalado y filtrado de una señal en TIA Portal porque he tenido alguna consulta sobre los márgenes de una señal 4-20mA.
Así que me he decidido hacer un bloque sencillo que aúne un poco de todo: programar algo en diagrama de bloques (como habrás visto, normalmente programo en ladder), y por otro lado, dar un repaso al tema del filtrado de una señal analógica y cómo detectar su buen funcionamiento.
Para ello, nos vamos a basar en dos artículos ya publicados en el blog:
- Filtrado de una señal analógica con EMA
- Escalado de una señal analógica en TIA Portal
- Usar los bloques IN_RANGE y OUT_RANGE
Como verás en muchos casos no tienes que programar ni inventar nada nuevo. Tan solo adaptar lo que ya conoces, o has hecho para las nuevas necesidades.
¿En qué consiste el ejemplo de hoy?
Lo que vamos a hacer es que le damos al bloque la señal 4-20mA de una tarjeta del PLC, y este bloque nos filtre la señal, y nos avise en caso de que se salga de los límites de underrange o de overrange de la tarjeta.
Para ello, nos vamos a basar en la documentación de Siemens. Concretamente en este cuadrito:
Como ves en el cuadro, el funcionamiento normal de un 4-20mA sería entre un valor decimal 0, y 27648.
Estos valores los vamos a usar para realizar el normalizado.
Para saber si el elemento está trabajando bien, podríamos dar estos márgenes como buenos, y fuera de estos valores, que nos avise.
Pero habrá veces que en el mínimo, no lleguen los 4mA, y llegue un poco menos (o mas) y cuando estás en el máximo del fondo de escala, no te lleguen los 20mA, sino que llegue un poco menos, pero puede que un poco más.
Por eso voy a usar los valores de underrange y de overrange como límites de la alarma. Es decir, mientras que el valor esté entre los 1.185mA (underrange) y 22.81mA (overrange) no daré alarma.
Puede que para ti esos límites sean demasiado permisivos. Pues simplemente los cambias y los ajustas a tu gusto.
Como siempre, lo vemos mejor en un vídeo.
Escalado y filtrado de una señal analógica en TIA Portal
¿Qué te ha parecido?
Espero que te haya gustado.
Como verás, nada nuevo que no hayamos hecho con anterioridad, pero un poco diferente. Añadir a un pequeño bloque de escalado, un filtro y una alarma que te de si se sale de rango.
Tampoco está tan mal ¿no?
Como comento en el vídeo, el ejemplo, que está realizado en TIA Portal V15 lo dejaré en el apartado de ejemplos del bloque 3del Curso completo de TIA Portal y también lo subiré al bloque de programación en diagrama de bloques en Guorker.com
Enseño a programar PLC de Siemens a través de mis cursos.
Más información sobre mi aquí
Puedes seguirme en cualquiera de las siguientes redes sociales.
16 Comentarios
Gracias por su tiempo y enseñanza
Gracias César!
Gracias por compartir información.
Felicidades por mudarse a tu ciudad natal.
Éxito en tus nuevos cursos.
Saludos Cordiales
Gracias Eduardo!
Excelente.
¡¡
Gracias por el tiempo y dedicación.
Gracias Omar!
Iñigo valioso video.
Justo estamos adquiriendo valores desde caudalimetros con salida analógica, que han sido instalados para una nueva operación por lo que el conocimiento del flujo estándar para definir el fondo máximo y mínimo no es claro aún, sin embargo nos han entregado un rango bastante alto por decir 10000, cuando en la operación que hemos podido monitorizar estos valores llegan a 200kg/h.
El flujometro tbn escala su salida en mA con base en el rango máximo que se haya seteado (10000kg/h), para este ejemplo nos están llegando valores de 2 = (200/10000)*100. Hemos notado que incluso cuando no hay flujo aleatoriamente ocurren distorsiones llegan valores de 1 o 2, cada 5 minutos de toma de datos. Aplicamos un filtro en python para quitar los valores inferiores a 1, pero tememos perder información. A mi criterio el problema está en que el rango máximo es muy alto comparado con lo que hasta el momento es el flujo de operación normal, en planta aún necesitan hacer la prueba a plena capacidad. Si no fuera mucha molestia, nos podrías ayudar con algún punto de vista.
Si el rango es de hasta 10000 y el valor nominal es 200, efectivamente parece que no es lo adecuado, y por mucho. La resolución de 1 punto analogico será de 27648/10000 = 2.7KG/h que representa el 1% del nominal de 200kg/h que comentas. Es absurdo esa escala porque piensa que la señal nunca es completamente estable y que simplemente la señal varie un 0.5% de su valor analógico, esto son 138 unidades (de 0 a 27648), y por tanto 138*2.7Kg =372kg/h.
Es decir, no tiene sentido alguno que para medir flujos de 200kg/h el caudalimetro tenga un fondo de escala de 10000kg/h porque un pequeño error en la medida está en el mismo orden de magnitud de lo que se pretende medir. Está mal escogido a todas luces. Todo esto partiendo de los datos que comentas que el nominal puede rondar los 200kg/h y que el medidor es para 10000kg/h
Muy bien explicado y de forma amena!!
Me encantó la entradilla de Pedrerol, jajaja!!
Saludos y muchas gracias!!
jeje, gracias Jesús!
Muy bueno y gracias por seguir enseñando , saludos Juan Carlos
Gacias Juan!
Una ventaja adicional del filtro EMA, aparte de su sencillez y eficacia, es que puedes hacer un filtrado asimétrico, aplicando dos valores diferentes de «alpha» según la medida actual sea superior o inferior a An-1
Muy bueno y bien explicado, que estes muy bien
saludos cordiales gracias por tus aportaciones sobre la programacion de plc siemens, puedo distribuir tu blog.
hola iñigo, como modifico la formula si deseo hacer un filtro paso alto, en teoría, en el ejemplo vos mostras un filtro paso bajo, es decir, supresión de altas frecuencias, pero si yo deseo suprimir las bajas frecuencias, que modificaría en la formula?.. si yo subo el alpha, dejo pasar tanto bajas como altas, es decir alpha casi 1.