Está en la página 1de 11

Carpeta de Trabajos Prcticos

Ao: 2012


1
Introduccin
LABVIEW (L aboratory Virtual Instruments Engineering Workbench) es un sistema de desarrollo basado
en programacin grafica. Est orientado a desarrollar aplicaciones para instrumentacin que integra una
serie de libreras para comunicacin con instrumentos electrnicos como GPIB, RS232 o RS485 con tarjetas
de adquisicin de datos, sistemas de adquisicin y acondicionamiento; comunicaciones en redes TCP/IP,
etctera.
Los programas realizados en LabView se llaman instrumentos virtuales (Vls) ya que tienen la apariencia
de los instrumentos reales, sin embargo, poseen analogas con funciones provenientes de leguajes de
programacin convencionales.
Ejercicios para aprender el manejo este entorno de programacin
Los ejercicios a continuacin son los realizados en las clases que tienen como fin utilizar algunos
controles y funciones del programa, los cuales darn el impulso a aquellos estudiantes que deseen
profundizar en esta herramienta tan completa.

CALCULOS ARITMETICOS
Para familiarizarnos comenzamos haciendo clculos aritmticos con funciones obtenidas de
Programming>Numeric.
Se trata de un programa que debemos ingresar un control numrico con el valor de radio y el
programa nos devolver en dos indicadores el rea y volumen para ese radio.
El diagrama de Bloques:

Panel Frontal:
Carpeta de Trabajos Prcticos

Ao: 2012


1


ESTRUCTURA FOR
Repite el subdiagrama un nmero definido de veces.
100 es el nmero de veces que se ejecutara el subdiagrama.
Iteraciones indica la cantidad de veces que se ha ejecutado el subdiagrama.
El generador aleatorio genera valores entre 0 y 1, lo multiplicamos por 40 para poder observar mejor
en el indicador tipo chart.
Diagrama de Bloques:

Panel Frontal:
Carpeta de Trabajos Prcticos

Ao: 2012


1


ESTRUCTURA FORMULA NODE
Es una caja donde se alojan formulas matemticas y lgicas para su evaluacin. Las entradas se
colocan en el lado izquierdo por lo tanto en el lado derecho se ubican los resultados de las ecuaciones.
Proponemos otra forma de realizar el clculo de rea y volumen de una esfera.
Diagrama de Bloques:

Panel Frontal:
Carpeta de Trabajos Prcticos

Ao: 2012


1

CLUSTERS
Es una coleccin ordenada de variables que pueden ser de distintos tipos (enteros, char,etc.). Para
crear un control o indicador del tipo cluster debemos ubicar en la paleta de controles el submen:
Array&Cluster>>Cluster
Aparecer una caja donde introduciremos los controles o indicadores a utilizar. En nuestro ejemplo
fijamos dentro de el 3 controles de texto, un control numrico, un botn y una llave. El panel frontal de
nuestro cluster se ve entonces as:

Los cluster poseen un nico terminal en el diagrama de bloques. En la figura siguiente es un cuadro
con pequeos rectngulos en su interior. Para manipular estos clusters existen funciones que las ubicamos
en el mismo lugar de donde tomamos el cluster, las que utilizamos fueron Unbundle y Bundle.
El Unbundle permite separar las variables del cluster para poder utilizarlas de forma independiente
dentro del mismo diagrama. Mostramos entonces la ventana diagrama de bloques de LabView donde se
puede observar como a partir del segundo bloque siguiendo la lnea de flujo de labview que es de izquierda
a derecha, es posible separar las variables y crear en cada una de ellas un indicador.
Carpeta de Trabajos Prcticos

Ao: 2012


1

El panel frontal para este diagrama de bloques se muestra a continuacin. A la derecha de la caja
cluster aparecen los indicadores creados luego de separar las variables con Unbundle.


El Bundle realiza la tarea contraria, es decir, crea un cluster a partir de varios componentes
independientes. Tambin se utiliza para reemplazar componentes de un cluster ya existentes.
La siguiente imagen a continuacin es del panel frontal donde muestra los elementos
independientes (numeric, array, real matrix) que a travs de la funcin Bundle se convierten en un
cluster que en el grafico se llama output cluster .
Carpeta de Trabajos Prcticos

Ao: 2012


1

El diagrama de bloques correspondiente a este panel frontal es:

El elemento del medio es el bloque Bundle.
COMUNICACIN SERIAL RS232
Para que un instrumento virtual utilice el puerto serie es necesario la manipulacin de las libreras
llamadas NI-VISA.
La paleta de control se la ubica en Instruments I/O > Serial. Aparecen varias funciones de las cuales
utilizamos :
Visa configure serial port: configura el puerto serie con todos los parmetros ( velocidad, protocolo,
paridad, etc.).
Carpeta de Trabajos Prcticos

Ao: 2012


1
Visa Write: escribe datos desde el pin write buffer hasta el otro dispositivo.
Visa Read: es el contrario del anterior, hay que indicarle el numero de bytes que leer del buffer en el
pin byte count.
Visa open/close: abre y cierra una sesin Visa respectivamente.
Se propuso realizar una comunicacin entre LabView y un pic. Se dividi en 2 partes, en la primera se
pretende escribir un valor entre 0 y 255 en LabView y enviarlo al microcontrolador donde este mostrara
dicho resultado en unos leds conectados al puerto B.
La segunda parte requiere del proceso opuesto, enviar datos del pic a la pc. Se debe tomar una seal
de un sensor de temperatura, convertir esa seal en digital y enviar a labview para mostrar en una grafica
de tipo chart que tendr como ordenadas el valor de temperatura en C y como abscisas tiempo en
segundos. Como sensores se utilizaron un LM35 y un sensor de una placa de desarrollo de la marca
MCelectronics.
El diagrama de bloques es el siguiente:


El panel frontal posee estos elementos:
Carpeta de Trabajos Prcticos

Ao: 2012


1

VISA resource name detecta los puertos abiertos para que manualmente seleccionemos a cual puerto
vamos a conectarnos.
Puerto B es el valor que mostrara el pic en su puerto B, para ello seleccionamos aqu el numero a
mostrar deseado.
Numeric y Write buffer no se modifican ya que su funcin es darle el tipo de variable a convertir al
elemento Type cast . Debemos implementar este elemento ya que la recepcin y envo de datos seriales se
hace con datos del tipo string, entonces el elemento que convierte enteros de 8 bits a string y viceversa es
el type cast.
Y en la pantalla del indicador tipo chart muestra la evolucin de la temperatura en funcin del tiempo.
Con esto concluye la primer parte de la materia. La etapa que sigue est basada en el manejo de la
plataforma robtica LEGO MINDSTORMs a travs de LabView.
LEGO NXT MINDSTORMS posee:
3 motores
1 sensor de luz
1 sensor ultrasnico
1 sensor tctil
1 sensor de sonido
1 bloque programable
Piezas para ensamblar y formar el robot

Carpeta de Trabajos Prcticos

Ao: 2012


1
El bloque programable utiliza los sensores conectados para que el robot vea el ambiente y pueda
actuar sobre l con los motores. Solo hay que hacer volar la imaginacin para crear herramientas,
vehculos y hasta humanoides.

En primer lugar comenzamos con ejemplos simples para manipular los sensores. En el ejemplo
siguiente se conecto un sensor ultrasnico para medir la distancia entre el sensor y un obstculo, luego el
resultado de esa medicin se plasmo en el display que tiene incorporado el bloque programable.

Diagrama de bloques:

Sonar es el bloque del sensor ultrasnico, el cual entrega la distancia del objeto en centmetros, para
mostrar ese valor en la pantalla debemos convertirlo en variable de tipo string, es por eso que se agrega el
segundo bloque y recin nos dirigimos al bloque de la pantalla. A la pantalla debemos asignarle la lnea en
la que se escribir el dato. Todo esto se hace indefinidamente por la estructura while hasta que se
presione el botn stop. De manera similar se hicieron prcticas para los otros tipos de sensores.

Ya que comprendimos el funcionamiento de los sensores pasamos a utilizar en un mismo programa
sensores y actuadores.
Se propuso armar una especie de autito utilizando solo dos motores (2 ruedas), las cuales tenan que
girar hasta que el sensor detecte un objeto a 40 cm.
Presentamos el diagrama de bloques.
Carpeta de Trabajos Prcticos

Ao: 2012


1

Como sabemos la estructura CASE pose 2 subdiagramas (true y false), dependiendo de que su entrada
sea verdadera o falsa se ejecutara solo una de ellas. De acuerdo a esto pusimos un comparador que dar
verdadero cuando la distancia sea mayor a 40, en ese momento como se ve en la imagen el motor
permanecer excitado a una potencia del 75%. En el momento que la distancia al objeto sea menor a 40
cm el resultado de la comparacin ser falso, en ese momento el motor se detiene (brake).
Por ltimo se hizo un programa el cual el carrito deba recorrer una distancia que le especificbamos
manualmente a travs de Dist ida, luego frenaba para girar un ngulo de 90 hacia la derecha. El bloque
MotorDistance requiere que se le introduzca un ngulo, por ejemplo si se le ingresa un ngulo 360, har
que las ruedas giren una vuelta completa y se detendr. Para convertir ese desplazamiento angular en
lineal se usa una regla de 3 simples y ese valor obtenido se enva a dicho bloque.
Se hizo una secuencia, la primera realiza el movimiento lineal del coche hasta la distancia
especificada. Se detiene, pues eso le impone la segunda secuencia y por ltimo la tercera utiliza el bloque
SteeringOn que es el encargado de girar el coche. Este bloque necesita un valor de -100 a +100 para
producir un giro hacia la derecha y giro hacia la izquierda respectivamente.

Carpeta de Trabajos Prcticos

Ao: 2012


1