Вы находитесь на странице: 1из 178

INSTITUTO TECNOLOGICO DE HERMOSILLO

Curso Prctico de LabVIEW

Programacin Grfica para Intrumentacin y Control

Contenido del Curso Programacin Grfica para Instrumentacin y Control Contenido del Curso

Captulo 1

Introduccin a LabVIEW

Introduccin En este captulo se hace un breve anlisis de las propiedades bsicas de LabVIEW, y se describen los mens y las herramientas de ayuda.

Al trmino de este captulo usted habr aprendido: I. II. Qu es un instrumento virtual Acerca del ambiente de trabajo de LabVIEW (ventanas, mens y herramientas)

III. Acerca de las opciones de ayuda de LabVIEW

Programacin Grfica para instrumentacin y control

Virtual

I. Instrumentos Virtuales Los programas en LabVIEW reciben el nombre de Instrumentos Virtuales (VIs). Los Instrumentos Virtuales estn compuestos principalmente por tres partes: el Panel Frontal, el Diagrama a Bloques y el icono/conector. El panel frontal es la Interface del usuario, a travs de la cual se establecen los valores de entrada y se monitorean las seales de salida del Instrumento Virtual (VI). Debido a que el panel frontal de un VI es anlogo al panel frontal de un instrumento real, las entradas de datos son llamadas controles y las salidas de datos son los indicadores. Se pueden utilizar una gran variedad de controles e indicadores, como por ejemplo perillas, interruptores, botones, tablas, grficas y ms, para hacer el panel frontal fcil de identificar y entender. Un ejemplo de panel frontal de un VI para medicin de temperatura se muestra a continuacin.

Cada panel frontal est acompaado de un diagrama a bloques, el cul es el programa del Instrumento Virtual. El diagrama a bloques se podra pensar como el cdigo fuente. El diagrama a bloques se construye por medio de un lenguaje G de programacin grfica. Por ejemplo, ciclos como el For, estructuras del tipo Case, y funciones aritmticas. Los componentes estn cableados para definir el flujo dentro del diagrama a bloques. El diagrama a bloques correspondiente al panel frontal del VI para medicin de temperatura se muestra a continuacin:

El poder de LabVIEW reside en la naturaleza jerrquica de su programacin. Despus de la creacin de un VI, a ste se le puede utilizar como un subInstrumento 3
Programacin Grfica para instrumentacin y control

Virtual

Virtual (SubVI) en el diagrama a bloques de un VI de un nivel jerrquico mayor. No existe lmite en el nmero de capas en la jerarqua El icono/conector se usa para convertir un Instrumento Virtual (VI) a un objeto que pueda ser utilizado como una subrutina (subVI) en el diagrama a bloques de otro Instrumento Virtual (VI). El icono representa grficamente el Instrumento Virtual en el diagrama a bloques de otro VI. El conector a travs de sus terminales son anlogas a los parmetros en una subrutina. Estas corresponden a los controles e indicadores en el panel frontal del subVI. Las terminales de un VI se encuentran usualmente escondidas bajo el icono hasta que se escoge verlas. A continuacin se muestra el icono/conector del VI para medicin de temperatura.
Terminal de entrada Terminal de Salida Icono

Nodo

Temperatura

Como un ejemplo observe como un programa que utiliza el VI para medicin de temperatura como un sub-Instrumento Virtual en su diagrama a bloques. El panel frontal del VI de mayor nivel se muestra a continuacin.

El VI para medicin de temperatura, usado como un sub-Instrumento Virtual, recolecta los datos, y despus el VI principal grfica los resultados. En el panel del VI se especifica el nmero de mediciones y el retraso de tiempo entre cada medicin. El diagrama a bloques del VI principal muestra al subVI Temp dentro de la estructura de un ciclo For. El subVI toma las mediciones durante cada ciclo. Despus de que el ciclo se ejecuta un nmero especfico de veces el ciclo For pasa los datos al 4
Programacin Grfica para instrumentacin y control

Virtual

elemento que los grfica en el panel frontal del VI de mayor nivel. Ms adelante se hablar a profundidad acerca de los iconos de subVIs.

En LabVIEW, cualquier Instrumento Virtual se puede utilizar como un

subinstrumento en el diagrama a bloque de otro VI. Esta caracterstica hace a los diagramas de bloques modulares y fciles de depurar, entender y mantener.

II. El ambiente de trabajo de LabVIEW En el ambiente Windows, el grupo de programas de LabVIEW contiene varios iconos. El icono del programa LabVIEW comienza la operacin del programa

LabVIEW. El icono de desinstalar LabVIEW comienza el proceso de desinstalacin para remover LabVIEW y los archivos saciados de la computadora. El sistema de desarrollo de LabVIEW consiste de la aplicacin LabVIEW y varios archivos asociados. Otros archivos y directorios

LabVIEW utiliza varios archivos y directorios para almacenar informacin necesaria


para la creacin de los instrumentos Virtuales. Estos archivos y directorios incluyen: Directorio vi.lib Este directorio contiene libreras de VIs como las de adquisicin de datos y de anlisis. El directorio vi.lib debe estar en el mismo directorio que LabVIEW. No se debe cambiar el nombre del directorio debido a que LabVIEW busca este directorio cuando comienza. Si es cambiado el nombre, no se podrn utilizar muchas de las funciones de los controles y de las libreras. Directorio examples Este directorio contiene ejemplos de VIs que demuestran la funcionalidad de programacin de LabVIEW. Directorio cintools Este directorio contiene archivos para ligar rutinas externas en C a LabVIEW. 5
Programacin Grfica para instrumentacin y control

Virtual

Directorio mens Este directorio almacena la informacin de todas las ventanas. Siempre se tendr en este directorio el subdirectorio default. Directorio help Este directorio contiene todos los archivos de Ayuda asociados con LabVIEW. Se debe de colocar los VIs y las libreras de de VI en este directorio para que sean desplegados los VIs en el men Help de LabVIEW. Directorio user.lib Este directorio contiene libreras de VIs desarrolladas por el usuario que se desean que aparezcan en la paleta de funciones. Librera CURSO.LLB. Este archivo contiene la librera de los VIs que se usarn en este diplomado de LabVIEW. Pantalla de arranque de LabVIEW Al iniciar una sesin con LabVIEW, cuando se le da un doble clic en su icono, la pantalla de arranque de LabVIEW se muestra a continuacin:

Un instante despus aparece la siguiente ventana:

Programacin Grfica para instrumentacin y control

Virtual

New VI Open VI DAQ Solutions Find Examples LabVIEW Tutorial Next Exit

Crea un nuevo Instrumento Virtual (VI) Abre un Instrumento Virtual (VI) ya existente Proporciona ayuda asistida (Wizard) para crear VIs de adquisicin de datos. Busca ejemplos de VIs Abre el tutorial de ayuda de LabVIEW Despliega el siguiente TIP de ayuda Sale de LabVIEW y cierra el programa

Si se desea abrir un VI ya existente se puede seleccionar Open VI. En cambio, si selecciona New VI, un instante despus aparecen las ventanas de un nuevo VI sin ttulo, la ventana del panel frontal y la ventana del diagrama a bloques. La ventana en gris corresponde al panel frontal del Instrumento Virtual actual y es una de las dos ventanas que LabVIEW utiliza para construir un Instrumento Virtual. La otra ventana, que aparece en blanco por debajo de la del panel frontal, es la ventana que contiene el diagrama a bloques.

Programacin Grfica para instrumentacin y control

Virtual

Ambas ventanas, la del Panel Frontal y la del diagrama a bloques, consisten de una coleccin de objetos grficos, que son elementos de programacin de LabVIEW. Los paneles frontales contienen varios tipos de controles e indicadores. El diagrama a bloques contiene las terminales que corresponden a los controles e indicadores de panel de control, como tambin constantes, funciones, subinstrumentos Virtuales, estructuras, y cables que llevan informacin de un objeto a otro. La siguiente ilustracin muestra un panel frontal y su diagrama a bloques correspondiente.

Programacin Grfica para instrumentacin y control

Virtual

Ventana de icono
Barra de herramientas de Panel

Control Interruptor vertical

Control tipo perilla

Control Digital Etiquetas Grfica

Estructura del ciclo FOR Terminal de la grfica

Terminal del Control Digital

Terminal del Control tipo perilla Constante numrica Funcin Multiplicacin

SubVI

Terminal del Interruptor

Barra

de

Programacin Grfica para instrumentacin y control

Virtual

herramientas del panel frontal Tanto en la ventana del Panel Frontal como en la del Diagrama a bloques se dispone de una barra de herramientas con una serie de controles e indicadores que se usan para controlar la ejecucin y editar el Instrumento Virtual. Solamente una de las herramientas est disponible, dependiendo si se est trabajando en la ventana del Panel Frontal o en la ventana del Diagrama a Bloques. La siguiente barra de herramientas aparece en la parte superior de la ventana del Panel Frontal.

Botn de ejecucin de programa. Se oprime para correr el programa de un VI. Cuando el VI se est ejecutando, el botn cambia a Si el VI es el VI principal, o cambia a si el VI que se est ejecutando, es llamado por un VI de un nivel superior. Botn de paro. El botn de paro se habilita cuando se est ejecutando el VI. Al oprimir este botn la ejecucin del VI se detiene inmediatamente.

Deber evitar usar el botn de paro para terminar un VI, ya que acta como una interrupcin.
Botn de No posible ejecucin del programa. Este botn reemplaza el botn de ejecucin del programa e indica que el VI no puede ser compilado debido a errores. Para encontrar el porqu, oprima este botn, y un men desplegable aparecer mostrando todos los errores. Botn de ejecucin continua Al oprimir este botn, el VI se ejecutar repetidamente. Cuando se encuentra en el modo de ejecucin continua, el icono cambia . Al oprimir este icono de nueva cuenta, de deshabilita este modo de ejecucin. Botn de pausa/Continuacin. Este botn pausa la ejecucin del VI. Para continuar la ejecucin del VI oprima el botn de nuevo. Ventana de formato de texto. En esta ventana se selecciona el tipo de letra, tamao, estilo, color etc. Ventana de alineacin. Primero se debe seleccionar que objetos van a ser alineados, por medio de la herramienta de posicionamiento. Despus se selecciona la opcin de alineacin deseada, que incluye la alineacin vertical, por el borde superior, etc. de dos o ms objetos. Ventana de distribucin. Primero se debe seleccionar que objetos van a ser ordenados, utilizando la herramienta de posicionamiento. Despus se selecciona la opcin de distribucin deseada que incluye huecos, compresin etc. Ventana de reordenamiento. Primero se debe seleccionar que objetos van a ser reordenados, utilizando la herramienta de posicionamiento. Despus se selecciona la opcin de reordenamiento deseada, que incluye el sobreponer o 10
Programacin Grfica para instrumentacin y control

Virtual

esconder un objeto sobre otro. La barra de herramienta del diagrama a bloques La barra de herramienta del diagrama a bloques contiene la mayora de los botones de la barra de herramientas del panel frontal, y adems cuenta con cuatro botones para depuracin de VIs.

Botn de ejecucin desplegada. Al oprimir este botn se habilita la ejecucin desplegada. En este modo, el botn cambia a , y se puede observar el flujo de datos a travs del diagrama a bloques. Botn de pasos sobre. Al oprimir este botn se habilita el modo de ejecucin paso a paso, en el cul el VI se ejecuta nodo a nodo. Cada nodo parpadea para denotar cual est listo para ejecucin. Al oprimir de nuevo este botn se ejecutar una estructura o un subVI y despus se har una pausa en el siguiente nodo, sin detenerse en la ejecucin del interior del nodo. Botn de pasos dentro. Al oprimir este botn se ejecuta el primer paso hacia el interior de un subVI o una estructura y despus hace una pausa en el siguiente nodo dentro del subVI o estructura. Botn de finalizacin de pasos. Al oprimir este botn se finalizar el actual diagrama a bloques, estructura o subVI y despus se har una pausa. Mens Emergentes Los mens de LabVIEW que ms seguido se utilizan son los mens emergentes. Casi todos los objetos que se utilizan para crear los VIs tienen mens emergentes para la seleccin o modificacin de sus propiedades. Para accesar estos mens, oprima por unos segundos el botn derecho del ratn sobre el panel u objeto del cual se quiere desplegar su men emergente. Mens desplegables La barra de mens en la parte superior de LabVIEW contiene varios mens desplegables. Estos mens contienen opciones comunes a la mayora de las aplicaciones como Abrir, Guardar, Copiar, y Pegar, y muchas otras opciones particulares a LabVIEW. Las opciones del men File se utilizan principalmente para abrir, cerrar, guardar e imprimir los VIs. Las opciones del men de Edit se utilizan para modificar el panel frontal y el diagrama a bloques de un VI. Puede utilizar estas opciones para manipular y reacomodar los componentes de LabVIEW a su gusto personal.
Programacin Grfica para instrumentacin y control

11

Virtual

Puedes utilizar las opciones en el men Operate para definir ciertas caractersticas de ejecucin del VI. Las opciones del men de Tools se utilizan para comparar VIs configurar las opciones de LabVIEW, crear ejecutables, revisar la historia del VI actual y lanzar algunas otras herramientas. Puede utilizar el men Browse para obtener informacin adicional acerca del VI, sus subVIs y para abrir ventanas de subVIs. Las opciones del men Windows se utilizan para localizar rpidamente ventanas que ya se encuentran abiertas y para desplegar las paletas. Puede utilizar el men Help para ver informacin acerca de los objetos en el panel o el diagrama, para activar las utilidades de referencia en lnea, y para ver informacin acerca de la versin actual de LabVIEW y la memoria de la computadora. Paletas

LabVIEW tiene paletas grficas y mviles que ayudan en la creacin y operacin de VIs. Las tres paletas con que cuenta LabVIEW son las paletas de Herramientas,
Controles, y Funciones. Paleta de herramientas Usted puede crear, modificar y depurar VIs usando las herramientas localizadas en la paleta de herramientas. Si la paleta no es visible, seleccione Show Tools Palette del men Windows para mostrar la paleta, o tambin se puede mostrar al oprimir el botn derecho del ratn junto con la tecla Shift. Despus de haber seleccionado una herramienta de la paleta, el cursor del ratn tomar su forma.

Herramienta de Operacin. Utilice la herramienta de operacin para manipular los controles e indicadores del panel frontal. La Herramienta cambia cuando sta pasa sobre un control basado en texto, como los controles digitales o controles con letras. Herramienta de Posicionamiento. Utilice esta herramienta para seleccionar, mover o cambiar de tamao a los objetos. Esta herramienta cambia a cuando pasa sobre una esquina de un objeto o sobre un objeto que se pueda cambiar de tamao. Herramienta de Etiquetado. Utilice esta herramienta, que cambia 12 Virtual a para
Programacin Grfica para instrumentacin y control

introducir texto a etiquetas. Esta herramienta cambia creando etiquetas libres.

cuando se est

Herramienta de alambrado. Utilice esta herramienta para alambrar objetos en el diagrama a bloques. Coloque esta herramienta sobre un alambre para desplegar el tipo de dato del alambre en la ventana de ayuda. Para lo anterior se debe de haber seleccionado del men de Ayuda el mostrar la ventana de Ayuda. Herramienta de Mens Emergentes. Utilice esta herramienta para mostrar los mens emergentes de un objeto con el botn izquierdo del ratn. Herramienta de Desplazamiento. Utilice esta herramienta para mover la ventana sin necesidad de utilizar las barras de desplazamiento. Herramienta de Punto de Interrupcin. Utilice esta herramienta para colocar puntos de interrupcin en VIs funciones y estructuras. Herramienta de Puntos de Prueba. Utilice esta herramienta para colocar puntos de prueba en los alambres del diagrama a bloques. Herramienta de copia de color: Utilice esta herramienta para copiar colores para despus colocar este color en la herramienta de coloreo.

Herramienta de coloreo. Utilice esta herramienta para colorear un objeto. Esta herramienta tambin despliega el fondo y el primer plano del objeto.
Paleta de Controles y Funciones Las paletas de Controles y Funciones consisten de una coleccin de iconos de alto nivel que representan subpaletas, dando acceso, a travs de stas, a todo un rango de elementos disponibles que se pueden utilizar en la creacin de VIs. Para accesar las subpaletas solo es necesario seleccionar el icono correspondiente. Es posible convertir la subpaleta flotante a una que permanezca en la pantalla, al oprimir la chinche o tachuela que aparece en la parte superior izquierda de la subpaleta. Paleta de Controles Usted puede agregar controles e indicadores al panel frontal mediante la Paleta de Controles. Cada opcin en la paleta despliega una sub-paleta de controles e indicadores disponibles para cada seleccin. Si la paleta no est visible, puede abrir esta paleta al seleccionar Show Controls Palette dentro del men Window, o bien dando clic derecho con el ratn sobre un rea libre del panel frontal. La paleta de Controles est disponible slo cuando la ventana del Panel Frontal

est activa.

13

Programacin Grfica para instrumentacin y control

Virtual

Subpaleta Numeric
Contiene controles e indicadores de tipo numrico. Subpaleta Boolean Contiene controles e indicadores de tipo booleano. Subpaleta String & Path Contiene controles e indicadores de tipo alfanumrico. Contiene tambin controles e indicadores del tipo Path (direcciones de archivos). Subpaleta List & Table Contiene controles e indicadores para mens seleccionables y cajas de listas de seleccin. Subpaleta Array & Cluster Contiene controles e indicadores para la seleccin de arreglos de datos y grupos de diferentes tipos de datos. Subpaleta Graph Contiene indicadores para desplegar datos en ventanas grficas o en cartas de tiempo real. Subpaleta Refnum Contiene controles e indicadores para nmeros de referencia de archivos. Subpaleta Ring & Enum Contiene controles numricos tipo anillo o con listas de seleccin. Subpaleta I/O Contiene controles para accesar por nombre algunas entradas/salidas de datos, por ejemplo los recursos VISA o los canales de una tarjeta de adquisicin de datos. Subpaleta Dialog Controls Contiene controles para dilogo y de opcin mltiple. Subpaleta Classic Controls Contiene los controles e indicadores de las versiones anteriores de LabVIEW. Subpaleta ActiveX 14
Programacin Grfica para instrumentacin y control

Virtual

Contiene los controles para el manejo de funciones ActiveX. Subpaleta Decorations Contiene objetos grficos comunes, para el despliegue en el panel frontal. Subpaleta User Controls Facilita el acceso directo para colocar los controles del usuario. Subpaleta Select a Control Despliega una ventana de dilogo para buscar y abrir controles desde cualquier medio de almacenamiento disponible en la PC. La paleta de Funciones Usted construye el diagrama a bloques con la paleta de Funciones. Cada opcin en la paleta despliega una subpaleta de iconos de nivel superior. Si la paleta de Funciones no es visible, usted la puede abrir al seleccionar Show Functions Palette del men Windows, o bien dando clic derecho con el ratn sobre un rea libre de la ventana del diagrama a bloques. La Paleta de Funciones est disponible slo cuando la ventana del Diagrama de

Bloques esta activa.

Subpaleta Structures Contiene estructuras de control de programas como los lazos FOR. Subpaleta Numrica Contiene funciones aritmticas, trigonomtricas, logartmicas y numricas. Subpaleta Boolean Contiene funciones lgicas y boleanas. Subpaleta String Contiene funciones para manipular cadenas de caracteres. 15
Programacin Grfica para instrumentacin y control

Virtual

Subpaleta Array Contiene funciones para procesar arreglos de datos. Subpaleta Cluster Contiene funciones para procesar grupos de datos Subpaleta de Comparison Contiene funciones para comparar datos numricos, bolanos y alfanumricos. Subpaleta Time & Dialog Contiene funciones de temporizacin, manejo de errores y de ventanas de dilogos. Subpaleta File I/O Contiene funciones y subVIs para escritura y lectura de archivos. Subpaleta Data Adquisition Contiene VIs para accesar las tarjetas de adquisicin de datos. Subpaleta Waveform Contiene funciones y subVIs para manejo de formas de onda; escritura, lectura, generacin, mediciones, etc. Subpaleta Instrument I/O Contiene VIs para controles de instrumentos por medio de GPIB, puerto serial y VISA. Subpaleta Mathematics Contiene las funciones matemticas de clculo, probabilidad y estadstica, ajuste de curvas y lgebra lineal. Subpaleta Communication Contiene VIs para comunicacin va TCP, DDE, Apple Events, y OLE. Subpaleta Application Control Contiene funciones para hacer ligas a otras aplicaciones o VIs. Tambin contiene las funciones de ayuda. Subpaleta Tutorial Contiene los VIs usados en el tutorial de LabVIEW Subpaleta Report Generation Contiene funciones y subVIs para generacin y edicin de reportes. Subpaleta Advanced Contiene funciones especiales como funciones para llamar libreras, controlar VIs, manipular datos, ejecutar nodos de cdigo en C, etc. Subpaleta Select a VI Contiene una ventana de dilogo para insertar subVIs al VI actual. Subpaleta User Library Contiene los VIs del usuario. III. Opciones de ayuda de LabVIEW 16
Programacin Grfica para instrumentacin y control

Virtual

LabVIEW tiene varias opciones de ayuda para los VIs, subVIs, y nodos. Las dos opciones ms comunes, usadas para la programacin de LabVIEW, incluyen la
ventana de Ayuda y la Ayuda en lnea. Ventana de Ayuda Para desplegar la ventana de Ayuda seleccione Show Help del men Help o presione <ctrl.+H>. Cuando coloca una de las herramientas de la paleta de herramientas sobre los objetos del panel o diagrama, la ventana de ayuda muestra el icono y el nombre del objeto, una descripcin de ste y muestra tambin el nombre y tipo de datos de cada una de las terminales. La Ventana de Ayuda se muestra en dos modos, Diagrama simple y Complejo. El siguiente ejemplo muestra la ventana de ayuda en el modo de Diagrama Simple. En este modo, las terminales requeridas tienen formato de texto en negritas, las recomendadas tienen formato de texto simple, y las opcionales no aparecen.

Diagrama de Ayuda Simple/Complejo. Al dar un clic sobre ste icono, cambia el modo de la ventana entre simple y complejo. El modo simple de ayuda enfatiza las conexiones importantes, y las que no lo son aparecen solo mostrando la terminal. El modo complejo de ayuda muestra todas las terminales. Tambin puede accesar esta opcin desde el men Help. Fijar ventana de Ayuda. Al dar un clic sobre este icono bloquea el contenido de la ventana de ayuda al contenido actual. Cuando la ventana de ayuda se encuentra bloqueada, el contenido de sta no cambia al mover el cursor a otra funcin o icono. Para desbloquear la ventana de ayuda, d otro clic sobre el icono Tambin puede accesar esta opcin desde el men Help. Ayuda en Lnea. De un clic sobre este icono para llamar a la descripcin del objeto en la documentacin de Ayuda en Lnea, que contiene la descripcin detallada de la mayora de los objetos. Tambin puede accesar esta opcin desde 17
Programacin Grfica para instrumentacin y control

Virtual

el men Help. El siguiente ejemplo muestra la ventana de ayuda en el modo de Diagrama Complejo. En este modo, las terminales requeridas tienen formato de texto en negritas, las recomendadas tienen formato de texto simple, y las opcionales aparecen en gris.

Capitulo 2

Creacin, Edicin y Depuracin de VIs

Introduccin_________________________________________________________________ 18
Programacin Grfica para instrumentacin y control

Virtual

Este capitulo introduce los conceptos bsicos para la creacin, edicin y depuracin de los Intrumentos Virtuales (VIs) en LabVIEW.

Al trmino de este capitulo usted habr aprendido: I. Como crear VIs II. Como crear, modificar y alambrar objetos III. Como usar las tcnicas de depuracin de VIs

I. Creacin de VIs Un VI posee tres partes principales: el Panel Frontal, el Diagrama de Bloques y el icono/conector. El icono/conector se describir ms adelante en la leccin 3. Panel frontal Usted construye el panel frontal de un VI con una combinacin de controles e indicadores. Los controles son el medio para introducir los datos a su VI Los indicadores muestran los datos que su VI genera. Existen muchos tipos de controles e indicadores. Usted aade controles e indicadores al panel frontal desde las distintas subpaletas de la paleta de controles (Controls Palette). Si la paleta de controles no est visible, usted puede: a) Dar clic derecho con el ratn en un rea libre de la ventana del Panel Frontal, o b) Seleccionar Show Controls Palette del men Window en la barra de mens. 19
Programacin Grfica para instrumentacin y control

Virtual

Dar clic derecho es el mejor mtodo para activar las paletas en las ventanas del

Panel Frontal y del Diagrama de Bloques. Si da un clic derecho en un rea libre de la ventana del panel frontal, activar la paleta de controles Similarmente, usted activa la paleta de funciones dando un clic derecho en un rea libre en la ventana del diagrama de bloques.

Indicadores y Controles numricos Los dos objetos numricos ms comnmente utilizados son el control digital y el indicador digital. Para introducir o cambiar valores en un control digital, usted puede dar un clic en los botones de incremento o decremento empleando la herramienta de operacin o dar un doble clic en el nmero, ya sea con la herramienta de operacin o de etiquetado.

Botones de incremento decremento Etiquetas

Control Digital

Indicador Digital

Indicadores y Controles Bolanos Usted utiliza controles e indicadores bolanos para introducir y desplegar valores lgicos (Verdadero y falso). Los objetos bolanos simulan interruptores, botones y LEDs. Los objetos bolanos ms comunes son el interruptor vertical y el LED redondo. Configuracin de Controles e Indicadores Usted puede configurar casi todos los controles e indicadores utilizando las opciones de sus mens emergentes. El oprimir el botn derecho del ratn sobre componentes individuales de controles e indicadores hace que se desplieguen los mens emergentes para personalizar dichos componentes.

20

Programacin Grfica para instrumentacin y control

Virtual

Men desplegable del display digital

Men desplegable de la etiqueta

Diagrama de Bloques El Diagrama de bloques se compone de nodos, terminales y alambres. Ventana del Panel Frontal

Terminales de controles Nodos Alambres

Terminales de indicadores

El patrn para las terminales de las funciones Add y Subtract es un nodo de tres terminales.

Ventana del Diagrama a Bloques Los nodos son elementos de ejecucin, representados por medio de iconos en el diagrama a bloques. Los nodos son anlogos a las declaraciones, funciones y subrutinas en los lenguajes de programacin basados en texto. Existen cuatro tipos de nodos: Funciones, SubVIs, Estructuras y Nodos de Interface de Cdigo (CINs). Las funciones son nodos previamente hechos para llevar a cabo operaciones elementales como sumar nmeros, lectura y escritura de datos de archivos o dar formato a cadenas de caracteres. Los SubVIs son VIs que usted disea y despus los manda llamar desde el diagrama a bloques de otro VI principal. Las estructuras, como los ciclos For y While, son elementos que controlan el flujo de datos del programa. Los CINs son interfaces entre el diagrama de bloques y cdigo proporcionado por el usuario, escrito en C. La figura anterior muestra un VI con dos nodos de funciones, una funcin de suma y otra de resta. Las terminales son puertos por los cuales pasan los datos entre el diagrama de 21
Programacin Grfica para instrumentacin y control

Virtual

bloques y el panel frontal y entre los nodos del diagrama de bloques. Las terminales son anlogas a los parmetros y constantes de la programacin basada en texto. Existen dos tipos de terminales: terminales de controles o indicadores y terminales de nodos. Las terminales de controles e indicadores pertenecen a los controles e indicadores del panel frontal. Los valores que un operador o un VI introduce a estos controles pasa al diagrama de bloques a travs de estas terminales cuando un VI se ejecuta. Cuando el VI termina la ejecucin, los datos de salida pasan del diagrama de bloques al panel frontal a travs de las terminales de los indicadores. El diagrama de bloques del VI anterior, muestra cuatro terminales que van a dos controles y dos indicadores del panel de control. Como en un VI, las funciones de suma y resta tambin tienen terminales de nodo que sirven de base al icono. Dichas terminales de nodo permiten el alambrado del nodo dentro del diagrama a bloques. La Figura anterior muestra un modelo de las terminales para las funciones de suma y resta. Alambrado Los alambres son trayectorias para los datos entre las terminales de los controles o indicadores y las terminales de nodos. Son anlogos a las variables en lenguajes convencionales. Los datos van en una sola direccin, de la terminal fuente a una o ms terminales de destino. Existen diferentes modelos de alambres para representar los diferentes tipos de datos. En un monitor a color, cada tipo de dato aparece con un color diferente. Algunos ejemplos de los tipos de alambres ms comunes son los siguientes.
Tipo de dato Numrico Boleano Alfanumrico Escalar Arreglo 1D Arreglo 2D Color Rojo (Punto Flotante), Azul (entero) Verde Prpura

En los dibujos de alambrado de esta seccin, la flecha al final del smbolo del ratn muestra dnde dar el clic y el nmero que aparece en el botn del ratn muestra cuntas veces se debe de oprimir el botn izquierdo.

Todo el alambrado se lleva a cabo utilizando el botn izquierdo del ratn. Para alambrar de una terminal a otra; dar un clic con la herramienta de alambrado en la primer terminal, y mover la herramienta a la segunda terminal, dar otro clic en la segunda terminal. Se puede empezar a alambrar desde cualquier terminal, ya sea desde una terminal fuente o desde una terminal de destino. Cuando la herramienta de alambrado est sobre la terminal, la superficie de la terminal parpadea, lo cual indica que al dar un clic conectar el alambre a esa terminal. No necesita mantener el botn oprimido mientras mueve la herramienta de alambrado de una terminal a otra. Usted puede doblar el alambre dando un clic y fijar el alambre mientras mueve el ratn en una direccin 22
Programacin Grfica para instrumentacin y control

Virtual

perpendicular. Presionando la barra espaciadora mantiene la direccin del alambre.

Tip Strips
Los tip strips facilitan la identificacin de la funcin y de las terminales del nodo que se quiere alambrar. Cuando la herramienta de alambrado se coloca sobre la terminal, un tip strip aparece. Los tip strip son pequeos cuadros con texto que despliegan el nombre del terminal.

Tip Strip

Mostrando terminales Es importante alambrar a las funciones correctas de las terminales. Usted puede mostrar el conector del icono para facilitar el alambrado. Para hacer esto, active el men emergente del icono de la funcin y seleccione Visible tems Terminals.

Programacin del Flujo de Datos El principio que gobierna como se ejecuta un programa en LabVIEW se llama flujo de datos. Un nodo se ejecuta slo cuando los datos estn disponibles en todas sus terminales de entrada; el nodo entrega los datos a todas las terminales de salida cuando ha terminado su ejecucin, y los datos pasan inmediatamente de las terminales de la fuente a las terminales de destino. El flujo de datos contrasta con el mtodo de control de flujo de ejecucin de un programa convencional, en el cul las instrucciones se van ejecutando segn la secuencia escrita. Como un ejemplo, considere un diagrama de bloques de un VI que suma dos nmeros y despus le resta 50.0 al resultado de suma. En este caso, el diagrama de bloques se ejecuta de izquierda a derecha, no porque los objetos estn dispuestos en ese orden, sino porque una de las entradas de la funcin resta no es vlida hasta que la funcin de suma haya sumado los nmeros y haya pasado los datos a la funcin de resta. Recuerde que un nodo o funcin se ejecuta slo cuando los datos estn disponibles en todas sus terminales de entrada, y entrega los datos a las terminales de salida slo cuando haya terminado la ejecucin.

23

Programacin Grfica para instrumentacin y control

Virtual

Considere el ejemplo a la derecha. Cul cdigo de segmento se ejecutar primero, la suma o la divisin? En realidad no se sabe porque las entradas en los dos nodos estn disponibles al mismo tiempo. En la situacin en que un segmento de cdigo se debe de ejecutar primero que otro, y no existe ninguna dependencia entre las funciones, debe utilizar una estructura de control de secuencias para forzar el orden de la ejecucin (las estructuras de control de secuencias se describen en el captulo 6).

Ejercicio 2.1 Objetivo: Construir un VI Usted crear un VI que compare dos nmeros y encienda un LED si los nmeros son iguales. Panel Frontal

24

Programacin Grfica para instrumentacin y control

Virtual

1. Abra un panel frontal nuevo escogiendo New del men File. Si usted previamente cerr todos los VIs abiertos, debe de seleccionar el botn New VI de la ventana de inicio. 2. Despliegue lado a lado las ventanas de panel frontal y diagrama de bloques escogiendo Tile Left and Right del men Windows. 3. Seleccione los controles numricos digitales. Utilizar estos controles para introducir los nmeros que desea comparar. a. Seleccione un control digital de la Subpaleta Numeric en la paleta de controles. Si la paleta de controles no est visible, actvela dando clic derecho en un rea libre en la ventana del panel. b. Coloque el control numrico en el panel frontal, como se muestra arriba. Para ello, arrastre el control a donde lo quiere y despus de un clic al botn del ratn. c. Teclee el nombre dentro de la etiqueta y presione el botn en la barra de herramientas. Si no teclea el nombre inmediatamente, la etiqueta desaparecer. Active el men emergente del control dando clic derecho sobre este y seleccione Label del men Visible tems. La etiqueta se activa y usted puede escribir el texto. Por default enter est fijado para agregar una lnea nueva. Para activar enter (o return ) para terminar la entrada de texto, cambe la opcin en Tools

Options del Panel Frontal.


d. Repita el proceso para crear el segundo control numrico digital o copie y edite el primero. 4. Seleccione un indicador (LED) boleano. Este indicador se encender si los dos nmeros coinciden, o permanecer apagado si no coinciden. a. De la Subpaleta Boolean en la paleta de controles seleccione Round LED. Coloque el indicador en el Panel Frontal, tal como se muestra arriba. Arrastre el indicador a donde desee y despus d un clic con el botn del ratn. b. Teclee iguales dentro de la etiqueta y d un clic fuera de la etiqueta cuando haya terminado. 25
Programacin Grfica para instrumentacin y control

Virtual

Cada vez que usted crea un nuevo control o indicador, LabVIEW automticamente crea su terminal correspondiente en la ventana del diagrama de bloques. Los smbolos de la terminal sugieren el tipo de datos del control e indicador. Por ejemplo, una terminal DBL representa un dato numrico de punto flotante con doble precisin, y una terminal TF representa un dato boleano. Observe que una terminal de un control posee un marco externo ms grueso que

una terminal de un indicador.

Diagrama de Bloques

Las terminales de los indicadores tienen marcos delgados. Las terminales de los controles tienen marcos gruesos.

1. Active la ventana del diagrama de bloques, dando un clic en cualquier parte de ella o presionando las teclas <ctrl. E>. 2. Seleccione la funcin Equal? de la Subpaleta Comparison de la paleta de funciones. Si la paleta de funciones no est visible, actvela dando clic derecho en un rea libre de la ventana del diagrama de bloques. La funcin Equal? compara dos nmeros y regresa el valor Verdadero si son iguales o Falso si no lo son. Puede activar la ventana de ayuda escogiendo Show Help del men de ayuda. Al posicionar cualquiera de las herramientas de edicin en un nodo, se desplegarn las entradas y salidas de la funcin en la ventana de ayuda cuando la ventana del diagrama est activa. 3. Utilizando la herramienta de alambrado de la paleta de herramientas, alambre el icono como se muestra en el diagrama de bloques de la pgina anterior. Para alambrar de una terminal a otra, de un clic con la herramienta de alambrado en la primera terminal, mueva la herramienta a la segunda terminal, y d un clic en la segunda terminal. No importa en qu terminal empiece a alambrar. Ayuda para el alambrado. Cuando quiera definir la trayectoria de los alambres en el diagrama a bloques, fije los alambres en el diagrama dando un clic con el ratn en un rea libre.
Programacin Grfica para instrumentacin y control

26

Virtual

Active el men emergente de la funcin Equal? y elija Visible tems >> Terminals para mostrar los terminales de conexin. Regrese al icono de la funcin despus de conectarla y seleccione nuevamente Visible tems >> Terminals del men emergente, para que muestre de nueva cuenta el icono de la funcin. 4. Active la ventana del panel frontal, dando un clic en cualquier pare o escogiendo Show Panel del men de Window. 5. Guarde el VI. a. Seleccione Save del men File. Asegrese que la carpeta del curso Curso de LabVIEW sea el directorio activo. b. Teclee Compare.vi en el cuadro de dilogo. c. D un clic en OK. Guarde todos sus VIs en la carpeta Curso de LabVIEW 6. Introduzca nmeros en los controles digitales y corra el VI. a. Utilizando la herramienta de operacin , de un doble clic en el control digital y teclee un nuevo nmero. Repita para el otro control. b. Ejecute el VI dando un clic en el botn de ejecucin c. Intente diferentes nmeros. 7. Cierre el VI, seleccionando Close del men File. Fin del ejercicio 2.1. .

II. Tcnicas de Edicin. Se pueden crear objetos no slo desde la ventana del panel frontal, sino tambin es posible crear terminales de indicadores y controles desde la ventana del diagrama a bloques. Puede utilizar los nodos de LabVIEW para crear controles, indicadores y constantes directamente en el diagrama a bloques al llamar el men emergente oprimiendo el botn derecho del ratn sobre la terminal del nodo y seleccionando la opcin adecuada. En el ejemplo de la figura mostrada a continuacin se observa como crear un control numrico para la funcin Add directamente en el diagrama a bloques.

27

Programacin Grfica para instrumentacin y control

Virtual

Despus de crear el control o indicador del panel frontal en el diagrama a bloques,

slo puede borrar ese objeto desde la ventana del panel frontal.

Seleccin de objetos La herramienta de posicionamiento Frontal y de Diagrama. selecciona objetos en las ventanas del Panel

Para seleccionar un objeto, de un clic con el botn izquierdo del ratn cuando la herramienta de posicionamiento se encuentra sobre ste. Cuando un objeto es seleccionado, aparece una lnea punteada en movimiento rodeando el objeto. Para seleccionar ms de un objeto, oprima la tecla <shift> y de un clic sobre los objetos que quiera agregar a la seleccin. Tambin puede seleccionar varios objetos al oprimir el botn izquierdo del ratn sobre un rea abierta, y sin dejar de oprimir el botn, mueva el ratn hasta abarcar todos los objetos que se desean seleccionar dentro del rectngulo. Mover Objetos Puede mover un objeto al seleccionar ese objeto con la ayuda de la herramienta de posicionamiento, y jalarla a la posicin deseada. Tambin puede mover un objeto seleccionado al presionar en el teclado las flechas de posicionamiento. Tambin puede restringir el movimiento del objeto seleccionado permitiendo solamente el movimiento vertical u horizontal al presionar la tecla <shift> cuando mueve el objeto. La direccin en la que inicialmente es movido determina si el movimiento del objeto se restringe horizontal o verticalmente. Borrado de Objetos Puede borrar objetos al seleccionar los objetos y despus presionar <delete> o seleccionar Clear del men Edit. Duplicado de objetos Puede duplicar la mayora de los objetos en LabVIEW. Para duplicar un objeto, mantenga presionada la tecla <ctrl> cuando lo seleccione y jale el objeto a duplicar. Despus de jalar el objeto a una nueva posicin y liberar el botn del ratn, una copia 28
Programacin Grfica para instrumentacin y control

Virtual

del icono aparece en la nueva posicin, mientras que el icono original permanece en la posicin original. Este proceso es conocido como clonacin. Tambin puede duplicar objetos usando Copy y paste del men Edit. Etiquetando de Objetos Hay dos tipos de etiquetas: etiquetas libres o independientes y etiquetas relacionadas. Las etiquetas libres o independientes proveen documentacin adicional para los VIs. Las etiquetas relacionadas pertenecen y se mueven con un objeto en particular. Para crear una etiqueta independiente, seleccione la herramienta de etiquetado de la paleta de Herramientas. Entonces, de un clic sobre un rea abierta y teclee el texto deseado en la caja de texto que aparece. Para terminar el modo de entrada de texto, de un clic fuera del rea de la etiqueta o sobre el botn de Enter en la barra de herramientas. La tecla <enter > tiene como funcin de inicio el agregar una nueva lnea. Para habilitar la tecla <enter > para terminar la entrada de texto, cambie la opcin en Tools Options Front Panel del men desplegable. Cuando agrega un control o indicador al panel frontal, una etiqueta relacionada aparece en blanco, esperando la entrada de texto. Esta etiqueta desaparece si no se introduce texto. Para crear una etiqueta relacionada de un objeto ya existente que no tiene etiqueta, oprima sobre este objeto el botn derecho del ratn y seleccione Visible tems >> label del men emergente, y teclee el texto en la caja de texto que aparece. Seleccin y eliminacin de alambres Un segmento de alambre es una pieza simple de alambre vertical u horizontal. El punto en donde se unen tres o cuatro segmentos es llamado unin. Una rama de alambre contiene todos los segmentos de alambrado de una unin a otra, de una terminal a la siguiente unin, o de una terminal a otra si no hay uniones entre ellas. Para seleccionar un segmento de alambre haga un clic sobre este con ayuda de la herramienta de posicionamiento. El hacer doble clic selecciona una rama, y el triple clic selecciona el alambrado completo.

29

Programacin Grfica para instrumentacin y control

Virtual

Alargamiento de alambres Es posible mover objetos cableados, solos o en grupos, al jalar los objetos seleccionados a una nueva localizacin con ayuda de la herramienta de posicionamiento. La conexin entre los objetos no se pierde, el o los alambres de conexin se alargan automticamente. Es posible que al hacer esto los alambres queden sobrepuestos a otros objetos o alambres ya existentes.

Cableado incorrecto Una lnea segmentada representa un cableado incorrecto. Se puede tener un mal cableado por muchas razones, como conectar dos terminales de entrada o conectar un terminal de entrada a una terminal de destino cuando los tipos de datos no concuerdan (como conectar datos numricos a bolanos). Puede remover un cableado incorrecto al seleccionarlo con la herramienta de posicionamiento y presionar <delete>. Al seleccionar Remove Broken Wires del men Edit se eliminar todo el cableado incorrecto en el diagrama de bloques. No confundir el alambre segmentado (color negro), que representa un mal

cableado, con el alambre punteado (color verde), que representa datos volanos.

Alambre segmentado (incorrecto)

Alambre punteado (correcto)

Edicin de textos Usando la Ventana de Formato de Texto de la Barra de Herramientas, usted puede cambiar el tipo de letra, el estilo, el tamao y la alineacin del texto de cualquier etiqueta o del texto desplegado en controles e indicadores. Ciertos controles e indicadores usan texto como parte del elemento, por 30
Programacin Grfica para instrumentacin y control

Virtual

ejemplo las escalas de los indicadores tipo grfica. Con LabVIEW usted tiene la posibilidad de modificar cada texto en forma independiente, basta con seleccionar el texto usando la herramienta de etiquetado y eligiendo las opciones de la Ventana de Formato de Texto. Color de Objetos Usted puede adecuar el color de la mayora de los objetos de LabVIEW. Para colorear un objeto, de clic derecho con la herramienta de coloreo. Elija el color que desea asignar de la paleta de colores que aparece. Si selecciona el recuadro con una T, el objeto ser transparente. Con esta opcin se puede hacer invisible el recuadro de las cajas de texto de las etiquetas.

Ejercicio 2.2 Objetivo: Aprender las tcnicas de edicin de LabVIEW Usted modificar el VI existente Editing Exercise para que se parezca al panel frontal mostrado abajo. Despus alambrar los objetos en el diagrama para hacer funcional el VI.

31

Programacin Grfica para instrumentacin y control

Virtual

1. Abra el VI Ejercicio de edicin de la librera DIPLO.LLB, seleccionando Open del men File. La librera se encuentra en la carpeta Curso de LabVIEW El panel frontal del VI Ejercicio de edicin contiene un nmero de objetos del LabVIEW. Su objetivo es hacer que el panel frontal de su VI se parezca al mostrado arriba. 2. Cambie de posicin el control digital. a. Seleccione la herramienta de posicionamiento , de la paleta de herramientas.

b. D un clic en el control digital y arrstrelo a otra posicin. Observe como la etiqueta del control sigue la posicin del control. Ahora d un clic en un espacio en blanco del panel para deseleccionar el control, despus d un clic en la etiqueta y arrstrela a otra posicin. Advierta que el control no la sigue. Usted puede colocar la etiqueta en cualquier espacio relativo al control, la etiqueta seguir su dueo dondequiera que se mueva el dueo. 3. Reposicione los tres interruptores como un grupo.
Programacin Grfica para instrumentacin y control

32

Virtual

a. Utilizando la herramienta de posicionamiento , de un clic en un rea abierta cerca de los tres interruptores, mantenga presionado el botn del ratn y arrstrelo hasta que todos los interruptores estn dentro del rectngulo de seleccin. b. D un clic en uno de los interruptores y mantenga presionado el botn del ratn, arrastre los interruptores a una posicin diferente. 4. Coloque los tres LEDs de tal manera que queden alineados horizontalmente e igualmente espaciados entre s. a. Utilizando la herramienta de posicionamiento , de un clic en un rea abierta cerca de los tres indicadores, mantenga presionado el botn del ratn y arrstrelo hasta que todos los indicadores estn dentro del rectngulo de seleccin. b. Alnie horizontalmente los indicadores seleccionando Vertical Centres desde el men desplegable Alignment en la barra de herramientas. c. Deje los LEDs igualmente espaciados entre s, seleccione Horizontal Centres desde el men desplegable Distribution en la barra de herramientas. 5. Cambie el tamao del LED. Coloque la herramienta de posicionamiento sobre el LED hasta que el cursor de la herramienta cambie a . D un clic sobre los pequeos crculos blancos y arrastre el cursor hacia fuera para aumentar el tamao del LED. 6. Cambie el color del LED. a. Seleccione la herramienta para colorear , con el cursor sobre el LED de clic derecho para desplegar la paleta de colores. b. Utilizando la herramienta de posicionamiento , seleccione un color de la paleta. El objeto cambiar al color que usted eligi por ltima vez. c. Por default, el estado inicial del LED es Apagado (falso). Utilizando la herramienta de operacin , cambie el estado del LED a Encendido (Verdadero) y repita los pasos (a) y (b). d. Esconda el texto booleano, seleccionando Visible tems >> Bolean Text del men emergente del LED. 7. Crear una etiqueta para el indicador digital. a. Active el men emergente del indicador digital (dando clic derecho con el cursor colocado sobre el indicador) y seleccione Visible tems >> Label del men. b. Teclee Indicador Digital dentro del recuadro y d un clic con el ratn fuera de la etiqueta (o d un clic en el botn 33 en la barra de herramientas).
Programacin Grfica para instrumentacin y control

Virtual

8. Borre el control alfanumrico. Seleccione el control dando un clic en l, con la herramienta de posicionamiento del men Edit. , luego presione <suprimir> o seleccione Cut

9. Duplique la etiqueta libre. Presione y mantenga presionado <ctrl.>, con la herramienta de posicionamiento, d un clic en la etiqueta libre y mantenga presionado, arrastre el duplicado de la etiqueta libre a una nueva posicin y libere el botn del ratn. 10. Cambie el estilo del la letra y esconda el recuadro alrededor de la etiqueta libre. a. Seleccione la etiqueta libre y utilice las opciones de la barra de herramientas de formato de texto para cambiar el letra, color, etc.). herramienta para colorear estilo (tamao, tipo de

b. Para esconder el recuadro alrededor de la etiqueta, d clic en el recuadro con la activa y seleccione T de la paleta de colores. 11. Cambie el estilo, tamao y color del texto del eje Y. Utilice la herramienta de etiquetado para seleccionar el 10 en el texto del eje Y. Escoja las opciones apropiadas del men desplegable de formato de texto. 12. Cambie la escala del eje Y, dando doble clic en 0.00 y tecleando -10.0.

Diagrama de Bloques

34

Programacin Grfica para instrumentacin y control

Virtual

1. Conecte las terminales del diagrama de bloques tal como se muestra arriba, de acuerdo a las siguientes instrucciones. Funcin Multiply (subpaleta Numeric). En este ejercicio esta funcin multiplica una constante numrica, 10.0, por el valor que se encuentra en el valor digital.

Numeric Constant. En este ejercicio esta constante es multiplicada por el valor del control digital. Pop up en la Terminal de la funcin Multiply y seleccione Create Constant. Teclee 10 sobre la constante resaltada. D un
clic en el botn del texto. de la barra de herramientas para finalizar la captura

VI Uniform White Noise (subpaleta Analyze>> Signal Processing>> Signal Generation). En este ejercicio, este VI genera un patrn de valores aleatorios uniformemente distribuidos entre 10 y -10 y los pasa a la grfica de formas de ondas. Funcin Not (subpaleta Bolean). En este ejercicio, esta funcin invierte el valor booleano del interruptor A y pasa el valor al LED redondo.

35

Programacin Grfica para instrumentacin y control

Virtual

Consejos para alambrar Para alambrar, d un clic en la Terminal de inicio y arrastre la herramienta de alambrado hasta la Terminal a conectar. Cuando la terminal destino est parpadeando, presione y suelte el botn izquierdo del ratn. Para identificar las terminales en las funciones de suma y negacin d clic derecho en el icono y seleccione Visible tems>> Terminal del men emergente. Cuando haya terminado la conexin, vuelva a dar clic derecho en el icono y seleccione Visible tems>> Icon. Para doblar el alambre, d un clic al botn izquierdo del ratn con la herramienta de alambrado en el punto donde ser la curva. 2. Cambie a la ventana del panel frontal, seleccionando Show Panel del men

Window. Utilice la herramienta de operaciones

para modificar el valor de los controles del panel frontal. Corra el VI dando un clic en el botn derecho de ejecucin de la barra de herramientas. 3. Guarde el VI seleccionando Save del men File. Cierre el VI seleccionando Close del men File. Fin del ejercicio 2.2

Ejercicio 2.3 Objetivo: Familiarizarse con las herramientas de depuracin del LabVIEW. Usted cargar un VI no ejecutable y corregir sus errores. Tambin utilizar el modo de ejecucin resaltada y paso a paso. Panel Frontal 36
Programacin Grfica para instrumentacin y control

Virtual

Diagrama a bloques

1. Abra el VI de depuracin de errores, escogiendo Open men File. Observe que el botn de ejecucin en la barra de herramientas est roto, indicando que el VI no se puede ejecutar. 2. Abra la ventana del diagrama de bloques seleccionando Show Diagram del men Windows. Observe los elementos del diagrama. Funcin Random Number (0-1) (subpaleta Numeric). Esta funcin regresa un nmero aleatorio entre cero y uno. Funcin Multiply (subpaleta Numeric). En este ejercicio, esta funcin multiplica el nmero aleatorio por 10.0.

Numeric Constant (subpaleta Numeric). Esta constante especifica la


constante en el diagrama de bloques.

Debug Exercise (Sub) VI. Este VI suma 10.0 y despus calcula la raz
cuadrada del valor. 3. Regrese a la ventana del panel frontal seleccionando Show Panel del men Windows. 4. Encuentre el objeto que contiene errores. a. D un clic en el botn roto de ejecucin listado de los errores. . Aparecer un recuadro con un

b. D un clic en el error del listado y despus d un clic en Show Error. En el diagrama de bloques, una lnea punteada resalta la funcin Multiply. La funcin Multiply contiene una terminal sin conectar. 5. Alambre la constante numrica (10.0) a la terminal inferior izquierda de la funcin Multiply. Si necesita ver las terminales, de clic derecho en el icono de la 37
Programacin Grfica para instrumentacin y control

Virtual

funcin Multiply y seleccione Visible tems >> Terminals del men emergente. Observe que cuando usted coloca la herramienta de alambrado en una terminal, aparece un cuadro con texto que despliega el nombre de la terminal. Si usted alambr correctamente la constante numrica, la flecha que aparece en el botn de ejecucin se ver normal, indicando que el VI ya es ejecutable. 6. Cambie a la ventana del panel frontal (men Windows>> Show Panel). Ejecute el VI varias veces dando clic en el botn de ejecucin. Un buen mtodo para depurar un VI es ir paso a paso por el VI y dar animacin al flujo de datos en el diagrama de bloques. Conforme los datos pasan de un nodo a otro, el movimiento de los datos indica por burbujas en los alambres. Adems, con este mtodo, el siguiente nodo a ser ejecutado parpadea rpidamente. 7. Cambie la ventana del diagrama de bloques (men Window>> Show Diagram). Habilite el modo de ejecucin resaltada dando un clic en . 8. Habilite el modo de ejecucin paso a paso dando un clic en el botn Step Into o en el botn Step Over . Usted ver el flujo de datos desde la constante numrica hasta la entrada de la funcin Multiply, y el generador Random Number (siguiente nodo a ser ejecutado) parpadea rpidamente. 9. El botn de ejecucin cambia a para indicar que el VI se est ejecutando. . El botn cambia a

a. Recorra todo el diagrama de bloques dando clic en el botn Step Over despus de cada nodo. Dando clic en el botn Step Over, usted ejecutar el nodo actual y se detendr en el siguiente nodo, el cual es el siguiente nodo a ser ejecutado. b. Cuando la lnea exterior del diagrama de bloques parpadea, d un clic en el botn Step Out para completar la ejecucin del VI. Note que los datos aparecen en el panel frontal conforme usted avanza en el programa. Primero el VI genera el nmero aleatorio y despus lo multiplica por 10.0. Finalmente el subVI suma 100.0 y obtiene la raz cuadrada del resultado de la multiplicacin. 10. Nuevamente avance paso a paso a travs del VI, pero esta vez tambin avanzar por pasos a travs del subVI Ejercicio de depuracin (Sub) a. Active la ventana del diagrama a bloques del VI ejercicio de depuracin (Main) y comience a avanzar por pasos a travs del diagrama dando clic en el botn Step Into o en el botn Step Over .

b. D clic en el botn Step Into cuando el VI ejercicio de depuracin (Sub) est parpadeando. El siguiente diagrama a bloques se despliega encima del VI principal.

38

Programacin Grfica para instrumentacin y control

Virtual

c. D un clic en el Diagrama del VI Debug Exercise (quiere decir ejercicio de depuracin) (Main) para activar la ventana y ver la flecha verde en el icono del SubVI Debug Exercise (Sub), que indica el modo de ejecucin de pasos. d. D un clic en la ventana del diagrama del VI ejercicio de depuracin (Sub) y d dos clics en el botn Step Out para completar la ejecucin del diagrama de bloques del subVI y continuar la ejecucin del VI principal. e. Al terminar la ejecucin del subVI la ventana del diagrama de bloques del VI Debug Exercise (Main) se activa. D un clic en el botn Step Out para completar la ejecucin del VI principal. LabVIEW tambin contiene un probador para ver los datos mientras fluyen del diagrama de bloques. 11. Coloque un punto de prueba. a. Coloque un punto de prueba seleccionando la herramienta de puntos de prueba de la paleta de herramientas y dando clic en cualquier objeto.

b. Cierre todos los puntos de prueba. 12. Nuevamente realice una ejecucin por pasos a travs del VI. La ventana Probe debe mostrar los datos mientras fluyen por cada segmento.

LabVIEW puede detener la ejecucin de un VI en cualquier punto del diagrama


de bloques. 13. Fije puntos de interrupcin seleccionando la herramienta de puntos de interrupcin (Breakpoint) de la paleta de herramientas. 14. Ejecute el VI dando un clic en el botn de ejecucin. El VI se detendr en los puntos de interrupcin fijados. Para continuar la ejecucin d un clic en el botn de pausa . Para borrar los puntos de interrupcin, de un clic en stos con la herramienta de puntos de interrupcin. 15. Deshabilite la ejecucin resaltada dando clic en . El botn cambia a .

16. Guarde el VI seleccionando Save del men File. Cierre el VI y todas las ventanas abiertas seleccionando Close del men File.

39

Programacin Grfica para instrumentacin y control

Virtual

Fin del ejercicio 2.3.

Capitulo 3

Creacin de Subinstrumentos (subVIs)

Introduccin En este captulo se introduce el tercer elemento de un VI, el icono/conector, y se describe cmo usar un VI como un subinstrumento (subVI) dentro de otro VI. 40
Programacin Grfica para instrumentacin y control

Virtual

Al trmino de este de captulo usted habr aprendido: I. Qu es un subinstrumento (subVI),

II. Como crear el icono y el conector del subVI. III. Como usar un VI como subVI IV. Cmo crear un subVI desde el men de seleccin en la paleta de funciones.

I.

Concepto de sub-Instrumento Virtual (subVI)

La clave para crear aplicaciones usando LabVIEW es comprender y usar la naturaleza jerrquica de los VIs. Esto es, despus de haber creado un VI, usted puede usarlo como un subinstrumento en el Diagrama de Bloques de otro VI. Si un diagrama de bloques tiene un nmero de iconos (nodos) muy grande, usted puede agruparlos en uno o varios subinstrumentos para mantener la simplicidad del diagrama a bloques. Esta caracterstica modular de programacin de LabVIEW hace las aplicaciones fcil de depurar, comprender y mantener. Los subVIs son similares a las funciones o subrutinas en un lenguaje de programacin convencional. El siguiente cdigo y diagrama a bloques demuestra la analoga entre subVIs y subrutinas,

41

Programacin Grfica para instrumentacin y control

Virtual

Cdigo de la funcin Llamado de la funcin Main ------Avg (pnt1, pnt2, average) Function avg (in1, in2, out) Begin Out = (in1 + in2) /2 End. Diagrama de bloques del subVI

Llamado de la funcin

Como ejemplo, para la discusin de los siguientes temas de este captulo, consideremos un VI que calcula la pendiente de una lnea recta en base a dos coordenadas. El panel frontal y el diagrama a bloques son mostrados en la figura siguiente. Para poder usar este VI como un subinstrumento, es necesario crearle un icono y un conector.

II. Creacin del icono y del conector del subVI Un VI que usted utiliza como subVI necesita de un icono para poder ser representado en el diagrama a bloques del VI que lo llama. El subinstrumento tambin debe tener un conector con terminales para intercambiar datos con el VI de ms alto nivel que lo est llamando. 42
Programacin Grfica para instrumentacin y control

Virtual

Icono A cada VI est asociado un icono, ste est visible en la esquina superior derecha de la ventana del panel frontal o del diagrama a bloques. Inicialmente el icono contiene el logotipo de LabVIEW y un nmero correspondiente al nmero de VIs nuevos que han sido abiertos desde el inicio de la sesin con LabVIEW. Se puede emplear el editor de iconos para realizar un diseo particular del icono. Para activar el editor de iconos, presione con el botn derecho del ratn sobre el icono con el logotipo de LabVIEW, en la esquina superior derecha, y seleccione Edit Icon, como se muestra a continuacin.

El men nicamente est disponible en el modo de edicin (en el men Operate


seleccionar Change to Edit Mode)
Al seleccionar Edit Icon aparece la siguiente ventana del editor de iconos. Usted puede utilizar las herramientas que se encuentran a la izquierda para disear el icono en el rea de edicin aumentada. Una imagen de tamao real del icono aparece en uno de los tres recuadros a la derecha del rea de edicin aumentada.

43

Programacin Grfica para instrumentacin y control

Virtual

Dependiendo del tipo de monitor que est usted usando, usted puede disear separadamente iconos en modo monocromtico, para 16 colores y para 256 colores. Usted puede disear y guardar individualmente cada versin del icono. El editor activa inicialmente el modo monocromtico (B&W), pero se puede seleccionar, con el ratn, cualquiera de las opciones a color. Se recomienda crear siempre una imagen en blanco y negro por razones de portabilidad.

Si usted crea nicamente un icono en color, el icono no podr ser mostrado en la


subpaleta User Libraries de la paleta de Funciones si usted guarda el VI en el directorio User.lib ya que en este caso LabVIEW utiliza la imagen en blanco y negro para mostrar los VIs disponibles. El icono en color tampoco podr ser desplegado en un monitor monocromtico.

Las herramientas que estn a la izquierda del rea de edicin realizan las siguientes funciones: Lpiz. Dibuja o borra los puntos Lnea. Dibuja lneas rectas. Empleando <SHIFT> restringimos el trazo a lneas horizontales, verticales o diagonales. Gotero. Selecciona el color de fondo de un elemento en el icono Tintero. Rellena un rea seleccionado con el color de fondo. Rectngulo Transparente. Dibuja los bordes de un rectngulo con el color frontal. Un doble clic en esta herramienta enmarca el icono con una lnea con el color final. Rectngulo slido. Dibuja un rectngulo con los bordes del color frontal y relleno con el color de fondo. Un doble clic en esta herramienta enmarca el icono con un rectngulo con los bordes del color frontal y relleno con el color de fondo. Seleccionador. Selecciona un rea de la ventana de edicin para moverla, borrarla o realizar algn otro cambio. Un doble clic en esta herramienta 44
Programacin Grfica para instrumentacin y control

Virtual

selecciona la ventana completa de edicin. Texto. Introduce texto en el icono. Un doble clic en esta herramienta aparece un men para seleccionar un diferente tipo o tamao de letra. Color frontal y de fondo. Muestra los colores frontales y de fondo actuales. Un clic en cualquiera de los dos niveles activa una paleta desde la cual se pueden seleccionar nuevos colores. Las opciones a la derecha de la ventana de edicin realizan las siguientes funciones:

Show Terminals OK Cancel Help


Conector

Seleccionar esta opcin para desplegar el arreglo de terminales del conector. Guarda el diseo como el icono del VI y regresa al panel frontal. Regresa al panel frontal sin guardar ningn cambio. Abre la ventana de ayuda de LabVIEW.

El conector es la interface de programacin de un subVI. Si est usando los controles o indicadores del panel frontal para transformar datos desde o hacia el subVI, estos controles o indicadores necesitan estar asociados a terminales en las caras del conector. Se definen el nmero de entradas/salidas seleccionando el nmero de terminales que se desean tener en el VI y asignando los controles o indicadores del panel frontal a cada una de estas terminales. Para definir el conector se selecciona Show Connector del men emergente del icono del VI en el Panel Frontal. Presione con el botn derecho del ratn sobre el icono del VI en la esquina superior derecha, como lo muestra la siguiente figura.

45

Programacin Grfica para instrumentacin y control

Virtual

En la ventana del diagrama de bloques no es posible mostrar el conector, ste est


disponible nicamente en la ventana del panel frontal.
El conector reemplaza al icono en la esquina superior derecha del panel frontal. LabVIEW selecciona un arreglo de terminales apropiado para el VI. El nmero de terminales del arreglo depende del nmero de controles e indicadores en el panel frontal, con los controles al lado izquierdo del conector y los indicadores del lado derecho.

46

Programacin Grfica para instrumentacin y control

Virtual

Cada rectngulo en el conector representa una terminal, la cual puede ser usada ya sea como entrada o como salida del VI. Si es necesario, se puede seleccionar un arreglo diferente de terminales para el VI. Seleccionando y modificando el arreglo de terminales Para seleccionar un arreglo de terminales diferente para el VI, seleccione Patterns del men emergente del conector.

Como se muestra en la Figura anterior, el arreglo de terminales asociado con el icono aparece seleccionado. Para cambiar el arreglo actual, dar clic en un nuevo arreglo. El mximo nmero de terminales disponibles para un subVI es de 28.

Al elegir un nuevo arreglo, se perdern todas las asignaciones previas de los


controles e indicadores a las terminales del conector. Si se desea cambiar el orden o el nmero de las terminales en el arreglo, se puede usar uno de los siguientes comandos del men emergente del conector:

Add Terminal

Agrega una terminal al arreglo donde se encuentra el cursor. Rotar 90 en el sentido contrario a las manecillas del reloj. Espejo Horizontal Espejo Vertical

Remove Terminal Elimina la terminal sobre la que se encuentre el cursor Rotate 90 Flip Horizontal Flip Vertical

Asignacin de terminales de entrada/salida del conector. 47


Programacin Grfica para instrumentacin y control

Virtual

Al asociar las terminales, ya sea con un control o bien con un indicador, queda establecido si la terminal correspondiente actuar como entrada o salida de datos del subVI. La asignacin de terminales se efecta mediante la herramienta de alambrado. Efecte los siguientes pasos para asignar las terminales del conector a los controles o indicadores de la ventana del Panel Frontal. 1. Dar clic con el ratn en la terminal que se quiere asignar. El rea de la terminal, originalmente blanca, se vuelve negra y el ratn cambia automticamente a la herramienta de alambrado (Wiring Tool).

2. Dar clic con la herramienta de alambrado en el control o indicador que se desea asignar a la terminal seleccionada. Una lnea punteada encierra el control seleccionado y el rea de la terminal cambia a un color naranja cuadriculado.

Si se posiciona el cursor en un rea libre y se da clic, la lnea punteada desaparece y la terminal seleccionada en el conector se vuelve completamente naranja, indicando que esta terminal ya ha sido asignada a un control o indicador del Panel Frontal y puede ser usada como entrada o salida de datos del subVI. 3. Repita los pasos 1 y 2 para cada uno de los controles e indicadores que se desee 48
Programacin Grfica para instrumentacin y control

Virtual

conectar.

Aunque se usa la herramienta de alambrado para asociar las terminales del


conector con los controles e indicadores del Panel Frontal, no existe ninguna lnea de conexin entre el conector y los controles o indicadores.
Se puede seleccionar tambin primero el control o indicador en el Panel Frontal y despus la terminal correspondiente en el conector. Se puede elegir un arreglo para el conector con ms terminales de las requeridas. Las terminales no requeridas pueden quedar sin ser asignadas y no afectan la operacin del subVI. De la misma manera se pueden tener ms controles o indicadores en el Panel Frontal que terminales en el conector. Clasificacin de las terminales del conector. Las entras y salidas del subVI se pueden clasificar como Requerida, Recomendada u Opcional y representar la clasificacin correspondiente en la ventana de ayuda. Por ejemplo, al clasificar una entrada como requerida, se detectar automticamente si la entrada ha sido alambrada y evitar la ejecucin del subVI si no lo ha sido. Para clasificar las terminales, active el men emergente del icono/conector y seleccione Show connector. Posteriormente, con el cursor colocado sobre la terminal que se desea clasificar, dar clic con el botn derecho del ratn y aparecer el men emergente del conector, seleccione This connection is >> Required Recommended u Optional.

La clasificacin de las terminales tiene la siguiente implicacin dependiendo de la seleccin.

Required

Requerida.- No se puede ejecutar el subVI sin alambrar correctamente esta terminal. En la ventana de ayuda, las conexiones aparecen en negrillas. Recomendada.- Se puede ejecutar el subVI, pero en la ventana de 49
Programacin Grfica para instrumentacin y control

Recommended

Virtual

la lista de errores aparecer una advertencia para la terminal. En la ventana de ayuda las conexiones aparecen normal.

Optional

Opcional.- Se puede ejecutar el subVI y no aparece ninguna advertencia en a lista de errores. En la ventana de ayuda las conexiones estn deshabilitadas, y si la ventana de ayuda est en la vista simple, las conexiones se encuentran escondidas.

Inicialmente todas las terminales estn clasificadas como recomendadas.

Ejercicio 3.1 Objetivo: Construir un VI que pueda ser usado como subVI. Usted construir un VI que mide temperatura usando el sensor de temperatura de la caja de pruebas. La salida del sensor es un voltaje proporcional a la temperatura. Por ejemplo, si la temperatura es de 23 C, el voltaje de salida del sensor ser de 0.23 Volts. El VI tambin tendr la opcin de desplegar la temperatura tanto en grados Fahrenheit como en Centgrados. Usted modificar el voltaje usando la tarjeta de adquisicin de datos (DAQ Board) conectada dentro de la computadora ( una DAQ tipo USB como por ejemplo la NI USB-6008). El sensor est fsicamente conectado al canal AI0 de la tarjeta de adquisicin de datos. En la versin 6.1 de LabVIEW se puede usar el Read Voltaje VI para medir el voltaje y entonces convertido en una lectura de temperatura en grados Fahrenheit o grados centgrados.

Si no tiene una tarjeta disponible de adquisicin de datos, use el VI DEMO) Read


Voltage

Panel Frontal

50

Programacin Grfica para instrumentacin y control

Virtual

1. Abrir un panel frontal nuevo seleccionando New desde el men File. (Si tiene cerrados todos los VIs, seleccione New VI desde la ventana inicial de LabVIEW) 2. Coloque el indicador tipo termmetro en la ventana del Panel Frontal. a. Active el men emergente de la paleta de controls en un rea de la ventana del panel frontal y seleccione el indicador Thermometer de la subpaleta Numeric. b. Escriba Temperatura dentro de la caja de texto (Text Box) del indicador y de clic fuera de la caja de texto, o en el botn (tool Bar). de la barra de herramientas

3. Modifique la escala de medicin del termmetro para desplegar una temperatura entre 0.0 y 100.0. Usando la herramienta de etiquetado (labeling Tool) de doble clic con el ratn en 10.0 de la escala del termmetro, escriba 100.0 y de clic en un rea libre, o en el botn de la barra de herramientas. 4. Coloque el interruptor vertical de control en la ventana del Panel Frontal. a. Active el men emergente en un rea libre de la ventana del Panel Frontal y seleccione Vertical Slide Switch de la subpaleta desplegada Bolean. Escriba Escala de temperatura dentro de la caja de teto (Text Box), y haga clic con el ratn en ella, o en el botn Enter en la barra de herramientas (tool Bar). b. Usando la herramienta de etiquetado (Labeling Tool) coloque la etiqueta grados C, a un lado de la condicin verdadera del interruptor. Coloque la etiqueta grados F a un lado de la condicin falsa del interruptor. Documentando el VI Usted puede documentar el VI seleccionando VI Properties del men File y posteriormente seleccionar la categora Documentation del men Category el cual se encuentra en la ventana que aparece despus de seleccionar VI Properties. Escriba la descripcin del VI en la caja de dilogo (VI description). Usted puede llamar la descripcin nuevamente seleccionando VI Properties . Del men File.

51

Programacin Grfica para instrumentacin y control

Virtual

Usted puede documentar los objetos en el Panel Frontal (o sus respectivas terminales en el diagrama de bloques) activando el men emergente del objeto y seleccionando Description and Tip del men emergente del objeto. Escriba la descripcin del objeto en la caja de dilogos (Dialog Box) que aparece.

Usted puede volver a llamar a la descripcin nuevamente seleccionando Description and Tipdel men emergente del objeto. Un ejemplo de men emergente que aparece mientras el VI est en modo de ejecucin, es mostrado abajo. (Usted puede ver pero no puede modificar la descripcin mientras est en el modo de ejecucin).

52

Programacin Grfica para instrumentacin y control

Virtual

6. Documente el indicador tipo termmetro y el interruptor de control. a. Active el men emergente sobre el indicador tipo termmetro y selecciones Description and Tip del men desplegable. b. En la ventana que aparece, escriba la descripcin del indicador como se muestra en la figura, y haga clic en OK.

c. Active el men emergente sobre el interruptor de control vertical y seleccione Description and Tip del men desplegable. d. En la ventana de dilogo, escriba la descripcin del control como se muestra en la figura y haga clic en OK. 53
Programacin Grfica para instrumentacin y control

Virtual

7. Muestre nuevamente la descripcin creada, seleccionando Description and Tip del men emergente del indicador y del control. Diagrama a Bloques

1. Abra la ventana Diagrama, seleccionando Show Diagram del men Windows. 2. Seleccione los objetos del diagrama a bloques. Para cada objeto active el men emergente en un rea libre de la ventana y seleccione el objeto de la subpaleta correspondiente en la paleta de funciones.

DAQ assistant (de la subpaleta Functions > measurement I/O > DAQmx Data Adquisition > seleccionar DAQ assitant. En este caso se usar el
54
Programacin Grfica para instrumentacin y control

Virtual

canal 0 de la tarjeta DAQ USB 6008, el cul corresponde al sensor de temperatura de la caja didctica.

En la versin 6.1 de LabVIEW se cuenta con VI (Demo) Read Voltage); es para


en caso de que no tenga instalada una DAQ.

Numeric Constant (de la subpaleta Numeric). (Usted necesita tres de estas


constantes). Para insertar un nuevo valor, haga doble clic dentro del valor numrico con la herramienta de etiquetado (Figura) y escriba el nuevo valor. En el caso de la versin 6.1 de LabVIEW el VI de read voltaje se configura el canal 0 con un string constant, y con un Numeric Constant el nmero de dispositivo. Funcin Multiply (subpaleta Numeric). En este ejercicio, esta funcin multiplica los datos que la tarjeta DAQ proporciona por 100.0 para obtener la temperatura en grados centgrados. Una segunda funcin de multiplicacin es usada para convertir la temperatura a grados Fahrenheit. Funcin Add (subpaleta Numeric). En este ejercicio, esta funcin suma 32.0 a la temperatura en grados centgrados, para convertirla a grados Fahrenheit. Funcin Select (subpaleta Comparison). Dependiendo del valor del switch de escala de temperatura, la funcin determina uno u utro valor de temperatura, Fahrenheit (falso) o centgrados (verdadero). 3. Usando la herramienta de posicionamiento (positioning tool), coloque los iconos como se muestra en la pgina anterior y conctelos con la herramienta de cableado (wiring tool). Recuerde: si usted necesita ver las terminales de los iconos, active la paleta de funciones sobre el icono y seleccione Visible tems >> Terminals del men desplegable. Usted tambin puede mostrar la ventana help seleccionando Show Context Help del men Help. 4. Active la ventana del panel frontal y ejecute varias veces el VI. Coloque el VI en el modo de ejecucin continua, haciendo clic en el botn de ejecucin continua . Coloque su dedo en el sensor de temperatura (o ponga algo caliente como un cautn) y note con la temperatura se incrementa. 5. Apague el modo de ejecucin continua haciendo clic en el botn 6. Crear el icono para usar el VI como un subinstrumento. .

El icono representa el VI en el diagrama a bloques de otros VIs. Un icono puede ser una representacin pictrica del propsito del VI, o puede ser una descripcin textual del VI o de sus terminales. a) Active el editor de iconos (Editor Icon) dando clic derecho sobre el icono/conector, en la esquina superior derecha de la ventana del panel frontal, y seleccionando Edit Icon del men emergente. 55
Programacin Grfica para instrumentacin y control

Virtual

b) Borre el icono que aparece como default dando doble clic en la herramienta de seleccin (select tool) y oprimiendo <delete>. Redibuje el marco del icono dando doble clic en el rectngulo transparente (Rectangle tool) . c) Dibuje un icono que represente el termmetro. Dibuje el termmetro con la herramienta tipo lpiz (pencil tools)

Para dibujar lneas horizontales o verticales con el lpiz (pencil tool) mantenga
presionada la tecla <shift> mientras arrastra el ratn
d) Crear el texto con la herramienta de escritura (Text tool). De clic en la herramienta de escritura para cambiar el tipo de letra a small font. e) Cierre el editor de iconos (Icon editor) haciendo clic en OK cuando su icono est completo. El icono aparece en el cuadro de iconos (Icon panel) en la esquina superior derecha de la ventana del panel frontal.

7. Crear el conector para transferir datos desde o hacia el VI cuando este es usado como un subinstrumento. Conector

Escala de Temperatura

Temperatura

a) Defina el diseo de las terminales del conector activando el men emergente sobre el cuadro de iconos (Icon Panel) y seleccionando Show connector. LabVIEW seleccionar un diseo de la Terminal, basndose en el nmero de controles e indicadores en el panel frontal. En este ejemplo, hay dos terminales (el switch vertical y el indicador tipo termmetro). b) Asignar las terminales al interruptor y al termmetro. Usando la herramienta de cableado (wiring tool), haga clic en la Terminal a la izquierda del conector. La Terminal se tornar oscura. 56
Programacin Grfica para instrumentacin y control

Virtual

Haga clic en el interruptor de control. Una lnea punteada enmarcar el interruptor, indicando que usted tiene conectado el control a la Terminal izquierda del conector. Si usted hace clic en un rea libre, la lnea punteada desaparecer, y la Terminal seleccionada se tornar verde, indicando que usted tiene asignada esta Terminal a un control o a un indicador booleano. Ahora haga clic con la herramienta de cableado (wiring tool) en la Terminal a la derecha del conector. Posteriormente haga clic en el termmetro para asignar esta Terminal al termmetro.

1. Una convencin comn en LabVIEW es que las terminales conectadas a los

controles del panel frontal, son localizadas del lado izquierdo del conector, mientras las terminales conectadas a los indicadores del panel frontal son localizadas del lado derecho. En otras palabras, las terminales de entrada estn a la izquierda del cuadro del conector, y las terminales de salida estn a la derecha del cuadro del conector.

8. Guarde el VI seleccionando Save del men File en la barra de mens. Asegrese de que la librera CURSO.llb est activa en la caja de dilogo del men Save. Nombre el VI Thermometer.vi. Este VI est ahora completo y listo para ser usado como un subVI en otros VIs. El icono representa el VI en el diagrama a bloques del VI que lo manda llamar. El conector (con dos terminales) proporciona las terminales de conexin del subVI en el diagrama a bloques del VI principal. 9. Cierre el VI, seleccionando Close del men File. Fin del ejercicio 3.1

57

Programacin Grfica para instrumentacin y control

Virtual

III. Usando un VI como subinstrumento Se puede usar un VI, que tiene un icono y un conector, como un subinstrumento (subVI) en el diagrama a bloques de otro VI. Un VI para ser usado como subVI se selecciona a travs de la opcin Select a VI en la paleta de funciones. Al elegir esta opcin aparece una ventana de dilogo desde el cual se puede seleccionar cualquier VI previamente guardado en la computadora. Un subinstrumento es anlogo a una subrutina. El nodo (icono/conector) de un subVI es anlogo a la llamada de una subrutina. El nodo del subVI no es el subinstrumento en s, como un estatuto de llamada de una subrutina no es precisamente la subrutina. Un diagrama a bloques que contiene varios nodos idnticos de un subVI va a llamar el mismo subVI varias veces, sin tener que guardar en memoria mltiples copias del subVI. Abrir, operar y cambiar subVIs Una vez abierto un VI como un subVI desde el diagrama a bloques de otro VI, se puede abrir el panel frontal del SubVI dando doble clic con el cursor en el icono del subVI. Se puede posteriormente abrir el diagrama a bloques del subVI seleccionando Show Diagram en el men Window del subVI. Ayuda en lnea para los nodos de subVIs Con la ventana de ayuda habilitada (help men >> Show Context Help) cuando se coloca el cursor en el nodo de un subVI, la ventana de ayuda despliega el icono del subVI con alambres conectados a cada terminal en uso y el nombre de la Terminal correspondiente, as como una breve descripcin del subVI si est disponible. IV. Crear un subVI desde un diagrama a bloques ya existente El diagrama a bloques de un VI se puede simplificar fcilmente convirtiendo algunas secciones del diagrama en subVIs. Parte del diagrama a bloques se pueden encapsular en un subVI marcando la seccin que se desea encapsular y seleccionando Create SubVI del men de Edit. LabVIEW convierte la parte del diagrama seleccionado en un subVI y reemplaza la seleccin con el nuevo subVI. LabVIEW crea automticamente los controles e indicadores para el nuevo subVI y alambra las entradas y salidas del subVI al diagrama ya existente, como estaban originalmente.
Programacin Grfica para instrumentacin y control

58

Virtual

En la siguiente figura se muestra un ejemplo de cmo crear un subVI desde una parte del diagrama a bloques ya existente.

Ahora usted puede abrir el panel frontal del subVI creado para operarlo o editarlo como cualquier otro VI. Para abrir el panel frontal del subinstrumento de doble clic con el cursor sobre el icono del subVI. Posteriormente puede abrir su diagrama a bloques seleccionando Show Diagram en el men Window. Recuerde que los cambios que se hagan al subVI alteran nicamente la versin en memoria.

Ya que el nmero mximo de terminales (entradas/salidas) permitidas en un conector es de 28, no se puede convertir una seccin (parte del diagrama) con ms de 28 y/o salidas.
Ejercicio 3.2 Objetivo: Construir un subVI usando la tcnica subVI from selection Usted modificar el VI Thermometer.vi, de tal forma que este llame un subVI que convierte la temperatura en grados centgrados, a temperatura en grados Fahrenheit. El ejercicio usa la tcnica de encapsulamiento de partes del diagrama a bloques ya existente. Panel Frontal

59

Programacin Grfica para instrumentacin y control

Virtual

1. Abra el VI Termmetro.vi seleccionando Open del men File. (Si usted tiene cerrados todos los VIs, seleccione Open VI de la ventana de inicio de labVIEW y seleccione Termmetro.vi de la librera TARIN.lbb). Diagrama a bloques

1. Abra la ventana del Diagrama a Bloques (Diagram window) seleccionando Show Diagram del men Window. Usted modificar el diagrama a bloques existente. 2. Crear el SubVI de conversin partiendo de la parte del diagrama a bloques ya existente. a. Usando la herramienta de posicionamiento (Positioning tool), seleccione las funciones de multiplicacin y suma. Una lnea punteada enmarcar la parte seleccionada del diagrama a bloques.

60

Programacin Grfica para instrumentacin y control

Virtual

b. Ahora seleccione Create SubVI en el men Edit.

Usted puede usar este mtodo para modulizar VIs seleccionando secciones del diagrama a bloques para crear subVIs. 3. De doble clic en Untitle 3 (subVI). Usted modificar el subVI creado en el paso 2 para asignarle un nombre y un icono ms representativo.

4. Etiquete los objetos del panel frontal del subVI. a. Active la paleta de funciones sobre el control numrico y seleccione Visible tems>>label del men desplegable. Escriba Temp. Centigrados. b. Colquese en el control numrico y seleccione Visible tems>>label del men desplegable. Escriba Temp. Fahrenheit. 5. Crear el icono del subVI.

El icono representa el VI en el diagrama a bloques de otros VIs. Un icono puede ser la representacin pictrica del propsito del VI, o puede ser una descripcin textual del VI. a. Active el editor de iconos (Icon editor) dando clic derecho sobre el icono/conector, en la esquina superior derecha de la ventana del panel frontal, y seleccionando Edit Icon del men emergente. b. Borre el icono que aparece como default dando doble clic en la herramienta de seleccin (select tool) y oprimiendo <delete>. Redibuje el marco del icono 61
Programacin Grfica para instrumentacin y control

Virtual

dando doble clic en el rectngulo transparente (Rectangle tool)

c. Crear el texto con la herramienta de escritura (Text tool). De doble clic en la herramienta de escritura para cambiar el tipo de letra a small font. Crear la flecha usando la herramienta de lpiz (Pencil tool). d. Cierre el Icon editor haciendo clic en OK cuando su icono est completo. El icono aparece en el cuadro de iconos (Icon panel) en la esquina superior derecha de la ventana del panel frontal.

V. Cuando un SubVI es creado, usando la opcin SubVI from selection, el conector es cableado automticamente.
e. Guarde el subVI seleccionando Save del men File. Asegrese que la librera DIPLO.llb est activa en la caja de dilogos del men Save. Nombre el VI convertidor C a F.vi. Este VI est ahora completo, y listo para usarse como un subinstrumento en otros VIs. 6. Cierre el SubVI, seleccionando Close del men File. 7. Salve el nuevo VI seleccionando Save as del men File. Asegrese que la librera DIPLO.llb est activa en la caja de dilogos del men Save as. Nombre el VI Termmetro w/Convert.vi. Fin del ejercicio 3.2

62

Programacin Grfica para instrumentacin y control

Virtual

Capitulo 4

Ciclos de ejecucin y Grficas tipo Chart

Introduccin
El conjunto de elementos empleados para controlar el flujo de datos en un VI recibe el nombre de Estructuras (Structures). LabVIEW tiene cuatro tipos de estructuras para controlar el flujo de datos en el programa: el ciclo While, el ciclo For, la estructura Case y la estructura Sequence. En esta capitulo se introducen la dos primeas estructuras, el ciclo While y el ciclo For, as como el uso de los registros de desplazamiento y de los indicadores grficos tipo Chart.

Al trmino de este captulo se habr aprendido: I. Como usar el ciclo While. II. Como desplegar datos en un indicador grfico del tipo Chart. III. Que es un registro de desplazamiento y como usarlo IV. Como usar el ciclo For.

63

Programacin Grfica para instrumentacin y control

Virtual

I. Ciclo While
El ciclo While ejecuta la parte del diagrama de bloques que se encuentra dentro de la estructura del ciclo. El diagrama de bloques se ejecuta un nmero indicado de veces hasta que cierta condicin se cumple. Para colocar un ciclo While en el diagrama a bloques, primero se selecciona While Loop de la subpaleta Structure en la paleta de funciones.

Posteriormente se emplea el cursor para seleccionar el rea alrededor de la seccin del diagrama de bloques que se desea incluir dentro de la estructura del ciclo While. Al liberar el botn del ratn, un rectngulo, que marca los lmites de la estructura, encierra la parte del diagrama de bloques seleccionado. 64
Programacin Grfica para instrumentacin y control

Virtual

La estructura del ciclo While es completamente modificable en tamao y forma; basta con tomar con el cursor alguna de las esquinas de la estructura para cambiar su forma y tamao. Se pueden agregar elementos adicionales a la estructura del ciclo While, colocando los elementos adicionales dentro de los lmites de la estructura. El VI repite el diagrama de bloques dentro de la estructura del ciclo hasta que la terminal condicional (terminal de entrada), que es una variable boleana, recibe un valor FALSO. El VI checa la terminal condicional al final de cada iteracin; por ello, el ciclo While siempre se ejecutar por lo menos una vez. Dando clic derecho sobre la terminal condicional, puede cambiarse la condicin del ciclo a Stop if True . En este caso el VI repite el diagrama de bloques dentro de la estructura del ciclo hasta que la terminal condicional recibe un valor VERDADERO. La terminal de iteracin es una terminal de salida numrica que contiene el nmero de veces que el ciclo While ha sido ejecutado. El contador inicia en cero, esto es, durante la primera ejecucin del ciclo, la terminal de iteracin contiene un cero, la cual es lgico, ya que el ciclo an no ha sido ejecutado. Es hasta el final del ciclo de ejecucin que el contador de la terminal de iteracin se incrementa en una unidad. Si la terminal condicional no se alambra, el ciclo While slo se ejecutar una vez. La estructura del ciclo While es equivalente al siguiente cdigo de programa

Do While

Ejecuta el diagrama de bloques dentro de la estructura del ciclo la condicin es TRUE

En el siguiente ejemplo, el ciclo While se ejecuta hasta que la salida del generador de nmeros aleatorios sea igual a cero o la variable boleana Habilitar sea falsa, ya que la salida de la funcin And es verdadera slo si ambas entradas son verdaderas, de 65
Programacin Grfica para instrumentacin y control

Virtual

otra manera su salida es falsa y finaliza la ejecucin del ciclo.

II. Graficador de formas de onda El graficador de seales tipo Chart es un indicador numrico especial que muestra grficamente en una ventana en tiempo real, una o ms seales. El graficador puede desplegar trazos simples o mltiples, con formatos (color, forma y estilo) que pueden ser diferentes para cada uno de los trazos. Un ejemplo de trazo mltiple en un graficador de formas de onda se muestra en la siguiente figura:

El graficador de formas de onda tiene tres tipos de actualizacin del trazo: Strip Chart, Scope Chart y Sweep Chart. El modo de actualizacin se puede configurar activando el men emergente del graficador de formas de onda y seleccionando; Data Operations >> Update Mode. Si el VI est en modo de ejecucin, se selecciona directamente Update Mode del men emergente.

66

Programacin Grfica para instrumentacin y control

Virtual

El modo de Strip Chart tiene un trazo que se va desplazando en forma similar al trazo en rollo de papel de un registrador de seales. En los modos de Scope Chart y Sweep Chart el trozo se efecta de manera similar a la de un osciloscopio, esto es, el trazo se realiza en forma peridica de izquierda a derecha de la ventana. En el modo Scope Chart, cuando el trazo alcanza el lado derecho de la ventana la grfica se borra, y un nuevo trazo inicia desde el lado izquierdo de la ventana. El modo Sweep Chart es muy parecido al modo Scope Chart, con la diferencia de que la grfica no se borra cuando el trazo alcanza el lado derecho de la ventana, en lugar de esto, un nuevo trazo inicia en la lado izquierdo de la ventana reescribiendo el trazo anterior. Una lnea vertical marca el inicio del nuevo trazo conforme va avanzando a travs de la ventana. Grfica simple Se puede alambrar directamente una salida escalar de cualquier elemento a un graficador de seales tipo Chart. El tipo de datos desplegado en la ventana del graficador de formas de onda se ajustar al tipo de datos de entrada, como se muestra en el siguiente ejemplo.

Grfica mltiple El graficador de formas de onda puede desplegar ms de un trazo. Sin embargo, ya que ste slo tiene una terminal de entrada de datos, para poder pasar varias salidas de datos al graficador, estas se deben agrupar antes usando la funcin Bundle (subpaleta Cluster). En el ejemplo siguiente, la funcin Bundle agrupa las salidas de datos de tres VIs diferentes, tres medidores de temperatura, para mostrarlas en una ventana en el graficador de formas de onda. Note el cambio en el icono del graficador de onda.

67

Programacin Grfica para instrumentacin y control

Virtual

Si desea agregar ms trazos, simplemente incremente el nmero de las terminales de entrada en la funcin Bundle. Lo anterior se logra al aumentar el tamao de la funcin Bundle empleando la herramienta de posicionamiento. Ejercicio 4.1 Objetivo: Utilizar el ciclo While y una grfica para la adquisicin de datos en tiempo real. Usted construir un VI para la medicin de temperatura y despliegue de esta en una grfica de tipo Chart. Este VI medir la temperatura usando como subVI el termmetro que construy en el capitulo anterior. Panel Frontal

1. Abra una ventana nueva y coloque un interruptor vertical (subpaleta Bolean de la paleta de controles) en la ventana del panel frontal. Etiquete el interruptor como habilitar Adquisicin. Utilizar este interruptor para detener la adquisicin de datos. 2. Coloque una grfica tipo Chart (subpaleta Graph de la paleta de controles) en la ventana del panel frontal. Etiquete la grfica como Historia de Temperatura. Esta grfica desplegar la temperatura en tiempo real. 3. Debido a que la leyenda de la grfica aparece inicialmente como Plot 0, es 68
Programacin Grfica para instrumentacin y control

Virtual

necesario darle un nombre ms apropiado. Usando la herramienta de etiquetado, d un clic en la leyenda de la grfica, teclee Temp, y d un clic fuera del rea de texto. El clic habilita el cambio. Tambin puede usar el botn de Enter de la barra de herramientas para habilitar el cambio. 4. Ya que el sensor de temperatura medir la temperatura ambiente en grados centgrados, se debe ajustar la escala de la grfica para desplegar adecuadamente la temperatura. Utilizando la herramienta de etiquetado, d un clic sobre 10.0 en la escala de la grfica, teclee 32, y d un clic fuera del rea de texto u oprima <enter>. De la misma manera, cambie de 0.0 a 20 el otro extremo de la escala. Diagrama a bloques

1. Abra la ventana del diagrama a bloques 2. Encierre las dos terminales dentro del ciclo While. Seleccione un ciclo While de la subpaleta Structures en la paleta de funciones; entonces d un clic sobre el diagrama y arrastre el ratn para abarcar las dos terminales. Para agrandar los lmites de la estructura del ciclo, coloque el cursor (con la herramienta de posicionamiento seleccionada) sobre una esquina y jale.

La herramienta de posicionamiento cambiar de forma al colocar el cursor en


3. Seleccione el otro objeto del diagrama a bloques

cualquier esquina de la estructura del ciclo While. Jale una esquina para cambiar el tamao o la forma de la estructura del ciclo.

VI Thermometer (de la subpaleta Select a VI) Este VI regresa una medicin de temperatura del sensor de temperatura. Crguelo usando el dilogo Select a VI de la paleta de funciones. Es el VI que usted construy en el ejercicio 3.1. 4. Cablee una constante boleana (subpaleta Boolean) a la entrada de escala de temperatura del SubVI Thermometer. Deje la constante inicializada a verdadero, 5. Cablee los elementos del diagrama de bloques como se muestra arriba.

Para medir la temperatura en grados Fahrenheit, cambie la variable de

entrada booleana de escala de temperatura a falso con la herramienta de operacin. Si realiza este cambio, necesitar cambiar la escala de la grfica y los lmites sern 70 y 90 en lugar de 20 32.
69
Programacin Grfica para instrumentacin y control

Virtual

6. Regrese al panel frontal y habilite la adquisicin de datos, mediante el interruptor vertical, oprimiendo con la herramienta de operacin sobre la parte superior del interruptor. Ejecute el VI. El ciclo While es una estructura de ciclado indefinida. El diagrama dentro del ciclo se ejecutar mientras la condicin especificada sea cierta. En este ejemplo, el ciclo se ejecutar mientras el interruptor se encuentre en ON (Verdadero), cada vez el VI Thermometer tomar y dar una nueva medicin, que ser desplegada en la grfica. 7. Para detener la adquisicin, d un clic en el interruptor vertical. Esto hace que la condicin del ciclo sea falsa, terminando as el ciclo. 8. Puede dar el formato deseado y ajustar las escalas de X y Y en la grfica para que sean desplegados de acuerdo a su conveniencia. Estando en modo de edicin, oprima el botn derecho del ratn sobre el grfico para desplegar su men emergente, al seleccionar Y Scale >> Formatting de este men, aparecer la siguiente ventana.

Experimente con diferentes opciones de cuadrcula en los ejes X y Y, seleccionando el estilo de la cuadrcula en el selector , seleccionando diferentes estilos para los ejes del submen que aparece. Dentro de esta ventana tambin se puede experimentar con estilos de escala como lineal o logartmica, factores de escala, tipo escala, formato y precisin de los ejes de despliegue. Cuando haya terminado de explorar esas opciones, regrese a los valores que se tenan antes cambiar el estilo y formato. 70
Programacin Grfica para instrumentacin y control

Virtual

Para borrar la grfica y restablecer las condiciones inciales, de un clic sobre la grfica con el botn derecho del ratn, aparecer un men emergente, seleccione Data Operations >> Clear Chart. Si el VI est ejecutndose, seleccione directamente del men emergente Clear Chart. Accin Mecnica de los interruptores Bolanos Usted ya habr notado que cada vez que ejecuta el VI, debe de poner en posicin de encendido el interruptor y despus oprimir el botn de ejecucin. Con LabVIEW, usted puede modificar la accin mecnica de los interruptores. Las opciones de las acciones mecnicas incluyen: Cambiar cuando se presiona, Cambiar cuando se libera, Cambiar hasta que se libere, Cerrar cuando se presiona, Cerrar cuando se libera, y Cerrar hasta que se libere. Por ejemplo, considere el interruptor vertical mostrado a la derecha. El valor inicial de este interruptor es apagado (Falso). La accin Mecnica Switch When Pressed hace que cambie el valor del control cada vez que oprime el control con la herramienta de operacin. La accin es similar a la de un apagador comn de iluminacin, y no es afectada por qu tan seguido es ledo el control por el VI. La accin mecnica de Switch When Released hace que cambie el valor del control slo hasta que es liberado el botn del ratn cuando se oprime el ratn dentro de la frontera grfica del control, Esta accin no es afectada por qu tan seguido es ledo el control por el VI La accin mecnica de Switch Until Released hace que cambie el valor del control cuando oprime el control y retiene el nuevo valor hasta que es liberado el botn del ratn. Al liberar el botn el control se revierte a su valor original. La accin es similar a la de un timbre o botn de pulsado, y no es afectada por que tan seguido es ledo el control por el VI. La accin mecnica de Latch When Pressed hace que cambie el valor del control cuando presiona el control y retiene ese nuevo valor hasta que el VI lo lee de nuevo, y entonces cambia el control a su valor original; esta accin sucede no importando si usted haya o no liberado el botn del ratn. Esta accin es similar a la de un interruptor de circuitos y es til para detener ciclos While o cuando quiere asegurar que el VI ejecute alguna accin cuando se activa el control. La accin mecnica de Latch When Released hace que cambie el valor del control slo despus de que libera el botn del ratn. Cuando el VI lee el valor una vez, se revierte el valor del control a su valor anterior. Esta accin garantiza por lo menos un nuevo valor. La accin mecnica de Latch Until Released hace que cambie el valor del control cuando se oprime sobre el control y retiene su valor hasta que el VI lee el valor de nuevo o hasta que libere el botn del ratn, lo que ocurra al final. 9. Modifique el interruptor vertical para que no tenga que encender el interruptor cada vez que ejecuta el VI. a. Detenga la ejecucin del VI, si es que ste se est ejecutando. 71
Programacin Grfica para instrumentacin y control

Virtual

b. Encienda el interruptor vertical. c. Coloque el cursor sobre el interruptor vertical, y active su men emergente, oprimiendo el botn derecho del ratn. Seleccione Data Operations>> Make Current Value Default de este men. Esto har que la posicin de encendido sea el valor que tenga el interruptor por default. d. Active de nueva cuenta el men emergente del interruptor y seleccione Mechanical Action >> Latch When Pressed. 10. Ejecute el VI. Coloque el cursor sobre el interruptor vertical y oprima el botn del ratn para detener la adquisicin. El interruptor se mover a la posicin de apagado y cambiar de nuevo a la posicin inicial de encendido, slo despus de que la terminal de condicin del ciclo While lea el valor falso de la posicin de apagado. Control del tiempo de ejecucin del ciclo Cuando usted ejecut el VI, el ciclo While se ejecut tan rpido como fue posible. Tal vez usted desea tomar datos a ciertos intervalos de tiempo, como por ejemplo, una vez por segundo o por minuto. Usted puede controlar la ejecucin de un ciclo a un intervalo especfico de tiempo usando Wait Until Next ms Multiple de la subpaleta de Time & Dialog. Esta funcin asegura que ninguna iteracin es hecha en un tiempo menor al especificado en milisegundos.

11. Modifique el diagrama a bloques del VI, como se muestra arriba, para tomar la medicin de temperatura una vez cada medio segundo. Funcin Wait Until Next ms Multiple de la subpaleta Time & Dialog. En este ejercicio, esta funcin asegura que cada iteracin ocurra cada medio segundo (500 ms). La constante numrica (Numeric Constant de la subpaleta Numeric) cableada a la funcin Wait Until Next ms Multiple especifica una espera 72
Programacin Grfica para instrumentacin y control

Virtual

de 500 milisegundos. Es por ello que el ciclo es ejecutado cada medio segundo. 12. Ejecute el VI, y trate con diferentes valores para la constante numrica. 13. Guarde y cierre el VI. Nmbrelo Temperatura Monitor.vi. Fin del ejercicio 4.1

Ejercicio 4.2 Objetivo: Controlar la velocidad de la adquisicin y del despliegue de datos mediante la utilizacin de un control numrico. Usted construir un VI que genere datos aleatorios y los despliegue en una grfica. Este VI deber de tener una perilla de control en el panel frontal para ajustar el tiempo de ejecucin del ciclo de 0 a 2 segundos. El panel tambin deber tener un interruptor para detener la ejecucin del VI, adems no se deber de encender el interruptor cada vez para ejecutar el VI.

73

Programacin Grfica para instrumentacin y control

Virtual

1. Abra un nuevo VI y construya el Panel Frontal. Oculte la paleta de la grfica y la leyenda utilizando las opciones de Visible tems>>Legend y Visible tems >>Palette. 2. Utilice la funcin de generacin de nmeros aleatorios, Random Number (0-1) de la subpaleta Numeric, para generar los datos. 3. Multiplique la salida de la perilla por 1000 para convertir los segundos a milisegundos. Utilice este valor como la entrada de la funcin Wait until Next ms Multiple (de la subpaleta Time & Dialog). 4. Seleccione el modo de actualizacin Scope del indicador grfico. Active el men emergente de la grfica y seleccione Advanced>> Update Mode>> Scope Chart. 5. Guarde el VI. Nmbrelo Random Signal.vi. Fin del ejercicio 4.2. Ejercicio 4.3

Objetivo: Pasar datos fuera de un ciclo While a travs de un tnel


Usted construir un VI que genere nmeros aleatorios hasta que se iguale el nmero especificado en un control numrico. Un indicador numrico mostrar el nmero de iteraciones requeridas para que ocurra la igualacin. Panel Frontal

74

Programacin Grfica para instrumentacin y control

Virtual

1. Abra un panel frontal nuevo 2. Construye el panel frontal como se muestra. Asegrese de modificar los controles e indicadores como se indica. El control Nmero a igualar especifica el nmero que usted quiere igualar. El indicador Nmero Actual despliega el nmero aleatorio actual. El indicador # nmero de iteraciones despliega el nmero de iteraciones que fue requerido hasta igualar el nmero. Seleccin del Rango de Datos La definicin del rango de datos, Data Range, previene de colocar un valor que no es compatible con el rango o incremento presente. Si el dato no es correcto se tienen las opciones de ignorar el error o forzar los datos dentro del rango. Para especificar un rango de 0 a 100 con incrementos de 1: a. b. Colquese sobre el control digital y active el men emergente, oprimiendo el botn derecho del ratn, seleccione Data Range del men. Llene la caja de dilogo como se muestra a continuacin y presione OK.

75

Programacin Grfica para instrumentacin y control

Virtual

Modificando los Dgitos de precisin Si no se establece lo contrario, los controles e indicadores numricos son desplegados en notacin decimal y tienen 2 lugares decimales (por ejemplo, 3.14). Puede utilizar la opcin de Format & Precision (del men emergente del elemento) para cambiar la precisin o para desplegar los controles numricos e indicadores en notacin cientfica, ingenieril o en formato de horas/minutos. Para cambiar los dgitos de precisin de un indicador numrico: a. Active el men emergente del indicador digital y seleccione Format & Precision. El VI debe de detenerse para accesar el men. b. Teclee 0 para los dgitos de precisin y d un clic sobre OK.

76

Programacin Grfica para instrumentacin y control

Virtual

Diagrama a Bloques

1. Construya el diagrama a bloques como se muestra en la Figura anterior. Funcin de nmeros aleatorios (Random Number (0-1) de la subpaleta Numeric). Esta funcin da como resultado un nmero real aleatorio entre 0 y 1. Funcin de multiplicacin (Multiply de la subpaleta Numeric). En este ejercicio, esta funcin multiplica el nmero aleatorio por 100. En otras palabras, la funcin entrega un nmero aleatorio entre 0 y 100. Funcin de redondear al ms cercano (Round To Nearest de la subpaleta Numeric). En este ejercicio, esta funcin redondea el nmero real aleatorio al nmero entero ms cercano. 77
Programacin Grfica para instrumentacin y control

Virtual

Funcin No iguales (Not Equal? de la subpaleta Comparison). En este ejercicio, esta funcin compara el nmero aleatorio con el nmero a igualar y entrega Verdadero, si los nmeros no son iguales; de otra manera entregar Falso. Funcin incrementar (Increment de la subplaeta Numeric). En este ejercicio, esta funcin incrementa la cuenta final del ciclo While en uno. Esto es necesario debido a que la terminal de iteracin comienza en cero. El cuadro negro que aparece en el borde del ciclo While es llamado un tnel. El flujo de datos hacia dentro o fuera de un ciclo es a travs de los tneles. El flujo hacia fuera del ciclo es despus de que el ciclo ha terminado. Cuando un tnel pasa datos hacia adentro de un ciclo, este slo se puede ejecutar despus de que los datos han arribado al tnel. El ciclo en este ejercicio se ejecutar hasta que ambos nmeros sean iguales. La funcin Not equal? dar Verdadero siempre que los dos nmeros no coincidan. Cada vez que un ciclo se ejecuta, se incrementa en uno. El valor de la terminal de iteracin pasa hacia fuera del ciclo, a travs del tnel, cuando el ciclo While se haya completado. Este valor se incrementa en uno afuera del ciclo debido a que la cuenta inicia en 0. 2. Regrese al panel frontal y teclee un nmero en el control Nmero a igualar. Ejecute el VI varias veces. Cambie el valor y ejecute el VI de nuevo. Advierta que el indicador Nmero Actual es actualizado cada iteracin debido a que se encuentra dentro del ciclo. El indicador del nmero de iteraciones es actualizado al final del ciclo debido a que se encuentra afuera del ciclo. Si no se observa claramente cmo es que el VI actualiza los indicadores, en la ventana del diagrama a bloques, de un clic sobre para habilitar la ejecucin desplegada. Este modo hace que la ejecucin del VI sea ms lenta y que se pueda observar, al mismo tiempo, como es generado cada nmero. 3. Introduzca un nmero que est fuera de rango en el control Nmero a igualar. El rango de estos datos fue fijado entre 0 y 100 con un incremento de 1. Observe que LabVIEW obliga a que el valor est dentro del rango, de forma que si se introduce un nmero que no se obtiene en incrementos de 1 (ej. 1.5), el programa redondea a 2; si se introduce un nmero un valor mayor a 100, automticamente se ajusta al valor ms cercano dentro del rango, es decir, 100. 4. Guarde y cierre el VI. Nmbrelo Auto Match.vi. Fin del ejercicio 4.3

III. Registros de Desplazamiento Los registros de desplazamiento nos sirven para transferir datos de un ciclo de ejecucin a otro. Estos estn disponibles para su uso, nicamente en los ciclos While y For. Para crear un registro de desplazamiento, active el men emergente del ciclo, dando clic derecho en el borde derecho o izquierdo de la estructura del ciclo y 78
Programacin Grfica para instrumentacin y control

Virtual

seleccionando Add Shift Register. El registro de desplazamiento contiene un par de terminales, colocadas, directamente opuestas, en ambos lados de la estructura del ciclo. La terminal de la derecha almacena los datos al trmino de una iteracin. Los datos son transferidos al final de dicha iteracin y aparecen en la terminal de la izquierda al inicio de la siguiente iteracin. Un registro de desplazamiento puede contener cualquier tipo de datos (numrico, booleano, alfanumrico, arreglo de datos, etc.). El registro de desplazamiento se adapta automticamente al tipo de datos del primer objeto alambrado a cualquiera de los dos terminales. Los registros de desplazamiento se pueden configurar para guardar los datos de varias iteraciones previas de un ciclo For o While. Esta caracterstica es muy til cuando se est promediando, por ejemplo, los puntos de medicin de un proceso. Las terminales adicionales de los registros de desplazamiento, para accesar datos de varias iteraciones previas, se crean activando el men emergente de la terminal izquierda y seleccionando Add Element de este men. Por ejemplo, si se agregan dos elementos adicionales a la terminal de la izquierda, se podr tener acceso a los valores de las tres ltimas iteraciones.

Inicializacin de los Registros de Desplazamiento Para inicializar un registro de desplazamiento con un valor especfico, alambre un valor inicial a la terminal izquierda del registro de desplazamiento desde afuera de la estructura del ciclo. Si las terminales no se alambran el valor inicial de los registros de desplazamiento durante la primera ejecucin del VI correspondern a un valor predeterminado de acuerdo al tipo de datos del registro. Por ejemplo, si el tipo de datos del registro de desplazamiento es booleano, el valor predeterminado es Falso. Similarmente, si el tipo de datos del registro de desplazamiento es numrico, el valor predeterminado ser cero.

LabVIEW no borra los valores almacenados en los registros de desplazamiento,

stos permanecen inalterados hasta que no son reescritos o bien removidos


79
Programacin Grfica para instrumentacin y control

Virtual

directamente de la localidad de memoria correspondiente. Por ejemplo en un VI con registros de desplazamiento no inicializados, el valor inicial de stos despus de la primera ejecucin corresponder al ltimo valor almacenado en la ejecucin previa.
Registro de desplazamiento No Inicializado Registro de desplazamiento Inicializado

Nota: 1er. Ejecucin y 2da. Ejecucin se refieren a ejecuciones consecutivas del VI y no a ejecuciones del ciclo While, el cual se ejecuta slo una vez en cada ocasin.

Ejercicio 4.4 Objetivo: Demostrar el uso de los registros de corrimiento para accesar valores de iteraciones previas. Panel Frontal

80

Programacin Grfica para instrumentacin y control

Virtual

1. Abra El VI Register Example.vi de la librera DIPLO.lbb El panel frontal tiene cuatro indicadores digitales. El indicador X(i) desplegar el valor actual, que ser recorrido a la terminal de la izquierda al principio de la siguiente iteracin. El indicador X(i-2) desplegar el valor de las dos iteraciones anteriores, y de una manera similar el resto. El cero cableado a la izquierda de las terminales inicializa los elementos del corrimiento a cero. 2. Abra la ventana del diagrama a bloques y seleccione Tile Left and Right del men Window de la ventana del diagrama. Si es necesario, cierre y remueva las paletas de herramientas y Funciones. Diagrama a bloques

1. Habilite la ejecucin desplegada oprimiendo el botn muy rpido, utilice el botn de Pausa ejecucin por pasos.

de ejecucin desplegada. para realizar una

2. Ejecute el VI y observe cuidadosamente las burbujas. Si las burbujas se mueven y el de Paso sobre

Note que en cada iteracin del ciclo While, el VI junta los valores anteriores a travs de las terminales de los registros de la izquierda. Cada iteracin del ciclo 81
Programacin Grfica para instrumentacin y control

Virtual

suma 5 al dato actual, X(i). Este valor es corrido a la terminal de la izquierda, X(i1), al comienzo de cada iteracin. Los valores de la terminal izquierda son llevados hacia las terminales. En este ejemplo, el VI retiene slo los ltimos tres valores. Para retener ms valores, agregue ms elementos a la terminal izquierda de los registros de corrimiento. 3. Cierre el VI. No grabe ningn cambio. Fin del ejercicio 4.4 Ejercicio 4.5 Objetivo: Usar los registros de corrimiento para realizar un promedio. Modificar el VI de Monitor de Temperatura para promediar los ltimos cinco mediciones de temperatura y desplegar el promedio en una grfica. Panel Frontal

1. Abra el VI Temperatura Monitor que cre anteriormente en el ejercicio 4.1 2. No modificar el panel frontal; en lugar de ello, abra el diagrama a bloques.

Diagrama a bloques

82

Programacin Grfica para instrumentacin y control

Virtual

1. Cree el registro de corrimiento mediante el men desplegable al colocarse en la frontera derecha o izquierda del ciclo While y seleccione Add Shift Register del men desplegable. Agregue un elemento extra al llamar el men desplegable en la terminal izquierda de los registros de corrimiento y seleccionando Add Element del men desplegable. 2. Modifique el diagrama a bloques como se muestra a continuacin. VI Thermometer (de la subpaleta Select a VI) Esta funcin da como resultado una medida de la temperatura de un sensor. Funcin Compund Arithmetic (de la subpaleta Numeric). En este ejercicio, esta funcin da como resultado la suma de la temperatura actual y las cuatro lecturas anteriores. Coloque la herramienta de posicionamiento en la esquina de la funcin hasta que el cursor cambie. De un clic sobre la esquina y jale hasta dejar la funcin slo para cinco entradas.

Funcin Divide (de la subpaleta Numeric). En este ejercicio, esta funcin da


como resultado el promedio de las tres lecturas de temperaturas anteriores. Durante cada iteracin del ciclo While, el VI Thermometer toma una medicin de la temperatura. El VI suma este valor a los ltimas cuatro mediciones almacenadas en las terminales de la izquierda del registro de corrimiento. El VI divide el resultado entre 5 para encontrar el promedio de las cinco mediciones, y despliega el promedio en la grfica. Note que el VI inicializa los registros de corrimiento con la medicin de temperatura. Ejecute el VI. Grfica de seales mltiples. Las grficas pueden desplegar simultneamente dos o ms seales. Usted debe agrupar los datos en caso de ser entradas escalares mltiples.

83

Programacin Grfica para instrumentacin y control

Virtual

3. Modifique el diagrama a bloques como se muestra arriba. La funcin Bundle de la subpaleta Cluster. En este ejercicio, esta funcin ata o agrupa el promedio de las temperaturas y la temperatura actual para ser desplegadas en la grfica. El nodo de agrupacin aparece como cuando lo coloca en la ventana del diagrama de bloques. Puede agregar entradas adicionales por medio de la herramienta de posicionamiento. 4. Ejecute el VI. El VI deber desplegar dos grficos en la pantalla. Los grficos estn traslapados. Esto es, que las dos grficas tiene la misma escala vertical. Personalizar el formato de las grficas Usted puede darle un formato personalizado a las grficas para satisfacer sus requerimientos de despliegue de datos o para que despliegue ms informacin. Las caractersticas disponibles para las grficas incluyen: una leyenda, una paleta, un indicador digital, una barra de desplazamiento y un buffer. De inicio, las grficas tienen sus paletas y leyendas mostradas cuando son colocadas por primera vez en un panel frontal.

84

Programacin Grfica para instrumentacin y control

Virtual

En la grfica, el indicador digital se encuentra deshabilitado inicialmente. Note que existe un indicador individual para cada dato de la grfica. 5. Si las barras de desplazamiento se encuentran presentes ocltelas por medio del men emergente, que es activado al oprimir el botn derecho del ratn sobre la grfica. Seleccione Visible tems >> Scroll bar. 6. De un formato personal al eje Y. a. Utilice la herramienta de etiquetado Teclee 24.0 y oprima <enter>. sobre 20.0 en la escala del eje Y.

b. Otra vez utilizando la herramienta de etiquetado, de un clic sobe el segundo nmero contando a partir del extremo inferior del eje Y. Cambie este nmero a 26 o cualquier otro nmero diferente al que aparece actualmente. Este nmero determina el espaciamiento numrico de las divisiones del eje Y. Por ejemplo, si el nmero de arriba de 24.0 es 25.0, indica que el eje Y tiene un espaciamiento de 1.0, y al cambiar el 25 a 26 redefinir la escala del eje Y a mltiplos de 2 (24, 26, 28, ..). El tamao de la grfica tiene efecto directo en el despliegue de los ejes. El incrementar el tamao de la grfica es recomendable si tiene problemas para darle un formato deseado a los ejes. 7. Mueva la leyenda a la posicin mostrada y renmbrela. Usted puede colocar la leyenda en cualquier lugar relativo a la grfica. Con la herramienta de posicionamiento, estire la leyenda para incluir la segunda grfica. Cambie Temp por Promedio de temperatura al seleccionar la leyenda con la herramienta de etiquetado y escribiendo el nuevo texto. Puede cambiar Plot 1 por Temperatura actual de la misma manera. Si el texto desaparece, agrande la caja de la leyenda al reescalar la esquina izquierda de la leyenda con la herramienta de 85
Programacin Grfica para instrumentacin y control

Virtual

posicionamiento. (La herramienta de posicionamiento cambiar a una esquina de marco para que pueda ser reescalado la leyenda). Usted puede seleccionar el tipo de despliegue de la lnea y el tipo de estilo del punto al llamar el men emergente sobre la leyenda. Si cuenta con un monitor de color, tambin puede colorear el color de fondo y del trazado de la grfica al llamar el men emergente y seleccionar el submen Color. 8. Ejecute el VI. Mientras el VI se est ejecutando, utilice los botones de la paleta para modificar la grfica. El botn provee opciones de acercamiento en zonas especficas o en todo el grfico. El botn permite mover la grfica a nuestro antojo. El botn desactiva los dos anteriores botones y regresa al ratn al modo normal.
Botn de zoom. Zoom en secciones o en toda la grfica

Botn de paneo.- Permite mover el grfico a nuestro antojo

Regresar al modo estndar

Al modificar el formato del texto los ejes podran requerir ms espacio fsico del

que fue asignado originalmente. Si cambia el eje, la ventana podra ser mayor que el tamao mximo que el VI puede manejar correctamente.

IX. Detenga la ejecucin del VI. Utilice la opcin de Save As y renmbrelo como Temperatura Running Average.vi.

Fin del ejercicio 4.5

IV. Ciclo For El ciclo For repite la parte del diagrama de bloques dentro de su estructura, un nmero predeterminado de veces. El ciclo For se selecciona de la subpaleta de 86
Programacin Grfica para instrumentacin y control

Virtual

Structures en la paleta de funciones, y luego se enmarca con el cursor la parte del


diagrama de bloques que se desea repetir.

La estructura del ciclo For tiene dos terminales: la terminal de conteo (Terminal de entrada) y la terminal de iteracin (terminal de salida). La terminal de conteo especifica el nmero de veces que se ejecutar la parte del diagrama de bloques dentro de los lmites del ciclo For. La terminal de iteracin contiene el nmero de veces que se ha ejecutado el ciclo For. La estructura del ciclo For es completamente modificable de tamao y forma; basta con tomar con el cursor alguna de las esquinas de la estructura para cambiar su forma y tamao. Se pueden agregar elementos adicionales a la estructura del ciclo For, colocando estos elementos adicionales dentro de los lmites de la estructura. El ejemplo siguiente muestra un ciclo For que genera 100 nmeros aleatorios y despliega los puntos en una grfica tipo Chart.

La diferencia entre los ciclos For y While es que el ciclo For se ejecuta un nmero predeterminado de veces y el ciclo While no para de ejecutar el diagrama de bloques que contiene hasta que el valor de la terminal condicional llega a ser FALSO. La estructura del ciclo For es equivalente al siguiente cdigo de programacin. 87
Programacin Grfica para instrumentacin y control

Virtual

For i = to N-1 Begin Ejecuta el diagrama dentro del ciclo


I=i+1

End
Ejercicio 4.6 Objetivo: Construir un VI que despliega 2 seales en una grfica en modo de barrido. La grfica debe desplegar un nmero aleatorio y su promedio instantneo de los ltimos cuatro puntos. En este ejercicio utilice un ciclo For (N = 200) en lugar de un ciclo While. Trate de hacer que la grfica luzca con la que aparece a continuacin.

Tips para la construccin del diagrama a bloques 1. Utilice los registros de corrimiento con tres terminales a la izquierda para promediar los ltimos cuatro datos. 2. Utilice la funcin Random Number (0-1) de la subpaleta Numeric para generar los datos. 3. Utilice la funcin Bundle de la subpaleta Cluster para agrupar el dato aleatorio con los datos promediados antes de graficarlos. 4. Guarde el VI y llmelo Random Average.vi

88

Programacin Grfica para instrumentacin y control

Virtual

Fin del ejercicio 4.6

Capitulo 5

89

Programacin Grfica para instrumentacin y control

Virtual

Arreglos de datos y grficas tipo Graph

Introduccin Esta leccin describe cmo crear Arreglos de Datos en LabVIEW, as como el uso de las funciones bsicas para manejo de arreglos. Tambin se describe cmo desplegar datos usando indicadores grficos tipo Graph.

Al trmino de esta unidad usted habr aprendido I. Que es un arreglo de datos II. Como generar arreglos desde los lmites de un ciclo For o While III. Algunas funciones bsicas para manejo de arreglos de datos IV. Qu es polimorfismo V. Cmo usar indicadores grficos tipo Graph para desplegar arreglos de datos

I. Arreglo de Datos Un arreglo de datos es una coleccin de datos, con todos sus elementos siendo del mismo tipo. Un arreglo tiene una o ms dimensiones y hasta 2 31 elementos por dimensin, si la memoria de la PC lo permite. Los arreglos en LabWIEW pueden ser de cualquier tipo, siempre y cuando todos los elementos sean del mismo tipo. Sin embargo, no se pueden tener arreglos de arreglos o grficas (Charts o Graph). Cada elemento del arreglo se accesa por medio de un ndice. El ndice est en el rango de de 0 a N-1, donde N es el nmero de elementos en el arreglo. El arreglo unidimensional (1D) mostrado debajo, ilustra esta estructura. Note que al primer elemento est asociado el ndice 0, al segundo el ndice 1 y as sucesivamente hasta ndice 90
Programacin Grfica para instrumentacin y control

Virtual

el elemento N-1. Arreglo de 8 elementos 0 1.5 1 2.1 2 2.7 3 3.3 4 4.5 5 3.9 6 5.1 7 5.7

Arreglos de controles e indicadores Los arreglos de controles indicadores se crean combinando la estructura bsica de un arreglo, inicialmente vaca, con elementos de datos (controles o indicadores), los cuales pueden ser numricos, bolanos o alfanumricos. El siguiente ejemplo muestra cmo crear un arreglo de controles o indicadores numricos.

Primer paso.- Se selecciona un arreglo de la subpaleta Array & Cluster de la paleta


de controles en la ventana del diagrama de bloques. El arreglo se encuentra inicialmente vaco.

Segundo paso.- Para crear el arreglo de datos, se coloca un elemento de datos (numrico, booleano o alfanumrico) directamente dentro del cuerpo del arreglo. Esto se puede hacer arrastrando hacia el interior del arreglo un elemento ya existente o bien creando uno nuevo a partir de la subpaleta Numeric en la paleta de controles, se selecciona un control o indicador digital y se arrastra hacia el interior del cuerpo del arreglo.

Recuerde que se tiene que definir el tipo de datos del arreglo, inicialmente vaco,
antes de poder usarlo en el diagrama de bloques. Si no define el tipo de datos, la terminal del arreglo en el diagrama de bloques aparecer negra con un parntesis
91 Virtual
Programacin Grfica para instrumentacin y control

vaco.
Arreglos Bidireccionales Un arreglo bidimensional requiere 2 ndices para ubicar un elemento dentro del arreglo, un ndice para los renglones y otro para las columnas del arreglo. A continuacin se muestra un arreglo de 24 elementos numricos, 4 renglones por 6 columnas. 0 0 1 2 3 1 2 3 4 5 1.5 2.1 2.7 3.3 4.5 3.9 5.1 5.7 6.1 6.5 6.9 7.3 7.7 8.1 8.5 8.9 9.3 9.7 0.1 0.5 0.9 1.3 1.7 2.1

Para agregar dimensiones a un arreglo basta con activar el men emergente del ndice del arreglo y seleccionar Add Dimesions. Por cada dimensin agregada al arreglo aparece un control digital a la izquierda del cuerpo del arreglo que corresponde al ndice de la dimensin correspondiente. En el siguiente ejemplo se muestra un arreglo de dos dimensiones, de controles digitales numricos, en LabVIEW. El valor de los elementos del arreglo corresponde numricamente al arreglo anterior. El primer ndice del arreglo (control digital superior) corresponde al nmero del rengln del elemento, el segundo ndice (control digital inferior) corresponde al nmero de columna del elemento. Nmero de Rengln Nmero de Columna La ventana del cuerpo del arreglo puede hacerse ms grande para mostrar al mismo tiempo varios elementos el arreglo. Colocando la herramienta de posicionamiento en alguna de las esquinas del cuerpo del arreglo (no del elemento de datos del arreglo), arrastrar horizontal y/o verticalmente hasta el tamao deseado. En cualquier momento, el primer rengln y/o primer columna del arreglo corresponder al especificado por el (los) ndice(s). Note que la ventana del arreglo puede mostrar mximo dos dimensiones a la vez. Arreglos de constantes Se pueden crear arreglos de constantes en el diagrama de bloques combinando la estructura bsica de un arreglo con elementos de datos constantes. Un arreglo de constantes es la combinacin de un arreglo bsico de tipo Array Constant y un dato constante de tipo numrico, booleano o alfanumrico. Array Constant se encuentra en la subpaleta Array de la paleta de funciones, en el diagrama de bloques. El siguiente ejemplo muestra cmo crear un arreglo de constantes booleanas. Primer paso.- Se selecciona un arreglo Array Constant, inicialmente vaco, de la subpaleta Array en la paleta de funciones. 92
Programacin Grfica para instrumentacin y control

Virtual

Segundo paso.- Posteriormente se selecciona el tipo de constantes del arreglo. Esto puede hacerse arrastrando el tipo de dato dentro del cuerpo del arreglo o bien generando directamente el tipo de dato a partir de la paleta de controles. Los diferentes tipos de datos incluyen constantes numricas, booleanas o alfanumricas de las subpaletas Numeric, Boolean y String en la paleta de funciones. El siguiente ejemplo muestra un arreglo de constantes del tipo booleano, de 6 elementos.

II. Creacin de Arreglos a partir de Ciclos While/For Los ciclos For y While pueden automticamente indexar y acumular arreglos en los lmites de su estructura. Esta capacidad es llamada auto-indexing (auto-indexacin). La siguiente ilustracin muestra un ciclo For generando e indexando automticamente un arreglo en los lmites de su estructura. Cada iteracin crea un elemento del arreglo. El tamao del arreglo corresponder, por ello, directamente a N. Al terminar de ejecutarse el ciclo For, el arreglo pasa al indicador. La posicin de los elementos en el arreglo corresponder al nmero de iteracin en la cual el dato fue creado. Note como el alambre de conexin despus del ciclo, se vuelve ms grueso al cambiar el flujo de datos.

93

Programacin Grfica para instrumentacin y control

Virtual

Si usted requiere nicamente el ltimo dato que fue transferido al tnel del ciclo y no el arreglo completo de datos, tiene que deshabilitar la indexacin automtica (auto-indexing) activando el men emergente del tnel (el recuadro negro en los lmites del ciclo) y seleccionando Disable Indexing. En el siguiente ejemplo la indexacin automtica est deshabilitada y nicamente el ltimo dato entregado por la funcin Random Number pasa hacia afuera del ciclo For. Note en esta ocasin, como el alambre de conexin del tnel del ciclo conserva el mismo grosor, ya que el tipo de dato antes y despus del tnel es el mismo.

Debido a que los ciclos For son usados frecuentemente para procesar arreglos,

LabVIEW habilita la indexacin automtica al alambrar un arreglo hacia fuera del ciclo For. La indexacin automtica en ciclos While, no est habilitada. Se debe activar el men emergente del tnel del ciclo y seleccionar Enable Indexing
para habilitarla.

Creacin de Arreglos Bidimensionales Se pueden utilizar dos ciclos For, uno dentro de otro, para crear arreglos de dos dimensiones. El ciclo For externo crea los renglones y el ciclo For interno crea las columnas del arreglo. El siguiente ejemplo muestra dos ciclos For con indexacin automtica, empleados para generar un arreglo bidimensional.

94

Programacin Grfica para instrumentacin y control

Virtual

Uso de Indexacin automtica para definir el nmero de iteraciones del ciclo For Cuando se habilita la indexacin automtica en un arreglo de entrada al ciclo For, LabVIEW automticamente ajusta el contador del nmero de iteraciones de acuerdo al tamao del arreglo, eliminando la necesidad de alambrar un valor a la Terminal N de conteo. Si se habilita la indexacin automtica para ms de un arreglo de entrada al ciclo For, o si se alambra un valor a la terminal de conteo, el nmero de iteraciones del ciclo corresponder a la menor de las diferentes opciones. En el ejemplo que se muestra a continuacin, el tamao del arreglo y no la terminal de conteo N, es el que define el nmero de iteraciones del ciclo, ya que el tamao del arreglo representa la menor de las opciones. La cuenta del ciclo For ser de 5 iteraciones y no de 20

Si el arreglo de entrada al ciclo For es de 2 dimensiones, el tamao del arreglo para el contador del nmero de iteraciones del ciclo For corresponde al nmero de renglones del arreglo (primer ndice del arreglo). III. Funciones de Arreglos

LabVIEW tiene muchas funciones para manipular arreglos en la subpaleta Array de


la paleta de funciones. Las funciones ms comunes sern presentadas a continuacin.

Array Size. Esta funcin entrega el nmero de elementos


del arreglo de entrada. Si el arreglo de entrada es de dos o ms dimensiones, la salida es un arreglo de dos o ms elementos. Cada uno de los elementos en el arreglo de salida indica el nmero de elementos de cada dimensin del arreglo de entrada. El 95
Programacin Grfica para instrumentacin y control

Virtual

primer elemento indica el nmero de renglones, el segundo elemento indica el nmero de columnas.
Nmero de elementos

Initialize Size. Esta funcin crea un arreglo


de datos con un nmero de elementos especificado en dimensin size y de un valor y tipo de datos definido en la entrada element. El tamao del icono de esta funcin puede modificarse de tal manera que corresponda al nmero de dimensiones del arreglo de salida. El siguiente ejemplo muestra un arreglo bidimensional de 4 x 2 elementos, inicializado con los valores 2 y 4 respectivamente.

Build Array. Esta funcin concatena varios


arreglos o agrega elementos a un arreglo. La funcin aparece como cuando se coloca en el diagrama de bloques. Se puede aumentar el tamao de la funcin para incrementar el nmero de entradas. El tipo de entrada, ya sea Array o Element se ajusta automticamente al conectar ya sea uno u otro a la funcin Build Array. El siguiente ejemplo muestra como agregar un elemento a un arreglo, formando un nuevo arreglo

. En los dos ejemplos siguientes la funcin Build Array est configurada para unir dos arreglos, en el primer caso alambrados como elementos, y en el segundo alambrado como arreglos. Note que en el primer caso la salida es un arreglo bidimensional donde el rengln superior corresponde a la entrada superior y el rengln inferior corresponde a la entrada inferior. En el segundo caso el arreglo inferior es agregado al arreglo superior, formando un arreglo unidimensional que contiene todos los elementos de ambos arreglos de entrada. Del men emergente de la funcin Build Array, active la opcin Concatenate Inputs para utilizar el segundo caso, y desactvela para el primer caso.

96

Programacin Grfica para instrumentacin y control

Virtual

Array Subset. Esta funcin entrega la porcin del


arreglo de entrada a partir del elemento especificado en index y conteniendo el nmero de elementos definido en length. El tamao del icono de la funcin se puede modificar, de tal manera que se muestren tantos pares de entradas index/length como dimensiones del arreglo de entrada. A continuacin se muestra un ejemplo de cmo extraer una porcin de un arreglo unidimensional.

Indice Longitud

Index Array. Esta funcin accesa el


elemento del arreglo de entrada especificado en la terminal Index. Si el arreglo de entrada es multidimensional se tienen que agregar terminales index adicionales, agrandando el icono de la funcin. Como el ejemplo muestra la funcin Index Array accesando el elemento del segundo rengln, tercer columna de una arreglo bidimensional. Note que el ndice del segundo rengln es 1 y el ndice de la tercer columna es 2 ya que el primer rengln o columna tienen un ndice de cero.

Indice Reng. Indice Col

Si bien usted puede usar la funcin Index Array para extraer un elemento escalar de un arreglo, tambin se puede usar esta funcin para extraer un rengln o una columna de un arreglo multidimensional, y formar un subarreglo. Index Array realiza lo anterior automticamente. Si se desea extraer un rengln de un arreglo multidimensional, se conecta una constante en la terminal ndice Reng. (mostrada 97
Programacin Grfica para instrumentacin y control

Virtual

en la figura anterior), para indicar el rengln que se desea extraer. Ahora, la terminal ndice Col se deja sin conectar. As mismo, si se desea extraer una columna, se indica el nmero de sta en la terminal ndice Col y se deja sin conectar la terminal ndice-Rung. Note que la terminal sin conectar cambia de un rectngulo slido a un rectngulo vaco. As mismo, la terminal de salida cambia de un pequeo rectngulo vaco a una cuadrcula que indica que la salida ser un arreglo. Es importante conectar en la salida un arreglo de indicadores con el nmero de renglones o de columnas adecuado, segn se haya seleccionado el tipo de conexin. El siguiente ejemplo muestra el uso de la funcin Index Array para extraer columnas o renglones de un arreglo bidimensional de entrada.

Subarreglo Rengln 2 Arreglo 2D Subarreglo Columna 1

IV. Polimorfismo Las funciones aritmticas en LabVIEW; Add, Multply, Divide, etc, son polimrficas. Esto significa que las entradas de estas funciones pueden tener diferentes estructuras de datos (escalares y arreglo). Por ejemplo, se pueden sumar directamente un escalar y un arreglo o bien dos arreglos o dos escalares. El siguiente ejemplo muestra algunas combinaciones polimrficas de la funcin Add.

Combinacin

Resultado

98

Programacin Grfica para instrumentacin y control

Virtual

En la primera combinacin el resultado es un escalar. En la segunda combinacin el escalar es sumado a cada elemento del arreglo. En la tercera combinacin, cada elemento del primer arreglo es sumado al elemento correspondiente del segundo arreglo. En la cuarta combinacin, el resultado es calculado como en la tercera combinacin, pero debido a que un arreglo es ms pequeo que otro, el arreglo resultante es del mismo tamao que el arreglo de entrada ms pequeo. Con esto el arreglo resultante en la cuarta combinacin contiene la suma de los elementos 0,1,2 y 3 que estn presentes en ambos arreglos de entrada. En el siguiente ejemplo, cada iteracin del ciclo For genera un nmero aleatorio el cual se muestra en un indicador escalar y es almacenado en el arreglo creado en los lmites del ciclo. Despus de que el ciclo For termina de ejecutarse, el arreglo almacenado se muestra en el indicador vectorial, y la funcin Multiply multiplica cada elemento en el arreglo por un factor de escalamiento. Posteriormente el arreglo resultante se muestra en un indicador de arreglos de datos.

Ejercicio 5.1
Objetivo: Crear arreglos y familiarizarse con las funciones de arreglos Usted construir un VI que contiene dos arreglos, agregue un arreglo inicializado, como un desplazamiento para el arreglo concatenado, e indexar el elemento a la mitad del arreglo final.
Programacin Grfica para instrumentacin y control

99

Virtual

Panel Frontal

1. Abra un VI nuevo y construya el panel frontal mostrado. a) Crear un arreglo de controles digitales. Coloque un arreglo (de la subpaleta Array & Cluster), en la ventana del panel frontal. Etiquete el arreglo como Arreglo uno. Coloque un control digital (de la subpaleta Numeric) dentro del cuerpo del arreglo, usando el men emergente. Este control digital despliega el contenido del arreglo. b) Crear arreglos de indicadores digitales para desplegar datos (para el Arreglo Dos, el Arreglo Inicializado y el Arreglo Final) Repita (a) pero colocando un indicador digital dentro del cuerpo del arreglo. 2. Coloque dos controles digitales y un indicador digital, que correspondan al Elemento 1, Elemento 2 y Valor Intermedio, respectivamente, El VI concatenar los arreglos y los valores del control en el siguiente orden: Arreglo Uno Elemento 1 Elemento 2 _ Arreglo Dos Despus, el VI agregar un desplazamiento, sumando un arreglo inicializado al arreglo concatenado. Diagrama de Bloques
Programacin Grfica para instrumentacin y control

100

Virtual

1. Construir el diagrama a bloques mostrado

VI Process Monitor (Select a vi en la carpeta de curso de LabVIEW). La


salida de este VI simular un dato de temperatura. En este ejercicio, este VI regresa un punto de simulacin de datos de temperatura durante cada iteracin del ciclo For. Cada iteracin del ciclo For almacenar el valor de temperatura en un arreglo, en los lmites de la estructura del ciclo. Funcin Build Array (de la subpaleta Array). En este ejercicio, esta funcin concatena los datos de entrada para crear un nuevo arreglo en el siguiente orden: Arreglo Uno + Elemento 1 + Elemento 2 + Arreglo Dos. La funcin Build Array se ve cuando se coloca en la ventana del diagrama. Coloque la herramienta de posicionamiento sobre el icono de la funcin. Deben aparecer dos pequeos crculos blancos sobre la funcin , arrastre con el cursor cualquiera de los crculos hasta tener cuatro terminales de entradas. Alambre los datos de entrada. Funcin Initialize Array (de la subpaleta Array). Esta funcin regresa un arreglo de nueve elementos, con el valor de 10 en cada elemento. Funcin Add (de la subpaleta Numeric). En este ejercicio, esta funcin agrega el Arreglo Inicializado al Arreglo concatenado, para mostrarse en el Arreglo Final. Funcin Array Size (de la subpaleta Array). Esta funcin regresa el nmero de elementos del Arreglo Final. Funcin Divide (de la subpaleta Numeric). En este ejercicio, esta funcin divide el nmero de elementos del Arreglo Final, por dos. Funcin decrement (de la subpaleta Numeric). En este ejercicio, esta funcin resta uno, al nmero que la funcin Divide regresa. Esta resta es necesaria 101
Programacin Grfica para instrumentacin y control

Virtual

porque el arreglo indexado empieza en cero. Funcin Index Array (de la subpaleta Array). En este ejercicio, la funcin entrega el elemento de mitad del Arreglo. 2. Regrese al Panel Frontal y ejecute el VI. Pruebe varios nmeros diferentes. Cada iteracin del ciclo For genera un punto de datos, lo almacena en un arreglo creado en los lmites del ciclo. Este corresponde al Arreglo Dos. Usted construy el Arreglo Concatenado usando la funcin Build Array. Despus, un desplazamiento es agregado al arreglo sumando el Arreglo Inicializado al Arreglo Concatenado. Usted calcul el ndice que corresponde a la mitad del arreglo, tomando el tamao del arreglo, dividindolo entre dos y restndole uno, ya que el ndice del arreglo empieza en cero. 3. Guarde el VI como Ejercicio de arreglos.vi. Cierre el VI.

Fin del ejercicio 5.1

V. Grficas tipo Graph


Un indicador tipo Graph es una ventana grfica bidimensional de uno o ms arreglos de datos. LabVIEW tiene dos de estos tipos de indicadores grficos: XY Graphs y Waveform Grapas. Ambos tipos de grficas lucen idnticas en el panel frontal del VI. A continuacin se muestra un ejemplo de un indicador grfico tipo Waveform Graph.
Marca Leyenda

Estilo de lnea y punto

Escala Y Escala X Paleta

El indicador tipo Graph se selecciona de la subpaleta Graph en la paleta de controles. Este tipo de indicadores grafican nicamente arreglos de datos en los cuales los puntos estn uniformemente distribuidos, por ejemplo el arreglo de datos producto de la adquisicin de una forma de onda muestreada a intervalos regulares de tiempo. 102
Programacin Grfica para instrumentacin y control

Virtual

Grupos de datos (Cluster)


Para usar indicadores tipo Graph, es necesario conocer y poder emplear otro tipo de estructura conocida como Cluster (grupo de datos). Un grupo de datos es una estructura que contiene elementes de datos, aun y cuando estos elementos de datos sean de tipos diferentes. Se puede imaginar un Grupo de datos como un grupo de alambres, por ejemplo el cable telefnico;

Cada alambre en el cable representa un elemento en el grupo de datos o Cluster. As como cada alambre en el cable puede transmitir diferentes tipos de seales (anlogas, digitales), cada elemento en el grupo de datos puede ser de un tipo de datos diferente (numrico, boleano, alfanumrico, arreglo de datos). La funcin Bundle (de la subpaleta Array en la paleta de funciones) agrupa varios tipos de datos y nos permite manejar una sola lnea de datos. El siguiente ejemplo muestra el uso de la funcin Bundle para agrupar los parmetros de una grfica tipo Graph en una sola lnea de datos. Los parmetros requeridos por un indicador del tipo Waveform Graph incluyen el valor inicial en el eje X, el espaciamiento entre cada punto en el eje X y el arreglo de datos a graficar.
X inicial Delta X Valores en Y

Grupo de Datos

Grficas simples Para grficas simples, de un solo trazo, el arreglo de datos puede ser pasado directamente al indicador Waveform Graph. Al hacerlo de esta manera el indicador asume un valor inicial de cero y un espaciamiento entre puntos de datos adyacentes de 1. El icono del indicador grfico aparece como un indicador de arreglos de datos.

La lnea de datos de entrada del indicador puede ser un grupo de datos (Cluster) que consiste de dos datos numricos que contienen el valor inicial del eje X y el delta X (espaciamiento entre puntos), y el arreglo de datos conteniendo los valores de la 103
Programacin Grfica para instrumentacin y control

Virtual

forma de onda. De esta manera usted tiene la flexibilidad para ajustar la base de tiempo y el punto de inicio de la grfica. Note que el icono del indicador grfico aparece en este caso un indicador de grupos de datos.

Grficas Mltiples Usted puede crear grficas mltiples del tipo Waveform Graph alambrando directamente al indicador arreglos de formas de onda (arreglos de datos bidimensionales). El siguiente ejemplo muestra esta forma directa de desplegar mltiples trazos en una grfica Observe como los arreglos de datos, que contienen las formas de onda, deben ser colocados en un arreglo bidimensional antes de poder ser alambrados al indicador. El icono del indicador grfico aparece ahora en un indicador de arreglos bidimensionales.

La funcin Build Array crea un arreglo bidimensional con los arreglos unidimensionales de entrada. El ejemplo anterior asume un valor inicial de 0 y de un X de 1 para ambas formas de onda. A continuacin se muestra otro ejemplo de trazo mltiple, donde el valor inicial y el delta X son especificados para cada forma de onda. Estos parmetros no tienen que ser los mismos para ambas formas de onda. Observe como el icono de la grfica aparece como un indicador de arreglos de grupos de datos.

104

Programacin Grfica para instrumentacin y control

Virtual

La funcin Build Array crea un arreglo bidimensional de grupos de datos (clusters) con los grupos de datos de entrada.

Grficas en dos dimensiones


El indicador grfico tipo XY Graph es una grfica Cartesiana de uso mltiple, ideal para desplegar datos trazos en dos dimensiones. El indicador XY Graph se puede obtener de la subpaleta Graph en la paleta de Controles. El siguiente ejemplo muestra el uso de este tipo de indicador grfico.

La funcin Bundle combina los arreglos de datos de los valores en X y Y en un grupo de datos, que es alambrado al indicador grfico. El graficador XY Graph interpreta los componentes de la siguiente manera: La componente superior como el arreglo de datos para el eje X y la componente inferior como el arreglo de datos 105
Programacin Grfica para instrumentacin y control

Virtual

correspondiente al eje Y. El icono de la grfica aparece como un indicador de grupos de datos.

Ejercicio 5.2 Objetivo: Crear un arreglo usando la caracterstica de auto indexado de un ciclo For y graficar el arreglo en un indicador grfico tipo Graph. Usted construir un VI que genera un arreglo usando el VI Process Monitor, y lo despliega en una grfica tipo graph. Usted tambin modificar el VI para graficar mltiples seales. Panel Frontal

Abra un VI nuevo, y construya el Panel Frontal mostrado. Asegrese de modificar los controles e indicadores como se describe. 1. Coloque un arreglo (de la subpaleta Array & Cluster) en la ventana del panel frontal. Etiquete el arreglo como Arreglo de Datos. Coloque un indicador digital (de la subpaleta Numeric) dentro del cuerpo del arreglo, usando el men emergente. Este indicador mostrar el contenido del arreglo. 2. Coloque una grfica (de la subpaleta Graph) en la ventana del Panel Frontal. Etiquete la grfica como Forma de Onda. Oculte la leyenda activando el men emergente sobre la grfica, y seleccionando Visible tems >> Legend. Haga crecer la grfica arrastrando una esquina de esta con la herramienta de posicionamiento. 106
Programacin Grfica para instrumentacin y control

Virtual

Diagrama a Bloques

1. Construya el diagrama a Bloques que se muestra. VI Process Monitor (Select a vi en la carpeta de curso de LabVIEW). La salida de este VI simula un dato experimental. En este ejercicio, entrega un punto de datos simulados de temperatura durante cada iteracin del ciclo For.

Numeric Constant (de la subpaleta Numeric). En este ejercicio, esta constante indica el nmero de iteraciones del ciclo For. El VI generar 100 valores de temperatura dentro del ciclo For. La salida (tipo tnel) ser un arreglo
de 100 elementos. Active el men emergente sobre la terminal de conteo seleccione Create Constant del men, y escriba el nmero 100. y

2. Usted puede ver cualquier elemento del arreglo, simplemente introduciendo el ndice del elemento en el control de ndice. Si usted introduce un nmero mayor que el tamao del arreglo, el indicador se obscurece. Para ver ms de un arreglo a la vez, puede redimensionar la ventana del arreglo. Coloque la herramienta de posicionamiento en la esquina inferior derecha del arreglo hasta que aparezca la herramienta y arrastre la esquina. El indicador ahora muestra varios elementos en orden de ndice ascendente, empezando con el elemento correspondiente al ndice especificado en el control de ndice, como se ilustra a continuacin.

ndice

10

11

12

13

3. Alambre el arreglo de Datos directamente a la terminal de la Grfica tipo Waveform graph. Cada iteracin del ciclo For generar un valor de temperatura y se almacenar en un arreglo dentro del ciclo (tipo tnel) 4. Regrese al Panel Frontal y ejecute el VI. El VI grfica el arreglo Forma de Onda auto-indexado, en la grfica Forma de Onda. En el Diagrama a Bloques previo, usted us el valor predeterminado del valor 107
Programacin Grfica para instrumentacin y control

Virtual

inicial de X y delta X para la grfica. Hay muchos casos donde el valor inicial de X y delta X deben ser un valor especfico. En estas circunstancias, usted puede usar la funcin Bundle para especificar un valor inicial de X y delta X, al graficar un arreglo correspondiente a alguna forma de onda.

X0

5. Regrese a la ventana del Diagrama a Bloques. Borre la conexin del cable entre el arreglo y la grfica. Termine el cableado del Diagrama a Bloques como se muestra. Funcin Bundle (de la subpaleta Cluster). En este ejercicio, la funcin une los componentes del diagrama en un grupo simple. Los componentes incluyen el valor inicial de X (10), el valor de delta X (100) y el arreglo de datos de la forma de onda. Use la herramienta de posicionamiento para redimensionar la funcin, arrastrando una de las esquinas. X Usted puede dibujar X, primero escribiendo X para la etiqueta de la constante. Seleccione la letra D usando la herramienta de etiquetado y entonces seleccione la fuente Symbol, del men desplegable. La letra D se convierte entonces en el smbolo delta. 6. Regrese al Panel Frontal y ejecute el VI. El VI despliega el arreglo auto-indexado de la forma de onda en la grfica. El valor inicial de X es de 100 y el valor de X es 10. 7. Cambie el valor de X a 0.5 y el valor inicial de X a 20. Note que ahora la grfica despliega los mismos 100 puntos de datos con un valor de inicio de 20 y un X de 0.5 para cada punto (vea el eje X). En una prueba en el tiempo, esta grfica podra corresponder a 50 segundos de adquisicin de datos iniciando en los 20 segundos. Experimente con diferentes combinaciones para el valor inicial de X y de X. 8. Con LabVIEW, usted puede especificar un formato de tiempo y fecha para indicadores numricos y grficos. Active el men emergente de la grfica, y seleccione X Scale>> Formatting del men. Cambie las opciones de formato, como se muestra a continuacin.

108

Programacin Grfica para instrumentacin y control

Virtual

a. Modifique Scale Style para igualar el estilo mostrado arriba. b. Cambie el men desplegable Format al formato Time & Date. c. Modifique Custom Time Format para mostrar el tiempo como HH:MM:SS. d. Modifique Custom Date Format para mostrar el ao con dos dgitos.

Los parmetros Xo y X en la pantalla X Scale Formatting, interactan con el Xo

y X de la funcin Bundle. Usted debe cambiar Xo y X de la funcin Bundle a 0 y 1 respectivamente, para igualar los valores a los del ejemplo, por ejemplo:

Bundle
Xo X 20.0 0.5

Formatting Setup
7:30 10:00.00 (10 min)

Resultant Graph Settings


10:50 (7:30 + 20 x 5 min) 5 min (10 min X 0.5)

Si el texto del eje X no es claramente visible, reduzca la ventana interna de la


grfica con la herramienta de posicionamiento, para incrementar el rea alrededor del texto del eje X.

109

Programacin Grfica para instrumentacin y control

Virtual

Grficas Mltiples
Usted puede crear grficas de formas de onda mltiples, construyendo un arreglo con los tipos de datos empleados normalmente para generar una grfica simple.

110

Programacin Grfica para instrumentacin y control

Virtual

9. Crear el diagrama a bloques mostrado Funcin Sine (de la subpaleta Numeric >> Trigonometric). En este ejercicio, use la funcin en un ciclo For, para construir un arreglo de puntos que corresponden a un perodo de una onda seno. Funcin Build Array (de la subpaleta Array) En este ejercicio, esta funcin crea la estructura de datos apropiada para desplegar dos arreglos de datos en una grfica mltiple. Redimensione la funcin Build Array, para incluir dos entradas, arrastrando una esquina con la herramienta de posicionamiento. Constante (de la subpaleta Numeric >> Additional Numeric Cosntants) 10. Regrese al panel frontal. Ejecute el VI. Note que los dos trazos se encuentran en la misma grfica. El valor de Xo predeterminado es 0, y el valor de X predeterminado es 1, para ambos trazos. 11. Regrese al diagrama de bloques. Coloque un punto de prueba grfico, en el cable que va al indicador Arreglo de datos. a. Active el men emergente sobre el cable del ciclo For que va al indicador del arreglo. b. Desde el men emergente, seleccione Custom Probe>> Graph y seleccione una grfica tipo graph. Regrese al panel frontal y ejecute el VI. Note que el punto de prueba grfico muestra solo el arreglo de datos. La onda seno no est presente, porque usted no coloc el punto de prueba grfico en el cable donde la onda seno est agrupada. Cierre la ventana del punto de prueba grfico. 12. Hacer un acercamiento a una porcin de la grfica. Haga clic y sostenga el cursor en el botn , de la paleta de herramientas de la grfica, aparecer. De la subpaleta Zooming mostrada a la derecha, aparecer. De la subpaleta, seleccione la opcin Zoom

by Rectangle

Ahora haga clic y arrastre para seleccionar un rea en la grfica. Cuando usted suelte el botn del ratn, la grfica mostrar un acercamiento en el rea seleccionada. Usted puede tambin seleccionar un acercamiento Zoom by Y Rectangle, o un acercamiento Zoom by para el rea seleccionada. Experimente con estas opciones. Para eliminar un acercamiento, usted puede realizar Undo, del men principal Edit>>Undo Move. 111
Programacin Grfica para instrumentacin y control

Virtual

13. Mueva la ventana de acercamiento, usando la caracterstica de desplazamiento. Haga clic una vez en el botn de desplazamiento , localizado en la paleta de herramientas de la grfica. Note que el cursor del ratn cambia a la forma de una mano; ahora haga clic y arrastre dentro de la ventana de la grfica. Tanto como usted sostenga el botn del ratn, podr desplazar el trazo dentro de la ventana. 14. Salve y cierre el VI. Nmbrelo Graph Waveform Array.vi. Fin del ejercicio 5.2 Ejercicio 5.3 Objetivo: Graficar datos y usar los VIs de anlisis Usted construir un VI que adquiera la temperatura cada 0.25 segundos, durante un perodo de 10 segundos. Durante la adquisicin, el VI despliega las mediciones en tiempo real en una grfica tipo chart. Al completarse la adquisicin, el VI muestra el conjunto de datos adquiridos en una grfica tipo Graph, y calcula el mnimo, mximo y promedio en el perodo. El VI desplegar la mejor o ms conveniente grfica de temperatura. Panel Frontal

112

Programacin Grfica para instrumentacin y control

Virtual

1. Abra un panel frontal nuevo. 2. Construya el Panel Frontal como se muestra en la figura anterior. La grfica Temperatura despliega la temperatura en tiempo real, en el momento en que se adquiere. Despus de la adquisicin, el VI realiza un ajuste polinomial para los puntos adquiridos, y los despliega en una grfica tipo graph. Los indicadores digitales Prom, Max, y Min, despliegan el promedio, mxima y mnima temperatura, respectivamente. Diagrama a Bloques

113

Programacin Grfica para instrumentacin y control

Virtual

I. Construya el Diagrama a Bloques mostrado. Referirse a las siguientes instrucciones. Usted puede mostrar ms de una seal en una grfica. Esta caracterstica no solo salva espacio en el Panel Frontal, sino que es tambin un medio efectivo para hacer comparaciones entre varias seales. Las grficas XY y Forma de Onda, automticamente se adaptan a mltiples seales. VI Termmetro (de la subpaleta Select a VI). Este VI regresa una medicin de temperatura. Funcin Wait Until Next ms Multiple (de la subpaleta Time & Dialog). En este ejercicio, esta funcin causa que el ciclo For se ejecute cada 0.25 segundos (250 ms). Funcin Array Max & Min (de la subpaleta Array). En este ejercicio, esta funcin entrega la temperatura mxima y mnima, medida durante la adquisicin. Funcin Bundle (de la subpaleta Cluster). En este ejercicio, esta funcin une los componentes del diagrama en un grupo simple. Los componentes incluyen el valor inicial de X (0), el valor de X (0.25) y el arreglo Y (datos de la temperatura). Use la herramienta de posicionamiento para redimensionar la funcin, arrastrando una de las esquinas.

VI General Polynomial Fit (de la subpaleta User Libraries >>search >>


ventana donde aparece una especie de alfiler). Este ejercicio usa un polinomio de orden 5. Este VI realiza el mejor ajuste para los puntos del arreglo de temperatura. Funcin Build Array (de la subpaleta Array). En este ejercicio, esta funcin entrega un arreglo de grupos de la temperatura que se encuentra en los grupos ms convenientes. Usted puede incrementar el nmero de entradas para la funcin, usando el mismo mtodo que se emple para la funcin Bundle. La funcin Build Array une 114
Programacin Grfica para instrumentacin y control

Virtual

datos en un arreglo, para desplegarlos en una grfica mltiple. II. Regrese al panel frontal y ejecute el VI. III. La grfica debe mostrar los datos de temperatura adquiridos, y la curva ajustada de temperatura, en la misma grfica. Haga la prueba para diferentes valores del orden del polinomio (constante entera en el Diagrama a Bloques). El ciclo For se ejecuta 40 veces. La funcin Wait Until Next ms Multiple, causa que cada iteracin se realice cada 250 ms. El VI almacena las mediciones de temperatura en un arreglo en los lmites de la estructura del ciclo (autoindexado). Despus que se completa el ciclo For, el arreglo de datos pasa a varias funciones. La funcin Max & Min entrega la mxima y mnima temperatura. El VI Mean, entrega el promedio de las mediciones de temperatura. El VI agrupa al arreglo de datos con un valor inicial de X igual a 0 y un valor de X igual a 0.25, el valor de X igual a 0.25 es requerido para que el VI grafique los puntos del arreglo de temperatura, cada 0.25 segundos. IV. Usted puede modificar la apariencia de sus diagramas modificando opciones tales como estilos del diagrama y estilos de sombreado. Usted puede crear grficas de histogramas, diagramas generales de barras o diagramas sombreados. Las subpaletas Commom Plots y Bar Plots, en el men emergente, permite configurar los estilos de los diagramas, como un diagrama esparcido, un diagrama de barras o un diagrama sin sombreado. Usted puede configurar el punto, la lnea o el sombreado en un solo paso.

a. Active el men emergente sobre la grfica de temperatura, donde se muestra leyenda. Seleccione del men Common Plots >> Plot.

115

Programacin Grfica para instrumentacin y control

Virtual

b. Active el men emergente sobre la grfica de temperatura donde se muestra la leyenda. Seleccione del men Bar Plots >> 1% Width Bar Plot.

5. Cierre y salve el VI. Nmbrelo Temperatura Anlisis.vi. Fin del ejercicio 5.3

Capitulo 6

116

Programacin Grfica para instrumentacin y control

Virtual

Estructuras Case y Sequence

Introduccin Este captulo introduce los otros dos tipos de estructuras, disponibles en LabVIEW. Para controlar el flujo de datos en el programa: La estructura Cae y la estructura Sequence. Este captulo tambin introduce el Nodo de Frmula (Formula Node)

Al trmino de este captulo se habr aprendido I. Cmo usar la estructura Case II. Como usar la estructura Sequence III. Cmo usar los nodos de Formulas

I. Estructura Case
Coloque la estructura Case en el diagrama de bloques seleccionndola de la subpaleta Structures de la paleta de funciones. Al colocar la estructura se pueden 117
Programacin Grfica para instrumentacin y control

Virtual

encerrar secciones ya existentes del diagrama de bloques o bien colocar la estructura en un espacio libre y arrastrar dentro de ella elementos nuevos o elementos ya existentes.

La estructura Case es anloga a los estatutos de if then else en los lenguajes convencionales de programacin basados en texto. La estructura Case se configura como una caja de tarjetas en donde cada tarjeta corresponde a un caso y slo una tarjeta es visible a la vez. Cada tarjeta contiene un subdiagrama, que corresponde a las acciones a realizar para cada caso especfico. Slo un caso se ejecuta a la vez dependiendo del valor almacenado a la terminal de seleccin . La terminal de seleccin puede ser numrica o booleana. Si el tipo de dato es booleano, la estructura Case tiene dos casos, caso verdadero y caso falso, a los cuales corresponden las ventanas True y False. Si el tipo de dato es numrico, la estructura puede tener hasta 231-1 casos. Si el valor alambrado a la terminal de seleccin es 0, el diagrama de bloques a ejecutarse es el de la ventana 0 (0..X), si el valor alambrado a la terminal de seleccin es de 2, el diagrama de bloques a ejecutarse es el de la ventana 2 (0X) y as sucesivamente. El termino (0..X) representa el nmero de casos en la estructura Case.

118

Programacin Grfica para instrumentacin y control

Virtual

A continuacin se ilustra un ejemplo de una estructura Case boleana. En este ejemplo, los nmeros pasan a travs de tneles a la estructura Case y son sumados o restados, dependiendo del valor alambrado a la terminal de seleccin. Si el control boleano alambrado a la terminal de seleccin es verdadero, el VI sumar los nmeros; de otra manera, el VI restar los nmeros.

Asegrese de alambrar los tneles de salida para cada caso de la estructura Case.

Cuando se crea un tnel de salida en una ventana de la estructura, el tnel aparece, en la misma posicin, en las otras ventanas. Los tneles sin alambrar lucen como cuadrados blancos. Se puede alambrar constantes o controles a los tneles dando clic derecho sobre el cuadro en blanco y seleccionando Create Constant o Create Control.

Ejercicio 6.1 Objetivo: Utilizar la estructura Case Construir un VI que verifica si un nmero de entrada es positivo. Si lo es, el VI calcula la raz cuadrada del nmero, de otra manera, el VI mostrar un mensaje de error.

Panel Frontal

1. Abra un panel frontal nuevo 2. Construya el panel frontal mostrado en la parte superior El control digital provee el nmero de entrada. El indicador Valor de la Raz 119
Programacin Grfica para instrumentacin y control

Virtual

Cuadrada despliega la raz cuadrada del nmero si este es positivo. Diagrama a bloques

1. Abra la ventana del diagrama de bloques. 2. Seleccione la estructura Case (de la subpaleta Structures) y colquela en la ventana del diagrama sin encerrar los elementos ya existentes. Puede cambiar la forma y tamao de la estructura, si es necesario, tomando y arrastrando cualquiera de sus esquinas con la herramienta de posicionamiento. Inicialmente, la terminal de seleccin de la estructura Case es del tipo boleano. Su tipo cambia automticamente a numrico al momento de cablear un control numrico a dicha terminal. En la ventana de la estructura slo se puede desplegar un caso a la vez, ya sea falso o verdadero si es del tipo booleano. Para cambiar de caso, d un clic sobre una de las flechas en la parte superior de la estructura Case. 3. Seleccione los otros objetos dentro de la estructura Case y cablelos como se muestra en la figura anterior.

Funcin Great or Equal to 0? (de la subpaleta Comparison). En este


ejercicio, verifica que el nmero de entrada no sea negativo. La funcin da como resultado Verdadero si el nmero de entrada es mayor o igual a 0. Funcin Square Root (de la subpaleta Numeric). Esta funcin da como resultado la raz cuadrada del nmero de entrada. 120
Programacin Grfica para instrumentacin y control

Virtual

Numeric Constant (del men emergente del Tnel). Coloque la


herramienta de cableado en el tnel que en este momento aparece en blanco, active su men emergente y seleccione Create Constan. Utilice la herramienta de etiquetado y teclee el valor de la constante. Llame el men emergente de la constante y seleccione Format & Precision Modifquelo para que presente un dgito de precisin en notacin de punto flotante. Note que si en ambos casos el tnel no se encuentra cableado, este permanece en blanco. Asegrese de que el tnel est cableado internamente en ambos casos de la estructura Case. Funcin One Button Dialog (de la subpaleta Time & Dialog). En este ejercicio, esta funcin despliega una caja de dilogo que contiene el mensaje Error Nmero Negativo.

String Constan (de la subpaleta String). Teclee el mensaje de error dentro de la caja con la herramienta de etiquetado.
En este ejercicio, el VI se ejecutar no importando si el caso es verdadero o falso. Si el nmero es mayor o igual a cero, el VI ejecutar el caso verdadero, y se desplegar la raz cuadrada del nmero. El caso falso dar como salida -99999.0 y desplegar una caja de dilogo con el mensaje Error. Nmero Negativo si el nmero es menor que cero. 4. Regrese al panel frontal y ejecute el VI. Trate con diferentes nmeros, mayores y menores que cero. 5. Guarde y cierre el VI. Nmbrelo Square Root.vi.

Fin de ejercicio 6.1

Ejercicio 6.2 Objetivo: Utilizar la estructura Case. Construir un VI para detectar cuando la temperatura es mayor a un lmite establecido. Si la temperatura excede este lmite, un LED en el panel frontal se encender y sonar un bip. Panel Frontal

121

Programacin Grfica para instrumentacin y control

Virtual

1. Abra el VI Temperatura Running Average que cre en el Captulo 4. 2. Construya el panel frontal como se muestra en la figura anterior El control numrico Limite alto establece el lmite superior de temperatura. El LED de advertencia nos indica cuando la temperatura excede ese lmite. El interruptor vertical nos permite terminar la ejecucin del VI. Este debe estar en ON para permitir una ejecucin continua del VI, de no ser as slo se ejecutar una vez.

Diagrama a Bloques

122

Programacin Grfica para instrumentacin y control

Virtual

1. Modifique el diagrama a bloques como se muestra arriba. Funcin Greater? (de la subpaleta Comparison). En este ejercicio, esta funcin dar como resultado Verdadero si la temperatura medida excede la temperatura especificada en el control de lmite superior; de otra manera dar como resultado Falso.

VI Beep (de la subpaleta Graphics & Sound >> Sound). Este VI hace sonar un bip si el dato de entrada de la terminal de seleccin de la estructura
Case es verdadero. Note que no hay iconos en la condicin de Falso de la estructura Case. Cuando la temperatura que Termmetro.vi entrega es mayor al lmite establecido, el VI ejecuta la condicin verdadera de la estructura Case, el LED se encender y el bip sonar. Si la temperatura es menor al lmite establecido, el VI ejecutar la condicin falsa, el LED no encender y no habr ningn bip. 2. Regrese al panel frontal y teclee 28 en el lmite superior de temperatura. Ejecute el VI. Cuando la temperatura excede los 28, el LED se encender y sonar el bip. 3. Guarde el VI como Temperatura Control.vi usando la opcin Save as del men, Fin del ejercicio 6.2

II. Estructura Sequence Coloque la estructura Sequence en el diagrama a bloques seleccionndola de la 123
Programacin Grfica para instrumentacin y control

Virtual

subpaleta Structures de la paleta de funciones. Al colocar la estructura se pueden encerrar secciones ya existentes del diagrama de bloques o bien colocar la estructura en un espacio libre y arrastrar dentro de ella elementos nuevos o elementos ya existentes.

La estructura Sequence, la cual aparece como una especie de rollo de pelcula, ejecuta secuencialmente las secciones de diagramas de bloques que contiene en cada una de sus ventanas. En los lenguajes de programacin convencionales basados en texto, los estatutos del programa se ejecutan en el orden en el que aparecen. En la programacin de flujo de datos, un nodo se ejecuta cuando hay datos disponibles en todas las entradas del nodo y por ello la secuencia en la ejecucin de los nodos es difcil de definir. Sin embargo, a veces es necesario asegurar la ejecucin de un nodo antes que otro. La estructura Sequence es la forma en que LabVIEW puede controlar el orden especfico en que los nodos se ejecutan.

El diagrama de bloques a ejecutarse primero, se coloca dentro de la ventana 0(0..X), el diagrama de bloques a ejecutarse en segundo trmino, se coloca dentro de la ventana 1 (0..X) y as sucesivamente. El trmino (0X) representa el rango de ventanas en la estructura Sequence. Al igual que en la estructura Case, en la estructura Sequence slo una ventana es visible a la vez. Variables Locales (Sequence locals) 124
Programacin Grfica para instrumentacin y control

Virtual

Sequence Locals son variables que pasan datos entre ventanas de una estructura Sequence. Estas variables locales se pueden crear dando clic derecho en el borde de la ventana y seleccionando Add Sequence Local del men emergente. La informacin
alambrada a una variable local est entonces disponible para las subsecuentes secuencias o ventanas. La informacin, sin embargo, no est disponible en las secuencias que preceden a la ventana en el cul se cre la variable local. El ejemplo siguiente muestra una estructura Sequence de tres secuencias. Una variable local en la ventana 0 pasa el valor, que la funcin Tick Count (ms) entrega, a las ventanas siguientes. La funcin Tick Count (ms) regresa el tiempo en milisegundos que ha pasado desde el inicio del VI. Notar que este valor est disponible tanto en la ventana 1 como en la ventana 2 (como lo indica la flecha apuntando hacia adentro de la ventana). No olvide que el VI despliega slo una secuencia a la vez. En la segunda secuencia se hace una medicin de temperatura y finalmente en la tercera ventana se calcula el tiempo que toma la lectura de temperatura.

Ejercicio 6.3 Objetivo: Utilizar la estructura Sequence. Construir un VI que calcula el tiempo que le toma al generador de nmeros aleatorios igualar un nmero que usted especifique.

Panel Frontal

125

Programacin Grfica para instrumentacin y control

Virtual

1. Abra el VI Auto Match que cre en la leccin 4. 2. Construya el panel frontal de acuerdo a la figura anterior. Asegrese de modificar los controles e indicadores como se indica. Diagrama a Bloques

126

Programacin Grfica para instrumentacin y control

Virtual

1.

Abra la ventana del diagrama a bloques y encierre dentro de una estructura Sequence el ciclo While, la funcin Increment, y el nmero de iteraciones. a. b. Seleccione la estructura Sequence de la subpaleta Structures Marque el rea de la estructura Sequence alrededor del ciclo While, la funcin Increment y la terminal del nmero de iteraciones.

2.

Agregue el cuadro a la estructura Sequence. Active el men emergente del borde del cuadro y seleccione Add Frame After. Repita este paso para agregar un segundo cuadro a la secuencia. Coloque el ciclo While dentro del cuadro 1, o bien, regrese al cuadro que contiene el ciclo While, llame el men emergente del borde del cuadro, y seleccione Make This Frame>>1. Cree una variable local para transferir datos de un cuadro a otro. Llame el men emergente de la estructura Sequence en el cuadro 0 y seleccione Add Sequence Local. La variable local aparecer inicialmente como un cuadro vaco. La flecha dentro del cuadro aparece automticamente cuando cablea la variable local.
Programacin Grfica para instrumentacin y control

3.

4.

5. Construya el diagrama mostrado en las figuras anteriores. 127 Virtual

Funcin Tick Count (ms) (de la subpaleta Time & Dialog). Esta funcin lee
el valor del reloj del sistema operativo y regresa el valor en milisegundos. En el cuadro 0, la funcin Tick Count (ms) lee el valor del reloj del sistema operativo y entrega este valor en milisegundos. En el cuadro 1, el VI ejecuta el ciclo While mientras que el nmero especificado no sea igualado por la funcin Random Number (0-1). En el cuadro 2, la funcin Tick Count (ms) lee de nuevo el valor del reloj del sistema operativo. El VI substrae al nuevo valor el tiempo ledo en el cuadro 0 y despliega el tiempo en segundos en el panel frontal. 6. Teclee un nuevo nmero dentro del control Nmero a igualar y ejecute el VI varias veces. (Recuerde que se puede ejecutar el VI al oprimir simultneamente Ctrl.-R). 7. Utilice el comando Save As para guardar el VI como Time to Match.vi y cierre el VI. Fin del ejercicio 6.3 III. Nodo de Formulas Coloque el nodo de Formulas (Formula Node) en el diagrama de bloques, seleccionndolo de la subpaleta Structures de la paleta de funciones. Las ecuaciones se pueden introducir dentro del nodo de frmulas usando la herramienta de etiquetado. El nodo de Formulas es una caja redimensionable, a travs de la cual, usted puede introducir frmulas algebraicas directamente dentro del diagrama de bloques. Este elemento de programacin es extremadamente til cuando la funcin a implementar tiene muchas variables o es complicada. Por ejemplo considere la ecuacin 2 y x x 1. Si usted implementa esta ecuacin usando las funciones aritmticas regulares de LabVIEW, el diagrama a bloques luce con el mostrado abajo.

Usted puede implementar la mima ecuacin usando el nodo de frmulas, como se 128
Programacin Grfica para instrumentacin y control

Virtual

muestra a continuacin.

Con el nodo de frmulas, usted puede introducir directamente una frmula o frmulas complicadas, en lugar de crear subsecciones del diagrama a bloques. Usted puede crear las terminales (variables) de entrada y salida del nodo de frmulas dando clic derecho en el borde del nodo de frmulas y seleccionando Add input o Add output, segn corresponda, del men emergente. Puede escribir la o las frmulas dentro de la caja empleando la herramienta de etiquetado. Cada estatuto del nodo de frmulas debe de terminar en punto y coma (;).

Cada variable usada en el nodo de frmulas debe estar declarada ya sea como

variable de entrada o variable de salida. Las variables internas que son usadas dentro del nodo de frmulas para calcular valores intermedios, deben ser declarados como variables de salida. Sin embargo, las terminales de estas variables internas no necesitan ser alambradas a ningn nodo externo.

Los siguientes operadores y funciones estn disponibles dentro del nodo de frmulas.

129

Programacin Grfica para instrumentacin y control

Virtual

El siguiente ejemplo muestra cmo se pueden realizar pasos de ejecucin condicionales dentro del nodo de frmulas. Considere el siguiente fragmento de cdigo que calcula la raz cuadrada de x si x es positiva, y asigna el resultado a y. Si x es negativa, el cdigo asigna -99 a y.

if (x>=0 then y = sqrt(x) else y = -99


El fragmento de cdigo anterior se puede implementar usando el nodo de frmulas, como se muestra a continuacin:
Condicin Verdadera Falsa

Operador condicional

Ejercicio 6.4 Objetivo: Utilizar el Nodo de Frmulas para evaluar expresiones matemticas. Construir un VI que utiliza el Nodo de frmulas para evaluar una expresin matemtica compleja y graficar el resultado.

130

Programacin Grfica para instrumentacin y control

Virtual

Panel Frontal

1. Abra un nuevo VI. 2. Construya el panel frontal como se muestra arriba. El indicador grfico desplegar la ecuacin a tanh(x) cos(x) .

1. Construya el diagrama a bloques que se muestra arriba.

Formula Node (de la subpaleta Structures). Con este nodo


de formulas, usted puede introducir formulas directamente en el diagrama de bloques. Cree la terminal de entrada al colocar el cursor sobre el borde y activar el men emergente, seleccione Add Input. Cree la terminal de salida a al seleccionar Add Output del men emergente del borde. Cuando crea una terminal de entrada o salida, debe de darle un nombre que sea idntico al que tiene en la frmula. Los nombres de las variables son sensibles a las maysculas, ya que si nombra una terminal con la minscula r debe usar la variable r en la formula. Note que el punto y coma (;) debe terminar la declaracin de cada formula. 131
Programacin Grfica para instrumentacin y control

Virtual

Numeric Constan (de la subpaleta Numeric). En este ejercicio, esta constante especifica el nmero de iteraciones del ciclo For.
Funcin Divide (de la subpaleta Numeric). En este ejercicio, esta funcin divide durante cada iteracin el valor de la terminal de iteracin entre 15.0. El cociente es llevado al Nodo de Frmulas, que calcula el valor de la funcin a tanh(x) cos(x) . El VI guarda el resultado en un arreglo de datos en la frontera del ciclo For (en modo autoindexado). Despus de que el ciclo For finaliza la ejecucin, el VI despliega en la grfica el arreglo de datos. 2. Regrese al panel frontal y ejecute el VI. 3. Guarde y cierre el VI. Nmbrelo Formula Node Exercise.vi. Fin del ejercicio 6.4

Capitulo 7

132

Programacin Grfica para instrumentacin y control

Virtual

Lectura y Escritura de Archivos


-

Introduccin Este captulo introduce los elementos de datos de tipo alfanumrico, las funciones para manejo de datos alfanumricos y las operaciones de lectura y escritura de archivos.

Al trmino de este captulo se habr aprendido: I. Como crear controles e indicadores de tipo alfanumrico II. Como usar las funciones para manejo de cadenas de caracteres. III. Como ejecutar operaciones de lectura y escritura de archivos.

I. Cadena de caracteres Una cadena de caracteres es una secuencia de caracteres desplegables o no desplegables. Las cadenas de caracteres se conocen de manera ms formal, como datos alfanumricos. A menudo, usted usar cadenas de caracteres para ms que simples mensajes de texto (mensajes en ASCII). Por ejemplo, en control de instrumentos, usted transmite datos numricos como datos alfanumricos. Posteriormente, al recibir los datos, usted convierte las cadenas de caracteres a nmeros. En muchos casos, almacenar datos numricos en discos tambin requerir de cadenas de caracteres, lo que significa que primero debe convertir los nmeros a 133
Programacin Grfica para instrumentacin y control

Virtual

datos alfanumricos antes de escribirlos en un archivo en disco. Controles e indicadores alfanumricos Los controles e indicadores alfanumricos estn en la subpaleta String & Path de la paleta de controles. Usted puede introducir o cambiar texto dentro de un control alfanumrico empleando la herramienta de operacin o la herramienta de etiquetado . Los controles e indicadores alfanumricos puede ser modificados en tamao y forma jalando una esquina con la herramienta de posicionamiento . Para minimizar el espacio que este tipo de controles e indicadores ocupan en el panel frontal, puede usar la opcin Show Scrollbar del men emergente del indicador o control. Si la opcin est sombreada, debe de incrementar la altura de la ventana para poder seleccionarla.

Tambin puede configurar los controles e indicadores alfanumricos para diferentes tipos de desplegado. Por ejemplo, puede seleccionar un despliegue tipo password habilitando la opcin Password Display del men emergente del indicador o control. Con esta opcin seleccionada, en la ventana del control o indicador alfanumrico slo aparecern asteriscos.

Los controles e indicadores alfanumricos tambin pueden desplegar y aceptar caracteres que son usualmente no desplegables como backspace, carriage return, tabulador, etc. Para desplegar estos caracteres seleccione \ Codes Display del men emergente. En este modo, los caracteres no desplegables aparecen como una diagonal invertida seguida del cdigo apropiado. Una lista parcial de cdigos aparece en la tabla mostrada abajo. Para ver la tabla completa, use la referencia en lnea de LabVIEW (men Help) y busque Nondisplayable Characters. Para introducir un carcter no desplegable en un control alfanumrico, teclee la diagonal invertida seguida del cdigo del carcter. Como se muestra a la derecha, despus de que teclee el texto en la ventana del control alfanumrico y presione el botn el formato anterior. , cualquier carcter no desplegable aparecer en
Programacin Grfica para instrumentacin y control

134

Virtual

Cdigo \b \s \r \n \t

Interpretacin en LabVIEW Backspace (ASCII BS, equivalente a \08) Space (ASCII SP, equivalente a \20) Return (ASCII CR, equivalente a \0D) Newline (ASCII LF, equivalente a \0A) Tab (ASCII BS, equivalente a \09)

Los caracteres contenidos en los controles e indicadores alfanumricos de LabVIEW son representados internamente en cdigo ASCII. Para ver el cdigo ASCII actual (en hexadecimal) seleccione Hex Display del men emergente del control indicador.

II. Funciones alfanumricas

LabVIEW tiene muchas funciones para manipular datos alfanumricos. Estas funciones se accedan desde la subpaleta String en la paleta de funciones. Algunas de
las funciones ms comunes se describen a continuacin.

String Length. Entrega el nmero de caracteres que contiene el dato alfanumrico de


entrada.

Concatenate Strings. Contiene en una sola cadena de caracteres, todas las cadenas
de caracteres y arreglos de datos alfanumricos de entrada. La funcin aparece como cuando se coloca en el diagrama de bloques. Se puede aumentar el tamao de la funcin, con la herramienta de posicionamiento, para aumentar el nmero de entradas.

135

Programacin Grfica para instrumentacin y control

Virtual

String subset. Extrae una parte de la cadena de caracteres de entrada. La cadena de salida contiene length caracteres y se extrae a partir del carcter offsett del dato de entrada. El primer carcter de una cadena de caracteres tiene un offset de cero.

Match Pattern. Esta funcin busca un patrn de caracteres (regular expresin) en el dato alfanumrico de entrada (string) comenzando en un carcter especfico (ofsset).
Si el patrn de caracteres se encuentra, el dato de entrada se particiona en tres subcadenas de caracteres; la primera contiene todos los caracteres ledos antes de encontrar el patrn (before substring), la segunda contiene el patrn de caracteres (match substring) y la tercer subcadena contiene el resto de caracteres despus del patrn. Una cuarta terminal de salida (ofsset past match) entrega el nmero de caracteres ledos antes de encontrar el patrn. Si el patrn de caracteres no se encuentra en la cadena de entrada, la segunda terminal (match substring) est vaca, y la terminal offset past match contiene -1.

136

Programacin Grfica para instrumentacin y control

Virtual

En muchas ocasiones se requiere convertir datos alfanumricos a numricos o datos numricos a alfanumricos, cadenas de caracteres a nmeros o nmeros a cadenas de caracteres. La funcin Format Into String convierte datos numricos a alfanumricos y la funcin Scan From String convierte datos alfanumricos a numricos. Ambas funciones tienen la capacidad de manejo de errores.

Format Into String. Convierte cualquier argumento (argument) numrico de entrada a una cadena de caracteres con un formato especificado en un format string. La
funcin se puede expandir para convertir simultneamente varios argumentos y entregarlos en una sola cadena de caracteres (resulting string), concatenada con la cadena de entrada inicial string. En el siguiente ejemplo, la funcin Format Into String convierte el nmero de punto flotante 1.55 a un dato alfanumrico de 6 bytes (6 caracteres) y lo entrega concatenado con la cadena de caracteres El voltaje es.

Scan From String. Convierte una cadena de caracteres (input string) que contiene
caracteres numricos vlidos (0 a 9, +, -, e, E, y punto) a un dato numrico (output). La funcin comienza la bsqueda en la cadena de entrada ( input string) en la posicin (offset) definida en inicial search location. Esta funcin se puede expandir para tener varias salidas. En el siguiente ejemplo, la funcin Scan From String extrae de la cadena de caracteres de entrada el voltaje de DC es 1.28 E+2 los caracteres numricos vlidos 1.28 E+2 y entrega el nmero 128.00. La funcin comienza la bsqueda en la posicin 20 (carcter 20) de la cadena de entrada (El offset del primer elemento es cero). Las funciones Format Into String y Scan From String tienen una ventana de dilogo para definir el formato numrico. La terminal format string especifica el formato, precisin, tipo de datos y tamao de los datos convertidos. La ventana de dilogo se puede accesar activando el men emergente de la funcin y seleccionando Edit 137
Programacin Grfica para instrumentacin y control

Virtual

Format String o Edit Scan String segn sea el caso, o simplemente, dando doble clic
sobre la funcin. Despus de definir el formato y seleccionar OK, la ventana de dilogo crea la constante alfanumrica adecuada y la alambra a la terminal de entrada format string. Analice el siguiente ejemplo donde se crea la constante alfanumrica de formato para un nmero de punto flotante, de 2 dgitos de precisin, 8 dgitos de ancho y relleno de ceros.

Ejercicio 7.1 Objetivo: Crear un SubVI utilizando las funciones Format Into String. Concatenate Strings, Match Pattern y String Length. Construir un VI que convierte un nmero a una cadena de caracteres, y concatena esta cadena de caracteres a otras cadenas de caracteres, para formar una cadena de caracteres sencilla. El VI tambin determina la longitud de la cadena de caracteres, y prueba si una clave de acceso introducida por el usuario, concuerda con la clave de acceso preestablecida. Panel Frontal

138

Programacin Grfica para instrumentacin y control

Virtual

1. Abra el VI Build String.vi de la carpeta DIPLO.LLB. 2. Construya el panel frontal mostrado en la figura anterior. Asegrese de modificar los controles e indicadores como se describe. La funcin concatenar la entrada de dos controles alfanumricos y un control digital, dentro de una cadena de caracteres simple, y mostrar la salida en el indicador alfanumrico. El indicador digital mostrar la longitud de la cadena de caracteres concatenada. El VI tambin probar si una cadena de caracteres preestablecida concuerda con una palabra clave introducida por el usuario, proporcionada como cadena de caracteres. El VI activar un indicador booleano si las cadenas no concuerdan; de lo contrario, un indicador alfanumrico mostrar la cadena de caracteres aceptados. Diagrama a Bloques

139

Programacin Grfica para instrumentacin y control

Virtual

1. Construya el diagrama mostrado, de acuerdo a las siguientes instrucciones. Funcin Format Into String (de la subpaleta String). En este ejercicio, esta funcin convierte el nmero especificado por el usuario en el control digital Nmero, a una cadena de caracteres. Para crear el formato de cadena de caracteres %.4f, active el men emergente en la funcin Format Into String, y seleccione Edit Format String. De la caja de dilogo de Edit Format String, crear el formato de la cadena de caracteres. a. Seleccione Use Specified Precision y escriba 4, para convertir el nmero introducido a una cadena de caracteres con 4 dgitos despus del punto decimal.

b. Seleccione el botn OK La funcin automticamente crea una cadena de caracteres constante, y la 140
Programacin Grfica para instrumentacin y control

Virtual

cablea a la entrada de format string. Funcin Concatenate String (de la subpaleta String). En este ejercicio, esta funcin concatena todas las cadenas de caracteres de entrada, en una cadena de caracteres sencilla. Para incrementar el nmero de entrada, redimensionar la funcin usando la herramienta de posicionamiento.

Funcin String Length (de la subpaleta String). En este ejercicio, esta


funcin regresa el nmero de caracteres de la cadena concatenada. Funcin Match Pattern (de la subpaleta String). En este ejercicio, esta funcin compara la cadena de caracteres constante (palabra clave preestablecida), con la palabra clave que el usuario introduce. Si estas concuerdan, la cadena de caracteres se muestra en el indicador alfanumrico, de lo contrario, una cadena vaca es pasada a dicho indicador. Funcin Empty String/Path? (de la subpaleta Comparison). En este ejercicio, esta funcin entrega un valor booleano verdadero, si detecta una cadena de caracteres vaca entregada por la funcin Match Pattern. 2. Regrese al Panel Frontal y realice el cableado de las conexiones para el subVI. Active el men emergente sobre Icon/Conector y seleccione Show Connector. Use la herramienta de cableado para conectar las terminales de entrada y salida a los controles e indicadores en el Panel Frontal. Cuando las conexiones estn completas, selecciones Show Icon.

3. Escriba el texto dentro de los tres controles alfanumricos, y un nmero dentro del control digital. (Escriba la palabra clave en el control correspondiente). Ejecute el VI. 4. Introduzca una palabra clave diferente en el control alfanumrico, y ejecute nuevamente el VI. 5. Guarde y cierre el VI. Fin del ejercicio 7.1 III. Lectura y escritura de archivos Las funciones de lectura y escritura de archivos almacenan informacin en disco o recuperan la informacin almacenada. LabVIEW tiene muchas funciones y VIs para realizar lecturas y escrituras de archivos. Todas las funciones y VIs se pueden accesar a travs de la subpaleta File I/O en la paleta de funciones. Estas funciones y VIs estn organizados en tres niveles; VIs de alto nivel, Funciones de nivel intermedio y Funciones avanzadas. 141
Programacin Grfica para instrumentacin y control

Virtual

En esta leccin se estudiarn los VIs intermedios y de alto nivel. Los VIs intermedios se cubren a detalle para una mejor comprensin de las operaciones bsicas de lectura y escritura de archivos, posteriormente se describen los VIs de alto nivel. VIs de alto nivel. Los VIs de alto nivel se localizan en el rengln superior de la subpaleta File I/O, esto incluye una subpaleta para manejo de archivos binarios Binary File VIs. Estos VIs utilizan los VIs de nivel intermedio como SubVIs. Con esto simplifican las acciones ms comunes de lectura u escritura de archivos, manejando en forma transparente funciones de ms bajo nivel. Estos VIs tambin crean un medio simplificado de manejo de errores. Si ocurre un error al leer o escribir un archivo durante la ejecucin de uno de estos VIs, una ventana de dilogo muestra el error. VIs de nivel intermedio. Los VIs de nivel intermedio estn en el segundo rengln de la subpaleta File I/O. Estos VIs proveen sustancialmente mayor funcionalidad que los VIs de alto nivel. Se pueden programar acciones como abrir o cerrar archivos y manejo directo de los apuntadores de lectura y escritura del archivo. Funciones Avanzadas. Las funciones avanzadas de lectura y escritura de archivos se encuentran en una subpaleta (parte inferior derecha) de la ventana File I/O. Estas funciones manejan en mayor detalle las operaciones de lectura y escritura y proveen una mayor flexibilidad para la administracin de archivos. Lectura y escritura de archivos con VIs de nivel intermedio El proceso bsico en la lectura y escritura de archivos con los VIs de nivel intermedio consiste en abrir o crear un archivo, leer o escribir en l y posteriormente cerrarlo. Esta seccin describe estas funciones bsicas de nivel intermedio. 142
Programacin Grfica para instrumentacin y control

Virtual

Funcin Open / Create / Replace File. Esta funcin abre o reemplaza un archivo existente o bien crea uno nuevo. Si usted deja la terminal de ruta de acceso (file path) sin alambrar, el VI despliega una ventana de dilogo, a travs de la cul usted puede elegir un archivo, nuevo o ya existente. Despus de abrir o crear un archivo, usted puede leer datos de l o escribir datos en l usando las funciones Read File y Write File. Usted puede leer o escribir cualquier tipo de datos usando estas funciones.

Funcin Read File. Esta funcin lee un determinado nmero de bytes (especificado en count) del archivo especificado en la terminal refnum y los entrega en la terminal data. La lectura inicia en la posicin definida en las terminales pos mode y pos offset.

Funcin Write File. Esta funcin escribe los datos de la terminal data al archivo especificado en refnum. La escritura inicia en la posicin especificada en las terminales pos mode y pos offset.

Funcin Close File. Esta funcin cierra el archivo asociado a refnum y regresa el tamao del archivo en bytes. Este VI cierra archivos de cualquier tipo de datos.

Funcin Simple Error Handler (de la subpaleta Time & Dialog). Esta funcin checa los errores en las operaciones con archivos y despliega una ventana de dilogo si ocurre un error.

143

Programacin Grfica para instrumentacin y control

Virtual

Guardar Datos en un Disco El proceso de guardar datos en disco implica tres acciones: abrir o crear un archivo, escribir los datos en l y crear el archivo. Usted puede escribir cualquier tipo de datos en el archivo abierto o cerrado. Si otros usuarios o aplicaciones necesitan accesar el archivo, usted debera escribir datos alfanumricos ya que emplean datos ASCII para escribir a disco. Usted puede accesar los archivos ya sea en forma programada o a travs de una ventana de dilogo. Para accesar un archivo a travs de una ventana de dilogo interactiva, deber dejar sin alambrar la terminal de ruta de acceso file path. Puede evitarse la ventana de dilogo, alambrando el nombre del archivo y la ruta de acceso a la terminal file path. El siguiente ejemplo muestra las funciones requeridas para escribir datos alfanumricos a un archivo ya existente, accesando el archivo en forma programada.

Leer Datos de Disco Cuando usted lee datos de un archivo, generalmente abre un archivo existente, lee el contenido del archivo con la funcin Read File y posteriormente cierra el archivo. Usted debe tambin especificar el nmero de datos que sern ledos. El siguiente ejemplo muestra los pasos necesarios para leer el contenido total de un archivo de datos alfanumricos usando una ventana de dilogo para seleccionar el archivo.

Lectura y escritura de Datos para Hojas de Clculo En LabVIEW, usted puede formatear fcilmente archivos de texto de tal manera que pueda abrirlos en hojas de clculo. En muchas hojas de clculo, el tabulador separa las columnas de datos y el carcter de fin de lnea separa los renglones. Use la funcin Concatenate String para insertar un tabulador entre cada elemento y un fin de lnea despus del ltimo elemento. El diagrama de bloques de la figura crea el archivo de texto mostrado debajo de la figura. La funcin Format Into String convierten el nmero de iteracin y el nmero 144
Programacin Grfica para instrumentacin y control

Virtual

aleatorio a alfanumricos. La funcin tambin incluye tabuladores entre cada elemento y un fin de lnea para darle el formato requerido para hojas de clculo.

0 1 2 3 4 El elemento de fin de lnea lnea. Ejercicio 7.2 Objetivo: Escribir datos en un archivo

0.421151 0.292819 0.777224 0.716554 0.275882

inserta un carriage return y una alimentacin de

Usted construir un VI que concatene un mensaje, dado como un dato alfanumrico, un nmero y una cadena de caracteres, y los escriba en un archivo. En el prximo ejercicio, usted construir un VI para leer el archivo y mostrar su contenido. Panel frontal

145

Programacin Grfica para instrumentacin y control

Virtual

1. Construya el panel frontal mostrado en la figura anterior. El panel frontal contiene dos cadenas de caracteres con indicador normal, y un control digital. El control alfanumrico Estatuto a Escribir, contiene le encabezado del mensaje a guardar en disco. Los controles Nmero a Escribir y Unidades, contienen el resto del mensaje a escribir. 2. Cmbiese la ventana del diagrama a bloques.

1. Construya el diagrama a bloques mostrado en la figura. Las funciones empleadas son descritas a continuacin.

SubVI Build String.vi (de la subpaleta Select a VI). El


subVI concatena las tres cadenas de caracteres de entrada, a una cadena de caracteres combinada. VI Open/Create/Replace File (de la subpaleta File I/O). Este VI muestra una caja de dilogo interactiva, para abrir o crear un archivo. a. es el mensaje que muestra la caja de dilogo (active el men emergente sobre la terminal prompt del VI, y seleccione Create Constant).
Nombre del Archivo?

b.

especfica crear un nuevo archivo o reemplazar un archivo existente (active el men emergente sobre la terminal function del VI, y seleccione Create Constant). Use la herramienta de operacin para cambiar el valor de la terminal a create or replace.
create or replace

Funcin Write File (de la subpaleta File I/O). Esta funcin escribe las cadenas de caracteres concatenadas al archivo. Funcin Close File (de la subpaleta Time & Dialog). Este VI comprueba errores de grupo y despliega una caja de dilogo si un error ocurre. En el prximo paso, NO HAGA doble clic sobre DIPLO.LLB en la caja de

dilogo. Al hacer esto, sobrescribir este archivo y borrar todo lo realizado previamente.
146
Programacin Grfica para instrumentacin y control

Virtual

2.

Introduzca valores en los controles del Panel Frontal, y ejecute el VI. Escriba demofile.txt en la caja de dilogo y haga clic en Save o en OK. No ejecutar el VI empleando el botn de ejecucin continua

pues para

entra a un ciclo indefinido. Use el botn de ejecucin normal correr el VI.


3.

Guarde el VI. Nmbrelo File Writer.vi. Ahora usted construir un VI que abra este archivo y lea su contenido.

Fin del ejercicio 7.2. Ejercicio 7-3 Objetivo: Leer datos de un archivo Usted construir un VI que lea el archivo creado en el ejercicio anterior, y muestre la informacin leda en un indicador alfanumrico, si la palabra clave introducida por el usuario, concuerda con la preestablecida por el VI Build String. Panel Frontal

1. Construya el Panel Frontal mostrado en la figura El Panel Frontal contiene un control alfanumrico, con una palabra clave de habilitacin de lectura, y un indicador alfanumrico, que muestra la informacin leda del archivo. Si la palabra clave introducida por el usuario en el control alfanumrico, concuerda con la preestablecida por el VI Build String, el dato es ledo del archivo. En caso contrario, un mensaje es desplegado para indicar que la palabra clave introducida por el usuario, no concuerda con la preestablecida. 2. Cmbiese a la ventana del diagrama a bloques. 147
Programacin Grfica para instrumentacin y control

Virtual

1. Construya el Diagrama a Bloques mostrado

VI Build String (de la subpaleta Select a VI). En este ejercicio, este VI


prueba una palabra clave proporcionada por el usuario, para ver si concuerda con una palabra clave preestablecida. Si estas palabras concuerdan, el VI entrega un FALSO, y lee datos de un archivo. En el caso contrario, el VI entrega un VERDADERO, y pasa un mensaje de falla al indicador alfanumrico. VI Open/Creat/Replace File (de la subpaleta File I/O. Este VI muestra una caja de dilogo interactiva, que se usa para abrir o crear un archivo. a. es el mensaje que muestra la caja de dilogo (active el men emergente sobre la terminal prompt del VI y seleccione Create Constant). abre un archivo existente (active el men emergente sobre la terminal function del VI y seleccione Create Constant).

b.

Funcin Read File (de la subpaleta File I/O). Esta funcin lee de file size, los bytes de datos desde el archivo de inicio, hasta la marca del archivo en proceso (comienzo del archivo). Funcin Close File (de la subpaleta File I/O). Esta funcin cierra el archivo.

148

Programacin Grfica para instrumentacin y control

Virtual

VI Simple Error Handeler (de la subpaleta Time & Dialog). Este VI


comprueba errores de grupo, y despliega una caja de dilogo si un error ocurri. Constante Error Cluster. Active el men emergente sobre el espacio desocupado en el lmite del cuadro (tnel) del caso True, y seleccione Create Constant. 2. Guarde el VI. Nmbrelo File Reader.vi ( o en espaol, Lectura de archivo.vi). 3. Ejecute el VI. Una caja de dilogo aparece. Encuentre el archivo demofile.txt y haga clic en Open o en OK. El indicador alfanumrico Cadena de caracteres leda, debe de mostrar el contenido del archivo, si la palabra clave introducida por el usuario concuerda con la palabra prescrita por el VI Build String. 4. Despus de que haya finalizado, guarde y cierre el VI.

5. Opcional
Modifique el VI para que el nmero sea analizado y mostrado en un indicador digital.

Fin del Ejercicio 7.3.

Ejercicio 7.4 Objetivo: Guardar datos en un archivo de forma que una hoja de clculo o un procesador de palabras puedan accesarlos posteriormente. Construir un VI que tome lecturas de temperatura y las guarde en un archivo. El VI tambin debe indicar el tiempo en que fue tomada cada lectura de temperatura. 149
Programacin Grfica para instrumentacin y control

Virtual

1. Abra el VI 7-4 de Temperature logger. El panel frontal contiene un indicador alfanumrico una ventana para una grfica tipo chart. El indicador muestra la cadena de caracteres concatenada, de temperatura y tiempo. La grfica muestra la curva de temperatura. El panel frontal ya est construido. Usted finalizar la construccin del diagrama a bloques.

Diagrama a bloques

150

Programacin Grfica para instrumentacin y control

Virtual

1. Construya el diagrama a bloque mostrado. VI open/Create/Replace File (de la paleta File I/O). Este VI muestra una caja de dialogo interactiva que usted usa para crear un archivo nuevo, o reemplazar uno existente. a. es el mensaje que muestra la caja de dilogo (active el men emergente sobre la terminal prompt del VI y seleccione

Create Constant).
b.

crea un nuevo archivo o reemplaza un archivo existente (active el men emergente sobre la terminal prompt del VIy seleccione Create Constant, use la herramienta de operacin para cambiar el valor).

VI Thermometer (de la subpaleta Select a VI..CURSO,LLB). Este VI adquiere un valor de temperatura. Usar el VI que cre en el Captulo 3. Funcin Format into String (de la subpaleta String). Esta funcin convierte la medicin de temperatura (adquirida como un nmero), a una cadena de caracteres, y anexa un tabulador. Active el men emergente sobre la terminal Format String y seleccione Create Constant. Escriba %f\t dentro de la terminal constante. Funcin Get Date/Time String (de la subpaleta (Time & Dialog). Esta funcin entrega el tiempo (en formato de cadena de caracteres), cuando la medicin de temperatura fue tomada. La constante boleana (de la subpaleta Boolean), habilita la funcin para incluir segundos en la 151
Programacin Grfica para instrumentacin y control

Virtual

cadena de caracteres. Use la herramienta de operacin para cambiar la constante boleana de FALSE a TRUE. Funcin Concatenate String (de la subpaleta String). Esta funcin concatena la cadena de caracetres de la temperatura y la cadena de caracteres del tiempo, en una cadena de caracteres sencilla. La cadena concatenada tiene el siguiente formato: Cadena de caracteres de temperatura (tabulador). Cadena de caracteres de tiempo (fin de lnea); por ejemplo, 63.1228 (tabulador) 2:49:16 (fin de lnea). Constante End of Line (de la subpaleta String). Funcin Write File (de la subpaleta File I/O). Esta funcin escribe la cadena concatenada temperatura / tiempo al archivo. Funcin Wait Until Next ms Multiple (de la subpaleta Time &Dialog). Esta funcin hace que el ciclo FOR se ejecute cada 500 ms (medio segundo). VI Close File (de la subpaleta File I/O). Este VI cierra el archivo. VI Simple Error Handler (de la subpaleta Time & Dialog). Este VI comprueba errores de grupo, y despliega una caja de dialogo si un error ocurri. En el prximo paso, NO HAGA doble clic sobre CURSO.LBBen la caja de

dilogo, al hacer esto, sobreescribir este archivo y borrar todo lo realizado previamente.

2. Ejecute el VI. Una caja de dialogo aparecer, la cual le pide introducir un nombre de archivo. Escriba temp.txt y haga clic en OK o SAVE. Asegrese de guardar el archivo en la carpeta Curso de LabVIEW. El VI crea un archivo llamado temp.txt. El VI toma 25 lecturas (una cada medio segundo) y salva el dato de temperatura y tiempo en un archivo. Cuando el VI finaliza, ste cierra el archivo. 3. Salve y cierre el VI. Usted puede ahora usar un procesador de palabras o una hoja de clculo, para abrir el archivo que cre. 4. Inicie la aplicacin Word Pad (o cualquier procesador de palabras o hoja de clculo). a. Haga clic en la barra de tareas y use Start Menu (>>Programs>>Accesories) para seleccionar un procesador de palabras o una hoja de clculo. 5. Encuentre y abra el archivo temp.txt. a. Seleccione Open desde el men File del procesador de palabras o hoja de clculo, y use la caja de dilogos para encontrar temp.txt. Asegrese de 152
Programacin Grfica para instrumentacin y control

Virtual

que busca en el directorio C:\LabVIEW\Curso de LavVIEW. b. Abra el archivo encontrado. 6. Despus de cargar el archivo en el procesador de palabras o hoja de clculo, note que el dato de temperatura aparece en la primera columna, y el tiempo aparece en la segunda columna. Salga de su procesador de palabras u hoja de clculo, y regrese a LabVIEW. Fin del ejercicio 7.4.

Capitulo 8

Configuracin de VIs

153

Programacin Grfica para instrumentacin y control

Virtual

Introduccin Este captulo introduce las opciones de configuracin de los VIs y los subVIs.

Al trmino de este captulo usted habr aprendido: I. II. Como usar las opciones de ejecucin de un VI (VI Properties) Como usar la opciones de ejecucin de un subVI (SubVI Node Setup)

I. Opciones de ejecucin del VI Se tienen varias opciones de ejecucin del VI que usted puede modificar. Para accesar estas opciones active el men emergente del icono del VI en la esquina superior derecha del panel frontal. Seleccione VI Properties de este men. Como se ilustra a continuacin, aparece una ventana de dilogo que muestra las opciones de ejecucin del VI. Se puede elegir entre las opciones Execution, Window Appearance, Window Size, Doumentation, Revision History, Print Options, y Security del men de la ventana de dilogo.

154

Programacin Grfica para instrumentacin y control

Virtual

Para habilitar una opcin, d clic en el recuadro en blanco a la izquierda de la opcin. Una vez seleccionada la opcin aparece un en el recuadro. Para deshabilitar una opcin, d clic de nuevo en el recuadro que contiene , el smbolo desaparece quedando el recuadro en blanco. Ventana Execution

Reentrant Execution. Si el VI es usado como subVI y se hacen mltiples llamadas


de l, se debe tener cuidado de que las mltiples llamadas no compartan los mismos datos. Al seleccionar esta opcin se evita que las mltiples llamadas de un VI utilicen el mismo espacio de datos.

Run When Opened. Al seleccionar esta opcin, el VI se ejecutar automticamente


al momento de abrirlo. Para ello no importa si el VI se abre desde el men File >> Open, o bien como un subVI desde el diagrama a bloques de otro VI.

Suspend When Called. Seleccionar esta opcin es equivalente a dar clic en el botn
de pausa de la barra de herramientas, al ser llamado el VI desde el diagrama de bloques de otro VI.

VI Priority. Ya que el CPU nicamente puede ejecutar cdigo de un elemento a la


vez, LabVIEW mantiene un registro de prioridades de todos los elementos a ser ejecutados. Para controlar la secuencia y el tiempo de ejecucin, el registro de prioridades automticamente asigna una porcin de tiempo a cada elemento del diagrama de bloques, basado en su prioridad. 155
Programacin Grfica para instrumentacin y control

Virtual

Normalmente usted no necesita preocuparse por esta asignacin de registro de prioridades. Sin embargo, en algunos casos usted deseara dar a algn elemento una prioridad mayor que la de otros elementos. Existen seis niveles de prioridad: backgroud, normal, above normal, high, time critical y subroutine, donde backgroud priority es el nivel de ms baja prioridad y subroutine es el nivel de mayor prioridad. De esta manera, si el registro de prioridades contiene 5 VIs, 2 de prioridad time critical, 2 de prioridad high, y uno de prioridad normal, los VIs de prioridad time critical compartirn exclusivamente el tiempo de ejecucin hasta que ambos terminen. Entonces toca su turno a los VIs de prioridad high, y hasta que stos terminen, finalmente, se ejecutar el VI de prioridad normal. Ventana Window Appearence Las opciones de esta ventana aplican nicamente cuando el VI est en modo de ejecucin. En primera instancia, se puede elegir entre tres tipos de apariencia para las ventanas de LabVIEW: Top-Level Application Window, Dialog, o Default. Si se desea una apariencia ms personalizada, se selecciona Custom, y se elige entre las opciones presentadas en la caja de dilogo Customize.

La opcin Customize contiene diversas alternativa para controlar las posibilidades del usuario de interactuar con el programa, restringiendo el acceso a las barras de herramientas o a los mens de LabVIEW y forzando al usuario a responder a las opciones que le presenta el panel frontal.

156

Programacin Grfica para instrumentacin y control

Virtual

La mayora de las opciones de la ventana Customize Windows Appearance se encuentran inicialmente seleccionadas, como se muestra en la figura anterior. Para deshabilitar las opciones basta con dar clic sobre el recuadro a la izquierda de la opcin correspondiente, el recuadro quedar vaco. El efecto de cada opcin es fcil de comprender a partir de los ttulos de las mismas, si requiere mayor informacin acerca de estas funciones use la referencia en lnea de LabVIEW (men Help).

Show Front Panel When Loaded. Si esta opcin se habilita, el panel frontal del VI
se abrir al momento de cargar el VI en memoria, an si ste se usa como subVI.

Show Front Panel When Called. Si se selecciona esta opcin, el panel frontal del
VI se abre cuando ste se ejecuta como subVI.

Close Afterwards if Originally Closed. Si selecciona Show Front Panel When Called el panel frontal del VI se abre cuando se ejecuta como subVI. Al seleccionar Close Aftewards if Originally Closed el panel frontal del VI se
cerrar al terminar de ejecutarse, si originalmente se encontraba cerrado. Ventana Windows Size Las opciones de sta ventana permiten modificar los aspectos relacionados del Panel Frontal y los objetos dentro de l.

157

Programacin Grfica para instrumentacin y control

Virtual

Minimum Panel Size. Permite al usuario especificar las dimensiones ancho y alto
(Width and Height) mnimas a las que se puede reducir el panel frontal. La opcin Set to Current Window Size, establece como dimensiones mnimas las que estn actualmente en el panel frontal. Recuerde que el tamao del panel frontal puede modificarse fcilmente colocando la herramienta de posicionamiento en alguna esquina de la ventana hasta que aparezca la herramienta y arrastrando dicha esquina. Ventana Documentation La ventana de dilogo Documentation contiene las opciones asociadas con la descripcin del VI, y su informacin de ayuda. En el espacio de VI Description, el usuario puede escribir las funciones que el VI realiza, o cualquier comentario que se dese recordar acerca del funcionamiento del mismo.

158

Programacin Grfica para instrumentacin y control

Virtual

Las opciones Help Tag y Help Path permiten accesar un archivo de ayuda asociado con el VI. Dar clic en el icono de ayuda en lnea, en la parte inferior de la ventana de ayuda. Help Tag. Contiene el tpico de ayuda que ser asociado al VI. Help Path. Contiene la direccin del archivo de ayuda asociado con el tpico elegido. Se puede usar el botn Browse para buscar el archivo de ayuda. Ventana Revision History Contiene las opciones asociadas con el registro del VI. El registro histrico se puede accesar seleccionando la opcin View Current Revision History. Para usar cualquiera de las cuatro primeras opciones, primero se debe deshabilitar la opcin Use the Default History Setting from the Options Dialog.

159

Programacin Grfica para instrumentacin y control

Virtual

Add an entry to the history every time this VI is saved . Si se selecciona esta
opcin, LabVIEW guarda en el registro histrico del VI cada vez que ste es salvado a disco.

Prompt for history comment when this VI is closed . Al seleccionar esta opcin la
ventana de historia aparece al momento de cerrar un VI que ha sido modificado desde que se carg en memoria, de tal manera que se pueden registrar comentarios al respecto.

Prompt for history comment when this VI is salved. Si se selecciona esta opcin, la
ventana de historia aparece al momento de guardar el VI, de tal manera que se pueden registrar algunos comentarios.

Record history comments generated by LabVIEW. Si se selecciona esta opcin, LabVIEW inserta comentarios en el registro histrico del VI cuando ocurren
ciertos eventos, como modificaciones al VI o cambios al nombre o direccin del VI.

Ventana Print Options.


Contiene opciones relacionadas con el formato de impresin que se desea dar al VI, incluyendo el control de los mrgenes.

160

Programacin Grfica para instrumentacin y control

Virtual

Automatically Print Panel Every Time VI Completes Execution. LabVIEW


imprime automticamente el contenido del panel frontal en el momento en el que el VI termina su ejecucin. Si el VI fue llamado como subVI, LabVIEW imprime su panel frontal cuando el subVI termina de ejecutarse, antes de regresar al VI que lo llam.

Print Header (name, date, page number). Al seleccionar esta opcin el nombre del
VI, la ltima fecha de modificacin y el nmero de pgina aparecen en la parte superior de cada pgina impresa.

Scale Printed Panel to Fit Page. Esta opcin se emplea para ajustar el tamao de
la ventana del panel frontal.

Surround Panel with Border. Al habilitar esta opcin LabVIEW encierra el panel
frontal en un recuadro.

Use Custom page Margins. Esta opcin permite ajustar los mrgenes de
impresin del panel frontal. Ventana Protection Esta ventana permite al usuario proteger el VI tanto de edicin como copia, ya que si se desea, puede impedir que alguien ajeno modifique el panel frontal o vea el diagrama de bloques. Para establecer una contrasea que proteja el VI, seleccione la opcin Password protected, y posteriormente seleccione la palabra secreta con la opcin Change Passord.

161

Programacin Grfica para instrumentacin y control

Virtual

II.

Opciones de ejecucin de subVIs

Hay varias opciones de ejecucin de un subVI que pueden ser controladas a travs de la ventana de dilogo SubVI Node Setup. Para accesar esta ventana de dilogo active el men emergente del icono del subVI (en el diagrama a bloques del VI que lo est llamando) y seleccione SubVI Node Setup de este men. Como se muestra en la figura aparece una ventana de dilogo que muestra todas las opciones de ejecucin del subVI.

Open Front Panel when loaded. Si se selecciona esta opcin, el panel frontal del VI se
abre cuando ste es cargado en memoria como subVI.

Show Front Panel when called. Al seleccionar esta opcin el panel frontal del VI se
abrir cuando ste se ejecuta como subVI.

Close Afterwards if originally closed. Si se selecciona Show Front panel when called
el panel frontal del VI se abre cuando se ejecuta como subVI. Al seleccionar close Afterwards if originally el panel frontal del VI se cerrar al terminar de ejecutarse, 162
Programacin Grfica para instrumentacin y control

Virtual

si originalmente se encontraba cerrado. Si usted selecciona Show Front Panel When Called en la ventana Execution

Options del men VI Setup del VI X.vi, entonces el panel frontal se abrir siempre que X.vi sea llamado como subVI. Esta opcin afecta, por lo tanto, la ejecucin de todo VI que usa X.vi como subVI. Si usted selecciona show Front Panel when called del men SubVI Node Setup, el panel frontal de X.vi se abrir solamente si este nodo en ese diagrama de bloques es ejecutado. Esta opcin no afecta la ejecucin de otros VIs que usan X.vi como subVI.

Ejercicio 8.1 Objetivo: Utilizar las opciones de configuracin para un subVI. Construir un VI que adquiere la temperatura en intervalos de 0.5 segundos durante 10 segundos. Despus de haber terminado la adquisicin, el VI abre un panel frontal y despliega los datos adquiridos en una grfica. El panel frontal permanece abierto hasta que se oprima un botn booleano. Primero, terminar de construir un VI que abre su panel frontal, despliega la grfica, y espera hasta que se da un clic en un botn booleano. Entonces usar este VI como un subVI en el diagrama a bloques del VI que adquiere la temperatura. Panel Frontal del subVI

1. 2.

Abra el VI Pop-up Graph.vi de la carpeta llamada CURSOIV.LLB. Configure El VI Pop up Graph para que automticamente despliegue su panel frontal y se ejecute cuando el VI es llamado, y que adems cierre su panel frontal al terminar de ejecutarse.
Programacin Grfica para instrumentacin y control

163

Virtual

3.

Configure el VI para que los botones no sean visibles en la barra de herramientas, se realice un centrado automtico del panel frontal, deshabilite las barras de desplazamiento, e impida al usuario el poder cambiar de tamao la ventana durante la ejecucin del VI. Cuando usted deseleccione Show Toolbar When Running, las opciones subsecuentes son deshabilitadas, an y cuando aparezcan seleccionadas en la ventana de dilogo. Para realizar los cambios mencionados en el punto 2 y 3, active emergente del icono del VI (parte superior derecha de la ventana del panel frontal) y seleccione VI Properties. Configure la ventana de dilogo Customize Windows Appearance la cual se encuentra dentro de la ventana Window Appearance, como se muestra a continuacin.

Diagrama a bloques del subVI

164

Programacin Grfica para instrumentacin y control

Virtual

1. Revise el diagrama a bloques mostrado arriba. A continuacin usar este VI como un subVI. Funcin Bundle (de la subpaleta cluster). En este ejercicio, une los datos que pasan a travs del VI que llama, para que el VI pueda graficar los datos en una grfica XY. Funcin Not (de la subpaleta Boolean). En este ejercicio, este nodo invierte el estado booleano del botn HECHO; entonces se ejecutar el ciclo while continuamente hasta que de un clic en el botn (El estado inicial del botn es falso). 2. Guarde y cierre el VI. Panel Frontal del VI principal 1. Abra un panel frontal nuevo y construya el panel como el que se muestra a continuacin. La grfica despliega en tiempo real la temperatura cuando esta es adquirida.

165

Programacin Grfica para instrumentacin y control

Virtual

Diagrama a bloques del VI principal 1. Construya el diagrama a bloques que se muestra a continuacin.

VI Process Monitor (subpaleta User Libraries >>Curso Basics Course). Este VI simula la operacin de un VI monitoreando un proceso en el tiempo. Entrega como resultado un valor a la vez representando la temperatura. Este VI requiere. Funcin Wait Until Next ms Multiple (de la subpaleta Time &Dialog). Este ejercicio, hace que el ciclo For se ejecute cada 500 milisegundos.

166

Programacin Grfica para instrumentacin y control

Virtual

Funcin Multiply (de la subpaleta Numeric). En este ejercicio, esta funcin multiplica cada elemento de un arreglo indexado por 0.5 (un ejemplo del polimorfismo). Esta multiplicacin escala los valores del arreglo para representar en el eje X los intervalos de tiempo en los cuales el VI toma las mediciones. As los valores que contiene el arreglo original, como lo son 0, 1, 2, 3, etc., se convierten en 0.0, 0.5, 1.0, 1.5, etc.

VI pop-up Graph (de la subpaleta Select a VI>> BASCLASS.LLB). Abre su


panel frontal y grafica el arreglo de temperatura contra el arreglo de tiempo. 2. Grabe el VI. Nmbrelo como Use Pop-up Graph.vi 3. Ejecute el VI. Despus de que el VI Use Pop-Up Graph.vi adquiere los datos de temperatura, manda llamar Pop-up Graph como subVI. El panel frontal del subVI aparece y grfica los datos de temperatura. D un clic en el botn HECHO para cerrar el panel frontal del subVI y regresar al VI principal. 4. Cierre todas las ventanas. Fin del ejercicio 8.1

Ejercicio 8.2 Objetivo: Utilizar las opciones de configuracin para un VI y un subVI, as como las opciones de control del panel frontal. 167
Programacin Grfica para instrumentacin y control

Virtual

Construir un sistema de monitoreo de temperatura el cual puede desplegar la medicin de temperatura en tiempo real, guardar los datos de temperatura para anlisis posterior, o bien, desplegar los datos de temperatura previamente almacenados. Asuma que requiere un VI con una interface manejada por el usuario. Por ello, tiene que asegurarse que el programa se ejecute correctamente, ocultar el botn de Paro de la barra de herramientas y que el VI se ejecute cuando es abierto. Panel Frontal

1. Abra un panel frontal nuevo y construya el panel como el que se muestra en la figura anterior. El panel frontal contiene cuatro botones etiquetados. La accin mecnica de cada botn es latch when pressed. Las asignaciones de Key Navigation (teclas de navegacin) de cada botn estn seleccionadas como su etiqueta lo indica. Vea la siguiente seccin para ms informacin. Teclas de navegacin Todos los controles del panel frontal tienen una opcin de teclas de navegacin. Puede utilizar esta opcin para asociar una tecla con un control del panel frontal, as cuando se oprime una tecla en el modo de ejecucin, LabVIEW acta como si se diera un clic en el control. De este modo, el control asociado puede ser activado por una tecla. Si el control es alfanumrico o un control digital, el valor que contiene el control se selecciona, si el control es del tipo booleano se cambia su estado. Para asociar un control del panel frontal a una tecla, seleccione del men emergente del control, la opcin Key Navigation la cual se encuentra dentro del submen Advanced. Aparecer la caja de dilogo que se muestra a continuacin. Seleccione la tecla que quiere asignar al control del men llamado Boolean Properties Boolean.

168

Programacin Grfica para instrumentacin y control

Virtual

La opcin Key Navegation aparece deshabilitada para los indicadores, debido a que no son elementos para entrada de datos.

Los nombres de los controles del panel frontal que aparecen en la lista Existing Bindings corresponden a los controles con esas etiquetas. Diagrama a bloques 169
Programacin Grfica para instrumentacin y control

Virtual

1. Construya el diagrama mostrado arriba de acuerdo a las siguientes indicaciones. Asegrese de dejar todas las opciones falsas vacas. VI Display Temp (de la subpaleta User Libraries >>Basics Course). Este VI simula la medicin de temperatura cada medio segundo y lo grafica tal y como es adquirida la temperatura. Abra el panel frontal del subVI al darle un doble clic y examine el diagrama a bloques. Cierre el panel antes de seguir. VI Display and Log Temp (de la subpaleta User Libraries >> Basics Course). Este VI simula la medicin de temperatura cada medio segundo, la grfica tal como es adquirida la temperatura VI Display Logged Temp (de la subpaleta User Libraries>>Basics Course). Este VI sirve para seleccionar interactivamente un archivo; abre el archivo, lee los datos guardados y los despliega en una grfica. Abra el panel frontal del subVI al darle un doble clic y examine el diagrama a bloques. Cierre el panel antes de seguir. Funcin Not (de la subpaleta Boolean). En este ejercicio, el nodo invierte el estado booleano del botn SALIR, as se ejecuta repetidamente el ciclo while hasta que de un clic sobre el botn u oprima la tecla F10. El estado inicial del botn es Falso. 2. Configure el subVI Display Temp para abrir su panel frontal cuando es llamado. Para ello active el men emergente del icono del subVI y seleccione la opcin SubVI Node Setup. Configure la caja de dilogo como se muestra a continuacin:

170

Programacin Grfica para instrumentacin y control

Virtual

3. Repita el paso 2 para los subVIs Display and Log Temp y Display Logged Temp. 4. Guarde el VI. Nmbrelo Temperature System.vi.
5. Regrese al panel frontal y ejecute el VI. Pruebe todas las opciones. Tambin pruebe el funcionamiento de las teclas, as como tambin de clic sobre los controles. Los tres subVIs llamados desde el diagrama de bloques tienen asignados al botn de return la tecla <enter>. Pruebe el presionar <enter> para volver al panel

frontal del VI principal.

6. Detenga el VI. 7. Cuando est completamente seguro de que el VI trabaje de manera adecuada, configure el VI Temperature System para que automticamente se ejecute cuando el VI es ledo. Llame el men emergente del icono del VI que se encuentra en la parte superior derecha, y seleccione VI Properties men, d un clic sobre la caja de Show Toolbar When Running de manera que aparezca sin seleccionar. 8. Configure el VI para que ninguno de los botones en la paleta de ejecucin sean visibles durante la ejecucin del VI. Para ello, en la ventana de dilogo Customize Window Appearance del VI Properties men, d un clic sobre la caja de Show Toolbar When Running de manera que aparezca sin seleccionar. 9. Guarde todos los subVIs, guarde y cierre el VI Temperature System. 10. Abra el VI Temperature System. El VI deber ejecutarse automticamente cuando sea ledo. Capitulo 9 11. Pare el VI de nuevo. Cuando haya terminado, cierre el VI. Fin del ejercicio 8.2

Adquisicin de Datos

Introduccin Este captulo introduce el uso de Tarjetas de Adquisicin de Datos (DAQ Boards) y la utilera de configuracin NI-DAQ.
Programacin Grfica para instrumentacin y control

171

Virtual

Al trmino de este captulo, usted habr aprendido: I. II. IV. V. Como usar la utilera de configuracin NI-DAQ Como adquirir seales anlogas Como realizar adquisiciones mltiples Cmo manejar las lneas digitales de entrada y salida

III. Como generar seales anlogas

I. Introduccin La librera de adquisicin de datos (Data Acquisition) de LabVIEW contiene VIs para controlar las tarjetas de adquisicin de datos (DAQ Boards) de National Instruments. Otros fabricantes de tarjetas de adquisicin de datos (Computer Board, Cyber Research, etc) ofrecen generalmente sus propias libreras (VIs de bajo nivel) de sus productos para manipularlos o simplemente accesarlos desde LabVIEW. Frecuentemente, una tarjeta puede realizar una gran variedad de funciones, conversiones anlogo a digital, conversiones digital a anlogo, lectura de puertos digitales y operaciones de conteo o temporizacin. Este tipo de tarjetas son conocidas como tarjetas multifunciones de adquisicin de datos. Sin embargo, 172
Programacin Grfica para instrumentacin y control

Virtual

tambin existe en el mercado un gran nmero de tarjetas de adquisicin de datos de funciones especficas, como puede ser de nicamente conversiones anlogo a digital. Existe una gran variedad de tarjetas de adquisicin de datos desde tarjetas de bajo costo hasta tarjetas de funciones especiales. Las caractersticas ms importantes que definen el costo y la funcionalidad de la tarjeta son: El nmero de puertos de entradas anlogas El nmero de puertos de salidas anlogas El nmero de puertos de entradas / salidas digitales El nmero de contadores disponibles para el usuario La velocidad mxima de muestreo de la tarjeta La resolucin de los puertos anlogos El tipo de bus de datos para conexin de la tarjeta con la PC.

Componentes de un sistema de adquisicin de datos La tarea fundamental de un sistema de adquisicin de datos es medir o generar una seal fsica real. Sin embargo, antes de que un sistema basado en computadora pueda medir una seal fsica, generalmente, un sensor o transductor debe convertir la seal fsica en una seal elctrica como puede ser voltaje o corriente. Frecuentemente se considera a la tarjeta de adquisicin de datos como un sistema completo de adquisicin de datos, sin embargo, la tarjeta es nicamente uno de los componentes del sistema. Como en la mayora de los instrumentos, usted en algunos casos no puede conectar las seales directamente a la tarjeta de adquisiciones. Antes de que la tarjeta convierta la seal en informacin digital debe realizarse una etapa de acondicionamiento de la seal, que puede consistir en filtrar la seal, amplificarla, atenuarla, etc. Finalmente debe de existir un programa en la PC para controlar el proceso de adquisicin de la seal, analizar los datos y mostrar los resultados. La siguiente figura muestra las diferentes opciones para la implementacin de un sistema de adquisicin de datos. Aqu se pueden observar desde soluciones porttiles hasta aplicaciones industriales ms robustas, incluyendo, para efectos de comunicacin, desde puertos seriales hasta puertos PCMCIA.

173

Programacin Grfica para instrumentacin y control

Virtual

Configuracin del Hardware de Adquisicin de Datos Se deben realizar varias acciones antes de que usted pueda usar los VIs de adquisicin de datos en LabVIEW.

LabVIEW instala una utilera de configuracin, NI-DAQ Configuration Utility, para


establecer todos las parmetros de configuracin del hardware de adquisicin. Despus de instalar su tarjeta de adquisicin de datos en su computadora, se debe correr esta utilera de configuracin. La utilera lee la informacin que el Manejador de Dispositivos (device Manager) tiene registrada y asigna un nmero de dispositivo a cada tarjeta de adquisicin de datos del sistema. Usted usar este nmero de dispositivo para hacer referencia a la tarjeta en LabVIEW. Ejercicio 9.1 Objetivo: Adquisicin de una seal anloga usando una tarjeta de adquisicin de datos. Usted construir un VI que mida voltaje de salida del sensor de temperatura LM35. La salida del sensor de temperatura es un voltaje proporcional a la temperatura. El sensor est cableado al canal 0 de la tarjeta.

Panel Frontal

174

Programacin Grfica para instrumentacin y control

Virtual

1. Abra un panel nuevo 2. Construya el panel frontal que se muestra anteriormente. Asegrese de modificar los controles e indicadores como se describen. El control Dispositivo especifica el nmero de dispositivo de la tarjeta de adquisicin de datos. Los controles Limite Superior y Lmite Inferior especifican el rango de la seal de entrada. El medidor Voltaje (de la subpaleta Numeric) muestra la lectura de voltaje.

El VI automticamente ajusta la ganancia de la tarjeta DAQ dependiendo de los valores especificados por los controles Limite Superior y Lmite Inferior.
3. Configure la escala del medidor de 0.0 a 0.5. Para hacer esto, haga doble clic en 10.0 con la herramienta de etiquetado (Labeling tool) y escriba 0.5 (usted puede necesitar alargar el medidor para tener la escala mostrada en la figura anterior).

175

Programacin Grfica para instrumentacin y control

Virtual

1. Construya el diagrama a bloques que se muestra en la Figura.

El VI DAQmx Create Virtual Channel.vi (de la subpaleta DAQmx Data Adquisition >> DAQmx Create Virtual Channel.vi ). En este ejercicio, con este VI se crea el canal de adquisicin fsico, las unidades (volts) y se establecen los lmites mximos y mnimos de la seal de entrada, asi como tambin la configuracin de la terminal de entrada (Differential o RSE).

Este VI lee una muestra simple de datos de punto flotante de una tarea que contiene un canal simple de entrada analgica. 2. Regrese al Panel Frontal, encienda el interruptor de Paro de VI , y eejcute el VI. El medidor debe de mostrar el voltaje de salida del sensor de temperatura. Coloque su dedo en el sensor de temperatura y note que el voltaje se incrementa. Si ocurre un error, los VIs Easy I/O automticamente despliegan una caja de dialgo mostrando el cdigo de error y una descripcin del mismo. 3. Para simular una condicin de error, introduczca un valor de 0 en el control de canales fsicos, y ejecute el VI. Una caja de dialgo debe mostrar el error, 4. Guarde y cierre el VI. Nmbrelo Voltmeter.vi. Usted usar este VI ms adelante en el Ejercicio 9.3. Fin del ejercicio 9.1 Ejercicio 9.2 Objetivo: Adquirir y desplegar una forma de onda analgica 176
Programacin Grfica para instrumentacin y control

Virtual

Usted construir un VI que utilice los VIs de adquisicin de datos para muestrear una seal y mostrarla en una grfica. Para este ejercicio, conecte el canal analgico de entrada 1 la seal senoidal del generador de funciones.

CAPITULO 10

177

Programacin Grfica para instrumentacin y control

Virtual

COMUNICACIN SERIAL

Introduccin En este capitulo se describen las opciones que LabVIEW ofrece para el control de instrumentos a travs del puerto serial de la computadora.

Al finalizar este capitulo usted habr aprendido: 1. Cuales son los principios bsicos de la comunicacin serial. 2. Como usar los VIs de configuracin y operacin del puerto serial. 3. Como transmitir datos entre dos computadoras usandso el puerto serial

178

Programacin Grfica para instrumentacin y control

Virtual