Figura 1-41. Jerarquía de un VI.
Además de la ventana de jerarquía, también se puede acceder a los VI relacionados (por ejemplo, VI padres o subVI) con el que está activo en View > Browse Relationship.
1.8.4. Ventana de navegación
La ventana de navegación es otra ventana flotante que permite ver toda la ventana activa de LabVIEW mediante un zoom automático. Se puede acceder a ella desde View > Navigation Window y puede ser útil cuando el Diagrama de Bloques tiene un tamaño superior a la pantalla (aunque esto es algo que se debe evitar haciendo el programa más modular mediante el empleo de subVI).
1.8.5. Compilación masiva
La compilación masiva es un método que se usa al actualizar la versión de LabVIEW o para recompilar un proyecto con una nueva versión de LabVIEW.
Su función básicamente es abrir todos los VI de un directorio, relinkar y recompilar todos los VI y subVI que contiene. Se puede acceder a esta herramienta en Tools > Advanced > Mass Compile.
1.8.6. Búsqueda y comparación
En el menú Edit > Find and Replace (CTRL+F) se encuentra una herramienta que permite buscar tanto texto como objetos en los VI cargados en memoria. Los objetos a buscar pueden ser VI, funciones, breakpoints, terminales, etc. En la ventana de resultados se pueden sustituir todas las instancias del objeto buscado por otra función.
Figura 1-42. Utilidad de búsqueda y reemplazo.
LabVIEW también dispone de otra utilidad en el menú Tools > Compare destinada a mostrar las diferencias entre dos VI, tanto en su código, su aspecto, jerarquía u otras propiedades. Con estas herramientas simplemente hay que elegir dos VI y su resultado será una ventana en la que se muestran las diferencias, al hacer doble clic sobre una se mostrarán los VI con una marca en la diferencia.
1.8.7. Seguridad
Las opciones de seguridad en Tools > Security permiten controlar el acceso y permisos a algunos recursos, como a VI Server (Tools > Options > VI Server: Browser Access o Proyecto > My Computer > Properties > VI Server: User Access). El sistema es parecido al de cuentas de usuario, grupos y dominios de los sistemas Windows.
Para que un usuario se registre como tal, debe dirigirse a Tools > Security > Login; además, se puede activar la opción Tools > Options > Security > Show the login prompt at LabVIEW startup time para hacer que se pida un usuario cada vez que se inicie LabVIEW.
Algunos módulos de LabVIEW pueden extender las funciones de seguridad a elementos como variables compartidas o librerías de proyectos.
1.8.8. Ejemplos
Una de las cosas más apreciadas de National Instruments es su soporte, tanto en línea como en sus programas. Dentro de la ayuda de LabVIEW ya se ha visto antes la ventana de ayuda contextual. También dispone de muchos documentos que explican detalladamente cada aspecto del programa. Se puede acceder a la colección de ejemplos desde Help > Find Examples.
Puede modificarse la ventana que muestra los ejemplos en Tools > Prepare Example VI for NI Example Finder.
Finalmente, también hay que comentar que desde la página web de National Instruments se pueden descargar numerosos ejemplos, hacer consultas en los foros o solicitar soporte de los ingenieros de NI.
1.9. Ejercicios
1. Buscar los cinco errores que impiden la ejecución en la siguiente figura:
Figura 1-43. Ejercicio 1.
2. Obtener, mediante las funciones del menú Programming > Numeric, el número áureo y su inverso:
3. Usar el programa del ejercicio anterior como un subVI de uno nuevo para verificar si
4. Depura el siguiente programa para encontrar y solucionar el motivo por el que no funciona correctamente.
Figura 1-44. Ejercicio 4.
1.10. Bibliografía
National Instruments, AN 159: LabVIEW Custom Controls, Indicators, and Type Definitions, 2004.
National Instruments, AN 168: LabVIEW Performance and Memory Management, 2004.
National Instruments, LabVIEW Basics I Course Manual, 2000.
National Instruments, LabVIEW User Manual, 2001.
National Instruments, LabVIEW Upgrade Notes Version 8.0, 2005.
National Instruments, LabVIEW Upgrade Notes Version 8.2, 2006.
National Instruments, LabVIEW Upgrade Notes Version 2009, 2009.
Rick Bitter et alt. LabVIEW Advanced Programming Techniques, CRC Press LLC, 2001.
Capítulo 2
Estructuras
Las instrucciones de control son una de las herramientas básicas de todo lenguaje de programación y permiten a un programa ejecutar un código de forma condicional o repetirlo cierto número de veces.
En LabVIEW estas instrucciones son estructuras que encierran en su interior el código al que afectan. Se encuentran en el menú Programming > Structures.
Figura 2-1. Estructuras.
A continuación se va a tratar cada una de las estructuras que aparecen en la figura 2-1.
2.1. SEQUENCE
En los lenguajes tradicionales basados en texto, el orden de ejecución se corresponde con el orden en que las instrucciones están escritas. Ya se ha visto que el sistema de ejecución de LabVIEW sigue el modelo de flujo de datos (dataflow): un nodo necesita tener disponibles los datos en todas sus entradas para ejecutarse. Pero si hay dos nodos en condición de ejecutarse, no se podrá determinar, en principio, el orden de ejecución; esto en la mayoría de casos no será un problema, es más, será incluso beneficioso. No obstante, puede haber ocasiones en las que haya nodos independientes, ambos en situación de ejecutarse, pero se necesita fijar el orden de ejecución de los mismos.
Las estructuras de tipo SEQUENCE sirven precisamente para esto: establecen el orden de ejecución del código que está en su interior.
Su diseño recuerda a los fotogramas de una película. En una película los fotogramas colocados al principio se visualizarán antes que los siguientes, con un orden secuencial. Las estructuras SEQUENCE también tienen fotogramas o frames ordenados, en el interior de cada frame