SlideShare una empresa de Scribd logo
1 de 36
Descargar para leer sin conexión
Ing. Mayra Peña. 1
¿Qué es LabVIEW?
LabVIEW (Laboratory Virtual Instrumentation Engineering Workbench) es
un entorno de desarrollo y diseño de sistemas con un lenguaje visual gráfico.
LabVIEW utiliza el lenguaje G (lenguaje gráfico) que acelera la productividad o
desarrollo de programas para una mejor eficiencia en el desarrollo de sistemas.
Es un software creado por la empresa National Instruments en 1976 y
sacado al mercado en 1986. Al desarrollar un programa en LabVIEW, se crea un
Instrumento Virtual o VI que contiene la interfaz gráfica del programa y el diagrama
de bloques (código).
Cuando un programa está terminado, el usuario final hace uso del panel
frontal, donde se encuentra todo lo necesario para controlar un sistema. El
diagrama de bloques es donde se encuentra el código del programa, es donde el
programador accede para modificar o mantener el programa.
Actualmente, el software de programación LabVIEW se puede utilizar en los
sistemas operativos Microsoft Windows, Mac OS X, GNU/Linux. Una de las
principales características de LabVIEW es que es relativamente fácil de usar, no
se requiere ser un experto en el área de programación para poder hacer un
programa que se pudiera considerar como complejo o incluso imposible de hacer
para algunos en otros lenguajes.
Aunque es necesario aclarar que para desarrollar programas que se
apliquen a la automatización, control, adquisición y manejo de datos sí es
necesario tener conocimientos más avanzados no solo de programación, sino de
otras áreas específicas para cada aplicación del programa que se tenga
planeado.
LabVIEW es principalmente utilizado por los ingenieros para el manejo de
datos, la comunicación entre una computadora y un aparato o circuito externo es
imprescindible para las aplicaciones que se le pueden dar al software, por lo que
LabVIEW puede comunicarse con interfaces como:
 Puerto serial
 Puerto paralelo
 GPIB
 PXI
 VXI
 TCP/IP
 Irda
 Bluetooth
 USB
Ing. Mayra Peña. 2
 OPC
 Entre otros.
Esto es lo que hace del Laboratorio Virtual de Instrumentación una
excelente opción para proyectos grandes donde se requieran conocimientos de
programación, electrónica, mecánica, robótica, etc. este software es utilizado en
empresas y agencias importantes como la NASA.
La programación representa un factor muy importante al hablar de
proyectos de automatización y control, donde se especializan ingenieros
mecatrónicos, robóticos y más. LabVIEW ofrece la herramienta para crear el
software, el programa depende del programador y su funcionamiento, eficacia y
utilidad dependerán de las habilidades de éste mismo.
“La potencia está en el software” Una frase muy célebre de LabVIEW, que
hace referencia a la capacidad e importancia que puede tener un programa en un
proyecto.
Funcionalidad de la aplicación
 Una de las funciones básicas será la de obtener datos del hardware de
forma transparente al usuario.
 La funcionalidad del programa incluye tratamiento de señal, control del flujo
de programa, control de errores, etc…
 Puede implementarse en lenguajes basados en texto (Visual Basic, C++,
LabWindows/CVI, etc.) o puede utilizar lenguaje gráfico como Labview,
Snap Master, DasyLab, HP-VEE, Visual Designer de Burr Brown, etc.
 Nuestro estudio se centrará en la programación bajo el entorno de
programación gráfica LabView.
Programación gráfica
Los procesos programables se definirán mediante un lenguaje gráfico en
vez de un lenguaje orientado a líneas de código como estamos acostumbrados
normalmente.
En este tipo de programación las funciones son bloques que se
interconectan entre sí, intercambiando la información.
Cuando usted diseña programas con Labview está trabajando siempre bajo
algo denominado VI, es decir, un instrumento virtual, se pueden crear VI a partir
de especificaciones funcionales que usted diseñe. Este VI puede utilizarse en
cualquier otra aplicación como una subfunción dentro de un programa general. Los
VI's se caracterizan por: ser un cuadrado con su respectivo símbolo relacionado
con su funcionalidad, tener una interfaz con el usuario, tener entradas con su color
de identificación de dato, tener una o varias salidas y por su puesto ser
reutilizables.
Ing. Mayra Peña. 3
Los programas de LabVIEW constan de un panel frontal y un diagrama en
bloque. En el panel frontal se diseña la interfaz con el usuario, viene a ser la cara
del VI y en el diagrama de bloques se programa en lenguaje G el funcionamiento
del VI.
El panel frontal.
El panel frontal de un VI es una combinación de controles e indicadores.
Los controladores son aquellos elementos que entregan datos al diagrama en
bloques desde el panel frontal por entrada desde teclado o con el mouse simulan
los dispositivos de entrada de datos del VI y pasan los datos y pasan los datos al
diagrama en bloque del VI. Los indicadores son aquellos elementos que entregan
datos al panel frontal desde el diagrama en bloques para ser visualizados en el
display, simulan los dispositivos de salida de datos del VI que toman los datos
desde el diagrama en bloque del VI.
Diagrama en bloques.
 Esta almacena el diagrama en bloques del VI, el código fuente gráfico,
(Lenguaje G) del instrumento virtual.
 Se construye este diagrama con bloques funcionales denominados nodos,
conectándose o uniéndose entre si según sea el objetivo.
 Estos nodos realizan todas las funciones específicas necesarias para el VI
y controlan el flujo de la ejecución del VI.
Conociendo LabVIEW
Al ejecutar el software LabVIEW, nos aparece una ventana como la
siguiente:
Ing. Mayra Peña. 4
Aquí podemos elegir del menú la opción de abrir un nuevo VI, un proyecto
en blanco o un VI desde una plantilla. Para empezar elegiremos abrir un VI en
blanco.
Nos aparecen dos ventanas, el Front Panel (Panel frontal) y Block Diagram
(Diagrama de bloques). En el panel frontal, es donde podemos elegir los
elementos que conformarán nuestro programa.
En la parte de arriba podemos encontrar el menú de ejecución, donde
podemos ejecutar el programa, pausarlo o abortarlo.
El primer botón (Run) sirve para ejecutar el programa, pero si el código no
incluye un ciclo para que el programa se repita infinitamente o la cantidad de
veces que el usuario elija, sólo parpadeará la pantalla y el programa no hará nada.
Si no se está trabajando con ciclos, es necesario hacer clic en el segundo
botón (run continuously), que significa correr continuamente, de esta manera, el
Ing. Mayra Peña. 5
programa se ejecutará hasta que el usuario vuelva a dar clic en ese botón o
realizar alguna acción en el programa que haga que éste se detenga.
El tercer botón sirve para abortar la ejecución. Este ícono se utiliza
solamente cuando el programa se cicla, es decir; que no se puede detener por
algún error en la programación. Esto sucede únicamente cuando se trabaja con
ciclos y es recomendable no usarlo si no es absolutamente necesario, ya que el
usarlo podría causar pérdida de datos.
El cuarto botón sirve para pausar la ejecución del programa.
El menú de la imagen 4 sirve para modificar el tamaño, fuente y color de las
letras que se utilicen en la interfaz del programa. Los otros cuatro botones sirven
para alinear y mover los elementos que se estén utilizando para dar un aspecto
más estético.
En la esquina superior derecha se encuentra la barra de búsqueda y el
botón de ayuda. También están dos íconos, el primero sirve para incluir sub VI´s
en el programa, aquí se construye el panel conector para poder utilizar sub VI´s.
El otro ícono sirve para ver y modificar las propiedades del VI (clic
derecho>VI properties). Desde ahí se puede editar el tamaño de la ventana del
programa, proteger el código con contraseña, el uso de CPU, etc.
También se puede editar el ícono dando clic derecho> Edit icon.
Ing. Mayra Peña. 6
En el diagrama de bloques los menús son muy parecidos, solo que aquí se
agrega un botón al menú de ejecución que sirve para ver paso a paso lo que el
diagrama de bloques está ejecutando, muy útil cuando se quiere ver el orden de
ejecución de todo el código y ver su comportamiento.
Otro botón que se agrega es el que limpia todo el código, para poner todos
los elementos de una forma más ordenada y legible.
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 (Tools palette)
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.
Ing. Mayra Peña. 7
 Paleta de controles (Controls palette)
Se utiliza únicamente en el panel frontal. Contiene todos los controles e
indicadores que se emplearán para crear la interfaz del VI con el usuario.
Ing. Mayra Peña. 8
Al seleccionar objetos desde el menú Controls estos aparecen sobre el
panel frontal, pueden colocarse donde convenga, y además tienen su propio menú
desplegable que permite la configuración de algunos parámetros específicos de
cada tipo de control.
 Paleta de funciones (functions palette)
Se emplea en el diseño del diagrama de bloques. La paleta de funciones
contiene todos los objetos que se emplean en la implementación del programa del
VI, ya sean funciones aritméticas, de entrada/salida de señales, entrada / salida de
datos a fichero, adquisición de señales, temporización de la ejecución del
programa.
Ing. Mayra Peña. 9
Para seleccionar una función o estructura concretas, se debe desplegar el
menú Functions y elegir entre las opciones que aparecen. A continuación se
enumeran todas ellas, junto con una pequeña definición.
Ing. Mayra Peña. 10
Ing. Mayra Peña. 11
Controles e indicadores
Los elementos de cada programa de LabVIEW se pueden definir como
controles o indicadores. Como se vio en el programa anterior, se usaron dos
controles para ingresar los números que se van a sumar. Con esto podemos
deducir que un control es un elemento que puede ser controlado o modificado por
el usuario, normalmente con perillas o flechas de incremento.
Por otro lado, los indicadores son los elementos que no pueden ser
modificados por el usuario, y que solamente muestran datos o resultados que el
programa arroja, por ejemplo en el programa anterior, el indicador muestra el
resultado de la suma.
En el diagrama de bloques es fácil distinguir un control de un indicador, el
control tiene el color del borde más grueso y la flechita de lado derecho, indicando
que el cable o datos van a salir del elemento, mientras que el indicador tiene el
borde más delgado y la flechita del lado izquierdo, indicando que va a recibir un
cable o datos.
Para cambiar un control a indicador o viceversa, solo se le da clic derecho al ícono
y otro clic en change to control o change to indicator, según se requiera.
Elementos booleanos
Como se debe saber, los elementos booleanos funcionan con un cero o un
uno, siendo falso o verdadero respectivamente, no tiene otro valor más que esos.
En LabVIEW los elementos booleanos se representan con el color verde y con las
letras t o f. Estos son botones, leds, comparadores, entre otros.
Un ejemplo muy sencillo del uso de estos, es para encender un led con un
switch, solo necesitamos un switch y un led, conectados entre sí, para poder
encender el led con los valores verdadero o falso.
Ing. Mayra Peña. 12
¿Cómo utilizar la ayuda?
Para visualizar el cuadro de ayuda, simplemente se hace Help»Show
Context Help o presionando <Ctrl-h>; en este cuadro se mostrará la información
del objeto sobre el cual nos paremos con el puntero del mouse. También se puede
notar que en el cuadro de ayuda se observa un Link azul, el cual nos lleva al
Labview help, donde encontramos una información más completa del elemento;
(haciendo clic derecho del mouse, también se puede observar el Labview help).
Ejecución de un vi.
Una vez se ha concluido la programación del VI se debe proceder a su
ejecución. Para ello la ventana activa debe ser el panel frontal (si se está en la
ventana del diagrama de bloques, se debe seleccionar la opción Show Panel del
menú Window).
Una vez situados en el panel frontal, se pulsará el botón de Run, situado en
la barra de herramientas.
El programa comenzará a ejecutarse. Mientras dura la ejecución del mismo,
la apariencia del botón de Run es la que se muestra a continuación:
Ing. Mayra Peña. 13
De este modo el programa se ejecutará una sola vez. Si se desea una
ejecución continua, se pulsará el botón situado a la derecha del de Run
(Continuous Run). Si durante el funcionamiento continuo del programa se vuelve a
pulsar el citado botón, se finalizará la última ejecución del mismo, tras lo cual el
programa se parará.
Para finalizar la ejecución de un programa se puede operar de dos formas.
La primera, y la más aconsejable, es emplear un botón en el panel frontal del VI,
cuya pulsación produzca la interrupción del bucle de ejecución de la aplicación. La
segunda forma de detener la ejecución del VI es pulsando el botón de pausa o el
de stop. La diferencia entre ambos es que si se pulsa stop, la ejecución del
programa finaliza inmediatamente, mientras que si se pulsa pausa, se produce
una detención en el funcionamiento del programa, retomándose su ejecución una
vez se vuelve a pulsar el mismo botón.
Estructuras
En la paleta de funciones la primera opción es la de las estructuras. Éstas
controlan el flujo del programa, bien sea mediante la secuenciación de acciones,
ejecución de bucles, etc.
Las estructuras se comportan como cualquier otro nodo en el diagrama de
bloques, ejecutando automáticamente lo que está programado en su interior una
vez tiene disponibles los datos de entrada, y una vez ejecutadas las instrucciones
Ing. Mayra Peña. 14
requeridas, suministran los correspondientes valores a los cables unidos a sus
salidas. Sin embargo, cada estructura ejecuta su subdiagrama de acuerdo con las
reglas específicas que rigen su comportamiento, y que se especifican a
continuación.
Un subdiagrama es una colección de nodos, cables y terminales situados
en el interiordel rectángulo que constituye la estructura. El For Loop y el While
Loop únicamente tienen un subdiagrama. El Case Structure y el Sequence
Structure, sin embargo, pueden tener múltiples subdiagramas, superpuestos como
si se tratara 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
construyes del mismo modo que el resto del programa Las siguientes estructuras
se hallan disponibles en el lenguaje G.
Case Structure
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.
La estructura Case tiene al menos dos subdiagramas (True y False).
Únicamente se ejecutará el contenido de uno de ellos, dependiendo del valor de lo
que se conecte al selector.
Sequence Structure
De nuevo, este tipo de estructuras presenta varios subdiagramas,
superpuestos como en una baraja de cartas, de modo que únicamente se puede
visualizar una en pantalla.
Ing. Mayra Peña. 15
También poseen un identificador del sudiagrama mostrado en su parte
superior, con posibilidad de avanzar o retroceder a otros subdiagramas gracias a
las flechas situadas a ambos lados del mismo.
Esta estructura secuencia la ejecución del programa. Primero ejecutará el
subdiagrama de la hoja (frame) nº0, después el de la nº 1, y así sucesivamente.
Para pasar datos de una hoja a otra se pulsará el botón derecho del ratón
sobre el borde de la estructura, seleccionando la opción Add sequence local.
For Loop
Es el equivalente al bucle for en los lenguajes de programación
convencionales. Ejecuta el código dispuesto en su interior un número
determinado de veces.
Ing. Mayra Peña. 16
Para pasar valores de una iteración a otra se emplean los llamador shift
registers. Para crear uno, se pulsará el botón derecho del ratón mientras éste se
halla situado sobre el borde del bucle, seleccionando la opción 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 iteración anterior. El
terminal derecho guardará el dato correspondiente a la iteración en ejecución
dicho dato aparecerá, por tanto, en el terminal izquierdo durante la iteración
posterior.
Se puede configurar un shift register para memorizar valores de varias
iteraciones previas. Para ello, con el ratón situado sobre el terminal izquierdo del
shift register se pulsará el botón derecho, seleccionando a continuación la opción
Add Element.
While Loop
Es el equivalente al bucle while empleado en los lenguajes convencionales
de programación. Su funcionamiento es similar al del bucle for.
Ing. Mayra Peña. 17
El programa comprueba el valor de lo que se halle conectado al terminal
condicional al finalizar el bucle. Por lo tanto, el bucle siempre se ejecuta al menos
una vez.
Con esta estructura también se pueden emplear los shift registers para
tener disponibles los datos obtenidos en iteraciones anteriores (es decir, para
memorizar valores obtenidos). Su empleo es análogo al de los bucles for, por lo
que omitirá su explicación.
Formula Node
La estructura denominada Formula Node se emplea para introducir en el
diagrama de bloques fórmulas de un modo directo. Resulta de gran utilidad
cuando la ecuación tiene muchas variables o es relativamente compleja. Por
ejemplo, se desea implementar la ecuación:
Para definir una fórmula 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 botón derecho del ratón sobre el borde de la
formula node. A continuación se seleccionará Add Input o Add Output,
Ing. Mayra Peña. 18
según se trate de una entrada o una salida, respectivamente. Aparecerá un
rectángulo, en el que se debe escribir el nombre de la variable (se distingue
entre mayúsculas y minúsculas). Todas las variables que se empleen
deben estar declaradas como entradas o salidas. Las que se empleen
como variables intermedias se declararán como salidas, aunque
posteriormente no se unan a ningún bloque posterior.
 Una vez definidas las variables a emplear, se escribirán la o las fórmulas en
el interior del recuadro (para ello se emplea la labeling tool). Cada fórmula
debe finalizar con un “;”.
 Los operadores y funciones que se pueden emplear se explican en la ayuda
de LabVIEW, y son los que se muestran a continuación:
Si el valor lógico de la expresión es true se ejecutará. Si por el contrario,
fuese false, lo que aplicará será expresión.
Como ejemplo considérese el siguiente fragmento de código:
Ing. Mayra Peña. 19
Sub VI.
Los programas realizados pueden ser “encapsulados” para ser utilizados
como nodos de tratamiento por otros programas.
Los pasos para crear un SubVI son:
 Crear el icono.
 Crear el conector.
 Asignar terminales.
 Salvar el VI.
 Insertar el VI dentro del VI principal.
Crear el icono.
Cree iconos personalizados para reemplazar los iconos predeterminados al
hacer clic derecho en la esquina superior derecha del panel frontal. Usted también
puede corregir iconos seleccionando File >> VI Propieties, seleccionando General
del menú Category y haciendo clic en el botón editar (Edit icon). Utilice las
herramientas del lado izquierdo de la casilla de dialogo del Icon Editor para crear
el diseño del icono del área de edición. El tamaño normal de la imagen del icono
aparece en la casilla apropiada en la parte derecha del área de edición. Usted
también puede arrastrar un gráfico desde cualquier archivo y colocarlo en la
esquina superior derecha del panel frontal o del diagrama de bloque. LabView
convierte el grafico en un icono de 32 * 32 pixeles.
Crear el conector.
Haga clic derecho sobre el icono. (Solamente en el panel frontal.)
Ing. Mayra Peña. 20
Para utilizar un VI como un SubVI, usted necesita crear un conector. El
conector es una serie de terminales que corresponden a los controles y a los
identificadores de un VI, similar a la lista de parámetros de una función basada en
un lenguaje de programación de texto. El conector define las entradas y salidas
que usted puede cablear al VI para que pueda utilizarlo como un SubVI.
Defina las conexiones asignando un control del panel frontal o un indicador
a cada una de las terminales del conector. Para definir un conector, de un clic
derecho sobre el icono en la maquina superior derecha de la ventana del panel
frontal y seleccione Show Connector del menú. El conector sustituye el icono.
Cada rectángulo en el conector representa una terminal. Utilice los rectángulos
para asignar entradas y salidas. El número de controles e indicadores en el panel
frontal.
Asignar terminales.
Después de seleccionar un patrón para utilizar un conector, debe definir las
conexiones asignando un control del panel frontal o indicador a cada uno de los
terminales del conector. Cuando usted hace vínculos entre controles e indicadores
y el conector, coloque las entradas de la izquierda y las salidas a la derecha para
evitar patrones complicados y pocos claros en su VI. Para asignar un terminal a un
control de panel frontal o indicador que usted desea asignar a la terminal. Haga
clic en un área abierta del panel de frontal. La terminal cambia de color del tipo de
datos del control para indicar que usted conecto la terminal. Usted también puede
seleccionar el control o indicador primeramente y después seleccionar la terminal.
Ing. Mayra Peña. 21
Asegúrese que salvo el VI después de haber hecho las asignaciones de las
terminales.
Salvar el SubVI.
Hay varias maneras de organizar sus SubVI. La manera más común es
organizarlos por aplicación. En este caso, son salvados en el mismo directorio o
dentro de un archivo de librería de VI todos los Vis para una aplicación en
particular. Salvarlos en un archivo de librería permite que usted transporte una
aplicación entera dentro de un solo archivo.
Salvar dentro de una librería es simple. Después de presionar Save As…,
presione New VI Librery. Esto le permitirá que usted nombre la librería y
entonces salvar su VI en él. Para agregar VI subsecuentes, simplemente haga
doble clic al archivo lib de la ventana estándar de Salvar. Y dar un nombre al VI.
Insertar el SubVI dentro de un VI principal.
Después de construir un VI y crear su icono y conector, usted puede
utilizarlo como un SubVI. Para colocar el SubVI en el diagrama de bloque,
seleccione Funtion>>Select VI. Navegue y haga un doble clic en el VI que usted
desea utilizar como SubVI y colóquelo en el diagrama de bloques.
También puede colocar el VI abierto en el diagrama de bloque de otro VI
abierto usando la herramienta de colocación. (Potitioning Tool) para hacer clic en
el icono en la esquina superior derecha del panel frontal o diagrama de bloque del
VI que usted utilizara como SubVI y arrastrar el icono al diagrama del otro VI.
Gráficas en LabVIEW.
Los gráficos son indicadores muy poderosos en LabVIEW, pueden ser
altamente adaptables y pueden ser usados para mostrar de forma concisa una
gran variedad de información.
Ing. Mayra Peña. 22
La gráfica de forma de onda es un indicador numérico especial que muestra
una o más graficas (plots). Las gráficas de forma de onda están localizadas en la
paleta Control>>Graph>>Indicators. Estas pueden ser simples o múltiples. El
panel de control mostrado anteriormente es un ejemplo claro de la forma de onda
múltiple.
Usted puede cambiar los valores min y máx del eje X y Y dándole doble clic
al valor con la herramientas de etiquetado y escribiendo el nuevo valor.
Simultáneamente, usted puede cambiar la etiqueta del eje. También puede darle
clic derecho a la leyenda de la gráfica y cambiar el estilo, forma y color del dibujo
que se muestra en la gráfica.
Los gráficos situados en la paleta controls >> All controls >> Graph,
incluyen el grafico de forma de onda y el grafico XY. El diagrama del gráfico de
forma de onda traza solamente funciones de una sola variable, como en Y = f(x),
con puntos distribuidos uniformemente a lo largo del eje X, tal como formas de
ondas adquiridas con tiempo variable. Los gráficos expresos XY exhiben cualquier
set de puntos, ya sea que estos estén muestreados uniformemente o no. Cambie
el tamaño de la leyenda dela grafica para exhibir múltiples diagramas. Utilice
diagramas múltiples para ahorrar espacio en el panel frontal y para hacer
comparaciones entre diagramas. Los gráficos XY de forma de onda se adaptan
automáticamente a los diagramas múltiples.
Estructuras casos.
Las estructuras casos nos permiten elegir un curso de acción dependiendo
del valor de entrada. Se encuentra en la subpaleta de Execution Control de la
paleta de Funtions.
Ing. Mayra Peña. 23
Es semejante a los enunciados if-else-them (si-entonces-de otro modo) en
otros lenguajes. Como una baraja de naipes solo se puede ver un caso a la vez.
Ejemplo 1: entrada booleana. Caso simple if – them (si – entonces). Si el valor
boolenao de la entrada es verdadero (true), el caso es verdadero se ejecutara, de
otra manera el caso será falso (false) se ejecutara.
Ejemplo 2: Valor numérico de entrada. El valor de entrada determina cual caso
(caja) se ejecutará. Si esta fuera de rango los casos LabVIEW escogerá el caso
por omisión (default).
Ejemplo 3: Entrada de cadena de caracteres. Como en el case de los valores
numéricos de entrada, el valor de la cadena de cadenas determina cual caso
(caja) se ejecutara. Haga hincapié en que el valor debe de ejecutarse exactamente
al de los casos o sino la estructura ejecutara el caso por omisión.
Inserción de imágenes y decoraciones.
Pueden surgir algunas dudas con el programa anterior, como por ejemplo,
cómo insertar la imagen del vaso en el panel frontal. Insertar imágenes es muy
sencillo. Basta con tener una imagen guardada en el disco duro y arrastrarla
desde su ubicación hasta el panel frontal, de esta manera se hace una copia y no
importará si se borra la imagen del disco duro, ésta se quedará en el panel frontal,
donde se podrá modificar su tamaño.
Para encontrar las decoraciones, nos vamos al menú Modern >
Decorations. Ahí podemos encontrar el siguiente menú:
Ing. Mayra Peña. 24
Ahí se puede elegir cualquier tipo de decoración para que el programa que
se esté desarrollando se vea más presentable. Para que la decoración que
hayamos elegido no tape todo, nos vamos al menú y damos clic en el ícono que
tiene dos flechas circulares:
Aquí elegimos Move to back para que la decoración se vaya hasta atrás de
todo lo que tengamos en el panel.
Para insertar imágenes al panel frontal es muy sencillo, solo basta con dar
clic en Edit o Editar, y en Import picture to clipboard. De esta manera se puede
elegir la imagen que se requiera.
Otra forma es arrastrar la imagen desde su ubicación al panel frontal.
Cualquiera de estas dos opciones es buena, y luego se puede modificar el
tamaño de la imagen en el panel frontal.
Ing. Mayra Peña. 25
Ing. Mayra Peña. 26
Practica N° 1: Operación básica: suma
Como primer programa, podemos crear una sumadora sencilla de dos
números. Para esto, necesitamos en el panel frontal dos controles numéricos y un
indicador numérico.
El panel frontal nos permite introducir los comandos numéricos 1 y 2 y de
mostrar el resultado en el indicador de nombre resultado.
Los elementos necesarios se escogerán de la sub paleta Numeric de la
paleta Control.
Una vez colocados los comandos pasamos a la ventana Diagrama en
bloque para unir las terminales entradas con las salidas respectivas. Los
terminales de entrada se encuentran a la izquierda y los terminales de salida se
encuentran a la derecha. El flujo de datos ira de izquierda a derecha.
Para calcular la suma a partir de los valores indicados haremos uso de las
funciones que se encuentran en la sub paleta Numeric de la paleta funciones.
Practica N° 2: Uso de select.
En LabVIEW podemos encontrar dentro del menú comparisson
(comparación), un ícono llamado select. Este funciona como la estructura
condicional if.
Si la condición es verdadera, se devuelve determinado valor o función, si es
falsa realiza la acción correspondiente. Se puede apreciar un ejemplo muy sencillo
del uso de select en el siguiente programa:
Ing. Mayra Peña. 27
El objetivo del control numérico es que si es menor de 5, el led de abajo
enciende, si es mayor de 5, se apaga el led de abajo y prende el de arriba.
Para esto utilizaremos dos select, uno para cada led.
Se utiliza un comparativo para el control numérico, en este caso mayor que.
Si el dato ingresado por el usuario en el tanque es mayor a 5, prende el led de
arriba, si es menor, prende el de abajo y se apaga el de arriba.
Nótese que se utilizaron constantes booleanas para los select, de esta
manera se hace más efectivo su uso cuando no se utilizan ciclos.
Practica Nº 3: Uso de cadenas de texto.
Si queremos trabajar con texto en LabVIEW utilizaremos los controles e
indicadores de texto. En el diagrama de bloques éstos tienen un color rosa, al
igual que los elementos booleanos y numéricos, los strings tienen control,
indicador y constante.
Para mostrar un texto determinado se utiliza una constante de texto, y para
que ésta sea visible en el panel frontal, se utiliza un indicador de texto. Usando el
ejemplo anterior, podemos agregar un indicador de texto para visualizar los
estados del programa:
Ing. Mayra Peña. 28
El objetivo del indicador textual es que si el nivel es mayor o menor de 5, se
indique con un mensaje. Para esto podemos utilizar otro select conectado a
cualquier de los dos leds, para evaluar si este está encendido o prendido, las
constantes de texto estarán conectadas al select y la salida al indicador.
Practica Nº 4: Uso de la estructura case.
Asumiendo que ya se sabe que la estructura case sirve para ejecutar o
albergar los posibles casos o acciones en función de una expresión.
En el lenguaje de programación C, la sintaxis es:
Ing. Mayra Peña. 29
Aquí, se ejecuta la estructura case al evaluar la función, en este caso tiene
dos casos con diferentes sentencias cada uno.
En el lenguaje gráfico, las estructuras de control se representan mediante
rectángulos. El case se conecta al elemento que requiera tener varias opciones y
todas las operaciones se van guardando en cada caso.
Se puede ver el funcionamiento de la estructura case en el siguiente
ejemplo:
El programa es una calculadora de dos funciones, suma y resta, se piden
dos números al usuario y con un botón elige si quiere que esos números se resten
o se sumen.
Como se mencionó anteriormente, el botón se conecta al case, dando como
resultado dos únicos casos, falso o verdadero. Al tratarse de un botón slide, el
falso es cuando el botón está del lado izquierdo y el verdadero del lado derecho.
Al analizar la imagen 21 podemos notar que lo único que hay dentro del
case es la operación que se va a realizar. Esto es porque si metemos cualquiera
de los controles o indicadores, éstos solo servirán para un solo caso, y para que el
programa funcione correctamente se tendrían que crear variables locales de cada
elemento para colocarlos en el otro caso, pero eso es innecesario y haría que el
código quede más grande.
Ing. Mayra Peña. 30
En cambio, dejando los elementos afuera, al conectarlos al case, crean un
cuadrito (túnel) en donde se pueden usar para los demás casos sin tener que
crear variables.
En el case también se puede conectar un tab control, útil para dar un mejor
aspecto al programa, almacenando cada operación o acción en un contenedor
individual. El tab control se encuentra en el menú Containers (Contenedores).
Podemos ver un ejemplo con un programa para hacer los cálculos de la ley
de Ohm:
Aquí se usan tres pestañas para el tab control, (para añadir más pestañas
se da clic derecho sobre cualquier pestaña y luego en add page after ó add page
before). Cada pestaña representa el valor que se quiere obtener, ya sea voltaje,
resistencia o intensidad.
En cada pestaña hay dos controles numéricos y un indicador numérico, el
usuario ingresa los dos valores y el programa hace los cálculos pertinentes.
Ing. Mayra Peña. 31
Como se puede apreciar en la imagen 23, aquí si se meten todos los
elementos a cada caso, esto porque se está utilizando un tab control y resulta
mejor crear controles e indicadores para cada caso. Siguiendo la ley de Ohm, solo
se hacen operaciones sencillas de división y multiplicación.
Nota: Al conectar el tab control al case, automáticamente aparecen los dos
primeros casos, para agregar más casos a esta estructura, se da clic derecho al
nombre del caso en la parte de arriba y luego en add case before o after según se
requiera.
Si queremos utilizar cadenas de texto en un case que esté conectado a un
botón, es muy simple. El case solo tendrá dos casos, y por ello solo utilizaremos
dos mensajes.
El diagrama de bloques queda como se muestra:
En este caso, cuando el programa se corra continuamente, saldrá el
mensaje del caso false ya que seguramente el botón estará en false cuando se
corra el programa, al accionar el botón, se mostrará el mensaje del caso true.
Ing. Mayra Peña. 32
Practica Nº 5: el ciclo for.
El ciclo for es una estructura de control utilizada en la gran mayoría de los
lenguajes de programación, que permite establecer el número mínimo de
iteraciones.
Sus elementos son la variable de control, inicialización de la variable de
control, condición de control, incremento, y cuerpo.
La variable de control es la variable con la que el bucle va a trabajar, esta
misma es la que se inicializa para establecer un valor predeterminado con el que
va a iniciar la iteración.
Su uso se orienta a vectores, permite agregar, modificar o eliminar datos
según el índice.
En LabVIEW, este ciclo también se representa con un rectángulo:
La terminal N representa el número de veces que se va a repetir el ciclo, la
terminal i representa la iteración, que va desde 0 a n-1.
Es importante aclarar que cuando se va a utilizar un ciclo, se debe agregar
un Timing (Wait), que sirve para que LabVIEW no consuma toda la memoria de la
PC y esto haga que se sature. El mínimo valor del Wait puede ser de 5
milisegudos.
Podemos tomar el siguiente programa como ejemplo del uso del ciclo for:
Ing. Mayra Peña. 33
En el panel frontal solo tenemos un indicador numérico.
Se puede observar que el número de repeticiones del ciclo for será de 5, y
la operación será la suma de un número aleatorio y cinco. Esta operación se hará
cinco veces y esos cinco resultados se imprimirán en el indicador numérico.
Aquí el Timing cumple una función interesante, ya que si le ponemos un
valor bajo como 5 o 10, no se aprecia el cambio en el indicador numérico y
parecerá que sólo se hizo una operación, en cambio, si se le pone 100 o más, ya
se puede ver cómo aparecen los 5 números, lógicamente, en el indicador sólo
quedará el último resultado.
Si queremos que el número de repeticiones del ciclo quede al azar,
entonces sólo ponemos el Random conectado a la terminal N. Con algunas
operaciones básicas, se pueden establecer límites para el número aleatorio.
IMPORTANTE: Al utilizar ciclos, ya sea for o while, no se debe utilizar el botón
correr continuamente, aquí sólo se usar el botón correr, para respetar las acciones
del ciclo y evitar que éste se cicle.
Asimismo, el botón abortar sólo se puede usar cuando el programa esté
ciclado.
Practica Nº 6: for condicional
Se dice que un ciclo for es condicional cuando éste tiene una terminal de
paro, se trata de una terminal a donde se puede conectar un botón de stop o una
condición para que el programa se detenga en determinado momento sin importar
que no se hayan ejecutado el número de repeticiones establecidas.
Esta terminal de paro se puede agregar dando clic derecho sobre el ciclo for
y posteriormente clic en conditional terminal.
Ing. Mayra Peña. 34
Practica Nº 7: el ciclo WHILE.
A diferencia del For, el ciclo While ejecuta determinada acción hasta que el
programa termine su función o hasta que el usuario decida detener el programa. Si
el programa no tiene un fin determinado, el programa se ejecutará infinitamente o
hasta que el usuario lo detenga.
El ciclo While no funciona si no se conecta un botón de stop o una
condición de paro a la terminal de stop, si no ocurre esto, será imposible ejecutar
el programa.
Aquí también es posible utilizar shift register.
Podemos ver un ejemplo muy sencillo de un programa para encontrar la
hipotenusa de un triángulo usando el Teorema de Pitágoras, con el ciclo while.
Ing. Mayra Peña. 35
En el panel frontal se tienen dos controles numéricos y un indicador
numérico, cada uno representa un lado del triángulo.
En el diagrama de bloques, se tiene un ciclo while, que contiene toda la
operación. Según el Teorema de Pitágoras, se sabe que el cuadrado de la
hipotenusa es igual a la suma de los catetos.
Entonces una forma simple de resolverlo, es usando la función square, que
eleva al cuadrado cualquier número que se le conecte, entonces, se usan dos, uno
para cada lado del triángulo. Éstos se suman y se le saca raíz cuadrada al
resultado, usando la función square root. Ambas funciones se encuentran en el
menú Numeric.
El resultado se imprime en el indicador numérico.
Nótese que el ciclo while tiene un botón de stop conectado a la terminal de
paro, sin esto, el programa no se ejecuta.
Hasta aquí todo va bien, pero hay un pequeño error, que en este programa
puede no causar problemas, pero al trabajar con programas grandes, puede
ocasionar muchos problemas. Es necesario colocar un Wait.
Ing. Mayra Peña. 36

Más contenido relacionado

La actualidad más candente

Transformada de Laplace
Transformada de LaplaceTransformada de Laplace
Transformada de LaplaceDelwisA26
 
122378256 simbolos-norma-ansi
122378256 simbolos-norma-ansi122378256 simbolos-norma-ansi
122378256 simbolos-norma-ansipavellazaro
 
Amplificador lm741 d.a pd
Amplificador lm741 d.a pdAmplificador lm741 d.a pd
Amplificador lm741 d.a pdFranklin J.
 
Marco teórico de pid.1
Marco teórico de pid.1Marco teórico de pid.1
Marco teórico de pid.1aaronman
 
Informe escrito final on y off delay
Informe escrito final on y off delayInforme escrito final on y off delay
Informe escrito final on y off delayderincampos19
 
Neumatica e Hidraulica Industrial.pdf
Neumatica e Hidraulica Industrial.pdfNeumatica e Hidraulica Industrial.pdf
Neumatica e Hidraulica Industrial.pdfRyoy2009
 
Dimmer de 230V AC con Arduino
Dimmer de 230V AC con ArduinoDimmer de 230V AC con Arduino
Dimmer de 230V AC con ArduinoPablo Gindel
 
Exposición amplificadores operacionales
Exposición amplificadores operacionalesExposición amplificadores operacionales
Exposición amplificadores operacionalesAnaCegarra
 
Informe practica 4 rectificador de media onda
Informe practica 4 rectificador de media ondaInforme practica 4 rectificador de media onda
Informe practica 4 rectificador de media ondaderincampos19
 
Display 7 Segmentos
Display 7 SegmentosDisplay 7 Segmentos
Display 7 SegmentosOswST
 
Informe previo y experimento nª1 del Lab. Circuitos Electronicos II UNSAAC(w...
Informe previo y experimento nª1 del  Lab. Circuitos Electronicos II UNSAAC(w...Informe previo y experimento nª1 del  Lab. Circuitos Electronicos II UNSAAC(w...
Informe previo y experimento nª1 del Lab. Circuitos Electronicos II UNSAAC(w...Watner Ochoa Núñez
 
Transformada De Laplace
Transformada De LaplaceTransformada De Laplace
Transformada De Laplace1712223955
 
Funciones singulares
Funciones singularesFunciones singulares
Funciones singularesKenyo Turco
 
Ecuaciones Diferenciales Homogéneas
Ecuaciones Diferenciales HomogéneasEcuaciones Diferenciales Homogéneas
Ecuaciones Diferenciales HomogéneasFlightshox
 
Ejercicios logosoft con diagramas
Ejercicios logosoft con diagramasEjercicios logosoft con diagramas
Ejercicios logosoft con diagramasJacqueline Brioso
 

La actualidad más candente (20)

Transformada de Laplace
Transformada de LaplaceTransformada de Laplace
Transformada de Laplace
 
122378256 simbolos-norma-ansi
122378256 simbolos-norma-ansi122378256 simbolos-norma-ansi
122378256 simbolos-norma-ansi
 
Amplificador lm741 d.a pd
Amplificador lm741 d.a pdAmplificador lm741 d.a pd
Amplificador lm741 d.a pd
 
Marco teórico de pid.1
Marco teórico de pid.1Marco teórico de pid.1
Marco teórico de pid.1
 
Transformada de hilbert
Transformada de hilbert Transformada de hilbert
Transformada de hilbert
 
Informe escrito final on y off delay
Informe escrito final on y off delayInforme escrito final on y off delay
Informe escrito final on y off delay
 
Neumatica e Hidraulica Industrial.pdf
Neumatica e Hidraulica Industrial.pdfNeumatica e Hidraulica Industrial.pdf
Neumatica e Hidraulica Industrial.pdf
 
Dimmer de 230V AC con Arduino
Dimmer de 230V AC con ArduinoDimmer de 230V AC con Arduino
Dimmer de 230V AC con Arduino
 
Exposición amplificadores operacionales
Exposición amplificadores operacionalesExposición amplificadores operacionales
Exposición amplificadores operacionales
 
Informe practica 4 rectificador de media onda
Informe practica 4 rectificador de media ondaInforme practica 4 rectificador de media onda
Informe practica 4 rectificador de media onda
 
Display 7 Segmentos
Display 7 SegmentosDisplay 7 Segmentos
Display 7 Segmentos
 
Labview
LabviewLabview
Labview
 
Informe previo y experimento nª1 del Lab. Circuitos Electronicos II UNSAAC(w...
Informe previo y experimento nª1 del  Lab. Circuitos Electronicos II UNSAAC(w...Informe previo y experimento nª1 del  Lab. Circuitos Electronicos II UNSAAC(w...
Informe previo y experimento nª1 del Lab. Circuitos Electronicos II UNSAAC(w...
 
Arduino + lab view
Arduino + lab viewArduino + lab view
Arduino + lab view
 
Motores de corriente alterna (electrotecnia)
Motores de corriente alterna (electrotecnia)Motores de corriente alterna (electrotecnia)
Motores de corriente alterna (electrotecnia)
 
Transformada De Laplace
Transformada De LaplaceTransformada De Laplace
Transformada De Laplace
 
Funciones singulares
Funciones singularesFunciones singulares
Funciones singulares
 
Tema 1. amplificadores operacionales
Tema 1. amplificadores operacionalesTema 1. amplificadores operacionales
Tema 1. amplificadores operacionales
 
Ecuaciones Diferenciales Homogéneas
Ecuaciones Diferenciales HomogéneasEcuaciones Diferenciales Homogéneas
Ecuaciones Diferenciales Homogéneas
 
Ejercicios logosoft con diagramas
Ejercicios logosoft con diagramasEjercicios logosoft con diagramas
Ejercicios logosoft con diagramas
 

Similar a LabVIEW intro 40

Similar a LabVIEW intro 40 (20)

Manual--labview1.pdf
Manual--labview1.pdfManual--labview1.pdf
Manual--labview1.pdf
 
Electrónica: Manual básico de programación en Labview MASTERHACKS
Electrónica: Manual básico de programación en Labview MASTERHACKSElectrónica: Manual básico de programación en Labview MASTERHACKS
Electrónica: Manual básico de programación en Labview MASTERHACKS
 
manual-bc3a1sico-de-programacic3b3n-en-labview-por-masterhacks.pdf
manual-bc3a1sico-de-programacic3b3n-en-labview-por-masterhacks.pdfmanual-bc3a1sico-de-programacic3b3n-en-labview-por-masterhacks.pdf
manual-bc3a1sico-de-programacic3b3n-en-labview-por-masterhacks.pdf
 
Curso labview 2014
Curso  labview 2014Curso  labview 2014
Curso labview 2014
 
Curso labview 2014
Curso labview 2014Curso labview 2014
Curso labview 2014
 
Tutorial labview
Tutorial labviewTutorial labview
Tutorial labview
 
016tutorlabview
016tutorlabview016tutorlabview
016tutorlabview
 
Tutorial de labview
Tutorial de labviewTutorial de labview
Tutorial de labview
 
Tutorial de labview
Tutorial de labviewTutorial de labview
Tutorial de labview
 
Tutorial de labview
Tutorial de labviewTutorial de labview
Tutorial de labview
 
Visual basic.
Visual basic.Visual basic.
Visual basic.
 
Unidad III
Unidad IIIUnidad III
Unidad III
 
Curso lab view
Curso lab viewCurso lab view
Curso lab view
 
Fundamentos de Visual Basic
Fundamentos de Visual BasicFundamentos de Visual Basic
Fundamentos de Visual Basic
 
Programacion 5%
Programacion 5%Programacion 5%
Programacion 5%
 
LabVIEW Nivel I (Semana 1)
LabVIEW Nivel I (Semana 1)LabVIEW Nivel I (Semana 1)
LabVIEW Nivel I (Semana 1)
 
Visualbasic6.0
Visualbasic6.0Visualbasic6.0
Visualbasic6.0
 
Informatica
InformaticaInformatica
Informatica
 
Tutorial de visual C++
Tutorial de visual C++Tutorial de visual C++
Tutorial de visual C++
 
Tutorial de visual_c_
Tutorial de visual_c_Tutorial de visual_c_
Tutorial de visual_c_
 

Más de Mayra Peña

Medición de Temperatura.
Medición de Temperatura.Medición de Temperatura.
Medición de Temperatura.Mayra Peña
 
Medicion de nivel.
Medicion de nivel.Medicion de nivel.
Medicion de nivel.Mayra Peña
 
Módulo V: Medición de flujo.
Módulo V: Medición de flujo.Módulo V: Medición de flujo.
Módulo V: Medición de flujo.Mayra Peña
 
Mi perfil accesoria mayra pena
Mi perfil accesoria mayra penaMi perfil accesoria mayra pena
Mi perfil accesoria mayra penaMayra Peña
 
Unidad III: Polos y Ceros de una función de transferencia.
Unidad III: Polos y Ceros de una función de transferencia.Unidad III: Polos y Ceros de una función de transferencia.
Unidad III: Polos y Ceros de una función de transferencia.Mayra Peña
 
Unidad II: funcion de transferencia
Unidad II: funcion de transferenciaUnidad II: funcion de transferencia
Unidad II: funcion de transferenciaMayra Peña
 
Lugar geometrico
Lugar geometricoLugar geometrico
Lugar geometricoMayra Peña
 
Instrumentacion industrial
Instrumentacion industrialInstrumentacion industrial
Instrumentacion industrialMayra Peña
 
Unidad 1: Distemas Lineales
Unidad 1: Distemas LinealesUnidad 1: Distemas Lineales
Unidad 1: Distemas LinealesMayra Peña
 

Más de Mayra Peña (9)

Medición de Temperatura.
Medición de Temperatura.Medición de Temperatura.
Medición de Temperatura.
 
Medicion de nivel.
Medicion de nivel.Medicion de nivel.
Medicion de nivel.
 
Módulo V: Medición de flujo.
Módulo V: Medición de flujo.Módulo V: Medición de flujo.
Módulo V: Medición de flujo.
 
Mi perfil accesoria mayra pena
Mi perfil accesoria mayra penaMi perfil accesoria mayra pena
Mi perfil accesoria mayra pena
 
Unidad III: Polos y Ceros de una función de transferencia.
Unidad III: Polos y Ceros de una función de transferencia.Unidad III: Polos y Ceros de una función de transferencia.
Unidad III: Polos y Ceros de una función de transferencia.
 
Unidad II: funcion de transferencia
Unidad II: funcion de transferenciaUnidad II: funcion de transferencia
Unidad II: funcion de transferencia
 
Lugar geometrico
Lugar geometricoLugar geometrico
Lugar geometrico
 
Instrumentacion industrial
Instrumentacion industrialInstrumentacion industrial
Instrumentacion industrial
 
Unidad 1: Distemas Lineales
Unidad 1: Distemas LinealesUnidad 1: Distemas Lineales
Unidad 1: Distemas Lineales
 

Último

TECNOLOGÍA FARMACEUTICA OPERACIONES UNITARIAS.pptx
TECNOLOGÍA FARMACEUTICA OPERACIONES UNITARIAS.pptxTECNOLOGÍA FARMACEUTICA OPERACIONES UNITARIAS.pptx
TECNOLOGÍA FARMACEUTICA OPERACIONES UNITARIAS.pptxKarlaMassielMartinez
 
Clasificaciones, modalidades y tendencias de investigación educativa.
Clasificaciones, modalidades y tendencias de investigación educativa.Clasificaciones, modalidades y tendencias de investigación educativa.
Clasificaciones, modalidades y tendencias de investigación educativa.José Luis Palma
 
Historia y técnica del collage en el arte
Historia y técnica del collage en el arteHistoria y técnica del collage en el arte
Historia y técnica del collage en el arteRaquel Martín Contreras
 
Heinsohn Privacidad y Ciberseguridad para el sector educativo
Heinsohn Privacidad y Ciberseguridad para el sector educativoHeinsohn Privacidad y Ciberseguridad para el sector educativo
Heinsohn Privacidad y Ciberseguridad para el sector educativoFundación YOD YOD
 
FORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURA
FORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURAFORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURA
FORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURAEl Fortí
 
Registro Auxiliar - Primaria 2024 (1).pptx
Registro Auxiliar - Primaria  2024 (1).pptxRegistro Auxiliar - Primaria  2024 (1).pptx
Registro Auxiliar - Primaria 2024 (1).pptxFelicitasAsuncionDia
 
Identificación de componentes Hardware del PC
Identificación de componentes Hardware del PCIdentificación de componentes Hardware del PC
Identificación de componentes Hardware del PCCesarFernandez937857
 
celula, tipos, teoria celular, energia y dinamica
celula, tipos, teoria celular, energia y dinamicacelula, tipos, teoria celular, energia y dinamica
celula, tipos, teoria celular, energia y dinamicaFlor Idalia Espinoza Ortega
 
MAYO 1 PROYECTO día de la madre el amor más grande
MAYO 1 PROYECTO día de la madre el amor más grandeMAYO 1 PROYECTO día de la madre el amor más grande
MAYO 1 PROYECTO día de la madre el amor más grandeMarjorie Burga
 
NARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARO
NARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARONARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARO
NARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFAROJosé Luis Palma
 
2024 - Expo Visibles - Visibilidad Lesbica.pdf
2024 - Expo Visibles - Visibilidad Lesbica.pdf2024 - Expo Visibles - Visibilidad Lesbica.pdf
2024 - Expo Visibles - Visibilidad Lesbica.pdfBaker Publishing Company
 
Planificacion Anual 2do Grado Educacion Primaria 2024 Ccesa007.pdf
Planificacion Anual 2do Grado Educacion Primaria   2024   Ccesa007.pdfPlanificacion Anual 2do Grado Educacion Primaria   2024   Ccesa007.pdf
Planificacion Anual 2do Grado Educacion Primaria 2024 Ccesa007.pdfDemetrio Ccesa Rayme
 
TEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOS
TEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOSTEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOS
TEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOSjlorentemartos
 
Neurociencias para Educadores NE24 Ccesa007.pdf
Neurociencias para Educadores  NE24  Ccesa007.pdfNeurociencias para Educadores  NE24  Ccesa007.pdf
Neurociencias para Educadores NE24 Ccesa007.pdfDemetrio Ccesa Rayme
 
Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...
Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...
Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...Carlos Muñoz
 
Estrategia de prompts, primeras ideas para su construcción
Estrategia de prompts, primeras ideas para su construcciónEstrategia de prompts, primeras ideas para su construcción
Estrategia de prompts, primeras ideas para su construcciónLourdes Feria
 

Último (20)

TECNOLOGÍA FARMACEUTICA OPERACIONES UNITARIAS.pptx
TECNOLOGÍA FARMACEUTICA OPERACIONES UNITARIAS.pptxTECNOLOGÍA FARMACEUTICA OPERACIONES UNITARIAS.pptx
TECNOLOGÍA FARMACEUTICA OPERACIONES UNITARIAS.pptx
 
Clasificaciones, modalidades y tendencias de investigación educativa.
Clasificaciones, modalidades y tendencias de investigación educativa.Clasificaciones, modalidades y tendencias de investigación educativa.
Clasificaciones, modalidades y tendencias de investigación educativa.
 
Historia y técnica del collage en el arte
Historia y técnica del collage en el arteHistoria y técnica del collage en el arte
Historia y técnica del collage en el arte
 
Sesión de clase: Defendamos la verdad.pdf
Sesión de clase: Defendamos la verdad.pdfSesión de clase: Defendamos la verdad.pdf
Sesión de clase: Defendamos la verdad.pdf
 
Heinsohn Privacidad y Ciberseguridad para el sector educativo
Heinsohn Privacidad y Ciberseguridad para el sector educativoHeinsohn Privacidad y Ciberseguridad para el sector educativo
Heinsohn Privacidad y Ciberseguridad para el sector educativo
 
FORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURA
FORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURAFORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURA
FORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURA
 
Registro Auxiliar - Primaria 2024 (1).pptx
Registro Auxiliar - Primaria  2024 (1).pptxRegistro Auxiliar - Primaria  2024 (1).pptx
Registro Auxiliar - Primaria 2024 (1).pptx
 
Identificación de componentes Hardware del PC
Identificación de componentes Hardware del PCIdentificación de componentes Hardware del PC
Identificación de componentes Hardware del PC
 
celula, tipos, teoria celular, energia y dinamica
celula, tipos, teoria celular, energia y dinamicacelula, tipos, teoria celular, energia y dinamica
celula, tipos, teoria celular, energia y dinamica
 
MAYO 1 PROYECTO día de la madre el amor más grande
MAYO 1 PROYECTO día de la madre el amor más grandeMAYO 1 PROYECTO día de la madre el amor más grande
MAYO 1 PROYECTO día de la madre el amor más grande
 
NARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARO
NARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARONARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARO
NARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARO
 
2024 - Expo Visibles - Visibilidad Lesbica.pdf
2024 - Expo Visibles - Visibilidad Lesbica.pdf2024 - Expo Visibles - Visibilidad Lesbica.pdf
2024 - Expo Visibles - Visibilidad Lesbica.pdf
 
Planificacion Anual 2do Grado Educacion Primaria 2024 Ccesa007.pdf
Planificacion Anual 2do Grado Educacion Primaria   2024   Ccesa007.pdfPlanificacion Anual 2do Grado Educacion Primaria   2024   Ccesa007.pdf
Planificacion Anual 2do Grado Educacion Primaria 2024 Ccesa007.pdf
 
TEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOS
TEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOSTEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOS
TEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOS
 
Presentacion Metodología de Enseñanza Multigrado
Presentacion Metodología de Enseñanza MultigradoPresentacion Metodología de Enseñanza Multigrado
Presentacion Metodología de Enseñanza Multigrado
 
Neurociencias para Educadores NE24 Ccesa007.pdf
Neurociencias para Educadores  NE24  Ccesa007.pdfNeurociencias para Educadores  NE24  Ccesa007.pdf
Neurociencias para Educadores NE24 Ccesa007.pdf
 
Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...
Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...
Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...
 
Estrategia de prompts, primeras ideas para su construcción
Estrategia de prompts, primeras ideas para su construcciónEstrategia de prompts, primeras ideas para su construcción
Estrategia de prompts, primeras ideas para su construcción
 
Unidad 3 | Metodología de la Investigación
Unidad 3 | Metodología de la InvestigaciónUnidad 3 | Metodología de la Investigación
Unidad 3 | Metodología de la Investigación
 
Medición del Movimiento Online 2024.pptx
Medición del Movimiento Online 2024.pptxMedición del Movimiento Online 2024.pptx
Medición del Movimiento Online 2024.pptx
 

LabVIEW intro 40

  • 1. Ing. Mayra Peña. 1 ¿Qué es LabVIEW? LabVIEW (Laboratory Virtual Instrumentation Engineering Workbench) es un entorno de desarrollo y diseño de sistemas con un lenguaje visual gráfico. LabVIEW utiliza el lenguaje G (lenguaje gráfico) que acelera la productividad o desarrollo de programas para una mejor eficiencia en el desarrollo de sistemas. Es un software creado por la empresa National Instruments en 1976 y sacado al mercado en 1986. Al desarrollar un programa en LabVIEW, se crea un Instrumento Virtual o VI que contiene la interfaz gráfica del programa y el diagrama de bloques (código). Cuando un programa está terminado, el usuario final hace uso del panel frontal, donde se encuentra todo lo necesario para controlar un sistema. El diagrama de bloques es donde se encuentra el código del programa, es donde el programador accede para modificar o mantener el programa. Actualmente, el software de programación LabVIEW se puede utilizar en los sistemas operativos Microsoft Windows, Mac OS X, GNU/Linux. Una de las principales características de LabVIEW es que es relativamente fácil de usar, no se requiere ser un experto en el área de programación para poder hacer un programa que se pudiera considerar como complejo o incluso imposible de hacer para algunos en otros lenguajes. Aunque es necesario aclarar que para desarrollar programas que se apliquen a la automatización, control, adquisición y manejo de datos sí es necesario tener conocimientos más avanzados no solo de programación, sino de otras áreas específicas para cada aplicación del programa que se tenga planeado. LabVIEW es principalmente utilizado por los ingenieros para el manejo de datos, la comunicación entre una computadora y un aparato o circuito externo es imprescindible para las aplicaciones que se le pueden dar al software, por lo que LabVIEW puede comunicarse con interfaces como:  Puerto serial  Puerto paralelo  GPIB  PXI  VXI  TCP/IP  Irda  Bluetooth  USB
  • 2. Ing. Mayra Peña. 2  OPC  Entre otros. Esto es lo que hace del Laboratorio Virtual de Instrumentación una excelente opción para proyectos grandes donde se requieran conocimientos de programación, electrónica, mecánica, robótica, etc. este software es utilizado en empresas y agencias importantes como la NASA. La programación representa un factor muy importante al hablar de proyectos de automatización y control, donde se especializan ingenieros mecatrónicos, robóticos y más. LabVIEW ofrece la herramienta para crear el software, el programa depende del programador y su funcionamiento, eficacia y utilidad dependerán de las habilidades de éste mismo. “La potencia está en el software” Una frase muy célebre de LabVIEW, que hace referencia a la capacidad e importancia que puede tener un programa en un proyecto. Funcionalidad de la aplicación  Una de las funciones básicas será la de obtener datos del hardware de forma transparente al usuario.  La funcionalidad del programa incluye tratamiento de señal, control del flujo de programa, control de errores, etc…  Puede implementarse en lenguajes basados en texto (Visual Basic, C++, LabWindows/CVI, etc.) o puede utilizar lenguaje gráfico como Labview, Snap Master, DasyLab, HP-VEE, Visual Designer de Burr Brown, etc.  Nuestro estudio se centrará en la programación bajo el entorno de programación gráfica LabView. Programación gráfica Los procesos programables se definirán mediante un lenguaje gráfico en vez de un lenguaje orientado a líneas de código como estamos acostumbrados normalmente. En este tipo de programación las funciones son bloques que se interconectan entre sí, intercambiando la información. Cuando usted diseña programas con Labview está trabajando siempre bajo algo denominado VI, es decir, un instrumento virtual, se pueden crear VI a partir de especificaciones funcionales que usted diseñe. Este VI puede utilizarse en cualquier otra aplicación como una subfunción dentro de un programa general. Los VI's se caracterizan por: ser un cuadrado con su respectivo símbolo relacionado con su funcionalidad, tener una interfaz con el usuario, tener entradas con su color de identificación de dato, tener una o varias salidas y por su puesto ser reutilizables.
  • 3. Ing. Mayra Peña. 3 Los programas de LabVIEW constan de un panel frontal y un diagrama en bloque. En el panel frontal se diseña la interfaz con el usuario, viene a ser la cara del VI y en el diagrama de bloques se programa en lenguaje G el funcionamiento del VI. El panel frontal. El panel frontal de un VI es una combinación de controles e indicadores. Los controladores son aquellos elementos que entregan datos al diagrama en bloques desde el panel frontal por entrada desde teclado o con el mouse simulan los dispositivos de entrada de datos del VI y pasan los datos y pasan los datos al diagrama en bloque del VI. Los indicadores son aquellos elementos que entregan datos al panel frontal desde el diagrama en bloques para ser visualizados en el display, simulan los dispositivos de salida de datos del VI que toman los datos desde el diagrama en bloque del VI. Diagrama en bloques.  Esta almacena el diagrama en bloques del VI, el código fuente gráfico, (Lenguaje G) del instrumento virtual.  Se construye este diagrama con bloques funcionales denominados nodos, conectándose o uniéndose entre si según sea el objetivo.  Estos nodos realizan todas las funciones específicas necesarias para el VI y controlan el flujo de la ejecución del VI. Conociendo LabVIEW Al ejecutar el software LabVIEW, nos aparece una ventana como la siguiente:
  • 4. Ing. Mayra Peña. 4 Aquí podemos elegir del menú la opción de abrir un nuevo VI, un proyecto en blanco o un VI desde una plantilla. Para empezar elegiremos abrir un VI en blanco. Nos aparecen dos ventanas, el Front Panel (Panel frontal) y Block Diagram (Diagrama de bloques). En el panel frontal, es donde podemos elegir los elementos que conformarán nuestro programa. En la parte de arriba podemos encontrar el menú de ejecución, donde podemos ejecutar el programa, pausarlo o abortarlo. El primer botón (Run) sirve para ejecutar el programa, pero si el código no incluye un ciclo para que el programa se repita infinitamente o la cantidad de veces que el usuario elija, sólo parpadeará la pantalla y el programa no hará nada. Si no se está trabajando con ciclos, es necesario hacer clic en el segundo botón (run continuously), que significa correr continuamente, de esta manera, el
  • 5. Ing. Mayra Peña. 5 programa se ejecutará hasta que el usuario vuelva a dar clic en ese botón o realizar alguna acción en el programa que haga que éste se detenga. El tercer botón sirve para abortar la ejecución. Este ícono se utiliza solamente cuando el programa se cicla, es decir; que no se puede detener por algún error en la programación. Esto sucede únicamente cuando se trabaja con ciclos y es recomendable no usarlo si no es absolutamente necesario, ya que el usarlo podría causar pérdida de datos. El cuarto botón sirve para pausar la ejecución del programa. El menú de la imagen 4 sirve para modificar el tamaño, fuente y color de las letras que se utilicen en la interfaz del programa. Los otros cuatro botones sirven para alinear y mover los elementos que se estén utilizando para dar un aspecto más estético. En la esquina superior derecha se encuentra la barra de búsqueda y el botón de ayuda. También están dos íconos, el primero sirve para incluir sub VI´s en el programa, aquí se construye el panel conector para poder utilizar sub VI´s. El otro ícono sirve para ver y modificar las propiedades del VI (clic derecho>VI properties). Desde ahí se puede editar el tamaño de la ventana del programa, proteger el código con contraseña, el uso de CPU, etc. También se puede editar el ícono dando clic derecho> Edit icon.
  • 6. Ing. Mayra Peña. 6 En el diagrama de bloques los menús son muy parecidos, solo que aquí se agrega un botón al menú de ejecución que sirve para ver paso a paso lo que el diagrama de bloques está ejecutando, muy útil cuando se quiere ver el orden de ejecución de todo el código y ver su comportamiento. Otro botón que se agrega es el que limpia todo el código, para poner todos los elementos de una forma más ordenada y legible. 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 (Tools palette) 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.
  • 7. Ing. Mayra Peña. 7  Paleta de controles (Controls palette) Se utiliza únicamente en el panel frontal. Contiene todos los controles e indicadores que se emplearán para crear la interfaz del VI con el usuario.
  • 8. Ing. Mayra Peña. 8 Al seleccionar objetos desde el menú Controls estos aparecen sobre el panel frontal, pueden colocarse donde convenga, y además tienen su propio menú desplegable que permite la configuración de algunos parámetros específicos de cada tipo de control.  Paleta de funciones (functions palette) Se emplea en el diseño del diagrama de bloques. La paleta de funciones contiene todos los objetos que se emplean en la implementación del programa del VI, ya sean funciones aritméticas, de entrada/salida de señales, entrada / salida de datos a fichero, adquisición de señales, temporización de la ejecución del programa.
  • 9. Ing. Mayra Peña. 9 Para seleccionar una función o estructura concretas, se debe desplegar el menú Functions y elegir entre las opciones que aparecen. A continuación se enumeran todas ellas, junto con una pequeña definición.
  • 11. Ing. Mayra Peña. 11 Controles e indicadores Los elementos de cada programa de LabVIEW se pueden definir como controles o indicadores. Como se vio en el programa anterior, se usaron dos controles para ingresar los números que se van a sumar. Con esto podemos deducir que un control es un elemento que puede ser controlado o modificado por el usuario, normalmente con perillas o flechas de incremento. Por otro lado, los indicadores son los elementos que no pueden ser modificados por el usuario, y que solamente muestran datos o resultados que el programa arroja, por ejemplo en el programa anterior, el indicador muestra el resultado de la suma. En el diagrama de bloques es fácil distinguir un control de un indicador, el control tiene el color del borde más grueso y la flechita de lado derecho, indicando que el cable o datos van a salir del elemento, mientras que el indicador tiene el borde más delgado y la flechita del lado izquierdo, indicando que va a recibir un cable o datos. Para cambiar un control a indicador o viceversa, solo se le da clic derecho al ícono y otro clic en change to control o change to indicator, según se requiera. Elementos booleanos Como se debe saber, los elementos booleanos funcionan con un cero o un uno, siendo falso o verdadero respectivamente, no tiene otro valor más que esos. En LabVIEW los elementos booleanos se representan con el color verde y con las letras t o f. Estos son botones, leds, comparadores, entre otros. Un ejemplo muy sencillo del uso de estos, es para encender un led con un switch, solo necesitamos un switch y un led, conectados entre sí, para poder encender el led con los valores verdadero o falso.
  • 12. Ing. Mayra Peña. 12 ¿Cómo utilizar la ayuda? Para visualizar el cuadro de ayuda, simplemente se hace Help»Show Context Help o presionando <Ctrl-h>; en este cuadro se mostrará la información del objeto sobre el cual nos paremos con el puntero del mouse. También se puede notar que en el cuadro de ayuda se observa un Link azul, el cual nos lleva al Labview help, donde encontramos una información más completa del elemento; (haciendo clic derecho del mouse, también se puede observar el Labview help). Ejecución de un vi. Una vez se ha concluido la programación del VI se debe proceder a su ejecución. Para ello la ventana activa debe ser el panel frontal (si se está en la ventana del diagrama de bloques, se debe seleccionar la opción Show Panel del menú Window). Una vez situados en el panel frontal, se pulsará el botón de Run, situado en la barra de herramientas. El programa comenzará a ejecutarse. Mientras dura la ejecución del mismo, la apariencia del botón de Run es la que se muestra a continuación:
  • 13. Ing. Mayra Peña. 13 De este modo el programa se ejecutará una sola vez. Si se desea una ejecución continua, se pulsará el botón situado a la derecha del de Run (Continuous Run). Si durante el funcionamiento continuo del programa se vuelve a pulsar el citado botón, se finalizará la última ejecución del mismo, tras lo cual el programa se parará. Para finalizar la ejecución de un programa se puede operar de dos formas. La primera, y la más aconsejable, es emplear un botón en el panel frontal del VI, cuya pulsación produzca la interrupción del bucle de ejecución de la aplicación. La segunda forma de detener la ejecución del VI es pulsando el botón de pausa o el de stop. La diferencia entre ambos es que si se pulsa stop, la ejecución del programa finaliza inmediatamente, mientras que si se pulsa pausa, se produce una detención en el funcionamiento del programa, retomándose su ejecución una vez se vuelve a pulsar el mismo botón. Estructuras En la paleta de funciones la primera opción es la de las estructuras. Éstas controlan el flujo del programa, bien sea mediante la secuenciación de acciones, ejecución de bucles, etc. Las estructuras se comportan como cualquier otro nodo en el diagrama de bloques, ejecutando automáticamente lo que está programado en su interior una vez tiene disponibles los datos de entrada, y una vez ejecutadas las instrucciones
  • 14. Ing. Mayra Peña. 14 requeridas, suministran los correspondientes valores a los cables unidos a sus salidas. Sin embargo, cada estructura ejecuta su subdiagrama de acuerdo con las reglas específicas que rigen su comportamiento, y que se especifican a continuación. Un subdiagrama es una colección de nodos, cables y terminales situados en el interiordel rectángulo que constituye la estructura. El For Loop y el While Loop únicamente tienen un subdiagrama. El Case Structure y el Sequence Structure, sin embargo, pueden tener múltiples subdiagramas, superpuestos como si se tratara 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 construyes del mismo modo que el resto del programa Las siguientes estructuras se hallan disponibles en el lenguaje G. Case Structure 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. La estructura Case tiene al menos dos subdiagramas (True y False). Únicamente se ejecutará el contenido de uno de ellos, dependiendo del valor de lo que se conecte al selector. Sequence Structure De nuevo, este tipo de estructuras presenta varios subdiagramas, superpuestos como en una baraja de cartas, de modo que únicamente se puede visualizar una en pantalla.
  • 15. Ing. Mayra Peña. 15 También poseen un identificador del sudiagrama mostrado en su parte superior, con posibilidad de avanzar o retroceder a otros subdiagramas gracias a las flechas situadas a ambos lados del mismo. Esta estructura secuencia la ejecución del programa. Primero ejecutará el subdiagrama de la hoja (frame) nº0, después el de la nº 1, y así sucesivamente. Para pasar datos de una hoja a otra se pulsará el botón derecho del ratón sobre el borde de la estructura, seleccionando la opción Add sequence local. For Loop Es el equivalente al bucle for en los lenguajes de programación convencionales. Ejecuta el código dispuesto en su interior un número determinado de veces.
  • 16. Ing. Mayra Peña. 16 Para pasar valores de una iteración a otra se emplean los llamador shift registers. Para crear uno, se pulsará el botón derecho del ratón mientras éste se halla situado sobre el borde del bucle, seleccionando la opción 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 iteración anterior. El terminal derecho guardará el dato correspondiente a la iteración en ejecución dicho dato aparecerá, por tanto, en el terminal izquierdo durante la iteración posterior. Se puede configurar un shift register para memorizar valores de varias iteraciones previas. Para ello, con el ratón situado sobre el terminal izquierdo del shift register se pulsará el botón derecho, seleccionando a continuación la opción Add Element. While Loop Es el equivalente al bucle while empleado en los lenguajes convencionales de programación. Su funcionamiento es similar al del bucle for.
  • 17. Ing. Mayra Peña. 17 El programa comprueba el valor de lo que se halle conectado al terminal condicional al finalizar el bucle. Por lo tanto, el bucle siempre se ejecuta al menos una vez. Con esta estructura también se pueden emplear los shift registers para tener disponibles los datos obtenidos en iteraciones anteriores (es decir, para memorizar valores obtenidos). Su empleo es análogo al de los bucles for, por lo que omitirá su explicación. Formula Node La estructura denominada Formula Node se emplea para introducir en el diagrama de bloques fórmulas de un modo directo. Resulta de gran utilidad cuando la ecuación tiene muchas variables o es relativamente compleja. Por ejemplo, se desea implementar la ecuación: Para definir una fórmula 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 botón derecho del ratón sobre el borde de la formula node. A continuación se seleccionará Add Input o Add Output,
  • 18. Ing. Mayra Peña. 18 según se trate de una entrada o una salida, respectivamente. Aparecerá un rectángulo, en el que se debe escribir el nombre de la variable (se distingue entre mayúsculas y minúsculas). Todas las variables que se empleen deben estar declaradas como entradas o salidas. Las que se empleen como variables intermedias se declararán como salidas, aunque posteriormente no se unan a ningún bloque posterior.  Una vez definidas las variables a emplear, se escribirán la o las fórmulas en el interior del recuadro (para ello se emplea la labeling tool). Cada fórmula debe finalizar con un “;”.  Los operadores y funciones que se pueden emplear se explican en la ayuda de LabVIEW, y son los que se muestran a continuación: Si el valor lógico de la expresión es true se ejecutará. Si por el contrario, fuese false, lo que aplicará será expresión. Como ejemplo considérese el siguiente fragmento de código:
  • 19. Ing. Mayra Peña. 19 Sub VI. Los programas realizados pueden ser “encapsulados” para ser utilizados como nodos de tratamiento por otros programas. Los pasos para crear un SubVI son:  Crear el icono.  Crear el conector.  Asignar terminales.  Salvar el VI.  Insertar el VI dentro del VI principal. Crear el icono. Cree iconos personalizados para reemplazar los iconos predeterminados al hacer clic derecho en la esquina superior derecha del panel frontal. Usted también puede corregir iconos seleccionando File >> VI Propieties, seleccionando General del menú Category y haciendo clic en el botón editar (Edit icon). Utilice las herramientas del lado izquierdo de la casilla de dialogo del Icon Editor para crear el diseño del icono del área de edición. El tamaño normal de la imagen del icono aparece en la casilla apropiada en la parte derecha del área de edición. Usted también puede arrastrar un gráfico desde cualquier archivo y colocarlo en la esquina superior derecha del panel frontal o del diagrama de bloque. LabView convierte el grafico en un icono de 32 * 32 pixeles. Crear el conector. Haga clic derecho sobre el icono. (Solamente en el panel frontal.)
  • 20. Ing. Mayra Peña. 20 Para utilizar un VI como un SubVI, usted necesita crear un conector. El conector es una serie de terminales que corresponden a los controles y a los identificadores de un VI, similar a la lista de parámetros de una función basada en un lenguaje de programación de texto. El conector define las entradas y salidas que usted puede cablear al VI para que pueda utilizarlo como un SubVI. Defina las conexiones asignando un control del panel frontal o un indicador a cada una de las terminales del conector. Para definir un conector, de un clic derecho sobre el icono en la maquina superior derecha de la ventana del panel frontal y seleccione Show Connector del menú. El conector sustituye el icono. Cada rectángulo en el conector representa una terminal. Utilice los rectángulos para asignar entradas y salidas. El número de controles e indicadores en el panel frontal. Asignar terminales. Después de seleccionar un patrón para utilizar un conector, debe definir las conexiones asignando un control del panel frontal o indicador a cada uno de los terminales del conector. Cuando usted hace vínculos entre controles e indicadores y el conector, coloque las entradas de la izquierda y las salidas a la derecha para evitar patrones complicados y pocos claros en su VI. Para asignar un terminal a un control de panel frontal o indicador que usted desea asignar a la terminal. Haga clic en un área abierta del panel de frontal. La terminal cambia de color del tipo de datos del control para indicar que usted conecto la terminal. Usted también puede seleccionar el control o indicador primeramente y después seleccionar la terminal.
  • 21. Ing. Mayra Peña. 21 Asegúrese que salvo el VI después de haber hecho las asignaciones de las terminales. Salvar el SubVI. Hay varias maneras de organizar sus SubVI. La manera más común es organizarlos por aplicación. En este caso, son salvados en el mismo directorio o dentro de un archivo de librería de VI todos los Vis para una aplicación en particular. Salvarlos en un archivo de librería permite que usted transporte una aplicación entera dentro de un solo archivo. Salvar dentro de una librería es simple. Después de presionar Save As…, presione New VI Librery. Esto le permitirá que usted nombre la librería y entonces salvar su VI en él. Para agregar VI subsecuentes, simplemente haga doble clic al archivo lib de la ventana estándar de Salvar. Y dar un nombre al VI. Insertar el SubVI dentro de un VI principal. Después de construir un VI y crear su icono y conector, usted puede utilizarlo como un SubVI. Para colocar el SubVI en el diagrama de bloque, seleccione Funtion>>Select VI. Navegue y haga un doble clic en el VI que usted desea utilizar como SubVI y colóquelo en el diagrama de bloques. También puede colocar el VI abierto en el diagrama de bloque de otro VI abierto usando la herramienta de colocación. (Potitioning Tool) para hacer clic en el icono en la esquina superior derecha del panel frontal o diagrama de bloque del VI que usted utilizara como SubVI y arrastrar el icono al diagrama del otro VI. Gráficas en LabVIEW. Los gráficos son indicadores muy poderosos en LabVIEW, pueden ser altamente adaptables y pueden ser usados para mostrar de forma concisa una gran variedad de información.
  • 22. Ing. Mayra Peña. 22 La gráfica de forma de onda es un indicador numérico especial que muestra una o más graficas (plots). Las gráficas de forma de onda están localizadas en la paleta Control>>Graph>>Indicators. Estas pueden ser simples o múltiples. El panel de control mostrado anteriormente es un ejemplo claro de la forma de onda múltiple. Usted puede cambiar los valores min y máx del eje X y Y dándole doble clic al valor con la herramientas de etiquetado y escribiendo el nuevo valor. Simultáneamente, usted puede cambiar la etiqueta del eje. También puede darle clic derecho a la leyenda de la gráfica y cambiar el estilo, forma y color del dibujo que se muestra en la gráfica. Los gráficos situados en la paleta controls >> All controls >> Graph, incluyen el grafico de forma de onda y el grafico XY. El diagrama del gráfico de forma de onda traza solamente funciones de una sola variable, como en Y = f(x), con puntos distribuidos uniformemente a lo largo del eje X, tal como formas de ondas adquiridas con tiempo variable. Los gráficos expresos XY exhiben cualquier set de puntos, ya sea que estos estén muestreados uniformemente o no. Cambie el tamaño de la leyenda dela grafica para exhibir múltiples diagramas. Utilice diagramas múltiples para ahorrar espacio en el panel frontal y para hacer comparaciones entre diagramas. Los gráficos XY de forma de onda se adaptan automáticamente a los diagramas múltiples. Estructuras casos. Las estructuras casos nos permiten elegir un curso de acción dependiendo del valor de entrada. Se encuentra en la subpaleta de Execution Control de la paleta de Funtions.
  • 23. Ing. Mayra Peña. 23 Es semejante a los enunciados if-else-them (si-entonces-de otro modo) en otros lenguajes. Como una baraja de naipes solo se puede ver un caso a la vez. Ejemplo 1: entrada booleana. Caso simple if – them (si – entonces). Si el valor boolenao de la entrada es verdadero (true), el caso es verdadero se ejecutara, de otra manera el caso será falso (false) se ejecutara. Ejemplo 2: Valor numérico de entrada. El valor de entrada determina cual caso (caja) se ejecutará. Si esta fuera de rango los casos LabVIEW escogerá el caso por omisión (default). Ejemplo 3: Entrada de cadena de caracteres. Como en el case de los valores numéricos de entrada, el valor de la cadena de cadenas determina cual caso (caja) se ejecutara. Haga hincapié en que el valor debe de ejecutarse exactamente al de los casos o sino la estructura ejecutara el caso por omisión. Inserción de imágenes y decoraciones. Pueden surgir algunas dudas con el programa anterior, como por ejemplo, cómo insertar la imagen del vaso en el panel frontal. Insertar imágenes es muy sencillo. Basta con tener una imagen guardada en el disco duro y arrastrarla desde su ubicación hasta el panel frontal, de esta manera se hace una copia y no importará si se borra la imagen del disco duro, ésta se quedará en el panel frontal, donde se podrá modificar su tamaño. Para encontrar las decoraciones, nos vamos al menú Modern > Decorations. Ahí podemos encontrar el siguiente menú:
  • 24. Ing. Mayra Peña. 24 Ahí se puede elegir cualquier tipo de decoración para que el programa que se esté desarrollando se vea más presentable. Para que la decoración que hayamos elegido no tape todo, nos vamos al menú y damos clic en el ícono que tiene dos flechas circulares: Aquí elegimos Move to back para que la decoración se vaya hasta atrás de todo lo que tengamos en el panel. Para insertar imágenes al panel frontal es muy sencillo, solo basta con dar clic en Edit o Editar, y en Import picture to clipboard. De esta manera se puede elegir la imagen que se requiera. Otra forma es arrastrar la imagen desde su ubicación al panel frontal. Cualquiera de estas dos opciones es buena, y luego se puede modificar el tamaño de la imagen en el panel frontal.
  • 26. Ing. Mayra Peña. 26 Practica N° 1: Operación básica: suma Como primer programa, podemos crear una sumadora sencilla de dos números. Para esto, necesitamos en el panel frontal dos controles numéricos y un indicador numérico. El panel frontal nos permite introducir los comandos numéricos 1 y 2 y de mostrar el resultado en el indicador de nombre resultado. Los elementos necesarios se escogerán de la sub paleta Numeric de la paleta Control. Una vez colocados los comandos pasamos a la ventana Diagrama en bloque para unir las terminales entradas con las salidas respectivas. Los terminales de entrada se encuentran a la izquierda y los terminales de salida se encuentran a la derecha. El flujo de datos ira de izquierda a derecha. Para calcular la suma a partir de los valores indicados haremos uso de las funciones que se encuentran en la sub paleta Numeric de la paleta funciones. Practica N° 2: Uso de select. En LabVIEW podemos encontrar dentro del menú comparisson (comparación), un ícono llamado select. Este funciona como la estructura condicional if. Si la condición es verdadera, se devuelve determinado valor o función, si es falsa realiza la acción correspondiente. Se puede apreciar un ejemplo muy sencillo del uso de select en el siguiente programa:
  • 27. Ing. Mayra Peña. 27 El objetivo del control numérico es que si es menor de 5, el led de abajo enciende, si es mayor de 5, se apaga el led de abajo y prende el de arriba. Para esto utilizaremos dos select, uno para cada led. Se utiliza un comparativo para el control numérico, en este caso mayor que. Si el dato ingresado por el usuario en el tanque es mayor a 5, prende el led de arriba, si es menor, prende el de abajo y se apaga el de arriba. Nótese que se utilizaron constantes booleanas para los select, de esta manera se hace más efectivo su uso cuando no se utilizan ciclos. Practica Nº 3: Uso de cadenas de texto. Si queremos trabajar con texto en LabVIEW utilizaremos los controles e indicadores de texto. En el diagrama de bloques éstos tienen un color rosa, al igual que los elementos booleanos y numéricos, los strings tienen control, indicador y constante. Para mostrar un texto determinado se utiliza una constante de texto, y para que ésta sea visible en el panel frontal, se utiliza un indicador de texto. Usando el ejemplo anterior, podemos agregar un indicador de texto para visualizar los estados del programa:
  • 28. Ing. Mayra Peña. 28 El objetivo del indicador textual es que si el nivel es mayor o menor de 5, se indique con un mensaje. Para esto podemos utilizar otro select conectado a cualquier de los dos leds, para evaluar si este está encendido o prendido, las constantes de texto estarán conectadas al select y la salida al indicador. Practica Nº 4: Uso de la estructura case. Asumiendo que ya se sabe que la estructura case sirve para ejecutar o albergar los posibles casos o acciones en función de una expresión. En el lenguaje de programación C, la sintaxis es:
  • 29. Ing. Mayra Peña. 29 Aquí, se ejecuta la estructura case al evaluar la función, en este caso tiene dos casos con diferentes sentencias cada uno. En el lenguaje gráfico, las estructuras de control se representan mediante rectángulos. El case se conecta al elemento que requiera tener varias opciones y todas las operaciones se van guardando en cada caso. Se puede ver el funcionamiento de la estructura case en el siguiente ejemplo: El programa es una calculadora de dos funciones, suma y resta, se piden dos números al usuario y con un botón elige si quiere que esos números se resten o se sumen. Como se mencionó anteriormente, el botón se conecta al case, dando como resultado dos únicos casos, falso o verdadero. Al tratarse de un botón slide, el falso es cuando el botón está del lado izquierdo y el verdadero del lado derecho. Al analizar la imagen 21 podemos notar que lo único que hay dentro del case es la operación que se va a realizar. Esto es porque si metemos cualquiera de los controles o indicadores, éstos solo servirán para un solo caso, y para que el programa funcione correctamente se tendrían que crear variables locales de cada elemento para colocarlos en el otro caso, pero eso es innecesario y haría que el código quede más grande.
  • 30. Ing. Mayra Peña. 30 En cambio, dejando los elementos afuera, al conectarlos al case, crean un cuadrito (túnel) en donde se pueden usar para los demás casos sin tener que crear variables. En el case también se puede conectar un tab control, útil para dar un mejor aspecto al programa, almacenando cada operación o acción en un contenedor individual. El tab control se encuentra en el menú Containers (Contenedores). Podemos ver un ejemplo con un programa para hacer los cálculos de la ley de Ohm: Aquí se usan tres pestañas para el tab control, (para añadir más pestañas se da clic derecho sobre cualquier pestaña y luego en add page after ó add page before). Cada pestaña representa el valor que se quiere obtener, ya sea voltaje, resistencia o intensidad. En cada pestaña hay dos controles numéricos y un indicador numérico, el usuario ingresa los dos valores y el programa hace los cálculos pertinentes.
  • 31. Ing. Mayra Peña. 31 Como se puede apreciar en la imagen 23, aquí si se meten todos los elementos a cada caso, esto porque se está utilizando un tab control y resulta mejor crear controles e indicadores para cada caso. Siguiendo la ley de Ohm, solo se hacen operaciones sencillas de división y multiplicación. Nota: Al conectar el tab control al case, automáticamente aparecen los dos primeros casos, para agregar más casos a esta estructura, se da clic derecho al nombre del caso en la parte de arriba y luego en add case before o after según se requiera. Si queremos utilizar cadenas de texto en un case que esté conectado a un botón, es muy simple. El case solo tendrá dos casos, y por ello solo utilizaremos dos mensajes. El diagrama de bloques queda como se muestra: En este caso, cuando el programa se corra continuamente, saldrá el mensaje del caso false ya que seguramente el botón estará en false cuando se corra el programa, al accionar el botón, se mostrará el mensaje del caso true.
  • 32. Ing. Mayra Peña. 32 Practica Nº 5: el ciclo for. El ciclo for es una estructura de control utilizada en la gran mayoría de los lenguajes de programación, que permite establecer el número mínimo de iteraciones. Sus elementos son la variable de control, inicialización de la variable de control, condición de control, incremento, y cuerpo. La variable de control es la variable con la que el bucle va a trabajar, esta misma es la que se inicializa para establecer un valor predeterminado con el que va a iniciar la iteración. Su uso se orienta a vectores, permite agregar, modificar o eliminar datos según el índice. En LabVIEW, este ciclo también se representa con un rectángulo: La terminal N representa el número de veces que se va a repetir el ciclo, la terminal i representa la iteración, que va desde 0 a n-1. Es importante aclarar que cuando se va a utilizar un ciclo, se debe agregar un Timing (Wait), que sirve para que LabVIEW no consuma toda la memoria de la PC y esto haga que se sature. El mínimo valor del Wait puede ser de 5 milisegudos. Podemos tomar el siguiente programa como ejemplo del uso del ciclo for:
  • 33. Ing. Mayra Peña. 33 En el panel frontal solo tenemos un indicador numérico. Se puede observar que el número de repeticiones del ciclo for será de 5, y la operación será la suma de un número aleatorio y cinco. Esta operación se hará cinco veces y esos cinco resultados se imprimirán en el indicador numérico. Aquí el Timing cumple una función interesante, ya que si le ponemos un valor bajo como 5 o 10, no se aprecia el cambio en el indicador numérico y parecerá que sólo se hizo una operación, en cambio, si se le pone 100 o más, ya se puede ver cómo aparecen los 5 números, lógicamente, en el indicador sólo quedará el último resultado. Si queremos que el número de repeticiones del ciclo quede al azar, entonces sólo ponemos el Random conectado a la terminal N. Con algunas operaciones básicas, se pueden establecer límites para el número aleatorio. IMPORTANTE: Al utilizar ciclos, ya sea for o while, no se debe utilizar el botón correr continuamente, aquí sólo se usar el botón correr, para respetar las acciones del ciclo y evitar que éste se cicle. Asimismo, el botón abortar sólo se puede usar cuando el programa esté ciclado. Practica Nº 6: for condicional Se dice que un ciclo for es condicional cuando éste tiene una terminal de paro, se trata de una terminal a donde se puede conectar un botón de stop o una condición para que el programa se detenga en determinado momento sin importar que no se hayan ejecutado el número de repeticiones establecidas. Esta terminal de paro se puede agregar dando clic derecho sobre el ciclo for y posteriormente clic en conditional terminal.
  • 34. Ing. Mayra Peña. 34 Practica Nº 7: el ciclo WHILE. A diferencia del For, el ciclo While ejecuta determinada acción hasta que el programa termine su función o hasta que el usuario decida detener el programa. Si el programa no tiene un fin determinado, el programa se ejecutará infinitamente o hasta que el usuario lo detenga. El ciclo While no funciona si no se conecta un botón de stop o una condición de paro a la terminal de stop, si no ocurre esto, será imposible ejecutar el programa. Aquí también es posible utilizar shift register. Podemos ver un ejemplo muy sencillo de un programa para encontrar la hipotenusa de un triángulo usando el Teorema de Pitágoras, con el ciclo while.
  • 35. Ing. Mayra Peña. 35 En el panel frontal se tienen dos controles numéricos y un indicador numérico, cada uno representa un lado del triángulo. En el diagrama de bloques, se tiene un ciclo while, que contiene toda la operación. Según el Teorema de Pitágoras, se sabe que el cuadrado de la hipotenusa es igual a la suma de los catetos. Entonces una forma simple de resolverlo, es usando la función square, que eleva al cuadrado cualquier número que se le conecte, entonces, se usan dos, uno para cada lado del triángulo. Éstos se suman y se le saca raíz cuadrada al resultado, usando la función square root. Ambas funciones se encuentran en el menú Numeric. El resultado se imprime en el indicador numérico. Nótese que el ciclo while tiene un botón de stop conectado a la terminal de paro, sin esto, el programa no se ejecuta. Hasta aquí todo va bien, pero hay un pequeño error, que en este programa puede no causar problemas, pero al trabajar con programas grandes, puede ocasionar muchos problemas. Es necesario colocar un Wait.