Documentos de Académico
Documentos de Profesional
Documentos de Cultura
LABVIEW
Universidad Nacional de Entre Ríos
Facultad de Ingeniería
Cátedra de Control de Procesos
ÍNDICE
INTRODUCCIÓN - ¿Q UÉ ES L ABVIEW? ............................................................................................................... 4
MAPA DEL CURSO ............................................................................................................................................. 4
LO QUE TRATARÁ EL CURSO ............................................................................................................................... 5
PRERREQUISITOS .............................................................................................................................................. 5
DESCRIPCIÓN DEL CURSO .................................................................................................................................. 5
LECCIÓN I: INTRODUCCIÓN A L ABVIEW .............................................................................................................. 6
A- INSTRUMENTOS VIRTUALES (VI) ................................................................................................................... 7
B- E NTORNO DE L ABVIEW ............................................................................................................................... 9
RESUMEN , TRUCOS Y CONSEJOS ....................................................................................................................... 22
LECCIÓN II: CREACIÓN , EDICIÓN Y DEPURACIÓN DE UN VI ................................................................................. 23
A- CREACIÓN DE VI ........................................................................................................................................ 24
B- T ÉCNICAS DE EDICIÓN ................................................................................................................................ 28
C-T ÉCNICAS DE DEPURACIÓN .......................................................................................................................... 31
RESUMEN , TRUCOS Y CONSEJOS ....................................................................................................................... 32
LECCIÓN III: CREACIÓN DE SUB VI ..................................................................................................................... 33
A- IDEAS BÁSICAS .......................................................................................................................................... 34
B- CREACIÓN DE ÍCONOS Y CONECTORES .......................................................................................................... 34
C- USANDO UN VI COMO SUB VI ...................................................................................................................... 39
D- OPCIÓN PARA CREAR UN VI ........................................................................................................................ 40
RESUMEN , TRUCOS Y CONSEJOS ....................................................................................................................... 41
LECCIÓN IV: B UCLES Y CUADROS ....................................................................................................................... 42
A- BUCLE WHILE .......................................................................................................................................... 43
B- C UADROS DE FORMA DE ONDA .................................................................................................................... 44
C- SHIFT REGISTER ......................................................................................................................................... 45
D- BUCLES FOR ............................................................................................................................................ 48
RESUMEN , TRUCOS Y CONSEJOS ....................................................................................................................... 51
LECCIÓN V: ARRAYS, G RAPHS, AND CLUSTERS ................................................................................................... 52
A- ARREGLOS ................................................................................................................................................ 53
B- C REANDO ARREGLOS CON BUCLES .............................................................................................................. 55
C- FUNCIONES DE UN ARREGLO ........................................................................................................................ 56
D- POLIMORFISMO ......................................................................................................................................... 58
E- GRÁFICOS ................................................................................................................................................. 59
F- CLÚSTER .................................................................................................................................................... 62
Página 2 de 87
Cátedra de Control de Procesos – Facultad de Ingeniería – U.N.E.R.
Curso Introducción a LabVIEW - 2007
RESUMEN , TRUCOS Y CONSEJOS ....................................................................................................................... 65
LECCIÓN VI: E STRUCTURAS CASE Y SEQUENSE .............................................................................................. 66
A- E STRUCTURA C ASE ................................................................................................................................... 67
B- E STRUCTURA SECUENCIA ........................................................................................................................... 70
C- NODOS FÓRMULA Y EXPRESIÓN ................................................................................................................... 71
RESUMEN , TRUCOS Y CONSEJOS ....................................................................................................................... 74
LECCIÓN VII: C ADENAS Y ARCHIVOS I/O ............................................................................................................ 75
A- STRINGS .................................................................................................................................................... 76
B- F UNCIONES STRING .................................................................................................................................... 77
C- ARCHIVOS I/O VI S Y F UNCIONES ................................................................................................................. 80
D- T RANSFORMANDO CADENAS A HOJAS DE CÁLCULOS (SPREADSHEET ) .............................................................. 84
E- ARCHIVOS I/O HIGH-LEVEL VIS .................................................................................................................. 85
RESUMEN , TRUCOS Y CONSEJOS ....................................................................................................................... 87
Página 3 de 87
Cátedra de Control de Procesos – Facultad de Ingeniería – U.N.E.R.
Curso Introducción a LabVIEW - 2007
Introducción - ¿Qué es LabVIEW?
LabVIEWTM es un lenguaje de programación visual, que utiliza iconos en lugar de las líneas de
código utilizadas en otros lenguajes de programación. Utiliza diagramas de flujo para ralizar los
algoritmos de la aplicación que se esta realizando. Utilizando LabVIEW se pueden crear programas de;
instrumentación para PCs que corren bajo Windows, Sun, Apple Macintosh, Concurrent Power Max y
HP-UX Workstation. LabVIEW presenta una secuencia natural de lenguaje de programación tradicional
junto a una interfaz de programación gráfica y todas las herramientas necesarias para la adquisición,
análisis y presentación de datos. Con este lenguaje de programación gráfica, llamado “G”, se puede
programar en diagrama en bloque, y LabVIEW posteriormente compila el código.
LabVIEW integra adquisición de datos, análisis y presentación en un solo sistema. Para la
adquisición de datos y control de instrumentos, LabVIEW provee librerías de funciones y subrutinas
para muchas tareas de programación así como librerías específicas para la adquisición de datos, VXI,
GPIB. Para el análisis de datos, LabVIEW en su librería, contiene funciones para generación de señales,
procesamiento de señales, filtrado, etc. LabVIEW puede generar también gráficos, cuadros, etc. siendo
una poderosa herramienta de desarrollo y control.
Introducción a
LabVIEW
Creación, edición y
depuración de VI
Creación de
sub VI
Bucles y
cuadros
Vectores y
gráficos
Estructura de secuencia
y ciclo CASE
Página 4 de 87
Cátedra de Control de Procesos – Facultad de Ingeniería – U.N.E.R.
Curso Introducción a LabVIEW - 2007
String y archivos
de E/S
VI
Instrucciones
Adquisición de de control
datos
Prerrequisitos
Este curso intenta que se familiaricen con este lenguaje para poder desarrollar las aplicaciones
que quieran. Este curso se divide en lecciones, cada una de las cuales consiste en:
Introducción.
Discusión sobre un determinado tópico que trate específicamente la lección.
Ejercicios.
Resumen de los conceptos más importantes.
Página 5 de 87
Cátedra de Control de Procesos – Facultad de Ingeniería – U.N.E.R.
Curso Introducción a LabVIEW - 2007
Introducción
Se tratará:
Qué es un instrumento
virtual (VI).
Sobre el entorno
LabVIEW (ventanas,
menús, herramientas).
Página 6 de 87
Cátedra de Control de Procesos – Facultad de Ingeniería – U.N.E.R.
Curso Introducción a LabVIEW - 2007
A- Instrumentos Virtuales (VI)
Los programas de LabVIEW son llamados Instrumentos Virtuales (VIs). Los Vis tiene 3 partes
principales:
Panel frontal.
Diagrama en bloques.
Íconos conectores.
El panel frontal es en donde se pueden setear las entradas y observar las salidas del diagrama en
bloques del VI. Debido a que el panel frontal es análogo a los paneles frontales de un instrumento real,
las entradas son llamadas controles y las salidas indicadores. Se pueden utilizar botones, switches,
cuadros, gráficos para obtener un panel frontal fácilmente identificable y entendible.
Un ejemplo de panel frontal se muestra a continuación:
Cada panel frontal tiene que ir acompañado por el diagrama en bloque, y los dos componen el
VI. Se puede armar el diagrama en bloque usando el lenguaje de programación gráfica “G”. Se puede
pensar en el diagrama en bloques como el programa fuente. Los componentes del diagrama en bloques
representan los nodos del programa, por ejemplo: bucles for, estructuras case, y las estructuras
aritméticas. Los componentes se unen para lograr el flujo de datos dentro del diagrama en bloques.
Un ejemplo de diagrama en bloques es el que se encuentra a continuación:
Página 7 de 87
Cátedra de Control de Procesos – Facultad de Ingeniería – U.N.E.R.
Curso Introducción a LabVIEW - 2007
Página 8 de 87
Cátedra de Control de Procesos – Facultad de Ingeniería – U.N.E.R.
Curso Introducción a LabVIEW - 2007
B- Entorno de LabVIEW
Cuando se abre LabVIEW con un doble clic en su ejecutable, aparece la siguiente pantalla:
Cuando se selecciona New VI aparecen dos ventanas. Una de las ventanas es para la elaboración
del panel frontal, y la otra es la que va a contener el diagrama en bloques.
El panel frontal y el diagrama en bloques constan de una colección de objetos gráficos, los cuales
son elementos de programación de LabVIEW. El panel de control contiene varios tipos de controles e
Página 9 de 87
Cátedra de Control de Procesos – Facultad de Ingeniería – U.N.E.R.
Curso Introducción a LabVIEW - 2007
indicadores. El diagrama en bloques contiene terminales que se corresponden con los controles e
indicadores del panel frontal, así como también constantes, funciones, subí, estructuras y conectores que
unen un objeto con otros.
La siguiente ilustración muestra un panel frontal asociado a su diagrama de bloques.
Página 10 de 87
Cátedra de Control de Procesos – Facultad de Ingeniería – U.N.E.R.
Curso Introducción a LabVIEW - 2007
Barra de herramientas del panel frontal
Tanto la ventana del panel frontal como la del diagrama, contienen una barra de herramientas con
botones de comandos e indicadores de estado que se usan para el control del VI. La utilidad de las barras
de herramientas depende de si se está trabajando en el panel frontal o en el diagrama de bloques.
La siguiente barra de herramientas, aparece en la parte superior de la ventana del panel frontal.
Reemplaza al botón RUN e indica que el VI no se puede compilar debido a que hay errores.
Clickleando otra vez este botón aparece una lista de errores.
Botón STOP cuando se selecciona este botón se para inmediatamente la aplicación del VI.
Cuadro de reorden en este cuadro podemos optar por ejemplo, por que elemento queremos
que esté en el frente o atrás entre otras.
Página 11 de 87
Cátedra de Control de Procesos – Facultad de Ingeniería – U.N.E.R.
Curso Introducción a LabVIEW - 2007
Barra de herramientas del panel frontal
La barra de herramientas del diagrama en bloques contiene más o menos los mismos elementos
que la barra del panel frontal.
Botón paso a paso Clickeando este botón se habilita el modo simple paso, el cual pasa
nodo a nodo por el diagrama en bloques, muestra que modo se está ejecutando. Clickeando
este botón se puede recorrer los bucles paso a paso.
Botón de pasos dentro recorre paso a paso de un bucle, sub VI o los dos.
Botón de pasos fuera recorre paso a paso fuera de un bucle, sub VI o los dos.
Botón de advertencia este indicador aparece cuando hay un potencial problema con el
diagrama en bloques. Este botón se puede habilitar desde el menú Edición Preferences.
Menúes
LabVIEW posee también una barra de menú. Todos los VI poseen la barra de menú que se
puede utilizar para selección y modificación, generalmente se pueden acceder a ella a través del mouse.
La barra de menú en LabVIEW se encuentra en la parte superior, y contiene distintos submenúes
desplegables.
Las opciones fundamentales del menú File son abrir, cerrar, grabar e imprimir VIs. Por otro lado,
las opciones del menú Edit son para modificar el panel frontal y el diagrama en bloques.
Página 12 de 87
Cátedra de Control de Procesos – Facultad de Ingeniería – U.N.E.R.
Curso Introducción a LabVIEW - 2007
Página 13 de 87
Cátedra de Control de Procesos – Facultad de Ingeniería – U.N.E.R.
Curso Introducción a LabVIEW - 2007
Página 14 de 87
Cátedra de Control de Procesos – Facultad de Ingeniería – U.N.E.R.
Curso Introducción a LabVIEW - 2007
Paletas
LabVIEW tiene paletas gráficas, flotantes para la creación y operación de VIs. Las tres paletas
incluyen Herramientas, Controles y Funciones.
Paletas de herramientas
Se puede crear, modificar y depurar VIs usando las herramientas localizadas en la paleta de
Herramientas. Esta paleta no es visible, sino que hay que seleccionar “Show Tools Palette” del menú
Windows para ver la paleta.
1 2 3
4 5 6
7 8 9
10
3- Herramienta de escritura Esta herramienta cambia su ícono cuando pasa sobre un texto.
La herramienta cambia a este estado cuando se quiere crear una etiqueta.
4- Herramienta de conexionado se utiliza para coneccionar los objetos dentro del diagrama
en bloques.
7- Herramienta de puntos de corte se utiliza para colocar distintos puntos de corte en VIs,
funciones o estructuras.
9- Herramienta de copiado de color usando esta herramienta, se copian los colores marcados
con la herramienta de coloración.
Estas paletas consisten en una serie de íconos, representando subpaletas, permitiendo el acceso a
un gran rango de objetos aprovechables para la creación de un VI. Se puede acceder a estas paletas
clickeando en su ícono.
Paletas de controles
Página 16 de 87
Cátedra de Control de Procesos – Facultad de Ingeniería – U.N.E.R.
Curso Introducción a LabVIEW - 2007
Subpaleta de decoración objetos gráficos para mejorar la vista del panel frontal.
Subpaleta de selección muestra una caja de diálogo con los caminos de los
controles que se necesitan.
Paletas de funciones
Cada opción en esta paleta muestra una subpaleta con diferentes íconos. La paleta de funciones
no es visible, se puede abrir desde el menú Windows, seleccionando “Show Functions Palette”.
NOTA La paleta de funciones sólo aparece cuando está activada la ventana del
Diagrama en Bloques.
Página 17 de 87
Cátedra de Control de Procesos – Facultad de Ingeniería – U.N.E.R.
Curso Introducción a LabVIEW - 2007
Subpaleta de comunicación consiste en redes de trabajo de VIs para TCP, PDE, etc.
Subpaleta de selección consiste en un cuadro de diálogo que permite insertar subVIs dentro
de otros VIs.
Librerías VIs
Se puede buscar y guardar VIs como una forma especial de archivos llamados librerías VI,
normalmente como un archivo con extensión .llb. Las ventajas de usar librerías de VI incluyen:
Con las librerías VI se pueden usar hasta 255 caracteres para el nombre de los VIs
incluyendo la extensión “*.vi” .
Librería VI comprime el espacio de lo que se graba en el disco (son descomprimidos en
tiempo de ejecución).
Porque los VIs son archivos simples, lo cual facilita la transferencia de VIs entre
computadoras.
La librería VI no es jerárquica en su naturaleza.
Guardando y ejecutando VI desde un sistema de archivos es más rápido que desde las
librerías de VI.
Página 18 de 87
Cátedra de Control de Procesos – Facultad de Ingeniería – U.N.E.R.
Curso Introducción a LabVIEW - 2007
Carga de un VI
Cuando está cargado un VI en la memoria se elige la opción Open del menú de Archivo.
Cada una de las librerías de VI y los VIs que aparecen en el cuadro tiene un símbolo
representativo.
Después de crear una librería VI, ésta aparece como una carpeta en el cuadro de diálogo de
archivo, con un ícono que simboliza una carpeta.
Se puede abrir esa librería clickeando el botón derecho del mouse y ok o haciendo doble clic
sobre el ícono.
Grabar un VI
Se puede guardar un VI como un directorio regular o como una librería seleccionando Save,
Save as..... o Save Copy as desde el menú FILE.
Para crear una nueva librería VI, seleccionar Save as del menú FILE y clickee sobre New VI-
Library del cuadro de diálogo Save as. Después de esto, aparece el siguiente cuadro de diálogo.
Ingrese el nombre del VI, y clickee sobre el botón VI Library, LabVIEW le anexa la extensión
.llb si no está incluida. Se pueden borrar VIs de una librería de VI usando Edit- Library que se encuentra
en el menú FILE, o en la opción File manager del menú PROJECT.
Página 19 de 87
Cátedra de Control de Procesos – Facultad de Ingeniería – U.N.E.R.
Curso Introducción a LabVIEW - 2007
Ejercicio 1: Respuesta en Frecuencia
PANEL FRONTAL
2- Corra este VI haciendo click en el botón RUN (explicado anteriormente). Este VI simula el
envío de señales de estimulo a una Unidad Bajo Testeo (UUT) y lee la respuesta devuelta por
esta. La curva de respuesta en frecuencia resultante se visualiza en un grafico en el panel
frontal.
DIAGRAMA EN BLOQUES
Página 20 de 87
Cátedra de Control de Procesos – Facultad de Ingeniería – U.N.E.R.
Curso Introducción a LabVIEW - 2007
3- Este diagrama como puede verse contiene muchos elementos básicos de LabVIEW,
incluyendo estructuras, funciones y sub VIs (Todos esto elementos serán explicados en los
próximos capítulos del curso)
Página 21 de 87
Cátedra de Control de Procesos – Facultad de Ingeniería – U.N.E.R.
Curso Introducción a LabVIEW - 2007
Resumen, trucos y consejos
Los Instrumentos Virtuales contiene 3 partes principales, el panel frontal, el diagrama en bloques
y el panel de conectores e iconos.
El panel frontal es la interfaz de usuario del VI; especifica las entradas y muestra las salidas.
El diagrama en bloques contiene el código fuente grafico del programa; compuesto de nodos,
terminales, iconos, y conectores (“cables”).
Use la paleta de herramientas para crear, modificar y depurar su VI.
Use la paleta de controles para poner controles e indicadores en el panel frontal.
Use la paleta de funciones para armar el diagrama en bloques.
Página 22 de 87
Cátedra de Control de Procesos – Facultad de Ingeniería – U.N.E.R.
Curso Introducción a LabVIEW - 2007
Se tratará:
Página 23 de 87
Cátedra de Control de Procesos – Facultad de Ingeniería – U.N.E.R.
Curso Introducción a LabVIEW - 2007
A- Creación de VI
Los VIs tienen 3 partes principales: el panel frontal, el diagrama en bloques, y el ícono/conector.
El ícono /conector se discute en la lección 3.
Panel Frontal
Los dos objetos más comúnmente usados son el control digital y el indicador digital. Para
ingresar o cambiar valores en un control digital, se puede clickear al botón de incremento con la
herramienta de operación (manito) o haciendo doble click en el número con cualquiera de las
herramientas de escritura (cursor) o de operación.
Control digital
Indicador digital
Página 24 de 87
Cátedra de Control de Procesos – Facultad de Ingeniería – U.N.E.R.
Curso Introducción a LabVIEW - 2007
Controles e indicadores de configuración
Se puede configurar casi todos de los controles e indicadores usando las opciones del menú
desplegable haciendo click con el botón derecho del mouse sobre el
controlador/indicador.
Diagrama en bloques
El diagrama en bloques está compuesto por nodos, terminales y cables.
Indicadores terminales
Los nodos son elementos de ejecución de programa. Los nodos son análogos a estados,
funciones y subrutinas en los lenguajes de programación basados en texto. Hay 4 tipos de nodos:
funciones, nodos sub VI, estructuras y nodos de códigos de interfase (CINs). Las funciones son bloques
para realizar operaciones elementales tales como adición de números, entrada o salida de archivos, o
formato de cadena de caracteres. Los nodos sub VI son VI que se diseñan y luego son llamados por el
diagrama de otro VI. Las estructuras tales como ciclos for o while controlan el flujo del programa. Los
Página 25 de 87
Cátedra de Control de Procesos – Facultad de Ingeniería – U.N.E.R.
Curso Introducción a LabVIEW - 2007
CINs son interfaces entre el diagrama en bloques y otros códigos escritos en C. La figura anterior
muestra un VI con dos nodos funciones, uno adiciona 2 números y el otro los sustrae.
Los objetos del panel de control aparecen como terminales en el diagrama en bloques. Los
terminales son puertos a través de los cuales los datos se intercambian entre el diagrama en bloque y el
panel frontal y entre los nodos del diagrama en bloque. Los terminales son análogos a los parámetros y
controles. Hay dos tipos de terminales: terminales de control o de indicación y nodos terminales. Los
primeros pertenecen a los controles e indicadores del panel frontal. Los valores que un operador ingresa
en los controladores, pasan al diagrama en bloque, vía estos terminales, cuando se ejecuta el VI. Los
datos de salida pasan del diagrama en bloque al panel frontal a través de las terminales del indicador.
Las terminales de control e indicación son automáticamente creadas o borradas cuando uno crea o borra
un control o un indicador del panel frontal. El diagrama en bloques anterior, muestra las terminales
pertenecientes a 2 indicadores y 2 controladores del panel frontal.
Los cables son los caminos de los datos entre terminales. Hay una analogía con las variables en
los lenguajes convencionales. El flujo de datos es sólo en una dirección, desde la terminal fuente a una o
más terminales de destino. Patrones de cables diferentes representan diferentes tipos de datos. En un
monitor color, cada tipo de datos aparece con un diferente color para enfatizar además de tener cada uno
una trama diferente.
Para unir dos terminales se elige la herramienta hot spot (punta de la bobina de cable) y se hace
clic con el mouse sobre un terminal y luego se posiciona sobre el objeto destino hasta hallar la terminal
deseada.
Terminales libres
Las terminales libres permiten identificar las terminales de nodos y funciones para el
cableado. Cuando se mueve la herramienta sobre los terminales de un ícono, aparece un terminal
libre. Los terminales libres son pequeños y muestran un texto amarillo que muestra el nombre del
terminal.
Página 26 de 87
Cátedra de Control de Procesos – Facultad de Ingeniería – U.N.E.R.
Curso Introducción a LabVIEW - 2007
Mostrando terminales
El principio que gobierna cómo LabVIEW ejecuta los programas, es llamado flujo de
datos. Un nodo se ejecuta sólo cuando un dato está disponible en todos los terminales de
entrada; el nodo envía datos por todas sus terminales de salida cuando la ejecución finaliza, y el
dato pasa inmediatamente desde la fuente al terminal destino. El flujo de datos se contrapone al
método de flujo de control de la ejecución de la programación convencional, en la cual las
instrucciones se ejecutan en la secuencia escrita.
Por ejemplo: Considere el siguiente diagrama en bloque de un VI que suma dos números
y luego resta 5 del resultado de la suma. En este caso, el diagrama en bloque ejecuta desde al
izquierda hasta la derecha, no porque los objetos están distribuidos en este orden, sino porque
una de las entradas a la función resta no es completada hasta que la función suma se haya
realizado, obteniéndose así un número que pasa a la función resta. Recordar que un nodo
(función) se ejecuta solamente cuando el dato es válido en todas las terminales de entrada y
entrega datos a la salida sólo cuando la ejecución termina.
Página 27 de 87
Cátedra de Control de Procesos – Facultad de Ingeniería – U.N.E.R.
Curso Introducción a LabVIEW - 2007
B- Técnicas de edición
Creación de objetos
No sólo se pueden crear objetos en el panel frontal desde la Paleta de control, sino que
también se pueden crear controles e indicadores desde el diagrama en bloques. Se puede usar los
nodos de LabVIEW para crear controles, indicadores y constantes en el diagrama en bloques
desplegando en el nodo terminal y eligiendo lo que queremos crear. El siguiente ejemplo muestra
cómo crear un control en el panel frontal para la función Suma.
NOTA Una vez que se crea un control o indicador en el panel frontal desde el diagrama
en bloques, sólo se puede borrar desde el panel frontal.
Selección de objetos
La herramienta de posición (flecha), selecciona los objetos en la ventana del panel y del
diagrama.
Para seleccionar un objeto, clickee el botón izquierdo del mouse mientras la herramienta
de posición se encuentra sobre el objeto. Cuando el objeto es seleccionado, queda remarcado con
línea punteada. Para seleccionar más de un objeto, clickee apretando shift en cada objeto
adicional que se desee seleccionar.
También se pueden seleccionar múltiples objetos clickeando un área sobre el panel,
dibujando un rectángulo que encierre los objetos a seleccionar.
Movimiento de objetos
Borrando objetos
Página 28 de 87
Cátedra de Control de Procesos – Facultad de Ingeniería – U.N.E.R.
Curso Introducción a LabVIEW - 2007
Hacer/ Deshacer
Si se comete un error mientras se está editando el VI, seleccione Undo/Redo del menú
Edit.
Duplicación de objetos
Para duplicar un objeto, mantenga apretada la tecla control del teclado, mientras clickea
y arrastra el objeto a duplicar.
También se puede usar copy-paste del menú Edit.
Etiquetado de objetos
Estirando cables
Se puede mover un solo objeto cableado o un grupo arrastrando el objeto seleccionado a una
nueva posición con la herramienta de posición.
Malas conexiones
Un cable en línea de puntos simboliza una mala conexión. Se puede tener una mala conexión
debido a varias razones, tales como: la conexión de dos terminales fuente o conectando una terminal
fuente con una terminal destino donde el tipo de dato que tiene que llegar no es el mismo que trae de la
terminal fuente (por ejemplo, conectando numérico con booleano). Se pueden borrar las malas
conexiones seleccionando el cable malo y delete, o Edit>>Remove Bad Wires.
Página 29 de 87
Cátedra de Control de Procesos – Facultad de Ingeniería – U.N.E.R.
Curso Introducción a LabVIEW - 2007
Cambiando fuente, estilo y tamaño de texto
Se puede cambiar la fuente, el estilo, el tamaño, la alineación de cualquier texto mostrado en una
etiqueta de un control o indicador, usando Font de la barra de herramientas. LabVIEW tiene
flexibilidad para modificar el texto, sobre todo en los ejes de los gráficos.
Redimensionar objetos
Usando la herramienta de posición y colocándose sobre las esquinas del objeto a redimensionar
el cursor cambia, tomando la forma de un ángulo recto. Manteniendo el botón derecho del mouse
apretado y moviendo el cursor, se logra cambiar el tamaño del objeto.
Estas operaciones se realizan utilizando Copy, Cut, Paste del menú Edit.
Usando colores
Página 30 de 87
Cátedra de Control de Procesos – Facultad de Ingeniería – U.N.E.R.
Curso Introducción a LabVIEW - 2007
C-Técnicas de depuración
Encontrando errores
Cuando el VI no es ejecutable, aparece una flecha rota en el botón Run. Para ver la lista
de errores apretar este botón. Clickeando en el error y seleccionando find, se resalta la terminal
que reporta el error.
Resaltador de ejecución
Pasos a través de un VI
Para propósitos de depuración se puede ejecutar el diagrama en bloques nodo a nodo, esto
se conoce como single stepping. Hay que clickear el botón Step into o Step over para entrar o
saltear el VI. Si se entra dentro del VI, la ejecución se hace a través de él.
Clickee el botón Step out para finalizar la ejecución de nodos del diagrama en bloques
y/o para completar un single stepping.
Punto de prueba
Se pueden utilizar puntos de pruebas para ver datos a través del flujo de los cables del
diagrama en bloques. Para colocar un punto de prueba en el cable, seleccione la herramienta
Probe de la paleta de herramientas, y haga clic sobre el lugar deseado.
Punto de ruptura
Si desea parar la ejecución en un punto preciso del flujo del VI, utilice la herramienta
breakpoint y colóquela en el lugar deseado.
Página 31 de 87
Cátedra de Control de Procesos – Facultad de Ingeniería – U.N.E.R.
Curso Introducción a LabVIEW - 2007
Resumen, trucos y consejos
Usted puede armar el panel frontal con controles e indicadores, que son las entradas interactivas
y salidas del VI, respectivamente.
Los terminales de control poseen un borde más grueso que los indicadores. Para cambiar un
control en un indicador o viceversa, se debe hacer click derecho en el objeto y seleccionar
Change indicator, o Change control.
Usar el botón de búsqueda en la paleta de controles y en la de funciones para controles, Vis, y
funciones.
El botón de Correr (“Run”) aparece “roto” en la barra de herramientas para indicar que el VI
posee algún error. Clickee en este botón roto para que aparezca la lista de errores.
Para incrementar o decrementar un control digital rápidamente, use el instrumento de etiqueta o
de operación para colocar el cursor en el control y presione Shift y la flecha arriba o abajo.
Para mostrar el diagrama de bloques de un subVI usado en un VI, presione la tecla CTRL y haga
doble click con la herramienta de operación o posicionamiento.
Página 32 de 87
Cátedra de Control de Procesos – Facultad de Ingeniería – U.N.E.R.
Curso Introducción a LabVIEW - 2007
Introducción
Se tratará:
Qué es un SubVI.
Cómo se crea un icono
y un conector.
Cómo se usa un VI
como un subVI.
Cómo se usa la opción
del menú Create Sub VI.
Página 33 de 87
Cátedra de Control de Procesos – Facultad de Ingeniería – U.N.E.R.
Curso Introducción a LabVIEW - 2007
A- Ideas Básicas
La clave para crear aplicaciones en LabVIEW, es entender su naturaleza jerárquica. Esto es, luego
de crear un VI, se puede usar este VI en un diagrama en bloques de más alto nivel, y de esta manera sería
un sub VI.
Un sub VI necesita un ícono para que éste se pueda llamar desde un VI. Además del ícono,
también se debe tener sus conectores con sus terminales para el correcto flujo de datos dentro del sub VI.
Ejemplo:
En este ejemplo se considera un VI que calcula SLOPE entre dos coordenadas. El diagrama en
bloques y el panel frontal se encuentran debajo. Para usar este VI como sub VI, se deben crear el ícono y
sus conectores.
Ícono
Todo VI tiene un ícono por defecto que aparece en la esquina superior derecha de la ventana del
Panel Frontal y del Diagrama en Bloques. Para activar el Editor de ícono, se debe hacer clic derecho en
ese ícono y elegir Edit Icon, como se encuentra en la siguiente figura, o directamente haciendo doble clic
en el mismo.
Página 34 de 87
Cátedra de Control de Procesos – Facultad de Ingeniería – U.N.E.R.
Curso Introducción a LabVIEW - 2007
Posteriormente aparece una ventana como la que se muestra a continuación. Se utilizan luego las
herramientas de la izquierda para crear el diseño del ícono que se quiere, y se trabaja en el área de edició n
como si se editara un dibujo con el Paint de Windows.
Line dibuja líneas, rectas y utilizando la tecla <shift> se puede elegir que la línea sea
horizontal, vertical o diagonal.
Select selecciona un área del ícono para mover, borrar o para realizarle cualquier cambio.
Conector
Página 36 de 87
Cátedra de Control de Procesos – Facultad de Ingeniería – U.N.E.R.
Curso Introducción a LabVIEW - 2007
Cada rectángulo del conector representa el área del terminal, y se puede
utilizar tanto para entrar como para sacar datos del VI.
Para seleccionar un patrón de terminales debe hacer click en Patterns del menú desplegable.
Aparece seleccionado el patrón que se tiene elegido, y para cambiarlo se hace click en un nuevo
patrón. Si se cambia un nuevo patrón se debe asignar nuevamente controles e indicadores a cada terminal.
El número máximo de terminales aprovechables en un VI es 28.
Si se quiere hacer un cambio espacial de la distribución del patrón, se deben cambiar cualquiera
de estas opciones. Flip vertical, Flip horizontal, Rotate 90° del menú desplegable.
Para asignar controles e indicadores a las terminales hay que usar la herramienta de cableado. Siga
los siguientes pasos para asociar un conector con un control o indicador del panel frontal:
Página 37 de 87
Cátedra de Control de Procesos – Facultad de Ingeniería – U.N.E.R.
Curso Introducción a LabVIEW - 2007
2- Clickee en el indicador o control del panel frontal para asignar la terminal seleccionada.
Aparece seleccionado el indicador.
Haciendo click en un área libre del panel frontal desaparece la selección y la terminal
seleccionada toma el color de los datos con que trabaja el indicador o control.
Página 38 de 87
Cátedra de Control de Procesos – Facultad de Ingeniería – U.N.E.R.
Curso Introducción a LabVIEW - 2007
C- Usando un VI como sub VI
Se puede utilizar este VI creado como un sub VI en el diagrama en bloque de otro VI. En la paleta
de Functions se puede seleccionar un sub VI para poder utilizarlo como VI clickeando en Select VI. De
esta manera aparece un cuadro de diálogo en donde se puede elegir un VI que esté grabado en la
computadora.
Seleccionar un VI
Un sub VI es análogo a una subrutina. El modo del sub VI (ícono/conector) es análogo al llamado
a una subrutina.
Para abrir un VI usado como un sub VI se tiene que hacer desde el diagrama en bloques del que lo
contiene. Doble click sobre cada ícono y aparece la ventana del panel frontal. Se puede abrir la ventana
del diagrama en bloques seleccionando Show Diagram del menú Windows.
Cuando la ventana Help está habilitada (Menú Help>>Show Help) y se mueve el mouse sobre
algún sub VI, la ventana Help muestra el ícono del sub VI con su cableado en cada terminal.
Esto es útil para clarificar los requerimientos de las entradas/salidas del subVI. Para clasificar
algún terminal, se realiza un click sobre el icono y se selecciona Show Conector. Luego, se selecciona
This Conector is>> Required, Recommended o Optinional.
Para simplificar el diagrama en bloques de un VI, se puede convertir parte de ese diagrama en
bloques en un subVI. Se selecciona lo que se quiere convertir y se elige la opción Create SubVI del
menú Edit. LabVIEW convierte esa selección en un subVI y reemplaza ese subdiagrama con un nuevo
subVI. LabVIEW automáticamente crea los controles e indicadores para este nuevo subVI y los
conexiona.
NOTA No se puede convertir una sección para crear un subVI con más de 28
entradas y salidas, porque 28 es el máximo de entradas y salidas de un panel
conector.
Página 40 de 87
Cátedra de Control de Procesos – Facultad de Ingeniería – U.N.E.R.
Curso Introducción a LabVIEW - 2007
Página 41 de 87
Cátedra de Control de Procesos – Facultad de Ingeniería – U.N.E.R.
Curso Introducción a LabVIEW - 2007
Introducción
Se tratará:
Cómo se usa un bucle
while.
Cómo mostrar datos en
un gráfico.
Qué es un shift register,
y como se usa.
Cómo se utiliza un
bucle for.
Página 42 de 87
Cátedra de Control de Procesos – Facultad de Ingeniería – U.N.E.R.
Curso Introducción a LabVIEW - 2007
A- Bucle WHILE
El bucle while repite parte del código de diagrama en bloques durante un tiempo. Para
seleccionarlo en la paleta Functions >> Structures
Se debe utilizar el cursor para seleccionar un área de código que se desea repetir. Cuando se deje
de apretar el botón del mouse, el bucle while encerrará el código seleccionado.
Terminal Condición El VI repite el código que está dentro del bucle hasta que la variable
booleana conectada al terminal condición (terminal de entrada) sea falsa.
El VI chequea el terminal condición en cada iteración, sin embargo, el bucle while siempre se
ejecuta una vez (similar al do while del c)
Terminal iteración Es un número que contiene el número de veces que se ejecutó el bucle
comenzando desde cero.
En el siguiente ejemplo, el bucle se ejecuta mientras que el valor de salida del subVI sea más
bajo que 10 o que la variable booleana sea falsa.
Página 43 de 87
Cátedra de Control de Procesos – Facultad de Ingeniería – U.N.E.R.
Curso Introducción a LabVIEW - 2007
B- Cuadros de Forma de onda
Waveforms charts es un indicador numérico espacial que muestra uno o más dibujos.Se
encuentra en la subpaleta Graph de la paleta de Control.
Waveforms charts puede tener un único trazo o múltiples trazos. Un ejemplo se muestra en la
figura siguiente.
Se pueden seleccionar cualquiera de estas opciones haciendo click en el cuadro con el boton
derecho de mouse y eligiendo Data Operation >> Update Mode.
En el modo strip chart el display es similar al dibujo en el panel. Los modos scope y sweep chart
la visualización es similar a la del osciloscopio.
Página 44 de 87
Cátedra de Control de Procesos – Facultad de Ingeniería – U.N.E.R.
Curso Introducción a LabVIEW - 2007
Cableado simple
Cableado múltiple
Waveforms charts puede representar más de una gráfica. Se debe utilizar la función bundle se
la subpaleta Clusters de la paleta de funciones. Como en la figura siguiente donde un solo
Waveform chart grafica la señal de tres temperaturas simultáneamente.
C- Shift Register
Se pueden utilizar estos registros (aprovechables en bucles while y for) para transferir valores de
una iteración a la siguiente. Se pueden crear estos registros haciendo click en el borde del bucle y
seleccionando Add Shift Register del menú desplegable.
Los registros shift contienen en par de terminales que se ubican en los bordes verticales del bucle.
En terminal derecho, entra el dato luego de completada la iteración; el cual nuevamente ingresa
por el terminal izquierdo a la nueva iteración.
Los registros shift pueden recibir cualquier tipo de datos (numérico, booleano, cadena de caracteres,
arreglos). Automáticamente adoptan los tipos de datos al tipo de dato del primer objeto conectado al shift
register.
Página 45 de 87
Cátedra de Control de Procesos – Facultad de Ingeniería – U.N.E.R.
Curso Introducción a LabVIEW - 2007
Nuevo
Valor Valor valor
inicial inicial
Los registros shift se pueden configurar para que recuerden valores de iteraciones previas. Esta
característica es muy importante cuando se promedian datos. Para crear terminales adicionales para
acceder a valores de iteraciones previas, se coloca en la terminal izquierda y se elige Add Element del
menú desplegable. Por ejemplo, si se adicionan dos elementos más en el terminal izquierdo, se puede
acceder a valores de tres iteraciones atrás.
Para inicializar un shift register con un valor especifico, se cablea el valor inicial a la terminal
izquierda del shift register. Si no se coloca un valor inicial se toma por defecto un valor; por ejemplo si el
tipo de datos es booleano, el valor inicial será falso. Similarmente, si el tipo de datos es numérico, el
valor inicial será cero.
Página 46 de 87
Cátedra de Control de Procesos – Facultad de Ingeniería – U.N.E.R.
Curso Introducción a LabVIEW - 2007
NOTA Si se corre un VI que contiene un shift register que no esta inicializado, los
valores iniciales para corridas subsecuentes, serán los que “quedaron” en la
terminal izquierda de las corridas previas.
Corrida 1
Corrida 1 7 7
5
Valor
Valor inicial 5
inicial 0
Corrida 2
Corrida 2
7 5 7
Valor
Valor
inicial 7
inicial 5
Página 47 de 87
Cátedra de Control de Procesos – Facultad de Ingeniería – U.N.E.R.
Curso Introducción a LabVIEW - 2007
D- Bucles FOR
Los bucles for repiten partes de código de un diagrama en bloques un número predeterminado de
veces. Se puede seleccionar el bucle for desde la subpaleta Structures de la paleta de funciones, y se
encierra la parte de código que se quiere repetir. El bucle for tiene dos terminales:
La terminal de conteo, especifica el número de veces que se tiene que ejecutar el bucle. La
terminal de iteración contiene el número de veces que ha sido ejecutado el bucle.
La diferencia entre el bucle for y el bucle while es que el primero se ejecuta un número
predeterminado de veces. El segundo para de repetir el código encerrado en él si el valor de la terminal
condición es falso. El bucle for es equivalente al siguiente pseudocódigo:
El siguiente ejemplo muestra un bucle for que genera 100 números aleatorios y muestra los
puntos en un waveform chart.
Página 48 de 87
Cátedra de Control de Procesos – Facultad de Ingeniería – U.N.E.R.
Curso Introducción a LabVIEW - 2007
Conversión numérica
Hasta ahora, todos los controles numéricos e indicadores usados son números de punto flotante de
doble precisión. LabVIEW, sin embargo, puede representar numéricos como enteros (byte, word o long)
o números de punto flotante (simples, dobles o precisión extendida). Si se quiere cablear dos terminales
de distintos tipos de datos, LabVIEW convertirá una de las terminales a la misma representación que la
otra.
Por ejemplo, el terminal del contador del bucle for. La representación del terminal es un
entero largo. Si hubiera un número de punto flotante de doble precisión cableado a la
terminal, LabVIEW convierte el número en un entero largo.
Para cambiar la representación de un objeto del panel numérico, se debe hacer click sobre el panel
frontal o en el diagrama en bloques y seleccionar Representation. La paleta que aparece es como la
siguiente.
Página 49 de 87
Cátedra de Control de Procesos – Facultad de Ingeniería – U.N.E.R.
Curso Introducción a LabVIEW - 2007
Página 50 de 87
Cátedra de Control de Procesos – Facultad de Ingeniería – U.N.E.R.
Curso Introducción a LabVIEW - 2007
Resumen, trucos y consejos
Los bucles, while y for son herramientas muy útiles que deben conocerse ya que son de uso muy
común cuando se realizan Vis.
Los Shift Register tiene cualidades interesantes que nos permitirán promediar señales entre otras
cosas.
Es importante inicializar los Shift Register de modo que podamos controlar el comienzo del VI y
que no aparezcan resultados inesperados.
Página 51 de 87
Cátedra de Control de Procesos – Facultad de Ingeniería – U.N.E.R.
Curso Introducción a LabVIEW - 2007
Introducción
Se tratará:
Array.
Creando arreglos con
bucles.
Funciones de un
arreglo.
Polimorfismo.
Gráficos.
Cluster.
Página 52 de 87
Cátedra de Control de Procesos – Facultad de Ingeniería – U.N.E.R.
Curso Introducción a LabVIEW - 2007
A- Arreglos
Un arreglo es una colección de datos, todos del mismo tipo, y tiene más de una dimensión. Un
arreglo en LabVIEW puede ser de cualquier tipo, sin embargo, no puede haber un arreglo de arreglo, de
cuadros ni de gráficos. Se puede acceder a cada elemento a través de un índice. El índice esta en un rango
desde 0 a N-1, donde N es el número de elementos en el arreglo. En la siguiente figura, se muestra un
arreglo de una dimensión. Se debe tener en cuenta que el primer elemento tiene índice 0, el segundo 1, y
así sucesivamente.
2. Para crear un arreglo se debe introducir un dato dentro del array shell.
Nota: recuerde que debe asignar un dato al array shell vacío antes de usar el array en el diagrama de
bloque. Si no le asigna un dato, el terminal del array aparece negro y vacío.
Página 53 de 87
Cátedra de Control de Procesos – Facultad de Ingeniería – U.N.E.R.
Curso Introducción a LabVIEW - 2007
Un arreglo de dos dimensiones requiere de dos índices -uno para los renglones y otro para las
columnas; ambos tienen el cero como base-, para establecer un elemento.
Para agregar dimensiones al arreglo, hacer clic en Index Display y cambiar Add Dimentions de
ese menú.
Página 54 de 87
Cátedra de Control de Procesos – Facultad de Ingeniería – U.N.E.R.
Curso Introducción a LabVIEW - 2007
2. Para crear un arreglo, se debe introducir un objeto dato dentro del Array Shell. Diferentes datos
objetos incluyen números, boléanos o constantes de cadenas de caracteres, de la paleta de funciones.
Los bucles For y los bucles While pueden indexar y acumular arreglos en sus límites
automáticamente. Esta capacidad se llama autoindexado. En la ilustración se muestra como en cada
iteración se crea un elemento en el arreglo.
Luego de que el bucle se completa, el array pasa al indicador.
Si uno no quiere crear un arreglo, entonces hay que deshabilitar el autoindexado cambiando a
Disable Indexing del menú. En la ilustración no está habilitado el autoindexado y sólo el último valor
retomado desde la función Random Number (0-1) pasa fuera del bucle.
Página 55 de 87
Cátedra de Control de Procesos – Facultad de Ingeniería – U.N.E.R.
Curso Introducción a LabVIEW - 2007
Creación de arreglos en dos dimensiones
Se pueden utilizar 2 bucles For (uno dentro del otro) para crear un arreglo de 2 dimensiones. El
bucle For de afuera crea los elementos de los renglones, y el de adentro crea los elementos de las
columnas. El siguiente ejemplo mostrado en la figura muestra 2 bucles For autoindexados que crean un
arreglo de dos dimensiones con números aleatorios
C- Funciones de un arreglo
LabVIEW tiene varias funciones para manipular arreglos en la subpaleta Array de la paleta de
funciones. Las más comunes son tratadas seguidamente:
Página 56 de 87
Cátedra de Control de Procesos – Facultad de Ingeniería – U.N.E.R.
Curso Introducción a LabVIEW - 2007
Initialize array crea un array de una dimensión dada, con el valor del elemento dado.
El siguiente ejemplo muestra un array de una dimensión y tres elementos inicializados con el
valor 4.
Puede que al ingresar dos arreglos, la salida sea un arreglo de dos dimensiones o un arreglo de la
cantidad de elementos que sea igual a la suma de los dos.
Array subset retorna una porción de arreglo a partir de un índice determinado que contiene
una longitud determinada.
Página 57 de 87
Cátedra de Control de Procesos – Facultad de Ingeniería – U.N.E.R.
Curso Introducción a LabVIEW - 2007
D- Polimorfismo
Las funciones aritméticas de LabVIEW (suma, resta, multiplicación, división y otras más) son
polimórficas. Esto significa que sus entradas pueden ser distintas estructuras de datos –escalares o
arreglos-. El siguiente ejemplo muestra distintas combinaciones de entradas para la función suma.
Página 58 de 87
Cátedra de Control de Procesos – Facultad de Ingeniería – U.N.E.R.
Curso Introducción a LabVIEW - 2007
E- Gráficos
gráficos xy, y
gráficos de forma de onda.
Página 59 de 87
Cátedra de Control de Procesos – Facultad de Ingeniería – U.N.E.R.
Curso Introducción a LabVIEW - 2007
Se puede obtener un indicador gráfico de forma de onda desde la subpaleta Graph de la paleta
control. Los gráficos Waveforms son ideales para el dibujo de arreglos de datos en los cuales los puntos
son igualmente distribuidos.
Para un gráfico de un solo dibujo, un arreglo de y valores puede pasar directamente al gráfico de
forma de onda. Este método asume que el valor inicial de x = 0 y que x = 1.
Página 60 de 87
Cátedra de Control de Procesos – Facultad de Ingeniería – U.N.E.R.
Curso Introducción a LabVIEW - 2007
Se pueden pasar datos a un gráfico de forma de onda de múltiples dibujos, los ejemplos muestran
en detalle como se conectarían, en el segundo caso utilizaríamos cluster para las inicializaciones del eje x
y su x.
La función build array (de la subpaleta Array) crea un arreglo de dos dimensiones desde entradas que
sean arreglos de 1 dimensión o cluster-arrays.
Página 61 de 87
Cátedra de Control de Procesos – Facultad de Ingeniería – U.N.E.R.
Curso Introducción a LabVIEW - 2007
Gráficos XY
F- Clúster
Seleccionar
Unblunde de la subpaleta Cluster en el diagrama de bloques. Puedes pensar en unblunding de Cluster
como el desempaque de un cable de teléfono y tener acceso a los alambres individuales dentro del cable.
Para poner un cluster shell vacío en el panel delantero, seleccionar Controls»Array &
Cluster»Cluster.
Página 63 de 87
Cátedra de Control de Procesos – Facultad de Ingeniería – U.N.E.R.
Curso Introducción a LabVIEW - 2007
Página 64 de 87
Cátedra de Control de Procesos – Facultad de Ingeniería – U.N.E.R.
Curso Introducción a LabVIEW - 2007
Resumen, trucos y consejos
Un array es una colección de elementos del mismo tipo. Los elementos pueden ser de cualquier
tipo, así que puedes crear arrays numéricos, booleanos, string, o de cluster.
Recordar que el índice que representa el primer elemento de un array tiene valor cero.
Si un array no tiene asignado ningún dato, el terminal del array aparecerá negro con un soporte
vacío.
Crear un array en el panel frontal es un proceso de dos etapas. Primero, poner un array shell,
disponible en la paleta Controls»Array & Cluster en el panel frontal. Entonces agregar el
control o el indicador deseado.
Hay muchas funciones para manipular arrays, tales como Build Array e Index Array, en la
paleta de array.
En esta lección, se utilizaron funciones de array solo para trabajar con arreglos de una
dimension; sin embargo, las mismas funciones trabajan de manera semejante con órdenes
multidimensionales.
Los bucles For y While pueden procesar y acumular arrays en sus fronteras. Esto es posible
habilitando el autoindexado en los túneles de los lazos.
Por defecto, LabVIEW habilita el autoindexado en los bucles For y lo en los bucles while.
El polimorfismo es la capacidad de una función de ajustar las diferentes estructuras de datos a los
datos de entrada.
Los gráficos de la forma de onda (Waveform graphs) y los gráficos XY (XY graphs) muestran
los datos de los arrays.
Los gráficos tienen diferentes opciones que se pueden modificar según requisitos particulares.
Para esto hacer click derecho en el gráfico o en sus componentes.
Puedes mostrar más de un diagrama en un gráfico usando la función Build Array, disponible en
la paleta Functions»Array, y usando Bundle para charts y los gráficos XY. El gráfico se
convierte automáticamente en un gráfico múltiple cuando unes el array de salidas al terminal.
Un cluster es una estructura que agrupa datos, incluso de diversos tipos. Los objetos en un
cluster son todos controles o todos indicadores.
Si un VI tiene en el panel frontal muchos controles e indicadores que necesites asociar a los
terminales, se puede agruparlos en uno o más cluster y utilizar así pocos terminales.
Crear un cluster en el panel frontal o en el diagrama de bloques es un proceso de dos etapas.
Primero, se crea un cluster shell, y luego se colocan los componentes dentro del mismo.
Las funciones Bundle y Bundle by Name se utilizan para ensamblar cluster. Las funciones
Unbundle and Unbundle by Name se utilizan para desamblar cluster.
Se pueden utilizar las capacidades polimórficas de las funciones de LabVIEW con arrays y
cluster.
Página 65 de 87
Cátedra de Control de Procesos – Facultad de Ingeniería – U.N.E.R.
Curso Introducción a LabVIEW - 2007
Introducción
Se tratará:
Cómo usar la
estructura CASE.
Cómo usar la
estructura Sequense.
Cómo usar la
estructura Fórmula
Nodo.
Página 66 de 87
Cátedra de Control de Procesos – Facultad de Ingeniería – U.N.E.R.
Curso Introducción a LabVIEW - 2007
A- Estructura Case
Usted puede colocar una estructura Case en el diagrama en bloques seleccionándolo en la paleta
de funciones de la subpaleta Structures.
Usted puede incluir nodos en la estructura CASE o arrastrar nodos dentro de la estructura.
Página 67 de 87
Cátedra de Control de Procesos – Facultad de Ingeniería – U.N.E.R.
Curso Introducción a LabVIEW - 2007
Usted puede especificar un Case por defecto para la estructura Case. Usted debe especificar un
Case por defecto para manejar valores fuera de rango o para enumerar explícitamente cada valor posible
de la entrada. Por ejemplo, si usted especificó Case para 1, 2, y 3 pero usted tiene una entrada de 4, la
estructura Case ejecuta el Case por defecto.
Presione el botón derecho sobre el borde de la estructura Case para agregar, duplicar, quitar, o
para reubicar y para seleccionar un Case por defecto.
Ejemplos
En los ejemplos siguientes, los caracteres numéricos pasan a través de los túneles a la estructura
Case y se agregan o se restan, dependiendo del valor unido con cables al terminal selector.
Página 68 de 87
Cátedra de Control de Procesos – Facultad de Ingeniería – U.N.E.R.
Curso Introducción a LabVIEW - 2007
Si el control booleano unido por cables al terminal selector es verdadero, el VI suma los
números. Si no, el VI resta los números.
El siguiente ejemplo es una estructura CASE de número entero. En el ejemplo los números pasan
a través del túnel de la estructura case y son sumados o restados dependiendo del valor numérico que
tiene el terminal selector.
El número entero es un control situado en la paleta de control Ring&Enum que asocia caracteres
numéricos a los ítems de texto. Si el control text ring unido con cables al terminal selector es 0 (suma),
el VI suma los números. Si el valor es 1 (resta), el VI resta los números.
Página 69 de 87
Cátedra de Control de Procesos – Facultad de Ingeniería – U.N.E.R.
Curso Introducción a LabVIEW - 2007
Los números pasan a través de los túneles de la estructura Case y luego son sumados o restados
según la cadena de caracteres que este unida con cables a el terminal selector.
Si la cadena es suma (“add”), el VI suma los caracteres numéricos; si la cadena es resta
(“subtract”), el VI resta los caracteres numéricos.
Cuando coloca una estructura CASE en un diagrama de bloques, puede tipear directamente en el
selector de valores en la etiqueta selectora de la estructura CASE. Puede editar los valores usando la
herramienta de rótulos.
Puede especificar un valor simple, o listas, y rangos de valores que seleccionen la estructura
Case. Para indicar una lista, separe los valores por comas. Para especificar un rango, por ejemplo 10..20
significando todos los números desde el 10 hasta el 20 inclusive. Puede usar rangos menores o iguales a
un numero, por ej ..0; o mayores e iguales a un número como 100.
Los rangos de las listas, pueden ser combinados ..5, 7..10, 12, 13, 14 cuando tipea en un selector
que contiene rangos superpuestos, la estructura Case, muestra el selector de una manera mas compacta.
El ejemplo anterior seria mostrado como ..5, 7..10, 12..14.
B- Estructura Secuencia
Una estructura Sequence, contiene unos o más sub diagramas, o cuadros, que se ejecutan en
orden secuencial. Una estructura Sequence ejecuta el cuadro 0, después el cuadro 1, hasta que el último
cuadro se ejecute. La estructura Sequence no termina la ejecución ni devuelve ningún dato hasta que el
último cuadro se ejecute.
Secuencia Local
Para pasar datos a partir de un cuadro a cualquier cuadro subsecuente, utilice un terminal de
secuencia, mostrado en la izquierda. Una flecha apuntando hacia afuera aparece en el terminal
de secuencia local del cuadro que contiene la fuente de datos. El terminal en marcos
subsecuentes contiene una flecha hacia adentro, indicando que el terminal es una fuente de datos para
ese marco. Usted no puede utilizar el terminal de secuencia local en los marcos que preceden el primer
cuadro donde usted unio con cables a la secuencia local. Para crear una secuencia local Haga click
derecho en la frontera de la estructura y seleccione Add Sequence Local del menú.
El ejemplo siguiente muestra una estructura Sequence de tres cuadros. Una secuencia local en el
cuadro 1 pasa el valor que el termómetro VI devuelve al cuadro 2, como lo indica la flecha que señala
en el cuadro 2. Este valor no está disponible en el marco 0, según lo indicado por el cuadrado
sombreado.
Para realizar operaciones matemáticas dentro del entorno LabVIEW se utiliza el nodo fórmula y
el nodo expresión.
Nodos expresión
Utilice nodos expresión para calcular expresiones, o ecuaciones, que contengan una sola variable.
Los nodos expresión son útiles cuando una ecuación tiene solamente una variable pero son de otra
manera complicados. Los nodos expresión utilizan el valor que usted ingresa al terminal entrada como el
valor de la variable. El terminal de salida devuelve el valor calculado.
Nodos fórmula
Página 71 de 87
Cátedra de Control de Procesos – Facultad de Ingeniería – U.N.E.R.
Curso Introducción a LabVIEW - 2007
El nodo fórmula es un nodo basado en texto que usted puede utilizar para realizar operaciones
matemáticas en el diagrama de bloque. Los nodos fórmula son útiles para las ecuaciones que tienen
muchas variables y para usar código basado en texto. Cree los terminales de entrada y salida del nodo
fórmula haciendo clic con el botón derecho en el borde del nodo y seleccione Add Input or Add
Output (agregar entrada o salida) del menú rápido. Escriba la ecuación en la estructura. Cada
declaración de la ecuación debe terminar con un punto y coma (;).
El nodo fórmula puede realizar diversas operaciones. Refiera a la ayuda de LabVIEW para más
información sobre funciones, operaciones, y sintaxis para el nodo fórmula.
Para acceder a esta función, desde el diagrama de bloques, seleccione la subpaleta Structures
dentro de la paleta Functions.
Puedes poner la misma ecuación en ejecución usando un nodo fórmula, como se muestra abajo.
Página 72 de 87
Cátedra de Control de Procesos – Facultad de Ingeniería – U.N.E.R.
Curso Introducción a LabVIEW - 2007
if (x >= 0) then
y = sqrt(x)
else
y = -99
end if
Se puede poner el fragmento del código en ejecución usando un nodo fórmula, como se muestra
abajo.
Página 73 de 87
Cátedra de Control de Procesos – Facultad de Ingeniería – U.N.E.R.
Curso Introducción a LabVIEW - 2007
Resumen, trucos y consejos
Página 74 de 87
Cátedra de Control de Procesos – Facultad de Ingeniería – U.N.E.R.
Curso Introducción a LabVIEW - 2007
Introducción
Se tratará:
Cómo crear controles
de cadenas e
indicadores.
Cómo usar varias
funciones de cadenas.
Cómo realizar archivos
de operaciones de
entrada y salida.
Página 75 de 87
Cátedra de Control de Procesos – Facultad de Ingeniería – U.N.E.R.
Curso Introducción a LabVIEW - 2007
A- Strings
Una cadena es una secuencia de caracteres ASCII desplegables o no desplegables. Las cadenas
proporcionan un formato de plataforma independiente para la información y los datos. Algunas de las
aplicaciones más comunes de cadenas incluyen lo siguiente:
Crear mensajes de texto simple.
Pasar datos numéricos como cadenas de caracteres para instrumentos y después convertir las cadenas
a caracteres numéricos.
Almacenar datos numéricos en el disco. Para almacenar caracteres numéricos en un archivo ASCII,
antes de escribir los caracteres numéricos a un archivo usted debe convertir los caracteres numéricos
a cadenas.
Instruir al usuario con cuadros de diálogo.
En el panel frontal, las cadenas aparecen como tablas, cajas de entrada de texto, y etiquetas.
Haga clic con el botón derecho del mouse en el control o indicador de cadena en el panel frontal
para seleccionar los tipos de visualización mostrados en la tabla siguiente. La tabla también muestra un
ejemplo de mensaje en cada tipo de exhibición. Las cuatro opciones son display normal, con „\‟ en lugar
de espacios, codificada y en hexadecimal.
Tablas
Utilice las tablas de control situada en la paleta de Controles List&Table para crear una tabla en
el panel frontal. Cada celda en una tabla es una cadena, y cada celda reside en una columna y en una fila.
Página 76 de 87
Cátedra de Control de Procesos – Facultad de Ingeniería – U.N.E.R.
Curso Introducción a LabVIEW - 2007
Por lo tanto, una tabla es una exhibición de un arreglo en 2D de cadenas. La ilustración siguiente
muestra una tabla y todas sus piezas.
B- Funciones String
Utilice las funciones de cadenas situadas en la paleta de Funciones String para corregir y
manipular cadenas en el diagrama en bloque. Las funciones de cadenas incluyen lo siguiente:
Longitud de cadena: devuelve el número de caracteres en una cadena, incluyendo caracteres de
espacio.
Página 77 de 87
Cátedra de Control de Procesos – Facultad de Ingeniería – U.N.E.R.
Curso Introducción a LabVIEW - 2007
Concatenar cadenas: Concatene la entrada de cadena y un arreglo de 1D de cadenas en una sola
cadena de salida. Cambie el tamaño de la función para aumentar el número de entradas. Por
ejemplo, para concatenar los string en una sola cadena:
Subconjunto Cadena: esta función devuelve parte de una cadena, con la opción offset se elige la
posición y con la opción lenght la longitud. Por ejemplo, si usted utiliza la cadena “VOLTS
DC:+1.22863E+1como entrada, la función String Subset para un offset de 6 y una longitud de 2
devuelve: DC.
Patrón equivalente: si se busca una expresión en una cadena, al encontrar el patrón, se divide la
cadena en tres subcadenas. Si no se encuentra ninguna equivalencia, la subcadena equivalente
estará vacía y el último valor es -1.
Por ejemplo, para la expresión anterior y el patrón ”:” La función Match pattern
devuelve la subcadena anterior “VOLTS DC”, la subcadena equivalente de ”:” y la subcadena
“+1.22863E+1”, y un offset de 9.
Página 78 de 87
Cátedra de Control de Procesos – Facultad de Ingeniería – U.N.E.R.
Curso Introducción a LabVIEW - 2007
Cadenas y Números
La función Format Into String convierte un carácter numérico a una cadena, y la función Scan
From String convierte una secuencia a un carácter numérico. Ambas funciones tienen un grupo de
errores de entrada y errores de salida.
Format Into String convierte argumentos de cualquier formato, tales como numérico, a una
cadena. Cambie el tamaño la función para aumentar el número de argumentos.
Por ejemplo, la función Format Into String para un formato de cadena del %.4f, una cadena de
entrada: “Voltaje is” con un espacio siguiente, y el argumento de 1.28 devuelve la siguiente cadena
“Voltage is 1.2800”.
Scan From String convierte una secuencia que contiene caracteres numéricos válidos, tales
como 0...9, +, -, e, E, y período, a un carácter numérico. La función comienza a explorar la cadena de
entrada en la localización inicial de búsqueda. La función puede explorar la cadena de entrada en varios
tipos de datos, tales como numéricos o booleanos. La función en expandidle con múltiples salidas.
Por ejemplo, utilice un formato de cadena de %f, de una localización inicial de búsqueda de 8, y
la siguiente cadena como cadena de la entrada: “VOLTIOS de DC+1.28E+2”. La función Scan From
String devuelve 128,00.
Operaciones de pasaje de datos de archivos de I/O (entrada-salida) a y desde archivos. Utilice las
funciones y los archivos VIs de I/O situados en la paleta de funciones Functions»File I/O para manejar
todos los aspectos del archivo de I/O, incluyendo lo siguiente:
Use el nivel alto de archivo I/O VIs situado en la fila superior de la paleta de funciones
Functions»File I/O para realizar operaciones comunes de I/O. Refiera a la sección E, High-Level File
I/O VIs, para más información sobre alto nivel de archivo I/O VIs.
Usted puede ahorrar tiempo y esfuerzo de programación usando el VIs de alto nivel para escribir
a y leer en archivos. El VIs de alto nivel se realiza para operaciones de lectura o escritura además de
apertura y cierre de archivos. Si ocurre un error, el VI de alto nivel muestra un cuadro de diálogo que
describe el error.
Use el bajo nivel de archivo I/O VIs y las funciones, situadas en la fila media de la paleta de
funciones Functions»File I/O y las funciones avanzadas de archivos I/O situadas en la paleta de
funciones Functions»File I/O»Advanced File Functions para controlar cada operación del archivo I/O
individualmente. Utilice las funciones principales de bajo nivel para crear o abrir un archivo, escribir
datos a o leer datos de archivos, y cierre el archivo. El VIs y las funciones de bajo nivel pueden manejar
la mayoría de las necesidades del archivo I/O.
1. Cree o abra un archivo. Indique donde reside un archivo existente o donde desea crear un
archivo nuevo especificando una ruta o respondiendo a un cuadro de diálogo en LabVIEW para
direccionar la localización del archivo. Después de que el archivo este abierto, un refnum representa el
archivo. Refiera a la sección “SALVANDO DATOS DE UN ARCHIVO NUEVO O EXISTENTE” para
más información sobre refnums.
2. Lea en o escriba al archivo.
Página 81 de 87
Cátedra de Control de Procesos – Facultad de Ingeniería – U.N.E.R.
Curso Introducción a LabVIEW - 2007
3. Cierre el archivo.
Utilice el VIs y las funciones siguientes para realizar una operación básica del archivo I/O:
Read File: Lee los datos desde el archivo especificado por refnum y devuelve esto en
datos, donde count es la cantidad de datos a leer.
La lectura comienza en una localización especificada por pos mode y pos offset y depende del
formato del archivo especificado.
Write File: Escribe los datos de archivo especificado por refnum. La escritura comienza
en una localización especificada por pos mode y pos offset para los archivos de bits corrientes y en
el extremo del archivo por datalog
Close File: Cierra el archivo especificado por refnum.
Manejo de Errores
Los archivos VIs de I/O y las funciones, devuelven información de error. Incluya a manejador VI
de error, tal como el manejador de error simple situado en la paleta de funciones Functions»Time &
Dialog en el final del VI para determinarse si el VI funciona sin errores. Use el error dentro de clusters y
fuera de clusters en cada VI que usted utilice o construya para pasar la información del error a trabes del
VI. LabVIEW testea los errores en cada nodo de ejecución.
Clusters de Error
Usted puede escribir cualquier tipo de datos a un archivo abierto o creado con el VIs y las
funciones del archivo I/O. Si otros usuarios o aplicaciones necesitan tener acceso al archivo, escriba
cadenas de datos en formato del ASCII al archivo. Usted puede tener acceso a cada archivo, por
programa o a través de un cuadro de diálogo. Para tener acceso a un archivo a través de un cuadro de
diálogo, no una la ruta del archivo en el Open/Create/Replace Archivo VI. Usted puede ahorrar tiempo
de programación uniendo el nombre del archivo y el pathname (dirección de acceso al archivo) al VI. La
tabla siguiente describe cómo se organizan los pathnames.
El siguiente ejemplo demuestra cómo escribir datos strings a un archivo existente mientras que
en el programa une el nombre de fichero y el pathname
Página 83 de 87
Cátedra de Control de Procesos – Facultad de Ingeniería – U.N.E.R.
Curso Introducción a LabVIEW - 2007
El Open/Create/Replace archivo VI, abre el archivo test1.dat. El VI también genera un refnum y
un cluster del error. Un número de referencia, o refnum, es un identificador único para un objeto, tal
como un archivo, un dispositivo, o una conexión de red. Cuando usted abre un archivo, un dispositivo, o
una conexión de red, LabVIEW crea un refnum asociado a ese archivo, dispositivo, o conexión de red.
Todas las operaciones que usted se realiza en archivos abiertos, dispositivos, o las conexiones de red
utilizan los refnums para identificar cada objeto.
El cluster de error y el refnum pasan en secuencia desde un nodo al siguiente. Puesto que un
nodo no puede ejecutarse hasta que recibe todas sus entradas, el paso de estos dos parámetros, fuerza a
los nodos a funcionar en orden.
Se puede crear un archivo que tenga la forma de una hoja de cálculo (spreadsheet) con filas y
columnas usando los siguientes VI:
Utilice Format Into File para transformar una cadena, un carácter numérico, una ruta o datos booleanos
como texto y escribirlo en un archivo. Usted puede utilizar esta función en cambio por formateo
separado de cadenas con la función Format Into String y escribir la secuencia resultante con la función
Write Characters To File VI or Write File. Utilice la función Format Into File para determinar la orden
en la cual los datos aparecen en el archivo de texto. Sin embargo, usted no puede utilizar esta función
para añadir datos a un archivo o para sobrescribir datos existentes en un archivo. Para estas operaciones,
utilice la función Format Into String. Usted puede atar unir un refnum o una ruta al terminal de entrada
del fichero, o usted puede dejar esta entrada sin unir para que un cuadro de diálogo le solicite el nombre
de fichero.
El carácter tab separa columnas, y end of line (fin de línea) separa las filas.
Página 84 de 87
Cátedra de Control de Procesos – Facultad de Ingeniería – U.N.E.R.
Curso Introducción a LabVIEW - 2007
el número al azar a las cadenas y pone los tabs en el fin de línea en las posiciones correctas para crear
dos las columnas y una fila en formato de hoja de cálculo. Después de que el lazo termine cinco
iteraciones, el archivo se cierra, y el VI chequea la condición de error.
Estos VI crean el siguiente archivo de texto, donde un cursor (→) indica un tab, y un símbolo
parágrafo (¶) indica un carácter de fin de línea.
0→0.798141¶
1→0.659364¶
2→0.581409¶
3→0.526433¶
4→0.171062¶
Utilice archivo I/O de alto nivel VIs situado en la fila superior de la paleta de funciones
Functions»File I/O para realizar operaciones comunes de I/O, tales como escribir a o leer desde los
siguientes tipos de datos:
Escribir caracteres a archivo: escribe una cadena de caracteres a un archivo nuevo o la añade a un
archivo existente. El VI abre o crea el archivo antes de escribirle y lo cierra luego.
Leer caracteres de Archivo: Lee el número de caracteres de un archivo que comienza en el
comienzo del offset leído. El VI abre el archivo antes de leer en el y lo cierra luego.
Escribir archivo de hoja de cálculo: Convierte un arreglo de 2D o de 1D de caracteres numéricos
de la simple-precisión a una cadena de texto y escribe la cadena a un archivo nuevo o la añade a
un archivo existente. Usted también puede transportar los datos. El VI abre o crea el archivo
antes de escribirle y lo cierra luego. Usted puede utilizar este VI para crear un archivo del texto
legible por la mayoría de las aplicaciones de hojas de cálculo.
Leer desde archivos de hojas de cálculo: Lee un número específico de líneas o de filas de un
archivo de texto que comienza en el comienzo de offset leído y convierte los datos a un arreglo
de 2D de caracteres numéricos de precisión simple. El VI abre el archivo antes de leer desde el y
lo cierra luego. Usted puede utilizar este VI para leer un archivo de hoja de cálculo y guardarlo
en formato de texto.
Leer líneas desde Archivos: Lee un número de líneas específico de un texto o de un archivo
binario que comienza en el comienzo de offset leído. El VI abre el archivo antes de leer desde el
y lo cierra luego.
Archivo binario Vis: Lee desde y escribe a los archivos en formato binario. Los datos pueden ser
números enteros o caracteres numéricos floating-point de precisión simple.
Página 86 de 87
Cátedra de Control de Procesos – Facultad de Ingeniería – U.N.E.R.
Curso Introducción a LabVIEW - 2007
Página 87 de 87