Professional Documents
Culture Documents
LabVIEW es un novedoso lenguaje de programacin grfica para aplicaciones que involucren adquisicin,
control, anlisis y presentacin de datos. LabVIEW es un entorno de programacin destinado al desarrollo de
aplicaciones, similar a los sistemas de desarrollo comerciales que utilizan el lenguaje C/C ++ o BASIC. Sin embargo,
LabVIEW se diferencia de dichos programas en un importante aspecto: los citados lenguajes de programacin se
basan en lneas de texto para crear el cdigo fuente del programa, mientras que LabVIEW emplea la programacin
grfica o lenguaje G para crear programas basados en diagrama de bloques.
Adems de las funciones bsicas de todo lenguaje de programacin, LabVIEW posee extensas libreras de
funciones y subrutinas; entre ellas, LabVIEW incluye libreras especficas para la comunicacin remota con equipos
generadores de funciones, osciloscopios, etc.
Las ventajas que proporciona el empleo de LabVIEW se resumen en las siguientes:
Se reduce el tiempo de desarrollo de las aplicaciones al menos 4 a 10 veces, ya que es muy intuitivo y fcil de
aprender.
Dota de gran flexibilidad al sistema, permitiendo cambios y actualizaciones tanto del hardware como del
software.
Da la posibilidad a los usuarios de crear soluciones completas y complejas.
Con un nico sistema de desarrollo se integran las funciones de adquisicin, anlisis y presentacin de datos.
El sistema est dotado de un compilador grfico para lograr la mxima velocidad de ejecucin posible.
Tiene la posibilidad de incorporar aplicaciones escritas en otros lenguajes.
LabVIEW2010
Ing. Erik Ral Coveas Len
erikrcl@hotmail.com
Para el empleo de LabVIEW no se requiere gran experiencia en programacin, ya que se emplean iconos,
trminos e ideas familiares a cientficos e ingenieros, y se apoya sobre smbolos grficos en lugar de lenguaje escrito
para construir las aplicaciones. Por ello resulta mucho ms intuitivo que el resto de los lenguajes de programacin
convencionales.
LabVIEW tambin proporciona potentes herramientas que facilitan la depuracin de los programas.
CMO TRABAJA LABVIEW?
Los programas desarrollados mediante LabVIEW se denominan Instrumentos Virtuales (VIs), porque su
apariencia y funcionamiento imitan los de un instrumento real. Los VIs tienen una parte interactiva con el usuario y
otra parte de cdigo fuente, y aceptan parmetros procedentes de otros VIs. Todos los VIs tienen un panel frontal y
diagrama de bloques. Las paletas contienen las opciones que se emplean para crear y modificarlos VIs. A
continuacin se proceder a realizar una descripcin de estos conceptos.
1. PANEL FRONTAL
Se trata de la interfaz grfica del VI con el usuario. Esta interfaz recoge las entradas procedentes del
usuario y representa las salidas proporcionadas por el programa. Un panel frontal est formado por una serie
de botones, pulsadores, potencimetros grficos, etc. Cada uno de ellos puede estar definido como un control
o como un indicador. Los primeros sirven para introducir parmetros al VI, mientras que los indicadores se
emplean para mostrar los resultados producidos, ya sean datos adquiridos o resultados de alguna operacin.
LabVIEW2010
Ing. Erik Ral Coveas Len
erikrcl@hotmail.com
2. DIAGRAMA DE BLOQUES
El Diagrama de Bloques constituye el cdigo fuente del VI. En el Diagrama de Bloques es donde se
realiza la implementacin del programa del VI para controlar o realizar cualquier procesado de las entradas y
salidas que se crearon en el Panel Frontal.
El Diagrama de Bloques incluye funciones y estructuras integradas en las libreras que incorporan
LabVIEW. En el lenguaje G las funciones y las estructuras son nodos elementales. Son anlogas a los
operadores o libreras de funciones de los lenguajes convencionales.
Los controles e indicadores que se colocaron previamente en el panel frontal, se materializan en el
diagrama de bloques mediante los terminales. A continuacin se presenta un ejemplo de lo recin citado.
Funcin.
Estructura.
Terminales (Controles e Indicadores).
LabVIEW2010
Ing. Erik Ral Coveas Len
erikrcl@hotmail.com
El diagrama de bloques se construye conectando los distintos objetos entre s, como si de un circuito se tratar.
Los cable unen terminales de entrada y salida con los objetos correspondientes, y por ello fluyen los datos.
LabVIEW posee una extensa librera de funciones, entre ellas, aritmticas, comparaciones, conversiones,
funciones de entrada / salida, de anlisis, etc.
Las estructuras, similares a las declaraciones causales y a los bucles en lenguajes convencionales, ejecutan el
cdigo que contienen de forma condicional o repetitiva (bucle for, while, case, ).
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.
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:
Paleta de Herramientas
Se emplea tanto en el panel frontal como en el diagrama de bloques. Contiene las herramientas
necesarias para editar y depurar los objetos tanto del panel frontal como del diagrama de bloques.
LabVIEW2010
Ing. Erik Ral Coveas Len
erikrcl@hotmail.com
Las opciones que presenta esta paleta son las siguientes:
Scroll Windows: Desplaza la pantalla sin necesidad de emplear las barras de desplazamiento.
Probe Data: 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.
LabVIEW2010
Ing. Erik Ral Coveas Len
erikrcl@hotmail.com
El men Controls de la ventana correspondiente al panel frontal contiene las siguientes opciones:
List & Table: Para visualizar y/o seleccionar una lista de opciones.
Classic Controls: Para mostrar los controles clsicos, utilizados en las versiones anteriores
de LabVIEW.
Al seleccionar objetos desde el men controls estos aparecen sobre el panel frontal, pueden
colocarse donde convenga, y adems tienen su propio men desplegable que permite la configuracin
de algunos parmetros especficos de cada tipo de control.
Universidad Alas Peruanas Filial Cajamarca
http://www.uap.edu.pe
LabVIEW2010
Ing. Erik Ral Coveas Len
erikrcl@hotmail.com
3.3 Paleta de Funciones (Functions Palette)
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/salida de datos a fichero, adquisicin de seales, temporizacin de la
ejecucin del programa, etc.
Para seleccionar una funcin o estructura concreta, se debe desplegar el men Functions y elegir
entre las opciones que aparecen. A continuacin se enumeran todas ellas, junto con una pequea
definicin.
Structures: Muestra las estructuras de control del programa, junto con las variables locales y
globales.
LabVIEW2010
Ing. Erik Ral Coveas Len
erikrcl@hotmail.com
Array: Contiene funciones tiles para procesar datos en forma de vectores, as como constantes
de vectores.
Cluster: Contiene funciones tiles para procesar datos procedentes de grficas y destinados a
ser representados en ellas, as como las correspondientes constantes.
Comparison: Muestra funciones que sirven para comparar nmeros, valores booleanos o
cadena de caracteres.
Time & Dialog: Contiene funciones para trabajar con cuadros de dilogo, introducir contadores
y retardos, etc.
Waveform: Maneja todo tipo de formas de ondas, las procesa, transforma y muestra en
pantalla.
Analyze: Contiene un submen en el que se puede elegir entre una amplia gama de funciones
matemticas de anlisis.
Instrument I/O: Muestra un submen de VIs, que facilita la comunicacin con instrumentos
perifricos que siguen la norma ANSI/IEEE 488.2-1987, y el control del puerto serie.
Graphics y Sound: Contiene a su vez un submen donde puede elegirse entre distintas libreras
referentes para generar grficas y sonidos mediante el computador.
Communication: Muestra diversas funciones que sirven para comunicar varios ordenadores
entre s, o para permitir la comunicacin entre distintos programas.
Report Generation: Genera todo tipo de reportes, as como tambin genera impresiones de
estos reportes.
LabVIEW2010
Ing. Erik Ral Coveas Len
erikrcl@hotmail.com
Advanced: Contiene diversos submens que permiten el control de la ayuda, de los VIs,
manipulacin de datos, procesado de eventos, control de la memoria, empleo de programas ejecutables
o incluidos en libreras DLL, etc.
User Libraries: Muestra las libreras definidas por el usuario. En este caso, la librera mostrada
contiene los drivers de la tarjeta de adquisicin de datos de Advantech.
4. PROGRAMACIN EN LABVIEW
Con el entorno grfico de programacin de LabVIEW se comienza a programar a partir del panel
frontal.
En primer lugar se definirn y seleccionarn de la paleta de controles todos los controles (entradas que
dar el usuario) e indicadores (salidas que presentar en pantalla el VI) que se emplearn para introducir los
datos por parte del usuario y presentar en pantalla los resultados.
Una vez colocados en la ventana correspondiente del panel frontal todos los objetos necesarios, debe
pasarse a la ventana Diagram (Men Windows Show Diagram), que es donde se realiza la programacin
propiamente dicha (diagrama de bloques). Al abrir esta ventana, en ella se encuentran los terminales
correspondientes a los objetos situados en el panel frontal, dispuestos automticamente por LabVIEW.
Para facilitar la tarea de conexin de todos los terminales, en el men Help puede elegirse la opcin
Show Help, con lo que al colocar el cursor del ratn sobre un elemento aparece una ventana con
informacin relativa a ste (parmetros de entrada y salida). Adems, si se tiene seleccionado el cursor de
cableado, al situar ste sobre un elemento se muestran los terminales de forma intermitente.
5. EJECUCIN DE UN VI
Una vez que se ha concluido la programacin del VI se debe proceder a su ejecucin. Para ello la
ventana activa debe ser el panel frontal (si se est en la ventana del diagrama de bloques, se debe seleccionar
la opcin Show Panel del men Windows).
LabVIEW2010
Ing. Erik Ral Coveas Len
erikrcl@hotmail.com
Una vez situados en el panel frontal, se pulsar el botn Run, situado en la barra de herramientas.
El programa comenzar a ejecutarse. Mientras dura la ejecucin del mismo, la apariencia del botn
Run es la que se muestra a continuacin:
De este modo el programa se ejecutar una sola vez. Si se desea una ejecucin continua, se pulsar el
botn situado a la derecha del de Run (Run Continuously). Si durante el funcionamiento continuo del
programa se vuelve a pulsar el citado botn, se finalizar la ltima ejecucin del mismo, tras lo cual el
programa se parar.
10
LabVIEW2010
Ing. Erik Ral Coveas Len
erikrcl@hotmail.com
Barra de Herramientas del Panel Frontal mostrando los botones Abort Execution y Pause
6. ESTRUCTURAS
En la paleta de funciones la primera opcin es la de las estructuras. stas controlan el flujo del
programa, bien se mediante la secuenciacin de acciones, ejecucin de bucles, etc.
Las estructuras se comportan como cualquier otro nodo en el diagrama de bloques, ejecutando
automticamente lo que est programando en su interior una vez tiene disponibles los datos de entrada, y una
vez ejecutadas las instrucciones requeridas, suministran los correspondientes valores a los cables unidos a sus
salidas. Sin embargo, cada estructura ejecuta su subdiagrama de acuerdo con las reglas especficas que rigen
su comportamiento, y que se especifican a continuacin.
Un subdiagrama es una coleccin de nodos, cables y terminales situados en el interior del rectngulo
que constituye la estructura. El Foor Loop y el While Loop nicamente tienen un subdiagrama. El Case
Structure y el Sequence Structure, sin embargo, pueden tener mltiples subdiagramas, superpuestos como si
se tratar de cartas en una baraja, por lo que en el diagrama de bloques nicamente ser posible visualizar al
tiempo uno de ellos. Los subdiagramas se construyen del mismo modo que el resto del programa.
Las siguientes estructuras se hayan disponibles en el lenguaje G.
LabVIEW2010
Ing. Erik Ral Coveas Len
erikrcl@hotmail.com
Esta estructura secuencia la ejecucin del programa. Primero ejecutar el subdiagrama de la hoja
(frame) N0, despus el de la N1, y as sucesivamente.
Para pasar datos de una hoja a otra se pulsar el botn derecho del ratn sobre el borde de la
estructura, seleccionando la opcin Add Sequence Local.
12
LabVIEW2010
Ing. Erik Ral Coveas Len
erikrcl@hotmail.com
Esta estructura secuencia la ejecucin del programa. Primero ejecutar el subdiagrama de la izquierda
(frame N0), despus el de la derecha (frame N1), y as sucesivamente.
Al igual que otras estructuras posee varios subdiagramas, que se superponen como si de una
baraja de cartas se tratar. En la parte superior del diagrama 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.
13
LabVIEW2010
Ing. Erik Ral Coveas Len
erikrcl@hotmail.com
La estructura Case tiene al menos dos subdiagramas (True y False). nicamente se ejecutar el
contenido de unos de ellos, dependiendo del valor de lo que se conecte al selector.
14
LabVIEW2010
Ing. Erik Ral Coveas Len
erikrcl@hotmail.com
el dato correspondiente a la iteracin en ejecucin. Dicho dato aparecer, por tanto, en el terminal izquierdo
durante la iteracin posterior.
Se puede configurar un Shift Registers para memorizar valores de varias iteraciones previas. Para ello,
con el ratn situado sobre el terminal izquierdo del shift registers se pulsar el botn derecho, seleccionando a
continuacin la opcin Add Element.
Estructura for Loop mostrando shift registers con capacidad para almacenar varios valores
15
LabVIEW2010
Ing. Erik Ral Coveas Len
erikrcl@hotmail.com
6.5 While Loop
+1
16
LabVIEW2010
Ing. Erik Ral Coveas Len
erikrcl@hotmail.com
Implementacin de la ecuacin
+1
Para definir una frmula mediante esta estructura, se actuar del siguiente modo:
En primer lugar, se deben definir las variables de entrada y las de salida. Para ello, se pulsa con el
botn derecho del ratn sobre el borde de la formula node. A continuacin se seleccionar Add
input o Add output, segn se trate de una entrada o una salida, respectivamente. Aparecer un
rectngulo, en el que se debe escribir el nombre de la variable (se distingue entre maysculas y
minsculas). Todas las variables que se empleen deben estar declaradas como entradas o salidas.
Las que se empleen como variables intermedias se declararn como salidas, aunque
posteriormente no se unan a ningn bloque posterior.
Una vez definidas las variables a emplear, se escribirn la o las frmulas en el interior del
recuadro (para ello se emplea la labeling tool). Cada frmula debe finalizar con un ;.
Los operadores y funciones que se pueden emplear se explican en la ayuda del LabVIEW, y son
los que se muestran a continuacin:
Operadores:
Asignacin
Condicional
OR lgico
AND lgico
Relacionales
Aritmticos
=
?:
||
&&
==
!=
>
<
>=
<=
+-*/^
17
LabVIEW2010
Ing. Erik Ral Coveas Len
erikrcl@hotmail.com
Funciones:
> <
> <
>
Si el valor lgico de la expresin condicional es true se ejecutar texpresin. Si por el contrario, fuese
false, lo que se aplicar ser fexpresin.
18