Práctica 4: Ejercicios De Aplicación
Ivan Fernando Murallas Sanchez Xiomara Katherine Rincon Sanchez Edgar Fernando rojas Nicolas Prada Arenas
l098781161 1005563819 Rodriguez 1098787296
Unidades Tecnologicas De Santander Unidades Tecnologicas De Santander 91538887 Unidades Tecnologicas De Santander
imurallas@[Link] xkrincon@[Link] Unidades Tecnologicas De Santander Npradaa@[Link]
edgarfrojas@[Link]
Variables locales y globales
I. INTRODUCCION (INTRODUCTION)
En Labview todos los controles introducidos en el panel
LabVIEW (Laboratory Virtual Instrument Engineering frontal que generan un terminal en la ventana Diagrama son
Workbench) es una plataforma de programación gráfica variables, identificables con un nombre. Pero puede ocurrir que
ampliamente utilizada en la ingeniería y la ciencia para el se desee utilizar el valor de cierta variable en otro subdiagrama
desarrollo de sistemas de medición, control. o simplemente que se desee guardar un resultado intermedio. La
forma mas sencilla es generando variables locales o globales.
II. OBJETIVOS (GOALS)
• Profundizar la aplicabilidad de diferentes herramientas
estudiadas en casos reales. Variable local
• Desarrollar un ejercicio que permita ver las En las variables locales los datos se almacenan en algunos de los
funcionalidades de los Arrays. controles o indicadores existente en el panel frontal del Vi
creado; es por eso que estas variables no sirven para
• Reforzar lo aprendido en las últimas clases
intercambiar datos entre VI. El uso principal de estas variables
radica en el hecho de que una vez creada la variable local ,no
importa que proceda de un indicador o de un control, se podrá
III. MARCO TEORICO (THEORETICAL FRAMEWORK) utilizar en un mismo diagrama, como entrada o como salida.
Monitoreo de niveles de tanques y alarmas Las variables locales están disponibles en el menú
Sistemas de control en procesos de producción: El monitoreo de All Funtion/Structure de la paleta de funciones.
los niveles de los tanques es crucial para evitar la interrupción
del proceso. Cuando los niveles caen por debajo del 20 %, el
sistema debe generar una alarma para advertir al operario y
Variable Global
evitar fallos de producción.
Son un tipo especial de VI, que únicamente dispone de panel
Uso de alarmas: Las alarmas automáticas permiten mantener
frontal, en el cual se define el tipo de dato de la variable y el
la eficiencia del proceso, ayudando a los operadores a corregir
nombre de identificación imprescindible para después referirse
problemas antes de que se agraven, como el agotamiento de los
a ella.
insumos.
Cuando se selecciona este tipo de variable se crea un nuevo
Labview permite simular procesos industriales de manera
terminal en el diagrama; este terminal corresponde a un VI que
interactiva, lo que incluye la posibilidad de monitorear variables
inicialmente no contiene ninguna variable. Para añadirlas se
como los niveles de los tanques y las alarmas en tiempo real.
hace doble clik en el terminal y se abrirá el panel frontal. Se
puede crear un VI para cada variable global o definirlas todas en
el mismo, que es la opción mas indicada.
Array
El array es una colección de datos, todos del mismo tipo. Puede
tener una o más dimensiones y hasta 232 elementos por
dimensión. Un array puede ser de cualquier tipo excepto otro
XXX-X-XXXX-XXXX-X/XX/$XX.00 ©20XX IEEE
array, chart o graph. Se accede a cada elemento de un array
mediante un índice, el cual inicia en 0 y termina en N-1.
El array se compone principalmente de dos elementos. El
índice que es el contador situado a la izquiera superior y la
ventana de datos que es el recuadro gris. En este recuadro que
va a componer el array en la posición 0. Con las flechas es
posible cambiar de indice y agregar un nuevo objeto.
En este caso se cuenta con un “vector”. Si se desea añadir mas
dimensiones se despliega el menú que aparece en el índice y se
escoge Add Dimension.
Se pueden indexar e introducir elementos dentro de los arrays en
los bordes de las estructuras For o While.
El siguiente es un ejemplo práctico:
Figura 1: Front Panel colores Amarillo y azul
Funciones con array
Labview tiene en la paleta Array del menú de funciones un gran
numero de funciones para manipulas arrays. Algunos ejemplos
son:
• Array Size: Da el tamaño del array.
• Build array: Concatena arrays o añade elementos extras
a un array ya existente.
• Array Subset: Devuelve una parte de un array a partir
de un índice y longitud determinados.
Figura 2: Front panel aplicación Rojo y combinación para
DESARROLLO DE LA ACTIVIDAD violeta
1. Suponga que tiene un sistema en el cual se producen
tonalidades de pinturas (Violeta, Verde, Naranja) a partir de los
colores (Amarillo, Rojo y Azul) los cuales se encuentran
almacenados cada uno en un tanque de 100 galones de
capacidad diariamente. En cada día, se deben producir la
cantidad de unidades de pintura necesarias, teniendo en cuenta
que los colores obtenidos se envasan en recipientes de 2 galones
de capacidad. El sistema es tal que, hasta no completar cada
producto (2 galones de la pintura combinada), no se llena el
siguiente recipiente de pintura; es decir, al llenar los primeros
dos galones de violeta, seguidamente se empieza a llenar el
verde y luego el naranja). Para la producción de cada color se
aplica la siguiente relación: Violeta= 50% rojo y 50% azul.
Verde= 50% Amarillo y 50% Azul; y naranja 50%rojo y 50%
Amarillo. Figura 3: Front panel aplicación combinación color verde
y naranja
Figura 4: Block driagram traspaso de pintura de tanques
inicial Figura 7: Block driagram visualización alarma disparada
nivel menor a 20
2. Realizar la unión de dos arrays numéricos. Uno
elementos (A1) y otro de 4 elementos (A2). El resultante
se llamará (A3). Extraer de A3 otro array que contenga 4
elementos, este se llamará (A4). Realizar la suma de A2 y
A4. El resultado se llamará (A5). Extraer el valor situado
en la mitad de A3, el cual se llamará V3, y multiplicarlo
por el valor medio de los elementos del array A5, (VM5),
a este resulto se le denominará M5.
Figura 5: Block driagram trapaso de pintura de tanques
Figura 6: Block driagram llenado de tanques hasta el 70%
Figura 8: Front panel Arrays con sus elementos
quiere crear una variable local. Se puede usar como control,
indicador.
• Variable global
Lleva un dato de un VI a otro VI, Para crear una variable global,
luego de dar clic en el control correspondiente se abre un icono.
Proporcionando doble clic en este icono se abre un panel similar
a un panel frontal, en el colocamos el control al que queremos
crear la variable y lo guardamos.
4. Diferencia entre variable Graph y Chart.
• Graph
Acepta datos en varias admite arreglos de datos en varias
formas, por ejemplo, forma de onda o datos dinámicos.
Posteriormente traza todos los puntos recibidos a la vez. No
admite valores puntuales únicos. Cuando un arreglo de puntos
se conecta a un graph, se supone que los puntos están
igualmente espaciados. Por defecto, el valor inicial de X y el
tamaño del paso son 0 y 1 respectivamente. Esto se puede
Figura 9: Block diagram programación A1, A2, A3 cambiar en las propiedades del gráfico o mediante el uso de
nodos de propiedades.
• Chart
guarda y muestra cierto número de puntos almacenándolos en
un búfer. Cuando el búfer se llena, el gráfico comienza a
sobrescribir los puntos más antiguos con otros nuevos. A
medida que los puntos de datos están disponibles,
el Chart muestra los datos recibidos además de los puntos ya
existentes.
5. Diferencia entre Estructura case y Estructura
Secuence
• Estructura case
Contiene múltiples subdiagramas de los cuales uno solo se
ejecuta dependiendo de la variable de entrada a la estructura.
• Estructura secuence
Contiene uno o más subdiagramas los cuales se ejecutan de
manera secuencial es decir en orden, dicho orden se determina
por la dependencia de los datos.
6. Explique los pasos para la creación de subvis
Figura 10: Block diagram programación operacionales de
los Arrays 1. Definir las entradas y salidas:
Identifica las variables de entrada y salida que VI
necesitará. Estas serán los controles y indicadores
que el usuario o el VI llamante proporcionará o
recibirá.
3. Diferencia entre variable local y global.
Coloca controles (inputs) en el panel frontal para las
• Variable local entradas.
Esta sirve para crear una variable que será utilizada solo dentro Coloca indicadores (outputs) en el panel frontal para
del mismo VI, Se crea con clic derecho sobre el dato al que se las salidas
2. Crear los íconos y conectores:
Haz clic en la esquina superior derecha del VI en el Visualización:
panel frontal para abrir el conector de iconos.
Selecciona un patrón de conector adecuado según la • Cluster: Los elementos se muestran juntos en un solo
cantidad de entradas y salidas (por ejemplo, un bloque en la interfaz gráfica.
patrón de 4 conectores). • Array: Los elementos se muestran secuencialmente y
Asocia cada entrada y salida del VI a un terminal del pueden representarse en tablas o gráficos.
conector.
Personaliza el ícono del VI haciendo doble clic en la
imagen pequeña de su icono y editando el gráfico que
lo representa. Este ícono aparecerá cuando el subVI TABLE I. TABLA DE FIGURAS
sea utilizado en otros diagramas de bloques.
. Item Titulo Figura
7. Que es un Cluster y la posible diferencia con los arrays Front Panel colores
1 Amarillo y azul Figura 1
Front panel aplicación
Un Cluster es un conjunto de elementos que pueden ser Rojo y combinación para
diferentes tipos de datos (como enteros, boleanos, cadenas de 2 Figura 2
violeta
texto). Agrupados en una única estructura. Es similar a un
registro o 2str”ct" en otros lenguajes de programación. Los Front panel aplicación
clusters son útiles cuando necesitas manejar múltiples tipos de 3 combinación color verde y Figura 3
datos juntos como una única unidad lógica. naranja
Block driagram
4 traspaso de pintura de Figura 4
tanques inicial
Block driagram trapaso
Diferencia entre Clusters y Arrays 5 de pintura de tanques Figura 5
lock driagram llenado
Tipos de Datos: 6 de tanques hasta el 70% Figura 6
Block driagram
• Cluster: Puede contener elementos de diferentes visualización alarma
7 Figura 7
tipos de datos (ej. entero, booleano, cadena, etc.). disparada nivel menor a 20
• Array: Solo puede contener elementos del mismo
tipo de datos (todos deben ser enteros, todos Front panel Arrays con
8 sus elementos Figura 8
booleanos, etc.).
Block diagram
Uso de Índices: 9 programación A1, A2, A3 Figura 9
Block diagram
• Cluster: Los elementos se acceden por posición, pero programación Figura
no tienen un índice numérico como en un array. Cada 10 operacionales de los 10
elemento dentro de un cluster puede tener un nombre, Arrays
y los elementos no están ordenados como en un
array.
• Array: Los elementos se acceden usando un índice
numérico que representa su posición en el array,
donde la posición 0 es el primer elemento, la 1 es el
segundo, y así sucesivamente.
Tamaño:
• Cluster: Tiene un tamaño fijo. No puedes agregar ni
eliminar elementos en tiempo de ejecución.
• Array: Tiene un tamaño dinámico. Puedes agregar o
• eliminar elementos en tiempo de ejecución.
CONCLUSIONES
La práctica de simulación del sistema de producción de pinturas
en LabVIEW ha permitido profundizar en conceptos
fundamentales de programación y control de procesos
industriales. A través de la implementación de un sistema que
monitorea y gestiona la producción de colores secundarios
(Violeta, Verde y Naranja) a partir de colores primarios (Rojo,
Amarillo y Azul), se ha demostrado la importancia de la
combinación y gestión adecuada de los recursos disponibles.
Un cluster es ideal cuando necesitas agrupar diferentes tipos de
datos relacionados entre sí en una única estructura, mientras que
los arrays son más apropiados cuando trabajas con múltiples
valores del mismo tipo y necesitas manipularlos en conjunto.
Los conceptos y conocimientos de esta practica sientan las
bases para el desarrollo de aplicaciones más complejas en
LabVIEW.
REFERENCES
[1] National Instruments, "LabVIEW Help: Loops and
Structures," [Online]. Available:
[Link]
[2] M. G. Ortiz, Introducción a LabVIEW y
Aplicaciones de Control, Editorial Técnica, 2020.