You are on page 1of 244
LabVIEW™ Core 1 Manual de Curso NATIONAL ni.com/training INSTRUMENTS” ey ey a 3 LabVIEW™ Core 1 Manual de Curso Versién del software actual 2012 Edicion de Agosto 2012 Numero de parte 325290D-0154 Copyright ‘© 1993-2012 National Instruments, Todos Ins derechos reservados. En virtud de las leyes de copyright y de proteceién de los derechos de outa. eta publicacin no puede reproducirse ni transmitirso ‘exninguna forma, clecrinica © mocinica, ineluidas las folocopies, grabacién, almacenamienta en un sistema de reeuperacién de {nformacién,n traduccsin, en su totaldad en pane, sn el consentimicnto provin par escrito de National Intruments Corporation, ‘Natinnal Instruments respeta las derechos de propiedad itelectual de otras, y selicimmos a nuestos usuarios que hagan lo alsmn. BI software de NI até protegido por el derecho de autnry las normas de Ia propiedad intelectual. Aunque el software de NI puede uullzarse para reproducir software a ntro mateial perceneciente a otros, el software de NI slo padri wilizarse para roproducir ‘material que pueda reproducirconfarme a los érmines de eualquierliemcia aplicable ota restriceién legal, Contrato de licencia de usuario final y avisos legales a verceres El comnato de licencia de usuario final (‘EULA’) y avisos legates a terceros se puede encontrar en Ins siguientes localidades: ‘+ Losavisos se localizan en fs directosios \_uegal Information y. + Contralo de lieencia de usuara final se localiza ene direetarin \shared\HOF\ Legal \License, + Revise\_uegal information. txt paramés lnformaciéa legal sobre los instaladores ‘desaroliados con products de Nl Marcas comerciales CVE, LabVIEW, National Instruments, Nt, i.com, el Ingatipe eorporativo de National Instruments, y el logatipo del apuila son ‘areas propiedsd de National Instruments Corporation. Por favnt, conswlte Trademark Informatian ena pagina ni .cor/ trademarks para informacién sabre otrs mareas de Natonal Instruments. ‘Thomark LabWindows is used under a fizense from Microsat Corporation. Windows isa registered trademark of Microsoft (Corporation inthe United States and other countries. Ors nombres de productos y de empresas mencfonados aqui on marcas 2 ‘ombres comerciales de sus respectivas empresas. Losmiembros del National lastrumeats Aliane: Parmer Program son entidades comerciales independientes de National JInstramens y no tienen relacin de agencia,asocisciéa ni empresa conjunta con National Instrumests Patontes: Para obtener informactén sabre las patentes que protegen tos productos © la tecnologia de National Instruments, consute el apartado: Help»Patents ex su software, cl archivo patents. txt en el soporte del mismo, mel Aviso sobre las Pateates de National Instruments (Wationa! Inswuments Parent Notice)en i .com/ patents. Informacién det producto y soporte técnica mundial ni.com lficinas intomacionales Visite ni .com/nigloba! para scceder alas piginas web de las oficinasintemacionales, as cuales incluyen informacién, actualizada de contacto, teléfonas de soporte téenico, dresciones de email y eventos actuates. ‘Oficinas centrales de National Instruments Corporation 11500 Neth Mopac Expressway Austin, Texas 78759-2504 USA Tel: $12 683 0100 Para obtener informaciéa adicfonal de soporte consute el spéaiceInformacién Adicional y Recursos. Para ealinar comentarios a "National Instruments sabre la documeataciéa, consult I pgina web de National Instruments Web ni .con/ info e introduzea ct obdigo de informacin feedback. Contenido Guia del estudiante Certificacién de NI. Descripeién del curso Lo que necesita para empezar. Instalacién del software del curs Objetivos del curso Convenciones del curso mmo OD > Leccion 1 Explorando LabVIEW Qué es LabVIEW’ Diagrama de bloques Basqueda de controles, Vis y funciones. Seleccién de una herramienta.. Flujo de datos. Creacién de un VI simple Leccion 2 Resolucién de problemas y depuracién de Vis A. Cotteccién de VIs rotos 22 B, Técnicas de depuracién. C. Datos sin definir o inesperados D. Manejo de Errores.. rz OnmpeR> 2 i Z 5 Leccién 3 Implementacion de un Vi A. Panel frontal .. B, Tipos de datos de LabVIEW. C. Documentacién de cddigo D. Bucles While. E. Buoles F, G. i. 1 . Temporizacién de VI . Retroalimentacién de datos en los bucles. |. Graficando datos ~ Waveform Chart. Estructuras Case. © Nasional instruments | Contenide Leccion 4 Desarrollo de apiicaciones modulares A. Comprensién de la modularidad... B. Creacién del panel de iconos y conectores. C. Uso de subVis. Leccién 5 Creando y aprovechando estructuras de datos A. Amy: . Funciones de array comunes C. Polimorfismo .. D. Autoindexado.. E. F. w . Clusters ". Definiciones tipo Leccién 6 Administrando archivos y recursos hardware A. Entendiendo recursos de hardware y software. B. E/S de ficheros. C. Adquiriendo mediciones con sistema DAQ D, Controlando Instrumentos Leccién 7 Usando algoritmos de maquinas de estado y secuenciales A. Programacién secuencial B. Programacién de estado. C. Maquinas de estados.. Lecci6n 8 Resolviendo desafios de flujo de datos con variables A. Comunicacién entre bucles paralelos. B. Escribiendo a controles y leyendo de indicadores.. C. Variables. D, Condiciones de carrera. Apéndice A Informaci6n Adicional y Recursos Glosario ¥ | nicom Guia del estudiante Gracias por comprar el paquete de curso LabVIEW Core 1. Podra empezar a desarrollar una aplicacién poco después de compleiar este curso. El manual del curso y el software adjunto se utilizan en el curso préctico de tres dias LabVIEW Core 1, Puede aplicar la adquisicién completa de este paquete de curso a la cuota de registro ‘correspondiente del curso si se inscribe antes de 90 dias desde fa compra del paquete. Visite ni.com/training para consultar en linea la programacién, el contenido, los centros de formacién y la inscripcién en Ia clase del curso. A. Certificacién de NI El curso LabVIEW Core 1 forma parte de una serie de cursos disefiados para dominar LabVIEW y ayudarle a prepararse para los exdmenes de Desarrollador Asociado Certificado de LabVIEW de NI. La siguiente jlustracién muestra los cursos que forman parte de la serie de formacién de LabVIEW. Consulte ni.com/training para obtener informacion adicional acerca de la certificacién de NI. Now user Exparianced User ‘Advanced User Courses ‘anviEW Gore Labview cores Managing Sofvare tunvieW Coes” Engioooiagin LabVIEW {aBMIEW Comestviy Advanced Aitectutes Objecl-Griantad Design mie ‘and Programming Tn LabVIEW LaDviEW Performance Centiications Cerifed Labview Cortes tapviews [ncaa tanview ‘Associate Dewiopor Exam Doveloper Exam > ‘Architect Exam Other Courses LabVIEW instrument Contot LaDviEW Rloa-Time 1 ‘LabVIEW Ren-Time 2 LanvieW FPGA [LABVIEW AQ and Signal Conditoring Modular Inciumants Series "Cox cours aeons recommended tcoaka maximum produc sane whe Using LABVIEW, {© National natumeats | Gula del ostutaete B. Descripcién del curso El curso LabVIEW Core | le ensefia conceptos, técnicas, caracteristicas, VIs y funciones de in de LabVIEW que puede utilizar para crear aplicaciones de prueba y medicién, n de datos, control de instrumentos, registro de datos, andlisis de mediciones y generacién de informes. Este curso supone que esta familiarizado con Windows y que tiene experiencia en eseribir algoritmos en forma de diagramas de flujo o diagramas de bloque. Los manuales de ejercicios y det curso estan divididos en lecciones, descritas de este modo. En el manual det curso, cada leccién consta de fo siguiente: + Una introduccién que describe el objetivo de fa leccién y fo que aprenderd + Una deseripeién de tos temas de la leccién + Un euestionario de resumen que prueba y esboza conceptos y conocimientos importantes ‘ensefiados en la leccién En ef manual de ejercicios, cada leccién consta de to siguiente: + Un conjunto de ejercicios para reforzar esos temas + Algunas lecciones incluyen seceiones de ejercicios opcionales y de retos o un conjunto de ejetcicios adicionales para realizar si el tiempo lo permite. YE) Nota Para ver actualizaciones y correcciones del manual de cjercicios y del curso, consulte ni .com/info y escriba ef Cédigo de Informacién corel. ‘Varios ejercicios usan uno de los siguientes productos hardware de National Instruments: + Un dispositive multifuncién de adquisicién de datos (DAQ, data acquisition) conectado a un BNC-2120 que contiene un sensor de temperatura, un generador de funciones y LEDs * Una interfaz GPIB conectada a un Sinulador de instrumentos de NI Aunque no disponga de este hardware, puede realizar los ejercicios. Se oftecen otras instrucciones para realizar los ejercicios sin hardware. También puede sustituir el hardware mencionado anteriormente por otto diferente. Por ejemplo, puede utilizar un instrumento GPIB en lugar det Simulador de instrumentos de NI u otro dispositive DAQ de National Instruments conectado a un origen de sefial, como un generador de funciones, ¥ | ico Manual da Curso LabVIEW Cora 1 C. Lo que necesita para empezar Lecturas recomendadas El material de lectura recomendado garantiza que todos los alumnos tengan un conocimiento minimo de las teorfas y conceptos clave relacionados con el curso LabVIEW Core 1. Para obtener cel maximo rendimiento de este curso, complete todo ef material de lectura recomendado. Para aceeder a cada uno del material de lectura recomendado, consulte ni. .com/in£o y escriba el Cédigo de Informacién que corresponda a cada tema: Cl LabVIEW Core ! - El método de desarrollo de software (Cédigo de Informaciérr SoftDev) C1 Intraduccién a ta adquisicién de datos (Cédigo de informacién: DAO) © Tutorial de control de instrumentos GPIB (Codigo de Informacién: GPIB) Maierial del curso Antes de empezar este curso, asegtirese de tener todos estos elementos: 1 Ordenador con Windows 7/Vista/XP a Dispositive DAQ multifuncién configurado como Devi utilizando Measurement & Automation Explorer (MAX) BNC 2120, conectores y cable Interfaz GPIB Simulador de instrumentos de NI y alimentacién eléctrica Full o Professional Development System 2012 o posterior de LabVIEW DAQmx 9.5.5 0 posterior NI-488.2 3.0.2 o posterior NI VISA 5.2 0 posterior gooaoa0g0ogdcuonDUmceBcUDoULDD Un cable GPIB ‘© National insrumanis | vib Guta det estasianto © NI Instrument Simulator Wizard instalado desde el CD de software de NI Instrument Simulator é 1 CD del curso LabVIEW Core 1, que se instala en las siguientes carpetas: Directorio Deseripeién Exercises ‘Carpeta para guardar Vis creados durante el curso y para completar ciertos ejereicios de éste; también incluye subVIs necesarios para algunos ejercicios y un archivo comprimido (NI Instrument Simulator. zip) que contiene el controlador de instrumentos de LabVIEW para el Simulador de instrumentos de Ni solutions Contiene las soluciones para todos los ejercicios del curso D. Instalacién del software del curso Complete estos pasos para instalar el software del curso, 1, Inserte el CD del curso en el ordenador. Aparecerin los cuadros de didlogo de LabVIEW Core 1 Course Setup. 2. Haga clic en Install the course materials. 3. Sigua las instrucciones en la pantalla para completar Ia instalacién y configuracién. Los archivos de ejercicios se encuentran en la carpeta \LabVIEW Core 1\. “EA Nota Los nombres de carpetas entre corchetes angulares, como , hacen referencia a carpetas de! directorio raiz de su ordenador. E. Objetivos del curso Este curso le prepara para hacer lo siguiente: + Comprender los paneles frontales, los diagramas funcionales, los iconos y los paneles conectores + Usar las estructuras de programacién y Jos tipos de datos existentes en LabVIEW + Usar varias tonieas de edicién y de depuracién + Crear y guardar VI para poder utilizarlos como subVI + Mostar y registrar datos + Crear aplicaciones que utilicen dispositivos DAQ + Crear aplicaciones que usen instrumentos de puerto serie y GPIB vil | rico, “Manual de Curso LabVIEW Caro 1 Este curso no describe lo siguiente: + Cada VI, funcién u objeto integrado; consulte la Ayuda de LabVIEW para obtener informacién adicional acerca de las funciones de LabVIEW no descritas en este curso. + Teoria analogica a digital (A/D) + Funcionamiento del bus GPIB + Desarrollar un controlador de instrumento + Desarrollar una aplicacién completa para cualquier estudiante de a clase; consulte el ‘NI Example Finder seleccionando Help»Find Examples, para ver ejemplos de Vis que puede utilizar ¢ incorporar en los Vis que cree F. Convenciones del curso Las siguientes convenciones aparecen en este manual de! curso: » El simbolo » Je guia por elementos de mend anidados y opeiones de cuadros de didlogo a una accién final. La secuencia Tools»Instrumentation» Find Instrument Drivers le guia a desplegar menii Taols, seleccionar Instrumentation, y finalmente seleccionar la opcién Find Instrument Drivers, Q Este icono indica un consejo, que le alerta de recomendaciones. a Este icono indica una nota, que le alerta de informacién importante. aA Este icono indica una precaucién, para que tome precauciones y evite Iesiones, pérdida de datos o una caida del sistema. negrita Eltexto ennegrita indica que debe seleccionar el software o hacer clic en él, ‘como elementos de menii y opciones de cuadro de didlogo. El texto en negrita denota también las secciones de los cuadros de didlogo y etiquetas de hardware. cursiva El texto en cursiva indica variables, énfasis, una remisidn 0 una introduecién a un concepto clave. E! texto en cursiva también indica texto que es un parimetro de sustitucidn para una palabra o un valor que debe proporeionar. monospace El texto con esta fuente indica texto o caracteres que debe escribir con el teclado, secciones de eédigo, ejemplos de programacién y ejemplos de sintaxis. Esta fuente también se utiliza para los nombres propios de unidades de disco, rutas, directorios, programas, subprogramas, subrutinas, nombres de dispositives, funciones, operaciones, variables, nombres de archivos y extensiones. © National instruments | i Gula dol ostudiante monospace bold El texto con esta fuente indica los mensajes y las respuestas que cl ordenador imprime autométicamente en la pantalla. Esta fuente también cenfatiza lineas de cédigo distintas de los otros ejemplos. Platform Eltexto con esta fuente indica una plataforma concreta y que el texto que le sigue se aplica sélo a esa plataforma. x | nicom . © Explorando LabVIEW Esta leccién muestra cémo navegar por el entomio LabVIEW. Describe el uso de ments, barras de herramientas, paletas, herramientas, ayuda y cuadros de didlogo comunes de LabVIEW. También aprenderé a ejecutar un VI y conceptos generales de un pane! frontal y diagrama de bloques. Al final de esta leccién, creard un VI simple que adquiera, analice y presente datos. Temas A. {Qué es LabVIEW? B. Explorador de proyectos C. Partes de un VI D. Panel frontal E, Diagrama de bloques F. Biisqueda de controles, Vis y funciones G Seleccién de una herramienta HL Flujo de datos 1. Creacién de un VI simple ‘© National instruments f 1-1 Leecién 1 Explorando LabVIEW A. 4Qué es LabVIEW? LabVIEW es un entomo de programacién gréfico que puede utilizar para crear aplicaciones ripida yeficientemente con interfaces de usuario profesionales. Millones de ingenieros y cientificos usan LabVIEW para desarrollar sofisticadas aplicaciones de pruebas y control usando iconos y cables intuitivos, Ademés, ta plataforma LabVIEW es escalable a través de diferentes objetivas y OSs. De hecho, LabVIEW ofiece integracién con miles de dispositivos y facilita cientos de librerias integradas para andlisis avanzados y visualizacién de datos para crear instramentos virtuales que puede personalizar de acuerdo a sus necesidades. ‘Ya que LabVLEW imita la apariencia y operacién de instrumentos fisicos, como osciloscapios y multimetros, los programas de Lab VIEW son llamados instrumentos virtuales 0 VIs. Los Vis tienen panel frontal y diagrama de bloques. E! pane! frontal es {a interfaz de usuario. El diagrama de bioques es el programa detris de fa interfaz de usuario. Tras crear la ventana del pane! frontal, puede afiadir cédigo usando representaciones grificas de funciones para controlar tos objetos del panel frontal. El cédigo en el diagrama de bloques es cédigo grafico, también conocido como cédigo G 0 cédigo de diagrama de bloques. A diferencia de lenguajes de programacién basados en texto como C++ y Visual Basic, LabVIEW usa iconos en vez de lineas de texto para erear las aplicaciones. Ea programacién basada en texto, {as instrucciones determinan el orden de ejecucién, LabVIEW utiliza flujo de datos gréfico. En programacién mediante flujo de datos grifico, los datos fluyen a través de nodos en el diagrama de bloques y eso determina el orden de ejecucién. La programacién grifiea y {a ejecucién mediante flujo de datos son las dos principales formas en que LabVIEW es diferente de otros lenguajes de programacién de propésito general. 80, usted aprenderé cémo puede usar LabVIEW para crear aplicaciones simples de n de datos usando los tres pasos: adquirir, analizar y presentar. A pesar de que este curso es ensefiado en un sistema Windows, LabVIEW es multi-plataforma. Usted puede desarrollar aplicaciones en sistemas Windows, Mac OS o Linux. Ademés, usted también puede desplegar aplicaciones de LabVIEW a una gran variedad de dispositives “real-time” y FPGA. Caracteristicas de LabVIEW Los programas de LabVIEW tienen las siguientes caracteristicas: + Naturaleza grifica y compilada + Flujo de datos y/o programacién basada en eventos + Capacidades multi-objetivo y plataforma + Flexibilidad orientada a objetos + Posibilidades de multithreading 12 | nico ‘Manual da Curso LabVIEW Care 4 En LabVIEW Core 1, usted aprenderé acerca de la naturaleza grifiea y compilada de LabVIEW y flujo de datos. Los siguientes cursos exploran otras caraeteristicas: + LabVIEW Core 2—Aprenderd sobre programacién orientada a eventos. + Object-Oriented Design and Programming in LabVIEW—A prenderd sobre programacién orientada a objetos en LabVIEW. + LabVIEW Performance—Aprenda eémo tomar ventaja de las capacidades de multithreading y gestidn de memoria de LabVIEW para mejorar Ia ejeeucién de programas y el uso de memoria, Grafico y compilado Aunque representado grificamente con iconos y cables en vez de texto, ¢] cddigo G en el diagrama de bloques contiene los mismos conceptos de programacién encontrados en la mayoria de lenguajes tradicionales. Por ejemplo, cédigo G incluye tipos de datos, bucles, gestion de eventos, variables.y programacién orientada a objetos. LabVIEW compila cddigo G direetamente a cédigo de maquina para que el proeesador pueda ejecutarlo. No necesita compilar cédigo G en un paso adicional. Flujo de datos y programacién orientada a eventos Los programas de LabVIEW se ejecutan de acuerdo a las reglas de flujo de datos en lugar dela ‘manera tradi¢ional encontrada en fa mayoria de lenguajes de programaeién basados en texto como Cy C++, La gjecucién mediante flujo de datos es dependiente de los datos. El flujo de datos entre Jos nodos en el cédigo G determina el orden de eject La programacién orientada a eventos extiende el concepto de flujo de datos de LabVIEW para permitir al usuario interaccién directa con el programa. La programacién basada en eventos también permite otras actividades asincronas para influenciar la ejecucin de! cédigo G en el diagrama de bloques. Capacidades multi-objetivo y plataforma Con aplicaciones de LabVIEW, usted puede tener como objetivos procesadores multiniclco y otros hardware paralclos como “Field-Programable Gate Arrays” (FPGAs). Usted puede automiticamente escalar aplicaciones de LabVIEW a CPUs con dos, euatro o més niicleos, usualmente sin programacién adicional. El cédigo G con la excepeién de algunas funciones espeeificas de algunas plataformas,es portable entre diferentes sistemas LabVIEW para diferentes sistemas operativos. Por [o tanto, usted puede usar el mismo cédigo si esta utilizando LabVIEW en sistemas Windows, Mac OS X o Linux. Orientado a objetos La programacién orientada a objetos es un acereamiento popular atraves de una gran variedad de enguajes de programacién, Permite una gran variedad de items sirailares, aunque diferentes, de ser representados como una clase de objetos en el software. LabVIEW prove herramientas y funciones para que usted pueda utilizar técnicas de programacién orientada a objetos en su cédigo G ‘© Nationa Instruments | 1:3 Leccién 1 Explorando LabVIEW Multithreading y gestion de memoria LabVIEW permite paralelismo automitico a su eédigo. En otros lenguajes si se requiere ejecutar cédigo en paralelo, usted debe manejar los hilos miltiples manualmente. El entomo LabVIEW, con. el compilador y sistema de ejecucién trabajando juntos, automaticamente ejecuta el cédigo en paralelo siempre que sea posible. La mayoria del tiempo los detalles de la ejecucién de un sistema no tienen importancia para usted porque el sistema se comporta como debe sin intervencién. Sin embargo, LabVIEW también provee las opciones para mejorar el rendimiento. Lanzando el entorno LabVIEW Cuando lance LabVIEW, aparecerd la ventana Getting Started como se muestra en Ja figura I-1. Figura 1-1. Ventana Getting Started de LabVIEW Use la ventana Getting Started para crear nuevos proyectos y Vis. Puede crear items desde cero utilizar ejemplos, También puede abrir archivos existentes de LabVIEW y acceder alos recursos de fa comunidad de LabVIEW y a la ayuda. La ventana Getting Started desaparece cuando abre un archivo existente o crea un archivo nuevo, y reaparece cuando cierra todos los paneles frontales y diagramas de bloques abiertos. Puede ‘mostrar [a ventana seleccionando View»Getting Started Window. 14 | icon ‘Manual de Curso LabVIEW Cota 1 B. Explorador de proyectos Los programas de LabVIEW se denominan VIs. Puede utilizar maltiples Vis juntos para hacer una aplicacién de LabVIEW. Para agrupar fos Vis relacionados con t2 misma aplicacién utilice un proyecto LabVIEW. Cuando guarda un proyecto LabVIEW desde le ventana Project Explorer, LabVIEW crea un archivo de proyecto (. 1vpro3), que ineluye referencias a todas los archivos de LabVIEW en el proyecto, informacién de configuracién e informacién de despliegue. Algunos programas de LabVIEW, como Vis simples, no requieren crear un proyecto. Es necesario utilizar un proyecto para creat aplicaciones y librerias compartidas. También debe utilizar un proyecto para trabajar con una plataforma en tiempo real (RT), de array de puertas programable in situ (FPGA) o agenda electrénica (PDA). Consulte Ia documentacién del médulo especifico para obtener informacién adicional acerea de usar proyectos con los médutos de tiempo real, FPGA y PDA de LabVIEW. Ventana det explorador de proyectos Los proyectos en LabVIEW consisten de VIs, archivos necesarios para que esos VIs se ejecuten apropiadamente y archivos suplementarios como documentacién o enlaces. Utilice la ventana Project Explorer para administra proyectos en LabVIEW. La ventana Project Explorer incluye los siguientes elementos de forma predeterminada: + Project root: contiene el resto de clementos de la ventana Project Explorer. Esta etiqueta en la raiz del proyecto incluye el nombre de archivo del proyecto, + My Computer: representa el ordenador local como un destino de! proyecto. icluye los elementos que requieren los VIs de un destino. + Build Specifications: incluye configuracjones para distribuciones de cédigo y otros tipos de distribuciones disponibles en los tooikits y médulos de LabVIEW. Si tiene instalada la version PDS (Professional Development System) o el Application Builder de LabVIEW, puede usar Build Specifications para configurar aplicaciones independientes, librerias compartidas, instaladores y archivos comprimidos. Q Consejo Un destino es cualquier dispositive que pueda ejecutar un VI. ‘Cuando afiada otro destino al proyecto, Lab VIEW creara otro elemento en la ventana Project Explorer para representar la nueva plataforma. Cada destino incluye también las secciones Dependencies y Build Specifications, Puede afiadir archivos bajo cada uno de los destinos, ‘© National instruments | +8 Leceién + Explorando LabVIEW Complete los siguientes pasos para ulilizar la ventana Project Explorer para crear y modificar proyectos en LabVIEW. 1. Seleccione FilenCreate Project para mostrar el cuadro de didlogo Create Project. El cuadro de didlogo Create Project incluye una lista de plantillas y proyectos de cjemplo que usted puede utilizar para asegurarse que el proyecto que esta creando utilice practicas de disefio y programacién confiables. 2. Busque la plantilla o ejemplo que se aproxime mis al proyecto que desea realizar. Use las siguientes herramientas para buscar las plantillas y ejemplos de proyectos: + Filters—Muestra solo resultados de cierto tipo, como ptantitlas o ejemplos de proyectos para un objetivo especifico. + Additional Search—Busca palabras clave, titulos y descripciones de tos resultados filtrados. + More Information—Abre el archivo de ayuda para el item respectivo. Revise el archivo de ayuda para ascgurarse que la plantilla o ejemplo se aproxime al proyecto que desea realizar. 3. Haga clicenel botén Next o Finish para configurar los detalles del proyecto, incluyenda como el proyecto es guardado. Luego que termina de configurat el proyecto, LabVIEW guarda el proyecto y abre la ventana Project Explorer y el V1 principal det proyecto. 4, Utilice la ventana Project Explorer para administrar proyectos en LabVIEW. Refigrase a los comentarios en el diagrama de bloques de los VIs en et proyecto para més informacién acerca de como modificar el proyecto. También refiérase al folder Project Documentation en ta ventana Project Explorer para més informacién sobre como modificar el proyecto. Barras de herramientas de proyectos Use los botones de tas barras de herramientas Estindar, Proyecto, Instalucién y Control de e6digo fuente para realizar operaciones en un proyecto de LabVIEW. Las barras de herramientas stn disponibles en la parte superior de la ventana Project Explorer, como muestra la figura 1-2. ‘Quiz tenga que expandir la ventana Project Explorer para mostrar todas las barras de herramientas. 16 | com a“ Manual do Curso LabVIEW Corot Figura 1-2. Ventana Project Explorer , cag 82 my ta ¢ s et - iB (re & 1 Barra de herramienias ext@ndar 5 fais de proyectos 2 Barra de herramientas de proyectos & Destino ‘3. Barra de herramientas de construccion 7? Dependencias 4 Barra de herramientas de contro! de cédigo fuente 8 Crear especificaciones Consejo La barra de herramientas Control de eédigo fuente s6lo esta disponible si tiene el control de cédigo fuente configurado en LabVIEW. Puede mostrar u ocultar barras de herramientas desde View»Toolbars y seleccionando las barras f de herramientas que desea mostrar u ocultar. También puede hacer clic con e] botén derecho en una. 4 zona abierta de cada barra de herramientas para seleccionar la que desee mostrar u ocultar. ( Creaci6n de un proyecto en LabVIEW & ‘Complete los pasos siguientes para crear un proyecto. 1. Escoja una de las siguientes acciones para crear un proyecto LabVIEW nuevo. + Ena ventana Getting Started haga clicen Blank Projeet para abrir un proyecto en nuevo © haga clic en el botén Create Project para crear un proyecto nuevo a partir de una plantilla. 3 + Enun proyecto o VI abierto, seleccione FilenCreate Project. + En cualquier ventana de LabVIEW, seleccione File»New. También puede seleccionar Project»Empty Project en el cuadro de didlogo New para mostrar {a ventana Project Explorer, a 2, Afiada elementos que desee incluir en el proyecto bajo un destino. ~ 3, Seleccione File»Save Project para guardar el proyecto. ‘©National instruments | 1-7 Lecsion 1 Explorando LabVIEW Afiadir archivos existentes a un proyecto Puede aiiadir archivos existentes a un proyecto. Use el elemento My Computer (u otro destino) en la ventana Project Explorer para afiadir archivos como Vis 0 archives de texto a un proyecto de LabVIEW. Afiada elementos que desee incluir en el proyecto de estos modos: + Haga clic eon el botén derecho en My Computer y seleccione AddKile desde el meni eontextual para aiadir un archivo. También puede seleccionar Project»Add To Project»File desde el meni Project Explorer para afiadit un arehivo, + Haga elic con el botén derecho en el destino y seleccione Add»Folder (Auto-populating) desde el ment: contextual para afiadir una carpeta de relleno automatico. También puede seleccionar Projecb»Add To Projeet»Add Folder (Auto-populating) para afiadir una carpeta de relieno automitieo. LabVIEW controla y actualiza continuamente la carpeta segiin los cambios realizados en el proyeeto y en et disco. + Haga clic con el botén derecho en el destino o My Computer y seleevione Add»Folder (Snapshot) desde el meni contextual para afiadir una carpeta virtual, También puede seleccionar Projecb»Add To Project» Add Folder (Snapshot) para afiadir una carpeta virtual. Cuando seleccione un direetorio del disco, LabVIEW crear una nueva carpeta virtual en el proyecto con el mismo nombre que el directorio del disco, LabVIEW también erea elementos en el proyecto que representan el contenido de todo el direetorio, incluidos los archivos y el contenido de subdireetorios. Si selecciona una carpeta del disco, afiadird el contenido de toda Ja earpeta, incluyendo archivos y el contenido de las subcarpetas. YEA Nota Tras afiadir una carpeta virtual del disco a un proyecto, LabVIEW no actualiza automtéticamente Ia carpeta en el proyecto si realiza cambios en la earpeta del disco. + Haga clic con et botén derecho en el destino y seleeeione New»VI desde el menti contextual para afadir un nuevo VI. También puede seleecionar Fite»New VI o Project»Add To ProjectyNew VI para afiadir un VI nuevo, + Seleccione el ieono del VI en la esquina superior derecha de una ventana de panel frontal o de diagrama de bloques y atrastre el icono al destino. + Seleccione un elemento o carpeta del sistema de arehivos de su ordenador y arrastreto al destino, Eliminar elementos de un proyecto Puede eliminar efementos de !a ventana Project Explorer de las siguientes maneras: + Haga ctic con el botén derecho en el elemento que desee eliminar y seleccione Remove from Project del meni contextual. + Seleccione el elemento que desea eliminar y pulse . + Seleceione ef elemento que desee eliminar y haga elic en el botén Remove From Projet de la barra de herramientas Standard, 18 | nicom | ! } | i © Manuat de Curso LabVIEW Gore 1 SE Nota_Eliminar un elemento de un proyecto no implica eliminaro del disco. Organizar elementos de un proyecto La ventana Project Explorer incluye dos piginas: Items y Files. La pgina Items muestra los elementos del proyecto que existen en el arbol de proyecto. La pagina Files muestra los elementos del proyecto que tienen un archivo correspondiente en el disco. Puede organizar nombres de archivos y carpetas en esta pagina. Las operaciones de proyectos de la pagina Files reflejan y actualizan el contenido del disco. Puede cambiar de una pigina a la otra haciendo cli¢con el botén derecho en una carpeta 0 elemento bajo un destino y seleccionando Show in Items View 0 Show in Files View en el meni contextual. Use carpetas para organizar elementos en la ventana Project Explorer. Puede afiadir dos tipos de carpetas en un proyecto de LabVIEW: virtuales y de relleno automético. Las carpetas virtuales organizan elementos del proyecto, Haga clie con el botdn derecho en la ventana Projeet Explorer y seleccione New» Virtual Folder desde ef ment contextual para crear una carpeta virtual nueva. ‘Las carpetas de relleno automético se actualizan en tiempo real para reflejar el contenido de las, carpetas del disco. Aftada una carpeta de rellena automitico al proyecto para mostrar elementos del proyecto como aparceen en el disco. Las carpetas de relleno automitico sélo se ven en la pigina Items dela ventana Project Explorer - Puede ver ei contenido del disco de una carpeta de reileno automitieo pero no puede realizar ‘operaciones en el disco como cambiar el nombre, reorganizar y eliminar elementos del proyecto. Para realizar operaciones de! disco en elementos de una carpeta de refleno automatico, use la pagina Files de la ventana Project Explorer. La pigina Files muestra la ubicacién de las carpetas del proyecto en el disco. Las operaciones de proyectos de la pagina Files reflejan y actualizan el contenido det disco. Igualmente, LabVIEW actualiza automiitieamente la earpeta de relleno automatieo en el proyecto si realiza cambios en la carpeta del disco fuera de LabVIEW. Es posible ordenar elementos en una carpeta, Para ello, haga clic con ef botén derecho en una carpeta y seleccione Arrange By»Name desde ef ment contextual para ordenar elementos por orden alfabético. Haga clie con et botén derecho en una carpeta y seleccione Arrange By»Type desde ef menti contextual para ordenar elementos por tipo de archivo. Ver archivos de un proyecto ‘Cuando afiade un archivo a un proyecto de LabVIEW, LabVIEW ineluye una referencia al archivo del disco. Haga clic con el botén derecho en un archivo de !a ventana Project Explorer y seleccione Open desde ef ment contextual para abrir cl archivo en su editor predeterminado, Haga clic con el botén derecho en el proyecto y seleccione View»Full Paths desde el ment, contextual para mostrar donde estén guardados en el disco tos archivos a fos que hace referencia tun proyecto. Use el cuadro de didlogo Project File Information para ver donde se encuentran los archives alos. que haee refereneia un proyeeto en el disco y en la ventana Prajeet Explorer, Seleccione Project» File Information para mostrar ef cuadro de didlogo Project File Information. También puede (© Nasional Inatuments | 1-9 ‘Loceién 1 Explorand LabVIEW hacer clio con el bot6n derecho en el proyecto y selecoionar Viewn) contextual para mostrar el cuadro de dilogo Project File Information. Guardar un proyecto Puede guardar un proyecto de LabVIEW de los siguientes modos: + Seleccione FilenSave Projet. + Seleccione Project»Save Project. ‘+ Haga clic con el botdn derecho en el proyecto y seleccione Save en e! meni contextual. + Haga clicen el botdn Save Projeet en la barra de herramientas Project, ‘Debe guardar los nuevos archivos que no hayan sido guardados previamente en un proyecto antes de poder guardar éste. Cuando guarde un proyecto, LabVIEW no guardard dependencias como patte del archivo del proyecto. “El Nota Realice una copia de seguridad de un proyecto cuando vaya a hacer revisiones importantes en él. C. Partes de un VI Los Vis de Lab VIEW contienen tres companentes principales: la ventana del panel frontal, el diagrama de bloques y el panel de ieonos / conectores. Ventana del panel frontal La ventana det panel frontal es la interfaz.del usuario para el VI. La figura 1-3 muestra un ejemplo de una ventana de panel frontal. Puede crear la vertana del panel frontal con controles © indicadores, que son os terminales interactivos de entrada y salida det V1, respectivamente. 4-10 | icon Manual de Curso LabVIEW Core 1 Figura 1-3. Panel frontat de VI Ventana de diagrama de bloques ‘Tras crear 1a ventana del panel frontal, puede afiadir cédigo usando representaciones grificas de funciones para controlar los objetos del panel frontal. La figura 1-4 muestra un ejemplo de una ventana de diagrama de bloques. La ventana del diagrama de bloques contiene este cédigo fuente grifico. Los objetos del panel frontal aparecen como terminales en el diagrama de bloques, Figura 1-4, Diagrama de Bloques © National instruments | 1-11 Leccién't Explorando tabvIEW Panel de iconos y conectores El panel de iconos y conectores muestra cémo usar y ver un VI en otro VI. Un VI que se utiliza en otro VI se denomina subVI, que es similar a una funcién en un lenguaje de programacién basado en texto, Para utilizar un VI como subVI, debe tener un panel de iconos y conectores. Cada VI muestra un icono en la esquine superior derecha de Ia ventana del panel frontal y de la ventana del diagrama de bloques. A la izquierda se muestra un ejemplo del icono predeterminado, Un icono es una representacién grifica de un V1. El icono puede contener texto ¢ imagenes. Si utiliza un VI como un subV1, el icono identifica el subVI en el diagrama de bloques del VI. Elicono predeterminado contiene un nimero que indica cuantos VIs nuevos abrié tras lanzar LabVIEW. = Para utilizar un VI como subVI, debe crear un panel de conectores, mostrado a la izquierda, Et panel de conectores es un conjunto de terminales det icono que se corresponde con los controles ¢ indicadores de ese VI, de manera similar 2 ta lista de parimetros de una llamada de funcién en lenguajes de programacién basados en texto. El panel de conectores se muestra junto al icono del ‘Vien esquina superior derecha de la ventana del panel frontal. No es posible acceder al panel de conectores desde el icono de la ventana det diagrama de bloques. Abrir un VI existente Seleccione Browse en la lista Open de la ventana Getting Started para navegar hasta un VI existente y abrirlo, Q — Consejo Los Vis que modifique en este curso se encuentran en el directorio \LabVIEW Core 1. Cuaodo se cargue el VI, podré aparecer un cuadro de didtogo de estado similar al siguiente ejemplo. 4-12 | nico Manvat do Curso LabVIEW Core 1 Figura 1-5. Cuadro de didlogo que indica el estado de la carga de Vis, taadng Desde (CASohtions LabVIEW Core Nees 8-0 HM SupporingFleATempenture Waring : ‘ La seccién Loading enumera los subVIs del VI segiin se cargan en memoria y muestra el namero de subVIs cargados hasta ahora. Puede cancelar a carga en cualquier momento, haciendo clic en el botén Stop. Si LabVIEW no puede encontrar inmediatamente un subV1, empezard a buscar en todos los directorios especificados en la ruta de biisqueda del VI. Puede modificar la ruta de bisqueda del Vi seleccionando Tools»Options y después Paths en la lista Category. { LabVIEW puede hacer case omiso de un subVI haciendo clic en el boton Ignore Item, o puede hacer clic en el botén Browse para buscar el subVI que falte, Guardar un VI Para guardar un nuevo VI, seleccione File»Save. Si ya guard6 su V1, seleccione File»Save As para acceder al cuadro de diilogo Save As. Desde el cuadre de diflogo Save As, puede crear una copia del Vi o eliminar el VI original y sustituirlo por el nuevo, ny ‘© National instramenss | 1-13 ‘Loceién 1 Explorande LabVIEW Figura'1-6: Cuadro de didlogo Save As “E\ Nota Consulte el tema Save As Dialog Box de la Ayuda de LabVIEW para mostrar informacién detallada sobre cada opcién del cuadro de didlogo Save As. D. Panel frontal Cuando abra un VI nuevo o existente, apareceré la ventana del panel frontal de! VI. La ventana del panel frontal es la interfaz del usuario para el VI, La figura 1-7 muestra un ejemplo de una Ventana de panel frontal. 144 | nicom Manual da Curso LabVIEW Gore t Figura 1-7. Sjemplo de un pane! frontal 7 Ventana del panel frontal 2 Barra de herramientas 3 Paleta de controles| Controles e indicadores Puede crear el panel frontal con controles ¢ indicadores, que son los terminales interactivos de entrada y salida del VI, respectivamente. Ejemplos de controles son mandos, botones de comando, diales y otros dispositivos de entrada. Los indicadores son grificos, LED y otras visualizaciones. Los controles simulan dispositivos de entrada de instrumentos y ofrecen datos al diagrama de bloques del VI. Los indicadores simulan dispositivos de salida de instrumentos y muestran datos que adquiere o genera el diagrama de bloques. La imagen 1-7 contiene tos siguientes objetos: dos controles: Number of Measurements y Delay (Gee). Tiene un indicador: un XY graph llamado Temperature Graph. El usuario puede cambiar ef valor de entrada de los controles Number of Measurements y Delay (ee). El usuario puede ver ef valor que genera el Vi en el indicador Temperature Graph El VI genera los valores pata los indicadores basdndose en el cédigo creado en el diagrama de bloques. ‘Aprenderd esto en Ia seccién Contrales e indicadores muméricos. Cada control o indicador tiene un tipo de datos asociado. Por ejemplo, el control deslizante horizontal Delay (sec) es un tipo de datos numérico. Los tipos de datos més utilizados son numérico, booleano y cadena de caracteres. Aprenderd otros tipos de datos en la leccién 3, Implementacién de un VE. (© National Instruments | 115 Leceién 1 Explorando LabVIEW Controles e indicadores numéricos El tipo de datos numérico puede representar nlimeros de varios tipos, como entero o real. Los dos objetos numéricos comunes soa el control numérico y el indicador numérico, como se ve en la figura 1-8. Objetos como los medidores y los dials también representan datos numéricos. Figura 1-8, Controles e indicadores numéricos 1 Botoris de incremenio /decremento ‘3 Indicador numérico 2 Control numérico, Para introducir o cambiar valores en un control numérico, haga clic en los botones de incremento y decremento con la herramienta de operaciones 0 haga doble clic en el mimero con la herramienta de etiquetado 0 de operaciones, escriba un nuevo niimero y pulse la tecla . Controles e indicadores booleanos El tipo de datos booleano representa datos que sélo tienen dos estadas posibles, como TRUE y FALSE u ON y OFF. Use los controles ¢ indicadores booleanos para escribir y mostrar valores booleanos. Los objetos booleanos simulan conmutadores, botones de comando y LED. Los objetos booleanos de tipo conmutador vertical y de tipo LED redondo aparecen en la figura 1-9. Figura 1-9. Controles ¢ indicadores booleanos Controles e indicadores de cadena de caracteres El tipo de datos cadena de caracteres es una secuencia de caracteres ASCII, Use controles de cadena de caracteres para recibir texto del usuario como una contrasefia o un nombre de usuario. Use indicadores de cadena de caracteres para mostrar texto al usuario, Los objetos de cadena de caracteres rs comunes son tablas y cuadros de entrada de texto, como se ve en la figura 1-10. 1.16 | sicom Mona! de Curso LabVIEW Coro + Figura 1-10, Controles e indicadores de cadena de caracteres ‘Sing Conteat icc tenon Tia : iy [Sa 8 © D f € Paleta de controles La Paleta de Controles contiene los controles ¢ indicadores que utiliza para crear et panel frontal. Se accede a la Paleta de Controles desde la ventana del panel frontal seleccionando View» Controls Palette. La Paleta de Controles sc divide en varias categorias; puede mostrar alguna de ellas 0 todas segiin sus necesidades. La figura |-11 muestra la paleta Controls con todas las categorias mostradas y 1a categoria Silver expandida, Durante este curso, la mayaria de ejercicios utilizan controles de la categoria Silver, Figura 1-11. Paleta de Controles Conbals S Ba G sexe Coot Dei [iy NET & hai [1 Sgnal Processing pF Aalders ‘Change Visible Paes ‘© National instruments | 1-17 ‘Lecciéa 1 Explorando LabVIEW Para mostrar u ocultar categorias (subpaletas), seleccione el botén Customize en la paleta y seleccione o deseleccione en Ia opcién Change Visible Palettes, Barra de herramientas de la ventana del panel frontal Cada ventana tiene una barra de herramientas asociada. Use los botones de la barra de herramientas de la ventana det pane! frontal para ejecutar y modificar et VI. La siguiente barra de herramientas aparece en la ventana del pane! frontal. [FETS] [set Application Font | ]fa~ |eda~ [Ee JD=]_ [Search EWE Haga clic en el botén Run para ejecutar un VI. LabVIEW compila el VI, si es necesario, Puede jecutar un VI'si el botén Run aparece como una flecha blanca continua, como se ve abajo. La flecha bianca continua también indica que puede utitizar el VI como un subVI sicrea un panel de conectores para el VE. Mientras se ejecuta el Vi, el botén Run aparece como se muestra abajo si el VI es de alto nivel, to que significa que no tiene VIs que le llamen y por lo tanto no es un subVI. Siel VI que se esta ejecutando es un subVI, el botén Run aparece como se muestra abajo. | El botén Rum aparece roto cuando et VI que esta creando o modificando contiene errores, Si el botén Run sigue apareciendo roto tras terminar de cablear cl diagrama de bloques, el Vi estd roto yno puede ejecutarse, Haga clic en este botén para mostrar la ventana Error list, que enumera todos los errores y advertencias. Haga clic en ef botén Run Continuously para ¢jecutar el VI hasta que anule o pause la ejecucién. ‘También puede hacer clic en el botén de nuevo para desactivar la ¢jecucitin continua. 118 | nleom £ Manval do Curso LabVIEW Gore + Mientras se ejecuta el VI, aparece el bot6n Abort Execution. Haga clic en este botén para detener el VI inmediatamente si no hay otro modo de detenerlo. Si mis de un VI de alto nivel en ejecucién utiliza el VI, el botén aparece atenuado. : AX Precaucién El botén Abort Execution detiene inmediatamente el VI, antes de que termine la iteracién actual. Si aborta un VI que utiliza recursos extemos, como el hardware externo, podria dejar fos recursos en un estado desconocido por no reslablecerlos o liberarlos correctamente. Disefie Vis con un botén de parada para evitar este problema. Haga clic en el botén Pause para pausar un Vi en ejecucién. Cuando haga clic en el botén Pause, LabVIEW resaltard en el diagrama de bloques la ubicacién donde pausé la ejecucién y el botén Pause apareceri en rojo. Haga clic en ef botén Pause de nuevo para seguir ejecutando el VI, Seleccione ef meni desplegable Text Settings para cambiar los ajustes de fuente para las partes seleccionadas de! VI, como el tamaiio, estilo y color. Seleccione el meni desplegable ‘Objects para alinear objetos a lo largo de les ejes, como el vertical, el borde superior, borde izquierdo, ete. Seleccione el ment desplegable Distribute Objects para espaciar objetos uniformemente, incluidos los espacios, la compresion, etc. £ Scieccione el menti desplegable Resize Objects para cambiar varios objetos del panel frontal al misme tamafio. ‘© National Insuments {1-19 Leccién 1 Explorando LabVIEW Seleccione el ment desplegable Reorder cuando tenga objetos solapados y desee definir cusl esta enfrente 0 detras de otro, Seleccione uno de los objetos con fa herramienta de posicionamiento y después seleccione Move Forward, Move Backward, Move To Front 0 Move To Back. Introduzea términos de biisqueda para localizar contenido en la Ayuda de LabVIEW. Seleccione el bot6n Show Context Help Window para cambiar la visualizacién de la ventana Context Help. Enter Text aparece para recordarle que existe un nuevo valor parasustituir a uno antiguo. El botén Enter Text desaparece cuando hace clic en él, pulsa la tecla o hace clic en el espacio de trabajo del panel frontal 0 del diagrama de bloques. Q Consejo La tecla de! teclado numérico termina una entrada de texto, mientras que la tecla principal afiade una nueva linea. Para modificar este comportamiento, seleccione Tools»Options, seleccione Environment de fa lista Category y marque la opcién End text entry with Enter key. E. Diagrama de bloques Entre los objetos del diagrama de bloques se incluyen los terminales, subVIs, funciones, estructuras y cables, Jos cuales transfieren datos entre otros objetos del diagrama de bloques. 4-20 | nicom Manual de Curso LabVIEW Cora 1 Figura 1-12, Ejemplo de un diagrama de bloques y el panel frontal correspondiente 1 Terminales de indicador Terminales Los objetos de fa ventana de! panel frontal aparecen como terminales en el diagrama de bloques. Los terminales son puertos de entrada y de salida que intercambian informacién entre el panel frontal y ef diagrama de bloques, Los terminales son andlogos a los parémetros y constantes de enguajes de programacién basados en texto. Existen terminales de control o de indicador y terminales de nodo. Los termninales de control y de indicador estén asociados a los controles ¢ indicadores det panel frontal. Los datos que introduce en los controles del panel frontal (a y ben ef pane! frontal anterior) entran en el diagrama de bloques mediante los terminales de control. A continuacién, los datos entran en las funciones Add y Subtract. Cuando las funciones Add y Subtract completan sus cdlculos, producen nuevos valores de datos. Los valores de datos fluyen a los terminales indicadores, donde actualizan los indicadores del pane! frontal (a+by a-ben el panel frontal anterior). Los terminales de la figura 1-12 pertenecen a los controles ¢ indicadores del panel frontal, Como los terminales representan las entradas y salidas desu V1, los subVIsy las funciones también tienen terminales, mostrados abajo. Por ejemplo, los pancles de conectores de las funciones Add y ‘Subtract tienen tres terminales de nodo. Para mostrar los terminales de la funcién en el diagrama de bloques, haga ctic con el botén derecho en el nodo de la funcién y seleccione Visible Items» ‘Terminals en el meni contextual. © National Insteumonts | 1-21 Leccién 1 Explorando LabVIEW Controles, indicadores y constantes Los controtes, indicadores y constantes actitan como entradas y salidas del algoritmo del diagrama de bloques. Considere la implementacién del algoritmo para el area de un tridngulo: rea = .5 * Base * Altura Eneste algoritmo, Base y Altura son entradas y Area es una salida, como se ve en Ia figura 1-13. Figura 1-13, Panel Frontal del area de un triéngulo Et usuario no cambiard ni accederé a la constante .5, por lo que no aparecerd en el pane! frontal a menos que se incluya como documentacién del aigoritmo, La figura 1-14 muestra una posible implementacién de este algoritmo en un diagrama de bloques de LabVIEW. Este diagrama de bloques tiene cuatro terminates distintos constituidos por dos controles, una constante y un indicador. Figura 1-14. Diagrama de bloques de! area de un triéngulo con vista de iconos de los terminates [Deternines the area of s triangle] Area (cm?) Base (crn) Height (cm) friangular Multiplier Ty 1 Controles 2 _Indicador 3 Constante ‘Tenga en cuenta que los terminales del diagrama de bloques Base (em) y Altura (em) tienen un aspecto distinto del terminal Area (em), Existen dos caracteristicas distintivas entre un control y un indicador en el diagrama de bloques. La primera es una flecha en el terminal que indica la direccién det flujo de datos. Los eontroles tienen flechas que muestran los datos que salen del terminal, mientras que el indicador tiene una flecha que muestra los datos que eotran al terminal, 122 | shcom Marval de Curso LabVIEW Coro 1 La segunda caracteristica distintiva es el borde alrededor det terminal. Los controles tienen un borde mas grueso y los indicadores uno mas fino. Puede ver terminales con o sin la vista de ieono. La figura I-15 muestra el mismo diagrama de blaques sin utilizar fa vista de icono de tos terminales; sin embargo, existen las mismas caracteristieas distintivas entre los controles y los indicadores. Figura 1-15. Diagrama de bloques del area de un tridngulo sin vista de iconos de los terminales Nodos de! diagrama de bloques Los nodos son objetos del diagrama de bloques que tienen entradas o salidas y realizan operaciones cuando se ejecuta un Vi. Son analogos a las instrucciones, operadores, funciones y subrutinas en lenguajes de programacién basados en texto. Los nedos pueden ser funciones, subVIs 0 estructuras. Las estructuras son elementos de control de procesos, como las estructuras Case, los bueles For o los bueles While. Las funciones Add y Subtraet de la figura 1-12 son nodos de funeién, Funciones Las funciones son los elementos operativos fundamentales de LabVIEW. Las funciones no tienen ventanas de panel frontal ni de diagrama de bloques pero si paneles de conectores. Al hacer doble clic en una funcién solo se selecciona ésta. Una fumeién tiene un fondo amarillo patido en su ieono. SubVis Los subVIs son Vis que crea para usar dentro de otro Vio a los que accede en la paleta Functions. Cualquier VI puede utilizarse como un subVI, Al hacer doble elie en un subVI del diagrama de bloques, aparece 1a ventana del panel frontal. El panel frontal incluye eontroles e indicadores. El diagrama de bloques incluye cables, iconos, funciones, posiblemente subVis y otros objetos de LabVIEW. La esquina superior derecha de la ventana del panel frontal y de laventana del diagrama de bloques muestra el icono para el VI. Es el icono que aparece cuando sitda cf Vien un diagrama de bloques como un subVI. Los subVIs también pueden ser Vis Express, Los Vis Express son nodos que requieren un cableado minimo porque los configura con cuadros de didlogo. Use Vis Express para tareas comunes de medicién. Puede guardar la configuracién de un VI Express como un subV3, Consulte e! tema Express Vis de la ayuda de LabVIEW para mostrar informacién detallada sobre la ereacin de un subVI a partir de una configuracién de un VI Express. ‘Notional instruments | 1-23 ‘Loosién 1 Explorando LabVIEW LabVIEW usa iconos de colores para distinguir entre VIs Express y otros Vis del diagrama de bloques. Los iconos pata Vis Express aparecen en el diagrama de bloques coma iconos radeados de un campo azul mientras que los iconos de subVIs tienen un campo amarillo. Nodos expandibles frente a iconos Puede mostrar Vis y VIs Express como iconos o coma nodosexpandibles. Los nodos expandibles aparecen como iconosrodeados de un campo de color, Los subVIs aparecen con un campo amarillo y los VIs Express con un campo azul, Use iconos si desea conservar espacio en el diagrama de bbioques. Use nodos expandibles para facilitar el cableado y para ayudar en la documentacién de diagramas de bloques. De forma predeterminada, los subVIs aparecen como iconos en el diagrama de bloques y los Vis Express apatecen como nodos expandibles. Para mostrar un subVI 0 VI Express como un nodo expandible, haga clic con el botén derecho en el subVI 0 VI Express y quite la marca junto af elemento del ment contextual View As Ieon. Puede cambiar el tamaiio de! nodo expandible para facilitar mis el cableado, pero también requiere un espacio considerable en el diagrama de bloques. Complete los pasos siguientes para cambiar el tamafio de un nodo en el diagrama de bioques: 1. Mueva la herramienta de posicionamiento sobre ef nodo. Aparecen los controladores de tamafio arriba y abajo del nodo. 2, Mueva el cursor sobre un controlador de tamafio para cambiar el cursor al de cambio de tamaiio. 3. Use el cursor de cambio de tamafio para arrastrar el borde de! nodo hacia abajo para mostrar mas terminates. 4, Suelte ef botén del ratén. Para cancelar una operacién de cambio de tamafio, arrastre el borde de! nodo mas allé dela ventana det diagrama de bloques antes de soltar el botén del ratén. La figura I-16 muestra el VI Basic Function Generator como un nodo expandible con un tamafio diferente. Figura 1-16. V1 Basic Function Generator en varios modos de visualizacién ae 1-24 | nicom ‘Manuel de Curso LabVIEW Coro + Y€\__‘Nota_ Si muestra un subVI o VI Express como un nodo expandible, no puede ver los terminales de ese nodo ni habilitar el acceso a la base de datos para ese nodo. Cables Con los cables s¢ transfieren datos entre abjetos del diagrama de bloques. En la figura 1-12, los cables conectan los terminales de control y de indicador a la funcién Add y Subtract. Cada cable tiene un solo origen de datos, pero puede cablearlo a numerosos Vis y funciones que leen los datos. Los cables tienen distintos colores, estilos y grosores, en funcién de sus tipos de datos. Un cable roto aparece como una linea negra discontinua con una X roja en ef medio, como se ve abajo. Los cables se rompen por varias razones, como al intentar cablear dos objetos con tipos de datos incompatibles. hm Latabla 1-1 muestra los tipos de cable mas comunes. Tabla 1-1, Tipos de cables comunes Tipode cable | _ Escalar Array1D | Array2D Color Numérico == _[ Naranja (coma flotante), Azut (nimero entero) Boleano ne seen Verde: Cadena de ee seennesone mamvecnn | Rosa caracteres En LabVIEW se usan cables para conectar varios terminales entre si y pasar datos a un VI. Debe ‘conectar los cables a las entradas y satidas que sean compatibles con fos datos que se transfieren con el cable. Por ejemplo, no puede cablear una salida de array a una entrada numérica, Ademés, Ja direccidn de tos cables debe ser correcta. Debe conectar los cables slo a una entrada y al menos ‘a.una salida, Por ejemplo, no puede cablear dos indicadores entre si. Los componentes que determinan la compatibifidad del cableado son el tipo de datos del control © el indicador y el tipo de datos del terminal. “Tipos de datos Los tipos de datos indican qué objetos, entradas y salidas pueden cablearse entre si. Por ejemplo, siun conmutador tiene un borde verde, puede cablear un conmutador a cualquier entrada con una etiqueta verde en un VI Express. Si un mando tiene un borde natanja, puede cablear un mando a ‘cualquier entrada con una etiqueta naranja. Sin embargo, no puede cablear un mando naranjaa una entrada con una etiqueta verde. Tenga en cuenta que los cables tienen ei mismo color que el terminal, © atonal instruments | 1-25 ‘Lecsién 1 Explorando LabVIEW Cableado automatico de objetos Cuando mueve un objeto seleccionado cerca de otros objetos del diagrama de bloques, LabVIEW traza cables temporales para mostrarle conexiones validas. Cuando suelta el botén del ratén para colocar e! objeto en el diagrama de bloques, LabVIEW conecta automaticamente los cables. ‘También pucde cablear automaticamente objetos que ya estan en el diagrama de bloques. LabVIEW conecta los terminales que combinan mejor y no conecta los que no combinan. Cambie el cableado automitico pulsando Ie barra espaciadora mientras mueve un objeto con la herramienta de posicionamiento. De forma predeterminada, el cableado automitico se activa cuando selecciona un objeto de ta paleta Functions o cuando copia un objeto que ya esta en el diagrama de bloques pulsando fa tecla y arrastrando el objeto. El cableado automitico se desactiva de forma predeterminads cuando usa la herramienta de posicionamiento para mover un objeto que ya esti en el diagrama de bloques. Puede ajustar la configuracién del cableado automitico selcccionando Tools»Options y después Block Diagram en la lista Category. Cableado manual de objetos ‘Cuando pasa la herramienta de cableado sobre un terminal, aparecerd una ayuda con cl nombre del terminal. Ademis, el terminal parpadea cn la ventana Context Help y en el icono para ayudarle a comprobar que esta cableando en el terminal correcta. Para eablear objetos entre si, pase la herramienta de cableado por el primer terminal, haga clic, pase el cursor sobre el segundo terminal xy haga clic de nuevo. Después de cablear, puede hacer clic con el botén derecho en el cable y seleccionar Clean Up Wire desde ef meni contextual para que LabVIEW elija autométicamente ‘una ruta para el cable. Si tiene que eliminar cables rotos, pulse para eliminar todos los ables rotos del diagrama de bloques, Paleta de funciones La paleta Funetions conticne los Vis, funciones y constantes que utiliza para crear el diagrama de bloques. Se accede a la paleta Functions desde et diagrama de bloques seleccionando View» Funetions Palette. La paleta Functions se divide en varias categoria; puede mostrar u ocultar categorias segiin sus necesidades. La figura 1-17 muestra una paleta Funetions con todas las categorias mostradas y la categoria Programming expandida, Durante este eurso, trabajard principalmente en la categoria Programming, pero también usard otras categorias o subpaletas. 128 | sleom a Manual de Curso LabVIEW Core + Figura 1-17. Pateta de funciones Femietione Para mostrar u ocullar eategorias, seleccione el botén Customize en la paleta y seleccione o deseleccione la opcién Change Visible Palettes. Barra de herramientas del diagrama de bloques Cuando ejecuta un VI, aparece una serie de botones en la barra de herramientas del diagrama de bloques que puede utilizar para depurar el V1. La siguiente barra de herramientas aparece en el diagrama de bloques. [> T=] SL) [| es eal ae [rt Anpcation Font [~ J[so~ pSmIc Haga clic en ef bot6n Highlight Exeeution para mostrar una animacién de la ejecucién det diagramarde bloques cuando ejecute e] VI. Observe el flujo de datos a través del diagrama de bloques. Haga clic en el botén de nuevo para desactivar el resaltado de la efecuci ‘© National nstumonts | 1-27 Leceién 1 Explorando LabVIEW Haga clic en el botén Retain Wire Values para guardar los valores de los cables en cada punto del flujo de ejecucién de modo que cuando coloque una sonda en el cable, pueda conservar inmediatamente el valor més reciente que pasé por el cable. Debe ejecutar correctamente cl VI al ‘menos una vez antes de poder conservar los valores de los cables. ea Haga clicen el botén Step Into para abrir un nodoy pausar la ¢jecucién. Haciendo clicen el boton Step Into de nuevo, se ejecuta la primera accién y se pausa la ejecucién en siguiente accién del subV1 o de Ia estructura. También puede pulsar las teclas y la flecha abajo, Ejecutar paso a paso un VI permite revisar el VI nodo a nodo. Cada nodo parpadea para indicar cuando esta listo para ejecutarse. [Ya] Haga clic en el botén Step Over para ejecutar un nodo y pausar la ejecucién en el siguiente nodo. ‘También puede pulsar las teclas y Ia flecha derecha. Al pasar por encima del nodo, ejecuta el nodo pero no paso a paso. (i ‘Haga clic en el botdn Step Out para terminar de ejecutar el nodo actual y pausar Ja ejecucién. ‘Cuando se termina de ejecutar el V1, se atentia el botén Step Out. También puede pulsar las teclas y Ia flecha arriba. AI salir de un nodo, se completa Ia ejecueién paso a paso del nodo y se pasa l siguiente nodo. Haga clic en el botén Clean Up Diagram para redirigir automiticamente todos los cables existentes y reordenar objetos del diagrama de bloques para generar un disefio mas limpio. Para ‘configurar las opciones de limpieza seleccione Toots» Options para mostrar el cuadro de didlogo Options y seleccione Block Diagram de la lista Category. Puede configurar las opciones en la seceién Block Diagram Cleanup. El botén Warning aparece si un VI incluye una advertencia y marcé Ia casilla de verificacién ‘Show Warnings en la ventana Error List, Una advertencia indica que existe ua posible problema con el diagrama de bloques, pero no impide que se ejecute el VI. 128 | nleom. fan Manual do Curso LabVIEW Core Utilidades de ayuda de LabVIEW Use la ventana Context Help, la Ayuda de LabVIEW y ef NI Example Finder para ayudarle a crear y modificar Vis. Consulte la Ayuda de LabVIEW y los manuales para obtener informacién adicional acerca de LabVIEW. Ventana Context Help La ventana Context Help muestra informacién basica sobre Jos diferentes objetos de LabVIEW cuando inueve el cursor sobre cada uno de ellos. Para ver la ventana Context Help, seleccione Help»Show Context Help, pulse las teclas 0 haga clic en el botén Show Context Help ‘Window de ta barra de herramientas. Cuando mueva el cursor sobre los objetos del panel frontal y del diagrama de bloques, la ventana Context Help mostrari el icono para subVis, funciones, constantes, controles ¢ indicadores, con cables acopiados a cada terminal, Cuando mueva el cursor sobre las opciones del cuadro de didlogo, la ventana Context Help mostrard sus descripeiones, En a ventana Context Help, las etiquetas de terminales obligatorios aparecen en negrita, los terminales recomendados como texto sin formato y los opcionales aparecen atenuados. Las etiquetas de terminales opcionales no aparecen si hace clic en el botén Hide Optional Terminals and Full Path en la ventana Context Help. Figura 1-18. Ventana Context Help format 0639. newfie path Not Pathin | Filputh tog my) —f gz fom rows ‘umber ofr (alle ed Te mitment | tnpen ww , feuds a pedi number fines or ows fom sums tet le begining ata specieg character oftiet and coments the data 320, oublesrecian wre f numba, sng ringer, You must many Jalect tre pohmerphicistence you wart Detaled bate © National Instruments | 1-29 Leceién 1 Explorande LabVIEW Haga clic en el botén Show Optional Terminals and Full Path situado en la esquina inferior iaquierdade la ventana Context Help para ver los terminales opcionales de un panel de conectores. y la ruta completa de un VI. Los terminales opcionates aparecen como cables coriados, informandole de que existen otras conexiones, El modo detallado muestra todas los terminales, como en {a figura 1-19. fal Figura 1-19. Ventana Context Help detallada, Sees (Cents LsiVIEW 201 vLseIU ty Woes Read From Spreadsheet Fle format 0530- new fie pith (Not Path. fe puts (dalag temps) alow ‘number strows itt) Fe ow sam et rad oft har. ask afer tead han.) mae Crsacetnow (0 = OF? twanspore (na) sebeaer Feast a species numb ines ot tour om 2 ume te fle begining 34 specified churterofnet and conve the ditto 970, d0uBe-peciion trey of mumbens, sing, or intager You must manually selectthe polymorph instance you watts belsie] it 3 Haga clicen el botén Lock Context Help para bloquear el contenido actual de la ventana Context Help. Cuando se bloquea e! contenido, si mueve el cursor sobre otro objeto, no cambiara ef contenido de Ia ventana. Para desbloquear la ventana, haga clic de nuevo en el botén. También puede acceder a esta opcién desde el mend Help. fs] Si existe un temaen la Ayuda de LabVIEW asociado a un objeto que se describe en la ventana ‘Context Help, aparecerd un enlace azul Detailed help en ta ventana Context Help. Asimismo, ‘et botén More Help se encontrara activado. Haga clic en el enlace o en el botén para mostrar LabVIEW Help y obtener informacién adicional sobre el objeto. [2 = [2] LabVIEW Help Puede accedera la Ayuda de LabVIEW haciendo clic en el botén More Help de la ventana Context Help , seleccionando Help»LabVIEW Help, o haciendo clic en el enlace azu} Detailed Help de !a ventana Context Help. También puede hacer clic con el botén derecho en un objeto y seleccionar ‘Help en ef ment contextual. 4-90 | acon Manual do Curso LabVIEW Core 1 LabVIEW Help contiene descripciones detalladas de la mayoria de las paletas, meni, herramientas, Vis y funciones. La Ayuda de LabVIEW también incluye instrucciones paso a paso para utilizar las funciones de LabVIEW. La Ayuda de LabVIEW incluye enlaces a los siguientes recursos: . + LabVIEW Documentation Resources, que describe documentos en linea e impresos para ayudar a Tos usuarios nuevos y con experiencia e incluye versiones en PDF de todos los manuales de LabVIEW. + Recursos de soporte técnico en el sitio Web de National instruments, como NI Developer Zone, KnowledgeBase y Product Manuals Library (Biblioteca de Manuales de Producto). NI Example Finder Use NI Example Finder para explorar o buscar ejemplos instalados en su ordenador 0 en NI Developer Zone en ni .com/zone. Estos ejemplos demuestran cémo utilizar LabVIEW para realizar numerosas tareas de prueba, medidas, contro! y disefio. Seleccione Help»Find Examples o haga clic en el enlace Find Examples de la seccién Examples de la ventana Getting Started para lanzar NI Example Finder. Los ejemplos pueden mostrarle como utilizar Vis 0 funciones especificas, Puede hacer clic con el botén derecho en un VI o funcién del diagrama de bloques o en una paleta fijada y seleccionar Examples desde el meni contextual para ver un tema de ayuda con enlaees a ejemplos para ese VI o funcién. Puede modificar un VE de ejemplo para ajustarse a una aplieacién o puede copiar y pegar desde uno o mas ejemplos en un Vi que haya creado. ‘©Nationa fnstrumanis | 131 Leccdn 1 Exporando LabVIEW Figura 1-20. NI Example Finder Browse [Sew] ouble-cik an expt to open Information eons ccotingt ‘Gbuidng Viecineraces . Om {Gi Conmuniatig wn eral Aplenion! Gi diniauing sed Dacrerting Aopicebon © diecery Sette Gennes Cafandamert Giicdnaetopat ni Dap Dndorey aepeatons ChoneRecert GBNeworing New Eras for aE 2003 | iNew emptor abvEw 2008 (Now teens for as W 2001 | Gow ple EW | Gi opemans ppierzos {Gaping and Posanng Ot | ‘Gi hrogrmmteayConlng Vs I GiTookss andbadutes | Toons anda Naot kee se ft | rum rentetonsranare “Finda F. Busqueda de controles, Vis y funciones Cuando seleeciona View»Controls o View»Funetions para abrir las paletas Controls y Functions, aparecen dos botones en !a parte superior de Ja paleta, ‘Search: cambia la paleta al modo de bitsqueda para poder realizar bisquedas de texto y encontrar controles, Vis o funciones en las paletas. Con la paleta en el modo de busqueda, haga clic en el botén Retum para salir de! modo de biisqueda y volver a la paleta. ‘Customize— Oftece opciones para seleccionar un formato para la paleta actual, mostrando u ocultando categorias para todas las paletas y clasificando elementos de los formatos Text y ‘Tree alfabéticamente, Seleccione Options de! meni contextual para mostrar la pigina Controls/Functions Patettes del cuadro de diilogo Options , donde puede seleccionar un formato para todas las paletas. Este botén sélo aparece si hace clic en ta chincheta de la esquina superior izquierda de una paleta para fijarla. (Rema 1192 | aeom 1@ Nana oC LabVEW Cot O Hasta que se familiatice con la ubicacién de los VIs y las funciones, busque la funcién o VI con él botén Search. Por ejemplo, si desea buscar la funcién Random Number, haga clic en el botén fy ‘Search en a paleta Functions y empiece a escribir Random Number en el cuadro de texto de la parte superior de la paleta. LabVIEW muestra todos los elementos coincidentes que empiccen pot ~ el texto escrito 0 que lo contengan. Puede hacer clic en uno de los resultados de biisqueda y c arrastrarlo al diagrama de bloques, como en la figura I-21. les Figura 1-21. Busqueda de un abjeto en la paleta Functions search Palettes Perce Randan Nese PRB. (NL bP Perec Random Nie Wavefor. [NI MABaE Seante Reni otras Rar Seredte Abdrery Sona ExcessFu. ib] Siete Sgn <> Siete hebrory San f_ExpeessFA hb) Siudte Spal > Sedte Sial_<«Wavetor Generation > DigalPater Generator PS eee i Haga doble clic en el resultado de bisqueda para resaltar su ubieacién cn la paleta. Si se trata de . tun objeto que vaya a usar con frecuencia, puede afiadirlo a su categoria Favorites. Haga clic con el botén derecho en el objeto de la paleta y seleccione Add Item to Favorites, como se ve.en la figura 1-22. ‘© National instants | 1-33 \Leccién 1 Explorando LabVIEW Figura 1-22. Afiadir un elemento a la categoria Favorites de una paleta PPP Pb DEP EP Parecido al botén de Search, usted puede usar et cuadro de didlogo Quick Drop para especificar una paleta de objetos por nombre y emplazar el objeto en el diagrama de bloques o en el panel frootal. Ademis de las paletas de objetos, usted puede también especificar objetos de proyecto por nombre en el cuadro de didlogo Quick Drop. Para mostrar el cuadro de didlogo Quick Drop, presione o seleccione View»Quick Drop. Escriba el nombre del objeto que quiere afiadir al diagrama de bloques o al panel frontal. LabVIEW mostrari tos resultados en la fista Name Mate List. Para adjuntar e! objeto selecciénelo con el cursor, presione la tecla , haga doble-clic en el nombre del objeto-en la lista, o haga clic en el diagrama de bloques o e! panel frontal. Haga clic en el lugar en el diagrama de bloques 0 en el pane! frontal donde quiera afiadir el objeto. 1.98 | nico Manual do Curso LABVIEW Cato + Figura 1-23. Buscando un objeto en el cuadro de didlogo Quick Drop Rondam Namber i) H} TOMS Generate Random Oatava Perini Random Noisexi[NLABLB 35.6} Perindic Random Noise PiyPei INI PbyPti) Periodic Random Noize Waveform [NI_MAB Mlb] Discrete Randoms Continsous Rendomaa ‘Quasi Rondon [NAL SgnalGeneration. Nib} G.Seleccién de una herramienta Puede crear, modificar y depurar VIs utilizando las herramientas que ofrece LabVIEW, Una herramienta es un modo de funcionamiento especial del cursor del raton. El modo de funcionamiento del cursor se corresponde con e! icono de Ia herramienta seleccionada. LabVIEW elige qué herramienta seleccionar en funcién de la ubicacién actual del ratén. Figura 1-24, Paleta Tools Consejo Puede clegir manuaimente !a herramienta que necesita seleccionandola en la paleta Tools. Seleccione ViewTools Palette para mostrar la paleta Tools. © National nstnements | 1-95 ‘Leceién 1 Explorando LabVIEW Herramienta de operaciones Cuando el cursor del ratén cambia al icono mostrado abajo, la herramienta de operaciones esta operativa, Use la herramienta de operaciones para eambiat los valores de un control. Por ejemplo, enla figura 1-25 la herramienta de operaciones mueve el puntero del control destizante horizontal. Cuando el ratén pasa por el puntero, el cursor accede automaticamente a la herramienta de operaciones, a Figura 1-25. Uso de la herramienta de operaciones Laherramienta de operaciones se utiliza principalmente en la ventana del panel frontal, pero también puede utilizar esta herramienta de la ventana del diagrama de bloques para cambiar el valor de una constante booleana. Herramienta de posicionamiento ‘Cuando el cursor del ratén cambia al icono mostrado abajo, la herramienta de posicionamiento esta operativa. Use 1a herramienta de posicionamiento para seleccionar objetos o cambiar su tamafio. Por ejemplo, en la figura 1-26 Ia herramienta de posicionamiento sclecciona el control numérico Number of Measurements. Tras seleceionar un objeto, puede moverlo, copiarlo o eliminarlo. Cuando el ratén pasa por el borde dé un objeto, el cursor accede automaticamente a la herramienta de posicionamiento, +96 | nicom BPS Manual do Curso LabVIEW Core 1 Figura 1-26. Uso de la herramienta de posicionamiento para seleccionar un objeto Sil ratén pasa por encima de un nodo de cambio de tamaiio de ut objeto, el modo del cursor cambia para indi ‘cursor se encuen del cursor cambi: ja a una flecha de dos puntas, jcar que puede cambiar su tamaito, como se ve en la figura 1-27. Observe que el ra sobre uns esquina del grifico XY en un node de cambio de tamafio y el modo Figura 1-27. Uso de fa herramienta de posicionamiento para cambiar el tamafio de un objeto Beet pete Toa Window 11] [35ptAppiestion Foot @ Nationa instruments | 137 Leceién 1 Exploranco LabVIEW Puede utilizar ta herramienta de posicionamiento en la ventana del panel frontal y en el diagrama de biogues. Herramienta de etiquetado Cuando el cursor del ratén cambia al ieono mostrado abajo, la herramienta de etiquetado esta operativa, Use la herramienta de etiquetado para eseribir texto en un control, para modificar texto ¥ para crear etiquetas libres. Por ejemplo, en la figura 1-28 la herramienta de etiquetado escribe texto en el control numérico Number of Measurements. Cuando el ratén pasa por el interior del control, el eursor accede automaticamente a Ia herramienta de etiquetado. Haga clic una ver para situar un cursor dentro del control. A continuacién, haga doble clic para seleccionar el texto actual. I Figura 1-28. Uso de la herramienta de etiquelado ‘Cuando no esti en una zona especifica de una ventana del panel frontal o una ventana del diagrama de bloques que accede a un determinado modo del ratén, el cursor aparecerd como una cruz. Si se habilita la seleccién de herramienta automética, puede hacer doble clic en cualquier espacio abierto para acceder a la herramienta de etiquetado y crear una etiqueta libre. Herramienta de cableado Cuando el cursor del ratén cambia al icono mostrado abajo, la herramienta de cableado esti operativa, Use la herramienta de cableado para cablear objetos entre si que estin en el diagrama de bioques. Por ejemplo, en ta figura 1-29 la herramienta de cableado cablea el terminal Number of 1-98 | alcom oC Manual do Curso LabVIEW Coro 1. Measurements al terminal de contaje para el bucle Fot. Cuando el ratén pasa por el punto de salida entrada de un terminal o por un cable, el cursor accede autométicamente a la herramienta de cableado, > Figura 1-29. Uso de la herramienta de cabieado | | | La herramienta de cableado funciona principalmente con la ventana del diagrama de bloques y ‘cuando crea un panel de coneetores en la ventana del panel frontal. Otras herramientas a las que se accede desde la paleta A Puede acceder a las herramientas de operaciones, posicionamiento, etiquetado y cableado directamente desde la paleta Tools, en lugar de usar ef modo de seleccidn automatica de la herramienta. Seleccione View»Tools Palette para mostrar Ia paleta Tools. Figura 1-30. La paleta Tools ‘©NationalInsrumants | 1-39 Lecciéa 1 Explorando Labview El elemento superior de la paleta Tools cs ¢l botén Automatic Tool Selection. Cuando se selecciona, LabVIEW elige automaticamente una herramienta en funcién de la ubicacién de su cursor. Puede desactivar la selecoién automatica de la herramienta deseleccionando el elemento 0 seleccionando otro elemento de la paleta, Existen otras herramientas en ta paleta, descritas abajo: Use la herramienta Object Shortcut Menu para acceder a un mend contextual del objeto con e! botén izquierdo del ratén. Use la herramienta de desplazamiento para desplazarse por las ventanas sin utilizar barras de desplazamiento. Use laherramienta de puntos de interrupcién para establecer puntos de interrupcién en VI, funciones, nodos, cables y estructuras para pausar la ejecueién en esa ubicacién. [sl Use Ja herramienta de sonda para crear sondas en cables del diagrama de bloques. Use la herramienta de sonda para comprobar valores intermedios de un VI que produce resultados cuestionables 0 inesperados. 2] Use la herramienta de copiar cofor para copiar colores y pegarlos eon la herramienta de color. Use la herramienta de color y el color escogido para darle color a un objeto. Lx herramienta de color también muestra los ajustes de color de primer plano y de fondo actuales. Seleccione ia herramienta de color y haga clic con el botén derecho en un objeto 0 espacio de trabajo para ver el selector de color. 1-40 | ahem ‘Manual de Curso LabVIEW Goro 1 H. Flujo de datos LabVIEW sigue un modelo de flujo de datos para ejecutar Vis. Se ejecuta un nodo del diagrama de bloques cuando recibe todas !as entradas necesarias. Cuando se ejecuta un nodo, produce datos de salida y pasa los datos al siguiente nodo de fa ruta del flujo de datos. El movimiento de los datos através de los nodos determina el orden de ejecucidn de los Vis y tas funciones del diagrama de bloques. Visual Basic, C++, JAVA y fa mayoria del resto de lenguajes de programacién basados en texto siguen un modelo de flujo de control de ta ejecucién del programa. En el flujo de control, el orden secuencial de los elementos del programa determina el orden de ejecucién de un programa. Para ver un ejemplo de programacién de flujo de datos, piense en un diagrama de bloques que suma dos niimeros y después resta 50 , 0 del resultado de la suma, como en la figura 1-31. Eneste caso, cl diagrama de bloques se ejecuta de izquierda a derecha, no porque los objetos estén situados en ese orden, sino porque la funcidn Subtract no puede ejecutarse hasta que la funcién Add termine de ejecutarse y pase los datos a la funcién Subtract. Recuerde que un nodo se ejecuta sélo cuando existen datos de todos sus terminales de entrada y suministra datos a los terminales de salida sélo ‘cuando el nodo termina su ejecucién, Figura 1-31. Ejemplo de programacién de flujo de datos Number 1 al om En la figura 1-32, piense en qué segmento de cédigo se ejecutaria primero, la funcién Add, Random Number 0 Divide. No puede saberlo, ya que las entradas de las funciones Add y Divide estan disponibles a la vez, mientras que la funcién Random Number no tiene entradas. En una situacién en la que un segmento de cédigo debe ejecutarse antes que otro y en la que no existe dependencia de datos entre fas funciones, use otros métodas de programacién, como clusters de ‘errores, pata forzar el orden de ejecucién, Consulte fa leccién 5, Creando y aprovechando estracturas de datos paca obtener informacién adicional acerca de los clusters de error. Figura 1-32. Ejemplo de flujo de datos para segmentos de cédigos miltipies Number 1 sents p> ao Nomber 2 Number 3 Naber ¢ [eorg— ‘© National Instuments | 1-41 Loceién 1 Explorance LabVIEW |. Creacién de un VI simple La mayoria de los Vis de LabVIEW desempefian tres tareas principales: adquirir ciertos tipos de datos, analizar los datos adquiridos y presentar el resultado. Cuando cada una de estas partes es sitmple, puede completar todo el VI con muy pocos objetos en el diagrama de bloques. Los VIs Express estin disefados especificamente para completar operaciones comunes y muy utilizadas. Eneesta seccién eprendera algunos Vis Express que adquieren, analizan y presentan datos. Después aprenderd a creat un VI simple que utiliza estas tres tareas, como se ve en Ia figura 1-33. Figura 1-33. Ventana del pane! frontal y del diagrama de bloques de ejemplo de adquisicién, andlisis y presentacién - 3 [2] Lit] [Bee Appicason Fook sel Seen a [ [Ele Eat View Broject Operate Toels Window Help e| [eral sor tpe: search Al? net i pt Sgn wacom Gap = fiers Sat En la paleta Functions, los Vis Express estan agrupadas en la categoria Express. Los Vis Express utilizan el tipo de datos dindmico para pasat datos entre si. 1-42 | stoom Manual de Curso LabVIEW Cora 1 Adquirir Los Vis Express usados para las tareas de Adquisicién incluyen lo siguiente: Asistente DAQ, Asistente de Instrumentos E/S, Sefial Simutada, y Lectura desde un archivo de Medidas. DAQ Assistant ELDAQ Assistant adquiere datos con un dispositive de adquisicién de datos. Debe utilizar este VI Express con frecuencia a lo largo de este curso. Hasta que aprenda mas de la adquisicién de datos, sélo usard un canal det dispositive de adquisicién de datas, cH0. Este canal esta conectado al sensor de temperatura en el BNC 2120. Puede tocar el sensor de temperatura para cambiar la lectura de temperatura en el sensor. Instrument /O Assistant El Instrument /O Assistant adquiere datos de contro! de instrumentos, normalmente desde una interfaz GPIB 0 de serie. Fei Simulate Signal El VI Express Simulate Signal genera datos simulados como una onda sinusoidal. Read From Measurement File E! VI Express Read From Measurement File [ee un archivo que se cred utilizando el VI Express Write To Measurement File. Coneretamente lee los formatos de archivo LVM 0 TDM. Este VI Express no lee archivos ASCII. Consulte la leccién 6, Administrando archivos y recursos hardware para obtener informacién adicional acerca de leet datas de un archivo. # oe Analizar Los Vis Express utilizados para la tarea Analizar incluyen los siguientes: Amplitude and Level Measurements, Statistics y Tone Measurements. ©National Insirumonts | 1-43 ‘Lecciéa 1 Explorando LabVIEW Amplitude and Level Measurements. El VI Express Amplitude and Level Measurements mide la tensién en una seffal. Mide ta CC, RMS, pico maximo, pico minimo, de pico a pico, promedio del ciclo y RMS del ciclo, fl Statistics El Vi Express Statistics cafcula los datos estadisticos de una forma de onda, Incluye los valores medio, suma, desviacién esténdar y extremos, Spectral Measurements El Vi Express Spectral Measurements realiza la medi magnitud y la densidad espectral de potencia, icién espectral de una forma de onda, como ta Medidas de tonos El VI Express Tone Measurements busca un iinico tono con la maxima frecuencia o la mayor amplitud. También busca la frecuencia y la amplitud de un nico tono. iS Fitter El VI Express Filter procesa una sefial mediante filtros y ventanas. Los filtros usados incluyen lo siguiente: Pasoalto, Pasobajo, Pasobanda, Bloqueobanda, y Suavizado (Smoothing). Las ventanas utilizadas son Butterworth, Chebyshev, Chebyshev inverso, Eliptico y Bessel. as Presentar Presente resultados utilizando Vis Express que realicen una funcién, como el Vi Express Write to Measurement File o indicadores que presentan datos en In ventana del pane! frontal, Los indicadores que mas se suelen utilizar para esta tarea son los graficos Waveform Chart, Waveform Graph y XY Graph. Los Vis Express habituales son VI Express Write to Measurement File, VE Express Build Text, DAQ Assistant e Instrument /O Assistant. En este caso, el DAQ Assistant y el Instrument 1/O Assistant proporcionan datos de salida desde el ordenador al dispositive DAQ 0 un instrumento extemo. 44 | cor Manval de Curco LabVIEW Coro 1 Write to Measurement File EIVI Express Write to Measurement File eseribe un arehivo en formato de archivo LVM o TDMS. * Consulte la leccién 6, Administrando archivos v recursos hardware para obtener informacion adicional acerca de escribir en archivos de medida. Build Text El VI Express Build Text crea texto, normalmente para mostrar en la ventana del panel frontal para exportara un archivo o instrumento, Consulte Ia leccién 6, Administrando archives y recursos ‘hardware para obtener informacién adicional acerca de crear cadenas de caracteres. Ejecutar un VI ‘Tras configurar los VI Express y cablearlos, puede ejecutar e! VI. Cuando termine de crear el VE, hhaga clic en el botén Rum en [a barra de herramientas para ejecutar el VI. Mientras se esté ejecutando el VI, el icono del botén Run cambia a la figura mostrada abajo. Tras terminar [a ejecucién, el botén Run cambia a su estado original y los indicadores del panel frontal contendrin datos. Errores del bot6én Run Si un VIno se ejecuta, es un VI roto 0 no ejecutable. Ei botén Run aparece roto cuando el VI que esti creando 0 modificando contiene errores. Si el botén sigue apareciendo roto tras terminar de cablear el diagrama de bloques, e! VI esti roto y no puede ejecutarse. Normalmente esto significa que una entrada necesaria no esta cableada o que un cable esta roto. Pulse el botén Run roto para acceder a la ventana Error list. La ventana Error list muestra cada error y describe el problema, Puede hacer doble clic en un error para acceder a él directarente, Consulte la leccién 2, Resolucién de problemas y depuracién de Vis para obtener informacién adicional acerca de depurar Vis. ‘© National Instruments | 7-45 u Marval de Curso LabVIEW Cora 4 Autorrevisién: Cuestionario Consulte la figura 1-34 para responder a las preguntas de este cuestionatio. Figura 1-34, Preguntas de tlujos de datos Hanber 1 ‘Number 2 ‘Number 3 enters | 1. {Qué funcién se ejecuta primero? Add or Subtract? a Add b. Subtract c. Nose sabe 4Qué funcién se ejecuta primero? Sine or Divide? a. Sine b. Divide c. No se sabe 3, {Qué funcién se ejecuta primero? Random Number, Divide or Add? a, Random Number b. Divide ce. Add d. Nose sabe 4. {Qué funcién se ejecuta después? Random Number, Subtract or Add? a, Random Number b, Subtract c. Add d. Nose sabe 5. ¢Cudles son las tres partes de un VI? a. Ventana del panel frontal » b. Ventana de! diagrama de blogues ©. Proyecto 4d. Panel de iconos y conectores ‘© National instruments | 1-47 Manual de Gurso LabVIEW Care 1 Autorrevisién: Respuestas Number 1 Rest 1 1. £Qué funcién se ejecuta primero? Add or Subtract? a Add b. Subtract c. Nose sabe 2. Qué funcign se ejecuta primero? Sine or Divide? a. Sine b. Divide ©. Nose sabe Qué funcién se ejecuta primero? a, Random Number b. Divide c. Add d, Nose sabe 4. ¢Qué funcién se ejecuta después? Random, Subtract or Add? a, Random Number b. Subtract Add d. Nose sabe gCuailes son las tres partes de un V1? a, Ventana del panel frontal b. Ventana del ©. Proyecto d, Panel de iconos y coneetores jagrama de bloques ‘© Nationa instrumants | 1-49 Leocién 1 Explorando LabViEW Notas 150 | nicom Resolucién de problemas y depuracién de Vis Para ejecutar un VI, debe cableat todos los subVIs, funciones y estructuras con los tipos de datos correctos para los terminales. A veces un VI produce datos o se ejecuta de un modo inesperado. Puede utilizar LabVIEW para configurar cémo se ejecuta un VI y para identificar problemas con Ja organizacién del diagrama de bloques o con los datos que pasan por el diagrama de bloques. Temas A. Correccion de Vis ratos B. Técnicas de depuracién C. Datos sin definir 0 inesperados D. Manejo de Errores ‘© National instruments j 2-1 Loceién 2 Rsolucén de problemas y dopuracién do Vis A. Correccién de Vis rotos Si un VI no se ejecuta, es un VI roto o no ejecutable. El botén Run aparece roto cuando el VI que esta creando o modificando contiene errores. ‘Si el botn sigue apareciendo roto tras terminar de cablear el diagrama de bloques, el VI esta roto y no puede ejecutarse. Buscar causas de Vls rotos Las advertencias no impiden que ejecute un VI. Estin disefiadas para ayudarle a evitar posibles problemas en Vis. Sin embargo, los errores pueden romper un VI. Debe resolver los errores antes de poder ejecutar el VI. Haga clic en el botén Run o seleccione View»Error List para averiguar por qué se ha roto un VI. La ventana Error list muestra cada uno de los errores. La seccién Items with errors muestra los nombres de todos fos elementos en memoria, como librerias de proyectos y VIs que contienen errores. Sidos o mis elementos tienen el mismo nombre, esta seccién muestra la ubicaci6n en conereto de cada elemento. La seccién errors and warnings muestra los errores y las advertencias del VI que seleceione en Is seccién Items with errors, La seccién Details describe los errores y en algunos casos recomienda cémo eorregirlos. Haga clic en el botén Help para ver un tema de LabVIEW Help que describa el error en detalle ¢ incluya instrucciones paso a paso para corregirlo, Haga clic en el botén Show Error o haga doble clic en la descripcidn del error para resaltar la zona del diagrama de bloques o del panel frontal que contenga el error. 22 | nicom on é Ke ge i © Manual do Curso LabVIEW Coro + Figura 2-1. Ejemplo de cuadro de diélogo Error List Metered be ward top co i Sika yo ore, rg ary, ef 2c) ord nach Showa Cantante rion oto hen Gate eed. ‘Be ype he source de oy bk 15 bt eco: (Melyped the srkeder od eorets Sea Causas habituales de Vis rotos Esta lista contiene razones habituales de rotura de un VI mientras lo modifica: + Eldiagrama de bloques contiene un cable roto por un desajuste de tipos de datos 0 un extremo suelto o desconectada. Consulte el tema Correcting Broken Vis de la Ayuda de LabVIEW para obtener informacién acerca de corregir cables rotos. + Un terminal obligatorio del diagrama de bloques no esti cableado. Consulte ¢l tema Using Wires to Link Block Diagram Objects en la Ayuda de LabVIEW para obtener informacién acerca de configurar entradas y salidas obligatorias. + Un subVI esta roto o modificé su panel de conectores tras colocar su icono en el diagrama de bloques del VI. Consulte el tema Creating Sub Vis de LabVIEW Help para obtener informacion: acerca de subVIs. B. Técnicas de depuracién Si un VI no esté roto, pero obtiene datos inesperados, puede utilizar las siguientes téenicas para identificar y corregir problemas con el VI o el flujo de datos del diagrama de bloques: + Cablee los parémetros de salida y entrada de error en la base de la mayoria de los VIs y funciones integrados, Estos pardmetros detectan errores encontrados en cada nodo del diagrama de bloques e indican si ocurrié un error y dénde. También puede utilizar estos pardmetros en los Vis que cree, + Para climinar todas las advertencias del V1, seleccione View»Error List y marque la casilla de verificacién Show Warnings para ver todas las advertencias de! VI. Determine las causas y corrijalas en el VI. ‘© National insiuments | 23 Leocién 2 Raslucén de problemas y depuracién de Vis, + Haga triple clic en el cable con fa herramienta de posicionamiento para resaltar toda su ruta y asegurarse de que los cables se conecten a los terminales apropiados. + Use la ventana Context Help para comprobar los valores predeterminados de cada funcién y subV[ en el diagrama de bloques. Los Vis y las funciones pasan los valores predeterminados si no estén cableadas las entradas recomendadas u opcionales. Por ejemplo, una entrada booleana podria configurarse en TRUE si no esta cableada. + Use el cuadro de diélogo Find para buscar subVIs, texto y otros objetos para corregir en el VI. + Seleccione View»VI Hierarchy para buscar subVIs sin eableat. A diferencia de las funciones sin eablear, los Vis sin cablear no siempre generan errores a menos que configure una entrada como obligatoria, Si coloca por error un subVI sin cablear en el diagrama de bloques, seejecuta cuando lo haee el diagrama de bloques. Por lo tanto, el VI podria realizar acciones adicionales. + Resaite las ejecuciones para ver el movimiento de datos por el diagrama de bloques. + Bjecute paso a paso el VI para ver cada accidn suya en el diagrama de bloques. + Use la herramienta de sonda para observar valores de datos intermedios y para comprobar la salida de errores de Vis y funciones, en especial las que realizan E/S. + Haga clic en el botén Retain Wire Values en la barra de herramientas del diagrama de bloques para conservar los valores del cable, que utilizard con sondas. Esta funcién permite comprobar fiicilmente valores de datos que se transfirieron por iltima vez por algin cable. + Use puntos de interrupeién para pausar la ejecucién, para poder ejecutar paso a paso o insertar sondas, + Suspenda la ejecucién de un subVI para modificar valores de controles ¢ indicadores, para controlar el niimero de veces que se ejecuta o para volver al principio de la ejecucién del subVI. + Determine si los datos que pasa una funcién o subVI estan sin definir. Esto suele suceder con Jos ntimeros. Por ejemplo, en un punto del VI una operacién podria haber dividido un niimero por cero, devolviendo 1né (infinito), mientras que las siguientes funciones o sub Vis esperaban niimeros. + Siel VIse ejecuta con mds lentitud de la esperada, confirme que desactive resaltar le ejecucién ensubVIs. Asimismo, cierre los paneles frontales y los diagramas de bloques del subVI cuando no los esté utilizando, ya que las ventanas abiertas pueden afectar a fa velocidad de ejecucidn, + Compruebe la representacién de controles ¢ indicadores para ver si se estd produciendo desbordamiento, porque convirtié un nimero de coma flotante en un mimero entero o éste en un niimero entero de menos bits. Por ejemplo, podria cablear un niimero entero de 16 bits eu_ una funcién que sélo acepte nimeros enteros de & bits. Esto hace que la funcién convierta el nimero entero de 16 bits en una representacién de & bits, con lo que podria perder datos. + Determi + Compmucbe que inicializé correctamente registros de desplazamiento, a menos que deseara que guardaran datos desde una ejecucién del bucle a otra posterior, + Comprucbe el orden de los elementos de clusters en los puntos de origen y de destino, LabVIEW detecta los desajustes de tipos de datos y de tamafios de cluster durante la edicién, pero no detecta desajustes de elementos det mismo tipo. si algin bucle For ejecuna accidentalmente cero iteraciones y produce arrays vacios. 24 | r.com Manual do Curso LabVIEW Coro 1 + Compruebe el orden de ejecucién de los nodos. + Verifique que el Vino contenga subVIs ocultos. Podria haber ocultado un subVI accidentalmente colocandolo directamente sobre otro nodo 0 disminuyendo el tamatio de una estructura sin mantener a la viste el subVE + Contraste ei conjunto de subVIs que utiliza el VI con los resultados de View»Browse Relationships»This V's SubVIs y ViewsBrowse Relationships»Unopencd SubVIs para detetminar si existen subVls adicionales, Abra también la ventana VI Hierarchy para ver los subVIs de un VI. Para ayudarle a evitar resultados incorrectos por Vis ocultos, especifique entradas obligatorias para los VIs. Resaltado de ejecucién ‘Vea una animacién de la ejecucién det diagrama de bloques haciendo clic en el botén Highlight Execution. El resaltado de la ejecucién muestra el movimiento de datos en el diagrama de bloques desde un nodo a otto utilizando las burbujas que se mueven a lo largo de los cables, Use el resaltado de la ejecucién junto con Ia ejecucién paso a paso para ver cémo se mueven los valores de datos denodo anodo a través de un VI. (Médulo MathScript AT) En ios nodos MathSeript, el resaltado de Ia ejecucién muestra la rogresién desde una linea de script a otra mediante una flecha azul que parpadea junto a la linea que se esté ejecutando actualmente. XE Nota El resaltado de la ejecucién reduce enormemente Ia velocidad de ejecucién del VI. Figura 2-2. Ejemplo de uso de resaltado de la ejecucion © National mtumants | 25 Lecelin 2 Resoluciin de problemas y depuractin do Vis Ejecucién paso a paso Ejecute paso a paso un VI para ver cada una de sus acciones en el diagrama de bloques mientras se ejecuta el VI. Los botones de ejecucién paso a paso, mostrades a continuacion, afectan a la ejecucién sélo cn un VIo subVI en ei modo de ejecucién paso a paso. Entre en ef modo de ejecucién paso a paso haciendo clic en el botdn Step Into o Step Over en la barra de herramientas del diagrama de bloques. Mueva el cursor sobre ¢! boton Step Into, Step ‘Over o Step Out para ver una ayuda que describe el siguiente paso si hace clic en ese botén. Puede ¢jecutar los subVIs paso a paso o ejecutarlos de forma normal. Cuando ejecuta un VI paso a paso, los nodos parpadean para indicar que estin listos para jecutarse. Si ejecuta un VI paso a paso con el resaltado de ejecucién activado, aparecerd un simbolo de ejecucién en los iconos de los sub Vis que se estén ejecutando en ese momento. Fea ra Herramientas de sonda Use la herramienta de sonda para comprobar valores intermedios en un cable mientras se ejecuta un VIL | Use la herramienta de sonda si tiene un diagrama de bloques complicado con una serie de operaciones, alguna de las cuales podria producir datos incorrectas. Use la herramienta de sonda con el resaltado de la ejecucién, la ejecucién paso a paso y los puntos de interrupeién para determinar si los datos son incorrectos y en qué punto. Si dispone de datos, la sonda inmediatamente actualiza y muestra los datos en la Probe Watch Window durante el resaltado de {a ejecucién, Ia ejecucidn paso a paso o cuando pause en un punto de interrupcién. Cuando se pause la ejecucién en un nodo por la ejecucién paso a paso o por un punto de interrupcién, también puede sondar el cable que acaba de gjecutar para ver el valor que fluyé por ese cable, Consejo Si quiere que una sonda muestre los datos que fluyen por un cable durante la ejecucién de un VI, haga clicene! botén Retain Wire Values en {a barra de herramientas del diagrama de bloques. Tipos de sondas Puede comprobar os valores intermedios de un cable cuando se ejecuta un VI utilizando una sonda genérica, un indicador de la paleta Controls para ver los datos, una sonda sumministrada, una sonda suministtada personalizada o creando una nueva sonda. 26 | nicom Manual de Curso LabVIEW Gore 1 YG{_Nota_(Méduto MathSoript RT) Puede ver los datos de un seripten unnodo MathSeript mientras se ejeeuta un V1 utilizando la sonda LabVIEW MathSeript. Genéricas Use 1a sonda genérica pata ver los datos que pasan por un cable. Haga clie con el botén derecho en un cable y seleccione Custom Probe»Generic Probe desde e! meni contextual para usar la sonda genética. La sonda genérica muestra tos datos. No puede configurar la sonda gen¢rica para responder a fos datos. LabVIEW muestra fa sonda genérica cuando hace clic con el botén derecho en un cable y selecciona Probe, a menos que ya especificara una sonda personalizada o suministrada para el tipo de datos. Puede depurat una sonda personalizada de modo similara un VI Sin embargo, una sonda no puede sondar su propio diagrama de bloques, ni el diagrama de bloques de cualquiera de sus subVIs. Al depurar sondas, use la sonda genérica. Uso de indicadores para ver datos ‘También puede utilizar un indicador para ver los datos que pasan por un cable. Por ejemplo, si ve datos numéricos, puede utilizar un grafico como sonda para ver los datos. Haga clic con el botén derecho en un cable y seleccione Custom ProbenControls desde el menti contextual y seleccione 1 indicador que desea usar. También puede hacer clic en el icono Select a Control de la Paleta de Controles y seleccionar cualquier control personalizado o definieién de tipo guardado en el ordenador en un directorio compartido de un servidor. LabVIEW trata las definiciones de tipos como controles personalizados cuando los utiliza para ver datos sondados. Siel tipo de datos del indicador que seleccione no coincide con el tipo de datos del cable donde hizo clic con el botén derecho, LabVIEW na colocard el indicador en el cable. Suministradas Las sondas suministradas son VIs que muestran informacién exhaustiva sobre los datos que pasan por un cable. Por ejemplo, [a sonda VI Refnum devuelve informacién sobre el nombre det V1, su ruta y el valor hexadecimal de la referencia. También puede utilizar una sonda suministrada para responder en funcién de los datos que pasan por un cable. Por ejemplo, use una sonda Error en un cluster de error para recibir el estado, el eédigo, el origen y la descripeién del error y especificar si desea configurar un punto de interrupcién condicional si tiene lugar un error o una advertencia. Las sondas suministradas aparecen en la parte superior del mend contextual Custom Probe. Haga clic con et botén derecho en un cable y seleccione Custom Probe desde el ment contextual para seleccionar una sonda suministrada. Sélo aparecen en e! mend contextual fas sondas que coinciden con e! tipo de dates del cable donde hizo clic con el botén derecho. ‘@ Nationa nstuments | 2-7 ‘Leccidn 2 Resolucién de problemas y depuracién de Vis ‘Consulte el VI Using Supplied Probes en labview\examples\general \probes.11bparaver un ejemplo de uso de sondas suministradas. Personalizadas Use el cuadro de didlogo Create New Probe para crear una sonda en funcién de una sonda existente o para crear una nueva. Haga clic con el botén derecho en un cable y seleccione Custom Probe»New desde el meni contextual para ver el cuadro de didlogo Create New Probe. Cree una sonda cuanda desee tener mas control sobre cémo LabVIEW sonda los datos que fluyen por un cable. Cuando crea una nueva sonda, el tipo de datos de la sonda coincide con el tipo de datos del cable donde hizo cliccon el botén derecho. Si desea modificar a sonda que cred, debe abrirla desde el directorio donde la guardé, ‘Tras seleceionar una sonda desde el men contextual Custom Probe, navegue hasta él utilizando 1a opcién de la paleta Select a Control o cree una nueva sonda con el cuadro de didlogo Create New Probe. Esa sonda sera la predeterminada para ese tipo de dates y LabVIEW la cargard cuando haga clic con el botén derecho en un cable y seleccione Probe en el menii contextual. LabVIEW sélo carga fas sondas que eoinciden exactamente con el tipo de datos del cable donde hizo clic con el botén derecho. Es decir, una sonda numérica de coma flotante de dable precisién no puede sondar un cable de un nimera entero sin signo de 32 bits, aunque LabVIEW puede convertir las, datos. YEA Nota Si desea que una sonda personalizada sea la predeterminada pata un tipo de datos concreto, guarde la sonda en el directorio user .1i\_probes\default, No guarde sondas en el directorio vi .1ib\_probes porque LabVIEW sobreseribird esos archivos cuando actualice o reinstale. Puntos de interrupcién Use la herramienta Breakpoint para establecer puntos de interrupcién en Vis, nodos o cables y pausar la ejecucién en esa ubicacién. Cuando configura un punto de interrupctén en un cable, la ejecucién se pausa una vez que los datos pasan por el cable y el botdn Pause aparece rojo. Site un punto de interrupcién en el diagrama de bloques para pausar la ejecucién una vez que se ejecuten todas los nodos del diagrama de bloques. El borde del diagrama de bloques aparece rojo y parpadea para reflejar la colocacién de un punto de interrupcién. Cuando un VI se pausa en un punto de interrupcién, LabVIEW pone en primer plano el diagrama de bloques y usa un marco para resaltar el nodo, cable o linea de script que contiene el punto de interrupeién, Cuando mueve el cursor sobre un punto de interrupcién, la zona negra del cursor de {a herramienta de punto de interrupeién aparece blanca. 28 | si.com Manual de Curso LabVIEW Core 1 Cuando Hega'a un punto de interrupcién durante la ejecucién, el VI se pausa y el botén Pause aparece rojo. Puede realizar las siguientes acciones: + Seguir paso a paso la ejecucién con los botoncs de ejecucién paso a paso. + Sondar cables para comprobar los valores intermedios, + Cambiar los valores de los controles del panel frontal. + Haga clic en el botén Pause para seguir ¢jecutando hasta el préximo punto de interrupcién o hasta que termine de ejecutarse el VI. Suspender la ejecucién Suspenda la ejecucién de un subVI para modificar valores de controles ¢ indicadores, para controlar el niimero de veces que se ejecuta cl subVI antes de volver al que fe tlama o para volver al principio de fa ejecucién del subV1. Puede hacer que todas las llamadas a un subVI empiecen con Ia ejecucién suspendida puede suspender una llamada conereta a un subVI. Para suspender todas Iss llamadas a un subVI, dbralo y seleccione Operate»Suspend when Called. El subVI se suspenderd automaticamente cuando lo llame otro VI. Si selecciona este elemento de meni cuando ejecute paso a paso, el subVI no se suspenderd inmediatamente. Et subVI se suspendera cuando lo Ilamen, Para suspender una llamada a un subVI concrete, haga clic derecho en cl nado del subVI en el diagrama de bloques y seleccione SubVI Node Setup en el ment contextual, Active la casilla de verificacién Suspend when called para suspender la ejecucién sélo en esa instancia del subVI. Laventana VI Hierareby, que se abre seleccionando View»VI Hierarchy, indica si un VI esta pausado o suspendido. Un simbolo de flecha indica un VI que se esta ejecutanda con normalidad o paso a paso, + Un simbolo de pausa indica un VI pausado o suspendido. + Un simbolo de pausa verde, o un simbolo hueco en blanco y negro, indica un VI que se pausa cuando Ie Haman. + Un simbolo de pausa rojo, o un simbolo relleno en blanco y negro, indica un VI que se estd pausando. Un simbolo de signo de exclamacién indica que el subVI esta suspendido, t “E\ Nota Un VI puede suspenderse y pausarse a la vez. (© Nationa Instruments | 2-9 Lesdién 2 lesolucin de prebiemas.y depuacién de Vis Determinar la instancia actual de un subVI Cuando pausa un subVI, ef meni desplegable Call list de la barra de herramientas muestra la cadena de llamadas desde el VI superior al subVI. Esta lista no es la misma que ve cuando selecciona View»Browse Relationships»This VI’s Callers, que enumera todos los VIs que aman al subVI independientemente de si se estén ejecutando o no. Use el ment Call list para mientras hace clic en cada objeto. Haga clic con el botén derecho en un objeto de la seleccién y seleccione Properties en el ment contextual para acceder al cusdro de didlogo Properties. £] cuadro de didlogo Properties slo muestra pestafias y propiedades que comparten los objetos que seleccione. Seleccione abjetos similares para mostrar ‘mis pestafias y propiedades. Si seleeciona objetos que no comparten ninguna propiedad comin, el cusdro de didlogo Properties no mostrar pestafus ni propiedades. 36 | nicom ‘Manual de Curso LabVIEW Core 1 Tipos de datos numéricos El tipo de dato numérico representa mimeros de varias clases. Para cambiar el tipo de representacién de un ntimero, haga clic con el botén derecho en el control, indicador o constante y seleccione Representation, como se ve en Ia figura 3-6. Figura 3-6. Representacién numérica Visible terns > Find Contro! ‘Make Type Def. Hide Control Change toIndicator Change to Constant, Description and Tip. Numeric Palette Create Data Dperations Advanced View As con ‘Cuando cablea dos o mis entradas numéricas de distintas representaciones a una funcién, ésta normalmente devuelve los datos en la representacién mas grande o amplia, Las funciones obligan las representaciones mis pequefias a las representaciones més amplias posibles antes de la @jecucién. LabVIEW cotoca un punto de coercién en el terminal donde la conversién toma lugar. Consulte la seccién Conversién numérica, para obtener informacién adicional. El ipo de dato numérico incluye estas subcategorias de representacién: nimeros en coma flotante, nimeros enteras con signo, niimeros enteros sin signo y nimeros complejos. (© National Instruments | 3-7 ‘Locsién'3 Implomontacin do un Vt Numeros en coma flotante Los nimeros en coma flotante representan nimeros fraccionales. En LabVIEW, fos nimeras en coma flotante se representan con el color naranja. Precisién simple (SGL): fos mimeros en coma flotante de precisién simple tienen un formato de precisién simple de 32 bits IEEE. Use nimetos de precisién simple, coma flotante cuando cl ahorro de memoria es importante y no sobrecargara el rango de los numeros. Doble precisién (DBL): tos niimeros en coma flotante de doble precisién tienen un formato de precision doble de 64 bits IEEE. La doble precisién es el formato predeterminado para objetos numéricos. Use los niémeros en coma flotante de doble precisién para la mayoria de las situaciones Precisin extendida (EXT)—Cuando guarda nimeros de precision extendida al disco, LabVIEW los almacena en una plataforma independiente con formato de 128-bit format. En memoria, e tarnaiio y precisién varian dependiendo de la plataforma, Use mimeros coma flotante de precision extendida sola cuando sea necesario. El rendimiento de la aritmética de precisién extendida varia entre plataformas. Tipo de datos de punto fijo El tipo de datos de punto fijo es numérico y representa un conjunto de niimeros racionales que utilizan digitos binarios o bits. A diferencia del tipo de datos en coma flotante, que permite que varie el nuimero total de bits que usa LabVIEW para representar numeros, puede configurar los ndmeros de punto fijo para que usen siempre un numero concreto de bits. Asi, el hardware y tos destinos que sélo pueden almacenar y procesar datos con un ntimero limitado o fijo de bits podrén almacenar y procesar los niimeros. Puede especificar el rango y 1a precision de nimeros de punto fijo. EA Nota Para representar un ntimero racional con el tipo de datos de punto fijo, el deneminador del mimero racional debe ser una potencia de 2, porque el sistema de rimeros binarios es de base 2. Useel tipo de datos de punto fijo cuando no necesite la funcionalidad dindmica de la representacién de coma flotante 0 cuando desee trabajar con un destino que no admita ta aritmética de coma flotante, como un destino FPGA. Especifique la codificacién, fa tongitud de patabra y la longitud de palabra entera de un nimero de punto fijo cuando desee que ef mimero se adapte a cierto tamatio de bits. Codificacién: la codificacién binaria det nimero de punto fijo, Puede seleccionarse con signo o sin signo. Si se selecciona con signo, el bit del signo es siempre el primero en !a cadena de caracteres de bits que representa Ios datos. Longitud de palabra: el niimero total de bits de la cadena de caracteres de bits que usa LabVIEW para cepresentar todos los valores posibles de los datos de punto fijo. LabVIEW acepta una longitud maxima de palabra de 64 bits. Ciertos destinos pueden limitar tos datos a longitudes 38 | nleom ‘Manual de Curso LabVIEW Cora 1 ‘menores de palabra. Si abre un VI en un destino ye! VI contiene datos de punto fijo con longitudes de palabra mayores que las que puede aceptar el destino, ef VI contendta cables rotos. Consulte fa documentacién de un destino para determinar la maxima longitud de palabra que acepta, Longitud de palabra entera: el niimero de bits enteros en una cadena de caracteres de bits que usa LabVIEW para representar todos los posibles valores del dato de punto fijo 0, dada una posicién inicial ala izquierda 0 ala derecha del bit mas significativo, el nimero de bits a desplazar Ja coma binaria y Hegar al bit més significativo. La longitud de palabra del nimero entero puede ser mayor que la fongitud de palabra, y puede ser positivo o negativo. Numeros enteros Los mimeros enteros representan los niimeros naturales. Los nimeros enteros con signo pueden ser positives 0 negativos. Use los tipos de datos de niimeros enteros sin signo cuando sepa que el mimerg entero es siempre positivo. En LabVIEW, las niimeros enteros se representan con el color azul, Cuando LabVIEW convierte tos ntimeros en coma flotante en niimeros enteros, el VI redondea at niimero entero mas cercano. Si el valor de entrada esta en medio de dos enteros, la funcién redondea al niimero entero par mas cercano. Byte (18): los nimeros entetos Byte tienen 8 bits de almacenamiento y un intervalo de -128 a 127. Word (116): os nimeros enteros Word tienen 16 bits de almacenamiento y un intervalo de -32.768 a 32.767, ‘Long (132): los niimeros enteros Long tienen 32 bits de almacenamiento y un intervalo de -2.147.483.648 a 2.147.483.647. En la mayoria de los casos es mejor utilizar un niimero entero de 32 bits, Quad (164): los niimeros enteros Quad tienen 64 bits de almacenamiento y un intervalo de-1e19 aleld, Byte (U8): los ntimeros enteros sin signo Byte tienen 8 bits de almacenamiento y un intervalo de 00255. Word (U16): los nimeros enteros sin signo Word tienen 16 bits de almacenamiento y un intervato de 0. 65.535. Long (U32): los niimeros enteros sin sign Long tienen 32 bits de almacenamiento y un intervalo de 0 a 4.294,967.295. ‘Quad (U64): los niimeros enteros sin signo Quad tienen 64 bits de almacenamiento y un intervalo de 0a 2e19. ‘ONational nsteumanis | 39 LLeccién 3 Implementacién de un Vt Numeros complejos Los mimeros complejos son versiones concatenadas de nimeros en coma flotante con una parte real ¢ imaginaria. En LabVIEW, como los mimeros complejos son un tipo de nimero en eoma Alotante, los nimeros complejos también se representan con el color naranja. Existen tres partes en los niimeros complejos. ‘Complejo simple (CSG): los ntimeros complejos de eoma flotante de preeisidn simple constan de valores reales imaginarios y tienen un formato de precisién simple de 32 bits IEEE. ‘Complejo doble (CDB): los niimetos eomplejos de coma flotante de doble preeisién constan de valores reales imaginarios y tienen un formato de doble preeision de 64 bits IEEE. ‘Complejo ampliado (CX); los nimeros complejos de coms flotante de precisién ampliada eonstan de valores reales e imaginarios y tienen un formato de precision ampliada IEEE, En la memoria,el tamafio y la preeisién de niimeros de precisidn ampliada varian en funcién de la plataforma, En Windows tienen un formato de precisin ampliada de 128 bits IEEE. Conversion numérica LabVIEW puede representar tipos de datos numéricos como nimeros enteros eon signo 0 sin signo, valores numéricos coma flotante 0 valores numéricos complejas, Normalmente, cuando cablea tipos distintos de representaciones en las entradas de una funeién, ésta devuelve una salida en el formato més grande o amplio. Si usa un nimero entero con signo con un nimero entero sin ssigno, lo eonvertira al nimero entero sin signo. Si usa un niimero entero sin signo con unoen coma flotante, lo convertird a coma flotante. Si usa un niimero en coma flotante con un niimero complejo, Jo convertira al nimero complejo. Si usa dos niimeros del mismo tipo con distinio ancho de bits, LabVIEW realizard la conversién al mayor de los dos anchos de bits, Si el niimero de bits es el mismo, LabVIEW elige nimeros enteros sin signo en vez de eon signo. Por ejemplo, si cablea un DBL y un 132.2 una funeién Multiply, el resultado es un DBL, como se muestra en Ja figura 3-7. LabVIEW realizara la conversién al niimeto entero con signo de 32 bits ‘porque utiliza menos bits que ¢l valor numérico de doble precision y de coma flotante. La entrada inferior de la funcién Multiply muestra un punto rojo, llamado punto de conversién, que indica que LabVIEW esta realizando una conversién de datos. 8410 | ai.com Manval de Curso LabVIEW Core 1 Figura 3-7. Ejemplo de conversién numérica . aL Numeric pet Resut pa [cae (rast f ‘132 Numeric ey 1 Punto de conversion : Valores booleanos LabVIEW almacena datos booleanos como valores de 8 bits. Si ¢l valor de 8 bits es cero, ¢l valor booleanto es FALSE, Cualquiet valor que no sea ceto representaré TRUE. En LabVIEW, el color verde representa datos booleanos. £ Los valores booleanos también tienen una accién mecénica asociada a ellos. Las dos acciones principales son bloquear y conmutar. Puede seleccionar uno de los siguientes comportamientos de botén: + Switch when pressed: cambia el valor de! eontrol cada vez que hace clic en él con ta herramienta de operaciones. La frecuencia con la que el VI lee el.control no afecta a este comportamiento. + Switch when released: cambia el valor del control slo después de soltar el botén del ratén { mientras hace clic dentro del limite gréfico del control, La frecuencia con la que el VI lee ef controf no afecta a este comportamiento, : + Switch until released: cambia el valor del controt cuando hace clic en éI y conserva el nuevo valor hasta que suelte el botén det ratén. En este momento, e! control vuelve a su valor predeterminado, al igual que ¢! funcionamiento del timbre de una puerta, La frecuencia con la que el VI lee el control no afecta a este comportamiento, No puede scleccionar este comportamiento para un control de botones de radio. Latch when pressed: cambia el valor del control cuando hace clic en él y conserva el nuevo valor hasta que el VI o ica una vez. Eneste momento, el control vuelve a su valor . predeterminado, aunque siga pulsando e! botén del ratén, Este comportamiento es similar al de é un disyuntor y es ttif para detener un bucle While o para que el VI realice una accién sélo una vex cada vez que ajuste el control. No puede seleccionar este comportamiento para un contro! de botones de radio. + Lateh when released: cambia el valor det control slo después de soltar et botdn det rat < dentro del limite gréfico del control. Cuando el VI lo lee una vez, el controt vuelve a su valor Le predeterminado. Este comportamiento funciona def mismo modo que los botones de los cuadros de didlogo y del sistema. No puede seleccionar este comportamiento para un control de botones de radio. + Latch until released: cambia el valor del control cuando hace clic en él y conserva el valor hasta que el VI lo fea una vez.o suelte et botdn del ratén, en funcién de fo que ocurra en iittimo “ lugar. No puede seleccionar este comportamiento para un contro} de botones de radio, ‘©National Instruments | 3-11 ‘Lectiéa'3_Implomeniacisn de un V1 Para saber més de la accién mecénica, experimente con el VI Mechanical Action of Booleans en el NI Example Finder. Figura 3-8. Accién mecénica booleana Cadenas de caracteres ‘Una cadena de caracteres es una secuencia de caracteres ASCII visualizables y no visualizables. Las cadenas de caracteres tienen un formato independiente de las plataformas para ta informacion y los datos. Algunas de las aplicaciones mas comunes de las cadenas de caracteres son: + Generacién de mensajes de texto simples + Contra! de instrumentos enviando comandos de texto al instrumento y devolviendo valores de datos en forma de cadenas de caracteres ASCII o binarias que después convierte en valores numéricos. * Almacenamiente de datos numéricos en disco. Para almacenar datos numéricos en un fichero ASCIL, primero debe convertir los datos numéricos en cadenas de caracteres antes de escribir Jos datos en un fichero del disco. + Peticién o-visualizacién de datos con cuadros de didlogo En el panel frontal, las cadenas aparecen como tablas, cuadros de entrada de texto y etiquetas. LabVIEW incluye Vis y funciones integradas que puede utilizar para manipular cadenas de caracteres, como dar formato a cadenas de caracteres, analizar cadenas de caracteres y otras modificaciones. Consulte el tema ASCH Codes en LabVIEW Help para obtener informacién acerca de cédigos ASCII y funciones de conversién. En LabVIEW, las cadenas de caracteres se representan con el color rosa. 342 | nieom ¢ a O oo Mapua do Curso LabVIEW Cora 1 Haga clic con el botén derecho en el control o indicador de una cadena de caracteres del panel frontal para seleccionar entre los tipos de visualizacién que aparecen en la tabla . La tabla también ‘muestra un ejemplo de mensaje para cada tipo de visualizacién, Tabla 3-1. Tipos de visualizacién de cadenas de caracteres Tipo de visualizacién Descripcion Mensaje Visualizacion normal Muestra caracteres imprimibles utilizando la fuente del control. ‘Los caracteres no visualizables normalmente aparecen como cundros. Existen cuatro tipos de visualizaciéa. \ es una barra invertida. ‘Visualizacién de cédigos “\” ‘Muestra cédigos de barra invertida para todos los caracteres no visualizables, ‘There\sare\sfour\sdisplay\ stypes.\n\\\sis\sa\ sbackslash. Visualizaci6n de contraseiia ‘Muestra un asterisco (*) para cada carécter, incluides los espacios. Visualizacién hexadecimal Muestra el valor ASCII de cada cardcter en hexadecimal en lugar del cardcter. 5468 6572 6520 6172 6520 666F 7572 2064 6973 706C 6179 2074 7970 6573 2B0A 5C20 6973 2061 2062 6163 6B73 6C61 7368 2E LabVIEW almacena cadenas de caracteres como un puntero a una estructura que contiene un valor con una longitud de 4 bytes seguido de un array 1D de nimeros enteros de bytes (caracteres de 8 bits). © National struments | 3-13 Leceién'3_ implomentacién do un Vt Enums Un enum (indicador, constante 0 control enumerado) es una combinacién de tipos de datos. Un ‘enum representa una pareja de valores, una cadena de caracteres y un numérico, donde el enum puede ser uno de una lista de valores. Por ejemplo, sicreé un tipo de enum lamado Mes, las parejas de valores posibles para una variable Mes son Enero-0, Febrero-1, etc. hasta Diciembre- I. La figura 3-9 muestra un ejemplo de estas parejas de datos en el cuadro de didlogo Properties para un control enumerado, Figura 3-9. Propiedades para el control enumerado Mes values sn ime 844 | loom é Manual de Curso LabVIEW Cora 1 Los enums resultan itiles porque es més ficil manipular nimeros en el diagrama de bloques que cadenas de caracteres. La figura 3-10 muestra el control enumerado Mes (Month), la seleccién de una pareja de datos en el control enumerado y el terminal correspondiente del diagrama de bloques. Figura 3-10. Control enumerado Mes (Month) 1 Control det panel frontal 2 Selecciénde un elemento 3 Terminal del diagrama de bloques Dinamicos El tipo de datos dinémico almacena !a informacion que genera © adquiere un VI Express. El tipo de datos dindmico aparece como un terminal azul oscuro, mostrado abajo. La mayoria de Vis Express aceptan o devuelven el tipo de datos dindmico. Puede cablear el tipo de datos dindmico a cualquier indicador o entrada que acepte dates numéricos, de forma de onda o booleanos, Cablee i tipo de datos dindmico a un indicador que pueda presentar mejor los datos. Ejemplos de indicadores son grificos tipo “graph”, graficos tipo “chart” o indicadores numéricos. La mayoria del resto de Vis y funciones de LabVIEW no aceptan el tipo de datos dinimico, Para utilizar un VI o funcién integrada para analizer 0 procesar los datos que incluye el tipo de datos dindmico, debe convertir el tipo de datos dinamico. Use el VI Express Convert from Dynamic Data para convertir el tipo de datos dindmico en tipos de datos numéricos, de forma de onda y de array para usar con otros Vis y funciones, Cuando coloca el VI Express Convert from Dynamic Data en el diagrama de bloques, aparece el cuadro de didlogo Configure Convert from Dynamic Data. El cusdro de didlogo Configure Convert from Dynamic Data muestra opciones para especificar cémo desea dar formato alos datos que devuelve el VI Express Convert from Dynamic Data. BS ‘© Nasional Instruments | 3-15 LeceiéaS implomentacién de.un V1 Cuando cablea un tipo de datos dinamico a un indicador de array, LabVIEW afiade automaticamente ei VI Express Convert from Dynamic Data al diagrama de bloques. Haga doble clic en el VI Express Convert from Dynamic Data para abrir el cuadro de didlogo Configure Convert from Dynamic Data y controlar cémo apareceran los datos em el array. C. Documentacién de cédigo Los desarrolladores profesionales que mantienen y modifican VIs conocen el valor de una buena documentacién. Documente bien el diagrama de bloques para facilitar las futuras modificaciones del cédigo. Ademés, documente bien fa ventana de! panel frontal para explicar el objetivo del VI yy los objetos del panel frontal. Use ayudas, descripciones, propiedades de V1 y un buen disefio para documentar las ventanas del pane! frontal. Ayudas y descripciones Las ayudas son breves descripciones que aparecen cuando mueve el cursor sobre un control 0 indicador mientras se ejecuta un VI. Por ejemplo, podria afiadir una ayuda para indicar que una temperatura es en grados Celsius 0 explicar como funciona una entrada en un algoritmo. Las descripciones ofrecen informacién adicional sobre controles ¢ indicadores especificos. Las descripciones aparecen en la ventana Context Help cuando mueve el cursor sobre el objeto. Para afiadir ayudas y descripciones a controles, haga clic con el botén derecho en el control o indicador y seleccione Description and Tip desde el meni contextual. Propiedades de VI Use el componente Documentation del cuadro de didlogo VI Properties para crear descripciones de Vis y enlazar desde Vis a ficheros HTML © a ficheros de ayuda compilados. Para ver VI Properties, haga clic com e! botén derecho en el icono del VI en el panel frontal o en el diagrama de bloques y seleccione VI Properties desde el menii contextual o seleccione File» VI Properties. Después seleccione Documentation en el mend desplegable Categories. No puede accedera este cuadro de didlogo mientras se ejecuta un VI. Esta pigina incluye los siguientes componentes: + Videscription: contiene el texto que aparece en la ventana Context Help cuando mueve e1 cursor sobre el icono de VI. Use las etiquetas y attededor de cualquier texto de la descripcién al que desee dar formato en negrita. También puede utilizar la propiedad VI Description para modificar la descripeién de! VI programiticamente. + Help tag: contiene el nombre det fichero HTML o Ia palabra clave del indice del tema que desea vincolar en un fichero de ayuda compilado. También puede utilizar la propiedad Help:Document Tag para configurar la etiqueta de ayuda programaticamente. 346 | nlcom ‘Marwal de Curso LabVIEW Core 1 + Help path: contiene la ruta al ficheto HTML o al fichero de ayuda compilado que desea vincular desde Ia ventana Context Help. Si este campo esta vacio, el enlace Detailed help no aparecera en la ventana Context Help y se atenuard cl botén Detailed help. + Browse: muestra un cuadro de didlogo de fichero que se utiliza para navegar hasta un fichero HTML o hasta un fichero de ayuda compilado para wtilizarlo como ruta de ayuda. Nombre de controles e indicadores Si da nombres légicos y descriptivos a controles ¢ indicadores, facilitard el uso de los paneles frontales. Por ejempio, si llama un control Temperature, un usuario quiza no sepa qué unidades utilizar. Sin embargo, si to llama Temperature °c, afiadira mas informacion al panel frontal. Ahora sabrd que debe introducir temperaturas en unidades métricas, Programacion grafica Aunque la naturaleza grifica de LabVIEW ayuda a la autodocumentacién de diagramas de bloques, los comentarios adicionales ayudan a la hora de modificar sus VIs posteriormente, Existen dos tipos de comentarios de iagrama de bloques: los que describen la funcién u operacién de algoritmos y comentarios que explican Ia finalidad de los datos que pasan por los cables. Ambos tipos de comentarios aparccen en el siguiente diagrama de bloques. Puede insertar etiquetas estandares con la herramienta de etiquctado, o insertando una etiqueta libre desde la subpaleta Functions»Programming»Structures»Decorations, De forma predeterminada las etiquetas libres tienen un color de fondo amarifio. Figura 3-11. Documentar un diagrama de bloques Use las siguientes pautas para comentar los Vis: + Use comentarios en cl diagrama de bloques para explicar lo que esta realizando el cédigo, *+ Aunque el cddigo de LabVIEW puede autodocumentarse porque es grifica, use etiquetas libres para describir cémo funciona el diagrama de bloques. + Utilice etiquetas para identificar objetos en el panel frontal y el diagrama de bloques. LabVIEW incluye dos tipos diferentes de etiquetas—etiquetas propias y etiquetas libres. Las tiquetas propias pertenecen a un objeto particular y se mueven con él y se usan para desoribir ‘© Nationa Instuments | 3417 Leocién 3 implomentacién de un VI dicho objeto tinicamente. Las etiquetas libres no pertenecen a ningiin objeto, y puede crearlas, moverlas, rotarlas o borrarlas independientemente. + No muestre etiquetas en Hamadas de funcién y de subVIs, ya que suelen ser grandes y poco manejables. Un desarrollador que observe el diagrama de bloques puede encontrar el nombre de una funcién o subVI en ta ventana Context Help. + Utilice etiquetas propias con conexiones largas para identificar su uso. Etiquetar cables resulta litil para los que proceden de registros de desplazamiento y para cables largos que pueden abarcar todo cl diagrama de bloques. Consulte la seccién Estructuras Case de esta leccién para obtener informacién adicional acerca de los registros de desplazamiento, + Etiquete estructuras para especificar su funcionalidad principal. + Etiquete constantes para especificar su naturaleza. + Use etiquetas libres para documentar algoritmos que usa en los diagramas de bloques. Si usa tun algoritmo de un libro u otra referencia, incluya ta informacién de referencia, D. Bucles While Al igual que un bucle Do o un bucle Repeat-Until en lenguajes de programacién basados en texto, un bucte While, mostrado en la figura 3-12, ejecuta un subdiagrama hasta que ocurra una condicién, La siguiente ilustracién muestra un bucte While en LabVIEW, un diagrama de flujo equivalente a Ja funcionatidad del bucle While, y un ejemplo de pseudocédigo de ta funcionalidad del bucte While. Figura 3-12. Bucle While [cox } fused condition mets na 2 ‘gue et in ms Ga) ® ® ® 1 Bucle While de LabviEW 2 Diagrama de fj 3 Pseudoeddiga El bucle While se encuentra en la paleta Structures. Seleccione el bucle While en la paleta y después use el cursor para arrastrar un rectangulo de seleccién alrededor de la seccién del diagrama de bloques que desee repetir. Cuando suelte el botén de! ratén, un limite de bucle While encerrar& fa seccién que seleccioné. Afiada objetos del diagrama de bloques al bucle While arrastrandolos y soltandotos dentro de éste. 3418 | nicom Manual do Curso LabVIEW Gore + @ _Conselo El bucle While sempre se ejecuta al menos una vez El bucle While ejecuta el subdiagrama hasta que el terminal condicional, un terminal de entrada, recfba un valor booleano especifico. E] bucle While no incluye un contaje de iteraciones configurado y se ejecuta hasta el infinito si la condicién nunca ocurre. Si un terminal condicional es Stop if True, coloca el terminal de un contro! booleano fuera de un bucle While, y siel control es FALSE cuando se inicia el bucle, provocaré un bucle infinito, como se muestra en el siguiente ejemplo, También provoca un bucle infinito si el terminal condicional es Continue if True y el contro! fuera del bucie se configura en TRUE, como se muestra en la figura 3-13. Figura 3-13, Bucle infinito mz : Si cambia et valor del control, no detendra ef bucle infinito, porque el valor sélo se lee una vez, antes de que empiece el bucle. Para detener un bucle infinito, debe abortar el VI haciendo clic en el botén Abort Execution en la barra de herramientas. ‘También puede realizar un control de errores bisicos con el terminal condicional de un bucle While. Cuando cablea un cluster de error al terminal condicional, sélo pasa al terminal el valor True o False del parémetro status del cluster de error. Asimismo, los elementos del meni contextual Stop if True y Continue if Truc cambian a Stop if Error y Continue while Error. La terminal de iteracién es una terminal de salida que contiene el numero de iteraciones completadas, a _ El contaje de iteraciones para el bucle While siempre empieza en cero. _ Enel siguiente diagrama de bloques, el bucle While se ejecula hasta que la salida de la funcién Random Number sea mayor o igual que 0,9 y el control Enable sea True. La funcién And devuelve True sélo si ambas entradas son True. De lo contrario, devolvera False. ‘ONatonal nstrumonts | 3-19 X Lecaién 8 Implomentacién de un Vi En el siguiente ejemplo, existe mayor posibilidad de un buele infinito, Generalmente, et comportamiento deseado es que se cumpla una condicién para detencr el bucle, en lugar de necesitar que se cumplan ambas condiciones. Figura 3-14, Posible bucle infinito Tuneles a través de Estructuras Los tineles suministran datos hacia dentro y hacia fuera de las estructuras como bucies Whi tinel aparece como un bloque sdtido en el borde det bucle While. El bloque es del cotor del de datos cableado al tinel. Los datos salen de un bucle cuando éste termina. Cuando un tiinel introduce datos en un bucle, éste se ejecuta sélo cuando los datos Hlegan al tunel. En el siguiente diagrama de bloques, el terminal de iteracién se conecta a un tiinel. El valor del tine! no entra en el indicador Iterations hasta que e! bucle While termine de ejecutarse. Figura 3-15. Tine! de! bucle While ‘S6lo aparece en el indicador Iterations el iltimo valor del terminal de iteracién. Usando bucles While para chequeo y manejo de errores Puede cablear un cluster de error al terminal condicional de un bucle While o un bucle For con un terminal condicional para detener fa iteracién del bucle. Cuando cablea un cluster de error al terminal condicional, s6lo pasa al terminal el valor TRUE o FALSE del parametro status det cluster de error. Si ocurre un error, el bucle se detendra. Si cablea un cluster de error al terminal condicional, los clementos del menii contextual Stop if True y Continue if True cambiardn a Stop on Error y Continue while Error. 8.20 | e.com Manual 60 Gurso LabVIEW Gove 1 En la figura 3-16, e] cluster de error y un botdn de parada se utilizan para determinar cudndo detener el bucle. Este es el método recomendado para detener la mayaria de los bucles. ge Figura 3-16. Detener un bucle While E. Bucles For Un bucle For, mostrado abajo, ejecuta un subdiagrama cierto niimero de veces. La figura 3-17 ‘muestra un bucle For en LabVIEW, un diagrama de flujo equivatente a la funcionalidad del bucle For, y un ejemplo de pseudacédigo de la funcionalidad del bucle For. Figura 3-17. Bucle For une 1¥: Repeat (coder {2i+117 nd: ® 7 Bucie For de LabVIEW 2 Diagrama de fujo ‘3 Peeudocédigo em El bucle For se encuentra en la paleta Structures. También puede colocar un bucle While en el Rte 60H Exclude frm: gam Cleanup. ‘Configee Retaton Paral Replicewih While Loop sve FrLoop eos — Usando bucles For para chequeo y manejo de errores En un bucle For con un terminal condicional, también debe cablear un valor al terminal de contaje autoindexar un array de entrada para configurar un nimero maximo de iteraciones. El bucle For se ejecuta hasta que ocurra un error ohasta que sc complete el ntimero de iteraciones configurado, Consulte la seceién Usando bucles While para chequeo y manejo de errores, para obtener informacién adicional. Conversién numérica en bucles For Como se describié en Conversién numérica, cuando cablea diferentes tipos de datos a la entrada de una funcién, la funcién generalmente retoma el tipo de dato mas amplio. Sin embargo, si cablea un valor numérico coma flotante de precisién doble a la terminal de cuenta de 32-bit en un bucie For, LabVIEW coerciona el valor numérico mas grande a un ntimero entero con signo de 32-bit més pequefio. Aunque la conversion es contraria a los estandares normales de conversiGn, es necesatia, ya que un bucle For sdlo puede ejecutarse un niimero entero de veces. ‘National lastumants | 3-23 Loccién 3 implementacion de un VI Figura 3-21. Conversién en un bucle For Q 7 Punto de conversion Para un mejor rendimniento, evite la conversién utilizando tipos de datos coincidentes o convirtiendo programaticamente a tipos de datos coincidentes, como en la figura 3-22. > _Figura 3-22. Evitando la coercién utilizando tipos de datos coincidentes season Ee HF a Comparando bucles For y bucles While Los bucles For y los bucles While difieren de varias maneras. Consulte la tabla 3-3 para obtener una lista de diferencias entre bucles For y buctes While. ‘Tabla 3-2. Comparando bucles For y bucles White Bucle For Bucle While Se ejecuta un nitmero de veces a menos que se | Detiene la ejecucién solo si ¢l valor en la ‘agregue una terminal condicional terminal condicional alcanza esa condicién Puede ejecutarse cero veces Debe ejecutarse al menos una vez Los tiineles automaticamente dan un array de_| Los tuncles automaticamente dan el dltimo datos valor F. Temporizacion de Vis Cuando un buele termina de ejecutar una iteracién, inmediatamente empiezaa ejecutar la siguiente, a menos que Hlegue a una condicién de parada, Normalmente tendré que controlar !a frecuencia 0 temporizacién de la iteracién. Por ejemplo, si estd adquiriendo datos y desea hacerlo cada 10 segundos, necesita poder temporizar las iteraciones del bucle para que ocurran cada 10 segundos. 324 | nkcom Manual de Curso LABVIEW Goro 1 Aunque no necesite que la ejecucién ocurra con cierta frecuencia, debe facilitar al procesador tiempo para completar otras tareas, como responder a la interfaz del usuario. Esta seccién explica 1métodos para temporizar les bucles. Funciones de espera Coloque una funcién de espera dentro de un bucle para que un VI se desactive durante cierto tiempo. Esto permite al procesador abordar otras tareas durante el tiempo de espera. Las funciones de espera usan el reloj de milisegundos del sistema operativo. La funcién Wait Untit Next ms Multiple controla un contador de milisegundos y espera hasta que éste alcance un miiltiplo de la cantidad que especifique. Use esta funcién para sincronizar actividades. Sitie esta funcién en un bucle para controlar la velocidad de ejecucién de éste. Para que esta funcién sea efectiva, el tiempo de ejecucién del cédigo debe ser inferior al tiempo especifieado para esta funcién, El tiempo de ejecucién de la primera iteracién dei bucle es indeterminado. La fanci6n Wait (ms) espera hasta que el contador de milisegundos cuente una cantidad igual a la entrada que especifique. Esta funcién garantiza que la velocidad de ejecucién del bucle se corresponda al menos con el valor que especifique a la entrada de fa funcién. “EG _—_Nota_ELVIExpress Time Delay actia de modo similar a la funcién Wait (ms) pero con clusters de error integrados, Consulte la leccién 2, Resolucién de problemas y depuracién de Vis para obtener informacién adicional acerca de los clusters de error, Tiempo transcurrido En algunos casos, resulta ttil determinar cudnto tiempo transcurre después de un punto en su VI. EI VI Express Elapsed Time indica et tiempo transcurrido tras ¢l instante de inicio especificado. Este VI Express controla el tiempo mientras que el VI sigue ejecutandose. Este VI Express no facilita al procesador el tiempo para completar otras tareas. Utilizaré el VI Express Elapsed Time enel proyecto del curso Weather Station. (©Nationa nstrumonis| 2:25 Loceién 3 mplamentacién 6o.un V1 G. Retroalimentacién de datos en los bucles Al programar con bucles, a menudo debe acceder a datos de iteraciones anteriores del bucle en LabVIEW. Por ejemplo, si estd adquirienda un dato en cada iteracién de un bucle y debe hailar el promedio cada cinco datos, debe conservar los datos de iteraciones anteriores del bucle. YEA Nota Los nodos de realimentacién son otro método para conservar informacién de una iteracién anterior, Consulte ef tema Feedback Node de la Ayuda de LabVIEW para obtener informacién adicional acerca de nodos de realimentacién. Registros de desplazamiento Los registros de desplazamiento son similares a fas variables estaticas en lenguajes de programacién basados en texto. ‘Use registros de desplazamiento cuando desce pasar valores de iteraciones anteriores a la siguiente iteracién a través del bucle. Un registro de desplazamiento aparece como un par de terminales directamente opuestas entre si en los ladas verticales del borde del bucle, 1 terminal de la derecha del bucle contiene una flecha hacia arriba y almacena datos al completar una iteracién, LabVIEW transfiere los datos conectados al indo derecho del registro en lasiguiente iteracién. Después de que se ejecute el bucle, el terminal del lado derecho del bucle devueive ef ‘ultimo valor aimacenado en el registro de desplazamiento, Cree un registro de desplazamiento haciendo clic con el botén derecho en ef borde izquierdo 0 derecho de un bucle y seleccionando Add Shift Register en el meni contextual. Un registro de desplazamiento transfiere cualquier tipo de datos y cambia automaticamente al tipo de datos del primer objeto cableado al registro de desplazamiento, Los datos que cablee a los terminales de cada registra de desplazamiento deben ser del mismo tipo. Puede afiadir més de un registro de desplazamiento a un bucle. Si tiene varias operaciones que usan valores de iteraciones previas dentro del bucle, use varios registros de desplazamiento para almacenar fos valores de datos de los distintos procesos en la estructura, como se muestra en ia siguiente figura. - 926 | rheom os Cc apual de Curso LabVIEW Gore 1 Figura 3-23. Uso de varios registros de desplazamienlo Inicializacion de registros de desplazamiento Al inicializar un registro de desplazamiento, se restablece el valor que transmite el registro de desplazamiento a la primera iteracién de! pucle cuando se ejecuta un VI. Inicialice un registro de desplazamiento cableando un control 0 constante al terminal del registro de desplazamiento en et lado izquierdo de! bucle, como se muestra en la figura 3-24, Figura 3-24, Registro de desplazamiento inicializado En la figura 3-24, el bucte For se ejecuta cinco veces, incrementando el valor que leva el registro de desplazamiento en uno cada vez, Tras cinco iteraciones del bucle For, el registro de desplazamiento pasa el valor final, 5, al indicador y el VI finaliza su ejecucién. Cada vez que ejecute el Vi, el registro de desplazamiento empieza con un valor de 0. Si no inicializa el registro de desplazamiento, el bucle usa el valor escrito en el registro de desplazamiento cuando se ejecuté por diltima vez el bucle o, si éste nunca se ejecut6, usa el valor predeterminado de! tipo de dato. Use un registro de desplazamiento sin inicializar para conservar la informacién de estado entre las siguientes ejecuciones de un VI. La figura 3-25 muestra un registro de desplazamiento sin inieializar. — Figura 2-25, Registro de desplazamiento sin inicializar © Nationa insiuments | 9:27 Loccién 3 Implomontacén da un vt En Ja figura 3-25, el bucle For se ejecuta cinco veces, incrementando el-valor que lleva el registro de desplazamiento en uno cada vez. La primera vez que ejecute el VI, el registro de desplazamiento ‘empieza con un valor de 0, que es el valor predeterminado de un niimero entero de 32 bits. Tras cinco iteraciones det bucle For, el registro de desplazamiento pasa el valor final, 5, al indicador yel VI finaliza su ejecucién, La siguiente vez que ejecute el VI, ef registro de desplazamiento ‘comenzard con un valor de S, que erael ittimo valor de la ejecucién anterior. Tras cinco iteraciones del bucle For, el registro de desplazamiento pasa ct valor final, 10, al indicador. Si ejecuta de nuevo el VI, el registro de desplazamiento empieza con un valor de 10, y asi sucesivamente. Los registros de desplazamiento sin inicializar conservan el valor de la iteracién anterior hasta que cierre el VI. Registros de desplazamiento apilados Los registros de desplazamiento apilados permiten acceder a datos de iteraciones anteriores al bbucle. Los registros de desplazamiento apilados almacenan valores de varias iteraciones anteriores y llevan esos valores a las siguientes iteraciones. Para crear un registro de desplazamiento apilado, haga clic con el botén derecho en el terminal izquierdo y seleccione Add Element en el menit contextual. Los registros de desplazamiento apilados s6lo pueden utilizarse en el lado izquierdo del bucte, porque el terminal derecho transfiere los datos generados sélo desde Ia iteracién actual a la siguiente, como se muestra en la figura 3-26. Figura 3-26. Uso de registros de desplazamiento apilados o Fg Si afiade otro elemento al terminal izquierdo del diagrama de bloques anterior, los valores de las dos tiltimas iteraciones se transmiten a la siguiente iteracién, almacendndose el valor de iteracién mis reciente en el registro de desplazamiento superior. El terminal inferior almacena los datos que le Tlegan de la iteracién anterior. H. Graficando datos — Waveform Chart El grafico tipo “waveform chart” es un tipo especial de indicador numérico que muestra una o mas courvas de datos, normalmente adquiridos a una velocidad constante. Los grificos tipo “waveform chart” pueden mostrar una o varias curvas. La figura 3-27 muestra los elementos de un gréfico tipo “waveform chart” de varias curvas. Se muestran dos grificos: Raw Data y Running Avg. 3.28 | nlcom Qo es | om fae ‘Manat do Curso LabVIEW Coro 1 Figura 3-27. Elementos de un Waveform Chart ae e+ oF iy 3 1 Etiqueta 3° Escala X ‘5 Paleta del grafico 2 EscalaY 4° Leyenda dela escala 6 Leyenda de fa curva Configure cémo se actualiza el grafico para mostrar nuevos datos. Haga clic con el botén derecho en el gtifico y seleccione Advanced»Update Mode desde el meni contextual para configurar el modo de actualizacién del gréfico. El grafico utiliza los siguientes modos para mostrar datos: + Strip Chart: muestra los datos méviles desplazindose continuamente de izquierda a derecha por el grafico con fos datos antiguosa la izquierda y con los nuevos a la derecha. Un strip chart ¢6 similar a un registrador de cinta de papel. Strip Chart es el modo de actualizacién predeterminado. + Scope Chart: muestra un elemento de datos, como un impulso o una onda, desplazindose parcialmente por el grafico de izquierda a derecha. Para cada nuevo valor, el griffico traza el valor a la derecha del iltimo valor. Cuando Ia curva lega al borde derecho de la zona de trazado, LabVIEW bora la curva y empieza a trazar de nuevo desde el borde izquierdo. La visualizacién de un scope chart es similar a la de un osciloscopio. + Sweep Chart: funciona de modo parecide a un scope chart salvo que muestra los datos antiguos a la derecha y los nuevos a la izquietda separados por una linea vertical. LabVIEW no borra fa curva en un sweep chart cuando ésta llega al borde derecho de Ia zona de trazado. Un sweep chart es similar a la visualizacién de un electrocardiograma. ‘© National instruments | 3:29 Leccién 3 Implemontacién de un V1 La figura 3-28 muestra un ejemplo de cada modo de actualizacién del grifico. El scope chart y el ‘sweep chart tienen visualizaciones de retrazado parecidas a un osciloscopio. Como retrazar una curva requiere menos esfuerzo, el scope chart y el sweep chart muestran curvas mucho més rapidamente que el strip chart. Figura 3-28, Modos de actualizacién de graficos Cableado de graficos Puede cablear una salida escalar directamente a un grafico tipo “waveform chart”. El terminal del gxifico tipo “waveform chart” de la figura 3-29 coincide con el tipo de datos de entrada. Figura 3-29. Cableado de una sola curva a un grafico tipo “waveform chart” Los grificos tipo “waveform chart” pueden mostrar varias curvas juntas usando la funcién Bundle situada en la paleta Cluster, Class & Variant. En la figura 3-30, la funcién Bundle une las satidas de los tres Vis en la curva del grafico tipo “waveform chart”. Figura 3-30. Cableado de varlas curvas a un grifico tipo “waveform chart” El terminal del grifico tipo “waveform chart” cambia para coincidir con la salida de la funcion Bundle. Para afiadir mds curvas, usc la herramienta de posicionamiento para cambiar el tamaito de Ja funcién Bundle. 990 | sicom ‘anual ce Curso LabVIEW Core 1 |. Estructuras Case Una estructura Case tiene dos mas subdiagramas 0 casos. Ll Solo se ve un subdiagrama a Ia vez y la estructura ejecuta sdlo un caso cada vez. Un valor de entrada determina qué subdiagrama ejecutar. La estructura Case es similar a las declaraciones switch o a las declaraciones if...then...clse en lenguajes de programacién basados en texto. La etiqueta del selector de caso en la parte superior de la estructura Case contiene en el centro el nombre dei valor de seleccién que se corresponde con el caso actual y las flechas de incremento y decremento a cada lado. ive=B) Haga elic en las flechas de incremento y decremento para desplazarse por los casos disponibles. ‘También puede hacer clic en la flecha junto al nombre del caso y seleceionar un caso del mend desplegable. Cablee un valor de entrada, o selector, ala terminal de seleccién para determinar qué caso se ejecuta, Debe cablear un niimero entero, un valor booleano, una cadena de caracteres 0 un valor de tipo enumerado en el terminal de seleccién. Puede colocar el terminal de scleccién en cualquier parte del borde izquierdo de !a estructura Case. Si el tipo de dato del terminal de seleecién es booleano, laestructura tiene un easo True y uno False. Si el terminal de seleccién es un niimero entero, cadena de caracteres 0 valor de tipo enumerado, la estructura puede tener cualquier némero de casos. YE Nota Por defacto, los valores de cadenas de caracteres que eablee al terminal de seleccién distinguen mayusculas de mintsculas. Para permitir coincidencias sin distincién de mayisculas y mindsculas, cablee un valor de cadena de caracteres al terminal de seleccién, haga clic con el botdn derecho en el borde de Ia estructura Case y seleccione Case Insensitive Match en el mend contextual. Si no especifica un caso predeterminado para que la estructura Case controle valores fuera de rango, debe enumerar explicitamente cada valor de entrada posible. Por ejemplo, si el selector es. ‘un niimero entero y especifiea casos para 1, 2 y 3, debe especificar un caso predeterminado a ejecutar siel valor de entrada es 4 u otro valor de némero entero sin especificar, ‘©Natonat instruments | 331 Loccién'Stmplemantacion de un Vt ‘G4 Nota _No puede especificar un caso predeterminado si cablea un control booleano at selector, Si hace clic con el botén derecho en la etiqueta del selector de caso, Make This. ‘The Default Case no aparecerd en e] ment contextual. Seleccione el valor TRUE 0 FALSE en el control booleano pata determinar qué caso ejecutar. Para convertir una estructura Case en una estructura Stacked Sequence, haga clic con el botén derecho en la estructura Case Sequence y seleccione Replace with Stacked Sequence en e] menit contextual. Haga clic con el botén derecho en el borde de Ia estructura Case para afiadir, duplicar, eliminaro reordenar casos y para seleccionar un caso predeterminado. Seleccionar un caso La figura 3-31 muestra un VI que utiliza una estructura Case para ejecular cédigo diferente en funcién de si un usuario selecciona °C 0 °F como unidades de temperatura. El diagrama de bloques superior muestra el caso True en primer plano, En el diagrama de bloques intermedio, se selecciona el caso False. Para seleccionar un caso, escriba el valor en el identificador det selector de caso 0 use la herramienta de etiquetado para modificar los valores. Tras seleccionar otro caso, é5e aparecerd enel diagrama de bloques, como se muestra en el diagrama de bloques inferior de la figura 3-31. Figura 3-31. Cambiar la visualizacion de caso de una estructura Case Si introduce un valor selector que no es del mismo tipo que el abjeto cableado al terminal de seleccién, el valor aparece en rojo. Esto indica que el VI no se ejecutara hasta que elimine o modifique el valor. Asimismo, debido al posible error de redondeo inherente de la aritmética de 3.92 | nicom ¢ Manual do Curso LabVIEW Core 1 coma flotante, no puede utilizar nimeros en coma flotante como valores de seleccién de caso. Si cablea un valor en coma flotante al caso, LabVIEW redondeaté el valor al nimero entero mas cercano. $i escribe un valor en coma flotante en ia etiqueta del selector de caso, el valor apareceré rojo para indicar que debe eliminar o modificar ef valor antes de que pueda ejecutarse Is estructura, Tuneles de entrada y salida en estructuras Case Puede crear varios tlineles de entrada y satida para una estructura Case. Las entradas estan disponibles en todos los casos, pero los casos no necesitan utilizar cada entrada. No obstante, debe definir un tine! de salida para cada caso. Considere el siguiente ejemplo: una estructura Case en el diagrama de bloques tiene un tinel de salida, pero en al menos uno de los casos no hay valor de salida cableado al tiinel. Si ejecuta este caso, LabVIEW no sabra qué valor devolver para la salida, LabVIEW indica este error dejando el centro del tinel en blanco. El caso sin cablear podria no ser el caso que se estd viendo en el diagrama de bloques. Para corregir este error, muestre los casos que contienen el tine! de salida sin cablear y cablee una salida al tinel. También puede hacer clic con el botén derecho en el tine! de salida y seleccionar Use Default If Unwired en ef memii contextual para utilizar el valor predeterminado para ¢! tipo de datos det tinel en todos los tineles sin cablear. Cuando se cablea Ia salida en todos tos casos, el ‘tine! de salida aparece relleno con el color del tipo de dato asociado al mismo. Evite usar la opcién Use Defauit If Unwired. Si usa esta opcién, no documentard bien el diagrama de bloques y podra confundir a otros programadores que utilizan su cédigo. La opcién Use Default If Unwired también dificulta ia depuracién del cédigo. Si usa esta opcién, tenga en cuenta que ¢l valor predeterminado utilizado es el del tipo de datos que esté conectado al tinel. Por ejemplo, si el tinel es un tipo de datos booleano, el vator predeterminado es FALSE. Consulte la tabla 3-3 para ver una lista de valores predeterminados para los tipos de datos. Tabla 3-3. Valores predeterminados de tipos de datos Tipo de datos Valor predeterminado Numérico ° Boolean FALSE Cadena de caracteres vacio (* (© National instants | 3:33 ‘Leccién 8 Implementacion de un VI Ejemplos En los siguientes ejemplos, los valores numéricos pasan por tineles a la estructura Casey sesuman © restan, en funcién del valor cableado al terminal de selecci6n. Estructura Case booleana La figura 3-32 muestra una estructura Case booleana. Los casos se solapanentre si para simplificar Ja ilustracién, Figura 3-32. Eslructura Case booleana Siel control boolcano cableado al terminal de seleccidn es True, el VI suma los valores numéricos. De lo contrario, el VI resta los valores numéricos. En situaciones donde simplemente debe elegir entre dos valores basado en la entrada de un ‘booleano, Ia instruccion Select puede ser usada en vez de la estructura Boolean Case. > Estructura Case de numero entero La figura 3-33 muestra una estructura Case de niimero entero. Figura 3-33, Estructura Case de numero entero 334 | nicom Manual de Curso LabVIEW Core 1 ‘Numerie ¢s un control de anillo de texto situado en Ja paleta Text Controls que asocia valores rnuméricos con elementos de texto. Si el niimero entero cableado al terminal de seleccién es 0 (ada), ef VI suma los valores numéricos. Si el valor es 2 (subtract), el VI resta los valores numéricos. Si Numeric es cualquier otro vator distinto de 0 (ada) 1 (subtract), el VI suma los valores numéricos, porque ése es el caso predeterminado. Estructura Case de cadena de caracteres La figura 3-34 muestra una estructura Case de cadena de caracteres. Figura 3-34, Estructura Case de cadena de caracteres Si String es add, cl VI suma los valores numéricos. Si String es subtract, ct VI resta los valores numéricos. Estructura Case enumerada La figura 3-35 muestra una estructura Case enumerada, Figura 3-35. Estructura Case enumerada Un control de tipo enumerado facilitaa los usuarios una lista de elementos para seleccionar. El tipo de datos de un control de tipo enumerado incluye informacin sobre los valores numéricos y efiquetas de cadenas de caracteres del control. El selector de caso muestra la etiqueta de la cadena de caracteres pare cada elemento del control de tipo enumerado cuando seleccions Add Case For Every Value en el meni contextual de la estructura Case. La estructura Case ejecuta el ‘ONatonal Instruments | 3:35 Leccién 9 Implementactin de un Vt subdiagrama de caso apropiado en funcién del elemento actual del control de tipo enumerado. En el diagrama de bloques anterior, si Enum es add, el VI suma los valores numéricos. Si Enum es subtract, el VI festa los valores numéricos. Uso de estructuras Case para gestionar errores El siguiente ejemplo muestra una estructura Case donde un cluster de error define los casos. Figura 3-38. Caso No Error ate 4 - Read om | ‘cate | : | 1 werden sah atinnoenen Sa} 4 8} oe met 4 a Figura 3-37. Caso Error Cuando cablea un cluster de error a la terminal de seleccién de una estructura Case, la etiqueta del selector de caso muestra dos casos—Error y No Error, yl borde dela estructura Case cambia de color—rojo para Exrox y verde paraNo Exror. Si ocurre un error, la estructura Case ejecuta el subdiagrama Exror. Cuando cablea un clisster de error al terminal de scleccién, Ia estructura Case s6lo reconoce el elemento booleano status del cluster. 996 | sicom ‘Manual de Curso LabVIEW Cote t Autorrevisién: Cuestionario I. Siuna entrada de una funcién esté marcada con un punta rojo (conocido como punto de ccoercién), gqué es lo que indica e! punto? a, Se han transferido datos dentro de la estructura, b. Un bucle For fue configurado con un terminal condicional. ¢. Un terminal de iteraciones de un bucte For no esti cableado. 4, El vator transferido al nodo fue convertide a una representacion diferente, ECudles de las siguientes estructuras deben ejecutarse al menos una vez? a. Biicle While b. Bucle For 3. ¢Qué elemento de los siguientes séfo esti disponible en el diagrama de bloques? a Controt b. Constante c. Indicador 4d. Panet de conectores 4. {Qué accién mecdnica hace que un control booleano en el estado FALSE cambie a TRUE cuando hace clic en ély permanezca TRUE hasta que lo libere y LabVIEW haya leido el valor? a. Switch until released b, Switch when released ¢. Latch until released d. Latch when released © Natonal instruments | 337 0 3.9 om vod é ‘Manual do Gurso LabVIEW Coro 1 Autorrevisién: Respuestas 1, Siuna entrada de una funcién esté marcada con un punto rojo (conocido como punto de coercién), ;qué es lo que indica el punto? a. Se han transferido datos dentro de la estructura. b. Un bucle For fue configurado con un terminal condicional. c. Unterminal de iteraciones de un bucle For no esta cableado, d. El valor transferido al nodo fue convertido a una representaci6n diferente. x ‘Cudles de las siguientes estructuras deben ejecutarse al menos una vez? a. Bucle While b. Bucle For 3. {Qué elemento de los siguientes sdlo estd disponible cn el diagrama de bloques? a. Control b. Constante ce. Indicador d. Panel de conectores 4. {Qué accién mecénica hace que un contro! booleano en el estado FALSE cambie a TRUE ‘cuando hace clicen él y permanezca TRUE hasta que lo libere y LabVIEW haya leide el valor? a, Switch until released b. Switch when released c. Latch until released d. Lateh when released © National instruments | 3:99 Lecciéa'8_ Implomontacién de un VI Notas 940 | nieom Desarrollo de aplicaciones modulares Esta leccién describe e6mo desarrollar aplicaciones modulares. La potencia de LabVIEW reside en la naturaleza jerdrquica del VI. Tras crear un VI, puede utilizarlo en el diagrama de bloques de otro VI. No existen limites en el mimero de capas de la jerarquia. El uso de la programacién modular ayuda a gestionar cambios y depurar el diagrama de bloques répidamente. Temas A. Comprensién de Ia modularidad B. Creacidn del panei de ieonos y conectores C. Uso de subVIs ‘© Nationa nstrumants | 4-1 Leecién 4 Desarrollo da apcaciones moduiaros A. Comprensi6n de la modularidad La modularidad define et grado en que un programa se compone de médulos diferenciados de ‘modo que un cambio en un médulo tenga un impacto minimo en otras méduios. Los médulos de LabVIEW se denominan subVIs. Un VI dentro de otro VI se denomina subVI. Un subVI corresponde a una subrutina en lenguajes de programacién basados en texto, Cuando hace doble clic en un subVI, aparece un panel frontal y un diagrama de bloques en lugar de un cuadro de didlogo donde poder configurar opciones. El panel frontal incluye controles ¢ indicadores. El diagrame de bloques incluye cables, iconos del panel frontal, funciones, posiblemente subVIs y otros objetos de LabVIEW que también podrian parecerle familiares. Laesquina superior derecha de fa ventana del panel frontal y de la ventana del diagrama de bloques ‘muestra el icono para el VI, Es el mismo icono que aparece cuando sitia el VI en el diagrama de bloques. Cuando erce Vis, quiz piense que realiza ciertas operaciones frecuentemente. Considere usar subVIs o bucles para realizar esa operacidn repetitivamente. Por ejemplo, el siguiente diagrama de bloques contiene dos operaciones idénticas. Figura 4-1. Diagrama de bloques con dos operaciones idénticas Figura 4-2. Diagrama de bloques con subVis para operaciones idénticas ose 42 | nicom f of & £ oo \ e% Manual do Curso LabVIEW Cora 1 El ejemplo llama al VI Temperature como un subVI dos veces en su diagrama de bloques y funciona del mismo modo que el diagrama de bloques anterior. También puede reutilizar el subV1 en otros Vis. Los siguientes pseudocsdigos y diagramas de bloques demuestran ta anaiogia entre subVIs y subrutinas. Cédigo de functén Cédigo para llamar al programa function average (inl, in2, out) ( | main { average (pointl, point2, out = {inl + in2}/2.0; ) pointavg) ) Diagrama de bloques del subVI Diagrama de bloques dei VI Calling f—p pf >" ta! gl es B. Creacion del panel de iconos y conectores ‘Tras crear un panel frontal y un diagrama de bloques del VI, cree el icono y el panel de conectores para poder utilizar el VI como un subVI. El icono y el panel de conectores se corresponden con el prototipo de funcién en lenguajes de programacién basados en texto. Cada VI muestra un icono Ja esquina superior derecha de la ventana del panel frontal y de ta ventana del diagrama de bloques. Un icone de Vi es una representacién gréfica de un V1. Puede contener texto, imvigenes 0 una combinacién de ambos. Si utiliza un VI como un subVI, el icono identifica el subVI en el disgrama de bloques de! VI. Si afiade el VI a una paleta, e! icono del VI también aparece en la paleta Functions. Puede hacer doble clic en el icono de la ventana del panel frontal o en la del diagrama de bloques para personalizarlo o modificarlo, “EA Nota Se recomienda personalizar el icono, aunque es opeional, Si usa el icono predeterminado de LabVIEW, no afectara a la funcionalidad. ‘También debe crear un panel de conectores, para usar el VI como un subVI. EI panel de conectores es un conjunto de terminales que se corresponde con los controles € indicadores de ese V1, similar a 1a lista de pardmetros de una llamada a una funcién en lenguajes de programacién basados en texto. El panel de conectores define las entradas y salidas que puede cablear al VI para que pueda usarlo como un subVI. Un panel de conectores recibe datos en sus ‘@Navonal tastumonts | 43 Loceidn 4 Desarolo de aplicacionos modularas terminales de entrada, los pasa al cédigo del diagrama de bloques mediante los controles del panel frontal y recibe los resultados en sus terminales de salida desde tos indicadores del panel frontal. Creacién de un icono Los iconos son representaciones grificas de VIs. Cada VI muestra un icono en la esquina superior derecha de la ventana del panel frontal y de la ventana del diagrama de bloques. ee El icono del VI predeterminado contiene un niimero que indica cudntos Vis (hasta nueve Vis) nuevos abrié tras lanzar LabVIEW. Pera desactivar esta numeracién, seleccione Tools» Options»Front Panel y desmarque la casilla de verificacién Use numbers in icons of new VIs (1 through 9). Un icono puede contener texto o imigenes. Si utitiza un VI como un subVI, el icono identifica el subVI en el diagrama de bloques del VI. Si afiade el VI a una paleta, el icono del VI también aparece en la paleta Functions. Use el cuadro de didlogo Icon Editor para modificar un icono de un Vi, Haga doble clic sobre el icono en fa esquina superior derecha de una ventana del panel frontal o del diagrama de bloques para que aparezca el cuadro de didlogo Icon Editor. Cree un icono para representar un VI o control personalizado grificamente. Use el cuadro de diélogo Icon Editor para crear o modificar iconos. Puede utilizar banners para identificar Vis relacionados. National Instruments recomienda crear y guardar un banner en forma de plantiila. A continuacién, puede utilizar esta plantilla para un icono de VI relacionado y modificar el cuerpo def icono de! VI para suministrar informacién sobre el VI en cues Guardar un banner como una plantilla Complete estos pasos para guardar un banner como una plantilla de icono para un VI. 1. Haga dobte clic sobre ef iéono en ta esquina superior derecha de una ventang del panel frontal © del diagrama de bloques, o haga clic derecho en el icono y seleccione Edit eon en el ment contextual, para que aparezca ef cuadro de didlogo leon Editor. 2. Pulse las teclas para seleccionar todas las eapas de usuario del icono y pulse ia tecla - para eliminar la seleccién. El icono predeterminado es una capa de usuario individual denominada VI Teon, 3. Ena pégina Templates, seleccione la plantilla de icono_blank.png en la categoria Vi» Frameworks. Puede examinar plantillas por categoria o por palabra clave. 44 | nhcom Marval de Curco LabVIEW Covo 1 4. Use la herramienta de relleno a la derecha del cuadro de didlogo Icon Editor para rellenar el banner del icono con un color. 5. Use la herramienta de texto para escribir texto en e! banner del icono. Mientras el texto esta activo, puede mover el texto pulsando las teclas de flecha. 6. Seleccione FileSave AsyyTemplate para mostrar el cuzdro de diélogo Save leon As y guardar el icono como una plantitta para un uso posterior. LabVIEW guarda las plantittas de iconos como ficheros . png de 256 colores. Creacién de un Icono de VI desde una piantilla Complete estos pasos para crear un icono de VI que utilice la plantifla que cres. 1. Pulse tas teclas para seleccionar todas las capas de usuario del icono y pulse la tecla para eliminar {a seleccion. 2. En la pigina Templates, seleccione la plantilla que cred, Puede examinar plantillas por ‘categoria o por palabra clave. 3. En la pagina Icon Text, escriba hasta cuatro lineas de texto de icono para el cuerpo del icono, Puede configurar la fuente, alineacién, tamatio y color del texto. Si marca la casifla de verificacion Center text vertieally, el cuadro de didlogo Icon Editor centra el texto del icono verticalmente en el cuerpo del icono. 4. En la pagina Glyphs, arrastre y suelte simbolos en la zona Preview. Pulse fa tecla o para voltear un simbolo horizontalmente 6 girarlo en sentido horario, Tespectivamente, mientras fo mueve. También puede hacer doble clic en un simbolo para colocarlo en fa esquina superior izquierda del icono, Puede examinar simbolos por categoria 0 por palabra clave, 5. Use la herramienta de mover para mover cualquier simbolo. Cada simbolo se encuentra en una capa distinta y por lo tanto se mueve independientemente. Tenga en cuenta que el resto del icono se atentia cuando selecciona un simbolo, para poder identificar qué seleccién esta moviendo. 6, Use las herramientas de edicién a la derecha del cuadro de didlogo Icon Editor para modificar més el icono, si es necesario. Elcuadro de diélogo Icon Editor crea una nueva capa de usuario para cada uso no consecutivo de las herramientas de edicién. Seleccione Layers»Create New Layer para crear una nueva capa de usuario durante los usos consecutivos de las herramientas de edicién. YE) Nota_ No puede modificar la plantitla dl icono 0 ! texto del icone con las herramientas de edicién de fa derecha del cuadro de didlogo Icon Editor. Use la pagina Templates y la pagina Jeon Text para modificar la plantilla del icono y el texto del icono respectivamente. © National inrumanis | 45 Loccién4 Desarrota da apfacionas moduiares 7. (Opcional) Seleccione Layers»Show Layers Page para ver le pagina Layers. Use esta pagina para configurar el nombre, opacidad, visibilidad y orden de las capas del icono. 8. Haga clic en el botén OK para guardar la informacién del icono con el VI y cerrar el cuadro de didlogo Ieon Editor. También puede arrastrar un gréfico desde cualquier parte del sistema de archivos y soltarlo en la esquina superior derecha de la ventana del panel frontal para usar el grdfico como un icono del VI. Puede arrastrary soltar archivos .png, .bmp 0 . pg. Nota Si modifica un icono arrastrando y soltando un grafico del sistema de archivos, LabVIEW creard una capa de usuario denominada V1 Icon para el grdfico y eliminara cualquier otra informacion existente del icono del cuadro de dilogo Icon Editor. Configuracién del panel de conectores Defina conexiones asignando un control o indicador del panel frontal a cada terminal del panel de cconectores. Ei panel de conectores se muestra junto al icono del Vi en esquina superior derecha de la ventana del panel frontal, Cuando se abre LabVIEW, se ve un panel de conectores predeterminado. Cada rectingulo del panel de conectores representa una terminal, Use los rectingulos para asignar entradas y salidas, El panel de conectores predeterminados 4 x 2 x2 « 4, También puede seleceionar un patrén difereme haciendo clie con el botén derecho en el panel de conectores y seleccionando Pattems en e! menii contextual. Si anticipa cambios en el VI que requieran una entrada o salida nueva, mantenga el panel de conectores predeterminado para dejar terminales extra desasignadas. El panel frontal de la figura 4-3 tiene cuatro controles y un indicador, por lo que LabVIEW nuestra cuatro terminales de entrada y uno de salida en el panel de conectores. Figura 4-3. Panel frontal de! VI Slope 46 { nicom © & Manual do Curso LabVIEW Coro 1 Seleccién y modificacién de modelos de terminales Seleccione otro modelo de terminales haciendo clic conel botén derecho enel pane! de conectores y seleccionando Patterns en el meni contextual. Por ejemplo, puede seleccionar un modelo de ppanel de conectores con terminales adicionates. Puede dejar los terminales adicionales sin conectar hhasta que los necesite. Esta flexibilidad permite cealizar cambios con un efecto minimo en la Jerarquia de los VIs. ‘También puede tener mas controles o indicadores en e! panel frontal que terminales. Puede asignar hasta 28 terminales a un panel de conectores. E] modelo que se usa més se muestra abajo. Este modelo se utiliza como estindar para ayudar a sirmplificar el cableado, La figura 4-4 muestra un ejemplo de la distribucién estindar utilizada para modelos de terminates. Las entradas y salidas superiores se suelen usar para pasar referencias y las entradas y salidas inferiores para el control de errores, Figura 4-4. Ejemplo de modelo de terminales Inputs | outputs Reference in “EA Nota Evite usar paneles de conectores con mis de 16 terminates. Aunque los modelos de paneles de conectores con mas terminaies pudieran parecer ttiles, son muy dificiles de cableac, Si necesita pasar mas datos, use clusters. Asignacion de terminales a controles e indicadores ‘Tras seleccionar un modelo para usar en el pane! de conectores, puede asignar un control o indicador-del panel frontal a cad terminal del panel de conectores. Cuando asigna controles € indicadores al panel de conectores, coloque entradas en la izquietda y salidas a fa derecha para evitar modelos de cableado complicados 0 confusos, Para asignar un terminal a un control o indicador del panel frontal, haga clic en un terminal del panel de conectores y después en el control o indicador del panel frontal que desee asignar a ese terminal. Haga clic en un espacio abierto de ta ventana del panel frontal. El terminal cambia al color del tipo de datos del control para indicar que conect6 el terminal. ‘También puede seleccionar el control o indicador primero y después seleccionar el terminal, ‘© National nstrumants | 47 Leccién 4 Desarrollo de apteaciones modulares YE Nota "Aunque use la herramienta de cableado para asignarterminales del panel de conectores a controles e indicadores del panel frontal, no se dibujan cables entre ¢! pane! de conectores y estos controles ¢ indicadores, C. Uso de subVis Para colocar un subVI en el diagrama de bloques, haga clic en el botén Select a VI en la paleta Functions. Navegue al VI que desee usar como subVIy haga doble clic para colocarto en el diagrama de bloques. ‘También puede colocar un VI que se encuentre abierto en el diagrama de bloques de otro VI abierto. Use la herramienta de posicionamiento para hacer clic en el icono de la esquina superior derecha de! panel frontal o diagrama de bloques de! VI que desee usar como subVI y arrastre e] fcono al diagrama de bloques del otro VI. Apertura y modificacién de subVIs Para ver ¢! pane! frontal de un subVI desde el VI que Tama, use la herramienta de operaciones o de posicionamiento para hacer doble clic en el subVI det diagrame de blaques. Para er el diagrama de bloques de un subVI desde el VI que llama, pulse la tecla y use la herramienta de operaciones o de posicionamiento para hacer doble clic en e] subVI del diagrama de bloques. Puede modificar un subVI usando la herramienta de operaciones o de posicionamiento para hacer doble clic en el subVi del diagrama de bloques. Cuando guarde el subVI, los cambios afectardn a todas las Hamadas al subV1, no sélo a Ja copia actual. Configuracién de entradas y salidas obligatorias, recomendadas y opcionales Ena ventana Context Help, las etiquetas de terminales obligatorios aparecen en negrita, los terminales recomendados come texto sin formate y los opcionales aparecen atenuados. Las etiquetas de terminales opcfonates no aparecen si hace clic en el botén Hide Optional Terminals and Full Path en la ventana Context Help. Puede designar qué entradas y salidas son obligatorias, recomendadas y opcionales para evitar que los usuarios olviden cablear terminales del subVI, Haga clic con el botén derecho en un terminal del panel de conectores y seleccione This Connection Is en el ment contextual. Una marca de verificacién indica la configuracién del terminal. Seleccione Required, Recommended u Optional. También puede seleccionar Tools» Options»Front Panel y activar la casilla de verificacién Connector pane terminals default to required. Esta opcidn configura los terminales del pane] conector en Required en lugar de Recommended. Esto se aplica a conexiones realizadas con la herramnienta de cableado y a subVis creados utilizando Create SubVI. 48 | ni.com Manual do Curso LabVIEW Goro 1 YG4_Nota_ Puede seleccionar Dynamic Dispatch Input (Required) o Dynamic Dispatch Output (Recommended) para Vis de miembros de distribucién dinamica, Para entradas de terminales, required (obligatorio) significa que el diagrama de bloques donde colocé el subVI se rompers si no cablea las entradas necesarias. Requited no esta disponible para salidas del terminal, Para entradas ysalidas de terminales, recommended (recomendado) u optional (opcional) significa que el diagrama de bloques donde colocé el subVI puede ejecutatse si no cablea los terminales recomendados u opcionales. Si no cablea los terminales, el VI no genera ninguna advertencia. Las entradas y salidas de Vis de vi .1ib ya estin marcadas como Required, Recommended u ‘Optional. LabVIEW configura entradas y salidas de Vis que cree como Recommended de forma predeterminada. Configure un terminal como obligatorio séto si el VI debe tener esa entrada para ejecutarse correctamente. Gestién de errores en SubVIs Usted pasa errores dentro y fuera de un subVI utilizando clusters de error. Con una estructura Case, gestiona los errores pasadas al subV1 con un los casos No Error y Error. El caso No Error, como se muestra en la figura 4-5, contiene el cédigo para el funcionamiento normal del subVI. Figura 4-5. Caso No Error del subVI Sample aprons) (© National instruments | 49 Leccién 4 —Desarrolio do aplicaciones modulares El caso Error, como se muestra en Ia figura 4-6, normalmente pasa el error desde el control de cluster error in al indieador de cluster error out y contiene cualquier cédigo necesario para gestionar el error. Figura 4-6, Caso Error del subVI Sample Evite utilizar el VI Simple Error Handler y ef VI General Error Handier dentro de subVis. Si es necesario, use estos Vis en el VI que llama, como se ve en la figura 4-7. Figura 4-7. Diagrama de bloques del Vi Calling Creacién de un subVI desde un VI existente Puede simplificar el diagrama de bloques de un VI convirtiendo secciones de aquél en subVIs. Convierta una seccién de un Vi en un subVI utilizando la herramienta de posicionamiento para seleccionar la seccién del diagrama de bloques que desee reutilizar y seleccionando Edit»Create SubVI. Un icono para el nuevo subV] sustituira a Ja seccién seleccionada del diagrama de bloques. LabVIEW crea controles e indicadores para el nuevo subVI, configura automdticamente el panel de conectores en funcién del nimero de terminales de controles y de indicadores seleccionado y cablea el subVI a los cables existentes. 410 | room heel @e Manual do Curso LabVIEW Cora 4 La figura 4-8 muestra cémo convertir una seleccién en un subVI. Figura 4-8. Creacién do un nuevo subVI El nuevo subVI usa un modelo predeterminado para e! panel de conectores y un icono también predeterminado. Haga doble clic en el subVI para modificar el panel de conectores y el icono y para guardar el subV1. YE} Nota No seleccione mas de 28 objetos para crear un subVI porque 28 es el nimero maximo de conexiones en un pane! de conectores. $i su panel frontal contiene més de 28 controles ¢ indicadores que desea usar programiticamente, agrupe algunos en un cluster y asigne éste a un terminal del panel de conectores, (© National tastmamonts | 4-11 9 Manus do Camo LABVIEW Car 9 Autorrevision: Cuestionario 1. Enun subVi, zque configuracién provoca un error si el terminal no se cablea? a. Required b. Recommended os ¢. Optional 2. Debe crear un icono para usar un VI como un subVI. a. Verdadero b. Falso ey © Nationa Insirumonts | 419 ‘Manus do Cursa LabVIEW Gore 1 Autorrevision: Respuestas 1, Enun subVI, gque configuracién provoca un error si el terminal no se cablea? a. Required b. Recommended ©. Optional 2. Debe crear un icono personalizado para usar un VI como un subVI. a. Verdadero b. Falso ‘No necesita crear un icono personalizado para utilizar un VI como un subVE, pero es muy recomendable aumentar la legibilidad de su cédigo, : (© Nationa nstrumonis | 4-15 Leccién 4 Desaroiode aplicaciones maduiares Notas 418 | ico O Creando y aprovechando estructuras de datos En ocasiones es conveniente agrupar datos relacionados entre si. Use arrays y clusters para agrupar alos relacionados en LabVIEW. Los arrays combinan datos del mismo tipo en una estructura de datos; los clusters combinan datos de diferente tipo en una estructura de datos. Use definiciones tipo para definir clusters y arrays personatizados. Esta leccién explica arrays, clusters y definiciones tipo, asi como aplicaciones donde su uso puede resultar beneficioso. Temas A. Arrays B. Funciones de array comunes C. Polimorfismo D. Autoindexado E. Clusters F. Definiciones tipo ‘©Natonal instruments | 5-1 Leccién 5 Creande y aprovechando estructura de datos A. Arrays Un array consta de elementos y dimensiones. Los elementos son los datos que conforman el array. Una dimensién es la longitud, altura o profundidad de un array. Un array puede tener una o més dimensiones y un maximo de (23)- | elementos por dimensién, si lo permite la memoria, Puede crear arrays de tipos de datos numéricos, booleanos, rutas, cadenas de caracteres, forma de onda y cluster. Use arrays cuando trabaje con un conjunto de datos similares y cuando realice céleuios repetitivos. Los arrays son ideales para almacenar datos que recopile de formas de onda o datos generados en bucles, donde cada iteracién de un bucle produce un elemento del array. “EA Nota Los indices de array en LabVIEW estin basades en cero. El indice del primer elemento del array, independientemente de su dimensién, es cero. Restriéciones ‘No puede crear arrays de arrays. Sin embargo, puede usar un array multidimensional 0 crear un array de clusters donde cada chuster contenga uno o mas arrays. Asimismo, no puede crear un array de controles subpanel, controles de pestafias, controles NET, controles ActiveX, grificos tipo “chart” o grificos tipo “XY graph” de varias curvas. Consulte la seccién de clusters de esta leccién para obtener informacién adicional acerca de los clusters. ‘Un ejemplo deun array simple es un array de texto que enumera los doce meses de! afio. LabVIEW representa esto como un array 1D de cadenas de caracteres con doce elementos. Los elementos de array estin ordenados. Un array utiliza un indice para que pueda aeceder ficilmente a un elemento concreto. El indice esti basado en cero, to que significa que esti en el intervalo de 0a n- 1, siendo nel nimero de elementos del array. Por ejemplo, 7 = 12 para los doce meses de! afio, de modo que el intervalo del indice es de 0a 11. Marzo esel tercer mes, por lo que su indice es 2. La figura 5-1 muestra un ejemplo de un array de valores numéricos. El primer elemento que aparece en el array (3.00) estan el indice 1 y el segundo elemento (1.00) esté en el indice 2. El elemento del indice 0 no aparece en esta imagen, porque el elemento | esta seleccionado en la visualizacién del indice. El elemento seleccionado ene! indice siempre hace referencia al elemento que aparece en la esquina superior izquierda de la visualizacién del array, Figura 5-1. Control array de valores numéricos 1 Indice $2 | eicom Manval de Curso LabVIEW Core 1 Creaci6n de controles e indicadores de tipo array Cree un control o indicador de array en el panel frontal afiadiendo una estructura array al panel frontal, como s¢ muestra en el siguiente panel frontal, y arrastrando un objeto o elemento de datos, que puede ser un control o indicador numérico, booleano, de cadena de caracteres, dle ruta, de refnum o de cluster, en la estructura array. Figura 5-2. Colocar un contro! numérico en una estructura array Si intenta.arrastrar un control o indicador no valido a la estructura array, no podra colocar el control el indicador en la estructura array. Debe insertar un objeto en la estructura array antes de usar el array en el diagrama de bloques. De lo contrario, ef terminal del array apareceré negro, con un paréntesis vacio y no tendra tipos de datos asociados a él, Creacion de constantes de arrays Para crear una constante de array en el diagrama de bloques, seleccione una constante de array en la paleta de Funciones , coloque Ia estruetura array en el diagrama de bloques y coloque una constante de cadena de caracteres, una constante numérica, una constante booleana o una constante de cluster en la estructura array. Puede utilizar una constante de array para almacenar datos de constantes 0 para comparar con otro array. Arrays bidimensionales Un array 2D almacena elementos en una cuadrieula. Requiere un indiee de columna y un indiee de fila para buscar un elemento, ambos basados en cero. La figura 5-3 muestra un array 2D de 8 columnas por 8 filas, que contiene 8 x 8 = 64 elementos. Figura 5-3. Array 2D ow index ‘ONatonat nsvuments | 5:3 Leccion $ Creando y aprovechando estncturas da datos Para afiadir un array multidimensional al panel frontal, haga clic con el botén derecho en la pantalla del indice y seleceione Add Dimension en el menti contextual. También puede cambiar el tamafio del indice hasta que tenga tantas dimensiones como desee. Inicializacion de arrays Puede inicializar un array o dejarlo sin inicializar. Para inicializar un array, debe definir ¢] numero de elementos de cada dimensién y cl contenido de cada elemento. Un array sin inicializar contiene un niimero fijo de dimensiones pero ningun elemento. La figura 5-4 muestra un control de array 2D sin inicializar. Observe que todos los elementos estan atenuadas. Esto indica que ¢l array no esta inicializado. En la figura 5-5, seis elementos estin inicializados. Figura 5-5. Array 2D inicializado con seis elementos En un array 2D, tras inicializar un elemento de una fila, los elementos restantes de ésta se iniciatizan y se rellenan con el valor predeterminado para el tipo de dato, Por ejemplo, en la figura 5-6, si escribe 4 en el elemento de !a primera columna, tercera fila, los elementos de la segunda y tercera columna de la tercera fila se rellenan automaticamente con un 0. Figura 5-6. Un array autopopulado con ceros S44 [icon Marual de Curso LabVIEW Core t B. Funciones de array comunes ‘LabVIEW agrupa las funciones que usted puede utilizar para manipular arrays en la paleta Array. Las siguientes funciones son las funciones mas comunes cuando se trabaja con arrays. 63 + Array Size—Provec el niimero de elementos en cada dimensién de array. El panel de a conectores muestra el tipo de datos predeterminado para esta funcién polimérfica. ae attay —fEIG—§ sete lize Anay—Crea un array de dimensién n en el cual cada elemento esté inicializado al valor de element. Use la herramienta de posicionamiento para cambiar el tamafio de la funcién yaumentar el nimero de dimensiones (elemento, fila, columna, pagina, etc) del array de salida, El panel de conectores muestra el tipo de datos predeterminado para esta fincién polimérfica. element Fel dimension size 0 ——p iniiataed aney — dimension sigg oi SF t + Array Subset—Provee una poreién de array empezando en index y conteniendo length elementos. length rest) + Build Array—Concatena miiltiples arrays o agrega elementos a un array de n dimensiones. ‘También puede usar la funcién Replace Array Subset para modificar un array existente. El panel de conectores muestra el tipo de datos predeterminado para esta funcién polimérfica. + Index Array—Provee el elemento o subarray de n-dimensinn array en index. Cuando cablea un array a esta funcién, la funcién cambia su tamaiio automdticamente para mostrar index entradas para cada dimensién en el array que cableo a n-dimension array. También puede agrogat terminales adicionales al elemento o subarray cambiando el tamafio de ta funcién. El 3 panel de conectores muestra el tipo de datos predeterminado para esta funcién polimérfica, ae adimension array —— ra index 0 — 2 Fda] ©Netional Instruments | 55 Leccién'S Greando yaprovechando estructuras de datos C. Polimorfismo Polimorfismo es 1a habilidad de Vis y funciones de adaptarse autométicamente para aceptar diferentes tipos de datos. Las funciones son polimérficas en diferentes grados—ninguna, algunas © todas sus entradas pueden ser polimérficas. Algunas entradas de funciones aceptan valores numérico o booleanos. Algunas aceptan valores numéricos o cadenas de caracteres. Algunas aceptan no sofo valores escalares pero también arrays de valores numéricos, clusters de valores numeéricos, arrays de clusters de valores numéricos y més. Algunas aceptan solamente arrays unidimensionales aunque los elementos del array pueden ser de cualquier tipo. Algunas funciones aceptan todo tipo de datos, incluyendo valores numéricos complejos. Polimorfismo para funciones aritméticas Las funciones aritmeéticas aceptan entrada de datos numéricos. Con algunas excepciones detaliadas en la descripeién de las funciones, la salida predeterminada tiene la misma representacién que la entrada o si las entradas tienen diferentes representaciones, [a salida predeterminada sera igual ala representacién mas larga de las entradas. Por ejempio, si afiade un entero de 8-bits y un entero de 16-bits, fa salida predeterminada es un entero de 16-bits. Si configura la salida de una funcién numérica, 1a configuracién que especifique sobre escribe el comportamiento predeterminado, Las funciones aritméticas trabajan con nimeros, arrays de némeros, clusters de niimeros, arrays de clusters de nimeros, nimeros complejos y mis. Una definicién formal de tipo de entrada permitido es la siguiente: Tipo numérico = escalar numérico O atray [tipo numérico] O cluster {tipos muméricos) Los escalares numéricos pueden ser nimeros coma flotante, enteros o nimeros complejos coma flotante. LabVIEW no permite usar arrays de arrays, Los arrays pueden tener cualquier nimero de dimensiones de cualquier tamafio. Los clusters pueden tener cualquier nimero de elementos. El tipo de salida de las funciones es del mismo tipo de representacién numérica que la entrada. Para las funciones con una entrada, las funciones operan en cada elemento del array o cluster. ara las funciones con dos entradas, puede usar las siguientes combinaciones: + Similar—Ambas entradas tienen la misma estructura y la salida tiene fa misma estructura que las entradas. + Unescalar—Una entrada es un escalar numérico, ia otra ¢s un array o cluster y la salida es un array 0 cluster, + Array de—Una entrada es un array numérico, la otra es el tipo numérico y Ia salida es un array. Para entradas similares, LabVIEW lleva acabo la funcién en ios elementos respectivos de las estructuras. Por ejemplo, LabVIEW puede sumar dos arrays elemento por elemento. Ambos arrays deben tener la misma dimensién, Puede sumar arrays de diferente niimero de elementos, ta salida de dicha suma tiene ef mismo némero de clementos que la entrada mas pequefia. Los clusters deben tener el mismo nimero de elementos y los elementos respectivos deben ser del mismo tipo. 56 | nicom Manual de Curso LabVIEW Core 1 Para operaciones que involucran un escalar y un array o un cluster, LabVIEW realiza la funciénen elescalar y los respectivos elementos de la estructura. Por ejemplo, LabVIEW puede restart un niimero de todos los elementos de un array, sin importar la dimensién del array. Para operaciones que involucran un tipo numérico y un array de ese tipo, LabVIEW realiza la funcién en cada uno de los elementos det array. Por ejemplo, un grafico es un array de puntos y un pinto es un cluster con dos tipos numéricos, X y Y. Para compensar un grafico por 5 unidades en la direceién X y por 8 unidades en la direccién Y puede afiadir un punto, (5,8),al grafico. La figura 5-7 muestra las posibles combinaciones polimérficas de ta funcién Add. Figura 5-7. Combinaciones polimérficas de la funcién Add. ‘Sete (nw Scar Ss caw 4 — [eer ia St Po cuasne e Sister Ste nse A es ry Cts Polimorfismo para funciones booleanas Las funciones légicas aceptan datos de entrada booleanos, numéricos y clusters de error. Si la entrada es numérica, LabVIEW ealiza una operacién bit a bit. Si entrada es un niimero entero, la salida tiene la misma representacion. Si la entrada es un niimero coma ftotante, LabVIEW lo redondea a un numero entero de 32-bits y la salida es un niimero entero de 32-bits. Si la entrada es un cluster de error, Lab VIEW pasa solo el valor TRUE 0 FALSE del parametro status del cluster de error a la terminal de entrada. La funciones légicas funcionan con anrays de mimeros 0 valores booleanos, clusters de nitmeros 0 valores booleanos, arrays de clusters de nimeros o valores booleanos y més. Una definicién formal del tipo de entrada permitido es la siguiente, excepto que los niimeros complejos y arrays de arrays no son permitidos: Tipo légico = cscalar booleano O escalar numérico O array [tipo ldgico] O cluster [tipas légicos] © National instruments | §-7 Lecci6n § Creando y aprovechando estructuas do datos Las funciones légicas con dos entradas pueden tener la misma combinacién de entradas que las, funciones aritméticas. Sin embargo, las funciones légicas tienen la restriccién adicional de que las operaciones bisicas solo pueden ser entre dos valores booleanns o dos mimeros. Por ejemplo, no puede tener una AND entre un valor booleano y un nimero. La figura 5-8 muestra algunas combinaciones de valores booleanos para la funcién AND. Figura 5-8. Combinaciones de valores booleanos para la funcién AND od (One Sear Bocaan Seater. Sool ‘Baaisan Sear —— ‘Sea Qoolaan Sextar ‘oiean Bocteon Ay oonan Bove tnt —)— hy ‘Boolean Amy ‘AY Goolaan Seat ‘clean ‘Sociann Gtr ‘Chae Sl Ssor ‘cue ayo Ara Casares 5a Ay of Caos D. Autoindexado Si cablea un array a o desde un bucle For o While, puede vincular cada iteracién del bucle en un elemento de ese array habilitando el autoindexado. La imagen del tinel cambia de un cuadrado relleno a la imagen para indicar el autoindexado. Haga clic con e] bot6n derecho en el ténel y seleccione Enable Indexing o Disable Indexing desde e] meni contextual para cambiar el estado del tinel. Entradas de array y autoindexado Si habilita el autoindexado en un array cableado a un terminal de entrada de un bucle For, LabVIEW configurard el terminal de contaje en el tamafio del array, por lo que no tiene que cablear, el terminal de contaje. Dado que puede utilizar bucles For para procesar arrays elemento por elemento LabVIEW habilita el autoindexado de forma predeterminada para todos los arrays que cablec a un bucle For. Puede desactivar el autoindexado si no necesita procesar arrays, elemento por elemento. 58 | eheom Manual do Curso LabVIEW Core 1 En la figura 5-9, el bucle For se ejecuta un niimero de veces equivalente al niimero de elementos del array. Normalmente, si el terminal de contaje del bucle For no esta cableado, fa flecha de ejecucién aparece rota. Sin embargo, en este caso la flecha de ejecucién no aparece rota. Figura 5-9. Array utilizado para configurar el contaje de bucles For Si habifita el autoindexado para més de un tinel o si cablea el terminal de contaje, el nimero real de iteraciones seri el equivalente a la menor de las elecciones. Por ejemplo, si dos arrays autoindexados entran en el bucle, con 10 y 20 elementos respectivamente, y cablea un valor de 15 al terminal de contaje, et bucle se seguird ejecutando slo 10 veces, indexando todos los elementos del primer array pero s6lo los 10 primeros elementos del segundo array. ‘ Salidas de array y autoindexado oN Cuando autoindexa un tinel de salida de un array, el array de salida recibe un nuevo elemento de \ cada iteracién det bucle. Por lo tanto, el tamafio de los arrays de salida autoindexados es siempre igual al mimero de iteraciones del bucle For. El cable del timel de salida al indicador de array aparece més grucso cuando se produce el cambio a un array en el borde del bucle, y el tinel de salida contiene corchetes que tepresentan a un array, ‘como en la figura 5-10. Figura 5-10. Salida autoindexada ‘© Natonal instruments | 5-9 Leceién 5 Creando y aprovechande estructuras da datos Hage clic comel botdn derecho en el borde del bucle y seleccione Enable Indexing 0 Disable Indexing en el menit contextual para habilitar o deshabilitar el autoindexado, El autoindexado de bucles While esta deshabifitado de forma predeterminada, Por ejemplo, deshabilite el autoindexado si necesita que s6lo e! altimo valor salga por el tinel. Creacidn de arrays bidimensionales Puede usar dos bucles For, anidados uno dentro del otro, para crear un array 2D. El bucle For externo crea Jos elementos de fa fila, mientras que el interno crea los elementos de Ta columna, como en fa figura 5-11. Figura 5-11. Creacién de un array 2D Autoindexado con un ttinel condicionai Usted puede determinar que valores LabVIEW escribe a la saiida de un tiinel de un bucle basado en una condicién que especifica haciendo clic con el botén derecho en ta salida de! tinel y seleccionando Tunnel Mode»Conditional en ef meni contextual. En fa figura 5-12, ef array Input Array contiene los siguientes elementos: 7, 2, 0, 3, 1,9, 5,y 7. Debido al tine! condicional, e! array Values less than 5 contiene solamente los elementos 2, 0, 3 y I después que este bucle completa todas las iteraciones. Figura 5-12. Bucle For autoindexado con tinel condicional 5:10 | a.com Manual de Curso LABVIEW Cove 1 Graficos tipo “Waveform graph” Los Vis con un grafico normalmente acumutan fos datos en un array y después los trazan en el gréfico. La figura 5-13 muestra los elementos de un grafico tipo “waveform graph”. Figura 5-13. Gréfico Waveform Graph T Leyendadelacurva 4 Marca derminicuadricula 7 Leyenda del cursor 10 Escala 2 Cursor 5 Loyenda de la escala 8 Paletadel grdtico 11 Etiquata 3 Marcade cuadricula 6 Desplazadordel cursor 9_ Escala X Los gréficas situados en Ia paleta Graph Indicators incluyen fos tipos “waveform graph” y “XY graph”. El tipo “waveform graph” sélo representa funciones de una tinica variable, como en y = £(x), con puntos distribuidos uniformemente en el eje x, como las formas de onda adquiridas variables con el tiempo. Los graficos XY muestran cualquier conjunto de puntos, muestteados uniformemente o no. Cambie el tamafio de la leyenda de Ia curva para ver varias curvas. Use varias curvas para ahorrar espacio en el panel frontal y comparar curvas. Los grificos tipo “XY” y “waveform” se adaptan autométicamente a varias curvas. Graficos tipo “Waveform graph” de una sola curva El grafico tipo “waveform graph” acepta varios tipos de datos para grificos de una sola curva. El gréfico tipo “graph” acepta un solo array de valores, interpreta los datos como puntos del grifico ¢ inerementa el indice x en uno empezando por x=0. Asimismo acepta un duster con un valor inicial x, un valor delta x y un array de datos y. Por iltimo, también acepta el tipo de datos de forma de onda, que contiene los datos, tiempo de inicio y el valor delta t de una forma de onda. Consulte ef VI Waveform Graph en Labview\examples\general \graphs \gengraph. 11b para ver ejemplos de los tipos de datos que acepta un gréfico tipo “waveform graph”. (© Nationa intrumants | 549 Leceién'S Creando y aptovechando estructms da datos Graficos tipo “waveform graph” de varias curvas EI grifico tipo “waveform graph” acepta varios tipos de datos para mostrar varias curvas. Acepta un array 2D de valores, donde cada fila de ésta es una sola curva. El grafico interpreta los datos como puntos del mismo ¢ incrementa el indice x en uno, empezando por x = 0, Cable un tipo de datos de array 2D al grafico tipo “graph”, haga clic en éste con el botén derecho y seleccione ‘Transpose Array en el men contextual para tratar cada columna del array como una curva. Esto resulta especialmente itil cuando muestrea varios canales de un dispositive DAQ, porque éste puede devolver los datos como arrays 2D con cada canal almacenado como una columna distinta. Consulte el grifico (Y) Multi Plot 1 en el VI Waveform Graph de labview\examples\ general \graphs\gengraph.11b para ver un ejemplo de un gréfico que acepta este tipo de datos. El grifice tipo “waveform graph” también acepta un luster con un valor inicial x, un valor delta x y un array 2D de datos y. Bl grifico interpreta los datos v como puntos def mismo e incrementa el indice x por el valor delta x, empezando por el valor x inicial. Este tipo de datos resulta Gtil para mostrar varias Seftales que se muestrean a fa misma velocidad regular. Consulte el grafico (Xo = 10, dX = 2, ¥) Malti Plot 2 en el VI Waveform Graph de Labview\examples\general\ graphs\gengraph. 11 para ver un ejemplo de un grifico que acepta este tipo de datos, El grafico tipo “waveform graph” acepta un array de curvas dnnde el array contiene clusters. Cada cluster contiene un array 1D que alberga los datos y. El array interno describe los puntos de una curva y el extemo tiene un cluster para cada curva. El panel frontal de la figura S-14 muestra este array de clusters y. Figura 5-14. Array del cluster y Use un array de curva en lugar de un array 2D si el nimero de elementos de cada curva es distinto, Por ejemplo, cuando muestrea datos de varios canales con distintos tiempos para cada uno, use esta estructura de datos en lugar de un array 2D porque cada fila de un array 2D debe tener el mismo nimero de elementos, E| nimero de elementos de los arrays interiores de un array de clusters puede variar. Consulte el grafico (Y) Multi Plot 2 en ef VI Waveform Graph de Labview\examples\ general \graphs\gengraph. 11b para ver un ejemplo de un grifico que acepta este tipo de datos. El gréfico tipo “waveform graph” acepta un cluster de un valor inicialx, un valor delta x y un array que contiene clusters. Cada cluster contiene un array 1D que alberga los datos y. Use la funcién Bundle para unir los arrays en clusters y use la funcién Build Array para crear los clusters resultantes en un array. Consulte la leccién Clusters, para obtener informacién adicional acerca de tos clusters y la funcién Bundle. 512 | aleom Manual de Curso LabviEW Coro 1 ‘También puede wtilizar la funcién Build Cluster Array, que crea arrays de clusters que contienen Jas entradas que especifique. Consulte el grifico (Xo = 10, dX = 2, Y) Multi Plot 3 en el VI f Waveform Graph de labview\examples\general\graphs\gengraph. 1 1b para ver un ejemplo de un grifico que acepta este tipa de datos. EI grifico tipo “waveform graph” acepta un array de clusters de un valor x, un valor delta x y un array de datos y. Este es el mis general de los tipos de datos de grifices tipe “waveform graph” de varias curvas, porque puede indicar un tinico punto de inicio ¢ incrementar la escala x de eada curva. Consulte el grifico (Xo = 10, dX = 2, Y) Multi Plot 1 enel VI Waveform Graph de Jabview\ examples \general\graphs\gengraph. 11b para ver un ejemplo de un grifico : que acepta este tipo de datos. El grafico tipo “waveform graph” también acepta el tipo de datos dindmicos, que se usa con los Vis Express. Ademés de los datos asociados con una sefial,e! tipo de datos diniimicos incluye atributos con informacién sobre la sefial, como el nombre de la sefial o la fecha y la hora en que se adquirieron los datos. Los atributos especifican cémo aparece la sefial en el grafico. Cuando el tipo de datos dindmnico incluye varios canales, el grafico muestra una curva para cada canal y da formato automaticamente a la leyenda de 1a curva y la marca de hora de la escala x. Graficos XY de una sola curva El grafico XY acepta tres tipos de datos para grificos XY de una sola curva. El grifico XY acepta un cluster que contiene un array x y un array y. Consulte el grifico (X and Y arrays) Single Plot enel VI XY Graph de labview\examples\general \graphs\gengraph. 11b para ver un. ¢ ejemplo de un grafico que acepta este tipo de datos, El grifico XY también acepta un array de puntos, donde un punto es un cluster que contiene un valor xy un valor y. Consulte el grafico (Array of Pts) Single Plot en el VI XY Graph de Labview \examples\genera1\graphs\gengraph. 11b para ver un ejemplo de un grifico que acepta este tipo de datos. El grafico XY también acepta un array de datos complejos, donde la parte real se traza en el eje x y fa parte imaginaria en el eje y. Consulte la seccién Clusters, para obtener informacién adicional acerca Jos clusters. Graficos XY “waveform graph” de varias curvas El grifico XY acepta tres tipos de datos para mostrar varias curvas. Acepta un atray de curvas, donde una curva es un cluster que contiene un array x y un array y: Consulte el grifico (X and Y arrays} Multi Plot en el VI XY Graph de labview\examples\general\graphs\ gengraph.11b para ver un ejemplo de un grifico que acepta este tipo de datos. El grafico XY también acepta un array de clusters de curvas, siendo una curva un array de puntos. ‘Un punto ¢s un cluster que contiene un valor y un valor y. Consulte el grafico (Array of Pts) Multi Plot en el VI XY Graph de 1abview\exanples\ general \graphs\gengraph. 11b para ver un ejemplo de un grifico que acepta este tipo de datos. El grafico XY también acepta un array clusters de curvas, siendo una curva un array de datos complejos, donde la parte real se traza en el to eje x y la parte imaginaria en el eje y. Consulte fa seccién Clusters, para obtener informacién adicional acerca los clusters. ‘National instruments | 5-13 howe

You might also like