You are on page 1of 28

LabVIEW

TM
Core 2
Manual de Ejercicios
Versin del software actual 2011
Edicin de Agosto 2011
Nmero de parte 325293C-0116
Manual de Ejercicios LabVIEW Core 2
Copyright
19932011 National Instruments Corporation. Todos los derechos reservados.
En virtud de las leyes de copyright y de proteccin de los derechos de autor, esta publicacin no puede reproducirse ni transmitirse
en ninguna forma, electrnica o mecnica, incluidas las fotocopias, grabacin, almacenamiento en un sistema de recuperacin de
informacin, o traduccin, en su totalidad o en parte, sin el consentimiento previo por escrito de National Instruments Corporation.
National Instruments respeta los derechos de propiedad intelectual de otros, y solicitamos a nuestros usuarios que hagan lo mismo.
El software de NI est protegido por el derecho de autor y las normas de la propiedad intelectual. Aunque el software de NI puede
utilizarse para reproducir software u otro material perteneciente a otros, el software de NI slo podr utilizarse para reproducir material
que pueda reproducir conforme a los trminos de cualquier licencia aplicable u otra restriccin legal.
For components used in USI (Xerces C++, ICU, HDF5, b64, Stingray, and STLport), the following copyright stipulations apply. For a
listing of the conditions and disclaimers, refer to either the USICopyrights.chm or the Copyrights topic in your software.
Xerces C++. This product includes software that was developed by the Apache Software Foundation (http://www.apache.org/).
Copyright 1999 The Apache Software Foundation. All rights reserved.
ICU. Copyright 19952009 International Business Machines Corporation and others. All rights reserved.
HDF5. NCSA HDF5 (Hierarchical Data Format 5) Software Library and Utilities
Copyright 1998, 1999, 2000, 2001, 2003 by the Board of Trustees of the University of Illinois. All rights reserved.
b64. Copyright 20042006, Matthew Wilson and Synesis Software. All Rights Reserved.
Stingray. This software includes Stingray software developed by the Rogue Wave Software division of Quovadx, Inc.
Copyright 19952006, Quovadx, Inc. All Rights Reserved.
STLport. Copyright 19992003 Boris Fomitchev
Marcas comerciales
LabVIEW, National Instruments, NI, ni.com, el logotipo corporativo de National Instruments, y el logotipo del aguila son marcas
propiedad de National Instruments Corporation. Por favor, consulte Trademark Information en la pgina ni.com/trademarks
para informacin sobre otras marcas de National Instruments.
Otros nombres de productos y de empresas mencionados aqu son marcas o nombres comerciales de sus respectivas empresas.
Los miembros del National Instruments Alliance Partner Program son entidades comerciales independientes de National Instruments
y no tienen relacin de agencia, asociacin ni empresa conjunta con National Instruments.
Patentes
Para obtener informacin sobre las patentes que protegen los productos o la tecnologa de National Instruments, consulte el
apartado: HelpPatents en su software, el archivo patents.txt en el soporte del mismo, o el Aviso sobre las Patentes de
National Instruments (National Instruments Patent Notice) en ni.com/patents.
M
u
e
s
t
r
a
Soporte
Informacin del producto y soporte tcnico mundial
ni.com
Oficinas internacionales
Visite ni.com/niglobal para acceder a las pginas web de las oficinas internacionales, las cuales incluyen informacin
actualizada de contacto, telfonos de soporte tcnico, direcciones de email y eventos actuales.
Oficinas centrales de National Instruments Corporation
11500 North Mopac Expressway Austin, Texas 78759-3504 USA Tel: 512 683 0100
Para obtener informacin adicional de soporte, consulte el apndice Informacin Adicional y Recursos. Para realizar comentarios a
National Instruments sobre la documentacin, consulte la pgina web de National Instruments Web ni.com/info e introduzca
el cdigo de informacin feedback.
M
u
e
s
t
r
a
National Instruments Corporation iii Manual de Ejercicios LabVIEW Core 2
Contenido
Gua del estudiante
A. Certificacin de NI................................................................................................ v
B. Descripcin del curso............................................................................................ vi
C. Lo que necesita para empezar ...............................................................................vii
D. Instalacin del software del curso.........................................................................vii
E. Objetivos del curso ............................................................................................... viii
F. Convenciones del curso ........................................................................................ viii
Leccin 2
Tcnicas de sincronizacin
Ejercicio 2-1 Concepto: Comparacin de colas con variables locales ................ 2-1
Leccin 3
Programacin de eventos
Ejercicio 3-1 Concepto: Experimentar con estructuras Event .............................3-1
Ejercicio 3-2 Creacin de una consola de cola de impresin ..............................3-4
Leccin 4
Manejo de Errores
Ejercicio 4-1 Actualizacin de la consola de impresin
con la gestin de errores.................................................................4-1
Leccin 5
Control de la interfaz de usuario
Ejercicio 5-1 Visualizacin de temperatura y lmites.......................................... 5-1
Ejercicio 5-2 Personalizacin de la Ventana del VI ............................................ 5-6
Ejercicio 5-3 Configuracin de nombres de curvas............................................. 5-12
Leccin 6
Tcnicas de E/S de fichero
Ejercicio 6-1 VI Bitmap File Writer ....................................................................6-1
Ejercicio 6-2 Lectura de archivos TDMS............................................................6-9
Leccin 7
Mejora de un VI existente
Ejercicio 7-1 Concepto: Mejoranso un VI........................................................... 7-1
M
u
e
s
t
r
a
Contenido
Manual de Ejercicios LabVIEW Core 2 iv ni.com
Leccin 8
Creacin y distribucin de aplicaciones
Ejercicio 8-1 Preparacin de archivos para la distribucin .................................8-1
Ejercicio 8-2 Creacin de una aplicacin independiente.....................................8-7
Apndice A
Configuracin del hardware
Apndice B
Informacin Adicional y Recursos
M
u
e
s
t
r
a
National Instruments Corporation 5-1 Manual de Ejercicios LabVIEW Core 2
5
Control de la interfaz de usuario
Ejercicio 5-1 Visualizacin de temperatura y lmites
Objetivo
Use Nodos de Propiedad para cambiar las propiedades de los objetos del
panel frontal programticamente.
Escenario
Complete un VI que registre la temperatura en un grfico tipo waveform
chart. Durante la ejecucin, el VI realiza las siguientes tareas:
Configurar el valor x del grfico tipo chart con el valor que define el
usuario.
Borrar el grfico tipo waveform chart para que inicialmente no
contenga datos.
Cambiar el color de una curva si los datos superan cierto valor.
Hacer parpadear un indicador de alarma si los datos superan cierto valor.
Diseo
Aada los siguientes Nodos de Propiedad a un VI existente:
Type Nombre Propiedad
Grfico Waveform Chart Temperatura XScale.Multiplier
Grfico Waveform Chart Temperatura History
Grfico Waveform Chart Temperatura Active Plot 0Plot.Color
Indicador booleano (LED) Superacin
de lmite
Blinking
M
u
e
s
t
r
a
Leccin 5 Control de la interfaz de usuario
Manual de Ejercicios LabVIEW Core 2 5-2 ni.com
Implementacin
1. Abra el Temperature Limit.vi situado en el directorio
<Exercises>\LabVIEW Core 2\Temperature Limit. El panel
frontal ya est creado.
Figura 5-1. Panel frontal de Temperature Limit
2. Abra el diagrama de bloques del VI. Ya se ha creado una parte. La
figura 5-2 muestra un ejemplo del diagrama de bloques final.
Figura 5-2. Diagrama de bloques de Temperature Limit
M
u
e
s
t
r
a
Leccin 5 Control de la interfaz de usuario
National Instruments Corporation 5-3 Manual de Ejercicios LabVIEW Core 2
3. Modifique el VI para que configure el valor x del grfico tipo chart
segn la entrada del valor t (ms) del usuario.
Haga clic con el botn derecho en el indicador Temperature y
seleccione CreateProperty NodeX ScaleOffset and
MultiplierMultiplier en el men contextual para crear un Nodo de
Propiedad.
Coloque el nuevo Nodo de Propiedad a la izquierda del bucle While.
Haga clic con el botn derecho en el Nodo de Propiedad de
Temperature y seleccione Change All to Write en el men
contextual.
Divida delta t (ms) por 1000 para determinar el X-Scale Multiplier,
como en la figura 5-2.
4. Modifique el VI para borrar los datos antiguos del grfico tipo chart
Temperature antes de iniciar la adquisicin de la temperatura.
Consejo Para borrar un grfico tipo waveform chart del diagrama de bloques, enve
un array vaco de datos a la propiedad History Data.
Cambie el tamao del Nodo de Propiedad a dos terminales.
Seleccione la propiedad History Data en el segundo terminal.
Compruebe que la propiedad History Data se ha configurado en
Write.
Haga clic con el botn derecho en la propiedad History Data y
seleccione CreateConstant en el men contextual.
Cablee el Nodo de Propiedad como en la figura 5-2.
5. Modifique el VI para que cuando el VI adquiera datos, convierta la traza
Data en rojo y parpadee el LED Over Limit cuando la temperatura
supere el valor lmite.
Haga clic con el botn derecho en el indicador Temperature y
seleccione CreateProperty NodeActive plot en el men
contextual para crear otro Nodo de Propiedad.
Coloque el nuevo Nodo de Propiedad dentro del caso True de la
estructura Case.
Cambie el tamao del nodo de propiedad para mostrar dos
terminales.
M
u
e
s
t
r
a
Leccin 5 Control de la interfaz de usuario
Manual de Ejercicios LabVIEW Core 2 5-4 ni.com
Haga clic en el segundo terminal y seleccione PlotPlot Color.
Haga clic con el botn derecho en el Nodo de Propiedad y seleccione
Change All to Write en el men contextual.
Cablee una constante numrica con un valor de 0 a la propiedad
Active Plot para seleccionar la primera curva del grfico tipo chart
Temperature.
Cablee la constante del cuadro de color Red a la propiedad Plot
Color para configurar el color de la curva en rojo cuando los datos
superen el High Limit.
Cree una copia del Nodo de Propiedad pulsando <Ctrl> mientras
selecciona y arrastra el Nodo de Propiedad.
Consejo No use el Portapapeles (EditCopy o <Ctrl-C>) para crear una copia de un
Nodo de Propiedad. Esto crea diferentes tipos de nodos de propiedad sobre los que
aprender ms en la seccin Referencias de control de la leccin 5 Control de la interfaz
de usuario del Manual de Curso LabVIEW Core 2.
Coloque la copia del Nodo de Propiedad en el caso False de la
estructura Case, como en la figura 5-3.
Cablee una constante numrica con un valor de 0 a la propiedad
Active Plot para seleccionar la primera curva del grfico tipo chart
Temperature.
Cablee la constante del cuadro de color Green a la propiedad Plot
Color para configurar el color de la curva en verde cuando los datos
no superen el High Limit.
Figura 5-3. Caso False en el VI Temperature Limit
M
u
e
s
t
r
a
Leccin 5 Control de la interfaz de usuario
National Instruments Corporation 5-5 Manual de Ejercicios LabVIEW Core 2
6. Modifique el VI para que cuando ste adquiera datos, el LED Over Limit
parpadee si la temperatura supera el valor lmite.
Haga clic con el botn derecho en el indicador Over Limit y
seleccione CreateProperty NodeBlinking en el men
contextual.
Coloque el nuevo Nodo de Propiedad dentro del bucle While.
Haga clic con el botn derecho en el Nodo de Propiedad y seleccione
Change All to Write en el men contextual.
Cablee el Nodo de Propiedad como en la figura 5-2.
7. Guarde el VI.
Prueba
1. Ejecute el VI para confirmar que acta correctamente.
2. Cierre el VI.
Fin del ejercicio 5-1
M
u
e
s
t
r
a
Leccin 5 Control de la interfaz de usuario
Manual de Ejercicios LabVIEW Core 2 5-6 ni.com
Ejercicio 5-2 Personalizacin de la Ventana del VI
Objetivo
Modificar los atributos de un VI usando Nodos de Propiedad y Nodos de
Invocacin.
Escenario
Puede configurar las propiedades de aspecto de un VI estticamente usando
la pgina de propiedades del VI. Sin embargo, las interfaces de usuario
robustas a menudo deben modificar el aspecto de un panel frontal mientras
se ejecuta el programa.
Debe crear un VI que pueda realizar las siguientes tareas a solicitud:
Mostrar u ocultar su barra de ttulo
Mostrar u ocultar su barra de mens
Hacerse transparente para que los objetos detrs del VI puedan verse
Moverse al centro de la pantalla
Diseo
Entradas y salidas
Consejo Use los controles Push Buttons porque su accin mecnica predeterminada es
conmutar al pulsar (Switch When Pressed). Use OK button porque su accin
predeterminada es bloquear al soltar (Latch When Released).
Type Nombre
Valor
predeterminado
Push Button Show Menu Bar? Verdadero
Push Button Show Title Bar? Verdadero
Push Button Make VI Transparent? Verdadero
OK Button Center Falso
Stop Button Stop Falso
M
u
e
s
t
r
a
Leccin 5 Control de la interfaz de usuario
National Instruments Corporation 5-7 Manual de Ejercicios LabVIEW Core 2
Propiedades
Use las siguientes propiedades y mtodos de la clase VI:
ShowMenuBar: cuando esta propiedad es true, se ve la barra de mens
del VI.
Figura 5-4. Barra de mens del VI
TitleBarVisible: cuando esta propiedad es true, se ve la barra de ttulos
del VI.
Figura 5-5. Barra de ttulos del VI
RunVITransparently: cuando esta propiedad es True, puede variar la
transparencia del VI. El valor predeterminado de esta propiedad es
False, por lo que debe escribir un valor True en esta propiedad antes de
variar la transparencia del VI.
Transparency: esta propiedad vara la transparencia del VI. La
propiedad acepta cualquier valor entre 0 y 100. Un valor de 0 hace al VI
completamente opaco (comportamiento normal) y un valor de 100 hace
al VI completamente transparente (invisible). Para este ejercicio,
configure el valor de 50 al hacer clic en el botn Make VI
Transparent?.
Mtodos
A diferencia de las propiedades, un mtodo tiene un efecto cada vez que lo
llame. Por lo tanto, debe llamar a mtodos slo cuando desee realizar una
accin. Por ejemplo, si llama al mtodo Fp.Center usando cada iteracin de
un bucle, el VI se centra continuamente, impidiendo que lo mueva el
usuario. Puede usar una estructura Case para controlar la llamada al mtodo
en una determinada iteracin de un bucle. Use el siguiente mtodo de la
clase VI:
Center: cada vez que llame a este mtodo, el VI se mueve al centro de
la pantalla.
Consejo Use la ventana Context Help para ver descripciones de cada propiedad y
mtodo.
M
u
e
s
t
r
a
Leccin 5 Control de la interfaz de usuario
Manual de Ejercicios LabVIEW Core 2 5-8 ni.com
Estructura del VI
El VI sondea los controles del panel frontal cada 50 milisegundos y
configura el valor de las propiedades en funcin del valor actual de los
controles. Una estructura Case controla la ejecucin del mtodo Center.
Implementacin
1. Abra el Customize VI Window.vi situado en el directorio
<Exercises>\LabVIEW Core 2\Customize VI Window. El panel
frontal de este VI aparece en la figura 5-6.
Figura 5-6. Panel frontal del VI Customize VI Window
Complete los siguientes pasos para crear el diagrama de bloques de la
Figura 5-7.
Figura 5-7. Diagrama de bloques de Customize VI Window
Figura 5-8. Caso False para el mtodo Center
2. Aada un bucle While alrededor de los terminales.
M
u
e
s
t
r
a
Leccin 5 Control de la interfaz de usuario
National Instruments Corporation 5-9 Manual de Ejercicios LabVIEW Core 2
3. Cree una referencia para el VI.
Aada un VI Server Reference al diagrama de bloques a la
izquierda del bucle While.
Configure la VI Server Reference en This VI si an no lo est.
Nota Con la referencia This VI puede acceder a todos los mtodos y propiedades del VI
actual sin tener que abrir o cerrar explcitamente una referencia.
4. Cree un Nodo de Propiedad con la propiedad RunTransparently.
Haga clic con el botn derecho en la referencia This VI y seleccione
CreateProperty for VI ClassFront Panel WindowRun VI
Transparently en el men contextual para crear un Nodo de
Propiedad.
Mueva el Nodo de Propiedad a la derecha de la referencia This VI,
fuera del bucle While.
Haga clic con el botn derecho en el Nodo de Propiedad y seleccione
Change All to Write en el men contextual.
Haga clic con el botn derecho en la propiedad
FP:RunTransparently y seleccione CreateConstant en el men
contextual.
Cambie el valor de la constante a True.
5. Cree un Nodo de Propiedad con las propiedades ShowMenuBar,
TitleBarVis y Transparency.
Haga clic con el botn derecho en la referencia This VI y seleccione
CreateProperty for VI ClassFront Panel WindowShow
Menu Bar en el men contextual para crear otro Nodo de Propiedad.
Expanda el Nodo de Propiedad para mostrar tres elementos.
Haga clic en el segundo elemento del Nodo de Propiedad y
seleccione Front Panel WindowTitle Bar Visible.
Haga clic en el tercer elemento del Nodo de Propiedad y seleccione
Front Panel WindowTransparency.
Haga clic con el botn derecho en el Nodo de Propiedad y seleccione
Change All to Write en el men contextual.
Coloque el Nodo de Propiedad dentro del bucle While.
M
u
e
s
t
r
a
Leccin 5 Control de la interfaz de usuario
Manual de Ejercicios LabVIEW Core 2 5-10 ni.com
Aada una funcin Select dentro del bucle While.
Aada dos numeric constants con valores 0 y 50 a la izquierda de
la funcin Select.
Cablee la constante numrica 0 a la entrada f de la funcin Select.
Cablee la constante numrica 50 a la entrada f de la funcin Select.
Cablee los controles booleanos a las propiedades apropiadas, como
en la figura 5-7.
6. Cree un Nodo de Invocacin con el mtodo Center.
Haga clic con el botn derecho en la referencia This VI y seleccione
CreateMethod for VI ClassFront PanelCenter en el men
contextual para crear un Nodo de Invocacin.
7. Aada una estructura Case alrededor del FP.Center Invoke Node.
8. Aada una espera de 50 ms al bucle.
Aada una funcin Wait (ms) al bucle While.
Haga clic con el botn derecho en la entrada milliseconds to wait y
seleccione CreateConstant en el men contextual.
Escriba 50 en la constante.
9. Configure el bucle While para que se detenga cuando el usuario haga
clic en el botn Stop o cuando ocurra un error.
Aada una funcin Unbundle By Name al bucle While.
Aada una funcin Or al bucle While.
10. Cablee el diagrama como en la figura 5-7 y 5-8. Sustituya el tnel del
cluster de error por un registro de desplazamiento.
11. Muestre al usuario los errores que ocurran.
Aada un VI Simple Error Handler a la derecha del bucle While.
Cablee el VI Simple Error Handler al registro de desplazamiento de
la salida del cluster de error desde el bucle While.
12. Guarde el VI.
M
u
e
s
t
r
a
Leccin 5 Control de la interfaz de usuario
National Instruments Corporation 5-11 Manual de Ejercicios LabVIEW Core 2
Prueba
1. Cambie a la ventana del panel frontal del VI.
2. Ejecute el VI.
3. Pruebe cada botn y observe los resultados.
Fin del ejercicio 5-2
M
u
e
s
t
r
a
Leccin 5 Control de la interfaz de usuario
Manual de Ejercicios LabVIEW Core 2 5-12 ni.com
Ejercicio 5-3 Configuracin de nombres de curvas
Objetivo
Use referencias de control para crear un subVI que modifique propiedades
de grficos tipo graph o chart.
Escenario
Cree un subVI que permita asignar una lista de nombres de curvas a un
grfico tipo graph o chart. El subVI debe cambiar el tamao de la
leyenda de la curva, si es necesario, para mostrar todas las curvas.
Diseo
Entradas y salidas
Referencias de control
Waveform Chart y Waveform Graph son objetos de la clase GraphChart.
Para escribir un subVI que pueda aceptar referencias a grficos tipo chart
y graph, debe usar una referencia de control de tipo dbil de la clase
GraphChart. Sin embargo, esta clase tambin contiene otros grficos tipo
chart y graph, como el XY Graph. Este subVI genera un error si el
usuario cablea cualquier tipo de grfico tipo graph que no sea uno
Waveform Chart o Waveform Graph. Puede determinar si el usuario ha
cableado el tipo correcto utilizando la propiedad ClassName para controlar
una estructura Case. Si se cablea la clase correcta, use la funcin To More
Specific Class para obtener una referencia a la subclase apropiada. Tras
tener una referencia a un grfico WaveformChart o WaveformGraph, puede
configurar las propiedades para modificar nombres de curvas.
Type Nombre
Valor
predeterminado
Referencia de control para un
objeto GraphChart
Referencia
del grfico
tipo "graph"
N/A
Array 1-D de control de cadenas de
caracteres
Nombres de
curvas
Array Vaco
Control de clusters de errores Entrada de
errores
No Error
Indicador de clusters de errores Salida de
errores
No Error
M
u
e
s
t
r
a
Leccin 5 Control de la interfaz de usuario
National Instruments Corporation 5-13 Manual de Ejercicios LabVIEW Core 2
Propiedades
Los grficos tipo graph y chart no tienen una nica propiedad para
configurar todos los nombres de curvas. Debe utilizar una combinacin de
propiedades para configurar cada nombre de curva. En este ejercicio use las
siguientes propiedades:
ClassName: esta propiedad devuelve una cadena de caracteres que
indica la clase de control del objeto para el que se llama a la propiedad.
Puede acceder a esta propiedad para cualquier control.
LegAutosize: esta propiedad controla si la leyenda del grfico se adapta
automticamente al tamao de los nombres de curva que contiene. Antes
de modificar los nombres de curvas, debe configurar esta propiedad en
False. De lo contrario, la leyenda puede redimensionarse de modo que
quede separada del grfico o cubra ste u otros controles.
LegNumRows: esta propiedad controla el nmero de filas visible en la
leyenda del grfico. Cuando aada su leyenda al panel frontal, recuerde
dejar espacio para que la leyenda se expanda cuando configure esta
propiedad. La leyenda se expande hacia abajo.
ActPlot: las propiedades que afectan a una curva actan en una curva a
la vez. Esta propiedad controla la curva activa. Cada vez que se
configure o se lea una propiedad de curva, se aplicar a la curva activa.
Las curvas estn numeradas secuencialmente cuando se crean,
empezando por cero.
Plot.Name: esta propiedad configura el nombre de la curva activa.
Implementacin
1. Abra un VI en blanco.
2. Guarde el VI como Set Plot Names.vi en el directorio
<Exercises>\LabVIEW Core 2\Set Plot Names.
3. Cree la ventana del panel frontal.
Aada un refnum de control a la ventana del panel frontal.
Llame al refnum de control Graph Reference.
Haga clic con el botn derecho en Graph Reference y elija Select
VI Server ClassGenericGObjectControlGraphChart
GraphChart en el men contextual.
Aada un array a la ventana del panel frontal.
M
u
e
s
t
r
a
Leccin 5 Control de la interfaz de usuario
Manual de Ejercicios LabVIEW Core 2 5-14 ni.com
Llame al array Plot Names.
Coloque un control de cadena de caracteres al array vacio Plot
Names.
Aada un cluster de entrada de error.
Aada un cluster de salida de error.
Disponga los controles como en la figura 5-9.
Figura 5-9. Panel frontal para configurar nombres de curvas
Consejo Como el usuario no ve el panel frontal de este subVI, no tiene que esforzarse
mucho en hacerlo visualmente atractivo. Siempre debe organizar lgicamente sus
paneles frontales. Sin embargo, no debe emplear demasiado tiempo en paneles que el
usuario no ve.
4. Cambie al diagrama de bloques.
5. Identifique la clase de la referencia de control y genere un error si tiene
una clase no vlida.
Use Class Browser para buscar y soltar el Nodo de Propiedad
ClassName.
Abra el cuadro de dilogo Class Browser seleccionando View
Class Browser.
Seleccione VI Server para Object Library.
Seleccione GenericGeneric para Class.
Haga clic en el botn Search para abrir el cuadro de dilogo
Class Browser Search.
M
u
e
s
t
r
a
Leccin 5 Control de la interfaz de usuario
National Instruments Corporation 5-15 Manual de Ejercicios LabVIEW Core 2
Figura 5-10. Cuadro de dilogo Class Browser Search
Escriba Class Name en el campo de bsqueda. Class Name
debe ser el nico elemento en Search results.
Seleccione Generic class en la seccin Search Scope.
Haga clic en OK para volver al cuadro de dilogo Class
Browser. Class Name se resaltar en el rbol Properties and
Methods.
M
u
e
s
t
r
a
Leccin 5 Control de la interfaz de usuario
Manual de Ejercicios LabVIEW Core 2 5-16 ni.com
Figura 5-11. Cuadro de dilogo Class Browser
Haga clic en el botn Create y despus mueva el ratn a una
zona vaca del diagrama de bloques. Haga clic en el diagrama de
bloques para soltar el Nodo de Propiedad ClassName.
Cierre el cuadro de dilogo Class Browser.
Cablee Graph Reference a la entrada reference del Nodo de
Propiedad.
Figura 5-12. Caso predeterminado
M
u
e
s
t
r
a
Leccin 5 Control de la interfaz de usuario
National Instruments Corporation 5-17 Manual de Ejercicios LabVIEW Core 2
Aada una estructura Case al diagrama de bloques, como en la
figura 5-12.
Cablee la salida ClassName del Nodo de Propiedad al selector de
caso de la estructura Case.
Cambie al caso False de la estructura Case.
Elimine el texto False en el nombre del caso para que ste sea como
el de la figura 5-12.
El caso Default de la estructura Case se selecciona si la clase de la
referencia de control no coincide con uno de los otros casos. En este
caso, si se ejecuta el caso predeterminado, la referencia de control
que pasa a este subVI no es un WaveformGraph ni WaveformChart.
Recuerde que en una estructura Case la etiqueta del selector de caso
distingue maysculas de minsculas.
Aada un VI Error Cluster From Error Code a la estructura Case.
Haga clic con el botn derecho en al entrada error code del VI Error
Cluster From Error Code y seleccione CreateConstant en el men
contextual.
Escriba 1057 en la constante.
El cdigo de error 1057 corresponde al mensaje Object cannot
be typecast to the specified type. Es el error que hay
que generar si el que llama al subVI pasa una referencia de control
de la clase equivocada.
Cablee el diagrama de bloques como en la Figura 5-12.
M
u
e
s
t
r
a
Leccin 5 Control de la interfaz de usuario
Manual de Ejercicios LabVIEW Core 2 5-18 ni.com
6. Controle las referencias de WaveformGraph.
Figura 5-13. Caso WaveformGraph
Cambie al caso True de la estructura Case.
Cambie el texto True en el nombre del caso a WaveformGraph
para que ste sea como el de la figura 5-13.
Precaucin El texto escrito en la etiqueta del selector de caso debe coincidir
exactamente con la cadena de caracteres de la entrada, incluidos los espacios y las
maysculas o minsculas. Para este ejemplo, escriba WaveformGraph.
Aada una funcin To More Specific Class a la estructura Case.
Haga clic con el botn derecho en la entrada target class de la
funcin To More Specific Class y seleccione CreateConstant en
el men contextual.
Haga clic en la constante que cre en el paso anterior y seleccione la
clase GenericGObjectControlGraphChart
WaveformGraphWaveformGraph.
Utilice la ventana Class Browser para encontrar y eliminar la
leyenda: Autosize Property Node dentro de la estructura de casos.
Librera de objetos: Servidor VI
Clase: GenericGeneric
Seleccione All classes in the VI Server library en la seccin
Search Scope.
M
u
e
s
t
r
a
Leccin 5 Control de la interfaz de usuario
National Instruments Corporation 5-19 Manual de Ejercicios LabVIEW Core 2
Cadena de bsqueda: Leyenda: Autosize
Seleccionar la Leyenda: Autosize con un tipo de clase
WaveformGraph
Cablee la salida specific class reference a la funcin To More
Specific Class en la entrada reference del Nodo de Propiedad.
Expanda el Nodo de Propiedad para mostrar dos propiedades.
Haga clic en la segunda propiedad del Nodo de Propiedad y
seleccione LegendNumber of Rows.
Haga clic con el botn derecho en el Nodo de Propiedad y seleccione
Change All to Write en el men contextual.
Haga clic con el botn derecho en la propiedad LegAutosize y
seleccione CreateConstant en el men contextual. Compruebe
que el valor de la constante es False.
Aada una funcin Array Size a la estructura Case.
Aada un bucle For a la estructura Case.
7. Aada un Nodo de Propiedad al bucle For.
Use la ventana Class Browser para buscar y soltar el Nodo de
Propiedad Active Plot dentro del bucle For.
Librera de objetos: Servidor VI
Clase: GenericGeneric
Seleccione All classes in the VI Server library en la seccin
Search Scope.
Cadena de bsqueda: Active Plot
Seleccione la entrada Active Plot con el tipo de clase de
WaveformGraph
Cablee la salida reference out del segundo Nodo de Propiedad por
el borde del bucle For a la entrada reference del tercer Nodo de
Propiedad.
Expanda el tercer Nodo de Propiedad para mostrar dos propiedades.
Haga clic en la segunda propiedad del Nodo de Propiedad y
seleccione PlotPlot Name en la lista.
M
u
e
s
t
r
a
Leccin 5 Control de la interfaz de usuario
Manual de Ejercicios LabVIEW Core 2 5-20 ni.com
Haga clic con el botn derecho en el tercer Nodo de Propiedad y
seleccione Change All to Write en el men contextual.
Cablee el diagrama de bloques como en la Figura 5-13. Use registros
de desplazamiento al cablear los cables de error por el bucle For.
Confirme que el autoindexado est habilitado en el tnel Plot Names
en el bucle For.
8. Controle las referencias de WaveformChart.
Figura 5-14. Caso WaveformChart
Haga clic con el botn derecho en el borde de la estructura Case y
seleccione Duplicate Case en el men contextual.
Escriba WaveformChart en el nombre del caso.
Precaucin El texto escrito en la etiqueta del selector de caso debe coincidir
exactamente con la cadena de caracteres de la entrada, incluidos los espacios y las
maysculas o minsculas. Para este ejemplo, escriba WaveformChart.
Haga clic en la constante de referencia WaveformGraph y seleccione
GenericGObjectControlGraphChartWaveformChart.
Nota Cuando cambie la clase de una referencia de control, todos los Nodos de
Propiedad y Nodos de Invocacin que usen la referencia podran resultar no vlidos
porque las propiedades hacen referencia a una clase que no coincide con la referencia.
Tenga en cuenta que todos los nombres de propiedades cambian a negro cuando cambia
la referencia de clase y que la flecha de ejecucin est rota. Olvdese de los cables rotos,
ya que los cables se vuelven a conectar cuando vuelva a seleccionar las propiedades.
M
u
e
s
t
r
a
Leccin 5 Control de la interfaz de usuario
National Instruments Corporation 5-21 Manual de Ejercicios LabVIEW Core 2
Haga clic en cada una de las cuatro propiedades y seleccione de
nuevo la propiedad adecuada. Las cuatro propiedades son Legend
Autosize, LegendNumber of Rows, Active Plot y PlotPlot
Name. El diagrama de bloques resultante aparecer como en la
figura 5-14.
9. Cree el panel de iconos y conectores para el subVI. La figura 5-15
muestra un ejemplo de panel de iconos y conectores.

Figura 5-15. Conexiones del panel de conectores para el VI Set Plot Names
Cambie al panel frontal del VI.
Haga clic con el botn derecho en el panel de conectores y
seleccione Patterns en el men contextual para elegir un modelo.
Cablee el panel de conectores.
Haga clic con el botn derecho en el icono y seleccione Edit Icon
en el men contextual.
Use las herramientas de Icon Editor para crear un icono.
Cierre el Icon Editor tras terminar.
10. Guarde el VI.
Conexiones Panel de conectores
M
u
e
s
t
r
a
Leccin 5 Control de la interfaz de usuario
Manual de Ejercicios LabVIEW Core 2 5-22 ni.com
Prueba
1. Pruebe el VI usando un grfico tipo Waveform Graph.

Figura 5-16. Prueba de configurar nombres de curvas
Abra un VI en blanco.
Aada un grfico tipo waveform graph a la ventana del panel
frontal.
Abra el diagrama de bloques.
Haga clic con el botn derecho en el indicador Waveform Graph y
seleccione CreateReference en el men contextual.
Aada el VI Set Plot Names al diagrama de bloques del nuevo VI.
Consejo Si el VI Set Plot Names est abierto, puede arrastrar el icono desde la esquina
superior derecha de su panel frontal al diagrama de bloques del nuevo VI.
Cablee la referencia WaveformGraph a la entrada Graph Reference
del VI Set Plot Names.
Haga clic con el botn derecho en la entrada Plot Names del VI Set
Plot Names y seleccione CreateControl en el men contextual. Su
diagrama de bloques debe parecerse al de la figura 5-16.
Cambie a la ventana del panel frontal del nuevo VI.
Escriba One y Two como elementos del array Plot Names.
Mueva la Plot Legend a la derecha del grfico tipo graph para que
pueda expandir la leyenda.
Ejecute el VI. One y Two aparecen en la leyenda.
M
u
e
s
t
r
a
Leccin 5 Control de la interfaz de usuario
National Instruments Corporation 5-23 Manual de Ejercicios LabVIEW Core 2
2. Pruebe el VI usando un grfico tipo Waveform Chart.
Haga clic con el botn derecho en el grfico waveform graph y
seleccione ReplaceGraphWaveform Chart en el men
contextual.
Escriba Three como otro elemento al array Plot Names.
Ejecute el VI. Aparece Three en la leyenda del grfico tipo chart.
3. Pruebe el VI usando un grfico tipo XY Graph.
Haga clic con el botn derecho en el grfico waveform chart y
seleccione ReplaceGraphXY Graph en el men contextual.
Aada Four como otro elemento al array Plot Names.
Ejecute el VI. Ocurre un error de moldeado de tipos.
Nota El error aparece porque la referencia de control del grfico XY no es compatible
con el subVI.
4. Cierre el VI. No necesita guardar el VI usado para probar el VI Set Plot
Names.
Fin del ejercicio 5-3
M
u
e
s
t
r
a
Leccin 5 Control de la interfaz de usuario
Manual de Ejercicios LabVIEW Core 2 5-24 ni.com
Notas
M
u
e
s
t
r
a

You might also like