Sunteți pe pagina 1din 32

TUTORIAL LABVIEW

JUAN CAMILO SANCHEZ COD 2420051027

Presentado a: Prof. Luis Hernando Das.

UNIVERSIDAD DE IBAGUE FACULTAD DE INENIERIA PROGRAMA INGENIERIA ELECTRONICA PROYECTOS IBAGUE 2011

TABLA DE CONTENIDO RESUMEN 0.1.1 INTRODUCCIN 0.1.2 MARCO TERIC0 1. CONOCIENDO LABVIEW. 1.1 Que es labview? 1.2 COMPONENTES 1.2.1 Panel frontal 1.2.2 Diagrama de bloques 1.3 PALETAS 1.3.1 Paletas de herramienta 1.3.2 paletas de control 1.3.3 paletas de funcin 1.4 BARRA DE HERRAMIENTAS DE ESTADO 2. CREAR UN IV 2.1. ABRIR Y EECUTAR UN IV 2.2. CREANDO UN INSTUMENTO VIRTUAL 2.2.1 CONECTAR DIAGRAMAS DE BLOQUES 2.2.2 CABLEAR OBJETOS AUTOMATICAMENTE 2.3. FLUJO DE DATOS 2.4 USO DE AYUDAS 3.1 ESTRUCTURAS Y EJEMPLO 3.1. ESTRUCTURAS 3.1.1 CASE ESTRUCTURE 3.1.2 SEQUENCE ESTRUCTURE 3.1.3 FOR LOOP 3.1.4 WHILE LOOP

3.2 VARIABLES LOCALES Y GLOBALES 3.2.1 VARIABLES LOCALES 3.2.2 VARIABLES GLOBALES 3.3 ERRORES 3.4 TIPS 3.5 EJEMPLO

CAPITULO 1 1. CONOCIENDO LABVIEW

1.1 Qu es LabVIEW? LabVIEW (Laboratory Virtual Instrument Engineering Workbench) es un lenguaje de programacin grfico para el diseo de sistemas de adquisicin de datos, instrumentacin y control. Labview permite disear interfaces de usuario mediante una consola interactivo basado en software. Usted puede disear especificando su sistema funcional, su diagrama de bloques o una notacin de diseo de ingeniera. Labview es a la vez compatible con herramientas de desarrollo similares y puede trabajar con programas de otra rea de Aplicacin, como por ejemplo Matlab. Tiene la ventaja de que permite una fcil integracin con hardware, especficamente con tarjetas de medicin, adquisicin y procesamiento de datos (incluyendo adquisicin de imgenes). Los Programas en LabVIEW son llamados instrumentos virtuales (VIs). Un instrumento virtual es un modulo de software que simula el panel frontal de instrumento comn y, apoyndose en elementos de hardware accesibles por el PC (tarjetas de adquisicin, tarjetas DSP, instrumentos accesibles va GPIB, VXI, RS-232), realiza una serie de medidas como si se tratase de un instrumento real. LabVIEW constituye un revolucionario sistema de programacin grfica para aplicaciones que involucren adquisicin, control, anlisis y presentacin de datos. Las ventajas que proporciona el empleo de LabVIEW se resumen en las siguientes: Se reduce el tiempo de desarrollo de las aplicaciones al menos de 4 a 10 veces, ya que es muy intuitivo y fcil de aprender. Dota de gran flexibilidad al sistema, permitiendo cambios y actualizaciones tanto del hardware como del software. Da la posibilidad a los usuarios de crear soluciones completas y complejas. Con un nico sistema de desarrollo se integran las funciones de adquisicin, anlisis y presentacin de datos. El sistema est dotado de un compilador grfico para lograr la mxima velocidad de ejecucin posible. Tiene la posibilidad de incorporar aplicaciones escritas en otros lenguajes. LabVIEW es un entorno de programacin destinado al desarrollo de aplicaciones, similar a los sistemas de desarrollo comerciales que utilizan el lenguaje C o BASIC. Sin embargo, LabVIEW se diferencia de dichos programas en un importante aspecto: los citados lenguajes de programacin se basan en lneas de texto para crear el cdigo fuente del programa, mientras que LabVIEW emplea la programacin grfica o lenguaje G para crear programas basados en diagramas de bloques.

Para el empleo de LabVIEW no se requiere gran experiencia en programacin, ya que se emplean iconos, trminos e ideas familiares a cientficos e ingenieros, y se apoya sobre smbolos grficos en lugar de lenguaje escrito para construir las aplicaciones. Por ello resulta mucho ms intuitivo que el resto de lenguajes de programacin convencionales. LabVIEW posee extensas libreras de funciones y subrutinas. Adems de las funciones bsicas de todo lenguaje de programacin, LabVIEW incluye libreras especficas para la adquisicin de datos, control de instrumentacin VXI, GPIB y comunicacin serie, anlisis presentacin y guardado de datos.

1.2 Componentes Todos los VIs tienen un panel frontal y un diagrama de bloques. Las paletas contienen las opciones que se emplean para crear y modificar los VIs. A continuacin se proceder a realizar una descripcin de estos conceptos. Panel frontal: Cmo el usuario interacciona con el VIs. Diagrama de bloque: El cdigo que controla el programa. Paletas: Medios para conectar un VI con otros VIs.

1.2.1 PANEL FRONTAL

El panel frontal es la interface del usuario con el VI. Usted construye el panel frontal con controles e indicadores, que son las entradas y salidas que interactan con las terminales del VI, respectivamente. Los controles son botones, botones de empuje, marcadores y otros componentes de entradas. Los indicadores son las graficas, luces y otros dispositivos. Los controles simulan instrumentos de entradas de equipos y suministra datos al diagrama de bloques del VI. Los indicadores simulan salidas de instrumentos y suministra datos que el diagrama de bloques adquiere o genera. En esta imagen, el switch de poder (encendido o apagado) es un control booleano. Un valor booleano contiene ambos un valor verdadero o falso. El valor es falso hasta que el switch se presione. Cuando el switch se presiona, el valor se convierte en verdadero. El indicador del historial de temperatura es una grafica de forma de onda. Esta muestra valores mltiples. En este caso, la grafica sealara grados F versus tiempo (seg.).

1.2.2 DIAGRAMA DE BLOQUES

El diagrama de bloque contiene el cdigo fuente grafico. Los objetos del panel frontal aparecen como terminales en el diagrama de bloque. Adicionalmente, el diagrama de bloque contiene funciones y estructuras incorporadas en las bibliotecas de LabVIEW VI. Los cables conectan cada uno de los nodos en el diagrama de bloques, incluyendo controles e indicadores de terminal, funciones y estructuras. En este diagrama de bloque, el subVI Temp llama a la subrutina la cual obtiene una temperatura desde una tarjeta de adquisicin de datos (DAQ). Esta temperatura es graficada junto con el valor average de la temperatura en la grafica de forma de onda Temperature History. El switch de poder (Power) es un control booleano en el panel frontal el cual va a detener la ejecucin de la estructura mientras ( While Loop). La estructura mientras (While Loop) tambin contiene una funcin de tiempo para controlar que tan frecuentemente la estructura se repite. Los controles e indicadores que se colocaron previamente en el Panel Frontal, se materializan en el diagrama de bloques mediante los terminales.

El diagrama de bloques se construye conectando los distintos objetos entre s, como si de un circuito se tratara. Los cables unen terminales de entrada y salida con los objetos correspondientes, y por ellos fluyen los datos. LabVIEW posee una extensa biblioteca de funciones, entre ellas, aritmticas, comparaciones, conversiones, funciones de entrada/salida, de anlisis, etc. Las estructuras, similares a las declaraciones causales y a los bucles en lenguajes Convencionales, ejecutan el cdigo que contienen de forma condicional o repetitiva (bucle for, while, case,...). Los cables son las trayectorias que siguen los datos desde su origen hasta su destino, ya sea una funcin, una estructura, un terminal, etc. Cada cable tiene un color o un estilo diferente, lo que diferencia unos tipos de datos de otros.

1.3 PALETAS

Las paletas de LabVIEW proporcionan las herramientas que se requieren para crear y modificar tanto el panel frontal como el diagrama de bloques. Existen las siguientes paletas: 1.3.1 Paleta de herramientas (Tools palette)

Se emplea tanto en el panel frontal como en el diagrama de bloques. Contiene las herramientas necesarias para editar y depurar los objetos tanto del panel frontal como del diagrama de bloques. Las opciones que presenta esta paleta son las siguiente:

Operating tool Cambia el valor de los controles. Positioning tool Desplaza, cambia de tamao y selecciona los objetos. Labeling tool Edita texto y crea etiquetas. Wiring tool Une los objetos en el diagrama de bloques.

Object Pop-up Menu tool Abre el men desplegable de un objeto.

Scroll tool Desplaza la pantalla sin necesidad de emplear las barras de desplazamiento. Breakpoint tool Fija puntos de interrupcin de la ejecucin del programa en VIs, funciones y estructuras. Probe tool Crea puntos de prueba en los cables, en los que se puede visualizar el valor del dato que fluya por dicho cable en cada instante. Color Copy tool Copia el color para despus establecerlo mediante la siguiente herramienta. Color tool Establece el color de fondo y el de los objetos

1.3.2 Paleta de controles (Controls palette)

Se utiliza nicamente en el panel frontal. Contiene todos los controles e indicadores que se emplearn para crear la interfaz del VI con el usuario. El men Controls de la ventana correspondiente al panel frontal contiene las siguientes opciones: Numeric Para la introduccin y visualizacin de cantidades numricas. Boolean Para la entrada y visualizacin de valores booleanos. String & Table Para la entrada y visualizacin de texto. List & Ring Para visualizar y/o seleccionar una lista de opciones. Array & Cluster Para agrupar elementos. Graph Para representar grficamente los datos. Path & RefNum Para gestin de archivos.

Decorations Para introducir decoraciones en el panel frontal. User Controls Para elegir un control creado por el propio usuario. ActiveX Para transferir datos y programas de unas aplicaciones a otras dentro de Windows. Select a Control Para seleccionar cualquier control.

1.3.3 Paleta de funciones (functions palette)

Use la paleta de funciones (Functions), para construir un diagrama de bloque. La paleta de funciones esta disponible solamente en el diagrama de bloque. Seleccione

WindowShow Functions Palette o haga un click derecho en el espacio de trabajo del diagrama de bloque para desplegar la paleta de funciones. Usted tambin puede desplegar la paleta de funciones dando un click derecho en una rea abierta del diagrama de bloques. Para desaparecer la paleta de funciones presione el botn en la parte superior izquierda de la paleta. Se emplea en el diseo del diagrama de bloques. La paleta de funciones contiene todos los objetos que se emplean en la implementacin del programa del VI, ya sean funciones aritmticas, de entrada/salida de seales, entrada/salidad de datos a fichero, adquisicin de seales, temporizacin de la ejecucin del programa, Para seleccionar una funcin o estructura concretas, se debe desplegar el men Functions y elegir entre las opciones que aparecen. A continuacin se enumeran todas ellas, junto con una pequea definicin. Structures Muestra las estructuras de control del programa, junto con las variables locales y globales. Numeric Muestra funciones aritmticas y constantes numricas. Boolean Muestra funciones y constantes lgicas. String Muestra funciones para manipular cadenas de caracteres, as como constantes de caracteres.

Array Contiene funciones tiles para procesar datos en forma de vectores, as como constantes de vectores. Cluster Contiene funciones tiles para procesar datos procedentes de grficas y destinados a ser representados en ellas Comparison Muestra funciones que sirven para comparar nmeros, valores booleanos o cadenas de caracteres. Time & Dialog Contiene funciones para trabajar con cuadros de dilogo, introducir contadores y retardos, etc.

File I/O Muestra funciones para operar con ficheros.

Communication Muestra diversas funciones que sirven para comunicar varios ordenadores entre s. Instrument I/O facilita la comunicacin con instrumentos perifricos que siguen la norma ANSI/IEEE 488.2-1987, y el control del puerto serie. Data Acquisition Contiene a su vez un submen donde puede elegirse entre distintas libreras de la adquisicin de datos.

Analysis Contiene un submen en el que se puede elegir entre una amplia gama de funciones matemticas de anlisis. Tutorial Incluye un men de VIs que se utilizan en el manual LabVIEW . Advanced Contiene diversos submens que permiten el control de la ayuda, de losVIs, manipulacin de datos,

Instrument drivers En l se muestran los drivers disponibles de distintos instrumentos.

User Libraries Muestra las libreras definidas por el usuario. . Aplication control Contiene varias funciones que regulan el funcionamiento de la propia aplicacin en ejecucin.

Select a VI Permite seleccionar cualquier VI para

1.4 BARRA DE HERRAMIENTAS DE ESTADO

Botn d (Run) para ejecutar el VI. Mientras el VI se esta ejecutando, el botn de ejecucin aparecer con una flecha negra si es que el VI es un VI principal, lo que significa que no ha sido llamado por otro VI y por lo tanto este no es un VI. Botn (Continuous Run) para ejecutar el VI hasta que el botn de cancelacin de ejecucin o de pausa sea presionado. Usted tambin puede pulsar este botn nuevamente para deshabilitar la ejecucin continua. Botn (Abort Execution) aparece. Presione este botn para detener el VI inmediatamente.

Botn de pausa (Pause) para detener momentneamente la ejecucin de un VI. Cuando usted presiona el botn de Pausa, LabVIEW seala la posicin donde usted detuvo la ejecucin en el diagrama de bloque. Pulse el botn de Pausa nuevamente para que el VI continu ejecutndose. Men Configuracin de Textos (Text Settings) para cambiar el tipo de fuente (letra) del VI, incluyendo el tamao, estilo y color. Men Alineamiento de Objetos (Align Objects) para alinear objetos con respecto a los ejes, incluyendo eje vertical, superior, izquierdo, etc. Men Distribucin de Objetos (Distribute Objects) para espaciar objetos uniformemente, incluyendo espacios vacos, compresiones, etc. Men Reordenamiento (Reorder) cuando tenga objetos superpuestos unos con otros y usted quiera definir cual esta enfrente de quien y cual atrs. Seleccione uno de los objetos con la herramienta de posicionamiento y seleccione entre Move Forward (mover hacia adelante), Move Backward (mover hacia atrs), Move to Front (mover al frente) y Move to Back (mover hacia atrs). Botn de ejecucin resaltada (Highlight Execution) para ver el flujo de informacin en el diagrama de bloques. Pulse el botn nuevamente para detener este tipo de ejecucin resaltada. Botn de entrada al ciclo (Step Into) para entrar un paso adentro de un ciclo, un SubVI, etc. Entrando un paso a la vez adentro de un VI le permite introducirse en la VI nodo a nodo. Cada nodo se resalta para sealar cuando esta listo para ejecutarse. Al entrar un paso adentro de un nodo usted esta listo para caminar paso a paso adentro del nodo. Botn de sobre (Step Over) para posicionarse encima de un ciclo, un SubVI, etc. Al posicionarse encima del nodo, usted ejecuta el nodo sin entrar paso a paso adentro del nodo. Botn de Salida del ciclo (Step Over) para salirse de un ciclo, SubVI, etc.

CAPITULO 2 CREAR UN INSTRUMENTO VIRTUAL 2.1 ABRIR Y EJECUTAR UN VI 1. Seleccione Start Programs National Instruments LabVIEW 7.0 LabVIEW para lanzar LabVIEW. Aparece la ventana de dialogo de LabVIEW. 2. Seleccione Find Examples del men de ayuda (Help). La ventana de dialogo que aparece da la lista y enlaces a todos los VIs de ejemplo de LabVIEW. 3. Usted puede buscar ejemplo por categoras, o puede utilizar palabras claves en su bsqueda. Haga clic en la vieta de bsqueda (Search) para abrir el buscador de palabras claves. 4. En la caja de Enter Keyword(s) escriba Signal 5. Una lista de temas relacionados aparecer en la ventana de ejemplos (examples). Haga doble-clic en signals, esto generara una lista de ejemplos en el lado derecho. 6. Haga clic en cualquier programa para ver una descripcin detallada del ejemplo. Haga doble clic sobre Signal Generation and Processing.vi para lanzar el ejemplo. Esto abrir el panel frontal del VI Signal Generation and Processing vi. Examine el VI y ejectelo. Cambie las frecuencias y tipos de seales de entradas y note como el despliegue de las graficas cambia. Cambie la ventana de procesamiento de seales (Signal Processing Window) y opciones de filtrado (Filter options). Despus de que haya examinado el VI y las diferentes opciones que puede cambiar, pare el VI presionando el botn de paro (Stop button). Nota Usted tambin puede abrir un VI al hacer clic en el botn de Open VI y navegar a labview\examples\apps\demos.llb\Signal Generation and Processing.vi.

2.2 CREANDO UN VI

Cuando usted crea un objeto en el panel frontal, una terminal es creada en el diagrama de bloques. Estas terminales le dan acceso a los objetos del panel frontal del cdigo creado mediante el diagrama de bloque. Cada terminal contiene informacin til referente al objeto al cual corresponde en el panel frontal. Por ejemplo, el color y los smbolos proporcionan el tipo de dato. Nmeros de punto flotante y de doble-precisin, son representados con terminales anaranjadas y las letras DBL. Las terminales booleanas son verdes y son representadas por las letras TF. En general, las terminales anaranjadas deben unirse (cablearse) con las terminales anaranjadas, verdes con verdes, y as sucesivamente. Esta no es una regla que no se puede romper; por ejemplo LabVIEW permitir al usuario conectar una terminal azul (valor entero) a una terminal anaranjada (valor fraccional). Pero en la mayora de casos, busque mejor una igualdad en colores. Los controles tienen una flecha en el lado derecho y tienen un borde grueso. Los indicadores tienen una flecha en el lado izquierdo y un borde fino. Reglas lgicas pueden ser aplicadas al conectar en LabVIEW: Cada cable debe tener una (pero solo una) fuente (o control), y cada cable puede tener varios destinos (o indicadores). El programa en esta diapositiva toma datos de A y B y pasa valores a una funcin de adicin y a una funcin de resta. Los resultados son mostrados en los indicadores apropiados. 2.2.1 CONECTAR DIAGRAMAS DE BLOQUES Adems de los terminales del panel frontal, el diagrama de bloques contiene funciones. Cada funcin puede tener mltiples terminales de entradas y salidas. La conexin de estas terminales es una parte muy importante de la programacin en LabVIEW. Una vez que usted tenga cierta experiencia programado en LabVIEW, la conexin de cables se le har mas fcil. Primero puede que necesite ayuda. En seguida se le muestra algunas recomendaciones para comenzar: La herramienta para conectar o de cableado es utilizada para conectarse a los nodos de las funciones. Cuando usted apunte con la herramienta de cableado, apunte con el extremo del cable que cuelga del carrete. Aqu es donde el cable ser colocado. Mientras usted mueve la herramienta de cableado sobre las funciones, observe la vieta amarilla que aparece. Esto le dir el nombre de la terminal al que se esta conectando.

Mientras usted mueva la herramienta de cableado encima de una terminal, esta va a mostrar informacin. Esto le ayudara a identificar donde se va a unir el cable. Para mas ayuda con los terminales, haga clic derecho en la funcin y seleccione Visible Items o Objetos Visibles>>Terminals o Terminales. Un dibujo de la funcin ser colocada atrs para revelar las terminales de la conexin. Note los colores - estos corresponden a los tipos de datos utilizados por los terminales del panel frontal. Para ayuda adicional, seleccione Help >> Show Context Help, o presione CTRL+H. Esto mostrara la ventana de ayuda en contexto. A medida que uno mueva el raton (mouse) sobre la funcin, esta ventana le mostrara la funcin, terminales, y una breve descripcin. Utilice esto junto con otras herramientas para ayudarse mientras conecta los cables. Si el cableado no se ve muy bien, haga clic derecho en el cable que se desea arreglar y escoja la opcin de Clean Up Wire o Limpieza del Cable para que automticamente el cable haga su ruta de nuevo. El cableado es muy flexible en LabVIEW. Experimente con combinaciones de clics y/o teclas cuando este cableando. Aqu hay algunas de las caractersticas mas a menudo utilizadas. El hacer un simple, doble, y triple clic en el cable selecciona el cable para moverlo o para borrarlo. El hacer un clic mientras se esta cableando hace un doblez en el cable. Haciendo clic derecho o presionando el botn Esc mientras se esta cableando cancela la operacin de cableado. No se preocupe por el color de los cables. LabVIEW seleccionar automticamente el cable correcto y adecuado para cada situacin.

2.2.2 Cablear los Objetos Automticamente

LabVIEW cablea automticamente los objetos a medida que usted los coloca en el diagrama de bloque. Tambin puede cablear automticamente objetos que ya estn colocados en el diagrama de bloque. LabVIEW conecta la terminal que mejor combina (match) y deja las terminales que no combinan (match) sin conectar. A medida que usted mueve un objeto seleccionado cerca de otros objetos en el diagrama de bloque, LabVIEW dibuja cables temporales para mostrarle conexiones validas. Cuando usted suelta el botn del mouse para poner el objeto en el diagrama de bloque, LabVIEW conecta automticamente los cables. Cambie al cableado automtico presionando el espaciador (spacebar) mientras mueve un objeto utilizando la herramienta de posicionamiento (Positioning tool). Puede ajustarlas opciones del cableado automtico seleccionando Tools >> Options y seleccionando Block Diagram de el men superior principal.

2.3 FLUJO DE DATOS

LabVIEW sigue un modelo de flujo de datos para correr los VIs. Un nodo del diagrama de bloque se ejecuta cuando todas sus entradas estn disponibles. Cuando un nodo completa la ejecucin, suministra datos a sus terminales de salida y pasa los datos de salida al siguiente nodo en la trayectoria del flujo de datos. Visual Basic, C++, JAVA y otros lenguajes de programacin basados en texto, siguen un modelo de control de flujo de la ejecucin de un programa. En flujo de control, el orden secuencial de los elementos del programa determina el orden de ejecucin de un programa. Considere el diagrama de bloque que se encuentra arriba. Este suma dos nmeros y luego resta 50 del resultado de la suma. En este caso, el diagrama de bloque se ejecuta de izquierda a derecha, no porque los objetos estn puestos en ese orden, sino porque una de las entradas de la funcin de resta no es valida hasta que la funcin de suma o adicin haya terminado su ejecucin y pasado los datos a la funcin de resta. Recuerde que un nodo se ejecuta solamente cuando tiene datos disponibles en todas sus terminales de entrada, y suministra datos a sus terminales de salidas solamente cuando termina su ejecucin. En el cdigo de la derecha, considere cual segmento del cdigo se ejecutara primero la suma, el nmero aleatorio, o la funcin de divisin. No se puede saber porque las entradas a las funciones de suma y divisin estn disponibles al mismo tiempo, y la funcin de Nmero aleatorio no tiene entradas. En una situacin en donde un segmento del cdigo se

debe ejecutar antes que otro, y no existe dependencia de datos entre las funciones, utilice una estructura de Secuencia para forzar el orden de la ejecucin.

2.4 USO DE AYUDAS

Utilice la ventana de Context Help (Ayuda Contextual) y LabVIEW Help (Ayuda de LabViEW) para ayudarle a construir o editar los VIs. Refirase a la ayuda de LabVIEW y a los manuales para mas informacin. Ventana de Ayuda Contextual (Context Help Window ) Para desplegar la ventana de Context Help, seleccione Help>>Show Context Help o presione las teclas <Ctrl-H>. Cuando mueva el cursor sobre el panel frontal y los objetos del diagrama de bloque, la ventana de Context Help despliega el icono de los subVIs, funciones, constantes, controles e indicadores, con cables adjuntos a cada una de sus terminales. Cuando mueva el cursor sobre la caja de opciones de dialogo, la ventana de Context Help despliega descripciones de esas opciones.

En la ventana, las conexiones requeridas estn en negrilla, las conexiones recomendadas en texto normal, y las conexiones opcionales estn poco claras o no aparecen. Arriba se presenta un ejemplo de la ventana de Context Help. Haga un clic en el botn de Simple/Detailed Context Help localizado en la esquina inferior izquierda de la ventana de Context Help para distinguir entre la ayuda contextual simple y detallada. El modo simple enfatiza las conexiones importantes. Las terminales opcionales son mostradas por segmentos de cables, informndole de la existencia de otras conexiones. Haga clic en el botn de Lock Context Help para congelar el contenido actual de la ventana de la Context Help. Cuando los contenidos estn congelados, el mover el cursor sobre otros objetos no cambia los contenidos de la ventana. Para descongelar la ventana, haga clic nuevamente en el botn. Usted tambin puede tener acceso a esta opcin desde el men de ayuda (Help). Haga clic en el botn de More Help (mas ayuda) para desplegar el tema correspondiente en LabVIEW Help, el cual describe el objeto en forma detallada. LabVIEW Help (Ayuda de LabVIEW) Puede acceder a LabVIEW Help ya sea haciendo clic en el botn de More Help en la ventana de Context Help, seleccionando HelpVI, Function, & How-To Help, haciendo clic en la oracin Click here for more help en la ventana de Context Help o presionando <Ctrl-?>. La LabVIEW Help contiene descripciones detalladas de casi todos los mens, herramientas, VIs y funciones. Tambin incluye instrucciones paso-a-paso para la utilizacin de muchas caractersticas de LabVIEW y enlaces al Tutorial de LabVIEW, versiones en PDF de todos los manuales y Notas de Aplicacin de LabVIEW, adems de recursos de soporte tcnico en el sitio web de National Instruments.

CAPITULO 3 3.1 ESTRUCTURAS

Las estructuras se comportan como cualquier otro nodo en el diagrama de bloques, ejecutando automticamente lo que est programado en su interior una vez tiene disponibles los datos de entrada, y una vez ejecutadas las instrucciones requeridas, Suministran los correspondientes valores a los cables unidos a sus salidas. Sin embargo, Cada estructura ejecuta su subdiagrama de acuerdo con las reglas especficas que rigen su Comportamiento, y que se especifican a continuacin. Un subdiagrama es una coleccin de nodos, cables y terminales situados en el interior del rectngulo que constituye la estructura. El For Loop y el While Loop nicamente tienen un subdiagrama. El Case Structure y el Sequence Structure, sin embargo, pueden tener mltiples subdiagramas, superpuestos como si se tratara de cartas en una baraja, por lo que en el diagrama de bloques nicamente ser posible visualizar al tiempo uno de ellos. Los subdiagramas se construyes del mismo modo que el resto del programa Las siguientes estructuras se hallan disponibles en el lenguaje G.

3.1.1 Case Structure

Al igual que otras estructuras posee varios subdiagramas, que se superponen como si de una baraja de cartas se tratara. En la parte superior del subdiagrama aparece el identificador del que se est representando en pantalla. A ambos lados de este identificador aparecen unas flechas que permiten pasar de un subdiagrama a otro. En este caso el identificador es un valor que selecciona el subdiagrama que se debe ejecutar en cada momento. La estructura case consta de un terminal llamado selector y un conjunto de subdiagramas, cada uno de los cuales esta dentro de un case o suceso y etiquetado por un identificador del mismo tipo que el selector; este ser booleano o numrico. Si se conecta un valor booleano al selector, la estructura tendr dos Case: False y True. Pero si se conecta un valor numrico la estructura podra tener hasta 214 case. En este caso la estructura Case engloba dos sentencias diferentes de otros lenguajes convencionales: 1.- If condicin true then ejecutar case true else ejecutar case false 2.- Case selector of 1: ejecutar case 1, n: ejecutar case n Case no cuenta con los registros de desplazamiento de las estructuras iterativas pero si podemos crear los tneles para sacar o introducir datos. Si un case o suceso proporciona un dato de salida a una determinada variable ser necesario que todos los dems tambin lo hagan, si no ocurre de esta manera ser imposible ejecutar el programa.

3.1.2 Sequence Structure

Este tipo de estructuras presenta varios subdiagramas, superpuestos como en una baraja de cartas, de modo que nicamente se puede visualizar una en pantalla. Tambin poseen un identificador del sudiagrama mostrado en su parte superior, con posibilidad de avanzar o retroceder a otros subdiagramas gracias a las flechas situadas a ambos lados del mismo. Esta estructura no tiene su homologa en los diferentes lenguajes convencionales, ya que estos las sentencias se ejecutan en el orden de aparicin pero, como ya sabemos, en LabVIEW una funcin se ejecuta cuando tiene disponible todos los datos de entrada. Se produce de esta manera una dependencia de datos que hace que la funcin que recibe un dato directa o indirectamente de otra se ejecute siempre despues, crendose un flujo de programa. Pero existen ocasiones en que esta dependencia de datos no existe y es necesario que un subdiagrama se ejecute antes que otro, es en estos casos cuando usaremos la estructura sequence para forzar un determinado flujo de datos. Cada subdiagrama estar contenido en un frame o marco y estos se ejecutara en orden de aparicin: Primero el frame 0 o marco 0, despues el frame 1 y as, sucesivamente, hasta el ultimo. Al contrario del case, si un frame aporta un dato de salida a una variable los dems no tendrn por que hacerlo. Pero tendremos que tener en cuenta que el dato estar solamente disponible cuando se ejecute el ultimo frame y no cuando se ejecute el frame que transfiere el dato. 3.1.3 For Loop

Es el equivalente al bucle for en los lenguajes de programacin convencionales. Ejecuta el cdigo dispuesto en su interior un nmero determinado de veces. Usaremos For Loop cuando queramos que una operacin se repita un nmero determinado de veces. Su equivalente en lenguaje convencional es: For i= to N-1 Ejecuta subdiagrama Al colocar un For Loop en la ventana Diagram observamos que tiene asociados dos terminales: 1.- Terminal contador: Contiene el nmero de veces que se ha ejecutado la estructura. El valor del contador se fijara externamente (ver tambin Arrays en el capitulo 6). 2.- Terminal de interaccin: indica el nmero de veces que se ha ejecutado la estructura: Cero durante la primera iteracin, uno durante la segunda y as hasta N-1.

Ambos terminales son accesibles desde el interior de la estructura, es decir, sus valores podrn formar parte del subgdiagrama pero en ningn caso se podrn modificar. Para pasar valores de una iteracin a otra se emplean los llamador shift registers. Para crear uno, se pulsar el botn derecho del ratn mientras ste se halla situado sobre el borde del bucle, seleccionando la opcin Add Shift Register. El shift register consta de dos terminales, situados en los bordes laterales del bloque. El terminal izquierdo almacena el valor obtenido en la iteracin anterior. El terminal derecho guardar el dato correspondiente a la iteracin en ejecucin. Dicho dato aparecer, por tanto, en el terminal izquierdo durante la iteracin posterior.

3.1.4 While Loop

Es el equivalente al bucle while empleado en los lenguajes convencionales de programacin. Su funcionamiento es similar al del bucle for. Usaremos While Loop cuando queramos que una operacin se repita mientras una determinada condicin sea cierta. Su equivalente en lenguaje convencional es: Do ejecutar subdiagrama While condicin is TRUE (Aunque esta estructura es ms similar al comando Rrpeat-Until, ya que se repite como mnimo una vez, independientemente del estado de la condicin). Al igual que For Loop contiene dos terminales: 1.- Terminal condicional: A el conectaremos la condicin que har que se ejecute el subdiagrama. LabVIEW comprobara el estado de este terminal al final de cada iteracin, si su valor es TRUE( Verdadero) continuara, pero por el contrario si su valor es FALSE (Falso) detendr la ejecucin. 2.- Terminal de iteracin: indica el numero de veces que se ha ejecutado el bucle y que como mnimo, siempre ser una (i=O).

3.2 VARIABLES LOCALES Y GLOBALES Las variables son imprescindibles en cualquier tipo de problemas, ya que permiten almacenar la informacin necesaria para su resolucin. En LabVIEW todos los controles introducidos en el Panel Frontal que generan un terminal en la ventana Diagrama van a ser variables, identificables por el nombre asignado en la etiqueta. Pero puede ocurrir que queramos utilizar el valor de cierta variable en otros subdiagrama o en otro VI o, simplemente, que queramos guardar un resultado intermedio. La forma mas sencilla de hacerlo es generado variables locales y/o globales dependiendo de la aplicacin. 3.2.1 VARIABLES LOCALES En las variables locales los datos se almacenan en algunos de los controles o indicadores existentes en el panel frontal del VI creado, es por eso que estas variables no sirven para intercambiar datos entre VIs. La principal utilidad de estas variables radican en el hecho de que una vez creada la variable local no importa que proceda de un indicador o de un control, ya que se podr utilizar en un mismo Diagrama tanto de entrada como de salida. Las variables locales estn disponibles en el men Structs & Constants de la paleta Function y disponen del siguiente menu Pop-up: - Change To Read Local o Change To Write Local: Permite escoger entre leer o escribir en el control. Select item: Visualiza una lista con el nombre de todos los controles existentes en el Panel Frontal y de ella escogeremos el control al cual queremos que haga referencia nuestra variable. Es por esto que para poder crear el variable local ser imprescindible que el control tenga asignado un nombre de identificador. Una vez creada la variable local, si en algn momento se cambia el nombre del control origen, ser necesario cambiar tambin el nombre de la variable local ya LabVIEW no actualiza los cambios. - Show Label: Muestra una etiqueta con el nombre del VI al que pertenece la variable local. - Descripcin: Permite aadir comentarios. - Remplace: Sustituye la variable local por cualquier otra funcin. 3.2.2 VARIABLES GLOBALES Las variables globales son un tipo especial de VI, que nicamente dispone de Panel Frontal, en el cual se define el tipo de datos de la variable y el nombre de identificacin imprescindible para despues podernos referir a ella. Cuando escogemos la funcin Global del men Structs & constants creamos un nuevo terminal en el diagrama, este terminal corresponde a un VI que inicialmente no contiene ninguna variable. Para poderlas aadir haremos doble clic en el terminal y se habra el panel frontal. Una vez abierto, las variables se definen igual que cualquier control o indicador de un VI normal.

Podemos crear un VI para cada variable global o definirlas todas en el mismo, que es la opcin mas indicada para cualquier aplicacin. Cuando terminemos de colocar todas las variables grabaremos el VI y lo cerraremos. Si una vez cerrado queremos aadir nuevas variables, bastara con volverlo a abrir e introducir los cambios necesarios. Para aadir nuevas terminales que hagan referencia a las variables globales creadas, no volveremos a ejecutar la funcin Global ya que esto creara un nuevo VI sino que abriremos el ya existente mediante el comando VI del men Function y seleccionaremos la variable en concreto a travs del comando select item del men pop-up. Adems, este mismo men cuenta con otra opcin que nos permite utilizar una variable ya creada para leer datos o para almacenarlos: Se trata del comando Change To Read Global o Changes To Write Global. 3.3 ERRORES

Cuando su VI no es ejecutable, se despliega una flecha quebrada en el botn de correr en la paleta de herramientas. Encontrando los Errores: Para hacer una lista de los errores, haga clic en la flecha quebrada. Para localizar el objeto malo, haga clic en el mensaje del error. Resaltando la Ejecucion: Anima el diagrama y traza el flujo de datos, permitindole ver los valores intermedios. Haga clic en el bombillo incandescente (light bulb) en la barra de herramientas.

Probe: Utilizado para ver los valores en los arrays (arreglos) y clusters . Haga clic en los cables con la herramienta Probe o haga clic derecho en el cable para ajustar los PROBES. Punto de Paro (Breakpoint): Coloca pausas en diferentes lugares del diagrama. Haga clic en los cables o en los objetos con la herramienta de Punto de Paro para colocar los puntos de paro. Utilice el VI Debug Demonstrate del BASICS.LLB para demostrar las opciones y las herramientas 3.4 TIPS

LabVIEW tiene muchas teclas de atajo que hacen el trabajo ms fcil. Las ms comunes se listan en la diapositiva. Mientras la Herramienta de Seleccin Automtica (Automatic Selection Tool) es genial para escoger la herramienta que usted deseara utilizar en LabVIEW, a veces hay casos cuando usted desea controles manuales. Utilice la tecla Tab para cambiar entre las cuatro herramientas mas comunes (Operate Value (valor de operacion), Position/Size/Select, (Posicin/Tamao/Seleccin), Edit Text (editar texto), Set Color on Front Panel (establecer color en panel frontal), Connect wire on Block Diagram (conectar cable en el diagrama de bloque)). Una vez que se ha terminado con la seleccin de herramientas, puede presionar <Shift-Tab> para activar la Herramienta de Seleccin Automtica. En el dialogo de Herramientas >> Opciones, hay muchas opciones configurables para el Panel Frontal, Diagrama de Bloque, Colores, Impresin y mucho mas.

Similar a las opciones de LabVIEW, se pueden configurar propiedades especificas del VI al ir a File >> VI Properties Ah se puede documentar el VI, cambiar la apariencia de la ventana, y personalizarlos de varias maneras. 3.5 EJEMPLO: CONSTRUCCIN DE UN VI Se mostrar cmo construir una aplicacin mediante el empleo del entorno de programacin que proporciona LabVIEW.

Panel frontal
En primer lugar, se debe construir el panel frontal deseado, que en este ejemplo debe tener el siguiente forma:

Proceso a seguir: 1. Abrir un panel frontal nuevo. 2. Colocar un "vertical switch" (paleta Boolean), cuyo nombre ser Enable. Su finalidad ser finalizar la adquisicin. 3. Emplear la Labeling Tool para crear una etiqueta libre para ON y OFF. Utilizar la Coloring Tool para hacer que el borde de dicha etiqueta sea transparente. La T en el borde inferior izquierdo de la paleta de colores hace transparente un objeto. 4. Colocar el grfico ( waveform chart), situado en la paleta Graph. Su nombre ser Random Signal. El grfico representar valores aleatorios en tiempo real.

5. El grfico tiene un display digital que muestra el ltimo dato. Pulsar el botn derecho del ratn situado sobre el grfico, y seleccionar Digital Display del submen Show. Asimismo se deber deseleccionar Legend y Palette del mismo submen. 6. Empleando la Labeling Tool, pulsar dos veces con el botn izquierdo del ratn sobre el 10.0 en el eje Y del grfico, introducir 1.0 y pulsar fuera del grfico. As se habr cambiado el fondo de escala. 7. Colocar un knob (paleta Numeric), cuyo nombre ser Loop Delay (sec) Este control determinar la velocidad de ejecucin del bucle. Pulsar sobre l con el botn derecho del ratn y deseleccionar Digital Display del submen Show. 8. Empleando la Labeling Tool, pulsar dos veces con el botn izquierdo del ratn sobre el 10.0 de la escala, introducir 2.0 y pulsar fuera del control para introducir el nuevo valor.

Diagrama de bloques El siguiente es el aspecto que presentar el diagrama de bloques una vez finalizada su construccin:

1. Abrir el diagrama de bloques (men Window, opcin Show Diagram). 2. Colocar el While Loop (subpaleta Structures de la paleta de funciones). Dicha estructura, como todas las dems es de tamao ajustable. 3. Seleccionar la funcin Random Number (0-1) de la subpaleta Numeric del men de funciones. 4. Seleccionar la funcin Wait until Next ms Multiple de la subpaleta Time & Dialog del men de funciones.

5. Seleccionar la funcin de multiplicacin de la subpaleta Numeric, del men de funciones, as como una constante numrica, introduciendo el valor 1000 en lugar de 0, que es el que aparece por defecto. 6. Colocar los cables tal y como se muestra en la figura anterior, empleando para ello la Wiring Tool. 7. Volver al panel frontal. Con la Operating Tool poner el interruptor en su posicin ON. Ejecutar el programa pulsando el botn run. La frecuencia de ejecucin de las iteraciones del bucle While es la indicada en el panel frontal con el control Loop Delay (sec). Es decir, se generar y representar un valor aleatorio cada periodo de tiempo (en segundos) seleccionado. 8. Para finalizar la ejecucin del bucle, colocar el interruptor en la posicin de OFF. De ese modo la condicin de ejecucin del bucle While ser falsa, por lo que se detendr a la siguiente iteracin.

S-ar putea să vă placă și