LabVIEW 7 Nivel 1

40
Departamento de Electricidad Instrumentación y Control Prof. Argenis Rondón Profesor Asociado Dep. Electricidad – IUT Cumaná e-mail: [email protected] IUT Cumaná Km. 4 Carretera Cumaná - Cumanacoa Telf.: (0293) 4672138 • (0293) 4672136 Fax: (0293) 4672153 Febrero 2005 LabVIEW 7 Express Nivel 1 Informática Industrial Dep. Electricidad - Opción Instrumentación y Control

Transcript of LabVIEW 7 Nivel 1

Page 1: LabVIEW 7 Nivel 1

Departamento de Electricidad Instrumentación y Control

Dep. Ele e-mail

Km. 4 Carrete Telf.: (0293) 46

LabVIEW 7 Express Nivel 1

Dep. Electricidad - Opción Instrumentación y Control

Prof. Argenis RondónProfesor Asociado

ctricidad – IUT Cumaná: [email protected]

IUT Cumanára Cumaná - Cumanacoa72138 • (0293) 4672136

Fax: (0293) 4672153

Febrero 2005

Informática Industrial

Page 2: LabVIEW 7 Nivel 1

1 EL ENTORNO DE PROGRAMACIÓN GRÁFICA

Todo instrumento irtual se construye en dos ventanas diferentes: una ventana llamada Panel para dibujar la cara delantera del

una ventana llamada Diagram donde se realizará la rogramación gráfica propiamente dicha con la ayuda de funciones, terminales y conexiones.

1.1 INSTRUMENTO VIRTUAL Un instrumento virtual (VI) es un programa realizado en lenguaje de programación gráfica (G).vinstrumento virtual con la ayuda de controles predefinidos y p Ejemplo del panel de un VI y su diagrama correspondiente:

figura 1.1

iniéndose las entradas y salidas del mismo, sta etapa se realiza en gran parte en la ventana del panel. Luego se insertan en la ventana del diagrama las

Functions que contiene las funciones y objetos que se utilizan en la ventana de diagrama; la ventana ontrols que contiene los controles e indicadores que se utilizarán en la ventana del panel y por ultimo la entana Tools que contiene las herramientas para modificar los objetos en las ventanas del panel y del iagrama:

1.2 CONSTRUCCIÓN DE VIs En primer lugar hay que tener en cuenta la arquitectura jerárquica de los VIs. Después de haber construido un VI usted lo puede utilizar dentro de otros VIs como un sub-VI. Cuando se crea una aplicación, se empieza por el VI principal defefunciones que permitirán realizar las operaciones sobre los datos y por ultimo se interconectan todos estos elementos de acuerdo a la función que se quiera realizar con el VI. Además de las ventanas Panel y Block Diagram se pueden abrir adicionalmente tres ventanas de herramientas: la ventana Cvd

Dep. Electricidad - Opción Instrumentación y ControlProf. Argenis Rondón 1

Page 3: LabVIEW 7 Nivel 1

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, comprensión y mantenimiento de la aplicación. Se puede guardar el VI construido en un archivo. Además, en LabVIEW se puede también 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 más fácilmente 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 automáticamente 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

Dep. Electricidad - Opción Instrumentación y ControlProf. Argenis Rondón 2

Page 4: LabVIEW 7 Nivel 1

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 automáticamente 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. Nótese 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 parámetros de entrada y salida en los lenguajes de programación 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 representación en el panel del VI. Permite definir valores que serán 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

Dep. Electricidad - Opción Instrumentación y ControlProf. Argenis Rondón 3

Page 5: LabVIEW 7 Nivel 1

1.2.2.2 Terminales Son regiones (de un VI o de una función) por donde se transmiten los datos. Los terminales son similares a los parámetros de funciones en los lenguajes clásicos. El símbolo y el color de los terminales indican el tipo de datos que maneja el control o el indicador (ver capítulo 2).

figura 1.7

1.2.2.3 Funciones Son porciones de programa que realizan una tarea determinada. Toda función será representada en el diagrama por un icono con un cierto número de terminales de entrada y salida. En la figura 1.8 se puede apreciar varias funciones contenidas en la librería estándar del LabVIEW, algunas identificadas fácilmente por su icono: como la multiplicación, la división, la función seno, las funciones lógicas AND y XOR. El caso particular de la función multiplicación, 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 multiplicación será dada por el terminal de salida S situado del lado derecho del icono.

figura 1.9

figura 1.8

Entradas Salida

1.2.2.4 Conexión Una conexión 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 conexión desde un terminal a otro, señale con el ratón 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 conexión 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.

Dep. Electricidad - Opción Instrumentación y ControlProf. Argenis Rondón 4

Page 6: LabVIEW 7 Nivel 1

Constantes

Funciones

Terminales de indicadores

Terminales de controles

figura 1.11

Es de notar que el hecho de realizar las conexiones es el equivalente a escribir un programa en los leguajes de programación clásicos. 1.2.3 Conexionado 1.2.3.1 Información flotante Cuando se desplaza el ratón sobre el terminal de un nodo, una pequeña ventana amarilla flotante aparece con la descripción correspondiente al nodo.

figura 1.12

1.2.3.2 Adaptación 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 botón del ratón, deslice el cursor hasta el nuevo lugar. Las conexiones involucradas serán automáticamente actualizadas. (ver figura 1.13)

Dep. Electricidad - Opción Instrumentación y ControlProf. Argenis Rondón 5

Page 7: LabVIEW 7 Nivel 1

figura 1.13

1.2.3.3 Selección y eliminación de conexiones Es posible que se quiera eliminar el cableado entre dos o más nodos. En ese caso, seleccione la conexión que se desee eliminar y presione sobre la tecla de borrado. Un Segmento es una porción de conexión que consiste en una simple línea horizontal o vertical. El punto de encuentro de tres o cuatro segmentos se llama Unión. Una Rama es una porción de conexión que contiene todos los segmentos entre una unión y otra, entre un terminal y la unión 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 conexión.

figura 1.14

1.2.3.4 Conexiones incorrectas Cuando una conexión se presenta como una línea discontinua y presentando una “x” roja en el medio, se tiene una mala conexión. Se puede tener una mala conexión por diferentes razones, como por ejemplo la conexión entre dos controles, o la conexión 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.

Dep. Electricidad - Opción Instrumentación y ControlProf. Argenis Rondón 6

Page 8: LabVIEW 7 Nivel 1

figura 1.15

1.3 EJERCICIO Nº 1: CREACIÓN DE UN VI SIMPLE Se tiene un control con el valor de la temperatura en ºC y dos indicadores tipo termómetro 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 numérico tipo digital y nómbrelo ºC. Inserte también, dos

indicadores numéricos tipo termómetro y nómbrelos ºK y ºF respectivamente. A cada termómetro actívele su indicador digital (botón derecho: Visible Items ► Digital Display). Si así lo desea,

Dep. Electricidad - Opción Instrumentación y ControlProf. Argenis Rondón 7

Page 9: LabVIEW 7 Nivel 1

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 automáticamente 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 “multiplicación”, “división” y “suma” necesarias para

realizar los cálculos de conversión de unidades:

32 59 += CF oo

732 += CK oo

Función multiplicación (All Functions / Numeric: Multiply): Esta función multiplica los valores presentes en sus entradas x e y devolviendo el producto en su salida x*y.

Función división (All Functions / Numeric: Divide): Esta función divide el valor presente en la entrada x entre el valor de la entrada y devolviendo el resultado en su salida x/y.

Función suma (All Functions / Numeric: Add): Esta función 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 función, 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 función que apunte el cursor del ratón”

Dep. Electricidad - Opción Instrumentación y ControlProf. Argenis Rondón 8

Page 10: LabVIEW 7 Nivel 1

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 aplicación seleccionando el botón Run Continuously desde la barra de herramientas del

panel del VI y pruebe su funcionamiento.

Figura 1.19

Dep. Electricidad - Opción Instrumentación y ControlProf. Argenis Rondón 9

Page 11: LabVIEW 7 Nivel 1

2 l LabView permite la utilización de los diferentes tipos usuales de variables que permite un lenguaje de rogramación. El programador debe escoger, para una variable dada, el tipo mas adecuado tomando en cuenta

los.

variables que permiten manipular valores numéricos. Existen varias precisiones ue el programador puede seleccionar de acuerdo a la aplicación y a la precisión de los cálculos a realizar.

Existen t os es d gno, dependiendo ero de bits de la variable. Se reconocen en da del número de bits: I8, I16 e I32.

REPRESENTACIÓN DE UNA VARIABLE Epel uso y la precisión esperada en los cálcu 2.1 VARIABLES NUMÉRICAS Como su nombre lo indica, sonq 2.1.1 Enteros con signo

res tip el diagra

de variablma por su col

e enteros con sior azul y la letra “I” segui

del núm

Tipo N Núme e bits ro d Rango ombre

I8 Byte 8 -128 a 127

I16 Word 16 -32.768 a 32.767

I32 Long 32 -2.147.483.648 a 2.147.483.647

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

figura 2.1

I8

I16

I32

Dep. Electricidad - Opción Instrumentación y ControlProf. Argenis Rondón 10

Page 12: LabVIEW 7 Nivel 1

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

tin

Tipo Nombre Número de bits Rango

U8 Unsigned Byte 8 0 a 255

U16 Unsigned Word 16 0 a 65.535

U32 Unsigned Long 32 0 a 4.294.967.295

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

figura 2.2

ulos con números reales de punto flotante. Se reconocen en l diagrama por su color naranja. Dependiendo de la precisión de los datos manipulados, aparecen en los

termin s indic GL”,

2.1.3 Punto flotante real Este tipo de variable permite la realización de cálce

ales la aciones “S “DBL” o “EXT”:

Tipo N Núme e bits ro d Rango Dígito isión ombre s de Prec

SGL Single 32 -3.4E38 a 3.4E38 8 dígitos

DBL Double 64 -1.7E308 a 1.7E308 16 dígitos

EXT Extended 80 -1.1E4932 a 1.1E4932 19 dígitos

a figura siguiente muestra algunos ejemplos con números reales punto flotante.

U8

U32

U16

L

Dep. Electricidad - Opción Instrumentación y ControlProf. Argenis Rondón 11

Page 13: LabVIEW 7 Nivel 1

figura 2.3

rten con el grupo anterior el color naranja n los terminales y conexiones de la ventana de diagrama. En los terminales aparecen las indicaciones “CGS”,

“CDB” o “CXT” d o de la p tos manejado

2.1.4 Punto flotante complejo Este tipo de variable permite la realización de cálculos con números complejos de punto flotante (tanto la parte real como la parte imaginaria son números de punto flotante). Compae

ependiend recisión de los da s:

Tipo Nombre Núme e bits ro d Rango Dígito isión s de Prec

CSG Complex Single 32 -3.4E38 a 3.4E38 8 dígitos

CDB Complex Double 64 -1.7E308 a 1.7E308 16 dígitos

CXT Complex Extended 80 -1.1E4932 a 1.1E4932 19 dígitos

El número de bits y por lo tanto el rango y los dígitos de precisión se refiere a cada elemento del número

parte al de la parte imaginaria (los indicadores “Re” e “Im” son entonces reales punto flotante), el segundo calcula el

onjugado correspondiente y el tercero crea un número complejo a partir del radio y ángulo de un vector.

SGL

DBL

EXT

complejo: su parte real y su parte imaginaria. La figura siguiente muestra algunos ejemplos de tratamiento de números complejos: el primero separa larec

Dep. Electricidad - Opción Instrumentación y ControlProf. Argenis Rondón 12

Page 14: LabVIEW 7 Nivel 1

CSG

CDB

CXT

figura 2.4

2.2 VARIABLES ALFANUMÉRICAS Permiten manipular textos, cada carácter del texto ocupará un byte de la variable codificado en ASCII. Para este tipo de variable existe toda una batería de funciones agrupadas bajo la rúbrica “Character”. Se reconocen en el diagrama por su color violeta en las conexiones y terminales además de la indicación “abc” en estos últimos. La figura siguiente muestra un ejemplo de utilización de variables alfanumérica: en el indicador “Resultado” se mostrará la concatenación de los textos contenidos en los controles “String 1” y “String 2”. Se utiliza para ello la función de librería “concatenar”.

Función concatenar

abc

figura 2.5

2.3 VARIABLES LÓGICAS 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 decisión. También son empleadas en el control binario (manipulación de captores y actuadotes binarios o ON/OFF. Se reconocen en el diagrama por el color verde en las conexiones y terminales además de la indicación “TF” en estos últimos.

Dep. Electricidad - Opción Instrumentación y ControlProf. Argenis Rondón 13

Page 15: LabVIEW 7 Nivel 1

La figura siguiente se muestra un ejemplo, donde los indicadores tipo Led XOR y AND mostrarán 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 50ºC; un led rojo si la temperatura es superior a 90ºC; un led verde si la temperatura se sitúa 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 50ºC-90ºC y el mensaje “Fuera de rango” en caso contrario

figura 2.7

Dep. Electricidad - Opción Instrumentación y ControlProf. Argenis Rondón 14

Page 16: LabVIEW 7 Nivel 1

3 REALIZACIÓN DE UN SUB-VI

odo VI puede ser utilizado dentro de otro VI para resolver una tarea específica. Cuando se utiliza un Vi dentro n los lenguajes

clás s Las ven

al sub-VI correspondiente. Se tiene entonces un solo código y por lo tanto el ahorro de memoria. Es de notar que si bien el LabVIEW utiliza un solo código para un mismo sub-VI indiferentemente del número de veces en que aparece en el VI, los datos tratados corresponde al sitio de donde es llamado.

• or ejemplo

el cálculo del promedio de los valores de una tabla: se puede utilizar en muchísimos 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 programación.

e dividir el programa en partes independientes, que cumplan tareas específicas dentro del problema general y que puedan a su vez ser

3.1 Definición Tde otro, al primero se le denomina Sub-VI (Es el equivalente de los sub-programas y funciones e

ico de programación).

tajas 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

figura 3.1

Reutilización del código: Muchas veces una tarea de tiene que realizar en diferentes VI (p

Sub-VI

VI 2 VI 1

Sub-VI

Tarea

Icono del Sub-VI

VI

figura 3.2

Fácil mantenimiento: Cuando el diagrama de un VI se vuelve muy grande, se hace difícil su comprensión y por lo tanto su mantenimiento futuro. Es aconsejabl

Dep. Electricidad - Opción Instrumentación y ControlProf. Argenis Rondón 15

Page 17: LabVIEW 7 Nivel 1

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

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

VI

VI

figura 3.3

3.2 CONSTRUCCIÓN Y UTILIZACIÓN DE SUB-VIs

VI completo: muy grande ⇒ Engorroso

VI con Sub-VIs ⇒ Fácil a leer

Terminales de controles Terminales de

indicadores

Terminales de entrada (parámetros de entrada) Terminales de salida

(valores devueltos)

Icono del Sub-VI

figura 3.4

Dep. Electricidad - Opción Instrumentación y ControlProf. Argenis Rondón 16

Page 18: LabVIEW 7 Nivel 1

Cada terminal puede ser un terminal de entrada o un terminal de salida. Los terminales de entrada sirven para

de la tarea (valores devueltos).

uando 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 (Botón derecho del ratón: deseleccionar “View As Icon”). Aparecen en forma explícita las entradas y salidas.

figura 3.5

icono por defecto visualizado en una pequeña 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 ve uevo VI desde que se inició el LabView.

ara personalizar el icono del VI co se utiliza el editor de iconos que trae el LabVIEW. Para activar el

na del editor de iconos. Utilice las herramientas situadas en la parte erda para modificar el icono. Una imagen de tamaño real aparece en una de las cajas situadas en la

derecha de la zona de edición.

suministrarle al sub-VI los datos necesarios para realizar su tarea (parámetros de entrada). Los terminales de salida sirven para que el sub-VI devuelva los resultados 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. C

3.2.1 Realización del Icono del sub-VI Cada VI posee un

ces que se ha abierto un n

figura 3.6

nstruido

En forma de icono En forma desplegada

Icono por defecto

Peditor de iconos, abra el menú flotante haciendo clic con el botón derecho del ratón sobre al figura del icono actual y luego seleccione allí “Edit Icon...”

a figura siguiente muestra la ventaLizqui

Dep. Electricidad - Opción Instrumentación y ControlProf. Argenis Rondón 17

Page 19: LabVIEW 7 Nivel 1

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 comunicación 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 rectángulo en el conector representa la zona de un terminal. Si se desea agregar, eliminar o modificar la configuración de los terminales, abra el menú flotante en la ventana del conector y seleccione: Patterns o Add Terminal o Remove Terminal...

Dep. Electricidad - Opción Instrumentación y ControlProf. Argenis Rondón 18

Page 20: LabVIEW 7 Nivel 1

3.3 EJERCICIO Nº 3: CREAR EL ICONO Y EL CONECTOR A UN VI El objetivo de este ejercicio es diseñar un icono y el conector para el VI creado en la manipulación 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. Abra el VI del ejercicio anterior. 2. En el panel delantero, abrir el menú flotante desde el cuadro icono y seleccione Edit Icon.... 3. Borre el icono actual. 4. 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 patrón 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 patrón siguiente:

Dep. Electricidad - Opción Instrumentación y ControlProf. Argenis Rondón 19

Page 21: LabVIEW 7 Nivel 1

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 automáticamente en

“Bobina de hilo” y el terminal cambia a negro.

b. Haga clic sobre el control “ºC”. Una línea discontinua móvil 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.

Dep. Electricidad - Opción Instrumentación y ControlProf. Argenis Rondón 20

Page 22: LabVIEW 7 Nivel 1

3.4 EJERCICIO Nº 4: APERTURA Y UTILIZACIÓN 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 selección de archivo aparece. Seleccione el VI a utilizar y arrástrelo hasta la posición 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 numérico (ºC1) y dos indicadores numéricos (º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.

Dep. Electricidad - Opción Instrumentación y ControlProf. Argenis Rondón 21

Page 23: LabVIEW 7 Nivel 1

4 ESTRUCTURAS DE PROGRAMACIÓN

tructurados, cuentan con ciertas estructuras redefinidas que permiten realizar lazos y toma de decisiones en forma mas metódica y sencilla. Estas

l LabVIEW cuenta con las estructuras clásicas y algunas más, solo que la forma de utilizarlas es totalmente ráfica, por lo que una estructura se verá en LabVIEW como un bloque que encierra todo una parte del

La estructura CASE permite realizar tomas de decisiones. La estructura evalúa el valor dado en su entrada, si el valor corresponde a uno de los ya predefinidos en el programa, se ejecutará la porción de programa correspondiente:

4.1 INTRODUCCIÓN Los lenguajes de programación modernos, llamados lenguajes espestructuras 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. Egdiagrama. .2 ESTRUCTURA CASE 4

4.2.1 Definición

figura 4.1

¿Valor 1?

No

Si Proceso 1

Proceso por defecto

¿Valor 2?

No

Si Proceso 2

¿Valor n?Si Proceso n

No

Dep. Electricidad - Opción Instrumentación y ControlProf. Argenis Rondón 22

Page 24: LabVIEW 7 Nivel 1

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, así sucesivamente. Si El valor de entrada no corresponde con ninguno del los valores “Valor 1”, “Valor 2”,

una zona superior con flechas de selección donde el programador definirá los casos 1”, “Valor 2”, etc.) y central se introducirá el diagrama correspondiente a ese caso. Si se quiere agregar o quitar un tero del ratón en la zona de casos, pulsa ho y escoger en el menú flotante.

al proceso que debe realizar.

Los s muestran el uso de estructura. Para poder a caso, se presenta debajo del programa, la vista de los casos restantes:

figura 4.3

default: U = “uV”;

: :

Diagrama de flujo

y…,”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

(“Valor en el espacio caso, con el pun

r el botón derec

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

siguientes ejemplo este tipo de visualizar cad

: : switch (N) { case 1: U = “uV”; break; case 2: U = “mV”; break; case 3: U = “uV”;

break; }

N = 1 U = “uV”

N = 2

N = 3

U = “mV”

U = “V”

U = “KV”

Lenguaje C LabVIEW

Valor n Zona de casos

Z l diagrama

correspondiente al

Conexión para el valor de

entrada

ona para e

caso n

Dep. Electricidad - Opción Instrumentación y ControlProf. Argenis Rondón 23

Page 25: LabVIEW 7 Nivel 1

Diagrama de flujo Lenguaje C LabVIEW

E > 10

S = E + 2

NO

SI

S = E - 5

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

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

S = E + 2 S = E - 5

SI

NO

figura 4.5

4.2.2 Ejercicio Nº 5: Utilización de la estructura case

1. Utilizando una estructura “Case” realice un programa que haga la conversión de litros a galones o de galones a litros según el estado de un selector.

Dep. Electricidad - Opción Instrumentación y ControlProf. Argenis Rondón 24

Page 26: LabVIEW 7 Nivel 1

figura 4.6

2. Modifique la estructura anterior para que la decisión se realice sobre una variable alfanumérica: “Litros a Galones” “Galones a Litros” “Litros a m3” “m3 a Litros”

figura 4.7

4.3 ESTRUCTURA WHILE 4.3.1 Definición Esta estructura permite repetir un proceso determinado mientras la condición establecida sea verdadera o falsa (de acuerdo a la estructura escogida):

Condición

Proceso i = i + 1

i = 0

Verdadera

Repetir proceso mientras la condición sea verdadera Zona para diagrama

del proceso a repetir

Conexión para condición

Contador i de lazos realizados (de solo lectura)

Falsa

figura 4.8

Dep. Electricidad - Opción Instrumentación y ControlProf. Argenis Rondón 25

Page 27: LabVIEW 7 Nivel 1

Condición

Proceso i = i + 1

i = 0

Falsa

Repetir proceso hasta que la condición se haga verdadera Zona para diagrama

del proceso a repetir

Conexión para condición

Contador i de lazos realizados (de solo lectura)

Verdadera

figura 4.9

La variable i que sirve de contador de lazos, se incrementará automáticamente 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 condición es verdadera o falsa. El siguiente ejemplo muestra una aplicación 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

S >= 100 NO

S = 10 x i i = i + 1

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

SI

figura 4.10

Dep. Electricidad - Opción Instrumentación y ControlProf. Argenis Rondón 26

Page 28: LabVIEW 7 Nivel 1

4.3.2 Ejercicio Nº 6: Utilización 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 máximo a llenar como la velocidad sean configurables con controles tipo potenciómetro.

figura 4.13

Dep. Electricidad - Opción Instrumentación y ControlProf. Argenis Rondón 27

Page 29: LabVIEW 7 Nivel 1

4.4 ESTRUCTURA FOR 4.4.1 Definición La estructura FOR permite realizar un proceso un número N de veces determinado. A diferencia de la estructura anterior la condición de repetición 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 < N

SI

NOI

i = 0

Proceso i = i + 1

Zona para diagrama del proceso

Contador i de lazos realizados (solo lectura)

Conexión del número de veces a

repetir el lazo

figura 4.14

El ejemplo siguiente muestra el programa del ejemplo anterior realizado ahora con lazo FOR:

Diagrama de flujo Lenguaje C LabVIEW

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

i < 11

SI

NO

S = 10 x i i = i + 1

i = 0

figura 4.15

Dep. Electricidad - Opción Instrumentación y ControlProf. Argenis Rondón 28

Page 30: LabVIEW 7 Nivel 1

4.4.2 Ejercicio Nº 7: Utilización del lazo FOR Realice el programa anterior utilizando una estructura “FOR”. ¿Qué diferencias, en cuanto a ejecución, encuentra entre las dos formas de realizar el programa?

figura 4.16

4.5 ESTRUCTURA SEQUENCE 4.5.1 Definición El LabVIEW ejecuta un programa o diagrama en forma paralélelo, 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.

Tarea 0

Tarea 1

Tarea n

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

Forma 1: Las tareas se muestran apiladas una sobre otra Zona para el

diagrama de cada tarea

Indicador de la tarea que se muestra

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 números pares 0, 2, 4, …

Dep. Electricidad - Opción Instrumentación y ControlProf. Argenis Rondón 29

Page 31: LabVIEW 7 Nivel 1

Diagrama de flujo Lenguaje C

i < n

SI

NO

S = 2 x i i = i + 1

i = 0 Tarea 2

¿Empezar?NO

SI

Tarea 1 While (!Empezar); for(i=0; i < n; i++) { S = 2 * i; }

LabVIEW

figura 4.18

Dep. Electricidad - Opción Instrumentación y ControlProf. Argenis Rondón 30

Page 32: LabVIEW 7 Nivel 1

4.5.2 Ejercicio Nº 8: Utilización de la estructura SEQUENCE Utilizando una estructura “SEQUENCE” modifique el programa anterior de tal manera que: • Permita la entrada del valor máximo y la velocidad de llenado hasta que el operador pulse un botón de inicio. • Una vez pulsado el botón 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

Dep. Electricidad - Opción Instrumentación y ControlProf. Argenis Rondón 31

Page 33: LabVIEW 7 Nivel 1

5 VECTORES, MATRICES O TABL(“ARRAY”)

Una serie de datos de un mismo tipo, conforman un ve ento del ve la tabla será referenciado con respecto al primero a través de un indi n o “inde

Son r

• tabla o vector es una sola línea pero un poco más espesa que las conexiones de los escalares.

• Con la utilización de las funciones para tablas, los datos pueden ser tratados por grupos, ahorrando así ndo la versatilidad del código y por lo tanto la velocidad de procesamiento.

eras on o sin signo, numéricas flotantes reales, numéricas flotantes complejas, alfanuméricas y lógicas. La figura

uiente muestra vectores constantes de los diferentes tipos existentes en LabVIEW. Para poder acceder a un elemento en ay que modificar e y el labVIEW le valor correspondiente.

AS

5.1 VECTORES

ctor. Cada elemcador de la posició

ctor o dato dex”.

En LabVIEW como escalares

Posición

En LabVIEW como un vector

2 3

2,5

1,0

2,9

0,1

Serie de datos

0 1

figura 5.1

va ias 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. Nótese que la conexión de una

espacio y memoria, aumenta 5.2 TIPOS DE VECTORES Se pueden definir tablas o vectores de todos los tipos de variables tratadas por LabVIEW: numéricas entcsig

particular h l valor del index mostrará

figura 5.2

Numéricas Alfanuméricas Lógicas

Dep. Electricidad - Opción Instrumentación y ControlProf. Argenis Rondón 32

Page 34: LabVIEW 7 Nivel 1

También es posible mostrar más de un elemento al mismo tiempo: posicionar el ratón en la parte inferior del terminal hasta que aparezca una doble flecha. Hacer clic en ese sitio y manteniendo pulsado el botón arrastre el ratón hacia abajo hasta que aparezca el número de elementos requeridos. Se puede definir vectores tanto para constantes como para controles e indicadores. Cuando se definen vectores de constantes, su manipulación solo se puede realizar en tiempo de programación. Solo los vectores de ontroles y de indicadores son accesibles al usuario en tiempo de ejecución. La figura aquí abajo se muestra

varios vec stantes, de c de indicadores. Nótese entre los vectores de controles y los vectores de indicadores:

figura 5.3

El LabVIEW tiene toda una batería de fun tratar los vector adas en la ventana de funciones: ALL Functions / Array. La fig muestra esta indican el nombre de algunas de ellas.

Controles

ctores de con ontroles y la diferencia

5.3 FUNCIONES DE VECTORES

ciones para ura siguiente

es o tablas agruplibrería donde se

Constantes Indicadores

Array Size

Index Array Insert Into Array

Initialize Array

Build Array

figura 5.4

Dep. Electricidad - Opción Instrumentación y ControlProf. Argenis Rondón 33

Page 35: LabVIEW 7 Nivel 1

• Array Size: Calcula el número de elementos que conforma una tabla. • Index Array: Extrae el elemento de la tabla indicado por el valor del index.

Inserta en la ta• Insert Into Array: bla uno o varios elementos a partir de la posición indicada por el index. y: a un

mismo valor. Build Array: Crea una tabla a partir de elementos escalares independientes y/o otras tablas.

xisten otras funciones de tablas más especializadas que se encuentran agrupadas en otras librerías, como por jemplo las de cálculo matemático, estadístico, etc.

e tiene una tabla de datos provenientes de la medida de la temperatura de un horno. Realice un programa que ay”).

Utilizando la función “Arra

• Inicialize Arra Crea una tabla de una dimensión y tipo determinada con todos los elementos

Ee 5.4 EJERCICIO Nº 8: TABLAS DE DATOS Scalcule el valor promedio de estos datos (utilice las funciones “Array Size” e “Index Arr

y Max & Min” extraiga el valor máximo y mínimo de la tabla.

figura 5.5

Dep. Electricidad - Opción Instrumentación y ControlProf. Argenis Rondón 34

Page 36: LabVIEW 7 Nivel 1

6 CLUSTER

s una colección de datos que pueden ser del mismo o de diferentes tipos. Es el equivalente a los registros

Por ejemplo, se pued (alfanumérico), la temperatura propi ica).

6.1 CLUSTER Eutilizados en bases de dato. La agrupación de datos en un solo ente tiene las mismas ventajas que los vectores o tablas: simplificar el programa y hacerlos mas versátil.

e definir un cluster llamado Temperatura formado por: sitio de la medida amente dicha (numérica DBL), las unidades (alfanumérica) y el estado (lóg

figura 6.1

Estos datos tendrá un solo nombre: Temperatura y su transporte a través del diagrama se realizará como si

omento n forma individual o en grupo.

ter:

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

fuera un solo elemento. Cada dato que conforma el cluster, puede ser leído y modificado en cualquier me De acuerdo a la naturaleza de los elementos que lo conforma, se puede distinguir dos tipos de clus

Dep. Electricidad - Opción Instrumentación y ControlProf. Argenis Rondón 35

Page 37: LabVIEW 7 Nivel 1

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

ótese que cuando se define un cluster de controles o de indicadores el LabVIEW encierra sus elementos e mueve el rectángulo, todos los elementos se moverán a su vez.

inistra toda una lib r cluster. Para tener acceso a estas funciones, esde la ventana de funciones: All Functions / Cluster. La figura siguiente muestra la ventana que contiene

estas funciones.

Figura 6.4

• Bundle by name y Unbundle by name: ero ahora se puede especificar el nombre de cada elemento.

figura 6.3

Ndentro de un rectángulo biselado. Cuando s 6.2 FUNCIONES DE CLUSTER El LabVIEW sum rería de funciones para trata

Unbundle

Bundle

Bundle by name

Unbundle by name

d

• Unbundle: Permite extraer los elementos que conforman un cluster. • Bundle: Construye un cluster a partir de elementos simples.

Equivalentes a las anteriores p

Dep. Electricidad - Opción Instrumentación y ControlProf. Argenis Rondón 36

Page 38: LabVIEW 7 Nivel 1

6.3 EJERCICIO Nº 9: USO DE CLUSTERS Realice un cluster de controles llamado “Punto 1” formado por dos controles numéricos en punto flotante que definen las coordenadas del punto: (x, y). Haga una copia de este control y llámelo “Punto 2”. Realice un cluster de indicadores llamado Recta formado por dos indicadores numéricos 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 parámetros (m, b) de la recta que pasa por los puntos Punto 1 y Punto 2.

figura 6.5

Dep. Electricidad - Opción Instrumentación y ControlProf. Argenis Rondón 37

Page 39: LabVIEW 7 Nivel 1

7 GRÁFICOS

esultados en forma de gráficos: istorial de una o varias variables, comportamiento de una variable con respecto a otra, visualización de una

variable en tiempo real, etc. El LabVIE es e indicadores gráficos, versátiles y fáciles de utilizar que le darán al instrum onal.

7.1 INTRODUCCIÓN En muchas aplicaciones o instrumentos virtuales VI, se necesita presentar los rh

W cuanta con una librería de controlento virtual una apariencia profesi

figura 7.1

7.2 GRAFICADORES BÁSICOS

7.2.1 Graficador tipo Chart Permite realizar el registro de una variable y presentar su valor instantáneo, a medida que vaya ocurriendo,

viamente memorizados. Se puede configurar el número de muestras a emorizar, el número de muestras a visualizar (alcance de la visualización) entre otros parámetros.

seguido de los valores anteriores prem Tipos de visualizaciones posibles:

Strip Chart: La visualización se realiza como la producida por un registrador de papel. A medida que van do las muestras se van visualizando al lado de las otras. Al completar la totalidad de la pantalla, se llegan

desplaza la curva para dejar el puesto de una nueva muestra.

Scope Chart: La visualización 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.

Dep. Electricidad - Opción Instrumentación y ControlProf. Argenis Rondón 38

Page 40: LabVIEW 7 Nivel 1

Sweep Chart: La visualizaciómuestras al comenzar una nueva visualiza

n se realiza como la producida por un radar. Ahora no se borran todas las ción, si no que se muestra una raya roja que divide la nueva

aficador tipo Graph

visualización con la anterior.

7.2.2 Gr

totalidad de los valores a graficar en forma de un vector. El graficador el orden dado. Es muy interesante para la visualización de tablas

.2.3 Graficador tipo XY Graph

A este graficador se le debe entregar lalos mostrará todos los elementos del vector en de datos.

7

uy parecido al anterior, pero ahora se le tiene que entregar tanto los valores en Y como en X en forma de un

ICIO

Realice un generado ravés de potenciómetros. Conecte un graficador tip do. Modifique la forma de visualización.

Figura 7.2

Mvector de clusters. 7.3 EJERC

r de una señal sinusoidal de frecuencia y amplitud variables a to “Chart” y un indicador tipo “Gauge”. Observe el resulta

Dep. Electricidad - Opción Instrumentación y ControlProf. Argenis Rondón 39