Documentos de Académico
Documentos de Profesional
Documentos de Cultura
TEMA 01 - Principio de Programación y Entorno LabVIEW
TEMA 01 - Principio de Programación y Entorno LabVIEW
TABLA DE CONTENIDOS
7 BIBLIOGRAFIA ____________________________________________________ 34
1
Tema 01
CAPACIDAD
Programa una GUI a partir de variables, controles, indicadores y bloques de programación.
TEMÁTICA
1. Proyecto en LabVIEW.
2. Secciones de trabajo.
3. Tipos de datos.
4. Arrays.
5. Flujo de datos.
6. Técnicas de debugging.
2
1 PROYECTO EN LABVIEW
Un proyecto de LabVIEW es un archivo que se utiliza para la correcta organización de todos los
elementos de un aplicación o programa basado en las referencias de los mismos.
Se recomienda guardar los proyectos en un solo lugar del disco, mediante carpetas organizadas
por jerarquías y con nombres relativos a la función del archivo.
3
3. Seleccionar Blank Project dentro del asistente de creación de un nuevo proyecto. En este
asistente se puede observar plantillas prediseñadas para proyecto similares, listas para su uso.
Sin embargo, se recomienda su uso solo si se está muy familiarizado con ellas. Hacer clic en
Finish.
4
6. Ubicar una carpeta donde se desee guardar el proyecto nuevo. Nombrar el proyecto nuevo.
Dar clic en OK (ACEPTAR).
Para la creación de una carpeta autoalimentada (Autopopulating) se siguen los siguientes pasos:
5
3. Se selecciona la carpeta que se quiere añadir al proyecto y esta carpeta se añade con todos
los archivos que contenga.
4. Finalmente queda añadido al proyecto en el que estamos trabajando, listo para su uso y
gestión de información.
Para la creación de una carpeta virtual (Virtual Folder) se siguen los siguientes pasos:
6
3. Se modifica el nombre de la carpeta a criterio, y tomando en cuenta la función que cumplirá
en el proyecto.
4. Finalmente queda añadido al proyecto en el que estamos trabajando, listo para su uso y
gestión de información.
7
2 SECCIONES DE TRABAJO
1. Hacer clic derecho sobre el sub ítem My Computer del proyecto a trabajar. Ubicar la opción
New>VI.
Aparecen dos ventanas donde se trabajará en el nuevo instrumento virtual, la primera ventana
es el Front Panel (Panel Frontal) y la segunda ventana es el Block Diagram (Diagrama de
Bloques).
8
2. Guardar el Front Panel y el Block Diagram. Hacer clic en la opción File y buscar la opción Save
As (Guardar como). Este procedimiento se realiza para ambas ventanas (archivos), tanto para el
Front Panel, como para el Block Diagram.
3. Seleccionar una carpeta donde se guardarán ambos archivos, se recomienda sea la misma
donde se ha guardado el proyecto a trabajar. Colocar un nombre para nuestro VI. Hacer clic OK
(ACEPTAR).
Al finalizar el procedimiento quedarían ambas ventanas (Front Panel /Block Diagram) con el
nombre especificado. Y en el Project Explorer aparecerá el nuevo VI creado.
9
2.1.2 Front Panel (Panel Frontal)
Parte del VI donde se encuentran los indicadores que visualizará y los controles con los que
interactuará el usuario. Se pueden crear sin mucho esfuerzo con la finalidad de que sirvan de
interface de usuario de nuestras aplicaciones.
2.1.2.1 Controles
Los controles son las entradas de los VI. Estas entradas pueden ser un botón, un slider, un campo
de texto o numérico, etc. Estos controles deben ser llenados o modificados por el usuario. Tiene
un fondo de color blanco, indicando que están habilitados para su edición. Los hay de varios
tipos como booleanos, numéricos, string, etc.
10
Para crear un control en el Front Panel, se sigue el siguiente procedimiento:
1. Hacer clic derecho sobre cualquier parte del interior del Front Panel. Y ubicar la opción
Controls. Ahí se puede apreciar todos los tipos de controles que ofrece LabVIEW.
2. Seleccionar el tipo de control que deseamos utilizar. Por ejemplo, para utilizar un control
numérico colocamos el curso sobre el control Numeric (numérico), y aparecerán los tipos de
controles que podemos utilizar y seleccionamos el que deseemos.
2.1.2.2 Indicadores
Los indicadores son las salidas de los VI. Estas salidas pueden ser un indicador led, un
termómetro, un gráfico, etc. Estos indicadores son modificados por el programa, mostrando el
resultado de alguna operación o tarea realizada en programación. Tiene un fondo de color gris,
indicando que no están habilitados para su edición por el usuario. Los hay de varios tipos como
booleanos, numéricos, string, etc.
11
Para crear un indicador en el Front Panel, se sigue el siguiente procedimiento:
1. Hacer clic derecho sobre cualquier parte del interior del Front Panel. Y ubicar la opción
Controls. Ahí se puede apreciar todos los tipos de indicadores que ofrece LabVIEW.
2. Seleccionar el tipo de indicador que deseamos utilizar. Por ejemplo, para utilizar un indicador
numérico (termómetro) colocamos el cursor sobre la opción Numeric (numérico), y aparecerán
los tipos de indicadores que podemos utilizar y seleccionamos el que deseemos y lo ubicaremos
en nuestro Front Panel.
12
2.1.3 Block Diagram (Diagrama de Bloques)
Parte del VI donde se encuentra la programación, o código fuente, que acompaña al Front Panel.
Utiliza todos los elementos añadidos en el Front Panel para ejecutar una operación o tarea en
específico.
Dentro de Block Diagram podemos encontrar varios bloques de operaciones que se pueden
utilizar para realizar tareas deseadas. Estos bloques de operaciones deben seleccionarse y
utilizarse respecto al tipo de datos que vayamos a manejar en la programación.
1. Hacer clic derecho sobre cualquier parte del interior del Block
Diagram. Aparecerá el panel de Functions, en este panel podremos
ver todas las funciones de programación que ofrece LabVIEW.
Dentro de Programming, se encuentran las funciones más
utilizadas para realizar un programa.
2. Colocar el cursor sobre el tipo de función deseada, y LabVIEW mostrará las funciones de
operación disponibles. Por ejemplo, al colocar el curso sobre Numeric, aparecen todas las
funciones de operaciones relacionadas a ese tipo de funciones. Una de las usadas es la de
Multiply.
13
3. Hacer clic sobre la función deseada y ubicarla dentro del Block Diagram.
2.1.4 Ejecutar un VI
Para realizar la ejecución de un VI y ver tu proyecto trabajar se siguen los siguientes pasos:
1. Abrir el Front Panel. Ubicar el botón de Run o Run Continuously, ubicado en la barra de
herramienta en la parte superior izquierda.
El botón de Run ejecuta el programa una sola vez, en caso de que tu programa no tenga bucles
integrados tendrías que ejecutar el programa todas las veces que cambies los valores en tus
controles para obtener nuevos valores en los indicadores de tus programas.
EL botón de Run Continuously ejecuta el programa de forma continua y repetitiva, sirve mucho
cuando tu programa no tiene bucles internos, de esta manera puede cambiar los controles y tus
indicadores se actualizarán automáticamente.
14
2. Seleccionar el botón que más te convenga a la estructura de tu programa. Hacer clic en el
botón seleccionado. Se ejecutará el VI.
Para detener la ejecución del programa, solo se debe ubicar el botón de Stop, y hacer clic en él.
Con esta acción el programa se detendrá.
15
3 TIPOS DE DATOS
TAMAÑO
NOMBRE SIMBOLO RANGO DE CONTEO
DE BITS
16
Número positivo mínimo:
4.94e-324
Número positivo
Double Precision, máximo: 1.79e308
64
floating point Número negativo
máximo: -4.94e-324
Número negativo
mínimo: -1.79e308
Número positivo mínimo:
6.48e-4966
Número positivo
Extended Precision, máximo: 1.19e4932
128
floating point Número negativo
máximo: -6.48e-4966
Número negativo
mínimo: -1.19e4932
64 o 72
Fixed Point -
(overflow)
Complex single
precision, floating 64 -
point
Complex double
precision, floating 128 -
point
Complex extended
precision, floating 256 -
point
01/01/1600 00:00:00
128-bit time stamp 128 hasta 01/01/3001
00:00:00 UTC
Con estos tipos de datos numéricos podemos realizar diversas operaciones usando las funciones
que ofrece el Block Diagram de LabVIEW.
17
En el Block Diagram se da clic derecho y se busca la función de suma dentro de las funciones
numéricas, Programming>Numeric>Add, y se le da clic.
Se ubica dentro del Block Diagram la función Add y se procede a realizar las conexiones entre
los controles, la función y el indicador.
Estas conexiones se realizan al hacer clic en la salida de los controles y dirigir el cursor hacia la
entrada de las funciones y hacer clic nuevamente. Es como indicarle el punto de partida del dato
y el punto de llegada entre los controles, funciones e indicadores disponibles.
Finalmente debe quedar la conexión entre los controles, la función y el indicador de la siguiente
manera.
18
Las funciones que se utilizan con este tipo de datos se encuentran el parte Mathematics del
panel Functions dentro del Block Diagram.
Las funciones más utilizadas suelen ser las que se encuentran dentro de Numeric. Sin embargo,
como se aprecia existen un sin número de funciones de matemática mucho más avanzada
dentro de Elementary, Linear Algebra, Integ & Diff, etc.
Dentro de los VIs de LabVIEW, existen las constantes, indicadores y controles booleanos.
1. Hacer clic derecho sobre cualquier parte del Block Diagram. Ubicar la opción Boolean.
Seleccionar True Constant o False Constant.
19
2. Colocar las constantes dentro del Block Diagram.
Los indicadores booleanos se aprecian mejor dentro del Front Panel se representan de la
siguiente manera:
1. Hacer clic derecho sobre cualquier parte del Front Panel. Ubicar la opción Boolean.
Seleccionar Round LED o Square LED.
20
3.2.3 Controles Booleanos
Los controles booleanos dentro de LabVIEW pueden ser pulsadores o botones, y tienen un
comportamiento que los diferencia en 6 modos de funcionamiento.
Podemos acceder a estos modos de funcionamiento dando clic derecho sobre el control
booleanos insertado en el Front Panel, se ubica la opción Mechanical Action y se selecciona
entre los 6 modos de funcionamiento.
21
3. Switch until released
22
6. Latch until released
Las funciones utilizadas para trabajar con datos booleanos se pueden encontrar en el Block
Diagram. Hacer clic derecho en cualquier parte del área de trabajo del Block Diagram y dirigirse
a Programming>Boolean.
Luego de seleccionarla función que se requiera para el trabajo deseado, se procederá a hacer
las respectivas conexiones de los bloques. Por ejemplo, si se requiere usar una compuerta AND,
quedaría de la siguiente manera.
Las variables String también tienen sus controles e indicadores dentro del Front Panel. También
existen las constantes String que nos permiten almacenar texto sin que se vea en el Front Panel.
23
Las funciones disponibles para trabajar con este tipo de datos se encuentran en el Block Diagram
de la siguiente manera:
1. Hacer clic derecho sobre cualquier parte del Block Diagram y dirigirse a Programming>String.
2. Seleccionar la función que se desea utilizar. Ubicarla dentro del Block Diagram. Realizar las
conexiones debidas entre los bloques. Por ejemplo, con la función Concatenate Strings,
quedaría de la siguiente manera.
1. String Length
Esta función tiene como entrada 1 variable de tipo string, y como salida 1 variable de tipo
numérico (entero). Esta variable numérica contiene información de la cantidad de
caracteres que tiene la variable string (palabra/oración), en otras palabras, la longitud de la
cadena o texto.
24
2. Concatenate Strings
Esta función tiene como entrada 2 o más variables de tipo string, y como salida 1 variable
de tipo string. Esta función concatena o une dos o más variables de tipo string
(palabras/oraciones) y forma una sola variable de tipo string (palabra/oración).
3. String Subset
Esta función tiene como entradas 1 variable de tipo string y 2 variables de tipo numérico
(entero), y como salida 1 variable de tipo string. Esta función se encarga de extraer, de una
variable de tipo string (entrada), una sub cadena o sub string de acuerdo a las otras dos
variables de entrada (numéricas).
4. Match Pattern
Esta función tiene como entradas 2 variables de tipo string y 1 variable de tipo numérico
(entero), y como salidas 3 variables de tipo string y 1 salida de tipo numérico (entero). Esta
función se encarga de buscar un string (cadena) dentro de otro string (cadena), dándonos
como resultados el sub string antes de la coincidencia, el sub string coincidente y el sub
string después de la coincidencia, adicional a un número entero que me indica la posición
en la que se encuentra el sub string coincidente.
25
4 ARRAYS (ARREGLOS)
Es una organización de datos del mismo tipo (numéricos, booleanos, string, etc.). Se caracterizan
por tener un valor de posición o índex y un tamaño total de arreglo. El índex inicial siempre es
0.
Existen también arrays (arreglos) de 2 Dimensiones (2-D). Estos arrays están compuestos por
filas y columnas. Su índex o posición se en indica en el formato (fila, columna).
1. Abrir el Front Panel. Hace clic derecho en cualquier parte del área de trabajo. Ubicar la opción
Modern>Data Containers>Array.
26
2. Ubicar el array en el lugar deseado dentro del Front Panel. Ubicar el tipo de dato que
colocaremos en nuestro array (Modern>Numeric>Numeric Control) y arrastrarlo dentro del
array.
Seleccionar el array que deseamos ampliar. Hace clic en el borde derecho y mantenerlo. Mover
el cursor, ampliando el tamaño del array, hasta llegar a la longitud que deseamos.
Ubicar el indicador de índex o posición del array. Hacer clic derecho sobre este indicador. Ubicar
la opción Add Dimension. Hacer clic en esta opción.
Aparecerán ahora 2 indicadores de index, el primero para las filas y el segundo para las
columnas.
27
Para aumentar la longitud en la segunda dimensión del array se hace lo siguiente:
Seleccionar el array que deseamos ampliar. Hace clic en el borde inferior y mantenerlo. Mover
el cursor, ampliando el tamaño del array hacia abajo, hasta llegar a la longitud que deseamos.
1. Array Size
Esta función tiene como entrada 1 array, y como salida 1 variable/array numérico (entero).
El resultado de esta función es el tamaño de un array. Si el array es 1-D, da como respuesta
1 variable numérica; y si el array es 2-D, da como respuesta un array numérico de dos
elementos, un elemento para el tamaño (longitud) de cada dimensión.
2. Index Array
Esta función tiene 1 entrada de array y 1 o más entradas de variables numéricas, y como
salida 1 subarray. Esta función devuelve un elemento o subarray de acuerdo al índex
indicado.
28
3. Replace Subset
Esta función tiene como entradas 2 arrays y una variable numérica. Reemplaza un conjunto
de valores de un array por otro a partir del índex.
Esta función tiene como entradas 2 arrays y una variable numérica, y como salida 1 array.
Inserta un conjunto de valores de un array dentro de otro array a partir del índex.
Esta función tiene como entradas 1 arrays y 2 variables numéricas, y como salida 2 arrays.
Elimina un elemento o un conjunto de elementos (valores) de un array a partir del índex y
de cuantas posiciones se le indique que tiene que borrar.
29
6. Array Subset
Esta función tiene como entradas 1 array y 2 variables numéricas, y como salida 1 array. Da
como salida una parte del array de entrada según al índex y al tamaño (longitud)
especificados.
Esta función tiene como entrada 1 array, y como salidas 4 valores numéricos. Da como salida
el valor máximo y mínimo de un array, así como sus index.
30
5 FLUJO DE DATOS EN LABVIEW
Las funciones y operadores de LabVIEW solo se pueden ejecutar si han recibido todas sus
entradas y para facilidad, se recomienda crear los programas preferiblemente de izquierda a
derecha para que se facilite la lectura de los mismos. Por esto LabVIEW es un lenguaje con flujo
de datos y dependiendo los nodos o bloques se realiza la ejecución del programa.
De acuerdo con el flujo de datos que sigue LabVIEW, en la siguiente imagen se ejecuta primero
la suma y luego la división.
31
6 TECNICAS DE DEBUGGING
Dentro del entorno de trabajo del Block Diagram y el Front Panel, existe una serie de
herramientas y opciones que te permiten realizar una depuración, que consiste en validar que
datos o funciones están incorrectos o están fuera de la norma para poder ejecutar un VI.
Una de las más sencillas formas de debugging es la inspección visual. LabVIEW genera alertas
visuales en su flujo de datos cuando detecta un conflicto o error en la programación, estas
alertas son visibles por programador si presta atención al flujo de las conexiones que ha
realizado. Dichas alertas se presentan con un X de color rojo sobre la conexión que presenta el
conflicto.
Otra de las opciones de debugging que presenta LabVIEW, es la lista de errores que genera el
programa cuando das clic en el botón de Run y existen conflictos. En esta lista se detallan que
ítems presentan error (Item with errors), la cantidad de errores y advertencias presentes junto
con una descripción detallada de cual ventana presenta el error y en que consiste dicho error
(Errors and warnings), adicional a una sección de detalles (Details) en la que explica de forma
más técnica la causa del error.
32
Si uno hace doble clic en el error que muestra la sección de Errors and warnings, el programa
te lleva al lugar del error en específico y lo resalta para que sea apreciable visualmente.
Existen dos herramientas dentro de Block Diagram, que te permiten hacerle seguimiento al flujo
del programa y también a los valores y resultados de cada una de la funciones y operaciones del
programa.
Estas herramientas permiten observar el flujo del programa que estamos ejecutando dando la
ventaja de una evaluación visual de cada parte del programa. La desventaja es que hace lenta la
ejecución de los VIs por lo tanto podrías tener errores de timeout (errores por ausencia de
valores en un tiempo determinado).
33
7 BIBLIOGRAFIA
National Instruments (2009). Control Design User Manual. National Instruments Corporation.
Jeffrey, T., & Jim, K. (2006). LabVIEW for everyone: graphical programming made easy and fun.
Prentice Hall PTR.
Bitter, R., Mohiuddin, T., & Nawrocki, M. (2007). LabVIEW: Advanced programming techniques.
CRC press.
34