Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Tutorial Labview PDF
Tutorial Labview PDF
Presentado a:
Prof. Luis Hernando Das.
UNIVERSIDAD DE IBAGUE
FACULTAD DE INENIERIA
PROGRAMA INGENIERIA ELECTRONICA
PROYECTOS
IBAGUE
2011
TABLA DE CONTENIDO
RESUMEN
0.1.1 INTRODUCCIN
1.2 COMPONENTES
1.3 PALETAS
2. CREAR UN IV
3.1. ESTRUCTURAS
3.1.1 CASE ESTRUCTURE
3.1.2 SEQUENCE ESTRUCTURE
3.1.3 FOR LOOP
3.1.4 WHILE LOOP
3.2 VARIABLES LOCALES Y GLOBALES
3.2.1 VARIABLES LOCALES
3.2.2 VARIABLES GLOBALES
3.3 ERRORES
3.4 TIPS
3.5 EJEMPLO
CAPITULO 1
1. CONOCIENDO LABVIEW
1.1 Qu es LabVIEW?
1.2 Componentes
Todos los VIs tienen un panel frontal y un diagrama de bloques. Las paletas contienen las
opciones que se emplean para crear y modificar los VIs.
El panel frontal es la interface del usuario con el VI. Usted construye el panel frontal con
controles e indicadores, que son las entradas y salidas que interactan con las terminales del
VI, respectivamente. Los controles son botones, botones de empuje, marcadores y otros
componentes de entradas. Los indicadores son las graficas, luces y otros dispositivos. Los
controles simulan instrumentos de entradas de equipos y suministra datos al diagrama de
bloques del VI. Los indicadores simulan salidas de instrumentos y suministra datos que el
diagrama de bloques adquiere o genera.
El diagrama de bloque contiene el cdigo fuente grafico. Los objetos del panel frontal
aparecen como terminales en el diagrama de bloque. Adicionalmente, el diagrama de
bloque contiene funciones y estructuras incorporadas en las bibliotecas de LabVIEW VI.
Los cables conectan cada uno de los nodos en el diagrama de bloques, incluyendo controles
e indicadores de terminal, funciones y estructuras.
En este diagrama de bloque, el subVI Temp llama a la subrutina la cual obtiene una
temperatura desde una tarjeta de adquisicin de datos (DAQ). Esta temperatura es graficada
junto con el valor average de la temperatura en la grafica de forma de onda Temperature
History. El switch de poder (Power) es un control booleano en el panel frontal el cual va a
detener la ejecucin de la estructura mientras ( While Loop). La estructura mientras (While
Loop) tambin contiene una funcin de tiempo para controlar que tan frecuentemente la
estructura se repite.
Los cables son las trayectorias que siguen los datos desde su origen hasta su destino, ya sea
una funcin, una estructura, un terminal, etc. Cada cable tiene un color o un estilo diferente,
lo que diferencia unos tipos de datos de otros.
1.3 PALETAS
Las paletas de LabVIEW proporcionan las herramientas que se requieren para crear y
modificar tanto el panel frontal como el diagrama de bloques. Existen las siguientes paletas:
Probe tool Crea puntos de prueba en los cables, en los que se puede
visualizar el valor del dato que fluya por dicho cable en cada instante.
List & Ring Para visualizar y/o seleccionar una lista de opciones.
Se emplea en el diseo del diagrama de bloques. La paleta de funciones contiene todos los
objetos que se emplean en la implementacin del programa del VI, ya sean funciones
aritmticas, de entrada/salida de seales, entrada/salidad de datos a fichero, adquisicin de
seales, temporizacin de la ejecucin del programa,
Para seleccionar una funcin o estructura concretas, se debe desplegar el men Functions y
elegir entre las opciones que aparecen. A continuacin se enumeran todas ellas, junto con
una pequea definicin.
Botn d (Run) para ejecutar el VI. Mientras el VI se esta ejecutando, el botn de ejecucin
aparecer con una flecha negra si es que el VI es un VI principal, lo que significa que no ha
sido llamado por otro VI y por lo tanto este no es un VI.
Botn (Abort Execution) aparece. Presione este botn para detener el VI inmediatamente.
Botn de pausa (Pause) para detener momentneamente la ejecucin de un VI. Cuando
usted presiona el botn de Pausa, LabVIEW seala la posicin donde usted detuvo la
ejecucin en el diagrama de bloque. Pulse el botn de Pausa nuevamente para que el VI
continu ejecutndose.
Men Configuracin de Textos (Text Settings) para cambiar el tipo de fuente (letra) del
VI, incluyendo el tamao, estilo y color.
Men Alineamiento de Objetos (Align Objects) para alinear objetos con respecto a los
ejes, incluyendo eje vertical, superior, izquierdo, etc.
Men Reordenamiento (Reorder) cuando tenga objetos superpuestos unos con otros y
usted quiera definir cual esta enfrente de quien y cual atrs. Seleccione uno de los objetos
con la herramienta de posicionamiento y seleccione entre Move Forward (mover hacia
adelante), Move Backward (mover hacia atrs), Move to Front (mover al frente) y Move
to Back (mover hacia atrs).
Botn de entrada al ciclo (Step Into) para entrar un paso adentro de un ciclo, un SubVI,
etc. Entrando un paso a la vez adentro de un VI le permite introducirse en la VI nodo a
nodo. Cada nodo se resalta para sealar cuando esta listo para ejecutarse. Al entrar un paso
adentro de un nodo usted esta listo para caminar paso a paso adentro del nodo.
Botn de sobre (Step Over) para posicionarse encima de un ciclo, un SubVI, etc. Al
posicionarse encima del nodo, usted ejecuta el nodo sin entrar paso a paso adentro del
nodo.
Botn de Salida del ciclo (Step Over) para salirse de un ciclo, SubVI, etc.
CAPITULO 2
CREAR UN INSTRUMENTO VIRTUAL
2. Seleccione Find Examples del men de ayuda (Help). La ventana de dialogo que aparece
da la lista y enlaces a todos los VIs de ejemplo de LabVIEW.
3. Usted puede buscar ejemplo por categoras, o puede utilizar palabras claves en su
bsqueda. Haga clic en la vieta de bsqueda (Search) para abrir el buscador de palabras
claves.
6. Haga clic en cualquier programa para ver una descripcin detallada del ejemplo. Haga
doble clic sobre Signal Generation and Processing.vi para lanzar el ejemplo. Esto abrir el
panel frontal del VI Signal Generation and Processing vi. Examine el VI y ejectelo.
Cambie las frecuencias y tipos de seales de entradas y note como el despliegue de las
graficas cambia. Cambie la ventana de procesamiento de seales (Signal Processing
Window) y opciones de filtrado (Filter options). Despus de que haya examinado el VI y
las diferentes opciones que puede cambiar, pare el VI presionando el botn de paro (Stop
button).
Cuando usted crea un objeto en el panel frontal, una terminal es creada en el diagrama de
bloques. Estas terminales le dan acceso a los objetos del panel frontal del cdigo creado
mediante el diagrama de bloque.
Los controles tienen una flecha en el lado derecho y tienen un borde grueso. Los
indicadores tienen una flecha en el lado izquierdo y un borde fino. Reglas lgicas pueden
ser aplicadas al conectar en LabVIEW: Cada cable debe tener una (pero solo una) fuente (o
control), y cada cable puede tener varios destinos (o indicadores).
Adems de los terminales del panel frontal, el diagrama de bloques contiene funciones.
Cada funcin puede tener mltiples terminales de entradas y salidas. La conexin de estas
terminales es una parte muy importante de la programacin en LabVIEW.
Una vez que usted tenga cierta experiencia programado en LabVIEW, la conexin de
cables se le har mas fcil. Primero puede que necesite ayuda. En seguida se le muestra
algunas recomendaciones para comenzar:
La herramienta para conectar o de cableado es utilizada para conectarse a los nodos de las
funciones. Cuando usted apunte con la herramienta de cableado, apunte con el extremo del
cable que cuelga del carrete. Aqu es donde el cable ser colocado.
Mientras usted mueve la herramienta de cableado sobre las funciones, observe la vieta
amarilla que aparece. Esto le dir el nombre de la terminal al que se esta conectando.
Mientras usted mueva la herramienta de cableado encima de una terminal, esta va a mostrar
informacin. Esto le ayudara a identificar donde se va a unir el cable.
Para mas ayuda con los terminales, haga clic derecho en la funcin y seleccione Visible
Items o Objetos Visibles>>Terminals o Terminales. Un dibujo de la funcin ser
colocada atrs para revelar las terminales de la conexin. Note los colores - estos
corresponden a los tipos de datos utilizados por los terminales del panel frontal.
Para ayuda adicional, seleccione Help >> Show Context Help, o presione CTRL+H. Esto
mostrara la ventana de ayuda en contexto. A medida que uno mueva el raton (mouse) sobre
la funcin, esta ventana le mostrara la funcin, terminales, y una breve descripcin. Utilice
esto junto con otras herramientas para ayudarse mientras conecta los cables.
Si el cableado no se ve muy bien, haga clic derecho en el cable que se desea arreglar y
escoja la opcin de Clean Up Wire o Limpieza del Cable para que automticamente el
cable haga su ruta de nuevo.
El hacer un simple, doble, y triple clic en el cable selecciona el cable para moverlo o para
borrarlo.
Haciendo clic derecho o presionando el botn Esc mientras se esta cableando cancela la
operacin de cableado.
LabVIEW cablea automticamente los objetos a medida que usted los coloca en el
diagrama de bloque. Tambin puede cablear automticamente objetos que ya estn
colocados en el diagrama de bloque. LabVIEW conecta la terminal que mejor combina
(match) y deja las terminales que no combinan (match) sin conectar. A medida que usted
mueve un objeto seleccionado cerca de otros objetos en el diagrama de bloque, LabVIEW
dibuja cables temporales para mostrarle conexiones validas. Cuando usted suelta el botn
del mouse para poner el objeto en el diagrama de bloque, LabVIEW conecta
automticamente los cables. Cambie al cableado automtico presionando el espaciador
(spacebar) mientras mueve un objeto utilizando la herramienta de posicionamiento
(Positioning tool). Puede ajustarlas opciones del cableado automtico seleccionando Tools
>> Options y seleccionando Block Diagram de el men superior principal.
2.3 FLUJO DE DATOS
LabVIEW sigue un modelo de flujo de datos para correr los VIs. Un nodo del diagrama de
bloque se ejecuta cuando todas sus entradas estn disponibles. Cuando un nodo completa la
ejecucin, suministra datos a sus terminales de salida y pasa los datos de salida al siguiente
nodo en la trayectoria del flujo de datos. Visual Basic, C++, JAVA y otros lenguajes de
programacin basados en texto, siguen un modelo de control de flujo de la ejecucin de un
programa. En flujo de control, el orden secuencial de los elementos del programa determina
el orden de ejecucin de un programa.
Considere el diagrama de bloque que se encuentra arriba. Este suma dos nmeros y luego
resta 50 del resultado de la suma. En este caso, el diagrama de bloque se ejecuta de
izquierda a derecha, no porque los objetos estn puestos en ese orden, sino porque una de
las entradas de la funcin de resta no es valida hasta que la funcin de suma o adicin haya
terminado su ejecucin y pasado los datos a la funcin de resta. Recuerde que un nodo se
ejecuta solamente cuando tiene datos disponibles en todas sus terminales de entrada, y
suministra datos a sus terminales de salidas solamente cuando termina su ejecucin.
Haga clic en el botn de Lock Context Help para congelar el contenido actual de la ventana
de la Context Help. Cuando los contenidos estn congelados, el mover el cursor sobre otros
objetos no cambia los contenidos de la ventana. Para descongelar la ventana, haga clic
nuevamente en el botn. Usted tambin puede tener acceso a esta opcin desde el men de
ayuda (Help).
Haga clic en el botn de More Help (mas ayuda) para desplegar el tema correspondiente en
LabVIEW Help, el cual describe el objeto en forma detallada.
LabVIEW Help (Ayuda de LabVIEW) Puede acceder a LabVIEW Help ya sea haciendo
clic en el botn de More Help en la ventana de Context Help, seleccionando HelpVI,
Function, & How-To Help, haciendo clic en la oracin Click here for more help en la
ventana de Context Help o presionando <Ctrl-?>.
3.1 ESTRUCTURAS
Al igual que otras estructuras posee varios subdiagramas, que se superponen como si de
una baraja de cartas se tratara. En la parte superior del subdiagrama aparece el identificador
del que se est representando en pantalla. A ambos lados de este identificador aparecen
unas flechas que permiten pasar de un subdiagrama a otro.
En este caso el identificador es un valor que selecciona el subdiagrama que se debe ejecutar
en cada momento.
En este caso la estructura Case engloba dos sentencias diferentes de otros lenguajes
convencionales:
1.- If condicin true then ejecutar case true else ejecutar case false
2.- Case selector of
1: ejecutar case 1,
n: ejecutar case n
Case no cuenta con los registros de desplazamiento de las estructuras iterativas pero si
podemos crear los tneles para sacar o introducir datos. Si un case o suceso proporciona un
dato de salida a una determinada variable ser necesario que todos los dems tambin lo
hagan, si no ocurre de esta manera ser imposible ejecutar el programa.
Al contrario del case, si un frame aporta un dato de salida a una variable los dems no
tendrn por que hacerlo. Pero tendremos que tener en cuenta que el dato estar solamente
disponible cuando se ejecute el ultimo frame y no cuando se ejecute el frame que transfiere
el dato.
Usaremos For Loop cuando queramos que una operacin se repita un nmero determinado
de veces. Su equivalente en lenguaje convencional es:
For i= to N-1
Ejecuta subdiagrama
Al colocar un For Loop en la ventana Diagram observamos que tiene asociados dos
terminales:
Para pasar valores de una iteracin a otra se emplean los llamador shift registers. Para crear
uno, se pulsar el botn derecho del ratn mientras ste se halla situado sobre el borde del
bucle, seleccionando la opcin Add Shift Register. El shift register consta de dos
terminales, situados en los bordes laterales del bloque. El terminal izquierdo almacena el
valor obtenido en la iteracin anterior. El terminal derecho guardar el dato correspondiente
a la iteracin en ejecucin. Dicho dato aparecer, por tanto, en el terminal izquierdo durante
la iteracin posterior.
Usaremos While Loop cuando queramos que una operacin se repita mientras una
determinada condicin sea cierta. Su equivalente en lenguaje convencional es:
Do ejecutar subdiagrama While condicin is TRUE
2.- Terminal de iteracin: indica el numero de veces que se ha ejecutado el bucle y que
como mnimo, siempre ser una (i=O).
3.2 VARIABLES LOCALES Y GLOBALES
En LabVIEW todos los controles introducidos en el Panel Frontal que generan un terminal
en la ventana Diagrama van a ser variables, identificables por el nombre asignado en la
etiqueta. Pero puede ocurrir que queramos utilizar el valor de cierta variable en otros
subdiagrama o en otro VI o, simplemente, que queramos guardar un resultado intermedio.
La forma mas sencilla de hacerlo es generado variables locales y/o globales dependiendo de
la aplicacin.
En las variables locales los datos se almacenan en algunos de los controles o indicadores
existentes en el panel frontal del VI creado, es por eso que estas variables no sirven para
intercambiar datos entre VIs. La principal utilidad de estas variables radican en el hecho de
que una vez creada la variable local no importa que proceda de un indicador o de un
control, ya que se podr utilizar en un mismo Diagrama tanto de entrada como de salida.
Las variables locales estn disponibles en el men Structs & Constants de la paleta
Function y disponen del siguiente menu Pop-up:
- Change To Read Local o Change To Write Local: Permite escoger entre leer o escribir en
el control.
Select item: Visualiza una lista con el nombre de todos los controles existentes en el Panel
Frontal y de ella escogeremos el control al cual queremos que haga referencia nuestra
variable. Es por esto que para poder crear el variable local ser imprescindible que el
control tenga asignado un nombre de identificador. Una vez creada la variable local, si en
algn momento se cambia el nombre del control origen, ser necesario cambiar tambin el
nombre de la variable local ya LabVIEW no actualiza los cambios.
- Show Label: Muestra una etiqueta con el nombre del VI al que pertenece la
variable local.
Las variables globales son un tipo especial de VI, que nicamente dispone de Panel Frontal,
en el cual se define el tipo de datos de la variable y el nombre de identificacin
imprescindible para despues podernos referir a ella.
Cuando escogemos la funcin Global del men Structs & constants creamos un nuevo
terminal en el diagrama, este terminal corresponde a un VI que inicialmente no contiene
ninguna variable. Para poderlas aadir haremos doble clic en el terminal y se habra el
panel frontal. Una vez abierto, las variables se definen igual que cualquier control o
indicador de un VI normal.
Podemos crear un VI para cada variable global o definirlas todas en el mismo, que es la
opcin mas indicada para cualquier aplicacin. Cuando terminemos de colocar todas las
variables grabaremos el VI y lo cerraremos. Si una vez cerrado queremos aadir nuevas
variables, bastara con volverlo a abrir e introducir los cambios necesarios. Para aadir
nuevas terminales que hagan referencia a las variables globales creadas, no volveremos a
ejecutar la funcin Global ya que esto creara un nuevo VI sino que abriremos el ya
existente mediante el comando VI del men Function y seleccionaremos la variable en
concreto a travs del comando select item del men pop-up. Adems, este mismo men
cuenta con otra opcin que nos permite utilizar una variable ya creada para leer datos o para
almacenarlos: Se trata del comando Change To Read Global o Changes To Write Global.
3.3 ERRORES
Encontrando los Errores: Para hacer una lista de los errores, haga clic en la flecha
quebrada. Para localizar el objeto malo, haga clic en el mensaje del error.
Haga clic en los cables con la herramienta Probe o haga clic derecho en el cable para
ajustar los PROBES.
Utilice el VI Debug Demonstrate del BASICS.LLB para demostrar las opciones y las
herramientas
3.4 TIPS
LabVIEW tiene muchas teclas de atajo que hacen el trabajo ms fcil. Las ms comunes se
listan en la diapositiva.
Panel frontal
En primer lugar, se debe construir el panel frontal deseado, que en este ejemplo debe tener
el siguiente forma:
Proceso a seguir:
2. Colocar un "vertical switch" (paleta Boolean), cuyo nombre ser Enable. Su finalidad
ser finalizar la adquisicin.
3. Emplear la Labeling Tool para crear una etiqueta libre para ON y OFF. Utilizar la
Coloring Tool para hacer que el borde de dicha etiqueta sea transparente. La T en el borde
inferior izquierdo de la paleta de colores hace transparente un objeto.
4. Colocar el grfico (waveform chart), situado en la paleta Graph. Su nombre ser Random
Signal. El grfico representar valores aleatorios en tiempo real.
5. El grfico tiene un display digital que muestra el ltimo dato. Pulsar el botn derecho del
ratn situado sobre el grfico, y seleccionar Digital Display del submen Show. Asimismo
se deber deseleccionar Legend y Palette del mismo submen.
6. Empleando la Labeling Tool, pulsar dos veces con el botn izquierdo del ratn sobre el
10.0 en el eje Y del grfico, introducir 1.0 y pulsar fuera del grfico. As se habr cambiado
el fondo de escala.
7. Colocar un knob (paleta Numeric), cuyo nombre ser Loop Delay (sec) Este control
determinar la velocidad de ejecucin del bucle. Pulsar sobre l con el botn derecho del
ratn y deseleccionar Digital Display del submen Show.
8. Empleando la Labeling Tool, pulsar dos veces con el botn izquierdo del ratn sobre el
10.0 de la escala, introducir 2.0 y pulsar fuera del control para introducir el nuevo valor.
Diagrama de bloques
El siguiente es el aspecto que presentar el diagrama de bloques una vez finalizada su
construccin:
4. Seleccionar la funcin Wait until Next ms Multiple de la subpaleta Time & Dialog del
men de funciones.
5. Seleccionar la funcin de multiplicacin de la subpaleta Numeric, del men de funciones,
as como una constante numrica, introduciendo el valor 1000 en lugar de 0, que es el que
aparece por defecto.
6. Colocar los cables tal y como se muestra en la figura anterior, empleando para ello la
Wiring Tool.
7. Volver al panel frontal. Con la Operating Tool poner el interruptor en su posicin ON.
Ejecutar el programa pulsando el botn run.
8. Para finalizar la ejecucin del bucle, colocar el interruptor en la posicin de OFF. De ese
modo la condicin de ejecucin del bucle While ser falsa, por lo que se detendr a la
siguiente iteracin.