introducciÓn a la instrumentaciÓn virtual...labview contiene una extensa variedad de herramientas...
TRANSCRIPT
INTRODUCCIÓN A LA INSTRUMENTACIÓN VIRTUAL
Instituto Tecnológico de Tuxtla GutiérrezDepartamento de Metal-MecánicaMCIM. Hernán Valencia Sánchez
Instituto Tecnológico de Tuxtla GutiérrezDepartamento de Metal-MecánicaMCIM. Hernán Valencia Sánchez
Conceptos básicos.
Los programas de LabVIEW son llamados instrumentos virtuales o VIs ya que su apariencia y operación
generalmente imitan a los instrumentos físicos, como osciloscopios y multímetros. LabVIEW contiene una
extensa variedad de herramientas para adquirir, analizar, visualizar y almacenar datos, así como
herramientas para ayudarle a solucionar problemas en el código que escriba.
Cuando crea un nuevo VI, ve dos ventanas: la ventana del panel frontal y el diagrama de bloques.
Instituto Tecnológico de Tuxtla GutiérrezDepartamento de Metal-MecánicaMCIM. Hernán Valencia Sánchez
Panel Frontal
Cuando abre un VI nuevo o existente, aparece la ventana del panel frontal del VI. La ventana del panel
frontal es la interfaz de usuario para el VI. La Figura 1 muestra un ejemplo de una ventana del panel
frontal.
Figura 1. Ejemplo de un Panel Frontal
(3) Paletas de controles
(2) Barra de herramientas
(1) Ventana de Panel Frontal
Instituto Tecnológico de Tuxtla GutiérrezDepartamento de Metal-MecánicaMCIM. Hernán Valencia Sánchez
Paleta de Controles
La paleta de Controles contiene los controles e indicadores que
utiliza para crear el panel frontal. Puede tener acceso a la paleta
de Controles de la ventana del panel frontal al seleccionar
View»Controls Palette o al dar clic con botón derecho en
cualquier espacio en blanco en la ventana del panel frontal. La
paleta de Controles está dividida en varias categorías; puede
exponer algunas o todas estas categorías para cumplir con sus
necesidades. La Figura 2 muestra la paleta de Controles con
todas las categorías expuestas y la categoría Moderna
expandida.
Para ver o esconder categorías (subpaletas), haga clic en el
botón Customize y seleccione Change Visible Palettes.
Figura 2. Paleta de Controles
Instituto Tecnológico de Tuxtla GutiérrezDepartamento de Metal-MecánicaMCIM. Hernán Valencia Sánchez
Controles e Indicadores
Cada VI tiene un panel frontal que se puede diseñar como una interfaz de usuario. También puede usar paneles
frontales como la manera de transmitir entradas y recibir salidas cuando se llama al VI desde otro diagrama de
bloques. Se crea la interfaz de usuario de un VI al colocar controles e indicadores en el panel frontal de un VI.
Cuando interactúa con un panel frontal como una interfaz de usuario, puede modificar los controles para
transmitir entradas y ver los resultados en los indicadores. Los controles que definen las entradas y los
indicadores muestran las salidas.
Los controles generalmente son perillas, botones, perillas, deslizadores y secuencias. Simulan dispositivos de
entrada de instrumentos y suministran datos al diagrama de bloques del VI. Los indicadores generalmente
son gráficas, tablas, LEDs y secuencias de estado. Los indicadores simulan dispositivos de salida de
instrumentos y muestran los datos que diagrama de bloques adquiere o genera.
Instituto Tecnológico de Tuxtla GutiérrezDepartamento de Metal-MecánicaMCIM. Hernán Valencia Sánchez
Controles e Indicadores Numéricos
El tipo de datos numérico pueden representar números de varios tipos como un entero o real. Los dos
objetos numéricos comunes son el control numérico y el indicador numérico, como se muestra en
la Figura 3. Los objetos como medidores y perillas también representan datos numéricos.
Botones de incremento o reducción
Control Numérico
Indicador Numérico
Figura 3. Controles e Indicadores Numéricos
Instituto Tecnológico de Tuxtla GutiérrezDepartamento de Metal-MecánicaMCIM. Hernán Valencia Sánchez
Instituto Tecnológico de Tuxtla GutiérrezDepartamento de Metal-MecánicaMCIM. Hernán Valencia Sánchez
Controles e Indicadores Booleano
El tipo de datos Booleano representa datos que solamente tienen dos estados posibles, como TRUE y
FALSE u ON y OFF. Use los controles e indicadores Booleano para proporcionar y visualizar valores
Booleano. Los objetos Booleano simulan interruptores, botones y LEDs. El interruptor de encendido
vertical y los objetos LED redondos se muestran en la Figura 4.
Figura 4. Controles e Indicadores Booleano
Instituto Tecnológico de Tuxtla GutiérrezDepartamento de Metal-MecánicaMCIM. Hernán Valencia Sánchez
Controles e Indicadores de Cadena de Caracteres
El tipo de datos cadena de caracteres es una secuencia de caracteres ASCII. Use controles en cadena para
recibir texto desde el usuario como una contraseña o nombre de usuario. Use indicadores en cadena para
mostrar texto al usuario. Los objetos en cadena más comunes son tablas y cuadros de texto, como se
muestra en la Figura 5.
Figura 5. Controles e Indicadores de cadena de caracteres
Instituto Tecnológico de Tuxtla GutiérrezDepartamento de Metal-MecánicaMCIM. Hernán Valencia Sánchez
Diagrama de Bloques
Los objetos del diagrama de bloques incluyen terminales, subVIs, funciones, constantes,
estructuras y cables, los cuales transfieren datos junto con otros objetos del diagrama de bloques.
Terminales
Los objetos en la ventana del panel frontal aparecen como terminales en el diagrama de bloques. Las
terminales son puertos de entrada y salida que intercambian información entre el panel frontal y diagrama
de bloques. Son análogos a parámetros y constantes en lenguajes de programación basados en texto. Los
tipos de terminales incluyen terminales de control o indicador y terminales de nodo. Las terminales de
control e indicador pertenecen a los controles e indicadores del panel frontal. Los puntos de datos que
usted proporciona en los controles del panel frontal (a y b en el panel frontal anterior) pasan al diagrama de
bloques a través de las terminales de control. Entonces los puntos de datos ingresan las funciones de
Suma y Resta. Cuando las funciones de Suma y Resta terminan sus cálculos, producen nuevos valores de
datos. Los valores de datos van a las terminales de indicador, donde actualizan los indicadores del panel
frontal (a+b y a-b en el panel frontal anterior).Ver Figura 6
Instituto Tecnológico de Tuxtla GutiérrezDepartamento de Metal-MecánicaMCIM. Hernán Valencia Sánchez
1.- Terminales del indicador2.- Cables3.- Nodos4.- Terminales de control
Figura 6. Ejemplo de un Diagrama de Bloques y Panel Frontal Correspondiente
Instituto Tecnológico de Tuxtla GutiérrezDepartamento de Metal-MecánicaMCIM. Hernán Valencia Sánchez
Controles, Indicadores y Constantes
Los controles, indicadores y constantes se comportan como entradas y salidas del algoritmo del diagrama
de bloques. Considere la implementación del algoritmo para el área de un triángulo:
Área = .5 * Base * Altura
En este algoritmo, Base y Altura son entradas y Área es una salida, como se muestra en la Figura 7.
Figura 7. Panel Frontal del Área de un Triángulo
El usuario no cambiará o tendrá acceso a la constante 0.5, así que no aparecerá en el panel frontal a
menos que se incluya como documentación del algoritmo.
Instituto Tecnológico de Tuxtla GutiérrezDepartamento de Metal-MecánicaMCIM. Hernán Valencia Sánchez
La Figura 8 muestra una posible implementación de este algoritmo en un diagrama de bloques de
LabVIEW. Este diagrama de bloques tiene cuatro terminales diferentes creadas por dos controles, unaconstante y un indicador.
Controlador Constante
Indicador
Figura 8. Diagrama de Bloques del Área de un Triángulo con Vista de Terminal de Ícono
Note que las terminales del diagrama de bloques Base (cm) y Altura (cm) tienen una apariencia
diferente de la terminal Área (cm2). Existen dos características distintivas entre un control y un
indicador en el diagrama de bloques. La primera es una flecha en la terminal que indica la dirección
del flujo de datos. Los controles tienen flechas que muestran los datos que salen de la terminal,
mientras que el indicador tiene una flecha que muestra los datos que entran a la terminal. La
segunda característica distintiva es el borde alrededor de la terminal. Los controles tienen un bordegrueso y los indicadores tienen un borde delgado
Instituto Tecnológico de Tuxtla GutiérrezDepartamento de Metal-MecánicaMCIM. Hernán Valencia Sánchez
Puede ver terminales con o sin vista de íconos. La Figura 9 muestra el mismo diagrama de bloques sin usar
la vista de ícono de las terminales; sin embargo existen las mismas características distintivas entre los
controles y los indicadores.
Figura 9. Sin vista de Icono
Instituto Tecnológico de Tuxtla GutiérrezDepartamento de Metal-MecánicaMCIM. Hernán Valencia Sánchez
Nodos de Diagrama de Bloques
Los nodos son objetos en el diagrama de bloques que tienen entradas y/o salidas y realizan operaciones
cuando el VI se ejecuta. Son análogos a instrucciones, operaciones, funciones y sub rutinas en lenguajes
de programación basados en texto. Los nodos pueden ser funciones, subVIs o estructuras. Las estructuras
son elementos de control de procesos, como Estructuras de Casos, Ciclos For o Ciclos While.
Figura 10. Nodo
Instituto Tecnológico de Tuxtla GutiérrezDepartamento de Metal-MecánicaMCIM. Hernán Valencia Sánchez
Funciones
Las funciones son los elementos de operación fundamentales de LabVIEW. Las funciones
de Suma y Resta en la Figura 11 son nodos de función. Las funciones no tienen
ventanas del panel frontal o ventanas del diagrama de bloques pero no tienen paneles
conectores. Al hacer doble clic en la función solamente selecciona la función. Una función
tiene un fondo amarillo pálido en su ícono
Figura 11. Nodos de Función
Instituto Tecnológico de Tuxtla GutiérrezDepartamento de Metal-MecánicaMCIM. Hernán Valencia Sánchez
Paleta de Funciones
La paleta de Funciones contiene los VIs, funciones y
constantes que usted utiliza para crear el diagrama de
bloques. Usted tiene acceso a la paleta de Funciones del
diagrama de bloques al seleccionar View»Functions Palette.
La paleta de Funciones está dividida en varias categorías;
usted puede mostrar y esconder categorías para cumplir con
sus necesidades. La Figura 12 muestra la paleta de
Funciones con todas las categorías expuestas y la categoría
de Programación expandida.
Para ver o esconder categorías, haga clic en el botón
Customize y seleccione Change Visible Palettes.
Figura 11. Paleta de Funciones
Instituto Tecnológico de Tuxtla GutiérrezDepartamento de Metal-MecánicaMCIM. Hernán Valencia Sánchez
Práctica 1: Creación de un VI LabVIEW
OBJETIVO: crear un VI que muestra una entrada, activándose una alarma si se pasa de un valor límite que pondrá el usuario. 1.- Arrancar el programa y seleccionar New VI. 2.-Aparecerán en toda la pantalla dos ventanas como las siguientes:
Panel Frontal
Instituto Tecnológico de Tuxtla GutiérrezDepartamento de Metal-MecánicaMCIM. Hernán Valencia Sánchez
3.- Se abre la paleta de Controles haciendo click con el botón derecho encima del panel frontal , se selecciona la subpaleta Numeric y dentro de ella el control Dial.
Se arrastra el control sobre el panel frontal y se coloca donde se quiera. (Hay que notar que en el diagrama de bloques aparece automáticamente un terminal de entrada con la misma etiqueta que el control del panel frontal)
Instituto Tecnológico de Tuxtla GutiérrezDepartamento de Metal-MecánicaMCIM. Hernán Valencia Sánchez
4.- Según se ha colocado el control y mientras la etiqueta sigue resaltada, podemos teclear Entrada para cambiarla. Si ya no está seleccionada, se puede editar haciendo doble click sobre ella.
Instituto Tecnológico de Tuxtla GutiérrezDepartamento de Metal-MecánicaMCIM. Hernán Valencia Sánchez
5.- Se añaden un botón de stop y un led de la subpaleta Boolean etiquetados Stop y Alarma respectivamente.
Instituto Tecnológico de Tuxtla GutiérrezDepartamento de Metal-MecánicaMCIM. Hernán Valencia Sánchez
6.- Se añade un Waveform Chart (No confundir con Graph) etiquetado Temperatura.
Instituto Tecnológico de Tuxtla GutiérrezDepartamento de Metal-MecánicaMCIM. Hernán Valencia Sánchez
7.- Y un control Vertical Pointer Slide de la subpaleta Numeric etiquetado Límite.
Instituto Tecnológico de Tuxtla GutiérrezDepartamento de Metal-MecánicaMCIM. Hernán Valencia Sánchez
8.- Al final quedará un panel frontal y un diagrama de bloques parecido al de la figura.
Instituto Tecnológico de Tuxtla GutiérrezDepartamento de Metal-MecánicaMCIM. Hernán Valencia Sánchez
9. En este VI tenemos los controles Entrada, que simula la entrada de una tensión; Límite, que servirá para fijar el límite a partir del cual se active la alarma y stop que servirá para detener la ejecución del programa. También se encuentran los indicadores Temperatura, en el que se irá visualizando la señal de entrada y Alarma, que indicará cuándo la entrada supera el límite. 10. Al control Límite se le añade un display digital, para visualizar el valor exacto del mismo. Pulsando con el botón derecho del ratón sobre el control, se extiende su menú asociado y en él elegimos la opción Digital Display de Visible Items.
Instituto Tecnológico de Tuxtla GutiérrezDepartamento de Metal-MecánicaMCIM. Hernán Valencia Sánchez
11.-Se mueve este indicador digital pinchando sobre él y llevándolo a la parte inferior del control.
Instituto Tecnológico de Tuxtla GutiérrezDepartamento de Metal-MecánicaMCIM. Hernán Valencia Sánchez
12.- Se va a simular la entrada de un sensor de temperatura que nos da una salida de 0 a 1 voltio para un rango de 0 a 100 0C. Por este motivo hay que cambiar las escalas de los controles Entrada y Límite, poniéndolas entre 0 y 1 en el primero, y entre 0 y 100 en el segundo. Para ello hacemos doble click sobre el 10 de ambos y tecleamos 1 y 100 respectivamente.
Instituto Tecnológico de Tuxtla GutiérrezDepartamento de Metal-MecánicaMCIM. Hernán Valencia Sánchez
13.- Ahora hay que diseñar el diagrama de flujo que realice esto. Tenemos una entrada entre 0 y 1, que se corresponde a una temperatura entre 0 y 100 0C, por lo tanto, la entrada del control Entrada habrá que multiplicarla por 100, para obtener la temperatura directamente en grados centígrados. Esto se puede hacer con la función Multiply de la subpaleta Numeric de la paleta de funciones.
Instituto Tecnológico de Tuxtla GutiérrezDepartamento de Metal-MecánicaMCIM. Hernán Valencia Sánchez
14.- Para hacer la comparación entre la temperatura “medida” y el límite, se tendrá que utilizar la función Greater? de la subpaleta Comparison de la paleta de funciones.
Instituto Tecnológico de Tuxtla GutiérrezDepartamento de Metal-MecánicaMCIM. Hernán Valencia Sánchez
15.- Una vez colocadas las dos funciones, se conectan mediante cables las entradas y salidas de las mismas como indica la figura, para ello utilizaremos la herramienta wiring
Instituto Tecnológico de Tuxtla GutiérrezDepartamento de Metal-MecánicaMCIM. Hernán Valencia Sánchez
16.- Para añadir la constante 100 a multiplicar por la entrada, se hace click con el botón derecho sobre el terminal de entrada inferior de la función Multiply y se elige Constant de la opción Create del menú desplegable.
Instituto Tecnológico de Tuxtla GutiérrezDepartamento de Metal-MecánicaMCIM. Hernán Valencia Sánchez
17.- Tendremos algo parecido a la figura (en esta figura se ha añadido un indicador digital Valor escalado para indicarnos el valor de la temperatura de entrada directamente en grados centígrados)
Instituto Tecnológico de Tuxtla GutiérrezDepartamento de Metal-MecánicaMCIM. Hernán Valencia Sánchez
18.- Ahora se añade una estructura While Loop de la subpaleta Structures de la paleta de funciones, que abarque todos los elementos del diagrama de bloques y se une el control Stop con el terminal condicional de la misma. Se utiliza esta estructura para que el programa se ejecute hasta que se pulse el botón de stop.
Instituto Tecnológico de Tuxtla GutiérrezDepartamento de Metal-MecánicaMCIM. Hernán Valencia Sánchez
Instituto Tecnológico de Tuxtla GutiérrezDepartamento de Metal-MecánicaMCIM. Hernán Valencia Sánchez
19.- Con el terminal condicional que viene por defecto, sólo nos haría una iteración, ya que el botón de stop nos da un “0” por defecto hasta que se pulse. Por tanto hay que cambiar el terminal pulsando sobre él con el botón derecho, eligiendo la opción Stop if True del menú.
Instituto Tecnológico de Tuxtla GutiérrezDepartamento de Metal-MecánicaMCIM. Hernán Valencia Sánchez
20.- Por último añadiremos un retraso en la toma de cada muestra, ya que de lo contrario su velocidad sería excesiva. Para ello utilizamos la función Wait (ms) de la subpaleta Time & Dialog de la paleta de funciones, con una contante en su terminal de entrada de valor 500. De esta forma, se realiza una muestra de temperatura cada medio segundo
Instituto Tecnológico de Tuxtla GutiérrezDepartamento de Metal-MecánicaMCIM. Hernán Valencia Sánchez
21.- Como último paso, se coloca el autoescalado del eje Y del gráfico. Para esto se escoge la opción AutoScale Y del ítem Y Scale del menú desplegable del indicador (botón derecho del ratón sobre el mismo).
Instituto Tecnológico de Tuxtla GutiérrezDepartamento de Metal-MecánicaMCIM. Hernán Valencia Sánchez
22.- Haciendo click sobre el botón Run el programa simula una entrada de un sensor de temperatura (girando el botón Entrada), muestra la temperatura en el gráfico y enciende el led de alarma cada vez que se sobrepasa el límite impuesto.
Instituto Tecnológico de Tuxtla GutiérrezDepartamento de Metal-MecánicaMCIM. Hernán Valencia Sánchez
Practica 2.- Crear un VI que tome un número representando grados Celsius y lo convierta a un número representando grados Fahrenheit.Practica 3.- Crear un VI que realice las operaciones fundamentales de aritmética.
Instituto Tecnológico de Tuxtla GutiérrezDepartamento de Metal-MecánicaMCIM. Hernán Valencia Sánchez
Instituto Tecnológico de Tuxtla GutiérrezDepartamento de Metal-MecánicaMCIM. Hernán Valencia Sánchez
Practica 4.- Crear un VI donde se llene un tanque cuando se accione la válvula de entrada y al momento de estar lleno se vacié accionando la válvula de salida.1.- Arrancar el programa y seleccionar New VI. 2.-Aparecerán en toda la pantalla dos ventanas como las siguientes:
Panel Frontal
3.- Active la Paleta de controles y Seleccione los controladores numéricos.
4.- Se deben quitar todas las etiquetas numéricas del tanque.
5.- Eliminando la etiqueta del tanque. 6.- Active la paleta de controles y seleccione Seleccionar el controlador numérico dar click al medidor.
7.- Active la Paleta de controles y seleccione decoraciones y active flat Rounded Box.
8.- Active la paleta de controles y seleccione Boolean y active vertical Toggle Switch.
9.- Active la Paleta de controles y seleccione decoraciones y active Thick Line.
10.- Active la paleta de controles y seleccione decoraciones y active Raised Left Triangle y RaisedRight Triangle.
11.- Active la Paleta de controles y seleccione los controladores numéricos Boolean y active Round Led.
12.- Active la Paleta de controles y seleccione los controladores numéricos Boolean y active SquareLed.
13.-Adecuando el panel frontal para el usuario.
14.- Active el diagrama de bloques y Activar Estructuras, Seleccione una estructura While loop
15.- Activar Estructura y seleccionar Case Structure
16.- Active la Paleta de funciones y Seleccione el comando Incremento, arrastre el incremento y póngalo dentro de Case Structure de Entrada
17.- Active la Paleta de funciones y Seleccione el comando Decremento, arrastre el Decremento y póngalo dentro de Case Structure de Salida
18.-Conectar la válvula de entrada a la case Structure ( de verdad o falso).
19.- En la estructura de While Loop se activa AddShift Register que permite que todo lo que este conectado en la estructura se ejecute.
20.-Conectar el incremento con el Add Shift Registery la salida de la estructura While Loop.
21.- En la Case Structure seleccionar false y conectar.
22.-Al momento de seleccionar la valvula de entrada si todo es verdad se cumple con el llenado y Vaciado en la parte de falso si no esta bien la conexión no lo realizara.
23.-Crear una variable local para cada controlador como son el tanque , medidor ,nivel alto y bajo.
24.-Conectar la válvula de entrada a la case Structure ( de verdad o falso).
25.- Activar la paleta de funciones y seleccionar el comando Greater or Less Equal y una constante que va ser el nivel de llenado del tanque.
26.-Realice las conexiones de los comparadores Greater o Less or Equal con los controladores para Entrada y Salida.
27.- Nos hace falta conectar la valvula de entrada que se realizo en el diseño del panel frontal en este caso se utilizo un boleano.
28.-Conectar la válvula de entrada con el,Booleanose activa la paleta de funciones y se activa Comparison y selecciona Greater y Less.
29.- Para poder realizar la conexión se debe Activar de la paleta de funciones Booleano y seleccionar una compuerta And y realizamos la conexión.
30.-Para que cuando se llene el tanque se detenga debemos seleccionar Greater or Equal , creamos una constante de 100 para el limite y se realiza la conexión
31.-Para la válvula de salida se activa la paletas de funciones y se selecciona el equal to 0 para cuando el tanque este vacio.
32.-Cuando llegue la válvula igual a cero se necesita que se apague se realiza la conexión con la estructura While Lopp de salida.
32.-Cuando llegue se llene el tanque