Introducción al curso de Labview en 6 horas
Introducción al curso de Labview en 6 horas
Introducción al curso de Labview en 6 horas
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
<strong>Introducción</strong> a LabVIEWTM<br />
Curso <strong>de</strong> Seis-Horas<br />
Course Software Version X.X<br />
September 2003 Edition<br />
Part Number 323669B-01<br />
Copyright<br />
© 2003 Nation<strong>al</strong> Instrum<strong>en</strong>ts Corporation. All rights reserved.<br />
Universities, colleges, and other education<strong>al</strong> institutions may reproduce <strong>al</strong>l or part of this publication for<br />
education<strong>al</strong> use. For <strong>al</strong>l other uses, this publication may not be reproduced or transmitted in any form,<br />
electronic or mechanic<strong>al</strong>, including photocopying, recording, storing in an information retriev<strong>al</strong> system, or<br />
translating, in whole or in part, without the prior writt<strong>en</strong> cons<strong>en</strong>t of Nation<strong>al</strong> Instrum<strong>en</strong>ts Corporation.<br />
Tra<strong>de</strong>marks<br />
LabVIEW , Nation<strong>al</strong> Instrum<strong>en</strong>ts , NI , and ni.com are tra<strong>de</strong>marks of Nation<strong>al</strong> Instrum<strong>en</strong>ts<br />
Corporation. Product and company names m<strong>en</strong>tioned herein are tra<strong>de</strong>marks or tra<strong>de</strong> names of their<br />
respective companies.<br />
Pat<strong>en</strong>ts<br />
For pat<strong>en</strong>ts covering Nation<strong>al</strong> Instrum<strong>en</strong>ts products, refer to the appropriate location: Help»Pat<strong>en</strong>ts in your<br />
software, the pat<strong>en</strong>ts.txt file on your CD, or ni.com/leg<strong>al</strong>/pat<strong>en</strong>ts.
Worldwi<strong>de</strong> Technic<strong>al</strong> Support and Product Information<br />
ni.com<br />
Nation<strong>al</strong> Instrum<strong>en</strong>ts Corporate Headquarters<br />
11500 North Mopac Expressway Austin, Texas 78759-3504 USA Tel: 512 683 0100<br />
Worldwi<strong>de</strong> Offices<br />
Austr<strong>al</strong>ia 1800 300 800, Austria 43 0 662 45 79 90 0, Belgium 32 0 2 757 00 20, Brazil 55 11 3262 3599,<br />
Canada (C<strong>al</strong>gary) 403 274 9391, Canada (Montre<strong>al</strong>) 514 288 5722, Canada (Ottawa) 613 233 5949,<br />
Canada (Québec) 514 694 8521, Canada (Toronto) 905 785 0085, Canada (Vancouver) 514 685 7530, China 86 21<br />
6555 7838, Czech Republic 420 2 2423 5774, D<strong>en</strong>mark 45 45 76 26 00, Finland 385 0 9 725 725 11, France 33 0 1 48<br />
14 24 24, Germany 49 0 89 741 31 30, Greece 30 2 10 42 96 427, India 91 80 51190000, Israel 972 0 3 6393737, It<strong>al</strong>y<br />
39 02 413091, Japan 81 3 5472 2970, Korea 82 02 3451 3400, M<strong>al</strong>aysia 603 9131 0918, Mexico 001 800 010 0793,<br />
Netherlands 31 0 348 433 466, New Ze<strong>al</strong>and 0800 553 322, Norway 47 0 66 90 76 60, Poland 48 0 22 3390 150,<br />
Portug<strong>al</strong> 351 210 311 210, Russia 7 095 783 68 51, Singapore 65 6226 5886, Slov<strong>en</strong>ia 386 3 425 4200, South Africa 27<br />
0 11 805 8197, Spain 34 91 640 0085, Swe<strong>de</strong>n 46 0 8 587 895 00, Switzerland 41 56 200 51 51, Taiwan 886 2 2528<br />
7227, Thailand 662 992 7519, United Kingdom 44 0 1635 523545
Curso LabVIEW <strong>de</strong> Seis Horas Notas <strong>de</strong>l Instructor<br />
Este docum<strong>en</strong>to zip conti<strong>en</strong>e materi<strong>al</strong> diseñado para dar a los estudiantes un<br />
conocimi<strong>en</strong>to <strong>de</strong> LabVIEW <strong>en</strong> un tiempo <strong>de</strong> 6 <strong>horas</strong>. Los cont<strong>en</strong>idos son:<br />
Notas <strong>de</strong>l Instructor.doc este docum<strong>en</strong>to.<br />
<strong>Introducción</strong> LabVIEW Seis Horas.ppt una pres<strong>en</strong>tación PowerPoint<br />
cont<strong>en</strong>i<strong>en</strong>do notas y diapositivas <strong>de</strong> los temas cubiertos <strong>en</strong> el <strong>curso</strong>.<br />
Ej0- Abrir y Correr un Instrum<strong>en</strong>to Virtu<strong>al</strong>.doc instrucciones paso a paso para<br />
el ejercicio abrir y correr .<br />
Ex1- Conversión C a F.doc instrucciones paso a paso para el Ejercicio 1.<br />
Conversión C a F (Ej1).vi VI <strong>de</strong> Solución <strong>al</strong> ejercicio 1.<br />
Ej2a- Crear un SubVI.doc instrucciones paso a paso para Ejercicio 2a.<br />
Conversión C a F (Ej2).vi subVI <strong>de</strong> solución <strong>al</strong> Ejercicio 2.<br />
Ej2b- Adquisición <strong>de</strong> Datos.doc instrucciones paso a paso para el Ejercicio 2b.<br />
Adquisición <strong>de</strong> Datos (Ej 2b) NI-DAQ Tradicion<strong>al</strong>.vi Solución para Ejercicio 2.<br />
Ej3-Usar un Ciclo.doc instrucciones paso a paso para el ejercicio 3.<br />
Ejemplo <strong>de</strong> Ciclo (Ej3).vi VI <strong>de</strong> solución <strong>al</strong> ejercicio 3.<br />
Ej4-An<strong>al</strong>izando y Logging Data.doc instrucciones para el Ejercicio 4.<br />
Logger <strong>de</strong> Temperatura (Ej4).vi subVI <strong>de</strong> solución para el ejercicio 4.<br />
Convertir C a F (Ej4).vi subVI <strong>de</strong> solución para el ejercicio 4.<br />
Logger <strong>de</strong> Temperatura (Ej4).vi . VI <strong>de</strong> solución para Ejercicio 4.<br />
Ej5-Usando Graficas <strong>de</strong> Forma <strong>de</strong> Onda.doc instrucciones paso a paso para el<br />
Ejercicio 5.<br />
Grafica Multiplot (Ej5).vi VI <strong>de</strong> solución <strong>de</strong>l Ejercicio 5<br />
Ej6-Clusters para Error.doc . instrucciones paso a paso para el Ejercicio 6<br />
Raiz Cuadrada (Ex6).vi . VI <strong>de</strong> solución para Ejercicio 6.<br />
Ej7-Maquinas <strong>de</strong> Estado Simples.doc instrucciones paso a paso - Ejercicio 7.<br />
Maquina <strong>de</strong> Estado (Ej7).vi VI <strong>de</strong> solución para el Ejercicio 7.<br />
Las diapositivas pue<strong>de</strong>n ser pres<strong>en</strong>tadas <strong>en</strong> dos laboratorios <strong>de</strong> tres <strong>horas</strong> o seis clases<br />
<strong>de</strong> una hora cada una. Dep<strong>en</strong>di<strong>en</strong>do <strong>en</strong> el tiempo y los re<strong>curso</strong>s disponibles <strong>en</strong> la clase,<br />
usted pue<strong>de</strong> elegir si asigna o no los ejercicios como tarea para llevar o para ser hechos<br />
<strong>en</strong> clase. Si usted <strong>de</strong>ci<strong>de</strong> asignar los ejercicios <strong>en</strong> la clase, es mejor asignarlos <strong>en</strong> or<strong>de</strong>n<br />
con la pres<strong>en</strong>tación. De esta manera los estudiantes pue<strong>de</strong>n crear VIs mi<strong>en</strong>tras que la<br />
información relevante todavía esta fresca. Las notas asociadas con las diapositivas<br />
cont<strong>en</strong>i<strong>en</strong>do ejercicios <strong>de</strong>berían <strong>de</strong> ser <strong>de</strong>fici<strong>en</strong>tes para guiar a los estudiantes a una<br />
solución. Los archivos <strong>de</strong> solución incluidos son una <strong>de</strong> las posibles soluciones, pero no<br />
significa que sean la única solución.<br />
La instrucción paso a paso provee <strong>al</strong> estudiante con una manera fácil <strong>de</strong> completar el<br />
ejercicio, pero si usted <strong>de</strong>ci<strong>de</strong> asignar los ejercicios afuera <strong>de</strong>l s<strong>al</strong>ón <strong>de</strong> clases, usted<br />
pue<strong>de</strong> <strong>en</strong>contrar útil el imprimir las direcciones abreviadas <strong>de</strong> la diapositiva <strong>de</strong> ejercicio<br />
y dársela a los estudiantes como una asignación.<br />
Los ejercicios pue<strong>de</strong>n ser <strong>en</strong>viados a un ev<strong>al</strong>uador via email.
Esta es una lista <strong>de</strong> los objetivos <strong>de</strong>l <strong>curso</strong><br />
Este <strong>curso</strong> le preparara para lo sigui<strong>en</strong>te:<br />
Utilizar LabVIEW para crear aplicaciones.<br />
Ent<strong>en</strong><strong>de</strong>r paneles front<strong>al</strong>es, diagramas <strong>de</strong> bloque, íconos y paneles <strong>de</strong> conexión.<br />
Incorporación <strong>de</strong> funciones <strong>de</strong> LabVIEW.<br />
Crear y guardar programas <strong>en</strong> LabVIEW para que los pueda usar como<br />
subrutinas.<br />
Crear aplicaciones que us<strong>en</strong> dispositivos DAQ.<br />
Este <strong>curso</strong> no <strong>de</strong>scribe lo sigui<strong>en</strong>te:<br />
Teoría <strong>de</strong> programación<br />
Cada función u objeto <strong>en</strong>contrada <strong>en</strong> LabVIEW.<br />
Teoría análoga-a-digit<strong>al</strong> (A/D)<br />
2
Panel front<strong>al</strong><br />
Controles = <strong>en</strong>tradas<br />
Indicadores = s<strong>al</strong>idas<br />
Diagrama <strong>de</strong> bloque<br />
Programa <strong>de</strong> acompañami<strong>en</strong>to<br />
para el panel front<strong>al</strong><br />
Compon<strong>en</strong>tes cableados<br />
<strong>en</strong>tre si<br />
Los Programas <strong>en</strong> LabVIEW son llamados instrum<strong>en</strong>tos virtu<strong>al</strong>es (VIs).<br />
Haga énfasis <strong>en</strong> que controles es igu<strong>al</strong> a <strong>en</strong>tradas, e indicadores es igu<strong>al</strong> a s<strong>al</strong>idas.<br />
Cada VI conti<strong>en</strong>e tres partes princip<strong>al</strong>es:<br />
Panel front<strong>al</strong> Cómo el usuario interacciona con el VI.<br />
Diagrama <strong>de</strong> bloque El código que controla el programa.<br />
Icono/Conector Medios para conectar un VI con otros VIs.<br />
El panel front<strong>al</strong> es utilizado para interaccionar con el usuario cuando el programa<br />
esta corri<strong>en</strong>do. Usuarios pue<strong>de</strong>n controlar el programa,cambiar <strong>en</strong>tradas, y ver<br />
datos actu<strong>al</strong>izados <strong>en</strong> tiempo re<strong>al</strong>. Haga énfasis <strong>en</strong> que los controles son usados<br />
como <strong>en</strong>tradas - ajustando controles <strong>de</strong> <strong>de</strong>slizami<strong>en</strong>to para colocar un v<strong>al</strong>or <strong>de</strong><br />
<strong>al</strong>arma, <strong>en</strong>c<strong>en</strong>di<strong>en</strong>do o apagando un switch, o parando un programa. Los<br />
indicadores son usados como s<strong>al</strong>idas. Termómetros, luces, y otros indicadores<br />
indican v<strong>al</strong>ores <strong>de</strong>l programa. Esto pue<strong>de</strong> incluir datos, estados <strong>de</strong> programa y<br />
otra información.<br />
Cada control o indicador <strong>de</strong>l panel front<strong>al</strong> ti<strong>en</strong>e una termin<strong>al</strong> correspondi<strong>en</strong>te <strong>en</strong> el<br />
diagrama <strong>de</strong> bloques. Cuando un VI se ejecuta, los v<strong>al</strong>ores <strong>de</strong> los controles<br />
fluy<strong>en</strong> a través <strong>de</strong>l diagrama <strong>de</strong> bloques, <strong>en</strong> don<strong>de</strong> estos son usados <strong>en</strong> las<br />
funciones <strong>de</strong>l diagrama, y los resultados son pasados a otras funciones o<br />
indicadores.<br />
4
El panel front<strong>al</strong> es la interfase <strong>de</strong>l usuario con el VI. Usted construye el panel<br />
front<strong>al</strong> con controles e indicadores,que son las <strong>en</strong>tradas y s<strong>al</strong>idas que interactúan<br />
con las termin<strong>al</strong>es <strong>de</strong>l VI, respectivam<strong>en</strong>te. Los controles son botones, botones <strong>de</strong><br />
empuje, marcadores y otro compon<strong>en</strong>tes <strong>de</strong> <strong>en</strong>tradas. Los indicadores son las<br />
graficas, luces y otros dispositivos. Los controles simulan instrum<strong>en</strong>tos <strong>de</strong> <strong>en</strong>tradas<br />
<strong>de</strong> equipos y suministra datos <strong>al</strong> diagrama <strong>de</strong> bloques <strong>de</strong>l VI. Los indicadores<br />
simulan s<strong>al</strong>idas <strong>de</strong> instrum<strong>en</strong>tos y suministra datos que el diagrama <strong>de</strong> bloques<br />
adquiere o g<strong>en</strong>era.<br />
En esta imag<strong>en</strong>, el switch <strong>de</strong> po<strong>de</strong>r (<strong>en</strong>c<strong>en</strong>dido o apagado) es un control booleano.<br />
Un v<strong>al</strong>or booleano conti<strong>en</strong>e ambos un v<strong>al</strong>or verda<strong>de</strong>ro o f<strong>al</strong>so. El v<strong>al</strong>or es f<strong>al</strong>so<br />
hasta que el switch se presione.Cuando el switch se presiona, el v<strong>al</strong>or se convierte<br />
<strong>en</strong> verda<strong>de</strong>ro. El indicador <strong>de</strong>l histori<strong>al</strong> <strong>de</strong> temperatura es una grafica <strong>de</strong> forma <strong>de</strong><br />
onda. Esta muestra v<strong>al</strong>ores múltiples. En este caso, la grafica señ<strong>al</strong>ara grados F<br />
versus tiempo (seg.).<br />
El panel front<strong>al</strong> también conti<strong>en</strong>e una barra <strong>de</strong> herrami<strong>en</strong>tas, y sus funciones serán<br />
discutidas <strong>de</strong>spués.<br />
5
El diagrama <strong>de</strong> bloque conti<strong>en</strong>e el código fu<strong>en</strong>te grafico. Los objetos <strong>de</strong>l panel<br />
front<strong>al</strong> aparec<strong>en</strong> como termin<strong>al</strong>es <strong>en</strong> el diagrama <strong>de</strong> bloque. Adicion<strong>al</strong>m<strong>en</strong>te, el<br />
diagrama <strong>de</strong> bloque conti<strong>en</strong>e funciones y estructuras incorporadas <strong>en</strong> las bibliotecas<br />
<strong>de</strong> LabVIEW VI. Los cables conectan cada uno <strong>de</strong> los nodos <strong>en</strong> el diagrama <strong>de</strong><br />
bloques, incluy<strong>en</strong>do controles e indicadores <strong>de</strong> termin<strong>al</strong>, funciones y estructuras.<br />
En este diagrama <strong>de</strong> bloque, el subVI Temp llama a la subrutina la cu<strong>al</strong> obti<strong>en</strong>e una<br />
temperatura <strong>de</strong>s<strong>de</strong> una tarjeta <strong>de</strong> adquisición <strong>de</strong> datos (DAQ). Esta temperatura es<br />
graficada junto con el v<strong>al</strong>or average <strong>de</strong> la temperatura <strong>en</strong> la grafica <strong>de</strong> forma <strong>de</strong><br />
onda Temperature History. El switch <strong>de</strong> po<strong>de</strong>r (Power) es un control booleano <strong>en</strong><br />
el panel front<strong>al</strong> el cu<strong>al</strong> va a <strong>de</strong>t<strong>en</strong>er la ejecución <strong>de</strong> la estructura mi<strong>en</strong>tras( While<br />
Loop). La estructura mi<strong>en</strong>tras (While Loop) también conti<strong>en</strong>e una función <strong>de</strong><br />
tiempo para controlar que tan frecu<strong>en</strong>tem<strong>en</strong>te la estructura se repite.<br />
6
VI Expreso<br />
VI Estandar<br />
Funcion<br />
LabVIEW 7.0 introduce un nuevo tipo <strong>de</strong> subVI llamado VIs Expreso (Express<br />
VIS). Estos son VIs interactivos que ti<strong>en</strong><strong>en</strong> una configuración <strong>de</strong> caja <strong>de</strong> di<strong>al</strong>ogo<br />
que permite <strong>al</strong> usuario person<strong>al</strong>izar la funcion<strong>al</strong>idad <strong>de</strong>l VI Expreso. LabVIEW<br />
<strong>en</strong>tonces g<strong>en</strong>era una subVI basado <strong>en</strong> estos argum<strong>en</strong>tos.<br />
VIs estándar son aquellos VIs (que consist<strong>en</strong> <strong>de</strong> un panel front<strong>al</strong> y un diagrama <strong>de</strong><br />
bloque) que son usados a<strong>de</strong>ntro <strong>de</strong> otro VI.<br />
Las funciones son los bloques <strong>de</strong> construcción <strong>de</strong> todos los VIs. Las funciones no<br />
ti<strong>en</strong><strong>en</strong> un panel front<strong>al</strong> o un diagrama <strong>de</strong> bloque.<br />
7
P<strong>al</strong>etas <strong>de</strong> control<br />
(V<strong>en</strong>tana <strong>de</strong>l panel front<strong>al</strong>)<br />
P<strong>al</strong>eta <strong>de</strong> funciones<br />
(V<strong>en</strong>tana <strong>de</strong> diagrama <strong>de</strong> bloque)<br />
Use la p<strong>al</strong>eta <strong>de</strong> controles (Controls) para colocar los controles e indicadores <strong>en</strong> el<br />
panel front<strong>al</strong>. La p<strong>al</strong>eta <strong>de</strong> controles esta disponible solam<strong>en</strong>te <strong>en</strong> el panel front<strong>al</strong>.<br />
Seleccione Window»Show Controls p<strong>al</strong>ette o haga clic <strong>de</strong>recho <strong>en</strong> el espacio <strong>de</strong><br />
trabajo <strong>en</strong> el panel front<strong>al</strong> para <strong>de</strong>splegar la p<strong>al</strong>eta <strong>de</strong> controles. Usted también<br />
pue<strong>de</strong> <strong>de</strong>splegar la p<strong>al</strong>eta <strong>de</strong> controles haci<strong>en</strong>do un clic <strong>de</strong>recho <strong>en</strong> una área abierta<br />
<strong>de</strong>l panel front<strong>al</strong>. Para <strong>de</strong>saparecer la p<strong>al</strong>eta <strong>de</strong> controles presione el botón <strong>en</strong> la<br />
parte superior izquierda <strong>de</strong> la p<strong>al</strong>eta.<br />
Use la p<strong>al</strong>eta <strong>de</strong> funciones (Functions), para construir un diagrama <strong>de</strong> bloque. La<br />
p<strong>al</strong>eta <strong>de</strong> funciones esta disponible solam<strong>en</strong>te <strong>en</strong> el diagrama <strong>de</strong> bloque. Seleccione<br />
Window»Show Functions P<strong>al</strong>ette o haga un click <strong>de</strong>recho <strong>en</strong> el espacio <strong>de</strong> trabajo<br />
<strong>de</strong>l diagrama <strong>de</strong> bloque para <strong>de</strong>splegar la p<strong>al</strong>eta <strong>de</strong> funciones. Usted también pue<strong>de</strong><br />
<strong>de</strong>splegar la p<strong>al</strong>eta <strong>de</strong> funciones dando un click <strong>de</strong>recho <strong>en</strong> una área abierta <strong>de</strong>l<br />
diagrama <strong>de</strong> bloques. Para <strong>de</strong>saparecer la p<strong>al</strong>eta <strong>de</strong> funciones presione el botón <strong>en</strong> la<br />
parte superior izquierda <strong>de</strong> la p<strong>al</strong>eta.<br />
8
P<strong>al</strong>eta flotante<br />
Utilizado para operar y modificar<br />
objetos <strong>en</strong> el panel front<strong>al</strong> y <strong>en</strong> el<br />
diagrama <strong>de</strong> bloques.<br />
Herrami<strong>en</strong>ta <strong>de</strong> operación<br />
Herrami<strong>en</strong>ta <strong>de</strong> posicionami<strong>en</strong>to<br />
y redim<strong>en</strong>sión<br />
Herrami<strong>en</strong>ta <strong>de</strong> etiquetado<br />
Herrami<strong>en</strong>ta <strong>de</strong> cableado<br />
Herrami<strong>en</strong>ta <strong>de</strong> m<strong>en</strong>ú (atajo)<br />
Herrami<strong>en</strong>ta <strong>de</strong> selección automatica<br />
Herrami<strong>en</strong>ta <strong>de</strong> <strong>de</strong>splazami<strong>en</strong>to<br />
Herrami<strong>en</strong>ta <strong>de</strong> punto <strong>de</strong> paro<br />
Herrami<strong>en</strong>ta <strong>de</strong> prueba<br />
Herrami<strong>en</strong>ta para copia <strong>de</strong> color<br />
Herrami<strong>en</strong>ta para colorear<br />
Si la herrami<strong>en</strong>ta <strong>de</strong> selección automática esta habilitada y usted mueve el <strong>curso</strong>r<br />
sobre un objeto <strong>en</strong> el panel front<strong>al</strong> o <strong>en</strong> el diagrama <strong>de</strong> bloque, LabVIEW<br />
automáticam<strong>en</strong>te selecciona la herrami<strong>en</strong>ta correspondi<strong>en</strong>te <strong>de</strong> la p<strong>al</strong>eta <strong>de</strong><br />
controles. Cambie a la herrami<strong>en</strong>ta <strong>de</strong> selección automática tecleando el botón <strong>de</strong><br />
Selección <strong>de</strong> Herrami<strong>en</strong>ta Automática <strong>en</strong> la p<strong>al</strong>eta <strong>de</strong> Herrami<strong>en</strong>tas.<br />
Utilice la herrami<strong>en</strong>ta <strong>de</strong> operación para cambiar v<strong>al</strong>ores o para seleccionar texto <strong>de</strong><br />
un control.<br />
Utilice la herrami<strong>en</strong>ta <strong>de</strong> posicionami<strong>en</strong>to para seleccionar, mover o redim<strong>en</strong>sionar<br />
objetos. La herrami<strong>en</strong>ta <strong>de</strong> posicionami<strong>en</strong>to cambia las formas cuando se mueve<br />
sobre una esquina <strong>de</strong> un objeto reajustable.<br />
Utilice la herrami<strong>en</strong>ta <strong>de</strong> etiquetado para editar textos y crear etiquetas libres. La<br />
herrami<strong>en</strong>ta <strong>de</strong> etiquetado se convierte <strong>en</strong> <strong>curso</strong>r cuando usted crea etiquetas libres.<br />
Utilice la herrami<strong>en</strong>ta <strong>de</strong> cableado para cablear objetos juntos <strong>en</strong> el diagrama <strong>de</strong><br />
bloque.<br />
9
Botón <strong>de</strong> ejecución (Run)<br />
Botón <strong>de</strong> ejecución continua<br />
(Continuous Run)<br />
Cancelación <strong>de</strong> ejecución<br />
(Abort Execution)<br />
Botón <strong>de</strong> pausa/continuación<br />
Configuración <strong>de</strong> textos<br />
(Text Settings)<br />
Alineami<strong>en</strong>to <strong>de</strong> objetos<br />
(Align Objects)<br />
Distribución <strong>de</strong> objetos<br />
(Distribute Objects)<br />
Reor<strong>de</strong>nami<strong>en</strong>to<br />
Redim<strong>en</strong>sionami<strong>en</strong>to <strong>de</strong> objetos<br />
<strong>de</strong> panel front<strong>al</strong> (Resize Objects)<br />
Botones adicion<strong>al</strong>es <strong>en</strong><br />
el diagrama <strong>de</strong> la barra<br />
<strong>de</strong> herrami<strong>en</strong>tas<br />
Botón <strong>de</strong> ejecución res<strong>al</strong>tada<br />
(Highlight Execution)<br />
Botón <strong>de</strong> <strong>en</strong>trada <strong>al</strong> ciclo<br />
(Step Into)<br />
Botón sobre (Step Over)<br />
Botón <strong>de</strong> s<strong>al</strong>ida <strong>de</strong>l ciclo<br />
(Step Out)<br />
Pulse el botón <strong>de</strong> ejecución (Run) para ejecutar el VI. Mi<strong>en</strong>tras el VI se esta<br />
ejecutando, el botón <strong>de</strong> ejecución aparecerá con una flecha negra si es que el VI es<br />
un VI princip<strong>al</strong>, lo que significa que no ha sido llamado por otro VI y por lo tanto<br />
este no es un subVI.<br />
Pulse el botón <strong>de</strong> ejecución continua (Continuous Run) para ejecutar el VI hasta<br />
que el botón <strong>de</strong> cancelación <strong>de</strong> ejecución o <strong>de</strong> pausa sea presionado. Usted también<br />
pue<strong>de</strong> pulsar este botón nuevam<strong>en</strong>te para <strong>de</strong>shabilitar la ejecución continua.<br />
Mi<strong>en</strong>tras el VI se esta ejecutando, El botón <strong>de</strong> cancelación <strong>de</strong> ejecución (Abort<br />
Execution) aparece. Presione este botón para <strong>de</strong>t<strong>en</strong>er el VI inmediatam<strong>en</strong>te.<br />
Nota: Evite usar el botón <strong>de</strong> cancelación <strong>de</strong> ejecución (Abort<br />
Execution) para <strong>de</strong>t<strong>en</strong>er el VI. Ya sea <strong>de</strong>je que el VI complete su flujo <strong>de</strong> datos<br />
o diseñe un método para <strong>de</strong>t<strong>en</strong>er el VI programáticam<strong>en</strong>te. Al hacer esto el VI se<br />
<strong>en</strong>cu<strong>en</strong>tra <strong>en</strong> un estado conocido. Por ejemplo, coloque un botón <strong>en</strong> el panel<br />
front<strong>al</strong> que <strong>de</strong>t<strong>en</strong>ga el VI cuando sea presionado.<br />
Pulse el botón <strong>de</strong> pausa (Pause) para <strong>de</strong>t<strong>en</strong>er mom<strong>en</strong>táneam<strong>en</strong>te la ejecución <strong>de</strong> un<br />
VI. Cuando usted presiona el botón <strong>de</strong> Pausa, LabVIEW señ<strong>al</strong>a la posición don<strong>de</strong><br />
usted <strong>de</strong>tuvo la ejecución <strong>en</strong> el diagrama <strong>de</strong> bloque. Pulse el botón <strong>de</strong> Pausa<br />
nuevam<strong>en</strong>te para que el VI continué ejecutándose.<br />
Seleccione el m<strong>en</strong>ú Configuración <strong>de</strong> Textos (Text Settings) para cambiar el tipo<br />
<strong>de</strong> fu<strong>en</strong>te (letra) <strong>de</strong>l VI, incluy<strong>en</strong>do el tamaño, estilo y color.<br />
Seleccione el m<strong>en</strong>ú Alineami<strong>en</strong>to <strong>de</strong> Objetos (Align Objects) para <strong>al</strong>inear<br />
objetos con respecto a los ejes, incluy<strong>en</strong>do eje vertic<strong>al</strong>, superior, izquierdo, etc.<br />
Seleccione el m<strong>en</strong>ú Distribución <strong>de</strong> Objetos (Distribute Objects) para espaciar<br />
objetos uniformem<strong>en</strong>te, incluy<strong>en</strong>do espacios vacíos, compresiones, etc.<br />
Seleccione el Redim<strong>en</strong>sionami<strong>en</strong>to <strong>de</strong> Objetos (Resize Objects) para cambiar el<br />
10
Seleccione el m<strong>en</strong>ú Reor<strong>de</strong>nami<strong>en</strong>to (Reor<strong>de</strong>r) cuando t<strong>en</strong>ga objetos<br />
superpuestos unos con otros y usted quiera <strong>de</strong>finir cu<strong>al</strong> esta <strong>en</strong>fr<strong>en</strong>te <strong>de</strong> qui<strong>en</strong> y cu<strong>al</strong><br />
atrás. Seleccione uno <strong>de</strong> los objetos con la herrami<strong>en</strong>ta <strong>de</strong> posicionami<strong>en</strong>to y<br />
seleccione <strong>en</strong>tre Move Forward (mover hacia a<strong>de</strong>lante), Move Backward (mover<br />
hacia atrás), Move to Front (mover <strong>al</strong> fr<strong>en</strong>te) y Move to Back (mover hacia atrás).<br />
<br />
Pulse <strong>en</strong> el botón <strong>de</strong> ejecución res<strong>al</strong>tada (Highlight Execution) para ver el flujo <strong>de</strong><br />
información <strong>en</strong> el diagrama <strong>de</strong> bloques. Pulse el botón nuevam<strong>en</strong>te para <strong>de</strong>t<strong>en</strong>er<br />
este tipo <strong>de</strong> ejecución res<strong>al</strong>tada.<br />
Pulse el botón <strong>de</strong> <strong>en</strong>trada <strong>al</strong> ciclo (Step Into) para <strong>en</strong>trar un paso a<strong>de</strong>ntro <strong>de</strong> un<br />
ciclo, un SubVI, etc. Entrando un paso a la vez a<strong>de</strong>ntro <strong>de</strong> un VI le permite<br />
introducirse <strong>en</strong> la VI nodo a nodo. Cada nodo se res<strong>al</strong>ta para señ<strong>al</strong>ar cuando esta<br />
listo para ejecutarse. Al <strong>en</strong>trar un paso a<strong>de</strong>ntro <strong>de</strong> un nodo usted esta listo para<br />
caminar paso a paso a<strong>de</strong>ntro <strong>de</strong>l nodo.<br />
Pulse el botón <strong>de</strong> sobre (Step Over) para posicionarse <strong>en</strong>cima <strong>de</strong> un ciclo, un<br />
SubVI, etc. Al posicionarse <strong>en</strong>cima <strong>de</strong>l nodo, usted ejecuta el nodo sin <strong>en</strong>trar paso a<br />
paso a<strong>de</strong>ntro <strong>de</strong>l nodo.<br />
Pulse el botón <strong>de</strong> S<strong>al</strong>ida <strong>de</strong>l ciclo (Step Over) para s<strong>al</strong>irse <strong>de</strong> un ciclo, SubVI, etc.<br />
Al posicionarse fuera <strong>de</strong>l nodo, usted completa la ejecución <strong>de</strong> un nodo y pue<strong>de</strong><br />
moverse <strong>al</strong> sigui<strong>en</strong>te nodo.<br />
11
Buscador <strong>de</strong> Ejemplos<br />
1. Seleccione Start » Programs » Nation<strong>al</strong> Instrum<strong>en</strong>ts » LabVIEW 7.0 »<br />
LabVIEW para lanzar LabVIEW. Aparece la v<strong>en</strong>tana <strong>de</strong> di<strong>al</strong>ogo <strong>de</strong> LabVIEW.<br />
2. Seleccione Find Examples <strong>de</strong>l m<strong>en</strong>ú <strong>de</strong> ayuda (Help). La v<strong>en</strong>tana <strong>de</strong> di<strong>al</strong>ogo que<br />
aparece da la lista y <strong>en</strong>laces a todos los VIs <strong>de</strong> ejemplo <strong>de</strong> LabVIEW.<br />
3. Usted pue<strong>de</strong> buscar ejemplo por categorías, o pue<strong>de</strong> utilizar p<strong>al</strong>abras claves <strong>en</strong> su<br />
búsqueda. Haga clic <strong>en</strong> la viñeta <strong>de</strong> búsqueda (Search) para abrir el buscador <strong>de</strong><br />
p<strong>al</strong>abras claves.<br />
4. En la caja <strong>de</strong> Enter Keyword(s) escriba Sign<strong>al</strong><br />
5. Una lista <strong>de</strong> temas relacionados aparecerá <strong>en</strong> la v<strong>en</strong>tana <strong>de</strong> ejemplos (examples).<br />
Haga doble-clic <strong>en</strong> sign<strong>al</strong>s, esto g<strong>en</strong>erara una lista <strong>de</strong> ejemplos <strong>en</strong> el lado <strong>de</strong>recho.<br />
6. Haga clic <strong>en</strong> cu<strong>al</strong>quier programa para ver una <strong>de</strong>scripción <strong>de</strong>t<strong>al</strong>lada <strong>de</strong> el<br />
ejemplo. Haga doble clic sobre Sign<strong>al</strong> G<strong>en</strong>eration and Processing.vi para lanzar el<br />
ejemplo.<br />
Esto abrirá el panel front<strong>al</strong> <strong>de</strong>l VI Sign<strong>al</strong> G<strong>en</strong>eration and Processing.vi .<br />
Examine el VI y ejecútelo. Cambie las frecu<strong>en</strong>cias y tipos <strong>de</strong> señ<strong>al</strong>es <strong>de</strong> <strong>en</strong>tradas y<br />
note como el <strong>de</strong>spliegue <strong>de</strong> las graficas cambia. Cambie la v<strong>en</strong>tana <strong>de</strong><br />
procesami<strong>en</strong>to <strong>de</strong> señ<strong>al</strong>es (Sign<strong>al</strong> Processing Window) y opciones <strong>de</strong> filtrado (Filter<br />
options). Después <strong>de</strong> que haya examinado el VI y las difer<strong>en</strong>tes opciones que pue<strong>de</strong><br />
cambiar, pare el VI presionando el botón <strong>de</strong> paro (Stop button).<br />
Nota Usted también pue<strong>de</strong> abrir un VI <strong>al</strong> hacer clic <strong>en</strong> el botón <strong>de</strong> Op<strong>en</strong> VI y<br />
navegar a labview\examples\apps\<strong>de</strong>mos.llb\Sign<strong>al</strong> G<strong>en</strong>eration and Processing.vi.<br />
12
V<strong>en</strong>tana <strong>de</strong> Panel Front<strong>al</strong><br />
Termin<strong>al</strong>es<br />
<strong>de</strong><br />
Control<br />
V<strong>en</strong>tana <strong>de</strong> Diagrama <strong>de</strong> Bloques<br />
Termin<strong>al</strong>es<br />
<strong>de</strong><br />
Indicador<br />
Cuando usted crea un objeto <strong>en</strong> el panel front<strong>al</strong>, una termin<strong>al</strong> es creada <strong>en</strong> el<br />
diagrama <strong>de</strong> bloques. Estas termin<strong>al</strong>es le dan acceso a los objetos <strong>de</strong>l panel front<strong>al</strong><br />
<strong>de</strong>l código creado mediante el diagrama <strong>de</strong> bloque.<br />
Cada termin<strong>al</strong> conti<strong>en</strong>e información útil refer<strong>en</strong>te <strong>al</strong> objeto <strong>al</strong> cu<strong>al</strong> correspon<strong>de</strong> <strong>en</strong> el<br />
panel front<strong>al</strong>. Por ejemplo, el color y los símbolos proporcionan el tipo <strong>de</strong> dato.<br />
Números <strong>de</strong> punto flotante y <strong>de</strong> doble-precisión, son repres<strong>en</strong>tados con termin<strong>al</strong>es<br />
anaranjadas y las letras DBL. Las termin<strong>al</strong>es booleanas son ver<strong>de</strong>s y son<br />
repres<strong>en</strong>tadas por las letras TF.<br />
En g<strong>en</strong>er<strong>al</strong>, las termin<strong>al</strong>es anaranjadas <strong>de</strong>b<strong>en</strong> unirse (cablearse) con las termin<strong>al</strong>es<br />
anaranjadas, ver<strong>de</strong>s con ver<strong>de</strong>s, y así sucesivam<strong>en</strong>te. Esta no es una regla que no se<br />
pue<strong>de</strong> romper; por ejemplo LabVIEW permitirá <strong>al</strong> usuario conectar una termin<strong>al</strong><br />
azul (v<strong>al</strong>or <strong>en</strong>tero) a una termin<strong>al</strong> anaranjada (v<strong>al</strong>or fraccion<strong>al</strong>). Pero <strong>en</strong> la mayoría<br />
<strong>de</strong> casos, busque mejor una igu<strong>al</strong>dad <strong>en</strong> colores.<br />
Los controles ti<strong>en</strong><strong>en</strong> una flecha <strong>en</strong> el lado <strong>de</strong>recho y ti<strong>en</strong><strong>en</strong> un bor<strong>de</strong> grueso. Los<br />
indicadores ti<strong>en</strong><strong>en</strong> una flecha <strong>en</strong> el lado izquierdo y un bor<strong>de</strong> fino. Reglas lógicas<br />
pue<strong>de</strong>n ser aplicadas <strong>al</strong> conectar <strong>en</strong> LabVIEW: Cada cable <strong>de</strong>be t<strong>en</strong>er una (pero<br />
solo una) fu<strong>en</strong>te (o control), y cada cable pue<strong>de</strong> t<strong>en</strong>er varios <strong>de</strong>stinos (o<br />
indicadores).<br />
El programa <strong>en</strong> esta diapositiva toma datos <strong>de</strong> A y B y pasa v<strong>al</strong>ores a una función<br />
<strong>de</strong> adición y a una función <strong>de</strong> resta. Los resultados son mostrados <strong>en</strong> los indicadores<br />
apropiados.<br />
13
A<strong>de</strong>más <strong>de</strong> los termin<strong>al</strong>es <strong>de</strong>l panel front<strong>al</strong>, el diagrama <strong>de</strong> bloques conti<strong>en</strong>e<br />
funciones. Cada función pue<strong>de</strong> t<strong>en</strong>er múltiples termin<strong>al</strong>es <strong>de</strong> <strong>en</strong>tradas y s<strong>al</strong>idas. La<br />
conexión <strong>de</strong> estas termin<strong>al</strong>es es una parte muy importante <strong>de</strong> la programación <strong>en</strong><br />
LabVIEW.<br />
Una vez que usted t<strong>en</strong>ga cierta experi<strong>en</strong>cia programado <strong>en</strong> LabVIEW, la conexión<br />
<strong>de</strong> cables se le hará mas fácil. Primero pue<strong>de</strong> que necesite ayuda. En seguida se le<br />
muestra <strong>al</strong>gunas recom<strong>en</strong>daciones para com<strong>en</strong>zar:<br />
La herrami<strong>en</strong>ta para conectar o <strong>de</strong> cableado es utilizada para conectarse a los<br />
nodos <strong>de</strong> las funciones. Cuando usted apunte con la herrami<strong>en</strong>ta <strong>de</strong> cableado,<br />
apunte con el extremo <strong>de</strong>l cable que cuelga <strong>de</strong>l carrete. Aquí es don<strong>de</strong> el cable sera<br />
colocado.<br />
Mi<strong>en</strong>tras usted mueve la herrami<strong>en</strong>ta <strong>de</strong> cableado sobre las funciones, observe la<br />
viñeta amarilla que aparece. Esto le dirá el nombre <strong>de</strong> la termin<strong>al</strong> <strong>al</strong> que se esta<br />
conectando.<br />
Mi<strong>en</strong>tras usted mueva la herrami<strong>en</strong>ta <strong>de</strong> cableado <strong>en</strong>cima <strong>de</strong> una termin<strong>al</strong>, esta va a<br />
mostrar información. Esto le ayudara a i<strong>de</strong>ntificar don<strong>de</strong> se va a unir el cable.<br />
Para mas ayuda con los termin<strong>al</strong>es, haga clic <strong>de</strong>recho <strong>en</strong> la función y seleccione<br />
Visible Items o Objetos Visibles>>Termin<strong>al</strong>s o Termin<strong>al</strong>es. Un dibujo <strong>de</strong> la<br />
función será colocada atrás para revelar las termin<strong>al</strong>es <strong>de</strong> la conexión. Note los<br />
colores - estos correspon<strong>de</strong>n a los tipos <strong>de</strong> datos utilizados por los termin<strong>al</strong>es <strong>de</strong>l<br />
panel front<strong>al</strong>.<br />
Para ayuda adicion<strong>al</strong>, seleccione Help >> Show Context Help, o presione<br />
CTRL+H. Esto mostrara la v<strong>en</strong>tana <strong>de</strong> ayuda <strong>en</strong> contexto. A medida que uno<br />
mueva el raton (mouse) sobre la función, esta v<strong>en</strong>tana le mostrara la función,<br />
termin<strong>al</strong>es, y una breve <strong>de</strong>scripción. Utilice esto junto con otras herrami<strong>en</strong>tas para<br />
14
Punto C<strong>al</strong>i<strong>en</strong>te <strong>de</strong> Cableado<br />
Utilice la Ruta Automática<br />
<strong>de</strong>l Cable<br />
Haga Clic para Seleccionar los Cables<br />
Limpiando el Cableado<br />
A<strong>de</strong>más <strong>de</strong> las termin<strong>al</strong>es <strong>de</strong>l panel front<strong>al</strong>. El diagrama <strong>de</strong> bloque conti<strong>en</strong>e funciones. Cada función<br />
pue<strong>de</strong> t<strong>en</strong>er múltiples termin<strong>al</strong>es <strong>de</strong> <strong>en</strong>tradas y s<strong>al</strong>idas. La conexión <strong>de</strong> estas termin<strong>al</strong>es es<br />
una parte muy importante <strong>de</strong> la programación <strong>en</strong> LabVIEW.<br />
Una vez que usted t<strong>en</strong>ga cierta experi<strong>en</strong>cia programado <strong>en</strong> LabVIEW, la conexión <strong>de</strong> cables se le<br />
hará mas fácil. Primero pue<strong>de</strong> que necesite ayuda. En seguida se le muestra <strong>al</strong>gunas<br />
recom<strong>en</strong>daciones para com<strong>en</strong>zar:<br />
La herrami<strong>en</strong>ta para conectar o <strong>de</strong> cableado es utilizada para conectarse a los nodos <strong>de</strong> las<br />
funciones. Cuando usted apunte con la herrami<strong>en</strong>ta <strong>de</strong> cableado, apunte con el extremo <strong>de</strong>l cable<br />
que cuelga <strong>de</strong>l carrete. Aquí es don<strong>de</strong> el cable sera colocado.<br />
Mi<strong>en</strong>tras usted mueve la herrami<strong>en</strong>ta <strong>de</strong> cableado sobre las funciones, observe la viñeta amarilla<br />
que aparece. Esto le dirá el nombre <strong>de</strong> la termin<strong>al</strong> <strong>al</strong> que se esta conectando.<br />
Mi<strong>en</strong>tras usted mueva la herrami<strong>en</strong>ta <strong>de</strong> cableado <strong>en</strong>cima <strong>de</strong> una termin<strong>al</strong>, esta va a mostrar<br />
información. Esto le ayudara a i<strong>de</strong>ntificar don<strong>de</strong> se va a unir el cable.<br />
Para mas ayuda con los termin<strong>al</strong>es, haga clic <strong>de</strong>recho <strong>en</strong> la función y seleccione Visible Items o<br />
Objetos Visibles>>Termin<strong>al</strong>s o Termin<strong>al</strong>es. Un dibujo <strong>de</strong> la función será colocada atrás para<br />
revelar las termin<strong>al</strong>es <strong>de</strong> la conexión. Note los colores - estos correspon<strong>de</strong>n a los tipos <strong>de</strong> datos<br />
utilizados por los termin<strong>al</strong>es <strong>de</strong>l panel front<strong>al</strong>.<br />
Para ayuda adicion<strong>al</strong>, seleccione Help >> Show Context Help, o presione CTRL+H. Esto<br />
mostrara la v<strong>en</strong>tana <strong>de</strong> ayuda <strong>en</strong> contexto. A medida que uno mueva el raton (mouse) sobre la<br />
función, esta v<strong>en</strong>tana le mostrara la función, termin<strong>al</strong>es, y una breve <strong>de</strong>scripción. Utilice esto junto<br />
con otras herrami<strong>en</strong>tas para ayudarse mi<strong>en</strong>tras conecta los cables.<br />
Si el cableado no se mira muy bi<strong>en</strong>, haga clic <strong>de</strong>recho <strong>en</strong> el cable que se <strong>de</strong>sea arreglar y escoja la<br />
opción <strong>de</strong> Clean Up Wire o Limpieza <strong>de</strong>l Cable para que automáticam<strong>en</strong>te el cable haga su ruta <strong>de</strong><br />
nuevo.<br />
15
El cableado es muy flexible <strong>en</strong> LabVIEW. Experim<strong>en</strong>te con combinaciones <strong>de</strong> clics<br />
y/o teclas cuando este cableando. Aquí hay <strong>al</strong>gunas <strong>de</strong> las características mas a<br />
m<strong>en</strong>udo utilizadas.<br />
El hacer un simple, doble, y triple clic <strong>en</strong> el cable selecciona el cable para moverlo<br />
o para borrarlo.<br />
El hacer un clic mi<strong>en</strong>tras se esta cableando hace un doblez <strong>en</strong> el cable.<br />
Haci<strong>en</strong>do clic <strong>de</strong>recho o presionando el botón Esc mi<strong>en</strong>tras se esta cableando<br />
cancela la operación <strong>de</strong> cableado.<br />
No se preocupe por el color <strong>de</strong> los cables. LabVIEW seleccionará automáticam<strong>en</strong>te<br />
el cable correcto y a<strong>de</strong>cuado para cada situación.<br />
Cableando Objetos Automáticam<strong>en</strong>te<br />
LabVIEW cablea automáticam<strong>en</strong>te los objetos a medida que usted los coloca <strong>en</strong> el<br />
diagrama <strong>de</strong> bloque. También pue<strong>de</strong> cablear automáticam<strong>en</strong>te objetos que ya están<br />
colocados <strong>en</strong> el diagrama <strong>de</strong> bloque. LabVIEW conecta la termin<strong>al</strong> que mejor<br />
combina (match) y <strong>de</strong>ja las termin<strong>al</strong>es que no combinan (match) sin conectar. A<br />
medida que usted mueve un objeto seleccionado cerca <strong>de</strong> otros objetos <strong>en</strong> el<br />
diagrama <strong>de</strong> bloque, LabVIEW dibuja cables tempor<strong>al</strong>es para mostrarle conexiones<br />
v<strong>al</strong>idas. Cuando usted suelta el botón <strong>de</strong>l mouse para poner el objeto <strong>en</strong> el diagrama<br />
<strong>de</strong> bloque, LabVIEW conecta automáticam<strong>en</strong>te los cables. Cambie <strong>al</strong> cableado<br />
automático presionando el espaciador (spacebar) mi<strong>en</strong>tras mueve un objeto<br />
utilizando la herrami<strong>en</strong>ta <strong>de</strong> posicionami<strong>en</strong>to (Positioning tool). Pue<strong>de</strong> ajustarlas<br />
opciones <strong>de</strong>l cableado automático seleccionando Tools >> Options y seleccionando<br />
Block Diagram <strong>de</strong> el m<strong>en</strong>ú superior princip<strong>al</strong>.<br />
16
LabVIEW sigue un mo<strong>de</strong>lo <strong>de</strong> flujo <strong>de</strong> datos para correr los VIs. Un nodo <strong>de</strong>l<br />
diagrama <strong>de</strong> bloque se ejecuta cuando todas sus <strong>en</strong>tradas están disponibles. Cuando<br />
un nodo completa la ejecución, suministra datos a sus termin<strong>al</strong>es <strong>de</strong> s<strong>al</strong>ida y pasa<br />
los datos <strong>de</strong> s<strong>al</strong>ida <strong>al</strong> sigui<strong>en</strong>te nodo <strong>en</strong> la trayectoria <strong>de</strong>l flujo <strong>de</strong> datos. Visu<strong>al</strong><br />
Basic, C++, JAVA y otros l<strong>en</strong>guajes <strong>de</strong> programación basados <strong>en</strong> texto, sigu<strong>en</strong> un<br />
mo<strong>de</strong>lo <strong>de</strong> control <strong>de</strong> flujo <strong>de</strong> la ejecución <strong>de</strong> un programa. En flujo <strong>de</strong> control, el<br />
or<strong>de</strong>n secu<strong>en</strong>ci<strong>al</strong> <strong>de</strong> los elem<strong>en</strong>tos <strong>de</strong>l programa <strong>de</strong>termina el or<strong>de</strong>n <strong>de</strong> ejecución <strong>de</strong><br />
un programa.<br />
Consi<strong>de</strong>re el diagrama <strong>de</strong> bloque que se <strong>en</strong>cu<strong>en</strong>tra arriba. Este suma dos números y<br />
luego resta 50 <strong>de</strong>l resultado <strong>de</strong> la suma. En este caso, el diagrama <strong>de</strong> bloque se<br />
ejecuta <strong>de</strong> izquierda a <strong>de</strong>recha, no porque los objetos están puestos <strong>en</strong> ese or<strong>de</strong>n,<br />
sino porque una <strong>de</strong> las <strong>en</strong>tradas <strong>de</strong> la función <strong>de</strong> resta no es v<strong>al</strong>ida hasta que la<br />
función <strong>de</strong> suma o adición haya terminado su ejecución y pasado los datos a la<br />
función <strong>de</strong> resta. Recuer<strong>de</strong> que un nodo se ejecuta solam<strong>en</strong>te cuando ti<strong>en</strong>e datos<br />
disponibles <strong>en</strong> todas sus termin<strong>al</strong>es <strong>de</strong> <strong>en</strong>trada, y suministra datos a sus termin<strong>al</strong>es<br />
<strong>de</strong> s<strong>al</strong>idas solam<strong>en</strong>te cuando termina su ejecución.<br />
En el código <strong>de</strong> la <strong>de</strong>recha, consi<strong>de</strong>re cu<strong>al</strong> segm<strong>en</strong>to <strong>de</strong>l código se ejecutara<br />
primero---la suma, el numero <strong>al</strong>eatorio, o la función <strong>de</strong> división. No se pue<strong>de</strong> saber<br />
porque las <strong>en</strong>tradas a las funciones <strong>de</strong> suma y división están disponibles <strong>al</strong> mismo<br />
tiempo, y la función <strong>de</strong> numero <strong>al</strong>eatorio no ti<strong>en</strong>e <strong>en</strong>tradas. En una situación <strong>en</strong><br />
don<strong>de</strong> un segm<strong>en</strong>to <strong>de</strong>l código se <strong>de</strong>be ejecutar antes que otro, y no existe<br />
<strong>de</strong>p<strong>en</strong><strong>de</strong>ncia <strong>de</strong> datos <strong>en</strong>tre las funciones, utilice una estructura <strong>de</strong> Secu<strong>en</strong>cia para<br />
forzar el or<strong>de</strong>n <strong>de</strong> la ejecución.<br />
17
Contexto <strong>de</strong> la Ayuda<br />
Ayuda <strong>en</strong> línea<br />
Congelar Ayuda<br />
Ayuda <strong>de</strong>l Diagrama Simple/Complejo<br />
Ctrl + H<br />
Refer<strong>en</strong>cias <strong>en</strong> Línea<br />
Todos los m<strong>en</strong>ús <strong>en</strong> línea<br />
Clic <strong>en</strong> las funciones <strong>de</strong>l diagrama para t<strong>en</strong>er acceso directo a<br />
la información <strong>en</strong> línea.<br />
Utilice la v<strong>en</strong>tana <strong>de</strong> Context Help (Ayuda Contextu<strong>al</strong>) y LabVIEW Help (Ayuda<br />
<strong>de</strong> LabViEW) para ayudarle a construir o editar los VIs. Refiérase a la ayuda <strong>de</strong><br />
LabVIEW y a los manu<strong>al</strong>es para mas información.<br />
V<strong>en</strong>tana <strong>de</strong> Ayuda Contextu<strong>al</strong> (Context Help Window )<br />
Para <strong>de</strong>splegar la v<strong>en</strong>tana <strong>de</strong> Context Help, seleccione Help>>Show Context Help<br />
o presione las teclas . Cuando mueva el <strong>curso</strong>r sobre el panel front<strong>al</strong> y los<br />
objetos <strong>de</strong>l diagrama <strong>de</strong> bloque, la v<strong>en</strong>tana <strong>de</strong> Context Help <strong>de</strong>spliega el icono <strong>de</strong><br />
los subVIs, funciones, constantes, controles e indicadores, con cables adjuntos a<br />
cada una <strong>de</strong> sus termin<strong>al</strong>es. Cuando mueva el <strong>curso</strong>r sobre la caja <strong>de</strong> opciones <strong>de</strong><br />
di<strong>al</strong>ogo, la v<strong>en</strong>tana <strong>de</strong> Context Help <strong>de</strong>spliega <strong>de</strong>scripciones <strong>de</strong> esas opciones. En<br />
la v<strong>en</strong>tana, las conexiones requeridas están <strong>en</strong> negrilla, las conexiones<br />
recom<strong>en</strong>dadas <strong>en</strong> texto norm<strong>al</strong>, y las conexiones opcion<strong>al</strong>es están poco claras o no<br />
aparec<strong>en</strong>. Arriba se pres<strong>en</strong>ta un ejemplo <strong>de</strong> la v<strong>en</strong>tana <strong>de</strong> Context Help.<br />
Haga un clic <strong>en</strong> el botón <strong>de</strong> Simple/Detailed Context Help loc<strong>al</strong>izado <strong>en</strong> la esquina<br />
inferior izquierda <strong>de</strong> la v<strong>en</strong>tana <strong>de</strong> Context Help para distinguir <strong>en</strong>tre la ayuda<br />
contextu<strong>al</strong> simple y <strong>de</strong>t<strong>al</strong>lada. El modo simple <strong>en</strong>fatiza las conexiones importantes.<br />
Las termin<strong>al</strong>es opcion<strong>al</strong>es son mostradas por segm<strong>en</strong>tos <strong>de</strong> cables, informándole <strong>de</strong><br />
la exist<strong>en</strong>cia <strong>de</strong> otras conexiones.<br />
Haga clic <strong>en</strong> el botón <strong>de</strong> Lock Context Help para congelar el cont<strong>en</strong>ido actu<strong>al</strong> <strong>de</strong> la<br />
v<strong>en</strong>tana <strong>de</strong> la Context Help. Cuando los cont<strong>en</strong>idos están congelados, el mover el<br />
<strong>curso</strong>r sobre otros objetos no cambia los cont<strong>en</strong>idos <strong>de</strong> la v<strong>en</strong>tana. Para <strong>de</strong>scongelar<br />
la v<strong>en</strong>tana, haga clic nuevam<strong>en</strong>te <strong>en</strong> el botón. Usted también pue<strong>de</strong> t<strong>en</strong>er acceso a<br />
esta opción <strong>de</strong>s<strong>de</strong> el m<strong>en</strong>ú <strong>de</strong> ayuda (Help).<br />
18
Haga clic <strong>en</strong> el botón <strong>de</strong> More Help (mas ayuda) para <strong>de</strong>splegar el tema<br />
correspondi<strong>en</strong>te <strong>en</strong> LabVIEW Help, el cu<strong>al</strong> <strong>de</strong>scribe el objeto <strong>en</strong> forma <strong>de</strong>t<strong>al</strong>lada.<br />
LabVIEW Help (Ayuda <strong>de</strong> LabVIEW)<br />
Pue<strong>de</strong> acce<strong>de</strong>r a LabVIEW Help ya sea haci<strong>en</strong>do clic <strong>en</strong> el botón <strong>de</strong> More Help <strong>en</strong><br />
la v<strong>en</strong>tana <strong>de</strong> Context Help, seleccionando Help»VI, Function, & How-To Help,<br />
haci<strong>en</strong>do clic <strong>en</strong> la oración Click here for more help <strong>en</strong> la v<strong>en</strong>tana <strong>de</strong> Context<br />
Help o presionando .<br />
La LabVIEW Help conti<strong>en</strong>e <strong>de</strong>scripciones <strong>de</strong>t<strong>al</strong>ladas <strong>de</strong> casi todos los m<strong>en</strong>ús,<br />
herrami<strong>en</strong>tas, VIs y funciones. También incluye instrucciones paso-a-paso para la<br />
utilización <strong>de</strong> muchas características <strong>de</strong> LabVIEW y <strong>en</strong>laces <strong>al</strong> Tutori<strong>al</strong> <strong>de</strong><br />
LabVIEW, versiones <strong>en</strong> PDF <strong>de</strong> todos los manu<strong>al</strong>es y Notas <strong>de</strong> Aplicación <strong>de</strong><br />
LabVIEW, a<strong>de</strong>más <strong>de</strong> re<strong>curso</strong>s <strong>de</strong> soporte técnico <strong>en</strong> el sitio web <strong>de</strong> Nation<strong>al</strong><br />
Instrum<strong>en</strong>ts.<br />
19
Tiempo estimado <strong>de</strong> fin<strong>al</strong>ización: 20 minutos. El ejercicio es fácil, pero como será<br />
el primer VI que crearemos, es bu<strong>en</strong>o permitir un tiempo amplio para explorar el<br />
ambi<strong>en</strong>te <strong>de</strong> LabVIEW.<br />
Instrucciones: Construya un VI que convierta <strong>de</strong> °C a °F. Cuando lo corra, el VI<br />
<strong>de</strong>berá <strong>de</strong> tomar un v<strong>al</strong>or <strong>de</strong> <strong>en</strong>trada (°C), multiplicarlo por 1.8, sumarle 32, y<br />
<strong>de</strong>splegar el resultado (°F). El panel front<strong>al</strong> <strong>de</strong>berá mostrar el v<strong>al</strong>or <strong>de</strong> <strong>en</strong>trada y el<br />
resultado. S<strong>al</strong>ve el VI como Conversion C a F.vi<br />
20
Encontrando los Errores<br />
Res<strong>al</strong>tar la Ejecución<br />
Herrami<strong>en</strong>ta <strong>de</strong> Prueba<br />
Haga clic <strong>en</strong> el botón <strong>de</strong> correr que esta roto;<br />
Aparece una v<strong>en</strong>tana mostrando los errores<br />
Haga clic <strong>en</strong> el botón <strong>de</strong> ejecución res<strong>al</strong>tada; el<br />
flujo <strong>de</strong> datos es animado utilizando burbujas.<br />
Los v<strong>al</strong>ores se <strong>de</strong>spliegan <strong>en</strong> los cables.<br />
Haga clic con el botón <strong>de</strong>recho sobre el cable para<br />
exhibir la v<strong>en</strong>tana <strong>de</strong> prueba y así mostrar los<br />
datos mi<strong>en</strong>tras fluy<strong>en</strong> por el segm<strong>en</strong>to <strong>de</strong> cable.<br />
También pue<strong>de</strong> seleccionar la herrami<strong>en</strong>ta <strong>de</strong><br />
prueba <strong>de</strong>s<strong>de</strong> la p<strong>al</strong>eta <strong>de</strong> herrami<strong>en</strong>tas y hacer un<br />
clic <strong>en</strong> el cable.<br />
Cuando su VI no es ejecutable, se <strong>de</strong>spliega una flecha quebrada <strong>en</strong> el botón <strong>de</strong><br />
correr <strong>en</strong> la p<strong>al</strong>eta <strong>de</strong> herrami<strong>en</strong>tas.<br />
Encontrando los Errores: Para hacer una lista <strong>de</strong> los errores, haga clic <strong>en</strong> la flecha<br />
quebrada. Para loc<strong>al</strong>izar el objeto m<strong>al</strong>o, haga clic <strong>en</strong> el m<strong>en</strong>saje <strong>de</strong>l error.<br />
Res<strong>al</strong>tando la Ejecucion: Anima el diagrama y traza el flujo <strong>de</strong> datos,<br />
permitiéndole ver los v<strong>al</strong>ores intermedios.<br />
Haga clic <strong>en</strong> el bombillo incan<strong>de</strong>sc<strong>en</strong>te (light bulb) <strong>en</strong> la barra <strong>de</strong><br />
herrami<strong>en</strong>tas.<br />
Probe: Utilizado para ver los v<strong>al</strong>ores <strong>en</strong> los arrays (arreglos) y clusters .<br />
Haga clic <strong>en</strong> los cables con la herrami<strong>en</strong>ta Probe o haga clic <strong>de</strong>recho <strong>en</strong> el<br />
cable para ajustar los probes.<br />
Punto <strong>de</strong> Paro (Breakpoint): Coloca pausas <strong>en</strong> difer<strong>en</strong>tes lugares <strong>de</strong>l diagrama.<br />
Haga clic <strong>en</strong> los cables o <strong>en</strong> los objetos con la herrami<strong>en</strong>ta <strong>de</strong> Punto <strong>de</strong><br />
Paro para colocar los puntos <strong>de</strong> paro.<br />
Utilice el VI Debug Demonstrate <strong>de</strong>l BASICS.LLB para <strong>de</strong>mostrar las opciones y<br />
las herrami<strong>en</strong>tas.<br />
21
Así como <strong>en</strong> las termin<strong>al</strong>es <strong>de</strong> control o <strong>de</strong> indicador <strong>en</strong> el diagrama <strong>de</strong> bloque pue<strong>de</strong>n ser<br />
vistos como un icono o como una simple termin<strong>al</strong>, los subVIs pue<strong>de</strong>n ser vistos como un<br />
icono, un nodo expandible o un nodo expandido. Las difer<strong>en</strong>tes vistas <strong>de</strong>p<strong>en</strong><strong>de</strong>n <strong>en</strong> la<br />
prefer<strong>en</strong>cia <strong>de</strong>l usuario y no cambia la funcion<strong>al</strong>idad <strong>de</strong>l subVI.<br />
23
Un SubVI es un VI que pue<strong>de</strong> ser utilizado <strong>de</strong>ntro <strong>de</strong><br />
otro VI<br />
Similar a una subrutina<br />
V<strong>en</strong>tajas<br />
Modular<br />
Fácil para eliminar errores<br />
No ti<strong>en</strong>e que crear códigos<br />
Requiere m<strong>en</strong>os memoria<br />
Después <strong>de</strong> haber construido un VI, y creado su propio icono y panel <strong>de</strong> conexión,<br />
este pue<strong>de</strong> ser utilizado <strong>en</strong> otro VI. Un VI <strong>de</strong>ntro <strong>de</strong> otro VI se llama un subVI. Un<br />
subVI correspon<strong>de</strong> a una subrutina <strong>en</strong> l<strong>en</strong>guajes <strong>de</strong> programación basados <strong>en</strong> texto.<br />
La utilización <strong>de</strong> subVIs le ayuda a manejar cambios y a eliminar errores <strong>de</strong>l<br />
diagrama <strong>de</strong> bloque rápidam<strong>en</strong>te.<br />
24
Icon<br />
Termin<strong>al</strong>s<br />
Connector<br />
Cada VI muestra un icono, mostrado arriba, <strong>en</strong> la esquina superior <strong>de</strong>recha <strong>de</strong> las<br />
v<strong>en</strong>tanas <strong>de</strong>l panel front<strong>al</strong> y <strong>de</strong>l diagrama <strong>de</strong> bloque. Un icono es una repres<strong>en</strong>tación<br />
grafica <strong>de</strong> un VI. Pue<strong>de</strong> cont<strong>en</strong>er texto, imág<strong>en</strong>es, o una combinación <strong>de</strong> ambos. Si<br />
usted utiliza un VI como subVI, el icono i<strong>de</strong>ntifica el subVI <strong>en</strong> el diagrama <strong>de</strong><br />
bloque <strong>de</strong>l VI.<br />
El conector muestra termin<strong>al</strong>es disponibles para la transfer<strong>en</strong>cia <strong>de</strong> datos hacia y<br />
<strong>de</strong>s<strong>de</strong> el subVI. Hay varios patrones <strong>de</strong> conectores para elegir. Haga un clic-<strong>de</strong>recho<br />
sobre el conector y seleccione el patrón <strong>de</strong>l m<strong>en</strong>ú <strong>de</strong> patrones. A partir <strong>de</strong> ahí usted<br />
pue<strong>de</strong> asignar controles e indicadores <strong>en</strong> el panel front<strong>al</strong> <strong>al</strong> conector termin<strong>al</strong>, como<br />
veremos mas a<strong>de</strong>lante.<br />
25
Sub VIs<br />
El diagrama <strong>de</strong> bloque mostrado <strong>en</strong> la parte superior conti<strong>en</strong>e dos subVIs. Para ver<br />
el panel front<strong>al</strong> <strong>de</strong> un subVI, simplem<strong>en</strong>te haga un doble clic sobre el subVI. Usted<br />
también pue<strong>de</strong> ver la jerarquía <strong>de</strong> subVIs <strong>de</strong>ntro <strong>de</strong> un VI princip<strong>al</strong> haci<strong>en</strong>do un clic<br />
<strong>en</strong> Browse>> Show VI Hierarchy.<br />
26
Cree iconos person<strong>al</strong>izados para reemplazar los iconos pre<strong>de</strong>terminados <strong>al</strong> hacer<br />
clic-<strong>de</strong>recho <strong>en</strong> la esquina superior <strong>de</strong>recha <strong>de</strong>l panel front<strong>al</strong> o <strong>de</strong>l diagrama <strong>de</strong><br />
bloques y seleccionando el Edit Icon <strong>de</strong>l m<strong>en</strong>ú <strong>de</strong> atajo o haci<strong>en</strong>do un doble clic <strong>en</strong><br />
el icono <strong>en</strong> la esquina superior <strong>de</strong>recha <strong>de</strong>l panel front<strong>al</strong>. Usted también pue<strong>de</strong><br />
corregir iconos seleccionando File >> VI Properties, seleccionando G<strong>en</strong>er<strong>al</strong> <strong>de</strong>l<br />
m<strong>en</strong>u Category, y haci<strong>en</strong>do clic <strong>en</strong> el botón <strong>de</strong> editar (Edit Icon). Utilice las<br />
herrami<strong>en</strong>tas <strong>de</strong>l lado izquierdo <strong>de</strong> la casilla <strong>de</strong> di<strong>al</strong>ogo <strong>de</strong>l Icon Editor para crear<br />
el diseño <strong>de</strong>l icono <strong>en</strong> el área <strong>de</strong> edición. El tamaño norm<strong>al</strong> <strong>de</strong> la imag<strong>en</strong> <strong>de</strong>l icono<br />
aparece <strong>en</strong> la casilla apropiada <strong>en</strong> la parte <strong>de</strong>recha <strong>de</strong>l área <strong>de</strong> edición.<br />
Usted también pue<strong>de</strong> arrastrar un gráfico <strong>de</strong>s<strong>de</strong> cu<strong>al</strong>quier archivo y colocarlo <strong>en</strong> la<br />
esquina superior <strong>de</strong>recha <strong>de</strong>l panel front<strong>al</strong> o <strong>de</strong>l diagrama <strong>de</strong> bloque. LabVIEW<br />
convierte el gráfico a un icono <strong>de</strong> 32 × 32 píxeles.<br />
28
Haga click <strong>de</strong>recho sobre el icono (solam<strong>en</strong>te <strong>en</strong> el panel front<strong>al</strong>)<br />
Para utilizar un VI como un subVI, usted necesita crear un conector. El conector es<br />
una serie <strong>de</strong> termin<strong>al</strong>es que correspon<strong>de</strong>n a los controles y a los indicadores <strong>de</strong> ese<br />
VI, similar a la lista <strong>de</strong> parámetros <strong>de</strong> una función basado <strong>en</strong> un l<strong>en</strong>guaje <strong>de</strong><br />
programación <strong>de</strong> texto. El conector <strong>de</strong>fine las <strong>en</strong>tradas y las s<strong>al</strong>idas que usted pue<strong>de</strong><br />
cablear <strong>al</strong> VI para que pueda utilizarlo como subVI.<br />
Defina las conexiones asignando un control <strong>de</strong>l panel front<strong>al</strong> o un indicador a cada<br />
una <strong>de</strong> las termin<strong>al</strong>es <strong>de</strong>l conector. Para <strong>de</strong>finir un conector, <strong>de</strong> un clic-<strong>de</strong>recho<br />
sobre el icono <strong>en</strong> la esquina superior <strong>de</strong>recha <strong>de</strong> la v<strong>en</strong>tana <strong>de</strong>l panel front<strong>al</strong> y<br />
seleccione Show Connector <strong>de</strong>l m<strong>en</strong>ú. El conector substituye el icono. Cada<br />
rectángulo <strong>en</strong> el conector repres<strong>en</strong>ta una termin<strong>al</strong>. Utilice los rectángulos para<br />
asignar <strong>en</strong>tradas y s<strong>al</strong>idas. El número <strong>de</strong> termin<strong>al</strong>es que LabVIEW muestra <strong>en</strong> el<br />
conector <strong>de</strong>p<strong>en</strong><strong>de</strong> <strong>de</strong>l número <strong>de</strong> controles e indicadores <strong>en</strong> el panel front<strong>al</strong>. El<br />
panel front<strong>al</strong> <strong>de</strong> arriba ti<strong>en</strong>e cuatro controles y un indicador, así que LabVIEW<br />
muestra cuatro termin<strong>al</strong>es <strong>de</strong> <strong>en</strong>tradas y una termin<strong>al</strong> <strong>de</strong> s<strong>al</strong>ida <strong>en</strong> el conector.<br />
29
Después que seleccione un patrón para utilizar <strong>en</strong> su conector, <strong>de</strong>be <strong>de</strong>finir las<br />
conexiones asignando un control <strong>de</strong>l panel front<strong>al</strong> o indicador a cada uno <strong>de</strong> los<br />
termin<strong>al</strong>es <strong>de</strong>l conector. Cuando usted hace vínculos <strong>en</strong>tre controles e indicadores y<br />
el conector, coloque las <strong>en</strong>tradas <strong>en</strong> la izquierda y las s<strong>al</strong>idas a la <strong>de</strong>recha para<br />
evitar patrones complicados y poco claros <strong>en</strong> su VI. Para asignar una termin<strong>al</strong> a un<br />
control <strong>de</strong> panel front<strong>al</strong> o indicador, presione una termin<strong>al</strong> <strong>de</strong>l conector. Presione el<br />
control <strong>de</strong>l panel front<strong>al</strong> o indicador que usted <strong>de</strong>sea asignar a la termin<strong>al</strong>. Haga<br />
clic <strong>en</strong> un área abierta <strong>de</strong>l panel front<strong>al</strong>. La termin<strong>al</strong> cambia <strong>al</strong> color <strong>de</strong>l tipo <strong>de</strong><br />
datos <strong>de</strong>l control para indicar que usted conectó la termin<strong>al</strong>. Usted también pue<strong>de</strong><br />
seleccionar el control o el indicador primeram<strong>en</strong>te y <strong>de</strong>spués seleccionar la<br />
termin<strong>al</strong>.<br />
Asegurase que s<strong>al</strong>vó el VI <strong>de</strong>spués <strong>de</strong> haber hecho las asignaciones <strong>de</strong> las<br />
termin<strong>al</strong>es.<br />
30
Hay varias maneras <strong>de</strong> organizar sus subVIs. La manera más común es organizarlos<br />
por aplicación. En este caso, son s<strong>al</strong>vados <strong>en</strong> el mismo directorio o <strong>de</strong>ntro <strong>de</strong> un<br />
archivo <strong>de</strong> librería <strong>de</strong> VI todos los VI s para una aplicación <strong>en</strong> particular. S<strong>al</strong>varlos<br />
<strong>en</strong> un archivo <strong>de</strong> librería permite que usted transporte una aplicación <strong>en</strong>tera <strong>de</strong>ntro<br />
<strong>de</strong> un solo archivo.<br />
S<strong>al</strong>var <strong>de</strong>ntro <strong>de</strong> una librería es simple. Después <strong>de</strong> presionar Save As (s<strong>al</strong>var<br />
como), presione New VI Library (nueva librería <strong>de</strong> VI). Esto permitirá que usted<br />
nombre la librería, y <strong>en</strong>tonces s<strong>al</strong>var su VI <strong>en</strong> él. Para agregar VI subsecu<strong>en</strong>tes,<br />
simplem<strong>en</strong>te haga un doble-clic <strong>al</strong> archivo .llb <strong>de</strong> la v<strong>en</strong>tana estándar <strong>de</strong> S<strong>al</strong>var, y<br />
dar un nombre <strong>al</strong> VI.<br />
31
Acce<strong>de</strong>r subVIs creados por el usuario<br />
Funciones >> All Functions >> Seleccione<br />
un VI o<br />
arrastre el icono hasta el diagrama <strong>de</strong>seado<br />
Después <strong>de</strong> construir un VI y crear su icono y conector, usted pue<strong>de</strong> utilizarlo<br />
como un subVI. Para colocar un subVI <strong>en</strong> el diagrama <strong>de</strong> bloque, seleccione<br />
Functions>> Select VI. Navegue y haga un doble-clic <strong>en</strong> el VI que usted <strong>de</strong>sea<br />
utilizar como subVI y colocaquelo <strong>en</strong> el diagrama <strong>de</strong> bloques.<br />
También pue<strong>de</strong> colocar un VI abierto <strong>en</strong> el diagrama <strong>de</strong> bloque <strong>de</strong> otro VI abierto<br />
usando la herrami<strong>en</strong>ta <strong>de</strong> colocación (Positioning Tool) para hacer clic <strong>en</strong> el icono<br />
<strong>en</strong> la esquina superior <strong>de</strong>recha <strong>de</strong>l panel front<strong>al</strong> o diagrama <strong>de</strong> bloque <strong>de</strong> el VI que<br />
usted <strong>de</strong>sea utilizar como subVI y arrastrar el icono <strong>al</strong> diagrama <strong>de</strong> bloque <strong>de</strong>l otro<br />
VI.<br />
32
LabVIEW ti<strong>en</strong>e muchas teclas <strong>de</strong> atajo que hac<strong>en</strong> el trabajo mas fácil. Las mas<br />
comunes se listan <strong>en</strong> la diapositiva.<br />
Mi<strong>en</strong>tras la Herrami<strong>en</strong>ta <strong>de</strong> Selección Automática (Automatic Selection Tool) es<br />
g<strong>en</strong>i<strong>al</strong> para escoger la herrami<strong>en</strong>ta que usted <strong>de</strong>searía utilizar <strong>en</strong> LabVIEW, a veces<br />
hay casos cuando usted <strong>de</strong>sea controles manu<strong>al</strong>es. Utilice la tecla Tab para cambiar<br />
<strong>en</strong>tre las cuatro herrami<strong>en</strong>tas mas comunes (Operate V<strong>al</strong>ue (v<strong>al</strong>or <strong>de</strong> operacion),<br />
Position/Size/Select, (Posición/Tamaño/Selección), Edit Text (editar texto), Set<br />
Color on Front Panel (establecer color <strong>en</strong> panel front<strong>al</strong>), Connect wire on Block<br />
Diagram (conectar cable <strong>en</strong> el diagrama <strong>de</strong> bloque)). Una vez que se ha terminado<br />
con la selección <strong>de</strong> herrami<strong>en</strong>tas, pue<strong>de</strong> presionar para activar la<br />
Herrami<strong>en</strong>ta <strong>de</strong> Selección Automática.<br />
En el di<strong>al</strong>ogo <strong>de</strong> Herrami<strong>en</strong>tas >> Opciones , hay muchas opciones configurables<br />
para el Panel Front<strong>al</strong>, Diagrama <strong>de</strong> Bloque, Colores, Impresión y mucho mas.<br />
Similar a las opciones <strong>de</strong> LabVIEW, se pue<strong>de</strong>n configurar propieda<strong>de</strong>s especificas<br />
<strong>de</strong>l VI <strong>al</strong> ir a File >> VI Properties Ahí se pue<strong>de</strong> docum<strong>en</strong>tar el VI, cambiar la<br />
apari<strong>en</strong>cia <strong>de</strong> la v<strong>en</strong>tana, y person<strong>al</strong>izarlos <strong>de</strong> varias maneras.<br />
33
S<strong>en</strong>sores<br />
Bloque <strong>de</strong> Termin<strong>al</strong>es<br />
Cable<br />
Dispositivo DAQ<br />
Computadora<br />
34
Digit<strong>al</strong><br />
La plataforma <strong>de</strong> Adquisición <strong>de</strong> Datos <strong>en</strong> LabVIEW conti<strong>en</strong>e una plataforma para la NI-<br />
DAQ tradicion<strong>al</strong> y una para NI-DAQmx.<br />
Los VIs tradicion<strong>al</strong>es están divididos por el tipo <strong>de</strong> medición, los VIs DAQmx están<br />
divididos por el tipo <strong>de</strong> tarea.<br />
Antes <strong>de</strong> utilizar la Adquisición <strong>de</strong> Datos <strong>de</strong> VIs se <strong>de</strong>be completar varios pasos. Los<br />
dispositivos <strong>de</strong>b<strong>en</strong> se configurados para las computadoras <strong>en</strong> esta clase.<br />
1. El software NI-DAQ <strong>de</strong>be estar inst<strong>al</strong>ado <strong>en</strong> la computadora.<br />
2. Debe t<strong>en</strong>er inst<strong>al</strong>ado una tarjeta E-series DAQ y esta <strong>de</strong>be ser configurada usando el<br />
Explorador <strong>de</strong> Automatización & Mediación (Measurem<strong>en</strong>t & Automation Explorer<br />
(MAX)).<br />
Para mas información sobre la inst<strong>al</strong>ación y configuración <strong>de</strong> hardware <strong>de</strong> Nation<strong>al</strong><br />
Instrum<strong>en</strong>ts, consultar el DAQ QUick Start Gui<strong>de</strong>:<br />
http://digit<strong>al</strong>.ni.com/manu<strong>al</strong>s.nsf/websearch/E502277FE33ED60686256B3B0056AEDF?O<br />
p<strong>en</strong>Docum<strong>en</strong>t&no<strong>de</strong>=132100_US<br />
35
Arriba esta la v<strong>en</strong>tana <strong>de</strong> ayuda <strong>de</strong>l DAQ (DAQ Assistant) que pue<strong>de</strong> ser<br />
configurada rápidam<strong>en</strong>te para leer temperaturas <strong>de</strong> una tarjeta <strong>de</strong> Adquisición <strong>de</strong><br />
Datos (DAQ).<br />
36
ú ñ<br />
Resolución: Al adquirir datos a una computadora, un convertidor <strong>de</strong> Análogo-a-<br />
Digit<strong>al</strong> (ADC) toma una señ<strong>al</strong> análoga y la convierte a un número binario. Por lo<br />
tanto, cada número binario <strong>de</strong>l ADC repres<strong>en</strong>ta cierto nivel <strong>de</strong> voltaje. El ADC<br />
<strong>de</strong>vuelve el nivel más <strong>al</strong>to posible sin pasar el nivel <strong>de</strong> voltaje re<strong>al</strong> <strong>de</strong> la señ<strong>al</strong><br />
análoga. La resolución se refiere <strong>al</strong> número <strong>de</strong> niveles binarios que el ADC pue<strong>de</strong><br />
utilizar para repres<strong>en</strong>tar una señ<strong>al</strong>. Para <strong>en</strong>contrar el número <strong>de</strong> niveles <strong>de</strong> voltaje<br />
disponibles basados <strong>en</strong> la resolución usted simplem<strong>en</strong>te toma 2 Resolucion . Por lo tanto,<br />
cuanto más <strong>al</strong>ta es la resolución, más son los niveles que usted t<strong>en</strong>drá para<br />
repres<strong>en</strong>tar su señ<strong>al</strong>. Por ejemplo, un ADC con 3-bits <strong>de</strong> resolución pue<strong>de</strong> medir 2 3<br />
o 8 niveles <strong>de</strong> voltajes, mi<strong>en</strong>tras que un ADC con 12-bit <strong>de</strong> resolución pue<strong>de</strong> medir<br />
2 12 o 4096 niveles <strong>de</strong> voltajes.<br />
Rango: A difer<strong>en</strong>cia <strong>de</strong> la resolución <strong>de</strong>l ADC, el rango <strong>de</strong>l ADC es seleccionable.<br />
La mayoría <strong>de</strong> los dispositivos DAQ ofrec<strong>en</strong> un rango <strong>de</strong>s<strong>de</strong> 0 - +10 o -10 a +10. Se<br />
elige el rango cuando usted configura su dispositivo <strong>en</strong> NI-DAQ. T<strong>en</strong>ga pres<strong>en</strong>te<br />
que la resolución <strong>de</strong>l ADC será ext<strong>en</strong>dida por cu<strong>al</strong>quier rango que usted elija.<br />
Cuanto más gran<strong>de</strong> sea el rango, mas esparcida será su resolución, y t<strong>en</strong>drá una peor<br />
repres<strong>en</strong>tación <strong>de</strong> su señ<strong>al</strong>. Entonces es importante escoger su rango para<br />
apropiadam<strong>en</strong>te <strong>en</strong>cajar su señ<strong>al</strong> <strong>de</strong> <strong>en</strong>trada.<br />
37
Ganancia: Escogi<strong>en</strong>do apropiadam<strong>en</strong>te el rango <strong>de</strong> su ADC es una manera <strong>de</strong><br />
asegurarse <strong>de</strong> que usted esta maximizando la resolución <strong>de</strong> su ADC. Otra manera <strong>de</strong><br />
ayudar a su señ<strong>al</strong> a maximizar la resolución <strong>de</strong>l ADS es aplicando una ganancia.<br />
Ganancia se refiere a cu<strong>al</strong>quier amplificación o at<strong>en</strong>uación <strong>de</strong> una señ<strong>al</strong>. El ajuste<br />
<strong>de</strong> ganancia (gain setting) es un factor <strong>de</strong> esc<strong>al</strong>a. Cada nivel <strong>de</strong> voltaje <strong>en</strong> su señ<strong>al</strong><br />
<strong>en</strong>trante es multiplicado por el ajuste <strong>de</strong> ganancia para obt<strong>en</strong>er la señ<strong>al</strong> amplificada<br />
o at<strong>en</strong>uada. A difer<strong>en</strong>cia <strong>de</strong> la resolución que es un ajuste fijo (fixed setting) <strong>de</strong>l<br />
ADC, y el rango que es escogido cuando el dispositivo DAQ es configurado, la<br />
ganancia es especificada indirectam<strong>en</strong>te a través <strong>de</strong> un ajuste llamado límites <strong>de</strong><br />
<strong>en</strong>trada. Los límites <strong>de</strong> <strong>en</strong>trada se refier<strong>en</strong> a los v<strong>al</strong>ores máximos y mínimos <strong>de</strong> su<br />
señ<strong>al</strong> <strong>de</strong> <strong>en</strong>trada an<strong>al</strong>ógica actu<strong>al</strong>. Basado <strong>en</strong> los límites <strong>de</strong> <strong>en</strong>trada que usted <strong>de</strong>fina,<br />
la ganancia posible más gran<strong>de</strong> que mant<strong>en</strong>drá la señ<strong>al</strong> <strong>en</strong>tre el rango escogido <strong>de</strong>l<br />
ADC es aplicada a su señ<strong>al</strong>. Así que <strong>en</strong> lugar <strong>de</strong> necesitar c<strong>al</strong>cular la mejor<br />
ganancia basada <strong>en</strong> su señ<strong>al</strong> y <strong>en</strong> el rango escogido, todo lo que usted necesita saber<br />
son los v<strong>al</strong>ores máximos y mínimos <strong>de</strong> su señ<strong>al</strong>.<br />
38
BNC-2120<br />
SC-2075<br />
NI-ELVIS<br />
SCB-68<br />
Hay muchos arreglos difer<strong>en</strong>tes posibles <strong>de</strong> hardware para adquirir datos. Todos los<br />
sistemas <strong>de</strong> la Adquisición <strong>de</strong> Datos requier<strong>en</strong> <strong>al</strong>gún tipo <strong>de</strong> conexión termin<strong>al</strong> que<br />
acepta una señ<strong>al</strong> <strong>de</strong> su transductor y lo transmite a la tarjeta DAQ. Cuatro <strong>de</strong> estos<br />
bloques <strong>de</strong> termin<strong>al</strong>es son el BNC-2120, SC-2075, SCB-68, y NI-ELVIS.<br />
El BNC-2120 es un bloque <strong>de</strong> conexiones aislado (shiel<strong>de</strong>d) con conectores BNC<br />
<strong>de</strong> señ<strong>al</strong>-etiquetada para la conectividad fácil a su dispositivo DAQ. También<br />
proporciona un g<strong>en</strong>erador <strong>de</strong> funciones, <strong>en</strong>co<strong>de</strong>r (codificador) <strong>de</strong> cuadratura,<br />
refer<strong>en</strong>cia <strong>de</strong> la temperatura, conector <strong>de</strong> termocupla, y LED para que usted pueda<br />
probar la funcion<strong>al</strong>idad <strong>de</strong> su hardware.<br />
El SC-2075 proporciona áreas para conexión (breadboard areas) para hacer<br />
prototipos y conectividad BNC y <strong>de</strong> termin<strong>al</strong>es <strong>de</strong> resorte (spring termin<strong>al</strong>). Los<br />
±15 V <strong>de</strong> <strong>al</strong>im<strong>en</strong>tación fija asi como la <strong>al</strong>im<strong>en</strong>tación ajustable <strong>de</strong> 0 a 5 V y LEDs<br />
hac<strong>en</strong> <strong>de</strong>l SC-2075 un instrum<strong>en</strong>to i<strong>de</strong><strong>al</strong> para laboratorios académicos.<br />
El SCB-68 es un bloque <strong>de</strong> conexión <strong>de</strong> E/S (I/O) aislado (shiel<strong>de</strong>d) para señ<strong>al</strong>es<br />
resist<strong>en</strong>tes y <strong>de</strong> bajo-ruido. Incluye dos áreas <strong>de</strong> conexión (breadboard areas) <strong>de</strong><br />
propósito-g<strong>en</strong>er<strong>al</strong> así como un s<strong>en</strong>sor <strong>de</strong> temperatura IC para la comp<strong>en</strong>sación <strong>de</strong><br />
emp<strong>al</strong>me frío <strong>en</strong> mediciones <strong>de</strong> temperatura.<br />
NI-ELVIS (Sistema <strong>de</strong> Laboratorio Educacion<strong>al</strong> <strong>de</strong> Instrum<strong>en</strong>tación Virtu<strong>al</strong>) es un<br />
ambi<strong>en</strong>te <strong>de</strong> prototipo y diseño basado <strong>en</strong> LabVIEW y consiste <strong>de</strong> instrum<strong>en</strong>tos<br />
virtu<strong>al</strong>es basados <strong>en</strong> LabVIEW, un dispositivo <strong>de</strong> adquisición <strong>de</strong> datos<br />
multifuncion<strong>al</strong>, y <strong>en</strong> una estación <strong>de</strong> trabajo con un banco y tablero <strong>de</strong> diseño y<br />
39
Complete el VI <strong>de</strong> conversión <strong>de</strong> C a F (Conversion C a<br />
F.vi), y <strong>de</strong>spués cree el VI Termómetro (Thermometer.vi).<br />
Nota: Para completar este ejercicio, usted necesitará el s<strong>en</strong>sor <strong>de</strong> la temperatura IC<br />
disponible <strong>en</strong> el BNC-2120, SCB-68 o Accesorio <strong>de</strong> Señ<strong>al</strong> DAQ.<br />
El tiempo estimado para completarse: 30 minutos.<br />
Instrucciones: Este ejercicio ti<strong>en</strong>e tres partes.<br />
Primero, cree un icono y conector para Conversion C a F.vi (Ejercicio 1). El icono<br />
<strong>de</strong>be recordarle la funcion<strong>al</strong>idad <strong>de</strong>l VI (e.g. C F o C a F). El conector <strong>de</strong>be t<strong>en</strong>er<br />
una <strong>en</strong>trada y una s<strong>al</strong>ida, permiti<strong>en</strong>do una termin<strong>al</strong> para °C <strong>de</strong> <strong>en</strong>trada, y °F <strong>de</strong><br />
s<strong>al</strong>ida.<br />
Segundo, cree un VI princip<strong>al</strong> que adquiera un punto <strong>de</strong> datos <strong>de</strong>l can<strong>al</strong> 0 (el s<strong>en</strong>sor<br />
<strong>de</strong> la temperatura) <strong>de</strong> su tarjeta DAQ y permita <strong>al</strong> usuario mostrar la temperatura <strong>en</strong><br />
C<strong>en</strong>tígrados o Fahr<strong>en</strong>heit. Para hacer esto usted necesitará adquirir un solo punto <strong>de</strong><br />
datos <strong>de</strong> su tarjeta DAQ y esc<strong>al</strong>arlo por un factor <strong>de</strong> 100. Esto le dará °C. Usted<br />
<strong>de</strong>be t<strong>en</strong>er un interruptor o botón Booleano que le permita <strong>al</strong> usuario escoger<br />
C<strong>en</strong>tígrados o Fahr<strong>en</strong>heit. Si el usuario escoje C<strong>en</strong>tígrados, el v<strong>al</strong>or esc<strong>al</strong>ado se<br />
<strong>de</strong>be mostrar <strong>en</strong> un indicador <strong>de</strong> termómetro. Si el usuario escoje Fahr<strong>en</strong>heit, el<br />
v<strong>al</strong>or <strong>en</strong> C<strong>en</strong>tígrados se <strong>de</strong>be <strong>de</strong> pasar por el Conversion C a F.vi (utilizado como un<br />
subVI), y el v<strong>al</strong>or <strong>de</strong> s<strong>al</strong>ida Fahr<strong>en</strong>heit <strong>de</strong>be ser <strong>de</strong>splegado.<br />
Suger<strong>en</strong>cia: Utilice la función Select (seleccionar) <strong>en</strong> la p<strong>al</strong>eta <strong>de</strong><br />
Comparison (comparación).<br />
40
Fin<strong>al</strong>m<strong>en</strong>te, cree un Icono y Conector para Termómetro.vi. Un posible Icono seria<br />
una imag<strong>en</strong> <strong>de</strong> un termómetro. El conector <strong>de</strong>bería t<strong>en</strong>er dos termin<strong>al</strong>es. Uno para la<br />
<strong>en</strong>trada Booleana (°C or °F), y el segundo para la s<strong>al</strong>ida <strong>de</strong> la temperatura esc<strong>al</strong>ada.<br />
Guar<strong>de</strong> el VI como termómetro.vi<br />
41
For Loop (Ciclo Para)<br />
While Loop (Ciclo Mi<strong>en</strong>tras)<br />
Gráficas<br />
Multiplots<br />
Dele clic para agregar notas<br />
42
Ciclo Mi<strong>en</strong>tras<br />
Ti<strong>en</strong>e una Termin<strong>al</strong> <strong>de</strong> Iteración<br />
Siempre corre <strong>al</strong> m<strong>en</strong>os una vez<br />
Corre <strong>de</strong> acuerdo a la Termin<strong>al</strong><br />
Condicionante<br />
Ciclos Para<br />
Ti<strong>en</strong>e una Termin<strong>al</strong> <strong>de</strong> Iteración<br />
Corre <strong>de</strong> acuerdo a la <strong>en</strong>trada<br />
N <strong>de</strong> la Termin<strong>al</strong> <strong>de</strong> Conteo<br />
Ambos los ciclos Mi<strong>en</strong>tras (While) y Para (For) están loc<strong>al</strong>izados <strong>en</strong> la p<strong>al</strong>eta<br />
Functions»Structures. El ciclo Para difiere <strong>de</strong>l ciclo Mi<strong>en</strong>tras <strong>en</strong> que el ciclo Para<br />
ejecuta una serie (set) <strong>de</strong> veces pre<strong>de</strong>terminada. El ciclo Mi<strong>en</strong>tras <strong>de</strong>ja <strong>de</strong> ejecutar el<br />
sub diagrama solo si el v<strong>al</strong>or <strong>en</strong> la condición termin<strong>al</strong> existe.<br />
Ciclo Mi<strong>en</strong>tras<br />
Similar <strong>al</strong> ciclo Haga (Do) o <strong>al</strong> ciclo Repita-hasta (Repeat-Until) <strong>en</strong> l<strong>en</strong>guajes <strong>de</strong><br />
programación basados <strong>en</strong> texto, un ciclo Mi<strong>en</strong>tras, mostrado arriba a la <strong>de</strong>recha,<br />
ejecuta un sub diagrama hasta que la condición sea cumplida. El ciclo Mi<strong>en</strong>tras<br />
ejecuta el sub diagrama hasta que la termin<strong>al</strong> <strong>de</strong>p<strong>en</strong>di<strong>en</strong>te, recibe un v<strong>al</strong>or<br />
Booleano específico. El comportami<strong>en</strong>to incumplido y la apari<strong>en</strong>cia <strong>de</strong> la termin<strong>al</strong><br />
<strong>de</strong>p<strong>en</strong>di<strong>en</strong>te (v<strong>al</strong>or por <strong>de</strong>fecto) es Continue if True (continue si es Verda<strong>de</strong>ro),<br />
mostrado a la izquierda. Cuando una termin<strong>al</strong> <strong>de</strong>p<strong>en</strong>di<strong>en</strong>te es Continue if True, el<br />
ciclo Mi<strong>en</strong>tras ejecuta su sub diagrama hasta que la termin<strong>al</strong> <strong>de</strong>p<strong>en</strong>di<strong>en</strong>te recibe un<br />
v<strong>al</strong>or FALSO. La termin<strong>al</strong> <strong>de</strong> iteración (una termin<strong>al</strong> <strong>de</strong> s<strong>al</strong>ida), mostrada a la<br />
izquierda, conti<strong>en</strong>e el numero <strong>de</strong> iteraciones completas. El conteo <strong>de</strong> iteraciones<br />
siempre empieza <strong>en</strong> cero. Durante la primera iteración, la termin<strong>al</strong> <strong>de</strong> iteración<br />
regresa a cero.<br />
Ciclo Para<br />
Un ciclo Para, mostrado a la izquierda, ejecuta una serie varias veces. El v<strong>al</strong>or <strong>en</strong> la<br />
termin<strong>al</strong> <strong>de</strong> conteo (una termin<strong>al</strong> <strong>de</strong> <strong>en</strong>trada) repres<strong>en</strong>tada por la N, indica cuantas<br />
veces repetir el sub diagrama. La termin<strong>al</strong> <strong>de</strong> iteración (una <strong>en</strong>trada <strong>de</strong> s<strong>al</strong>ida),<br />
mostrada a la izquierda, conti<strong>en</strong>e el numero <strong>de</strong> iteraciones completas. El conteo <strong>de</strong><br />
iteraciones siempre empieza <strong>en</strong> cero. Durante la primera iteración, la termin<strong>al</strong> <strong>de</strong><br />
iteración regresa a cero.<br />
43
Coloque ciclos <strong>en</strong> su diagrama seleccionándolos <strong>de</strong>s<strong>de</strong> la p<strong>al</strong>eta <strong>de</strong> Estructuras <strong>de</strong> la p<strong>al</strong>eta<br />
<strong>de</strong> Funciones (<strong>de</strong>mostrar)<br />
Cuando este seleccionado, el <strong>curso</strong>r <strong>de</strong>l ratón se convierte <strong>en</strong> un puntero especi<strong>al</strong> que<br />
usted usa para<br />
<strong>en</strong>cerrar la sección <strong>de</strong>l código que <strong>de</strong>sea repetir.<br />
Déle clic <strong>al</strong> botón <strong>de</strong>l ratón para <strong>de</strong>finir la esquina superior-izquierda, déle clic otra vez <strong>al</strong><br />
botón <strong>de</strong>l ratón <strong>en</strong><br />
la esquina inferior izquierda, y la frontera <strong>de</strong>l ciclo Mi<strong>en</strong>tras es creada <strong>al</strong>re<strong>de</strong>dor <strong>de</strong>l<br />
código seleccionado.<br />
Arrastre nodos adicion<strong>al</strong>es a<strong>de</strong>ntro <strong>de</strong>l ciclo Mi<strong>en</strong>tras si es necesario.<br />
44
Gráfica <strong>de</strong> forma <strong>de</strong> onda<br />
indicador númerico especi<strong>al</strong><br />
que pue<strong>de</strong> mostrar una<br />
historia <strong>de</strong> v<strong>al</strong>ores<br />
Controles >> Indicadores <strong>de</strong><br />
Gráficas >> Gráfica <strong>de</strong><br />
forma <strong>de</strong> onda<br />
La grafica <strong>de</strong> forma <strong>de</strong> onda es un indicador numérico especi<strong>al</strong> que muestra una o<br />
más graficas (plots). La grafica <strong>de</strong> forma <strong>de</strong> onda esta loc<strong>al</strong>izada <strong>en</strong> la p<strong>al</strong>eta<br />
Controls»Graph Indicators. Las graficas <strong>de</strong> forma <strong>de</strong> onda pue<strong>de</strong>n mostrar<br />
graficas simples o múltiples. El sigui<strong>en</strong>te panel front<strong>al</strong> muestra un ejemplo <strong>de</strong> una<br />
grafica <strong>de</strong> forma <strong>de</strong> onda múltiple.<br />
Usted pue<strong>de</strong> cambiar los v<strong>al</strong>ores min y max <strong>de</strong>l eje x y y dándole doble clic <strong>al</strong> v<strong>al</strong>or<br />
con la herrami<strong>en</strong>tas <strong>de</strong> etiquetado y escribi<strong>en</strong>do el nuevo v<strong>al</strong>or. Similarm<strong>en</strong>te, usted<br />
pue<strong>de</strong> cambiar la etiqueta <strong>de</strong>l eje. También pue<strong>de</strong> darle clic <strong>de</strong>recho a la ley<strong>en</strong>da <strong>de</strong><br />
la grafica y cambiar el estilo, forma y color <strong>de</strong>l dibujo que se muestra <strong>en</strong> la gráfica.<br />
45
Grafica <strong>de</strong> diagrama simple Grafica <strong>de</strong> diagrama múltiple<br />
Usted pue<strong>de</strong> cablear una s<strong>al</strong>ida esc<strong>al</strong>ar directam<strong>en</strong>te a una grafica <strong>de</strong> forma <strong>de</strong> onda<br />
para mostrar un diagrama. Para mostrar múltiples diagramas <strong>en</strong> una grafica, use la<br />
función Merge Sign<strong>al</strong>s <strong>en</strong>contrada <strong>en</strong> la p<strong>al</strong>eta Functions >> Sign<strong>al</strong><br />
Manipulation. La función Merge Sign<strong>al</strong> junta múltiples s<strong>al</strong>idas para diagramar <strong>en</strong><br />
la gráfica <strong>de</strong> forma <strong>de</strong> onda. Para agregar mas diagramas, utilice la herrami<strong>en</strong>ta <strong>de</strong><br />
Posicionami<strong>en</strong>to para cambiar el tamaño <strong>de</strong> la función Merge Sign<strong>al</strong>.<br />
La ayuda <strong>de</strong> contexto conti<strong>en</strong>e muy bu<strong>en</strong>a información <strong>en</strong> como cablear <strong>de</strong><br />
difer<strong>en</strong>tes maneras los datos <strong>de</strong>ntro <strong>de</strong> las graficas.<br />
46
Estudiantes construy<strong>en</strong> el VI Ejemplo <strong>de</strong> Ciclo.vi.<br />
Este ejercicio <strong>de</strong>be tomar <strong>de</strong> 15-20 minutos.<br />
Instrucciones<br />
Cree un VI que g<strong>en</strong>ere un número <strong>al</strong>eatorio a una velocidad especifica y mustre las<br />
lecturas <strong>en</strong> una grafica <strong>de</strong> forma <strong>de</strong> onda hasta que el usuario lo pare. Conecte la<br />
termin<strong>al</strong> <strong>de</strong> terminación a un botón <strong>de</strong> paro <strong>en</strong> el panel front<strong>al</strong>, y agregue un control<br />
<strong>de</strong> <strong>de</strong>slizami<strong>en</strong>to (sli<strong>de</strong>r control) <strong>al</strong> panel <strong>de</strong> control. Este control <strong>de</strong> <strong>de</strong>slizami<strong>en</strong>to<br />
<strong>de</strong>be recorrer <strong>de</strong> 0 a 2000 <strong>en</strong> v<strong>al</strong>or, y será conectado a la función Express VI Time<br />
Delay (<strong>de</strong>mora <strong>de</strong> tiempo) <strong>de</strong>ntro <strong>de</strong> su ciclo Mi<strong>en</strong>tras.<br />
Guar<strong>de</strong> el VI como Use a Loop.vi<br />
47
Construir arreglos manu<strong>al</strong>m<strong>en</strong>te<br />
Dejar que LabVIEW construya arreglos<br />
automáticam<strong>en</strong>te<br />
Escribir a un archivo <strong>de</strong> hoja <strong>de</strong> cálculo (spreadsheet)<br />
Leer <strong>de</strong>s<strong>de</strong> un archivo <strong>de</strong> hoja <strong>de</strong> cálculo (spreadsheet)<br />
Los arreglos agrupan elem<strong>en</strong>tos <strong>de</strong> datos <strong>de</strong>l mismo tipo. Un arreglo consiste <strong>de</strong><br />
elem<strong>en</strong>tos y dim<strong>en</strong>siones. Los elem<strong>en</strong>tos son los datos que compon<strong>en</strong> el arreglo.<br />
Una dim<strong>en</strong>sión es la longitud, <strong>al</strong>tura, o profundidad <strong>de</strong> un arreglo. Un arreglo pue<strong>de</strong><br />
t<strong>en</strong>er una o mas dim<strong>en</strong>siones y hasta 2^31 1 elem<strong>en</strong>tos por dim<strong>en</strong>sión, si lo<br />
permite la memoria.<br />
Usted pue<strong>de</strong> construir arreglos <strong>de</strong> tipos <strong>de</strong> datos numéricos, Booleanos, rutas,<br />
ca<strong>de</strong>nas, formas <strong>de</strong> onda y cluster data. Consi<strong>de</strong>re usar arreglos cuando trabaje con<br />
una colección <strong>de</strong> datos similares y cuando re<strong>al</strong>ice computaciones repetitivas. Los<br />
arreglos son i<strong>de</strong><strong>al</strong>es para <strong>al</strong>mac<strong>en</strong>ar información que se obti<strong>en</strong>e <strong>de</strong> formas <strong>de</strong> ondas<br />
o información g<strong>en</strong>erada <strong>en</strong> los ciclos, don<strong>de</strong> cada iteración <strong>de</strong> un ciclo produce un<br />
elem<strong>en</strong>to <strong>de</strong>l arreglo.<br />
Los elem<strong>en</strong>tos <strong>de</strong>l arreglo son or<strong>de</strong>nados. Un arreglo utiliza un índice para que<br />
usted pueda t<strong>en</strong>er acceso rápido a cu<strong>al</strong>quier elem<strong>en</strong>to <strong>en</strong> particular. El índice es<br />
basado <strong>en</strong> cero, lo que significa que ti<strong>en</strong>e un rango <strong>de</strong> 0 a n 1, don<strong>de</strong> n es el<br />
numero <strong>de</strong> elem<strong>en</strong>tos <strong>en</strong> el arreglo. Por ejemplo, n = 9 para los nueve planetas, así<br />
que el índice recorre <strong>de</strong> 0 a 8. La Tierra es el tercer planeta, así que ti<strong>en</strong>e un índice<br />
<strong>de</strong> 2.<br />
Las operaciones <strong>de</strong> Entrada/S<strong>al</strong>ida <strong>de</strong> archivo (I/O) pasan los datos <strong>de</strong>s<strong>de</strong> y a los<br />
archivos. Utilice los VI <strong>de</strong> File I/O y las funciones loc<strong>al</strong>izadas <strong>en</strong> la p<strong>al</strong>eta<br />
Functions » File I/O para manejar todos aspectos <strong>de</strong> I/O <strong>de</strong> archivo. En esta clase<br />
nosotros cubriremos la lectura y escritura <strong>de</strong> archivos <strong>de</strong> hoja <strong>de</strong> cálculo<br />
(spreadsheet) utilizando el Express VIs para File I/O.<br />
48
Des<strong>de</strong> la sub-p<strong>al</strong>eta <strong>de</strong> Controls >> All Controls<br />
>> Array and Cluster, seleccione el Array Shell<br />
Colóquelo <strong>en</strong> la pant<strong>al</strong>la.<br />
Para crear un control o indicador <strong>de</strong> un arreglo como el mostrado, escoja un arreglo<br />
(array) <strong>en</strong> la p<strong>al</strong>eta Controls » All Controls » Arrays & Cluster, colóquelo <strong>en</strong> el<br />
panel front<strong>al</strong>, y arrastre un control o un indicador a<strong>de</strong>ntro <strong>de</strong> la estructura (shell) <strong>de</strong>l<br />
arreglo. Si usted procura arrastrar un control o indicador inválidos t<strong>al</strong>es como una<br />
gráfica XY a<strong>de</strong>ntro <strong>de</strong> la estructura <strong>de</strong>l arreglo, usted sera incapaz <strong>de</strong> <strong>de</strong>jar caer el<br />
control o el indicador <strong>en</strong> la estructura <strong>de</strong>l arreglo.<br />
Usted <strong>de</strong>be insertar un objeto <strong>en</strong> la estructura <strong>de</strong>l arreglo antes <strong>de</strong> que usted utilice<br />
el arreglo <strong>en</strong> el diagrama <strong>de</strong> bloques. De otro modo, la termin<strong>al</strong> <strong>de</strong>l arreglo aparece<br />
negra con un paréntesis vacío.<br />
49
Situé el objeto <strong>de</strong> datos <strong>de</strong>ntro <strong>de</strong>l shell (Ej. Control Numérico)<br />
Para agregar las dim<strong>en</strong>siones a un arreglo <strong>de</strong> uno <strong>en</strong> uno, hace clic <strong>de</strong>recho <strong>en</strong> el<br />
<strong>de</strong>spliegue <strong>de</strong>l índice y seleccione Add Dim<strong>en</strong>sion <strong>de</strong>l m<strong>en</strong>ú <strong>de</strong> atajo. Usted pue<strong>de</strong><br />
utilizar también la herrami<strong>en</strong>ta que Posicionami<strong>en</strong>to para cambiar el tamaño <strong>de</strong>l<br />
<strong>de</strong>spliegue <strong>de</strong>l índice hasta que usted t<strong>en</strong>ga las dim<strong>en</strong>siones que usted quiera.<br />
50
Los ciclos acumulan arreglos <strong>en</strong> sus limites.<br />
Si se cablea un arreglo a un tunel <strong>de</strong> <strong>en</strong>trada <strong>de</strong> un ciclo Para (For Loop) o<br />
un ciclo Mi<strong>en</strong>tras (While Loop), usted pue<strong>de</strong> leer y procesar cada elem<strong>en</strong>to<br />
<strong>en</strong> ese arreglo <strong>al</strong> activar el auto-in<strong>de</strong>xing (auto-indicación). Cuando usted<br />
utiliza el auto-índice <strong>en</strong> un arreglo <strong>de</strong> túnel <strong>de</strong> s<strong>al</strong>ida el arreglo <strong>de</strong> s<strong>al</strong>ida<br />
recibe un nuevo elem<strong>en</strong>to por cada iteración <strong>de</strong>l ciclo. El cable que va <strong>de</strong>l<br />
túnel <strong>de</strong> s<strong>al</strong>ida <strong>al</strong> arreglo indicador se vuelve mas grueso <strong>al</strong> cambiar a un<br />
arreglo <strong>en</strong> el bor<strong>de</strong> <strong>de</strong>l ciclo, y el túnel <strong>de</strong> s<strong>al</strong>ida conti<strong>en</strong>e corchetes<br />
cuadrados repres<strong>en</strong>tando un arreglo, como se muestra <strong>en</strong> la sigui<strong>en</strong>te<br />
ilustración.<br />
Desactive el auto-indicador <strong>al</strong> hacer un clic <strong>de</strong>recho <strong>en</strong> el tunel y seleccionar<br />
Disable In<strong>de</strong>xing (<strong>de</strong>sactivar Indicacion) <strong>de</strong>s<strong>de</strong> el m<strong>en</strong>u <strong>de</strong> atajo. Por<br />
ejemplo, <strong>de</strong>sactive el auto-indicador si necesita únicam<strong>en</strong>te el ultimo v<strong>al</strong>or<br />
pasado <strong>al</strong> tunel <strong>en</strong> ejemplo anterior, sin crear un arreglo.<br />
Nota: Debido a que usted pue<strong>de</strong> utilizar ciclos Para (For<br />
Loops) para procesar arreglos y elem<strong>en</strong>to a la misma vez, LabVIEW, activa<br />
el auto-indicador como opción por <strong>de</strong>fecto para cada arreglo que<br />
se cablee a un Ciclo Para. El Auto-Indicador para Ciclos Mi<strong>en</strong>tras (While<br />
Loops) esta <strong>de</strong>sactivados por <strong>de</strong>fecto. Para activar el autoindicador,<br />
haga clic <strong>de</strong>recho <strong>en</strong> un tunel y seleccione Enable In<strong>de</strong>xing <strong>de</strong>l<br />
m<strong>en</strong>u <strong>de</strong> atajo.<br />
Si usted activa el auto-indicador <strong>en</strong> un arreglo cableado a una termin<strong>al</strong> <strong>de</strong><br />
<strong>en</strong>trada <strong>de</strong> un Ciclo Para, LabVIEW arregla el contador <strong>de</strong> la termin<strong>al</strong> <strong>al</strong><br />
tamaño <strong>de</strong>l arreglo para que así usted no t<strong>en</strong>ga que cablear la termin<strong>al</strong> <strong>de</strong>l<br />
51
Se pue<strong>de</strong>n utilizar dos Ciclos Para, uno <strong>de</strong>ntro <strong>de</strong>l otro, para crear arreglos<br />
bidim<strong>en</strong>sion<strong>al</strong>es. El Ciclo Para externo crea las filas <strong>de</strong> elem<strong>en</strong>tos y el Ciclo<br />
Para interno crea las columnas <strong>de</strong> elem<strong>en</strong>tos.<br />
52
Manejo <strong>de</strong> Archivos transferir datos a y <strong>de</strong>s<strong>de</strong> archivos<br />
- Los Archivos pue<strong>de</strong>n ser binarios, texto u hojas <strong>de</strong> c<strong>al</strong>culo<br />
- Escritura/Lectura <strong>de</strong> Archivos <strong>de</strong> Medición <strong>de</strong> LabVIEW<br />
(LabVIEW Measurem<strong>en</strong>ts *.lvm)<br />
Escritura <strong>en</strong> Archivo LVM Lectura <strong>de</strong> un Archivo LVM<br />
Operaciones <strong>de</strong> Entradas y S<strong>al</strong>idas <strong>de</strong> archivo (File I/O) pasan datos <strong>de</strong>s<strong>de</strong><br />
y hacia archivos. En LabVIEW, usted pue<strong>de</strong> utilizar funciones <strong>de</strong> archivo I/O<br />
para:<br />
Abrir y cerrar archivos <strong>de</strong> datos.<br />
Lectura <strong>de</strong> datos <strong>de</strong>s<strong>de</strong> y escribir datos a archivos<br />
Lectura y escritura <strong>de</strong> datos a docum<strong>en</strong>tos <strong>en</strong> formato <strong>de</strong> hoja <strong>de</strong> c<strong>al</strong>culo<br />
(spreadsheet)<br />
Mover y retitular los archivos y directorios<br />
Cambiar las características <strong>de</strong>l archivo<br />
Crear, modificar, y leer archivos <strong>de</strong> configuración<br />
Escribir a o leer <strong>en</strong> archivos <strong>de</strong> Medición LabVIEW (LabVIEW Measurem<strong>en</strong>t<br />
Files).<br />
En este <strong>curso</strong> examinaremos cómo escribir a o leer <strong>de</strong>s<strong>de</strong> archivos <strong>de</strong><br />
Medición LabVIEW (archivos *.lvm).<br />
53
El archivo <strong>de</strong> escritura LVM pue<strong>de</strong> escribir a archivos <strong>de</strong> hoja <strong>de</strong> c<strong>al</strong>culo<br />
(spreadsheet). Sin embargo, su propósito princip<strong>al</strong> es el <strong>de</strong> introducir datos, que<br />
luego seran utilizados <strong>en</strong> LabVIEW. Este VI crea un archivo .lvm que se pue<strong>de</strong><br />
abrir <strong>en</strong> una aplicación <strong>de</strong> hoja <strong>de</strong> c<strong>al</strong>culo. Para los archivos <strong>de</strong> hoja <strong>de</strong> c<strong>al</strong>culo<br />
simple, utilice el VIs expreso: Write LVM y Read LVM.<br />
54
Los Estudiantes construy<strong>en</strong> el VI Logger <strong>de</strong> Temperatura.vi<br />
Tiempo <strong>de</strong> completación estimado: 30-45 minutos.<br />
Instrucciones:<br />
Cree un VI que adquiera y exhiba datos <strong>de</strong> temperatura a una velocidad fija<br />
hasta que el usuario lo <strong>de</strong>t<strong>en</strong>ga. Si usted ha terminado el ejercicio 2 y ti<strong>en</strong>e<br />
una tarjeta DAQ, utilice Thermometer.vi para obt<strong>en</strong>er sus datos. Si usted no<br />
ha terminado el ejercicio ni ti<strong>en</strong>e una tarjeta <strong>de</strong> DAQ, usted pue<strong>de</strong> utilizar el<br />
Digit<strong>al</strong> Thermometer.vi <strong>de</strong> la subp<strong>al</strong>eta Tutori<strong>al</strong> <strong>de</strong> la p<strong>al</strong>eta <strong>de</strong> funciones.<br />
Una vez que esté parado, el VI <strong>de</strong>be re<strong>al</strong>izar análisis <strong>en</strong> los datos que<br />
recogió mi<strong>en</strong>tras estaba corri<strong>en</strong>do. Acumule un arreglo <strong>de</strong> puntos y <strong>de</strong><br />
v<strong>al</strong>ores <strong>en</strong> la frontera <strong>de</strong>l túnel <strong>de</strong>l Ciclo Mi<strong>en</strong>tras (While Loop). Encu<strong>en</strong>tre el<br />
máximo, el mínimo, y el v<strong>al</strong>or medio <strong>de</strong> los datos <strong>de</strong> la temperatura y<br />
exhíb<strong>al</strong>os <strong>en</strong> indicadores numéricos (la función Mean (media) pue<strong>de</strong> ser<br />
<strong>en</strong>contrada <strong>en</strong> Functions» An<strong>al</strong>yze» Mathematics» Probability and<br />
Statistics, y la función Array Max & Min (máximo y mínimo <strong>de</strong> un arreglo)<br />
pue<strong>de</strong> ser <strong>en</strong>contrada <strong>en</strong> Functions» Array). Utilice el Write LabVIEW<br />
Measurem<strong>en</strong>ts File Express VI (VI <strong>de</strong> escritura expreso <strong>de</strong> docum<strong>en</strong>tos <strong>de</strong><br />
medición LabVIEW) que pue<strong>de</strong> ser <strong>en</strong>contrado <strong>en</strong> Functions» Output. Una<br />
vez que se corra, verifique que el archivo fue creado correctam<strong>en</strong>te<br />
abriéndolo <strong>en</strong> Notepad o creando un VI que lo lea <strong>de</strong> nuevo utilizando el<br />
Read LabVIEW Measurem<strong>en</strong>ts File. Una vez que haya terminado el ejercicio,<br />
guar<strong>de</strong> su VI como Logger <strong>de</strong> Temperatura.vi.<br />
55
Funciones Básicas <strong>de</strong> los Arreglos<br />
Uso <strong>de</strong> gráficos<br />
Crear Diagramas Múltiples con Gráficos<br />
Haga click para adicionar notas.<br />
56
Functions >> All Functions >> Array<br />
Utilice las funciones <strong>de</strong> los arreglos situadas <strong>en</strong> la p<strong>al</strong>eta Functions» All<br />
Functions» Array para crear y para manipular arreglos.<br />
Las funciones <strong>de</strong> los arreglo incluy<strong>en</strong> las sigui<strong>en</strong>tes:<br />
Array Size (Tamaño <strong>de</strong>l Arreglo) <strong>de</strong>vuelve el número <strong>de</strong> elem<strong>en</strong>tos <strong>en</strong><br />
cada dim<strong>en</strong>sión <strong>de</strong> un arreglo. Si el arreglo es <strong>de</strong> n-dim<strong>en</strong>siones, el tamaño<br />
(size) <strong>de</strong> la s<strong>al</strong>ida es un arreglo <strong>de</strong> n elem<strong>en</strong>tos.<br />
Initi<strong>al</strong>ize Array (Inici<strong>al</strong>izar el Arreglo) crea un arreglo <strong>de</strong> n dim<strong>en</strong>siones<br />
<strong>en</strong> don<strong>de</strong> cada elem<strong>en</strong>to ha sido inici<strong>al</strong>izado <strong>al</strong> v<strong>al</strong>or <strong>de</strong>l elem<strong>en</strong>to<br />
(elem<strong>en</strong>t). Cambie el tamaño <strong>de</strong> la funcion para increm<strong>en</strong>tar el numero <strong>de</strong><br />
dim<strong>en</strong>siones <strong>de</strong>l arreglo <strong>de</strong> s<strong>al</strong>ida.<br />
Build Array (Construcción <strong>de</strong>l Arreglo) -- concat<strong>en</strong>a arreglos múltiples o<br />
aña<strong>de</strong> elem<strong>en</strong>tos a un arreglo <strong>de</strong> n dim<strong>en</strong>siones. Cambie el tamaño <strong>de</strong> la<br />
funcion para increm<strong>en</strong>tar el numero <strong>de</strong> dim<strong>en</strong>siones <strong>de</strong>l arreglo <strong>de</strong> s<strong>al</strong>ida.<br />
Array Subset (Subconjunto <strong>de</strong> Arreglo) <strong>de</strong>vuelve parte <strong>de</strong> un arreglo que<br />
comi<strong>en</strong>za <strong>en</strong> el índice y que conti<strong>en</strong>e elem<strong>en</strong>tos <strong>de</strong> la longitud.<br />
In<strong>de</strong>x Array (Indice <strong>de</strong>l Arreglo) <strong>de</strong>vuelve un elem<strong>en</strong>to <strong>de</strong> un arreglo <strong>en</strong><br />
el índice. Usted también pue<strong>de</strong> utilizar la función Indice <strong>de</strong>l Arreglo para<br />
extraer una fila o una columna <strong>de</strong> un arreglo bidim<strong>en</strong>sion<strong>al</strong> para asi crear un<br />
subarreglo <strong>de</strong>l origin<strong>al</strong>. Para hacer esto cablee un arreglo bidim<strong>en</strong>sion<strong>al</strong> a la<br />
<strong>en</strong>trada <strong>de</strong> la función. Dos termin<strong>al</strong>es <strong>de</strong> índice están disponibles. La<br />
termin<strong>al</strong> <strong>de</strong>l indice superior indica la fila, y la segunda termin<strong>al</strong> indica la<br />
columna. Usted pue<strong>de</strong> cablear <strong>en</strong>tradas a ambas termin<strong>al</strong>es <strong>de</strong> índice para<br />
indicar un solo elem<strong>en</strong>to, o usted pue<strong>de</strong> cablear solam<strong>en</strong>te una termin<strong>al</strong><br />
para extraer una fila o una columna <strong>de</strong> datos. Por ejemplo, cablee el arreglo<br />
sigui<strong>en</strong>te a la <strong>en</strong>trada <strong>de</strong> la función.<br />
57
Build Array (Construcción <strong>de</strong> Arreglos) pue<strong>de</strong> re<strong>al</strong>izar dos funciones<br />
distintas. Concat<strong>en</strong>a múltiples arreglos o aña<strong>de</strong> elem<strong>en</strong>tos a un arreglo <strong>de</strong> n<br />
dim<strong>en</strong>siones. Cambie el tamaño <strong>de</strong> la función para increm<strong>en</strong>tar el numero<br />
<strong>de</strong> dim<strong>en</strong>siones <strong>de</strong>l arreglo <strong>de</strong> s<strong>al</strong>ida. Para concat<strong>en</strong>ar las <strong>en</strong>tradas <strong>en</strong> un<br />
arreglo más largo <strong>de</strong> la misma dim<strong>en</strong>sión según lo <strong>de</strong>mostrado <strong>en</strong> el<br />
sigui<strong>en</strong>te arreglo, haga click <strong>de</strong>recho <strong>en</strong> el nodo <strong>de</strong> la función y seleccione<br />
Concat<strong>en</strong>ate Inputs (Concat<strong>en</strong>ar Entradas) <strong>de</strong>s<strong>de</strong> el m<strong>en</strong>ú <strong>de</strong> atajo.<br />
58
Seleccionados <strong>de</strong>s<strong>de</strong> la P<strong>al</strong>eta <strong>de</strong> Controles <strong>de</strong>l M<strong>en</strong>u<br />
Controls >> All Controls >> Graphs<br />
Grafico <strong>de</strong> Forma <strong>de</strong> Onda<br />
(Waveform Waveform Graph) Graph Grafica un<br />
arreglo <strong>de</strong> numeros <strong>en</strong> contra <strong>de</strong> sus<br />
indices<br />
Grafico XY Expreso (Express XY<br />
Graph) Graph Grafica un array <strong>en</strong> contra<br />
<strong>de</strong> otro<br />
Grafico <strong>de</strong> Forma <strong>de</strong> Onda Digit<strong>al</strong><br />
(Digit<strong>al</strong> Digit<strong>al</strong> Waveform Graph) Graph<br />
Grafica bits <strong>de</strong> datos binarios<br />
VIs con gráficos usu<strong>al</strong>m<strong>en</strong>te recolectan los datos <strong>en</strong> un arreglo y <strong>de</strong>spués<br />
dibujan estos datos <strong>en</strong> una gráfica.<br />
Los gráficos situados <strong>en</strong> la p<strong>al</strong>eta Controls» All Controls» Graph incluy<strong>en</strong><br />
el gráfico <strong>de</strong> forma <strong>de</strong> onda y el gráfico XY. El diagrama <strong>de</strong>l gráfico <strong>de</strong> forma<br />
<strong>de</strong> onda traza solam<strong>en</strong>te funciones <strong>de</strong> una sola variable, como <strong>en</strong> y = f(x),<br />
con puntos distribuidos uniformem<strong>en</strong>te a lo largo <strong>de</strong>l eje x, t<strong>al</strong> como formas<br />
<strong>de</strong> onda adquiridas con tiempo variable. Los gráficos expresos XY exhib<strong>en</strong><br />
cu<strong>al</strong>quier set <strong>de</strong> puntos, ya sea que estos sean muestreados uniformem<strong>en</strong>te<br />
o no. Cambie el tamaño <strong>de</strong> la ley<strong>en</strong>da <strong>de</strong> la grafica para exhibir múltiples<br />
diagramas. Utilice diagramas múltiples para ahorrar espacio <strong>en</strong> el panel<br />
front<strong>al</strong> y para hacer hacer comparaciones <strong>en</strong>tre diagramas. Los gráficos XY<br />
y <strong>de</strong> forma <strong>de</strong> onda se adaptan automáticam<strong>en</strong>te a los diagramas múltiples.<br />
Grafica <strong>de</strong> Forma <strong>de</strong> Onda <strong>de</strong> Trazo-Simple (Single-Plot Waveform<br />
Graph)<br />
Los gráficos <strong>de</strong> forma <strong>de</strong> onda aceptan un solo arreglo <strong>de</strong> v<strong>al</strong>ores e<br />
interpreta los datos como puntos <strong>en</strong> el gráfico e increm<strong>en</strong>ta el indice x por<br />
uno com<strong>en</strong>zando <strong>en</strong> x = 0. El gráfico también acepta un cluster <strong>de</strong> un v<strong>al</strong>or<br />
inici<strong>al</strong> x, un .x, y <strong>de</strong> un arreglo <strong>de</strong> datos y. Refierase <strong>al</strong> VI <strong>de</strong>l gráfico <strong>de</strong><br />
forma <strong>de</strong> onda (Waveform Graph VI) <strong>en</strong><br />
examples\g<strong>en</strong>er<strong>al</strong>\graphs\g<strong>en</strong>graph.llb para <strong>en</strong>contrar ejemplos <strong>de</strong> los tipos<br />
<strong>de</strong> datos que los gráficos <strong>de</strong> forma <strong>de</strong> onda <strong>de</strong> trazo-simple aceptan.<br />
59
Grafico <strong>de</strong> Forma <strong>de</strong> Onda <strong>de</strong> Trazo- Múltiple<br />
Los gráficos <strong>de</strong> forma <strong>de</strong> onda <strong>de</strong> trazo múltiple aceptan un arreglo bidim<strong>en</strong>sion<strong>al</strong> <strong>de</strong><br />
v<strong>al</strong>ores, <strong>en</strong> don<strong>de</strong> cada fila <strong>de</strong>l arreglo es una grafica s<strong>en</strong>cilla. La gráfica interpreta los datos<br />
como puntos <strong>en</strong> la gráfica e increm<strong>en</strong>ta el indice x por uno, com<strong>en</strong>zando <strong>en</strong> x = 0. Cablee<br />
un arreglo <strong>de</strong> datos bidim<strong>en</strong>sion<strong>al</strong>es a la gráfica, haga clic <strong>de</strong>recho <strong>en</strong> la gráfica, y<br />
seleccione Transpose Array (arreglo transpuesto) <strong>de</strong>l m<strong>en</strong>ú <strong>de</strong> atajo para manejar cada<br />
columna <strong>de</strong>l arreglo como un diagrama aparte. Refiérase <strong>al</strong> (Y) Multi Plot 1 graph <strong>en</strong> el VI<br />
<strong>de</strong> Waveform Graph <strong>en</strong> examples\g<strong>en</strong>er<strong>al</strong>\graphs\g<strong>en</strong>graph.llb para <strong>en</strong>contrar un ejemplo<br />
<strong>de</strong> un gráfico que acepte este tipo <strong>de</strong> datos.<br />
Un gráfico <strong>de</strong> forma <strong>de</strong> onda <strong>de</strong> diagramas múltiples también acepta un cluster <strong>de</strong> un v<strong>al</strong>or<br />
x, un v<strong>al</strong>or x , y <strong>de</strong> un arreglo bidim<strong>en</strong>sion<strong>al</strong> <strong>de</strong> datos y. El gráfico interpreta los datos <strong>de</strong> y<br />
como los puntos <strong>en</strong> el gráfico e increm<strong>en</strong>ta el indice x por x, com<strong>en</strong>zando <strong>en</strong> x = 0.<br />
Refierase a (Xo, x, Y) Multi Plot 3 graph <strong>en</strong> el VI <strong>de</strong> Waveform Graph que se <strong>en</strong>cu<strong>en</strong>tra <strong>en</strong><br />
examples\g<strong>en</strong>er<strong>al</strong>\graphs\g<strong>en</strong>graph.llb para <strong>en</strong>contrar un ejemplo <strong>de</strong> un gráfico que acepte<br />
este tipo <strong>de</strong> datos.<br />
Un gráfico <strong>de</strong> forma <strong>de</strong> onda <strong>de</strong> diagramas múltiples acepta un cluster <strong>de</strong> un v<strong>al</strong>or inici<strong>al</strong> x,<br />
<strong>de</strong> un v<strong>al</strong>or .x, y <strong>de</strong> un arreglo que cont<strong>en</strong>ga clusters. Cada cluster conti<strong>en</strong>e un arreglo <strong>de</strong><br />
puntos que conti<strong>en</strong>e los datos <strong>de</strong> y. Usted utiliza la función <strong>de</strong> Bundle (empaquetado) para<br />
empaquetar los arreglos <strong>en</strong> clusters, y usted utiliza la función <strong>de</strong> Build Array (construir<br />
arreglo) para construir los clusters resultantes <strong>en</strong> un arreglo. Usted también pue<strong>de</strong> utilizar el<br />
Build Cluster Array (construir arreglo <strong>de</strong> clusters), el cu<strong>al</strong> crea arreglos <strong>de</strong> clusters que<br />
conti<strong>en</strong><strong>en</strong> <strong>en</strong>tradas que usted especifica. Refiérase a (Xo, x, Y) Multi Plot 2 <strong>en</strong> el VI <strong>de</strong><br />
Waveform Graph que se <strong>en</strong>cu<strong>en</strong>tra <strong>en</strong> examples\g<strong>en</strong>er<strong>al</strong>\graphs\g<strong>en</strong>graph.llb para<br />
<strong>en</strong>contrar un ejemplo <strong>de</strong> un gráfico que acepte este tipo <strong>de</strong> datos.<br />
Single-Plot XY Graph (Grafica XY <strong>de</strong> Trazo Simple)<br />
Los gráficos XY <strong>de</strong> trazo simple aceptan un cluster que cont<strong>en</strong>ga un arreglo x y un arreglo<br />
y. El gráfico <strong>de</strong> XY también acepta un arreglo <strong>de</strong> puntos, <strong>en</strong> don<strong>de</strong> un punto es un cluster<br />
que conti<strong>en</strong>e un v<strong>al</strong>or <strong>de</strong> x y un v<strong>al</strong>or <strong>de</strong> y. Refiérase <strong>al</strong> VI <strong>de</strong> XY Graph <strong>en</strong><br />
examples\g<strong>en</strong>er<strong>al</strong>\graph\g<strong>en</strong>graph.llb para <strong>en</strong>contrar un ejemplo <strong>de</strong>l tipo <strong>de</strong> datos <strong>de</strong> los<br />
gráficos <strong>de</strong> XY <strong>de</strong> trazo simple.<br />
MultiPlot XY Graph (Grafica XY <strong>de</strong> diagramas múltiples)<br />
La Grafica XY <strong>de</strong> diagramas múltiples acepta un arreglo <strong>de</strong> diagramas, <strong>en</strong> don<strong>de</strong> un<br />
diagrama es un cluster que conti<strong>en</strong>e un arreglo x y un arreglo y. La Grafica XY <strong>de</strong><br />
diagramas múltiples también acepta un arreglo <strong>de</strong> clusters <strong>de</strong> diagramas, <strong>en</strong> don<strong>de</strong> una<br />
grafica es un arreglo <strong>de</strong> puntos. Un punto es un cluster que conti<strong>en</strong>e un v<strong>al</strong>or x y un v<strong>al</strong>or y.<br />
Refiérase <strong>al</strong> VI <strong>de</strong>l XY Graph <strong>en</strong>contrado <strong>en</strong> examples\g<strong>en</strong>er<strong>al</strong>\graph\g<strong>en</strong>graph.llb para<br />
<strong>en</strong>contrar un ejemplo <strong>de</strong> los tipos <strong>de</strong> datos <strong>de</strong>l Grafico XY <strong>de</strong> diagramas múltiples.<br />
60
Haga Clic Derecho <strong>en</strong> la grafica y seleccione Properties<br />
(propieda<strong>de</strong>s) para po<strong>de</strong>r person<strong>al</strong>izar interactivam<strong>en</strong>te<br />
Los Gráficos son indicadores muy po<strong>de</strong>rosos <strong>en</strong> LabVIEW. Pue<strong>de</strong>n ser<br />
<strong>al</strong>tam<strong>en</strong>te adaptables y pue<strong>de</strong>n ser usados para mostrar <strong>de</strong> forma concisa<br />
una gran cantidad <strong>de</strong> información.<br />
La pagina <strong>de</strong> propieda<strong>de</strong>s <strong>de</strong> las Graficas le permite mostrar las opciones<br />
<strong>de</strong> configuración, esc<strong>al</strong>a, <strong>curso</strong>res y muchas otras características <strong>de</strong> las<br />
gráficas.<br />
61
Tiempo De Completación Estimado: 20 minutos.<br />
Cree un VI como el que esta repres<strong>en</strong>tado arriba. El VI <strong>de</strong>be utilizar un Ciclo<br />
Mi<strong>en</strong>tras (While Loop) con 100 milisegundos <strong>de</strong> retraso para g<strong>en</strong>erar<br />
continuam<strong>en</strong>te formas <strong>de</strong> onda s<strong>en</strong>o y cuadradas y mostrarlas <strong>en</strong> un gráfico<br />
<strong>de</strong> forma <strong>de</strong> onda. Utilice el VI expreso Simulate Sign<strong>al</strong> Express VI <strong>de</strong> la<br />
p<strong>al</strong>eta Functions» Input para g<strong>en</strong>erar las señ<strong>al</strong>es. La <strong>en</strong>trada <strong>de</strong> la<br />
frecu<strong>en</strong>cia para cada función es elegida por el usuario.<br />
Cambie los colores, los artículos visibles, y los estilos <strong>de</strong> diagramado <strong>de</strong>l<br />
gráfico. Experim<strong>en</strong>te con <strong>al</strong>gunas <strong>de</strong> las opciones <strong>de</strong> <strong>curso</strong>r y <strong>de</strong> zoom<br />
disponibles.<br />
62
Haga click para adicionar notas.<br />
63
Una ca<strong>de</strong>na es una secu<strong>en</strong>cia <strong>de</strong> caracteres <strong>de</strong>splegables o no <strong>de</strong>splegables (ASCII).<br />
Las Ca<strong>de</strong>nas se usan frecu<strong>en</strong>tem<strong>en</strong>te para <strong>en</strong>viar comandos a instrum<strong>en</strong>tos, para<br />
proveer información acerca <strong>de</strong> pruebas (t<strong>al</strong>es como el nombre <strong>de</strong>l operador y la<br />
fecha), o para <strong>de</strong>splegar resultados a el usuario.<br />
Los Controles e indicadores <strong>de</strong> Ca<strong>de</strong>na se <strong>en</strong>cu<strong>en</strong>tran <strong>en</strong> la subp<strong>al</strong>eta Text Control<br />
o Text Indicator <strong>de</strong> la p<strong>al</strong>eta <strong>de</strong> Controles.<br />
Introduzca o cambie texto utilizando la herrami<strong>en</strong>ta <strong>de</strong> texto (Text Tool) y<br />
presionado con el mouse el control <strong>de</strong> ca<strong>de</strong>na (String Control).<br />
Las Ca<strong>de</strong>nas pue<strong>de</strong>n variar <strong>en</strong> su tamaño.<br />
Las Ca<strong>de</strong>nas <strong>de</strong> Indicadores y Controles pue<strong>de</strong>n t<strong>en</strong>er barras <strong>de</strong> movimi<strong>en</strong>to (Scroll<br />
Bars): Haga clic con el botón <strong>de</strong>recho <strong>de</strong>l mouse y seleccione Visible Items»<br />
Scrollbar. La barra <strong>de</strong> movimi<strong>en</strong>to no se activara si el Control o el Indicador no son<br />
lo sufici<strong>en</strong>tem<strong>en</strong>te gran<strong>de</strong>s.<br />
64
Estructura <strong>de</strong> Datos que agrupa datos juntos.<br />
Los Datos pue<strong>de</strong>n ser <strong>de</strong> difer<strong>en</strong>tes tipos.<br />
Semejante a una estructura (struct) <strong>en</strong> C++<br />
Los elem<strong>en</strong>tos <strong>de</strong>b<strong>en</strong> <strong>de</strong> ser ya sea, todos<br />
Controles o todos Indicadores<br />
Se pue<strong>de</strong> consi<strong>de</strong>rar como un conjunto <strong>de</strong><br />
<strong>al</strong>ambres agrupados <strong>en</strong> un cable.<br />
Los Clusters, agrupan compon<strong>en</strong>tes igu<strong>al</strong>es o <strong>de</strong>sigu<strong>al</strong>es juntos.<br />
Es equiv<strong>al</strong><strong>en</strong>te a un Record <strong>en</strong> Pasc<strong>al</strong> o una Struct <strong>en</strong> C.<br />
Los Compon<strong>en</strong>tes <strong>de</strong> los Clusters pue<strong>de</strong>n ser <strong>de</strong> difer<strong>en</strong>tes tipos <strong>de</strong> datos.<br />
Ejemplos:<br />
Información <strong>de</strong> Error Agrupando una señ<strong>al</strong> <strong>de</strong> error Booleano, un codigo<br />
<strong>de</strong> error numerico, y un ca<strong>de</strong>na <strong>de</strong> orig<strong>en</strong> <strong>de</strong> un error para especificar el<br />
error exacto.<br />
Información <strong>de</strong> Usuario Agrupando una ca<strong>de</strong>na indicando el nombre <strong>de</strong>l<br />
usuario y su numero <strong>de</strong> i<strong>de</strong>ntifiacion (ID) especificando el codigo <strong>de</strong><br />
seguridad.<br />
Todos los elem<strong>en</strong>tos <strong>de</strong> un Cluster <strong>de</strong>b<strong>en</strong> ser ya sea Indicadores o Controles. No se<br />
pue<strong>de</strong> t<strong>en</strong>er una Control <strong>de</strong> Ca<strong>de</strong>na y un Indicador Booleano.<br />
Los Clusters se pue<strong>de</strong>n consi<strong>de</strong>rar como un grupo <strong>de</strong> <strong>al</strong>ambres individu<strong>al</strong>es (datos)<br />
juntos <strong>en</strong> un cable (cluster).<br />
65
Demostrar como crear un cluster <strong>en</strong> el panel front<strong>al</strong> escogi<strong>en</strong>do Cluster <strong>de</strong>s<strong>de</strong> la<br />
p<strong>al</strong>eta Controls » All Controls » Array & Cluster.<br />
Esta opción le brinda una pre-forma (shell) parecida a la pre-forma obt<strong>en</strong>ida <strong>al</strong><br />
crear arreglos.<br />
Uno pue<strong>de</strong> cambiarle el tamaño a la pre-forma una vez esta se ha seleccionado.<br />
Haga clic <strong>de</strong>recho a<strong>de</strong>ntro <strong>de</strong> la pre-forma para añadir objetos <strong>de</strong> cu<strong>al</strong>quier tipo.<br />
Nota: Usted inclusive pue<strong>de</strong> t<strong>en</strong>er un cluster a<strong>de</strong>ntro <strong>de</strong> un cluster.<br />
El cluster se convierte <strong>en</strong> un Indicador o Control basado <strong>en</strong> el primer objeto que fue<br />
ingresado <strong>de</strong>ntro <strong>de</strong>l Grupo.<br />
Usted también pue<strong>de</strong> crear una constante <strong>de</strong> cluster <strong>en</strong> el diagrama <strong>de</strong> bloque<br />
escogi<strong>en</strong>do Cluster Constant <strong>de</strong> la p<strong>al</strong>eta Cluster.<br />
Esto le brinda una pre-forma (shell) <strong>de</strong> cluster vacía.<br />
Usted pue<strong>de</strong> darle cu<strong>al</strong>quier tamaño <strong>al</strong> cluster una vez ingresado.<br />
Pue<strong>de</strong> Introducir otras constantes <strong>de</strong>ntro <strong>de</strong> la pre-forma (Shell).<br />
Nota: Usted no pue<strong>de</strong> colocar termin<strong>al</strong>es para los objetos <strong>de</strong>l panel front<strong>al</strong> <strong>en</strong> una<br />
constante <strong>de</strong> cluster <strong>en</strong> el diagrama <strong>de</strong> bloques, ni tampoco pue<strong>de</strong> colocar<br />
constantes especi<strong>al</strong>es como el Tab o una Ca<strong>de</strong>na <strong>de</strong> caracteres vacías <strong>de</strong>ntro <strong>de</strong><br />
una pre-forma <strong>de</strong> cluster vacia.<br />
66
Están ubicadas <strong>en</strong> la subp<strong>al</strong>eta <strong>de</strong> Cluster <strong>de</strong> la<br />
p<strong>al</strong>eta Functions>>All functions.<br />
También pue<strong>de</strong> ser accesada haci<strong>en</strong>do clic con el<br />
botón <strong>de</strong>recho <strong>de</strong>l mouse <strong>en</strong> la termin<strong>al</strong> <strong>de</strong>l Grupo.<br />
Bundle<br />
(Agrupar)<br />
(Las etiquetas <strong>de</strong> la<br />
termin<strong>al</strong> reflejan los<br />
tipos <strong>de</strong> datos)<br />
Bundle by name<br />
(Agrupar por nombre)<br />
Función <strong>de</strong> Bundle (agrupación) Forma un cluster cont<strong>en</strong>i<strong>en</strong>do los objetos dados<br />
(explique el ejemplo).<br />
Función Bundle by Name (agrupe por nombre) Actu<strong>al</strong>iza v<strong>al</strong>ores <strong>de</strong> objetos<br />
loc<strong>al</strong>izados <strong>en</strong> grupos especificos (los objetos <strong>de</strong>b<strong>en</strong> t<strong>en</strong>er su propia clasificacion).<br />
Nota: Usted <strong>de</strong>be <strong>de</strong> t<strong>en</strong>er un cluster exist<strong>en</strong>te cableado a la termin<strong>al</strong> <strong>de</strong> <strong>en</strong> medio<br />
<strong>de</strong> la función para po<strong>de</strong>r utilizar Bundle by Name.<br />
67
Unbundled<br />
(separar)<br />
Unbundled by name<br />
(separar por nombre)<br />
Ejemplo <strong>de</strong> un<br />
Cluster separado<br />
(Unbundled Cluster)<br />
Función Unbundle (<strong>de</strong>sagrupar) Se utiliza para accesar a todos los objetos <strong>de</strong>l<br />
cluster.<br />
Función Unbundle by Name (<strong>de</strong>sagrupar por nombre) Se utiliza para accesar<br />
objetos específicos (uno o mas) <strong>en</strong> el cluster.<br />
Nota: Solam<strong>en</strong>te los objetos <strong>en</strong> el cluster que t<strong>en</strong>gan su propia marca (Label)<br />
pue<strong>de</strong>n ser accesados. Cuando se <strong>de</strong>sagrupe por nombre, haga clic <strong>en</strong> la termin<strong>al</strong><br />
con la herrami<strong>en</strong>ta <strong>de</strong> operación para escoger el elem<strong>en</strong>to que quiere accesar.<br />
La función Unbundle (<strong>de</strong>sagrupar) <strong>de</strong>be t<strong>en</strong>er exactam<strong>en</strong>te el mismo numero <strong>de</strong><br />
termin<strong>al</strong>es como se ti<strong>en</strong><strong>en</strong> elem<strong>en</strong>tos <strong>en</strong> el cluster. Añadi<strong>en</strong>do o Removi<strong>en</strong>do<br />
elem<strong>en</strong>tos <strong>en</strong> el cluster rompe cables <strong>en</strong> el diagrama.<br />
Usted también pue<strong>de</strong> obt<strong>en</strong>er las funciones <strong>de</strong> Bundle (agrupar), Unbundle<br />
(<strong>de</strong>sagrupar), Bundle by Name (agrupar por nombre), y Unbundle by Name<br />
(Desagrupar por Nombre) <strong>al</strong> hacer clic <strong>de</strong>recho con el mouse <strong>en</strong> la termin<strong>al</strong> <strong>de</strong>l<br />
cluster <strong>en</strong> el diagrama <strong>de</strong> bloques y eligi<strong>en</strong>do Cluster Tools (herrami<strong>en</strong>tas <strong>de</strong><br />
cluster) <strong>de</strong>l M<strong>en</strong>ú. Cuando usted escoge Cluster Tools las funciones Bundle<br />
(agrupar) y Unbundle (<strong>de</strong>sagrupar) automáticam<strong>en</strong>te conti<strong>en</strong><strong>en</strong> el numero correcto<br />
<strong>de</strong> termin<strong>al</strong>es. Las funciones Bundle by Name (agrupar por nombre) y Unbundle<br />
by Name (<strong>de</strong>sagrupar por nombre) aparec<strong>en</strong> con el primer elem<strong>en</strong>to <strong>de</strong>l Cluster.<br />
68
Los Errores <strong>de</strong> Cluster conti<strong>en</strong><strong>en</strong> la sigui<strong>en</strong>te información:<br />
Booleano (Boolean) Para reportar si surgió <strong>al</strong>gún error<br />
Enteros (Integer) Para reportar errores específicos <strong>de</strong> códigos<br />
Ca<strong>de</strong>na (String) Para brindar información acerca <strong>de</strong>l error<br />
Los clusters para errores son un medio po<strong>de</strong>roso para manejar errores.<br />
Los VI <strong>de</strong> adquisición <strong>de</strong> datos (DAQ VIs) las funciones <strong>de</strong> manejo <strong>de</strong> <strong>en</strong>tradas y<br />
s<strong>al</strong>idas <strong>de</strong> archivo (File I/O), los VI <strong>de</strong> networking, y muchos otros VI utilizan este<br />
método para pasar información acerca <strong>de</strong> errores <strong>en</strong>tre nodos.<br />
El cluster para errores conti<strong>en</strong>e los sigui<strong>en</strong>tes elem<strong>en</strong>tos:<br />
status, Un Booleano <strong>al</strong> que se le asigna un v<strong>al</strong>or verda<strong>de</strong>ro si ocurre <strong>al</strong>gún<br />
error.<br />
co<strong>de</strong>, Un v<strong>al</strong>or numerico <strong>al</strong> que se le asigna un numero <strong>de</strong> código<br />
correspondi<strong>en</strong>te <strong>al</strong> error que ha ocurrido.<br />
source, Una ca<strong>de</strong>na <strong>de</strong> caracteres que i<strong>de</strong>ntifica el VI <strong>en</strong> don<strong>de</strong> ocurrió el<br />
error.<br />
69
La información <strong>de</strong> un Error es transmitida <strong>de</strong> un subVI <strong>al</strong> sigui<strong>en</strong>te<br />
Si un Error ocurre <strong>en</strong> un subVI, todos los subVI subsecu<strong>en</strong>tes no<br />
serán ejecutados <strong>de</strong> la manera usu<strong>al</strong><br />
Los errores <strong>de</strong> Cluster conti<strong>en</strong><strong>en</strong> todas las condiciones <strong>de</strong>l Error<br />
Manejo automático <strong>de</strong> Errores<br />
Errores <strong>de</strong> Cluster<br />
Los clusters para errores son útiles para <strong>de</strong>terminar la ejecución <strong>de</strong> un subVI cuando<br />
se <strong>en</strong>cu<strong>en</strong>tra un error.<br />
Note también que los clusters para errores pue<strong>de</strong>n ser útiles para <strong>de</strong>terminar el flujo<br />
<strong>de</strong>l programa <strong>de</strong>bido <strong>al</strong> paradigma <strong>de</strong> programación <strong>de</strong>l flujo <strong>de</strong> datos. Esto pue<strong>de</strong><br />
ser útil especi<strong>al</strong>m<strong>en</strong>te <strong>al</strong> configurar un muestreo <strong>en</strong> mas <strong>de</strong> una tarjeta <strong>de</strong><br />
adquisición <strong>de</strong> datos (DAQ board) simultáneam<strong>en</strong>te.<br />
La función <strong>de</strong> Unbundle by Name (<strong>de</strong>sagrupar por nombre) muestra los<br />
compon<strong>en</strong>tes <strong>de</strong> un cluster <strong>de</strong> error.<br />
70
En la subp<strong>al</strong>eta <strong>de</strong> estructura <strong>de</strong> las p<strong>al</strong>eta <strong>de</strong> funciones.<br />
Encerrar los nodos o arrastrarlos hacia a<strong>de</strong>ntro <strong>de</strong> la<br />
estructura.<br />
Colocados como un juego <strong>de</strong> cartas (naipes), solo un caso<br />
es visible a la vez.<br />
Functions >> Execution control<br />
Las estructuras <strong>de</strong> caso nos permit<strong>en</strong> elegir un <strong>curso</strong> <strong>de</strong> acción<br />
<strong>de</strong>p<strong>en</strong>di<strong>en</strong>do <strong>de</strong>l v<strong>al</strong>or <strong>de</strong> <strong>en</strong>trada.<br />
En la subp<strong>al</strong>eta <strong>de</strong> Execution Control (control <strong>de</strong> ejecución) <strong>de</strong> la<br />
p<strong>al</strong>eta <strong>de</strong> Functions (funciones).<br />
Es semejante a los <strong>en</strong>unciados if-th<strong>en</strong>-else (si-<strong>en</strong>tonces-<strong>de</strong> otro modo)<br />
<strong>en</strong> otros l<strong>en</strong>guajes.<br />
Como una baraja <strong>de</strong> naipes (cartas). Solo se pue<strong>de</strong> ver un caso a la vez.<br />
Ejemplo 1: Entrada Booleana: Caso simple if-th<strong>en</strong> (si-<strong>en</strong>tonces). Si el<br />
v<strong>al</strong>or booleano <strong>de</strong> la <strong>en</strong>trada es verda<strong>de</strong>ro (TRUE), el caso verda<strong>de</strong>ro se<br />
ejecutara; <strong>de</strong> otra manera el caso f<strong>al</strong>so (FALSE) se ejecutara.<br />
Ejemplo 2: V<strong>al</strong>or numérico <strong>de</strong> <strong>en</strong>trada. El v<strong>al</strong>or <strong>de</strong> <strong>en</strong>trada <strong>de</strong>termina<br />
cu<strong>al</strong> caso (caja) se ejecutara. Si esta fuera <strong>de</strong> rango <strong>de</strong> los casos<br />
LabVIEW escogerá el caso por omisión (DEFAULT).<br />
Ejemplo 3: Entrada <strong>de</strong> ca<strong>de</strong>na <strong>de</strong> caracteres. Como el caso <strong>de</strong> los<br />
v<strong>al</strong>ores numéricos <strong>de</strong> <strong>en</strong>trada, el v<strong>al</strong>or <strong>de</strong> la ca<strong>de</strong>na <strong>de</strong> caracteres<br />
<strong>de</strong>termina cu<strong>al</strong> caso (caja) se ejecutara. Haga hincapié <strong>en</strong> que el v<strong>al</strong>or<br />
<strong>de</strong>be <strong>de</strong> ajustarse exactam<strong>en</strong>te <strong>al</strong> <strong>de</strong> los casos o sino la estructura<br />
ejecutara el caso por omisión.<br />
72
Tiempo estimado <strong>de</strong> completación: 20 minutos.<br />
Cree un VI que c<strong>al</strong>cule la raíz cuadrada <strong>de</strong> un numero. Si el numero es mayor o<br />
igu<strong>al</strong> a cero, el VI <strong>de</strong>be <strong>de</strong>volver el v<strong>al</strong>or <strong>de</strong> la raíz cuadrada y no g<strong>en</strong>erar ningún<br />
error. Si el numero es m<strong>en</strong>or que cero el programa <strong>de</strong>be <strong>de</strong>volver un resultado con<br />
v<strong>al</strong>or <strong>de</strong> -9999.90 e insertar un error <strong>de</strong>ntro <strong>de</strong>l cluster para errores.<br />
Utilice un Case Structure (estructura <strong>de</strong> casos) <strong>de</strong>s<strong>de</strong> la función Greater or Equ<strong>al</strong><br />
To 0 (mayor o igu<strong>al</strong> a cero) <strong>de</strong> la p<strong>al</strong>eta numérica para <strong>de</strong>terminar si el VI va a<br />
c<strong>al</strong>cular la raíz cuadrada o a g<strong>en</strong>erara un error. El Caso F<strong>al</strong>so mostrado arriba es<br />
el caso <strong>de</strong> error. Utilice una funcion Bundle by Name <strong>de</strong> la p<strong>al</strong>eta <strong>de</strong> cluster para<br />
insertar una constante Booleana, Numerica, y <strong>de</strong> Ca<strong>de</strong>na <strong>de</strong> Carateres <strong>en</strong> los objetos<br />
<strong>de</strong> estado (status), codigo (co<strong>de</strong>) y orig<strong>en</strong> (source) respectivam<strong>en</strong>te. Los v<strong>al</strong>ores <strong>de</strong><br />
las constantes <strong>de</strong>beran ser Verda<strong>de</strong>ros (True), 5008( un codigo <strong>de</strong> error <strong>de</strong>finido<br />
arbitrariam<strong>en</strong>te), y Raiz Cuadrada.vi ( El nombre <strong>de</strong>l programa que g<strong>en</strong>ero el<br />
error ). Cablee el nuevo cluster <strong>en</strong> el indicador <strong>de</strong> Error <strong>de</strong> S<strong>al</strong>ida (Error Out), y un<br />
v<strong>al</strong>or constante <strong>de</strong> -9999.90 <strong>al</strong> indicador <strong>de</strong> la raiz cuadrada. En el caso<br />
Verda<strong>de</strong>ro , que no se esta mostrando, <strong>de</strong>beria <strong>de</strong> cablearse simplem<strong>en</strong>te el control<br />
<strong>de</strong> error <strong>de</strong> <strong>en</strong>trada directam<strong>en</strong>te <strong>al</strong> indicador <strong>de</strong> error <strong>de</strong> s<strong>al</strong>ida a traves <strong>de</strong>l caso. El<br />
v<strong>al</strong>or <strong>de</strong> <strong>en</strong>trada <strong>de</strong> la raiz cuadrada <strong>de</strong>be ir cableado hacia la funcion Raiz<br />
Cuadrada (Square Root) <strong>de</strong> la p<strong>al</strong>eta numerica, y el resultado <strong>de</strong>beria ser cableado<br />
afuera <strong>de</strong>l caso hacia el indicador <strong>de</strong> la raiz cuadrada.<br />
Indique que este VI pue<strong>de</strong> ser fácilm<strong>en</strong>te configurado como un subVI para un<br />
código <strong>de</strong> programación mas gran<strong>de</strong>, y que la búsqueda <strong>de</strong> problemas<br />
(troubleshooting) y <strong>de</strong>puración es mas fácil cuando los clusters para errores son<br />
73
En la subp<strong>al</strong>eta <strong>de</strong> control <strong>de</strong> ejecución (Execution<br />
Control) <strong>de</strong> la p<strong>al</strong>eta <strong>de</strong> funciones.<br />
Ejecuta diagramas secu<strong>en</strong>ci<strong>al</strong>m<strong>en</strong>te.<br />
Presionar botón <strong>de</strong>recho <strong>de</strong>l mouse para agregar un<br />
nuevo cuadro (frame).<br />
En un l<strong>en</strong>guaje basado <strong>en</strong> texto ,las <strong>de</strong>claraciones <strong>de</strong>l programa se ejecutan <strong>en</strong> el<br />
or<strong>de</strong>n <strong>en</strong> que aparec<strong>en</strong>. En un flujo <strong>de</strong> datos, un nodo se ejecuta cuando los datos<br />
están disponibles <strong>en</strong> todas sus termin<strong>al</strong>es <strong>de</strong> <strong>en</strong>trada.<br />
Algunas veces es difícil <strong>de</strong>terminar el or<strong>de</strong>n exacto <strong>de</strong> ejecución. A m<strong>en</strong>udo, ciertos<br />
ev<strong>en</strong>tos <strong>de</strong>b<strong>en</strong> suce<strong>de</strong>r antes que otros. Cuando usted necesite controlar el or<strong>de</strong>n <strong>de</strong><br />
la ejecución <strong>de</strong>l código <strong>en</strong> su diagrama <strong>de</strong> bloques, usted pue<strong>de</strong> utilizar una<br />
Sequ<strong>en</strong>ce Structure (estructura <strong>de</strong> secu<strong>en</strong>cia).<br />
Estructura <strong>de</strong> Secu<strong>en</strong>cia: Usada para controlar el or<strong>de</strong>n <strong>en</strong> que los nodos <strong>en</strong> un<br />
diagrama se ejecutaran.<br />
In la p<strong>al</strong>eta <strong>de</strong> Execution Control (control <strong>de</strong> ejecución).<br />
Luce como un pedazo <strong>de</strong> rollo <strong>de</strong> película.<br />
Utilizada para ejecutar diagramas secu<strong>en</strong>ci<strong>al</strong>m<strong>en</strong>te.<br />
Hacer clic <strong>de</strong>recho con el mouse <strong>en</strong> los bor<strong>de</strong>s para crear un nuevo cuadro.<br />
74
En la subp<strong>al</strong>eta <strong>de</strong> Estructuras (Structures).<br />
Implem<strong>en</strong>ta ecuaciones complicadas.<br />
Variables creadas <strong>en</strong> los márg<strong>en</strong>es<br />
Nombres <strong>de</strong> variables son s<strong>en</strong>sibles (mayúsculas/minúsculas)<br />
Cada <strong>de</strong>claración <strong>de</strong>be <strong>de</strong> terminar con un punto y coma(;)<br />
La v<strong>en</strong>tana <strong>de</strong> ayuda muestra las funciones disponibles.<br />
Note el Punto y coma<br />
Algunas veces es preferible programar expresiones matemáticas con funciones<br />
basadas <strong>en</strong> texto, <strong>en</strong> lugar <strong>de</strong> hacerlo con iconos (los que pue<strong>de</strong>n tomar mucho<br />
espacio <strong>en</strong> el diagrama).<br />
Nodo <strong>de</strong> Formula: Nos permite implem<strong>en</strong>tar ecuaciones complicadas usando<br />
instrucciones basadas <strong>en</strong> texto.<br />
Loc<strong>al</strong>izada <strong>en</strong> la subp<strong>al</strong>eta <strong>de</strong> Structures (estructuras).<br />
La cajas pue<strong>de</strong>n cambiar <strong>de</strong> tamaño para introducir formulas <strong>al</strong>gebraicas<br />
directam<strong>en</strong>te a los diagramas <strong>de</strong> bloque.<br />
Para agregar variables, se presiona el botón <strong>de</strong>recho <strong>de</strong>l mouse y se escoge<br />
la opción <strong>de</strong> agregar <strong>en</strong>trada (Add Input) o agregar s<strong>al</strong>ida (Add Output).<br />
Hay que nombrar las variables <strong>de</strong> la misma manera <strong>en</strong> que serán usadas <strong>en</strong><br />
la formula. (Los nombres son s<strong>en</strong>sibles a capit<strong>al</strong>ización)<br />
Las <strong>de</strong>claraciones <strong>de</strong>b<strong>en</strong> terminar con un punto y coma (;)<br />
Al usar varias formulas <strong>en</strong> un solo nodo <strong>de</strong> formula, cada variable asignada<br />
(las que aparec<strong>en</strong> <strong>en</strong> la parte izquierda <strong>de</strong> cada formula) <strong>de</strong>b<strong>en</strong> <strong>de</strong> t<strong>en</strong>er una<br />
termin<strong>al</strong> <strong>de</strong> s<strong>al</strong>ida <strong>en</strong> el nodo <strong>de</strong> formula. Sin embargo, estas termin<strong>al</strong>es <strong>de</strong><br />
s<strong>al</strong>ida no necesitan ser cableadas.<br />
Compare los ejemplos <strong>en</strong> la diapositiva.<br />
75
LabVIEW ofrece muchas opciones para imprimir los VIs. Des<strong>de</strong> la forma estándar<br />
File » Print m<strong>en</strong>u, el usuario pue<strong>de</strong> imprimir una copia <strong>de</strong> su VI, o pu<strong>de</strong> g<strong>en</strong>erar<br />
una copia para guardarla <strong>en</strong> un archivo o publicarla.<br />
Utilizando el VI Print Panel (Impresión <strong>de</strong> Panel) <strong>en</strong> LabVIEW le permite <strong>al</strong><br />
usuario imprimir programáticam<strong>en</strong>te los resultados <strong>de</strong> una prueba. Los VIs también<br />
pue<strong>de</strong>n ser configurados para imprimir automáticam<strong>en</strong>te inmediatam<strong>en</strong>te <strong>de</strong>spués<br />
<strong>de</strong> cada ejecución. Esta opción es colocada <strong>en</strong> VI Properties » Print Options.<br />
Para aplicaciones mas avanzadas, LabVIEW ti<strong>en</strong>e herrami<strong>en</strong>tas que g<strong>en</strong>eran<br />
reportes que le permit<strong>en</strong> <strong>al</strong> usuario crear reportes person<strong>al</strong>izados para aplicación<br />
individu<strong>al</strong>es.<br />
LabVIEW 7.0 incluye un VI Express llamado Report. Este VI g<strong>en</strong>era un reporte<br />
preformado que conti<strong>en</strong>e la docum<strong>en</strong>tación <strong>de</strong>l VI, datos que el VI regresa y<br />
reportes <strong>de</strong> propieda<strong>de</strong>s, t<strong>al</strong>es como el autor, la compañía y el numero <strong>de</strong> paginas.<br />
77
Al abrir VI s properties (propieda<strong>de</strong>s <strong>de</strong>l VI) un <strong>de</strong>sarrollador pue<strong>de</strong> añadir<br />
docum<strong>en</strong>tacion a su VI. La docum<strong>en</strong>tacion colocada <strong>en</strong> el Description field (espacio<br />
para la <strong>de</strong>scripcion) <strong>de</strong> la v<strong>en</strong>tana <strong>de</strong> docum<strong>en</strong>tacion <strong>de</strong>l VI es moestrada <strong>en</strong><br />
Context Help (ayuda <strong>en</strong> contexto), y se imprime con el VI.<br />
Si un usuario ti<strong>en</strong>e una aplicación que esta si<strong>en</strong>do <strong>de</strong>sarrollada continuam<strong>en</strong>te, el o<br />
ella pue<strong>de</strong> seguir los cambios <strong>en</strong> el <strong>de</strong>sarrollo con Revision History (histori<strong>al</strong> <strong>de</strong><br />
revisiones), también <strong>en</strong>contrado <strong>en</strong> VI Properties.<br />
Cu<strong>al</strong>quier control o indicador <strong>en</strong> el Panel Front<strong>al</strong> pue<strong>de</strong> ser docum<strong>en</strong>tado <strong>al</strong> hacer<br />
clic <strong>de</strong>recho con el mouse y elegir Description and Tip (<strong>de</strong>scipcion y<br />
suger<strong>en</strong>cia ) La informacion <strong>de</strong> <strong>de</strong>scipcion aparece <strong>en</strong> el m<strong>en</strong>u Context Help<br />
(ayuda <strong>en</strong> contexto) cuando un usuario pasa el <strong>curso</strong>r sobre el objeto, y la<br />
informacion <strong>de</strong> sugerecia es mostrada <strong>en</strong> una pequeña v<strong>en</strong>tana pegada <strong>al</strong> <strong>curso</strong>r<br />
cuando el usuario pausa el movimi<strong>en</strong>to <strong>de</strong>l <strong>curso</strong>r sobre el objeto.<br />
Al igu<strong>al</strong> que los com<strong>en</strong>tarios <strong>en</strong> un l<strong>en</strong>guaje basado <strong>en</strong> texto, el <strong>de</strong>sarrollador podría<br />
querer explicar una porción <strong>de</strong> su código, o proveer direcciones <strong>en</strong> el panel <strong>de</strong><br />
front<strong>al</strong>. Cu<strong>al</strong>quiera <strong>de</strong> estas necesida<strong>de</strong>s pue<strong>de</strong> ser cumplida <strong>al</strong> usar la herrami<strong>en</strong>ta<br />
<strong>de</strong> etiquetado (labeling tool) para crear una caja <strong>de</strong> texto libre con tantas<br />
instrucciones o explicaciones como sean necesarias.<br />
78
Usted pue<strong>de</strong> estructurar los VIs <strong>de</strong>p<strong>en</strong>di<strong>en</strong>do <strong>de</strong> la funcion<strong>al</strong>idad que <strong>de</strong>sea que<br />
t<strong>en</strong>gan. En esta sección discutiremos <strong>al</strong>gunas <strong>de</strong> las arquitecturas <strong>de</strong> VI mas<br />
comunes, a si como sus v<strong>en</strong>tajas/<strong>de</strong>sv<strong>en</strong>tajas: simple, g<strong>en</strong>er<strong>al</strong>, maquina <strong>de</strong> estado<br />
(state machine).<br />
79
Arquitectura <strong>de</strong> VI Simple<br />
Cuando se hac<strong>en</strong> pruebas <strong>de</strong> laboratorio rápidas, no se necesita una arquitectura<br />
complicada. Su programa pue<strong>de</strong> consistir <strong>de</strong> un solo VI que toma una medición,<br />
hace cálculos, y ya sea <strong>de</strong>spliega los resultados o los guarda <strong>en</strong> el disco. La<br />
medición pue<strong>de</strong> ser iniciada cuando el usuario le da clic a la flecha <strong>de</strong> inicio (run<br />
arrow).<br />
Aparte se ser usada para aplicaciones simples, esta arquitectura es usada para<br />
compon<strong>en</strong>tes funcion<strong>al</strong>es <strong>de</strong>ntro <strong>de</strong> aplicaciónes mas gran<strong>de</strong>s. Usted pue<strong>de</strong><br />
convertir estos VIs simples <strong>en</strong> subVIs que son utilizados como compon<strong>en</strong>tes <strong>de</strong> una<br />
apicacion mas gran<strong>de</strong>.<br />
80
Arquitectura <strong>de</strong> un VI G<strong>en</strong>er<strong>al</strong><br />
G<strong>en</strong>er<strong>al</strong>m<strong>en</strong>te <strong>al</strong> diseñar una aplicación se sigu<strong>en</strong> tres pasos:<br />
Inicio (startup) Esta area se usa para inici<strong>al</strong>izar el hardware, leer información <strong>de</strong><br />
configuración <strong>de</strong> archivos o preguntar <strong>al</strong> usuario la loc<strong>al</strong>ización <strong>de</strong> datos <strong>de</strong><br />
archivos.<br />
Aplicación Princip<strong>al</strong> (main application) G<strong>en</strong>er<strong>al</strong>m<strong>en</strong>te consiste <strong>de</strong> por lo m<strong>en</strong>os<br />
un ciclo que se repite hasta que el usuario <strong>de</strong>cida s<strong>al</strong>ir <strong>de</strong>l programa, o el programa<br />
termina <strong>de</strong>bido a otras razones como la completacion <strong>de</strong> una <strong>en</strong>trada/s<strong>al</strong>ida (I/O)<br />
Apagado (shutdown) Esta seccion usu<strong>al</strong>m<strong>en</strong>te se <strong>en</strong>carga <strong>de</strong> cerrar los archivos,<br />
escribir datos <strong>de</strong> configuracion <strong>al</strong> disco o reestablecer los datos <strong>de</strong> <strong>en</strong>trada/s<strong>al</strong>ida<br />
(I/O) a su estado pre<strong>de</strong>terminado.<br />
Para aplicaciones simples, el ciclo <strong>de</strong> la aplicación princip<strong>al</strong> pue<strong>de</strong> ser bastante<br />
directo. Cuado se ti<strong>en</strong>e interfaces <strong>de</strong> usuario complicadas o ev<strong>en</strong>tos múltiples<br />
(acción <strong>de</strong> usuario, accionami<strong>en</strong>tos <strong>de</strong> <strong>en</strong>tradas/s<strong>al</strong>idas, etc.), esta sección pue<strong>de</strong><br />
volverse mas complicada.<br />
81
Pasos:<br />
0: Inicio (Startup)<br />
1: Ocio (Idle)<br />
2: Ev<strong>en</strong>to 1<br />
3: Ev<strong>en</strong>to 2<br />
4: Cierre (Shutdown)<br />
Arquitectura <strong>de</strong> un VI <strong>de</strong> Maquina <strong>de</strong> Estado<br />
Usted pue<strong>de</strong> hacer sus diagramas mas compactos con el uso <strong>de</strong> una estructura <strong>de</strong> caso simple para<br />
manejar todos sus ev<strong>en</strong>tos. En este mo<strong>de</strong>lo usted escanea (scan) la lista <strong>de</strong> posibles ev<strong>en</strong>tos, o<br />
estados, y luego correlaciona (map) estos a un caso. Para el VI mostrado arriba, los estados posibles<br />
son inicio (startup), ocio (idle), ev<strong>en</strong>to 1, ev<strong>en</strong>to2 y apagado (shutdown). Estos estados se <strong>en</strong>cu<strong>en</strong>tran<br />
guardados <strong>en</strong> una constante <strong>en</strong>umerada. Cada estado ti<strong>en</strong>e su propio caso <strong>en</strong> el lugar que usted<br />
coloque los nodos apropiados. Mi<strong>en</strong>tras se ejecuta un caso, el sigui<strong>en</strong>te caso es <strong>de</strong>terminado por el<br />
resultado actu<strong>al</strong>. El sigui<strong>en</strong>te caso que se ejecutara es guardado <strong>en</strong> el registro <strong>de</strong> <strong>de</strong>splazami<strong>en</strong>to<br />
(shift register). Si ocurre un error <strong>en</strong> cu<strong>al</strong>quier estado, el caso <strong>de</strong> apagado (shutdown) el llamado.<br />
La v<strong>en</strong>taja <strong>de</strong> este mo<strong>de</strong>lo es que su diagrama se pue<strong>de</strong> reducirse significativam<strong>en</strong>te (izquierda a<br />
<strong>de</strong>recha), haci<strong>en</strong>do que sea mas fácil <strong>de</strong> lee y <strong>de</strong>purar. Una <strong>de</strong>sv<strong>en</strong>taja <strong>de</strong> la estructura <strong>de</strong> secu<strong>en</strong>cia<br />
es que no pue<strong>de</strong> s<strong>al</strong>tarse o s<strong>al</strong>irse <strong>de</strong> un caso. Este método resuelve ese problema ya que cada caso<br />
<strong>de</strong>termina cu<strong>al</strong> será el próximo caso que se ejecutara.<br />
Una <strong>de</strong>sv<strong>en</strong>taja <strong>de</strong> esta técnica es que con la arquitectura simple se pue<strong>de</strong>n per<strong>de</strong>r ev<strong>en</strong>tos. Si dos<br />
ev<strong>en</strong>tos ocurr<strong>en</strong> <strong>al</strong> mismo tiempo, este mo<strong>de</strong>lo maneja solo el primero, y el segundo se pier<strong>de</strong>. Esto<br />
pue<strong>de</strong> conducir a errores que son difíciles <strong>de</strong> <strong>de</strong>purar porque solo ocurr<strong>en</strong> ocasion<strong>al</strong>m<strong>en</strong>te. Exist<strong>en</strong><br />
versiones mas complejas <strong>de</strong> la Arquitectura <strong>de</strong>l VI <strong>de</strong> la Maquina <strong>de</strong> Estado que conti<strong>en</strong>e código<br />
extra para construir un queue <strong>de</strong> ev<strong>en</strong>tos (estados) <strong>de</strong> manera que usted no pierda ningún ev<strong>en</strong>to.<br />
82
Tiempo estimado <strong>de</strong> duración: 25 minutos.<br />
En este ejercicio crearemos un VI usando la arquitectura <strong>de</strong> Maquina <strong>de</strong> Estado. El<br />
VI t<strong>en</strong>drá un estado <strong>de</strong> ocio (idle), <strong>en</strong> don<strong>de</strong> espera por <strong>en</strong>tradas. Cuando el usuario<br />
presiona un botón, el VI se ira <strong>al</strong> estado 1 (State 1). El estado 1 g<strong>en</strong>era una caja <strong>de</strong><br />
di<strong>al</strong>ogo que le permite <strong>al</strong> usuario proce<strong>de</strong>r a ir <strong>al</strong> estado 2 (State 2) o volver a<br />
empezar. Des<strong>de</strong> el estado 2 el usuario pue<strong>de</strong> <strong>de</strong>cidir cerrar el programa o iniciar<br />
nuevam<strong>en</strong>te.<br />
En lugar <strong>de</strong> empezar <strong>de</strong>s<strong>de</strong> cero, utilizaremos una Plantilla <strong>de</strong> VI para crear nuestra<br />
maquina <strong>de</strong> estado. Des<strong>de</strong> el File m<strong>en</strong>u, <strong>en</strong> lugar <strong>de</strong> seleccionar New VI, seleccione<br />
New , y haga clic <strong>en</strong> Start from template. Busque \Program Files\Nation<strong>al</strong><br />
Instrum<strong>en</strong>ts\LabVIEW 6.1\templates\State Machine.vit, Y abr<strong>al</strong>o. Esto abrira una<br />
plantilla simple <strong>de</strong> maquina <strong>de</strong> estado utilizando ca<strong>de</strong>nas <strong>de</strong> caracteres para<br />
controlar el estado. Examine la plantilla, y guar<strong>de</strong>la <strong>en</strong> otro directorio antes <strong>de</strong><br />
empezar a trabajar <strong>en</strong> ella.<br />
El primer estado que haremos es el <strong>de</strong> inici<strong>al</strong>ización. Note que este estado ya ha<br />
sido creado para nosotros, y es el estado pre<strong>de</strong>terminado (<strong>de</strong>fault). En el caso <strong>de</strong><br />
inici<strong>al</strong>ización, coloque un One Button Di<strong>al</strong>og (Functions » Time & Di<strong>al</strong>og), y<br />
cablee Initi<strong>al</strong>ized. Clic OK para proce<strong>de</strong>r. <strong>en</strong> la termin<strong>al</strong> <strong>de</strong> m<strong>en</strong>sajes. Reemplace<br />
el texto Next State con Idle .<br />
83
Haga clic <strong>de</strong>recho <strong>en</strong> la estructura <strong>de</strong> casos, escoja Add Case After, y déle el<br />
nombre <strong>de</strong> Idle . D<strong>en</strong>tro <strong>de</strong>l caso Idle, coloque una segunda estructura <strong>de</strong> caso.<br />
Cablee un Booleano llamado Begin Test a la termin<strong>al</strong> <strong>de</strong> selección <strong>de</strong> la<br />
estructura <strong>de</strong> caso anidada, y cablee una constante <strong>de</strong> ca<strong>de</strong>na <strong>de</strong> caracteres con el<br />
v<strong>al</strong>or Test <strong>de</strong> el caso verda<strong>de</strong>ro a el registro <strong>de</strong> <strong>de</strong>splazami<strong>en</strong>to (Shift register).<br />
Esta configuracion mant<strong>en</strong>dra la maquina <strong>de</strong> estados <strong>en</strong> el estado Idle hasta que el<br />
usuario proceda a presionar el boton para iniciar la prueba. Haga clic <strong>de</strong>recho <strong>en</strong> el<br />
tunel <strong>de</strong> s<strong>al</strong>ida <strong>de</strong>l Booleano y escoja Create » Constant. Cambie el v<strong>al</strong>or constante<br />
a True (verda<strong>de</strong>ro).<br />
Haga clic <strong>de</strong>recho <strong>en</strong> la estructura princip<strong>al</strong> y adicione otro caso. Llame a este caso<br />
Test . En el caso Test, coloque un Two Button Di<strong>al</strong>og, un boton doble <strong>de</strong> di<strong>al</strong>ogo,<br />
(Functions » Time & Di<strong>al</strong>og). Conecte el Texto The test has run. Click OK to quit,<br />
Cancel to test again. con la termin<strong>al</strong> <strong>de</strong> m<strong>en</strong>saje. Coloque otra estructura <strong>de</strong> caso<br />
a<strong>de</strong>ntro <strong>de</strong>l caso Test, y conecte T button? la s<strong>al</strong>ida <strong>de</strong> el Two Button Di<strong>al</strong>og con<br />
la termin<strong>al</strong> seleccionada. Haga una conexión <strong>de</strong>l v<strong>al</strong>or Idle <strong>de</strong>s<strong>de</strong> el caso f<strong>al</strong>so<br />
hasta el registro <strong>de</strong> <strong>de</strong>splazami<strong>en</strong>to (Shift register), y una conexioncon costante<br />
Booleana Verda<strong>de</strong>ra con la termin<strong>al</strong> <strong>de</strong>l ciclo mi<strong>en</strong>tras (while loop). El caso<br />
Verda<strong>de</strong>ro <strong>de</strong>bera <strong>de</strong> cont<strong>en</strong>er una ca<strong>de</strong>na <strong>de</strong> caracteres constante vacia, y un v<strong>al</strong>or<br />
Boleano F<strong>al</strong>so conectado con la condicion <strong>de</strong> terminacion. Esto terminara el<br />
programa si el usuario presiona OK, y regresara <strong>al</strong> estado idle (ocio) si el usuario<br />
presiona Cancel.<br />
84
En LabVIEW, una opción llamada panel front<strong>al</strong> remoto le permite <strong>al</strong> usuario<br />
observar y controlar el panel front<strong>al</strong> <strong>de</strong> un VI remotam<strong>en</strong>te <strong>de</strong>s<strong>de</strong> LabVIEW o un<br />
navegador sin necesidad <strong>de</strong> programación. El usuario pue<strong>de</strong> correr una aplicación o<br />
revisar el progreso <strong>de</strong>s<strong>de</strong> cu<strong>al</strong>quier lugar. A<strong>de</strong>más difer<strong>en</strong>tes usuarios <strong>en</strong> difer<strong>en</strong>tes<br />
lugares pue<strong>de</strong>n t<strong>en</strong>er acceso simultaneo <strong>al</strong> VI.<br />
Los usuarios remotos pue<strong>de</strong>n observar el panel front<strong>al</strong> <strong>en</strong> vivo (<strong>en</strong> tiempo re<strong>al</strong>),<br />
<strong>en</strong> lugar <strong>de</strong> imág<strong>en</strong>es estáticas. Pue<strong>de</strong>n existir múltiples cli<strong>en</strong>tes observando el<br />
mismo panel front<strong>al</strong>. Sin embargo, solo un cli<strong>en</strong>te pue<strong>de</strong> controlar el panel front<strong>al</strong> a<br />
la vez.<br />
85
Tools » Web Publishing Tool<br />
Clic S<strong>al</strong>var a Disco y el<br />
VI es embebido a un<br />
archivo HTML<br />
Después que el<br />
archivo a sido grabado,<br />
pue<strong>de</strong> ser reabierto y<br />
person<strong>al</strong>izado <strong>en</strong><br />
cu<strong>al</strong>quier editor HTML<br />
Para incrustar su VI <strong>en</strong> una pagina web, simplem<strong>en</strong>te abra la herrami<strong>en</strong>ta <strong>de</strong><br />
publicación web (Web Publishing Tool) <strong>en</strong> herrami<strong>en</strong>tas <strong>de</strong>l m<strong>en</strong>ú. Web Publishing<br />
Tool crea un simple archivo html con un panel front<strong>al</strong> incrustado <strong>en</strong> el. Con esta<br />
herrami<strong>en</strong>ta usted pue<strong>de</strong> crear un titulo y colocar texto antes y <strong>de</strong>spués <strong>de</strong> colocar el<br />
panel front<strong>al</strong>. Una vez creado el archivo html, se pue<strong>de</strong> observar <strong>en</strong> un navegador<br />
web y ser grabado <strong>al</strong> disco. S<strong>al</strong>var el archivo coloca el html <strong>en</strong> su directorio www<br />
<strong>de</strong> LabVIEW, que es el pre<strong>de</strong>terminado para el servidor web <strong>de</strong> LabVIEW. Usted<br />
pue<strong>de</strong> iniciar su servidor web <strong>de</strong>s<strong>de</strong> Web Publishing Tool o <strong>de</strong>s<strong>de</strong> Tools »<br />
Options » Web Server : Configuration. (Nota: <strong>en</strong> Tools » Options m<strong>en</strong>u usted<br />
tambi<strong>en</strong> pue<strong>de</strong> configurar el <strong>de</strong>recho <strong>de</strong> acceso y VIs expuestos para su servidor<br />
web.<br />
Si usted <strong>de</strong>sea person<strong>al</strong>izar su pagina web mas <strong>al</strong>lá <strong>de</strong> lo que provee la herrami<strong>en</strong>ta<br />
<strong>de</strong> publicación web (Web Publishing Too)l, simplem<strong>en</strong>te abra el archivo html <strong>en</strong><br />
otro editor <strong>de</strong> html, y person<strong>al</strong>ice <strong>al</strong>re<strong>de</strong>dor <strong>de</strong>l código <strong>de</strong>l panel embebido para<br />
LabVIEW.<br />
86
Para mas información <strong>en</strong> cuanto a paneles front<strong>al</strong>es remotos, visite NI Developer<br />
Zone (zona <strong>de</strong> <strong>de</strong>sarrollo <strong>de</strong> NI), zone.ni.com.<br />
Remote Panels in LabVIEW -- Distributed Application Developm<strong>en</strong>t (Panel<br />
Remoto <strong>en</strong> LabVIEW Desarrollo <strong>de</strong> Aplicaciones Distribuidas)<br />
http://zone.ni.com/<strong>de</strong>vzone/insights.nsf/2d17d611efb58b22862567a9006ffe76/8bc9<br />
0a5f744a482886256ba000681713?Op<strong>en</strong>Docum<strong>en</strong>t<br />
Developing Remote Front Panel LabVIEW Applications (Desarrollando<br />
aplicaciones <strong>de</strong> panel front<strong>al</strong> remoto <strong>en</strong> LabVIEW)<br />
http://zone.ni.com/<strong>de</strong>vzone/conceptd.nsf/2d17d611efb58b22862567a9006ffe76/e78<br />
9515b9976253786256b1f007e039b?Op<strong>en</strong>Docum<strong>en</strong>t<br />
87
LabVIEW ti<strong>en</strong>e muchas otras herrami<strong>en</strong>tas disponibles para su <strong>de</strong>sarrollo. Si bi<strong>en</strong><br />
es cierto que las restricciones <strong>de</strong> tiempo no nos permit<strong>en</strong> <strong>en</strong>trar <strong>en</strong> muchos <strong>de</strong>t<strong>al</strong>les,<br />
es una bu<strong>en</strong>a i<strong>de</strong>a indicar <strong>al</strong>gunas <strong>de</strong> las capacida<strong>de</strong>s avanzadas ofrecidas por<br />
LabVIEW. Los estudiantes que están interesados <strong>en</strong> temas específicos pue<strong>de</strong>n ir a<br />
LabVIEW Example Fin<strong>de</strong>r o pue<strong>de</strong>n visitar la zona <strong>de</strong> <strong>de</strong>sarrollo NI (NI s<br />
Developer Zone) para mas información.<br />
Property No<strong>de</strong>s (nodos <strong>de</strong> propiedad) Las propieda<strong>de</strong>s son todas las cu<strong>al</strong>ida<strong>de</strong>s<br />
<strong>de</strong> un objeto <strong>en</strong> el panel front<strong>al</strong>. Con property no<strong>de</strong>s, se crean o le<strong>en</strong> dichas<br />
caracteristicas t<strong>al</strong>es como color <strong>de</strong> foreground y background, formato y precision <strong>de</strong><br />
datos, visibilidad, texto <strong>de</strong>scriptivo, tamaño y posicionami<strong>en</strong>to <strong>de</strong>l panel front<strong>al</strong>,<br />
etc. Busque property no<strong>de</strong> <strong>en</strong> la v<strong>en</strong>tana <strong>de</strong> Find Examples, <strong>al</strong>li se <strong>en</strong>cu<strong>en</strong>tran 24<br />
programas con este tema que vi<strong>en</strong><strong>en</strong> <strong>en</strong> LabVIEW.<br />
Loc<strong>al</strong> Variables (variables loc<strong>al</strong>es) Las variables loc<strong>al</strong>es romp<strong>en</strong> con el<br />
paradigma <strong>de</strong> programacion <strong>de</strong> flujo <strong>de</strong> datos, permiti<strong>en</strong>do que los datos sean<br />
pasados sin necesidad <strong>de</strong> cables.<br />
Glob<strong>al</strong> Variables (variable glob<strong>al</strong>) Un tipo especi<strong>al</strong> <strong>de</strong> VI, usado para guardar<br />
datos <strong>en</strong> la objetos <strong>de</strong>l panel front<strong>al</strong> con el proposito <strong>de</strong> intercambiar datos <strong>en</strong>tre<br />
VIs.<br />
DataSocket Una plataforma in<strong>de</strong>p<strong>en</strong>di<strong>en</strong>te <strong>de</strong> intercabio <strong>de</strong> datos <strong>en</strong>tre<br />
computadoras y aplicaciones, basada <strong>en</strong> TCP-IP, pero sin la complejidad <strong>de</strong> la<br />
programacion <strong>en</strong> bajos niveles.<br />
Archivos Binarios I/O permite <strong>al</strong> usuario transferir datos a un disco <strong>en</strong><br />
aplicaciones <strong>de</strong> <strong>al</strong>ta velocidad.<br />
88
Que hago ahora?<br />
Nation<strong>al</strong> Instrum<strong>en</strong>ts ofrece una amplio rango <strong>de</strong> <strong>curso</strong>s <strong>de</strong> <strong>en</strong>señanza para<br />
expandir tu conocimi<strong>en</strong>to. Por favor visite ni.com/aca<strong>de</strong>mic para obt<strong>en</strong>er<br />
información <strong>de</strong> programas y re<strong>curso</strong>s disponibles.<br />
LabVIEW Edición <strong>de</strong> Estudiantes esta disponible <strong>en</strong> nuestra pagina Web. Incluye<br />
apr<strong>en</strong>di<strong>en</strong>do con LabVIEW, un libro <strong>de</strong> texto escrito por el Dr. Bob Bishop <strong>de</strong> la<br />
universidad <strong>de</strong> Austin Texas.<br />
La web es el mejor lugar para buscar información sobre LabVIEW. NI.com<br />
ha sido diseñado para ser el re<strong>curso</strong> princip<strong>al</strong> para <strong>en</strong>contrar información.<br />
La zona <strong>de</strong> <strong>de</strong>sarrollo NI ( NIDZ ) es un lugar para que los <strong>de</strong>sarrolladores<br />
se reun<strong>en</strong>, discutan temas <strong>de</strong> diseño y com<strong>en</strong>t<strong>en</strong> sobre diversos temas.<br />
Notas <strong>de</strong> aplicación pue<strong>de</strong>n ser <strong>de</strong>scargadas <strong>de</strong> ni.com/support <strong>en</strong> una gran<br />
cantidad <strong>de</strong> temas.<br />
Grupo <strong>de</strong> Noticias LabVIEW (Info-labview) es un grupo manejado por<br />
terceras personas.<br />
Existe una ext<strong>en</strong>sa librería <strong>de</strong> drivers <strong>de</strong> instrum<strong>en</strong>tos <strong>de</strong> LabVIEW<br />
disponibles para ser <strong>de</strong>scargados <strong>de</strong> NIDZ<br />
89