Está en la página 1de 40

Departamento de Electricidad Instrumentacin y Control

Informtica Industrial

LabVIEW 7 Express Nivel 1

Prof. Argenis Rondn Profesor Asociado Dep. Electricidad IUT Cuman e-mail: arondon@iutcum.riu.ve

IUT Cuman Km. 4 Carretera Cuman - Cumanacoa Telf.: (0293) 4672138 (0293) 4672136 Fax: (0293) 4672153 Febrero 2005

Dep. Electricidad - Opcin Instrumentacin y Control

1
1.1 INSTRUMENTO VIRTUAL

EL ENTORNO DE PROGRAMACIN GRFICA

Un instrumento virtual (VI) es un programa realizado en lenguaje de programacin grfica (G). Todo instrumento virtual se construye en dos ventanas diferentes: una ventana llamada Panel para dibujar la cara delantera del instrumento virtual con la ayuda de controles predefinidos y una ventana llamada Diagram donde se realizar la programacin grfica propiamente dicha con la ayuda de funciones, terminales y conexiones. Ejemplo del panel de un VI y su diagrama correspondiente:

figura 1.1

1.2 CONSTRUCCIN DE VIs


En primer lugar hay que tener en cuenta la arquitectura jerrquica de los VIs. Despus de haber construido un VI usted lo puede utilizar dentro de otros VIs como un sub-VI. Cuando se crea una aplicacin, se empieza por el VI principal definindose las entradas y salidas del mismo, esta etapa se realiza en gran parte en la ventana del panel. Luego se insertan en la ventana del diagrama las funciones que permitirn realizar las operaciones sobre los datos y por ultimo se interconectan todos estos elementos de acuerdo a la funcin que se quiera realizar con el VI. Adems de las ventanas Panel y Block Diagram se pueden abrir adicionalmente tres ventanas de herramientas: la ventana Functions que contiene las funciones y objetos que se utilizan en la ventana de diagrama; la ventana Controls que contiene los controles e indicadores que se utilizarn en la ventana del panel y por ultimo la ventana Tools que contiene las herramientas para modificar los objetos en las ventanas del panel y del diagrama:

Prof. Argenis Rondn

Dep. Electricidad - Opcin Instrumentacin y Control

figura 1.2 Cuando un diagrama posea demasiados iconos, se pueden agrupar por tareas y se definen sub-VIs con la finalidad de que el diagrama quede simple. Esta forma modular facilita la puesta a punto, comprensin y mantenimiento de la aplicacin. Se puede guardar el VI construido en un archivo. Adems, en LabVIEW se puede tambin guardar varios VIs en un solo archivo llamado biblioteca de VIs. Sin embargo se aconseja guardar sus VIs en archivos individuales ya que de esta manera se puede copiar, renombrar y eliminar VIs ms fcilmente que estando en una biblioteca de VIs. 1.2.1 Objetos en el Panel Delantero 1.2.1.1 Control Es un objeto que se inserta en el panel del VI para entrar datos. Cuando se inserta un control en el panel, LabView inserta automticamente un terminal tipo entrada en la ventana de diagrama. En las figuras aqu al lado se presenta un control tipo Pointer Slide y su terminal correspondiente en el diagrama.

figura 1.3

Prof. Argenis Rondn

Dep. Electricidad - Opcin Instrumentacin y Control

1.2.1.2 Indicador Es un objeto que se inserta en el panel del VI para visualizar una salida. De la misma manera que ocurre con los controles, LabView inserta automticamente un terminal de salida en la ventana de diagrama. En la figura aqu al lado se presenta un indicador tipo Meter y su terminal respectivo. Ntese que el LabView representa a un terminal de entrada (de un control) con un borde grueso y a un terminal de salida (de un indicador) con un borde fino. Los controles y los indicadores en LabVIEW son similares a los parmetros de entrada y salida en los lenguajes de programacin tradicionales.

figura 1.4

La figura siguiente muestra el panel delantero de un VI que contiene dos controles y tres indicadores:

Controles

Indicadores figura 1.5 1.2.2 Objetos en el Diagrama en Bloque 1.2.2.1 Constantes Es un objeto similar a un control pero sin representacin en el panel del VI. Permite definir valores que sern utilizados en un programa o VI pero sin que el utilizador pueda maniobrarlos directamente. La figura aqu al lado representa a una constante de valor 2,5.

figura 1.6

Prof. Argenis Rondn

Dep. Electricidad - Opcin Instrumentacin y Control

1.2.2.2 Terminales Son regiones (de un VI o de una funcin) por donde se transmiten los datos. Los terminales son similares a los parmetros de funciones en los lenguajes clsicos. El smbolo y el color de los terminales indican el tipo de datos que maneja el control o el indicador (ver captulo 2). figura 1.7 1.2.2.3 Funciones Son porciones de programa que realizan una tarea determinada. Toda funcin ser representada en el diagrama por un icono con un cierto nmero de terminales de entrada y salida. En la figura 1.8 se puede apreciar varias funciones contenidas en la librera estndar del LabVIEW, algunas identificadas fcilmente por su icono: como la multiplicacin, la divisin, la funcin seno, las funciones lgicas AND y XOR. El caso particular de la funcin multiplicacin, como se puede apreciar en la figura 1.9, tiene dos terminales de entrada (los dos terminales E1 y E2 situados a la izquierda del icono) y el resultado de la multiplicacin ser dada por el terminal de salida S situado del lado derecho del icono. Entradas Salida

figura 1.8

figura 1.9 1.2.2.4 Conexin Una conexin representa un camino que toman los datos entre dos nodos tomado. Las conexiones tienen el color que identifica el tipo de datos (tal como ocurre con los terminales) Para realizar una conexin desde un terminal a otro, seale con el ratn el primer terminal hasta que aparezca la herramienta Bobina de hilo. Haga clic en ese terminal y luego en el otro terminal. LabView dibujar entonces el cable de conexin entre los dos terminales con el color correspondiente a los datos manejados por los dos terminales. El orden de cableado no tiene importancia.

figura 1.10 Cuando la herramienta tipo bobina de hilo se encuentra sobre un terminal, la zona del terminal se pone intermitente indicando que se puede realizar el cableado. La figura siguiente muestra una ventana de diagrama de un VI donde aparecen varios terminales, constantes, funciones y sus conexiones.

Prof. Argenis Rondn

Dep. Electricidad - Opcin Instrumentacin y Control

Funciones Terminales de indicadores Terminales de controles

Constantes

figura 1.11 Es de notar que el hecho de realizar las conexiones es el equivalente a escribir un programa en los leguajes de programacin clsicos. 1.2.3 Conexionado 1.2.3.1 Informacin flotante Cuando se desplaza el ratn sobre el terminal de un nodo, una pequea ventana amarilla flotante aparece con la descripcin correspondiente al nodo. figura 1.12 1.2.3.2 Adaptacin de las conexiones Los objetos cableados pueden ser desplazados de manera individual o agrupados. Seleccione el o los elementos a desplazar, cuando aparezca la herramienta Flecha y manteniendo pulsado el botn del ratn, deslice el cursor hasta el nuevo lugar. Las conexiones involucradas sern automticamente actualizadas. (ver figura 1.13)

Prof. Argenis Rondn

Dep. Electricidad - Opcin Instrumentacin y Control

figura 1.13 1.2.3.3 Seleccin y eliminacin de conexiones Es posible que se quiera eliminar el cableado entre dos o ms nodos. En ese caso, seleccione la conexin que se desee eliminar y presione sobre la tecla de borrado. Un Segmento es una porcin de conexin que consiste en una simple lnea horizontal o vertical. El punto de encuentro de tres o cuatro segmentos se llama Unin. Una Rama es una porcin de conexin que contiene todos los segmentos entre una unin y otra, entre un terminal y la unin siguiente, o entre un terminal y otro si no existen uniones entre estos dos Se puede seleccionar un segmento haciendo clic sobre el segmento con la herramienta flecha. Si se hace un nuevo clic, se selecciona todo la rama, si hace un tercer clic se seleccionar toda la conexin.

figura 1.14 1.2.3.4 Conexiones incorrectas Cuando una conexin se presenta como una lnea discontinua y presentando una x roja en el medio, se tiene una mala conexin. Se puede tener una mala conexin por diferentes razones, como por ejemplo la conexin entre dos controles, o la conexin entre dos terminales con tipos de datos diferentes. Estas malas conexiones se pueden eliminar de la misma manera descrita en el apartado anterior o bien desde el men Edit, escoger Remove Broken Wires o Ctrl+B esto borrar todas las malas conexiones del diagrama.

Prof. Argenis Rondn

Dep. Electricidad - Opcin Instrumentacin y Control

figura 1.15

1.3 EJERCICIO N 1: CREACIN DE UN VI SIMPLE


Se tiene un control con el valor de la temperatura en C y dos indicadores tipo termmetro donde se visualizar esta temperatura en K y F tal como lo indica la figura siguiente. Realice un VI que permita realizar este cambio de unidades.

figura 1.16 1. En el panel delantero inserte un control numrico tipo digital y nmbrelo C. Inserte tambin, dos indicadores numricos tipo termmetro y nmbrelos K y F respectivamente. A cada termmetro actvele su indicador digital (botn derecho: Visible Items Digital Display). Si as lo desea, Prof. Argenis Rondn 7

Dep. Electricidad - Opcin Instrumentacin y Control

puede utilizar los embellecedores para mejorar la apariencia del VI (Puede tomar como ejemplo la figura aqu arriba). 2. En la ventana de diagrama aparecen automticamente el terminal del control y los terminales de los dos indicadores insertados tal como aparece en la figura siguiente.

figura 1.17 3. Inserte en la ventana de diagrama las funciones multiplicacin, divisin y suma necesarias para realizar los clculos de conversin de unidades:
o

F =

9 o C + 32 5
o

K =

C + 273

Funcin multiplicacin (All Functions / Numeric: Multiply): Esta funcin multiplica los valores presentes en sus entradas x e y devolviendo el producto en su salida x*y.

Funcin divisin (All Functions / Numeric: Divide): Esta funcin divide el valor presente en la entrada x entre el valor de la entrada y devolviendo el resultado en su salida x/y.

Funcin suma (All Functions / Numeric: Add): Esta funcin suma los valores presentes en sus entradas x e y devolviendo el resultado en su salida x+y.

4. Para visualizar la ayuda sobre las entradas y salidas de cualquier funcin, seleccione desde el men de la ventana de diagrama: Help / Show Context Help: (o Ctrl-H) aparece una ventana Help con las indicaciones de la funcin que apunte el cursor del ratn

Prof. Argenis Rondn

Dep. Electricidad - Opcin Instrumentacin y Control

figura 1.18 5. Conecte los diferentes elementos de tal manera que realice las conversiones esperadas. 6. Guarde el instrumento virtual VI construido en el directorio indicado por el docente. 7. Ejecute la aplicacin seleccionando el botn Run Continuously desde la barra de herramientas del panel del VI y pruebe su funcionamiento.

Figura 1.19

Prof. Argenis Rondn

Dep. Electricidad - Opcin Instrumentacin y Control

REPRESENTACIN DE UNA VARIABLE

El LabView permite la utilizacin de los diferentes tipos usuales de variables que permite un lenguaje de programacin. El programador debe escoger, para una variable dada, el tipo mas adecuado tomando en cuenta el uso y la precisin esperada en los clculos.

2.1 VARIABLES NUMRICAS


Como su nombre lo indica, son variables que permiten manipular valores numricos. Existen varias precisiones que el programador puede seleccionar de acuerdo a la aplicacin y a la precisin de los clculos a realizar. 2.1.1 Enteros con signo Existen tres tipos de variables de enteros con signo, dependiendo del nmero de bits de la variable. Se reconocen en el diagrama por su color azul y la letra I seguida del nmero de bits: I8, I16 e I32. Tipo I8 I16 I32 Nombre Byte Word Long Nmero de bits 8 16 32 Rango -128 a 127 -32.768 a 32.767 -2.147.483.648 a 2.147.483.647

La figura siguiente muestra controles e indicadores con terminales de tipo entero.

I8

I16

I32 figura 2.1

Prof. Argenis Rondn

Dep. Electricidad - Opcin Instrumentacin y Control

10

2.1.2 Enteros sin signo Este tipo de variables, solo manipula datos enteros positivos. Al igual que los enteros con signo, existen tres tipos de variables de enteros sin signo. Se reconocen en el diagrama por su color azul y la letra U seguida del nmero de bits: U8, U16 e U32:

Tipo U8 U16 U32

Nombre Unsigned Byte Unsigned Word Unsigned Long

Nmero de bits 8 16 32

Rango 0 a 255 0 a 65.535 0 a 4.294.967.295

La figura siguiente muestra controles e indicadores con terminales de tipo entero sin signo.

U8

U16

U32

figura 2.2

2.1.3 Punto flotante real Este tipo de variable permite la realizacin de clculos con nmeros reales de punto flotante. Se reconocen en el diagrama por su color naranja. Dependiendo de la precisin de los datos manipulados, aparecen en los terminales las indicaciones SGL, DBL o EXT: Tipo SGL DBL EXT Nombre Single Double Extended Nmero de bits 32 64 80 Rango -3.4E38 a 3.4E38 -1.7E308 a 1.7E308 -1.1E4932 a 1.1E4932 Dgitos de Precisin 8 dgitos 16 dgitos 19 dgitos

La figura siguiente muestra algunos ejemplos con nmeros reales punto flotante. Prof. Argenis Rondn 11

Dep. Electricidad - Opcin Instrumentacin y Control

SGL

DBL

EXT

figura 2.3

2.1.4 Punto flotante complejo Este tipo de variable permite la realizacin de clculos con nmeros complejos de punto flotante (tanto la parte real como la parte imaginaria son nmeros de punto flotante). Comparten con el grupo anterior el color naranja en los terminales y conexiones de la ventana de diagrama. En los terminales aparecen las indicaciones CGS, CDB o CXT dependiendo de la precisin de los datos manejados: Tipo CSG CDB CXT Nombre Complex Single Complex Double Complex Extended Nmero de bits 32 64 80 Rango -3.4E38 a 3.4E38 -1.7E308 a 1.7E308 -1.1E4932 a 1.1E4932 Dgitos de Precisin 8 dgitos 16 dgitos 19 dgitos

El nmero de bits y por lo tanto el rango y los dgitos de precisin se refiere a cada elemento del nmero complejo: su parte real y su parte imaginaria. La figura siguiente muestra algunos ejemplos de tratamiento de nmeros complejos: el primero separa la parte real de la parte imaginaria (los indicadores Re e Im son entonces reales punto flotante), el segundo calcula el conjugado correspondiente y el tercero crea un nmero complejo a partir del radio y ngulo de un vector.

Prof. Argenis Rondn

Dep. Electricidad - Opcin Instrumentacin y Control

12

CSG

CDB

CXT

figura 2.4

2.2 VARIABLES ALFANUMRICAS


Permiten manipular textos, cada carcter del texto ocupar un byte de la variable codificado en ASCII. Para este tipo de variable existe toda una batera de funciones agrupadas bajo la rbrica Character. Se reconocen en el diagrama por su color violeta en las conexiones y terminales adems de la indicacin abc en estos ltimos. La figura siguiente muestra un ejemplo de utilizacin de variables alfanumrica: en el indicador Resultado se mostrar la concatenacin de los textos contenidos en los controles String 1 y String 2. Se utiliza para ello la funcin de librera concatenar. Funcin concatenar

abc

figura 2.5

2.3 VARIABLES LGICAS


Es un tipo de variables que solo permite dos valores: verdadero (TRUE) y falso (FALSE). Estas variables son de una gran utilidad para la toma de decisin. Tambin son empleadas en el control binario (manipulacin de captores y actuadotes binarios o ON/OFF. Se reconocen en el diagrama por el color verde en las conexiones y terminales adems de la indicacin TF en estos ltimos. Prof. Argenis Rondn 13

Dep. Electricidad - Opcin Instrumentacin y Control

La figura siguiente se muestra un ejemplo, donde los indicadores tipo Led XOR y AND mostrarn el resultado de las funciones OR exclusivo y AND de los valores dados por los controles tipo interruptor A y B: TF

figura 2.6

2.4 EJERCICIO N 2: TRATAMIENTO DE VARIABLES


Complete el programa del Ejercicio N 1 para que encienda un led amarillo si la temperatura es inferior a 50C; un led rojo si la temperatura es superior a 90C; un led verde si la temperatura se sita entre estos dos valores. Complete el ejercicio para que muestre, en un indicador tipo texto, el mensaje Normal si la temperatura se encuentra en el rango 50C-90C y el mensaje Fuera de rango en caso contrario

figura 2.7

Prof. Argenis Rondn

Dep. Electricidad - Opcin Instrumentacin y Control

14

3
3.1 Definicin

REALIZACIN DE UN SUB-VI

Todo VI puede ser utilizado dentro de otro VI para resolver una tarea especfica. Cuando se utiliza un Vi dentro de otro, al primero se le denomina Sub-VI (Es el equivalente de los sub-programas y funciones en los lenguajes clsicos de programacin). Las ventajas de utilizar un sub-VI en vez del diagrama directamente en un VI son las siguientes: Ahorro de memoria: Si una tarea se repite varias veces en un programa, se sustituye el diagrama correspondiente a la tarea en cada sitio donde se repite por el icono de un sub-VI que realice esa tarea. El resultado es que el diagrama de la tarea se realiza solo una vez y cada vez que el VI tenga que realizar la tarea, llama al sub-VI correspondiente. Se tiene entonces un solo cdigo y por lo tanto el ahorro de memoria. Es de notar que si bien el LabVIEW utiliza un solo cdigo para un mismo sub-VI indiferentemente del nmero de veces en que aparece en el VI, los datos tratados corresponde al sitio de donde es llamado. Tarea Sub-VI Icono del Sub-VI VI figura 3.1 Reutilizacin del cdigo: Muchas veces una tarea de tiene que realizar en diferentes VI (por ejemplo el clculo del promedio de los valores de una tabla: se puede utilizar en muchsimos programas). A medida que un programador resuelve problemas particulares con LabVIEW, es aconsejable guardarlos como sub-VI para que pueda ser utilizado en un futuro, ahorrando tiempo de programacin.

Sub-VI

VI 1 figura 3.2

VI 2

Fcil mantenimiento: Cuando el diagrama de un VI se vuelve muy grande, se hace difcil su comprensin y por lo tanto su mantenimiento futuro. Es aconsejable dividir el programa en partes independientes, que cumplan tareas especficas dentro del problema general y que puedan a su vez ser Prof. Argenis Rondn 15

Dep. Electricidad - Opcin Instrumentacin y Control

probadas en forma independiente. EL VI estar resultar mas compacto y por lo tanto mas fcil de leer, para obtener los detalles solo hay que abrir los sub-VIs que lo forman.

VI VI con Sub-VIs Fcil a leer VI VI completo: muy grande Engorroso figura 3.3

3.2 CONSTRUCCIN Y UTILIZACIN DE SUB-VIs


Para poder utilizar un VI como un sub-VI dentro otro VI, se le debe haber definido un icono, para su fcil reconocimiento, y un conector con al menos un terminal para comunicarse.

Terminales de controles

Terminales de indicadores

Terminales de entrada (parmetros de entrada)

Terminales de salida (valores devueltos)

Icono del Sub-VI figura 3.4

Prof. Argenis Rondn

Dep. Electricidad - Opcin Instrumentacin y Control

16

Cada terminal puede ser un terminal de entrada o un terminal de salida. Los terminales de entrada sirven para suministrarle al sub-VI los datos necesarios para realizar su tarea (parmetros de entrada). Los terminales de salida sirven para que el sub-VI devuelva los resultados de la tarea (valores devueltos). Cuando se realiza un sub-VI a partir de un VI, a cada control se le asociar un terminal de entrada y a cada indicador se le asociar a su vez un terminal de salida. Cuando se inserta un sub-VI en un VI, el sub-VI aparecer, por defecto, en forma de icono. Se puede entonces conectar las entradas y salidas al diagrama del VI. Si se desea, se puede activar la forma desplegada (Botn derecho del ratn: deseleccionar View As Icon). Aparecen en forma explcita las entradas y salidas.

En forma de icono figura 3.5 3.2.1 Realizacin del Icono del sub-VI

En forma desplegada

Cada VI posee un icono por defecto visualizado en una pequea ventana situada en la parte de arriba y a la derecha de las ventanas Panel y Diagram, tal como lo indica la figura aqu abajo. Para cada VIs, el LabView visualiza el icono por defecto y un numero que indica las veces que se ha abierto un nuevo VI desde que se inici el LabView. Icono por defecto

figura 3.6 Para personalizar el icono del VI construido se utiliza el editor de iconos que trae el LabVIEW. Para activar el editor de iconos, abra el men flotante haciendo clic con el botn derecho del ratn sobre al figura del icono actual y luego seleccione all Edit Icon... La figura siguiente muestra la ventana del editor de iconos. Utilice las herramientas situadas en la parte izquierda para modificar el icono. Una imagen de tamao real aparece en una de las cajas situadas en la derecha de la zona de edicin.

Prof. Argenis Rondn

Dep. Electricidad - Opcin Instrumentacin y Control

17

figura 3. 7 Se puede guardar un icono diferente para los diferentes modos de pantalla: monocromo, 16 colores y 256 colores. El editor presenta por defecto el modo 256 colores, pero se puede hacer clic sobre las otras opciones para cambiar de modo. 3.2.2 Conector El conector es la interfaz de comunicacin de un sub-VI. El panel delantero de un VI utiliza controles e indicadores para transmitir datos hacia y desde l. Para poder comunica un VI con un sub-VI, se necesita entonces un conector con los terminales suficientes que permita encaminar estos datos hacia los controles e indicadores. Se puede definir las conexiones escogiendo la cantidad de terminales que se desee y asignarle a cada uno de estos terminales un control o un indicador del panel delantero. Para definir un conector, seleccione Show Connector en el men flotante obtenido desde la ventana del icono de la ventana del panel. La ventana del icono es remplazada por la ventana del conector. LabView reserva terminales de entrada para los controles en la parte izquierda y terminales de salida para los indicadores en la parte derecha. La cantidad de terminales reservados depende de al cantidad de controles e indicadores que se encuentre en el panel delantero.

Figura 3.8 Cada rectngulo en el conector representa la zona de un terminal. Si se desea agregar, eliminar o modificar la configuracin de los terminales, abra el men flotante en la ventana del conector y seleccione: Patterns o Add Terminal o Remove Terminal...

Prof. Argenis Rondn

Dep. Electricidad - Opcin Instrumentacin y Control

18

3.3 EJERCICIO N 3: CREAR EL ICONO Y EL CONECTOR A UN VI


El objetivo de este ejercicio es disear un icono y el conector para el VI creado en la manipulacin anterior. Para utilizar un VI como un sub-VI, se debe crear primero un icono y un cuadro conector para poder conectar las entradas y salidas. El icono de un VI representa al este VI como un sub-VI en el diagrama de otros VIs. 1. 2. 3. 4. Abra el VI del ejercicio anterior. En el panel delantero, abrir el men flotante desde el cuadro icono y seleccione Edit Icon.... Borre el icono actual. Dibuje un icono que indique la tarea que cumple el sub-VI.

figura 3.9 5. Cierre el editor de icono haciendo clic en OK. El nuevo icono aparecer en el cuadro de icono en lugar del antiguo. 6. Defina los terminales del conector abriendo el men flotante en el cuadro del icono del panel delantero y escogiendo Show Connetor. Por defecto, LabView selecciona un patrn de terminales en el conector basado en la cantidad de controles e indicadores que hay el panel delantero. Como en nuestro caso se tienen siete objetos en el panel delantero, el conector tendr siete terminales, como se indica aqu abajo.

figura 3.10 7. Abra el men flotante sobre el cuadro conector y seleccione Patterns. Seleccione el patrn siguiente:

Prof. Argenis Rondn

Dep. Electricidad - Opcin Instrumentacin y Control

19

figura 3.11 Esto se hace ya que solo se necesita un terminal de entrada (C) y dos terminales de salida (K y F). El resto de controles e indicadores no lo utilizaremos para este sub-VI: solo se quiere que realice las conversiones. 8. Asigne los terminales del conector al control C y al los indicadores K y F: a. Haga clic en el terminal de la izquierda del conector. El cursor se transforma automticamente en Bobina de hilo y el terminal cambia a negro. b. Haga clic sobre el control C. Una lnea discontinua mvil encuadra al control, como se indica en la figura siguiente. El terminal seleccionado aparecer entonces del color correspondiente al tipo de datos manejado por el control. En nuestro caso del color naranja puesto que el control C maneja datos tipo flotante doble (DBL).

figura 3.12 c. Repita las etapas a y b para asociar los terminales situados en la parte derecha del conector con los indicadores K y F. d. Abra el men flotante sobre el cuadro conector y seleccione Show Icon. 9. Guarde el VI en el disco duro: File/Save. 10. Cierre el VI: File/Close El VI que se acaba de realizar ya puede ser utilizado como un sub-VI en otros VIs. El icono representa al VI en el diagrama del VI que lo llama.

Prof. Argenis Rondn

Dep. Electricidad - Opcin Instrumentacin y Control

20

3.4 EJERCICIO N 4: APERTURA Y UTILIZACIN DE SUB-VIs


Para utilizar un sub-VI solo hay que insertarlo en la ventana de diagrama: En la ventana All Functions, seleccione el icono Select a VI.... Un dialogo de seleccin de archivo aparece. Seleccione el VI a utilizar y arrstrelo hasta la posicin deseada en el diagrama. Solo tiene ahora que conectar los terminales situados en el borde del icono con el resto del diagrama. 1. Abra un nuevo VI (New VI). 2. En el panel delantero, inserte un control numrico (C1) y dos indicadores numricos (K1 y F1). 3. Inserte un control tipo Slide (C2) y un control tipo Gauge (F2).

figura 3.13 4. Abra ahora la ventana de diagrama. 5. Inserte dos copias del sub-VIs hecho en el ejercicio anterior. 6. Para uno de los sub-VI: conecte el terminal de entrada con el terminal del control C1 y los terminales de salida con los terminales de los indicadores K1 y F1. 7. Para el sub-VI restante: conecte el terminal de entrada con el control C2 y el terminal de salida F con el control F2. 8. Pruebe el programa as realizado. Concluya.

Prof. Argenis Rondn

Dep. Electricidad - Opcin Instrumentacin y Control

21

4
4.1 INTRODUCCIN

ESTRUCTURAS DE PROGRAMACIN

Los lenguajes de programacin modernos, llamados lenguajes estructurados, cuentan con ciertas estructuras predefinidas que permiten realizar lazos y toma de decisiones en forma mas metdica y sencilla. Estas estructuras son casi siempre las mismas (while, do, for, case, etc.) en los diferentes lenguajes utilizados actualmente: lenguaje C, Visual C, Visual Basic, Pascal, Java, etc. El LabVIEW cuenta con las estructuras clsicas y algunas ms, solo que la forma de utilizarlas es totalmente grfica, por lo que una estructura se ver en LabVIEW como un bloque que encierra todo una parte del diagrama.

4.2 ESTRUCTURA CASE


4.2.1 Definicin La estructura CASE permite realizar tomas de decisiones. La estructura evala el valor dado en su entrada, si el valor corresponde a uno de los ya predefinidos en el programa, se ejecutar la porcin de programa correspondiente: Si

Valor 1? No Valor 2? No

Proceso 1

Si

Proceso 2

Valor n? No Proceso por defecto

Si

Proceso n

figura 4.1 Prof. Argenis Rondn 22

Dep. Electricidad - Opcin Instrumentacin y Control

La estructura evaluar primero el valor suministrado en su entrada. Si es igual a Valor 1 se realizar el Proceso 1 y finalizar la estructura, si es igual al Valor 2 se realizar el Proceso 2 y finalizar la estructura, y as sucesivamente. Si El valor de entrada no corresponde con ninguno del los valores Valor 1, Valor 2, ,Valor n entonces se realizar el Proceso por defecto. Este proceso por defecto, puede ser definido como uno de los procesos anteriores Proceso 1, Proceso 2, , Proceso n. En LabVIEW la estructura case se presenta como una caja con una zona superior con flechas de seleccin donde el programador definir los casos (Valor 1, Valor 2, etc.) y en el espacio central se introducir el diagrama correspondiente a ese caso. Si se quiere agregar o quitar un caso, con el puntero del ratn en la zona de casos, pulsar el botn derecho y escoger en el men flotante. Valor n Zona de casos Conexin para el valor de entrada

Zona para el diagrama correspondiente al caso n figura 4.2 Los diferentes casos pueden verse pulsando la flecha situada en la zona de casos. Para cada caso definido se introducir en la zona de diagrama el programa correspondiente al proceso que debe realizar. Los siguientes ejemplos muestran el uso de este tipo de estructura. Para poder visualizar cada caso, se presenta debajo del programa, la vista de los casos restantes: Diagrama de flujo Lenguaje C : : switch (N) { case 1: U = uV; break; case 2: U = mV; break; case 3: U = uV; break; default: U = uV; } : : LabVIEW

N=1

U = uV

N=2

U = mV

N=3

U = V

U = KV

figura 4.3 Prof. Argenis Rondn


Dep. Electricidad - Opcin Instrumentacin y Control

23

Diagrama de flujo

Lenguaje C

LabVIEW

E > 10 NO S=E+2

SI

if (E > 10) S=E5 else S=E+2 endif S=E-5

figura 4.4 Aprovechando las opciones que brinda la estructura CASE en LabVIEW y que el valor E a evaluar es de tipo entero, el programa anterior se puede realizar de la siguiente manera:

E > 10 NO S=E+2

SI

S=E-5

figura 4.5

4.2.2 Ejercicio N 5: Utilizacin de la estructura case 1. Utilizando una estructura Case realice un programa que haga la conversin de litros a galones o de galones a litros segn el estado de un selector.

Prof. Argenis Rondn

Dep. Electricidad - Opcin Instrumentacin y Control

24

figura 4.6 2. Modifique la estructura anterior para que la decisin se realice sobre una variable alfanumrica: Litros a Galones Galones a Litros Litros a m3 m3 a Litros

figura 4.7

4.3 ESTRUCTURA WHILE


4.3.1 Definicin Esta estructura permite repetir un proceso determinado mientras la condicin establecida sea verdadera o falsa (de acuerdo a la estructura escogida):

i=0

Repetir proceso mientras la condicin sea verdadera

Zona para diagrama del proceso a repetir

Proceso

i=i+1

Contador i de lazos realizados (de solo lectura) Conexin para condicin

Condicin

Verdadera

Falsa

figura 4.8 Prof. Argenis Rondn 25

Dep. Electricidad - Opcin Instrumentacin y Control

i=0

Repetir proceso hasta que la condicin se haga verdadera

Zona para diagrama del proceso a repetir

Proceso

i=i+1

Contador i de lazos realizados (de solo lectura) Conexin para condicin

Condicin Falsa Verdadera

figura 4.9 La variable i que sirve de contador de lazos, se incrementar automticamente cada vez que la estructura WHILE repita el proceso. Esta variable es de solo lectura y se puede utilizar dentro del proceso. Es de notar que el proceso se ejecutar por lo menos una vez, luego se repetir de acuerdo si la condicin es verdadera o falsa. El siguiente ejemplo muestra una aplicacin utilizando el lazo WHILE: muestra en el indicador S en forma consecutiva los valores 0, 10, 20, 30, 40, 100. Diagrama de flujo Lenguaje C LabVIEW

i=0
i = 0; do { S = 10 * i; i = i + 1; } while ( S <= 100 );

S = 10 x i

i=i+1

S >= 100

NO

SI

figura 4.10

Prof. Argenis Rondn

Dep. Electricidad - Opcin Instrumentacin y Control

26

4.3.2 Ejercicio N 6: Utilizacin del lazo While 1. Utilizando una estructura WHILE complete el programa anterior para que repita el procedimiento hasta que se pulse un pulsador de STOP.

figura 4.11 2. Utilizando una estructura WHILE realice un programa que simule el llenado de un tanque (0 a 500 lts.). Ensaye con varias velocidades.

figura 4.12 3. Modifique el ejercicio anterior para que tanto el nivel mximo a llenar como la velocidad sean configurables con controles tipo potencimetro.

figura 4.13

Prof. Argenis Rondn

Dep. Electricidad - Opcin Instrumentacin y Control

27

4.4 ESTRUCTURA FOR


4.4.1 Definicin La estructura FOR permite realizar un proceso un nmero N de veces determinado. A diferencia de la estructura anterior la condicin de repeticin del lazo ya est establecido en la estructura: cuando el contador de lazos haya alcanzado el valor determinado por el usuario. Para N 0 el proceso no se ejecutar ni una vez.

i=0
Conexin del nmero de veces a repetir el lazo

Zona para diagrama del proceso NO I

i<N

SI

i=i+1

Proceso Contador i de lazos realizados (solo lectura)

figura 4.14 El ejemplo siguiente muestra el programa del ejemplo anterior realizado ahora con lazo FOR: Diagrama de flujo Lenguaje C LabVIEW

i=0
for(i=0; i < 11; i++) { S = 10 * i; }

i < 11

NO

SI i=i+1 S = 10 x i

figura 4.15

Prof. Argenis Rondn

Dep. Electricidad - Opcin Instrumentacin y Control

28

4.4.2 Ejercicio N 7: Utilizacin del lazo FOR Realice el programa anterior utilizando una estructura FOR. Qu diferencias, en cuanto a ejecucin, encuentra entre las dos formas de realizar el programa?

figura 4.16

4.5 ESTRUCTURA SEQUENCE


4.5.1 Definicin El LabVIEW ejecuta un programa o diagrama en forma parallelo, o sea, si en un momento determinado el LabVIEW tiene todos los elementos para ejecutar una parte del diagrama, ste se ejecutar. Cuando se quiere romper con esta regla y obligar al LabVIEW a ejecutar un conjunto de tareas en un orden establecido se utiliza la estructura tipo secuencia. Forma 1: Las tareas se muestran apiladas una sobre otra Indicador de la tarea que se muestra Zona para el diagrama de cada tarea

Tarea 0

Tarea 1 Forma 2: Las tareas se muestran una al lado de la otra Tarea n

figura 4.17 El ejemplo siguiente muestra una secuencia con dos tareas: la primera tarea es esperar hasta que se pulse el pulsador Empezar, la segunda tarea es mostrar una secuencia de los primeros n nmeros pares 0, 2, 4, Prof. Argenis Rondn 29

Dep. Electricidad - Opcin Instrumentacin y Control

Diagrama de flujo Tarea 1

Lenguaje C

While (!Empezar); Empezar? NO SI for(i=0; i < n; i++) { S = 2 * i; }

Tarea 2

i=0

i<n

NO

SI i=i+1 S=2xi

LabVIEW

figura 4.18

Prof. Argenis Rondn

Dep. Electricidad - Opcin Instrumentacin y Control

30

4.5.2 Ejercicio N 8: Utilizacin de la estructura SEQUENCE Utilizando una estructura SEQUENCE modifique el programa anterior de tal manera que: Permita la entrada del valor mximo y la velocidad de llenado hasta que el operador pulse un botn de inicio. Una vez pulsado el botn de inicio, se ejecutar el lazo de llenado. Al finalizar el llenado se visualizar un mensaje de despedida y termina el programa.

figura 4.19

Prof. Argenis Rondn

Dep. Electricidad - Opcin Instrumentacin y Control

31

5
5.1 VECTORES

VECTORES, MATRICES O TABLAS (ARRAY)

Una serie de datos de un mismo tipo, conforman un vector. Cada elemento del vector o dato de la tabla ser referenciado con respecto al primero a travs de un indicador de la posicin o index. En LabVIEW como escalares Posicin 0 1 2 3 Serie de datos 2,5 1,0 2,9 0,1 figura 5.1 Son varias las ventajas de utilizar vectores o tablas en vez de una serie de escalares independientes: Simplifica el diagrama ya que agrupa todos los terminales en uno solo. Ntese que la conexin de una tabla o vector es una sola lnea pero un poco ms espesa que las conexiones de los escalares. Con la utilizacin de las funciones para tablas, los datos pueden ser tratados por grupos, ahorrando as espacio y memoria, aumentando la versatilidad del cdigo y por lo tanto la velocidad de procesamiento. En LabVIEW como un vector

5.2 TIPOS DE VECTORES


Se pueden definir tablas o vectores de todos los tipos de variables tratadas por LabVIEW: numricas enteras con o sin signo, numricas flotantes reales, numricas flotantes complejas, alfanumricas y lgicas. La figura siguiente muestra vectores constantes de los diferentes tipos existentes en LabVIEW. Para poder acceder a un elemento en particular hay que modificar el valor del index y el labVIEW le mostrar valor correspondiente. Numricas Alfanumricas Lgicas

figura 5.2

Prof. Argenis Rondn

Dep. Electricidad - Opcin Instrumentacin y Control

32

Tambin es posible mostrar ms de un elemento al mismo tiempo: posicionar el ratn en la parte inferior del terminal hasta que aparezca una doble flecha. Hacer clic en ese sitio y manteniendo pulsado el botn arrastre el ratn hacia abajo hasta que aparezca el nmero de elementos requeridos. Se puede definir vectores tanto para constantes como para controles e indicadores. Cuando se definen vectores de constantes, su manipulacin solo se puede realizar en tiempo de programacin. Solo los vectores de controles y de indicadores son accesibles al usuario en tiempo de ejecucin. La figura aqu abajo se muestra varios vectores de constantes, de controles y de indicadores. Ntese la diferencia entre los vectores de controles y los vectores de indicadores: Constantes Controles Indicadores

figura 5.3

5.3 FUNCIONES DE VECTORES


El LabVIEW tiene toda una batera de funciones para tratar los vectores o tablas agrupadas en la ventana de funciones: ALL Functions / Array. La figura siguiente muestra esta librera donde se indican el nombre de algunas de ellas. Index Array Insert Into Array

Array Size

Initialize Array

Build Array

figura 5.4

Prof. Argenis Rondn

Dep. Electricidad - Opcin Instrumentacin y Control

33

Array Size: Index Array: Insert Into Array: Inicialize Array:

Build Array:

Calcula el nmero de elementos que conforma una tabla. Extrae el elemento de la tabla indicado por el valor del index. Inserta en la tabla uno o varios elementos a partir de la posicin indicada por el index. Crea una tabla de una dimensin y tipo determinada con todos los elementos a un mismo valor. Crea una tabla a partir de elementos escalares independientes y/o otras tablas.

Existen otras funciones de tablas ms especializadas que se encuentran agrupadas en otras libreras, como por ejemplo las de clculo matemtico, estadstico, etc.

5.4 EJERCICIO N 8: TABLAS DE DATOS


Se tiene una tabla de datos provenientes de la medida de la temperatura de un horno. Realice un programa que calcule el valor promedio de estos datos (utilice las funciones Array Size e Index Array). Utilizando la funcin Array Max & Min extraiga el valor mximo y mnimo de la tabla.

figura 5.5

Prof. Argenis Rondn

Dep. Electricidad - Opcin Instrumentacin y Control

34

6
6.1 CLUSTER

CLUSTER

Es una coleccin de datos que pueden ser del mismo o de diferentes tipos. Es el equivalente a los registros utilizados en bases de dato. La agrupacin de datos en un solo ente tiene las mismas ventajas que los vectores o tablas: simplificar el programa y hacerlos mas verstil. Por ejemplo, se puede definir un cluster llamado Temperatura formado por: sitio de la medida (alfanumrico), la temperatura propiamente dicha (numrica DBL), las unidades (alfanumrica) y el estado (lgica).

figura 6.1 Estos datos tendr un solo nombre: Temperatura y su transporte a travs del diagrama se realizar como si fuera un solo elemento. Cada dato que conforma el cluster, puede ser ledo y modificado en cualquier momento en forma individual o en grupo. De acuerdo a la naturaleza de los elementos que lo conforma, se puede distinguir dos tipos de cluster: Cluster de salida: Todos sus elementos son o bien constantes (en ese caso es un cluster constante) o bien controles (cluster de controles). Este tipo de cluster solo pueden suministran valores al diagrama.

figura 6.2

Prof. Argenis Rondn

Dep. Electricidad - Opcin Instrumentacin y Control

35

Cluster de entada: Todos sus elementos son indicadores (cluster de indicadores) y por lo tanto solo puede aceptar valores desde el diagrama.

figura 6.3 Ntese que cuando se define un cluster de controles o de indicadores el LabVIEW encierra sus elementos dentro de un rectngulo biselado. Cuando se mueve el rectngulo, todos los elementos se movern a su vez.

6.2 FUNCIONES DE CLUSTER


El LabVIEW suministra toda una librera de funciones para tratar cluster. Para tener acceso a estas funciones, desde la ventana de funciones: All Functions / Cluster. La figura siguiente muestra la ventana que contiene estas funciones. Unbundle Bundle

Bundle by name Unbundle by name

Figura 6.4

Unbundle: Permite extraer los elementos que conforman un cluster. Bundle: Construye un cluster a partir de elementos simples. Bundle by name y Unbundle by name: Equivalentes a las anteriores pero ahora se puede especificar el nombre de cada elemento.

Prof. Argenis Rondn

Dep. Electricidad - Opcin Instrumentacin y Control

36

6.3 EJERCICIO N 9: USO DE CLUSTERS


Realice un cluster de controles llamado Punto 1 formado por dos controles numricos en punto flotante que definen las coordenadas del punto: (x, y). Haga una copia de este control y llmelo Punto 2. Realice un cluster de indicadores llamado Recta formado por dos indicadores numricos en punto flotante que definen la pendiente m y el cruce por el origen b de una recta: (m, b). Realice el programa que calcule el valor de los parmetros (m, b) de la recta que pasa por los puntos Punto 1 y Punto 2.

figura 6.5

Prof. Argenis Rondn

Dep. Electricidad - Opcin Instrumentacin y Control

37

7
7.1 INTRODUCCIN

GRFICOS

En muchas aplicaciones o instrumentos virtuales VI, se necesita presentar los resultados en forma de grficos: historial de una o varias variables, comportamiento de una variable con respecto a otra, visualizacin de una variable en tiempo real, etc. El LabVIEW cuanta con una librera de controles e indicadores grficos, verstiles y fciles de utilizar que le darn al instrumento virtual una apariencia profesional.

figura 7.1

7.2 GRAFICADORES BSICOS


7.2.1 Graficador tipo Chart Permite realizar el registro de una variable y presentar su valor instantneo, a medida que vaya ocurriendo, seguido de los valores anteriores previamente memorizados. Se puede configurar el nmero de muestras a memorizar, el nmero de muestras a visualizar (alcance de la visualizacin) entre otros parmetros. Tipos de visualizaciones posibles:

Strip Chart: La visualizacin se realiza como la producida por un registrador de papel. A medida que van llegando las muestras se van visualizando al lado de las otras. Al completar la totalidad de la pantalla, se desplaza la curva para dejar el puesto de una nueva muestra.

Scope Chart: La visualizacin se realiza como la producida por un osciloscopio. Igual que la anterior pero al completar la pantalla, se borran todas las muestras y se comienza de nuevo.

Prof. Argenis Rondn

Dep. Electricidad - Opcin Instrumentacin y Control

38

Sweep Chart: La visualizacin se realiza como la producida por un radar. Ahora no se borran todas las muestras al comenzar una nueva visualizacin, si no que se muestra una raya roja que divide la nueva visualizacin con la anterior. 7.2.2 Graficador tipo Graph A este graficador se le debe entregar la totalidad de los valores a graficar en forma de un vector. El graficador los mostrar todos los elementos del vector en el orden dado. Es muy interesante para la visualizacin de tablas de datos. 7.2.3 Graficador tipo XY Graph Muy parecido al anterior, pero ahora se le tiene que entregar tanto los valores en Y como en X en forma de un vector de clusters.

7.3 EJERCICIO
Realice un generador de una seal sinusoidal de frecuencia y amplitud variables a travs de potencimetros. Conecte un graficador tipo Chart y un indicador tipo Gauge. Observe el resultado. Modifique la forma de visualizacin.

Figura 7.2

Prof. Argenis Rondn

Dep. Electricidad - Opcin Instrumentacin y Control

39

También podría gustarte