You are on page 1of 0

CENTRO REGIONAL DE OPTIMIZACIN Y DESARROLLO DE

EQUIPO CHIHUAHUA









PROGRAMACIN BSICA EN LABVIEW









Chihuahua, Chih., agosto del 2004
Centro Regional de Optimizacin y Desarrollo de Equipo Chihuahua



PROGRAMACIN BSICA EN LABVIEW



Objetivo.

Conocer el ambiente grfico de programacin LabVIEW para generar
aplicaciones generales y facilitar el proceso de adquisicin de datos.

Reforzar el conocimiento de estructuras de control, manejo de
arreglos, cadenas y archivos.

Conocer mtodos y propiedades de objetos grficos.


Centro Regional de Optimizacin y Desarrollo de Equipo Chihuahua



Tabla de contenido


PRCTICAS DE LABVIEW.......................................................................................................................... 1
1. INTRODUCCIN. .......................................................................................................................................... 1
Qu es LabVIEW? .................................................................................................................................... 1
Instrumentos Virtuales................................................................................................................................ 1
Ambiente de LabVIEW ............................................................................................................................... 2
2. CONSTRUCCIN DEL PANEL FRONTAL. ........................................................................................................ 6
Mostrar y ocultar elementos opcionales..................................................................................................... 6
Cambiar controles por indicadores y viceversa. ........................................................................................ 6
Pintar y redimensionar Objetos. ................................................................................................................ 6
Utilizacin de controles.............................................................................................................................. 7
3. CONSTRUCCIN DEL DIAGRAMA DE BLOQUES. ............................................................................................ 8
Nodos del diagrama de bloques. ................................................................................................................ 8
Recomendaciones. ...................................................................................................................................... 9
4. EJECUTAR Y DEPURAR VI.......................................................................................................................... 10
5. ESTRUCTURAS CASE Y CCLICAS. ............................................................................................................ 11
Estructura CASE. ..................................................................................................................................... 11
Ciclo FOR................................................................................................................................................. 12
Ciclo WHILE. ........................................................................................................................................... 12
Estructura Secuencial............................................................................................................................... 13
6. CADENAS, ARREGLOS Y CLUSTERS........................................................................................................... 15
Strings....................................................................................................................................................... 15
Arreglos. ................................................................................................................................................... 16
Clusters..................................................................................................................................................... 17
7. VARIABLES LOCALES Y GLOBALES. .......................................................................................................... 18
Variables Locales. .................................................................................................................................... 18
Variables Globales. .................................................................................................................................. 18
8. GRAPHS Y CHARTS.................................................................................................................................... 20
Waveform.................................................................................................................................................. 21
XY Graphs. ............................................................................................................................................... 23
Digital Graph. .......................................................................................................................................... 23
Intensity Graph......................................................................................................................................... 24
9. ARCHIVOS. ................................................................................................................................................ 24
Principios. ................................................................................................................................................ 24
Formato. ................................................................................................................................................... 24
10. MEN. ..................................................................................................................................................... 26
Crear Mens............................................................................................................................................. 26
Manejo de la seleccin. ............................................................................................................................ 26
11. PUERTO SERIE. ........................................................................................................................................ 27
Panorama General. .................................................................................................................................. 27
Aspectos fsicos......................................................................................................................................... 27
APNDICE A. ................................................................................................................................................. 30
Instalacin del software. .......................................................................................................................... 30
Instalacin del hardware PCI-6503. ........................................................................................................ 30
Configuracin........................................................................................................................................... 30
Conexiones de seal. ................................................................................................................................ 30
REFERENCIAS. ............................................................................................................................................... 32
AUTOR. ......................................................................................................................................................... 33

Centro Regional de Optimizacin y Desarrollo de Equipo Chihuahua

Centro Regional de Optimizacin y Desarrollo de Equipo
PRCTICAS DE LABVIEW

1. Introduccin.
Qu es LabVIEW?

LabVIEW (Laboratory Virtual Instrument Engineering Workbench) es un ambiente de desarrollo
basado en la programacin grfica. Utiliza terminologa, iconos, e ideas familiares a tcnicos,
cientficos e ingenieros, y se basa en smbolos grficos en lugar de lenguaje textual para describir
acciones de programacin. LabVIEW est integrado completamente en las comunicaciones con el
hardware tal como GPIB, RS-232 y DAQ. Adems cuenta con libreras para el manejo de redes
TCP/IP y ActiveX.

Instrumentos Virtuales.
Los archivos bsicos que se pueden crear con LabVIEW son llamados Instrumentos Virtuales o VIs
por sus siglas en ingls. Cada VI consiste de dos partes principales el panel frontal y el diagrama
de bloques.

Panel frontal.



Programacin Bsica en LabVIEW 1
Centro Regional de Optimizacin y Desarrollo de Equipo
Diagrama de bloques.




Otra parte importante es el icono y conector, el cual es el cuadro situado en la parte superior
derecha, y es utilizado para identificacin grfica y utilizacin como sub VI dentro de otro VI a
travs de sus conectores.

Ambiente de LabVIEW

Men.


Programacin Bsica en LabVIEW 2
Centro Regional de Optimizacin y Desarrollo de Equipo
Paleta de Controles.


Paleta de funciones.

Programacin Bsica en LabVIEW 3
Centro Regional de Optimizacin y Desarrollo de Equipo
Flujo.

La ejecucin de instrucciones no fluye de arriba hacia abajo como en la programacin textual
tradicional, sino que fluye paralelamente entre los componentes grficos.



Herramientas.




Terminales.
Las terminales representan el tipo de dato del control o indicador. Pueden ser

Control o Indicador Tipo de dato Color
SGL Punto flotante de simple precisin Naranja
DBL Punto flotante de precisin doble Naranja
EXT Punto flotante de precisin extendida Naranja
CSG Punto flotante complejo de simple precisin Naranja
CDB Punto flotante complejo de doble precisin Naranja
CXT Punto flotante complejo de precisin
extendida
Naranja
I8 Entero de 8 bits con signo Azul
I16 Entero de 16 bits con signo Azul
I32 Entero de 32 bits con signo Azul
U8 Entero de 8 bits sin signo Azul
U16 Entero de 16 bits sin signo Azul
U32 Entero de 32 bits sin signo Azul
< > Tipo Enumerado Azul
TF Lgico Verde
Abc String Rosa
[ ] Arreglo Variante
Cluster Caf o
Programacin Bsica en LabVIEW 4
Centro Regional de Optimizacin y Desarrollo de Equipo
rosa
Ruta Aqua
Waveform Variante
I/O Nombre de I/O Morado


Actividades.
1. Abra y ejecute Ej01.VI
2. Observe el panel frontal y el diagrama de bloques.
3. Ejecute el VI.
4. Cierre el VI.
5. Abra y ejecute Ej02.VI
6. Observe la ayuda contextual del diagrama de bloques.
7. Observe la ayuda contextual del panel frontal en diseo y en ejecucin.
8. Cierre el VI.
Programacin Bsica en LabVIEW 5
Centro Regional de Optimizacin y Desarrollo de Equipo
2. Construccin del panel frontal.

Generalmente el panel frontal ser diseado primero, despus se proceder a la construccin del
diagrama de bloques, el cual interactuar y ejecutar funciones sobre los objetos puestos en el
panel frontal.

Mostrar y ocultar elementos opcionales.

Los controles e indicadores del panel frontal tienen elementos opcionales que pueden estar ocultos
o estar siendo mostrados.

Actividades.
1. Abra el VI Ej03.VI
2. Oculte los elementos opcionales del GraphXY.
3. Muestre todos los elementos opcionales del Waveform chart.
4. Observe qu elementos son opcionales para Numeric.

Cambiar controles por indicadores y viceversa.

LabVIEW tiene elementos que comnmente se utilizan como indicadores o bien como controles,
sin embargo, pueden ser modificados para funcionar de manera personalizada y no slo la
determinada por LabVIEW.

Actividades.
1. Agregue un termmetro al VI Ej03.VI
2. Cambie el control numrico por indicador numrico.
3. Cambie el termmetro por control.
4. Alambre el termmetro y el indicador numrico.
5. Ejecute continuamente el programa.
6. Aborte.
7. Cierre el VI.

Pintar y redimensionar Objetos.
Usted puede personalizar los objetos del panel frontal y del diagrama de bloques. Una manera de
hacerlo es aplicar color sobre ellos. No todos los objetos pueden cambiar de color. Adems puede
redimensionar el objeto sin perder sus propiedades. La escala numrica puede ser modificada
tambin.

Actividades.
1. Abra el EJ04.VI.
2. Haga una rplica en un VI nuevo.
3. Compare ambos VI.
4. Cierre los VI.

Programacin Bsica en LabVIEW 6
Centro Regional de Optimizacin y Desarrollo de Equipo
Utilizacin de controles.
Actividades.
Ej05
1. Abra un ejercicio nuevo.
2. Agregue dos controles Vertical Pointer Slide.
3. Agregue un control Knob.
4. Observe las terminales en el diagrama de bloques.
5. Agregue un slider en cualquier control slide. (Parte blanca del control).
6. Observe que la terminal cambio.
7. Cargue el objeto Cluster/IUnbundle y almbrelo con el cluster.
8. Convierta los controles DBL a indicadores.
9. Alambre los indicadores al objeto Unbundle.
10. Agregue un indicador Gauge y almbrelo directamente al cluster.
11. Agregue una aguja al indicador.
12. Cambie de color la aguja.
13. Alambre nuevamente.
14. Ejecute el programa continuamente.
15. Aborte y cierre el VI.

Ej06
1. Abra un ejercicio nuevo.
2. Agregue un control Menu Ring de Ring & Enum.
3. Agregue un Indicador numrico de Digital Indicator/ Numeric
4. Agregue un Indicador string de String & Path.
5. Cambie la terminal DBL a U16.
6. Llene el control Menu Ring con el nombre de 4 compaeros y con el suyo encabezando la
lista.
7. Alambre las terminales U16.
8. Cree un Property Node del control Ring, seleccione el arreglo de cadenas.
9. Seleccione el objeto Index Array de Array.
10. Alambre.
11. Ejecute continuamente.
12. Aborte, grabe y cierre el VI.

Ej06b
1. Abra el ejercicio anterior.
2. Haga lo mismo que el ejercicio anterior reemplazando el Menu Ring por un Enum.
3. Cree un indicador tipo ENUM y almbrelo con el control ENUM.

Programacin Bsica en LabVIEW 7
Centro Regional de Optimizacin y Desarrollo de Equipo
3. Construccin del diagrama de bloques.

Una vez que se construy el panel frontal, puede agregar cdigo utilizando representaciones
grficas de funciones para controlar los objetos del panel frontal de la forma en que se ha hecho a
travs de las actividades. El diagrama de bloques contiene este cdigo fuente grfico.

Los objetos del panel frontal aparecen como terminales en el diagrama de bloques. Al dar doble
clic en el la terminal se ilumina el control o indicador correspondiente en el panel frontal. No puede
borrar una terminal del diagrama de bloques. La terminal desaparece slo despus de borrar su
objeto correspondiente en el panel frontal.

Las terminales son puertos de entrada y de salida que intercambian informacin entre el panel
frontal y el diagrama de bloques. Los datos que se introducen en los controles del panel frontal se
introducen al diagrama a travs de las terminales. Cuando el VI termina su ejecucin, los datos de
salida fluyen a las terminales de indicadores, si existen, y aparecen en los indicadores del panel
frontal.

Constantes.
Las constantes son terminales en un diagrama de bloque que dotan de datos de valor fijo al
diagrama de bloques. Las constantes universales son constantes con valores fijos tal como pi e
infinito. Las constantes definidas por el usuario son constantes que se definen y editan antes de
ejecutar el VI. Las constantes pueden ser etiquetadas.

Nodos del diagrama de bloques.

Los nodos son objetos en el diagrama de bloques que tienen entradas y/o salidas y ejecutan
operaciones cuando un VI est siendo ejecutado. Son anlogos a las declaraciones, operadores,
funciones y subrutinas en la programacin basada en texto.

Funciones. Elementos de ejecucin comparables a un operador, funcin o declaracin.
Sub VI. VI utilizados en un diagrama de bloque de otro VI, comparado a subrutinas.
Estructuras. Elementos de control de proceso, tal como estructuras de secuencia,
estructuras CASE y ciclos.
Nodos frmula. Estructuras redimensionables para insertar ecuaciones directamente a
diagrama de bloques.
Nodos de propiedad. Cambia o muestra propiedades de una clase.
Nodos de invocacin. Ejecuta mtodos de una clase.
Nodos de Interfaz de cdigo. Llamadas de cdigo de lenguajes de programacin basada
en texto.

Las funciones son los elementos esenciales de operacin de LabVIEW. Los iconos de las
funciones tienen fondo amarillo. No tienen paneles frontales o diagramas de bloques pero tienen
conectores. Tambin pueden tener fondo blanco y se refieren a funciones de adquisicin de datos,
de control de instrumentos y de comunicacin.

Existen funciones tales como numricas, lgicas, comparativas y de manejo de cadena, arreglos,
cluster, hora y archivo.

Despus de construir un VI, construya el conector para poder utilizar un VI como un subVI.

Programacin Bsica en LabVIEW 8
Centro Regional de Optimizacin y Desarrollo de Equipo
Alambrado.
Puede transferir datos entre objetos de diagrama de bloque a travs de cables. Cada cable tiene
una sola fuente de datos, pero puede ser alambrada a muchos VI y funciones que lean datos. Los
cables tienen diferentes colores, estilos y grosores dependiendo de los tipos de datos. Un cable
roto aparece como una lnea punteada.

Puede alambrar terminales vertical u horizontalmente dependiendo de la direccin en la cual
primero movi la herramienta alambradora. El cable se conecta al centro de la terminal,
independientemente de donde hizo clic. Despus de que hizo clic en la terminal, puede cambiar la
direccin al presiona la barra espaciadora.

Conversin automtica.
Cuando se alambran dos tipos de datos diferentes aparece un punto indicando una conversin
automtica de tipos. sta aparece donde la conversin toma lugar.

Flujo.
LabVIEW sigue el modelo de ejecucin del flujo de datos. Un nodo se ejecuta cuando todas sus
entradas estn disponibles. Cuando un nodo completa su ejecucin, abastece datos a sus
terminales de salida y pasa los datos de salida al siguiente nodo en la ruta de flujo de datos.

Un nodo que recibe datos de otro nodo siempre se ejecutar despus que el primer nodo termine
su ejecucin. Los nodos no interconectados se ejecutarn en cualquier orden. Sin embargo se
recomienda usar un modelo izquierda a derecha y de arriba hacia abajo, aunque no debe asumirse
de esa forma la ejecucin.

Recomendaciones.

Utilice un formato de izquierda a derecha y de arriba hacia abajo. Aunque las posiciones de
los elementos no determinan el orden de ejecucin, alambre de este modo para tener un
diagrama de bloques organizado y fcil de entender. Slo los cables y estructuras
determinan el orden de ejecucin.
Evite crear diagramas de bloque que ocupen ms de una o dos pantallas. Si un diagrama
de bloques es ms grande y complejo, puede ser difcil de entender o depurar.
Observe si puede reusar algunos componentes del diagrama de bloques en otros VI o si
una seccin del bloque puede ser vista como un componente lgico. Si es as, divida el
diagrama de bloques en subVI de tareas especficas.
Mejore la apariencia del diagrama de bloques al alambrar efectivamente. Una organizacin
pobre no produce errores, pero puede hacer al diagrama difcil de leer o depurar, o hacer
que el VI parezca hacer cosas que no hace.
Evite alambrar en los bordes de estructuras o empalmar objetos debido a que LabVIEW
puede esconder algunos segmentos de cable.
Evite colocar objetos encima de cables. Los cables conectan solo aquellos objetos donde
hace clic. Colocar una terminal o icono arriba de un cable lo hace parecer que existe una
conexin cuando no.
Utilice el pincel para pintar el rea de trabajo del diagrama de bloques.

Programacin Bsica en LabVIEW 9
Centro Regional de Optimizacin y Desarrollo de Equipo
4. Ejecutar y depurar VI.

Para ejecutar un VI, debe alambrar todos los subVI, funciones y estructuras con los tipos de datos
de las terminales esperadas. Puede configurar la manera de ejecucin de un VI para identificar
problemas.


Puede ejecutar un VI al presionar este botn cuando aparece como una flecha blanca
slida. Y puede utilizar este VI como un SubVI. El VI se detiene cuando el VI completa su
flujo de datos.

Al presionar este botn se ejecuta continuamente hasta que se presione el botn de STOP.

Botn de STOP.

Pausa/ Contina

Botn de ejecucin para observar una animacin de la ejecucin del diagrama. Muestra los
movimientos de los datos de un nodo a otro utilizando burbujas que se mueven a lo largo
de los cables. Se utiliza a la par de los botones de Single stepping.

Ejecucin Paso a Paso dentro de sub VI.

Ejecucin Paso a paso con ejecucin rpida de Sub VI.

Salir al siguiente sub VI.

Probe. Se encuentra en el men de herramientas y sirve para mostrar el valor de los datos
en tiempo de ejecucin.

Punto de ruptura. Se encuentra en el men de herramientas y se utiliza para colocar un
punto de ruptura en un VI, nodo o cable en el diagrama de bloques y detener la ejecucin
en ese lugar. Cuando se pone un punto de ruptura en un cable, la ejecucin se detiene
despus de que los datos pasan a travs de l.

Programacin Bsica en LabVIEW 10
Centro Regional de Optimizacin y Desarrollo de Equipo
5. Estructuras CASE y cclicas.

Las estructuras son representaciones grficas de los ciclos y las declaraciones CASE de los
lenguajes basados en programacin textual. Utilice estructuras en el diagrama de bloques para
repetir bloques de cdigo y ejecutar cdigo condicionalmente o en un orden especfico.

Estructura CASE.

Una estructura case tiene dos o ms subdiagramas, o casos. Slo un diagrama es visible a la vez,
y la estructura ejecuta slo un caso a la vez. La estructura ejecuta un solo subdiagrama
dependiendo del valor de entrada pasado a la estructura.

El identificador de seleccin de caso en la parte superior de la estructura contiene el identificador
en el centro y botones a los lados. Utilice los botones para navegar a travs de los casos
disponibles.

Alambre un valor a la terminal selectora, el cual determinar qu caso ejecutar. Puede alambrar
valores enteros, lgicos, de cadena o enumerados. La terminal est a la izquierda de la estructura.

El caso default se ejecuta cuando no existe identificador correspondiente al valor dado a la terminal
selectora.

Se pueden especificar valores solos, listas o rangos de valor para seleccionar el caso. Para las
listas utilice comas para separar valores. Para especificar rangos utilice dos puntos. Adems puede
combinar listas y rangos.

Si cambia el tipo de datos del selector de terminal, la estructura automticamente cambia los
valores al nuevo tipo de datos cuando es posible.

Puede crear mltiples tneles en una estructura case. Los tneles de entrada estn disponibles
para todos los casos. Sin embargo debe definir una salida por cada caso.

Actividades.
Ej07.
Despus de realizar un anlisis de calidad en un conjunto de piezas terminadas y rotuladas, se
encontr que 1 de cada 7 fallaba y que la falla era peridica. Se enumeraron y se encontr la
relacin que las piezas con nmero de pieza mltiplo de 7 fallaban. Simule un lector de cdigo de
barras mediante un control numrico y si el nmero de pieza es mltiplo de 7 encienda una alarma.
Adems muestre el rtulo Passed si no es mltiplo de 7 o Failure si lo es.

Ej08.
En la empresa H-OIL se fabrican cuatro tipos de aceite cada uno de los cuales tiene un costo de
fabricacin y envasado en dlares: Grado SAE 5W de 3, 10W de 4, 20W de 7 y 30W de 9 por
envases de 5 galones. Si el cliente pide entre 1 99 envases de 5 galones, el costo de venta es
del 300% , si solicitan 100-499 el costo es del 250% y si se solicitan ms de 500 el costo es del
200%. Simule el pedido de un solo artculo donde el cliente indicar el tipo de aceite y cantidad que
desea adquirir. El software indicar el monto que el cliente deber pagar.

Cree en el panel frontal un control ENUM con los tipos de aceite y un control numrico entero sin
signo para la cantidad solicitada. Muestre en un indicador numrico el monto que se cobrar al
cliente.
Programacin Bsica en LabVIEW 11
Centro Regional de Optimizacin y Desarrollo de Equipo
Ej08b.
Modifique el ejercicio anterior para permitir el pedido de hasta cuatro artculos.

Ej09.
Se desea controlar la temperatura de un dispositivo cuya presin oscila entre los 1000 y 10000
PSI. Cuando la presin esta entre 1000 y 1999 se deber poner el setpoint del control de
temperatura a 60 C; cuando est entre 2000 y 2999, a 55 ; entre 3000 y 3499 a 58; entre 3500 y
4999 a 55; entre 5000-7999, a 58; entre 8000 y 8999, a 40; y si rebasa los 8999, a 30. Si el
medidor de presin tiene una lectura diferente al rango 1000 y 10000 que se active la alarma y
ponga el setpoint del control de temperatura a 25C.

Ilustre el ejemplo a travs de un control gauge que al indicar la presin se muestre en un
termmetro el setpoint del controlador.

Ciclo FOR.
Ejecuta un subdiagrama un nmero finito de veces.
El valor en la terminal N muestra cuntas veces se repetir el subdiagrama. Si alambra un 0 a sta
no se ejecuta.
La terminal iteradora, i, contiene la cantidad de iteraciones terminadas, la cual siempre empieza en
cero. Durante la primer iteracin devuelve un 0.
Agregue shift registers para pasar datos de una iteracin a la siguiente.

Actividades.
Ej10
Muestre la sumatoria de los nmeros comprendidos entre 10 y 20, incluyndolos.
Sum = 10+11+12+13+14+15+16+17+18+19+20 = 165.

Ej11
Muestre la suma de los nmeros impares comprendidos entre 1 y 100.
Sum = 1+3+5+7+9+...+97+99 = 2500.

Ej12
Indique si un nmero entero positivo provisto en el panel frontal es primo o no. Recuerde que los
nmeros primos slo son divisibles de forma entera entre ellos mismos y el uno.
Establzcalo como subVI.

Ej13
Muestre la cantidad de nmeros primos existentes entre 1 y 100. Utilice el subVI anterior. (26).

Ej14
Se desea monitorear la temperatura de una caldera. Para conocer obtener una muestra se requiere
promediar las lecturas de 10 sensores en puntos crticos. Se deben monitorear cada 100 ms. El
tiempo de monitoreo total es de 20 segundos. Simule las entradas de los sensores con 10
generadores de nmeros aleatorios. Una vez que tenga las 200 muestras obtenga su temperatura
promedio, la desviacin estndar y la cantidad de veces en que estuvieron las muestras entre 0.4 y
0.6.

Ciclo WHILE.

Ejecuta un subdiagrama hasta que la terminal condicional recibe un valor lgico especfico. El
comportamiento por omisin es contina si es verdadero, es decir, se detiene hasta que la
terminal recibe un valor de falso. Se puede cambiar el comportamiento haciendo clic derecho y
Programacin Bsica en LabVIEW 12
Centro Regional de Optimizacin y Desarrollo de Equipo
seleccionar Stop if True. Cuando una terminal est en detiene si verdadero, el ciclo se ejecuta
hasta que la terminal condicional recibe un valor verdadero.
Debido a que el VI verifica la condicin terminal al final de cada iteracin, el ciclo WHILE se ejecuta
al menos una vez.
Puede agregar shift register.
Si coloca la terminal lgica fuera del ciclo WHILE puede causar un ciclo infinito, por lo que es
conveniente que dicha terminal se coloque dentro del ciclo.

Actividades.
Ej15. Despliegue en un Waveform Chart nmeros aleatorios comprendidos entre 0 y 10 cada 100
ms. Detenga el programa con un interruptor. El valor por omisin del interruptor es ON.

Optativo.
Optimice el diagrama de la funcin EsPrimo (Ej12) para que solamente haga mximo una divisin
entera con residuo 0 por nmero a verificar.

Ej16.
Cree un subVI que simule la llegada de una pieza determinada. Entrada: Nada. Salida: 0.- Pen,
1.- Caballo, 2.- Alfil, 3.-Torre. El modelo del fenmeno se puede expresar como: Residuo de
Random*10/4.

Ej17. Se desea cumplir con la siguiente orden:
10 peones, 5 caballos, 3 alfiles, 5 torres. Utilice el VI anterior para simular la llegada de las piezas y
cuando complete la orden detenga el proceso. Habr excedentes.

Estructura Secuencial.

Una estructura secuencial contiene uno o ms subdiagramas, o cuadros, que se ejecutan en orden
secuencial. Una estructura secuencial ejecuta el cuadro 0, luego el 1, despus el 2, hasta que el
ltimo cuadro se ejecuta. Esta estructura no termina la ejecucin ni regresa ningn dato hasta que
el ltimo cuadro es ejecutado.

Utilice la estructura Secuencial para controlar el orden de ejecucin cuando la dependencia natural
de datos no exista. Un nodo que recibe datos de otro depende de otro nodo debido a los datos y
siempre se ejecuta despus de que el otro nodo completa la ejecucin.

Dentro de cada marco de una estructura secuencial, como en el resto del diagrama de bloques, la
dependencia de datos determina el orden de ejecucin de los nodos.

Los tneles de estas estructuras pueden tener slo una fuente de datos, a diferencia de las
estructuras CASE. La salida puede emitirse de cualquier cuadro, pero el dato llegar hasta cuando
se ejecute el ltimo cuadro. Al igual que las estructuras CASE, los tneles de datos de entrada
estn disponibles a todos los cuadros.

Para pasar datos de un cuadro a otro cuadro subsiguiente, utilice una terminal de secuencia local.

Actividades.
Ej18.
En una conferencia, un expositor conoce su tiempo disponible con el color de la luz de un foco.
Cuando esta en sus primeros 30 minutos la luz est en verde, en los siguientes 10 minutos la luz
es amarilla para indicarle que comience a dar conclusiones y termine su presentacin. Despus de
ese tiempo la luz permanece en rojo en seal que ha excedido su tiempo y que debe terminar la
Programacin Bsica en LabVIEW 13
Centro Regional de Optimizacin y Desarrollo de Equipo
exposicin. Disee un programa que ilustre este comportamiento y cambie la unidad de tiempo por
dcimas de segundo.

Optativo.
Ilustre el comportamiento de dos semforos en un crucero.

Programacin Bsica en LabVIEW 14
Centro Regional de Optimizacin y Desarrollo de Equipo
6. Cadenas, Arreglos y Clusters.

Utilice cadenas, arreglos y cluster para agrupar datos. Las cadenas agrupan secuencia de
caracteres ASCII. Los arreglos agrupan elementos del mismo tipo. Clusters agrupan elementos de
tipos mixtos.

Strings.
Una cadena es una secuencia de caracteres ASCII visibles o no visibles.
Algunas de las aplicaciones ms comunes son:

Crear mensajes simples de texto.
Pasar datos numricos como caracteres a instrumentos y convertirlos a cadenas de
nmeros.
Almacenar datos numricos a disco. Para almacenar nmeros en un archivo ASCII, debe
primero convertirlos a cadenas.
Instruir o avisar al usuario con cuadros de dilogo.

Tipos de display.
Tipo Descripcin Mensaje
Normal Despliega caracteres imprimibles utilizando
la fuente del control. Caracteres no
imprimibles aparecen como cajas.
There are four display types.
\ is a backslash.
\ Cdigos. Despliega cdigos con backslash para todos
los caracteres no imprimibles.
There\sare\sfour\sdisplay\st
ypes.\n\\\sis\sa\sbackslash.

Password Despliega un asterisco por cada carcter
incluyendo espacios
****************************
*
*****************

Hexadecimal Despliega el valor de cada carcter en hex
en lugar del carcter por si mismo.
5468 6572 6520 6172 6520 666F
7572 2064 6973 706C 6179 2074
7970 6573 2E0A 5C20 6973 2061
2062 6163 6B73 6C61 7368 2E


Actividades.
Ej19.
Un prototipo con comunicacin serial requiere que se le enve una cadena de comandos, sin
embargo para aceptar cada carcter requiere que se le agregue un asterisco al final de cada uno
de los caracteres, y para terminar el envo del comando mandar un ESC. Simule con una caja de
texto el comando que se desea enviar y en un indicador de cadena exponga lo que el dispositivo
recibira.

Ej20.
Un dispositivo de mensajes japons requiere que el mensaje venga escrito de derecha a izquierda.
Simule con una caja de textos el mensaje deseado y en un indicador de cadena el mensaje
invertido. Preprelo para usarlo como subVI.



Ej21.
Programacin Bsica en LabVIEW 15
Centro Regional de Optimizacin y Desarrollo de Equipo
Se cuenta con tres medidores que devuelven la medicin en una cadena con cuatro decimales, se
desea analizar los valores y enviar la medicin mxima a un control que recibe, a su vez, una
cadena con cuatro decimales.

Arreglos.

Un arreglo consiste de elementos y dimensiones. Los elementos son los datos que forman el
arreglo. La dimensin es la longitud, ancho o profundidad de un arreglo. Un arreglo puede tener
una o ms dimensiones y 2147,483,647 elementos por dimensin, segn la capacidad de
memoria.

Puede construir arreglos numricos, lgicos, de ruta, cadena, formas de onda y clusters. Considere
usar arreglos cuando trabaje con una coleccin de datos similares y cuando ejecute clculos
repetitivos. Los arreglos son ideales para almacenar datos que adquiera de formas de onda o datos
generados en ciclos, donde cada iteracin produce un elemento de un arreglo.

No puede crear arreglos de arreglos. Sin embargo puede crear un arreglo de clusters donde cada
cluster contiene uno o ms arreglos.

ndices.
Para localizar un elemento particular en un arreglo se requiere un ndice por dimensin.

Restricciones.
No puede crear un arreglo de arreglos. Sin embargo, puede usar un arreglo
multidimensional o crear un arreglo de cluster donde cada cluster contiene uno o ms
arreglos.
No puede crear un arreglo de Charts ni GRAPH.

Actividades.
Ej22
Llene un arreglo con 10 mltiplos de 5 a partir de 1.

Ej23
Llene un arreglo de 10x10 con las tablas de multiplicar del 1 al 10.

Ej24.
Llene un arreglo con los 15 valores de la siguiente funcin.
y(n) = 3y(n-1) - 2y(n-2) + 5

y(0) = 1
y(1) = 2

y(2)=3*y1-2*y0+5=3*2-2*1+5= 9
y(3)=3*y2-2*y1+5=3*9-2*2+5= 28

Grafique exponencialmente.

Optativo.
Multi.VI Cree un subVI que tenga de entrada dos matrices y de salida la multiplicacin
correspondiente. Devuelva un T o F si fue o no posible, respectivamente.
Programacin Bsica en LabVIEW 16
Centro Regional de Optimizacin y Desarrollo de Equipo

Matriz A.
1 0 1
1 2 1
2 3 0

Matriz B.
2 1
2 4
3 3

C= AxB

5 4
9 12
10 14

Ej25.
Construya un waveform mediante un arreglo de 10 elementos aleatorios, un delta t de 1 y un t0=0.
Muestre a travs de un indicador.
Observe la fecha de captura.
Ahora modifique la entrada de t0 por la funcin Time&Dialog>Get Date/Time in Seconds y observe.

Clusters

Los clusters agrupan elementos de diferentes tipos de datos, tal como un conjunto de alambres en
un cable telefnico, donde cada alambre en el cable representa un elemento diferente del cluster.

Agrupar diversos elementos de datos en cluster elimina el excesivo cableado en el diagrama de
bloques.

Aunque el cluster y los elementos del arreglo estn ordenado, puede desagrupar todos los
elementos del cluster en una exhibicin en lugar de hacerlo elemento por elemento. Al igual que un
arreglo, un cluster puede ser un control o bien un indicador, no puede ser una mezcla de ambos.

Para alambrar cluster, ambos deben tener el mismo nmero de elementos y los elementos
correspondientes, determinados por el orden del cluster, deben ser tipos de datos compatibles.

Actividades.
Ej26
La informacin mnima concerniente de alumno para una escuela es la siguiente:
Nmero de control como I32.
Nombre como Cadena.
Direccin como Cadena.
Telfono como Cadena.
Inscrito como Lgico.
Agrupe esta informacin en un cluster de control, captrela y mustrela a travs de indicadores.

Ej27
Haga el proceso inverso.

Programacin Bsica en LabVIEW 17
Centro Regional de Optimizacin y Desarrollo de Equipo
7. Variables Locales y Globales.

En LabVIEW, puede leer datos de o escribir datos al panel frontal utilizando terminales en el
diagrama de bloques. Sin embargo, un objeto en el panel frontal tiene slo una terminal en el
diagrama de bloques, y su aplicacin podra necesitar acceder a los datos de la terminal en ms de
una ocasin.

Las variables locales y globales pasan informacin entre localidades en la aplicacin que no se
conectan con un alambre. Utilice variables locales para poder acceder objetos del panel frontal en
ms de una posicin dentro del mismo VI. Utilice variables globales para acceder y pasar datos
entre diferentes VI.

Variables Locales.
Use variables locales para acceder objetos del panel frontal en ms de un lugar en un solo VI y
pase los datos entre las estructuras de bloques donde no puede conectar un cable.

Con una variable local, puede escribir a o leer desde un control o indicador en el panel frontal.
Escribir en una variable local es similar a pasar datos a cualquier otra terminal. Sin embargo, con
una variable local puede escribir a, an si es un control, o leer de, an si es indicador. En efecto,
con una variable local, puede acceder a un objeto del panel frontal como entrada y como salida.

Variables Globales.
Utilice variables globales para acceder y pasar datos entre varios VI que se ejecutan
simultneamente. Las variables globales son objetos construidos en LabVIEW. Cuando crea una
variable global, LabVIEW automticamente crea un VI global especial, el cual tiene un panel frontal
pero no tiene diagrama de bloques. Agregue controles e indicadores al panel frontal del VI global
para definir sus tipos de datos. Este panel frontal es un contenedor de varios VI que pueden
acceder datos.

En el diagrama de bloques puede distinguir variables locales o globales de lectura de las de
escritura de la misma manera en que distingue los controles de los indicadores. Una variable de
lectura tiene un borde grueso similar al control. Una de escritura tiene un borde delgado similar al
indicador.

Utilizacin de variables globales y locales.

Las variables locales y globales son conceptos avanzados de LabVIEW. No son parte inherente en
su modelo de ejecucin. Los diagramas de bloques pueden llegar a ser difciles de leer cuando
utiliza variables locales o globales, as que selas cuidadosamente. El mal uso de variables, en
lugar de conexiones pueden conducir a un comportamiento inesperado en los VI. El sobreuso de
variables locales y globales en lugar de alambrado disminuye el desempeo.

Debido a que los VI siguen una ejecucin segn el flujo de datos, las variables locales y globales
no tienen el mismo comportamiento que las usadas en lenguajes de programacin basadas en
texto. Una condicin de a ver cul gana ocurre cuando dos o ms piezas de cdigo que se
ejecutan en paralelo cambian el valor del mismo recurso compartido, tpicamente una variable local
o global. Ejemplo.

Programacin Bsica en LabVIEW 18
Centro Regional de Optimizacin y Desarrollo de Equipo


La salida de este VI depende el orden en que las operaciones se ejecuten. Debido a que no hay
dependencia de datos entre las dos operaciones, no hay manera de determinar cul corre primero.
Para evitar estas condiciones de a ver quien gana no escriba a la misma variable a la que est
leyendo.

Consideraciones de memoria al usar variables locales.

Cuando crea subVI, crea un conector que describe como pasarn los datos al subVI. El conector
no hace copias de bferes de datos al llamar VI.

Las variables locales hacen copias de bferes de datos. Cuando se lee de una variable local, se
crea un nuevo bfer para los datos de su control asociado.

Si utiliza variables locales para transferir grandes cantidades de datos de un lugar del diagrama a
otro, generalmente usar ms memoria y, consecuentemente, tendr una ejecucin ms lenta que
si lo hiciera a travs de un cable.

Consideraciones de memoria al usar variables globales.

Cuando lee una variable global, LabVIEW crea una copia del dato almacenado en la variable
global.

Cuando manipula arreglos grandes y cadenas, el tiempo y la memoria requerida para manipular las
variables globales puede ser considerable. El manipular variables globales es especialmente
ineficiente cuando trata con arreglos, porque si modifica un solo elemento del arreglo, LabVIEW
almacena el arreglo completamente. Si lee una variable global en diversos lugares de la aplicacin,
crear diversos bferes de memoria, lo cual es ineficiente y disminuye el desempeo.

Actividades.
Ej28.
Cree un control numrico y una variable local asociada a l. Dentro de un ciclo FOR alambre el
iterador a la variable. Inicialice el valor del control numrico con un valor de 5 y almbrelo a la N.
Dentro del ciclo agregue un timer a 0.5 segundos. Observe que a pesar de ser control usted puede
modificar su contenido a travs de variables locales.

Ej29
Cree dos variables globales, inicialcelas, modifique su valor en un subVI diferente al actual y lea el
valor en el primero. Utilice una secuencia para establecer un orden seguro.

Programacin Bsica en LabVIEW 19
Centro Regional de Optimizacin y Desarrollo de Equipo
8. Graphs y Charts.


Utilice graphs y charts para desplegar datos en una forma grfica.

Los graph y chart difieren en la manera en que muestran y actualizan datos. VI con graphs
usualmente ponen los datos en un arreglo y luego grafican la informacin. En contraste un chart
agrega nuevos puntos a los que ya estn en el diagrama. En un chart, puede ver la lectura actual o
la medicin en contexto con los datos adquiridos previamente.

Tipos de graph y chart.
Waveform Chart and Graph Despliega los datos adquiridos en una tasa
constante.
XY Graph Despliega los datos adquiridos en una tasa no
constante.
Intensity Chart and Graph Despliega datos 3D en un graficador 2D
utilizando colores para desplegar valores de
tercera dimensin.
Digital Waveform Graph Despliega datos como pulsos o grupos de lneas
digitales.
3D Graphs Despliega datos 3D en un graficador 3D

Opciones.
Aunque los graph y chart grafican los datos de manera diferente, tienen varias opciones comunes
que pueden accederse a travs de un men contextual.

Todas los graph y chart soportan escalas mltiples en x y y. Utilice escalas mltiples en grficas
que no comparten una escala x o y.

Adems puede personalizar la apariencia al mostrar y ocultar opciones.
Plot legend.
Scale Legend.
Graph Palette.
X Scale y Y Scale.
Cursor Legend (solo graph)
Scrollbar (solo chart).

Programacin Bsica en LabVIEW 20
Centro Regional de Optimizacin y Desarrollo de Equipo


Waveform
Actividades.
Ej30
Utilice dos waveform graph para desplegar la funcin seno con diferentes amplitudes (10 y 100).
En un tercer waveform graph grafique ambas seales con Built array y agregue un eje mediante
Duplicate scale. Asocie el Plot con alguna de las escalas en Y, mediante la seleccin en Y Scale.

En este mismo ejercicio trabaje con la lista de cursores. La lista de cursores es un arreglo, por lo
que debe ser inicializado de manera manual o automtica. La manera automtica requiere acceder
a la lista de cursores por medio de un nodo de propiedades, y traer el primer elemento del arreglo.
Los elementos del arreglo son clusters, por lo que para modificar uno o ms de los componentes
del cluster debe acceder, primeramente al cluster que lo contiene (con Index array) y en segundo
lugar al o los elementos que desea modificar (con Bundle by Name). Para devolver la informacin
al grfico se requiere otro nodo de propiedades para vaciarlo.

La lista de cursores es un arreglo especial ya que an despus de cerrar la aplicacin el arreglo
permanece inicializado, a diferencia de los arreglos tradicionales, que requieren una inicializacin
cada vez que se abre la aplicacin.

Muestre, por software, un cursor en la posicin 0, 0.5s, con una etiqueta de Ejercicio 30 , con
color azul, recuerde que el azul en RGB es 0000FF.No olvide modificar el estilo del cursor, manual
o automticamente, si lo hace por software la sugerencia es usar el 8.

Optativo.
Programacin Bsica en LabVIEW 21
Centro Regional de Optimizacin y Desarrollo de Equipo
Site dos cursores. Uno en la parte inferior izquierda correspondiente al 10% mas de los valores
mnimos de la seal y el otro en la parte superior derecha correspondiente al 10% menos del valor
mximo de la seal.

Ej31.
En un ciclo while con retardo de 500 ms por vuelta, genere y despliegue un seno en un chart. El
Delta t en el seno ser de 0.1 y la amplitud de 10.

Ej32
En el programa anterior agregue un knob con tres nmeros y adjunte las leyendas:
Strip
Scope
Sweep

Asocie el knob (U8) con un nodo de propiedad y seleccione UpdateMode.
En tiempo de ejecucin, observe los modos en que puede ver el Chart.

Agregue tambin un botn OK etiquetado como Limpiar, cuando se presione poner en la historia
un arreglo de DBL vaco.

Ej33.
Genere dos waveform con la herramienta de Waveform Generation Seno con amplitud 1 y 10.
Despliguelos en un solo Waveform Chart mediante un Build Array y juegue con la opcin de
Overlay y Stack Plots.

Ej34.
Utilice funciones matemticas para generar una onda seno y grafiquela en un Waveform Graph.
Genere una onda coseno y grafique en otro Waveform Graph. t=0.01 Puntos = 1000.
Grafique en otro Waveform Graph las dos grficas anteriores.

Optativo.
Oscope.
Un osciloscopio digital enva una cadena ilustrada en el subVI Ej37a.
El primer carcter siempre es V. Indica que la informacin que le sigue son los volts por divisin.
El segundo carcter puede ser m o un blanco. El blanco significa que est en Volts, la m, que est
en milivolts.
El tercer y cuarto carcter son dos dgitos correspondientes al valor por volts/divisin en que se
hizo la captura.
El quinto carcter siempre es una T. Indica que la informacin siguiente es el tiempo por divisin.
El sexto carcter puede ser m, M o un blanco. El blanco significa que est en segundos, la m que
est en milisegundos y la M que est en microsegundos.
El sptimo y octavo carcter son dos dgitos correspondientes al valor por tiempo/divisin en que
se hizo la captura.
El noveno carcter siempre es : dos puntos. Usado para separar contextos.
A partir del dcimo y en conjuntos de 4 se enva la informacin la cual oscila entre 0 y 1023,
seguidos de una coma. Se envan 1000 conjuntos separados por coma.
Al finalizar hay un punto ..

Recuerde que un osciloscopio tiene 8 cuadros de alto por 10 cuadros de largo. Asuma que la
horizontal GND est en el punto medio, 512. De lo anterior se desprende la siguiente ecuacin
para determinar los puntos reales.
( ) ( )
512
/ 4 512 Div Volts Entero
Valor

=

Grafique los valores reales sin importar las divisiones
Programacin Bsica en LabVIEW 22
Centro Regional de Optimizacin y Desarrollo de Equipo
( ) 100 / = Div Time dt
XY Graphs.

Ej35
Utilice el ejercicio 34 y en lugar de graficar en un waveform graph utilice un graph XY.

Ejemplo con lecturas.
Abra el archivo Graph.VI y gurdelo como Ej35A. En Ej35A calcule la pendiente de la grfica para
los valores encontrados en el eje Y entre 2 y 4 toneladas. Grafquela en (x
1
,0) y (x
2
,5), utilice el
nodo frmula para calcular los puntos.


Digital Graph.
Es utilizado para graficar diagramas de tiempo.




En el arreglo Binary Representations est la representacin binaria del arreglo Numbers.
La alineacin a la derecha del arreglo Binary Representation facilita la comprensin entre la
relacin de la grfica y los nmeros. Ya que cada columna de este arreglo es una lnea dentro del
graph, representada por Bit X.
Son 8 lneas (Bit 0 a Bit 7) debido al tipo de dato con el que se est trabajando es de 8 bits.
Adems de que en el diagrama se alambra en ports la cantidad de informacin que se tomar del
arreglo para graficar, en este caso 1, es decir, se graficarn 8 bits a la vez, debido a que 8x1=8. Si
ports fuera 2 y el nmero se mantuviera de 8 bits, entonces seran 16 lneas y tomara dos
elementos de Numbers a la vez.
Programacin Bsica en LabVIEW 23
Centro Regional de Optimizacin y Desarrollo de Equipo
As pues cada lnea representa una columna de Binary Representation cuando ports sea 1.
ports entonces especifica la cantidad de elementos a tratar como una unidad entera.

Utilice Dt para ajustar el tiempo entre muestra y muestra dentro del diagrama.

Actividades.
Ej36.
Realice el ejemplo ilustrado.

Intensity Graph.

Son tiles para desplegar datos como superficies, donde el color puede representar altitud,
humedad, temperatura.
Observe el ejemplo Intensity.VI
9. Archivos.

Las operaciones de Escritura y Lectura de archivos pasan dato a y desde archivos. Utilice los VI
localizados en Functions>File I/O para manejar todos los aspectos de archivos, incluyendo:
Abrir y cerrar archivos de datos.
Leer y escribir datos a archivos.
Leer y escribir datos a archivos con formato de hoja de clculo.
Mover y renombrar archivos y directorios.
Cambiar caractersticas de archivo.
Crear, modificar y leer un archivo de configuracin.

Principios.

Una operacin tpica de archivo lleva los siguientes procesos:
1. Crear o abrir un archivo. Indica dnde reside el archivo existente o dnde desea crear el
nuevo archivo al especificar una ruta manualmente o a travs de una caja de dialogo.
Despus de que el archivo se abre, un nmero de referencia representa al archivo.
2. Leer o escribir al archivo.
3. Cerrar el archivo.

La mayora de los VI ejecutan slo un paso en la operacin de I/O.

Formato.

Los VI para las operaciones de archivo dependen del formato de los archivos en cuestin. Puede
leer y escribir en tres formatos: texto, binario y registro de datos. El formato depende de los datos
que se adquieran o crean y las aplicaciones que accedern a los datos.

Si desea hacer a sus datos disponibles a otras aplicaciones, como Excel, utilice archivos
de texto.
Si desea acceder aleatoriamente al archivo o la velocidad y espacio en disco son cruciales,
utilice archivos binarios.
Programacin Bsica en LabVIEW 24
Centro Regional de Optimizacin y Desarrollo de Equipo
Si desea manejar registros complejos de datos o diferentes tipos de datos en LabVIEW,
utilice archivos de registro de datos, porque son la mejor manera de almacenar datos si
desea accederlos slo en LabVIEW.

Una ruta es un tipo de datos de LabVIEW que identifica el lugar de un archivo en disco. La ruta
describe el directorio entre el nivel ms alto del sistema y el archivo, y el nombre del archivo.

Actividades.

Ej38.
Cree un VI con un waveform graph, cinco botones y un men para el tipo de grfica.
El primer botn ser para generar grfica.
El segundo para guardar.
El tercero para abrir.
El cuarto para limpiar.
El quinto para salir.
Genere varias ondas, gurdelas como Waveform y mustrelas. Utilice la extensin WVE.

Ej39.
Repita el ejercicio, pero ahora adems de guardar el waveform guarde tambin el estado del botn
que indica el tipo de grfica. Utilice la extensin CLS.

Ej40.
Repita el ejercicio 38. Pero ahora guarde la onda como SGL en un archivo binario. Utilice la
extensin BIN.

Ej41.
Repita el ejercicio 38, pero ahora que guarde los datos en texto para hoja de datos. Utilice la
extensin TXT. Compare tamaos entre archivos.


Programacin Bsica en LabVIEW 25
Centro Regional de Optimizacin y Desarrollo de Equipo
10. Men.

LabVIEW permite crear mens para cada VI, puede configurar las barras que se mostrarn o se
ocultarn.
Crear Mens.

Puede modificar el men en tiempo de diseo o ejecucin. Para editar el men manualmente se
hace en Edit>Run-Time Menu. Una vez creado se deber mantener el archivo VI en la misma ruta
que el archivo Menu (rtm).
Utilice las funciones situadas en Functions>Application Control> Menu para insertar, borrar y
modificar los elementos del men en tiempo de ejecucin.
Adems puede agregar elementos y separadores de lnea.

Manejo de la seleccin.

Cuando crea un men, debe asignar a cada tem del men un identificador de cadena llamado tag.
Cuando el usuario selecciona un tem, la funcin Get Men Selection devuelve esa tag. Despus
de que se construye el men, una estructura case en el diagrama de bloques determinar la accin
para cada tag.

Si un proceso es muy largo, bloquee el men poniendo un valor de False en la funcin Enable
Menu Tracking para que los usuarios no puedan hacer nada mientras se ejecuta el proceso.
Despus de que se efecta el proceso, alambre un valor de Verdadero a la funcin Enable Menu
Tracking para habilitar la barra y continuar con la ejecucin del programa.

Actividades.
Ej42.
Cree un men llamado menuppal.rtm con los siguientes datos.
Archivo.
Nuevo
Guardar
Salir
Edicin
Copiar
Cortar
Pegar.

Al seleccionar Salir, el programa termina. Al seleccionar cualquier otra opcin deber presentar un
cuadro de dilogo con un mensaje relativo a la accin seleccionada. En el proceso de Guardar
deber, adems, poner un Timer de 10 segundos y tener bloqueado el men mientras se pasa el
tiempo, despus del proceso contine normalmente.
Programacin Bsica en LabVIEW 26
Centro Regional de Optimizacin y Desarrollo de Equipo

11. Puerto Serie.
Panorama General.

El puerto serie es ms difcil que la interfaz por el puerto paralelo en el sentido de que en el primero
tiene que serializar la informacin bit por bit, agregar bit de parada, bit de inicio y bit de paridad,
mientras que en el segundo se enva el byte completo. En la mayora de los casos, cualquier
dispositivo que conecte por el puerto serie necesitar la transmisin serial convertida a paralelo
para poder ser usada. Esto puede ser hecho usando un UART. Las ventajas de usar el la
transferencia de datos serial en lugar del paralelo son las siguientes:

Los cables seriales pueden ser de mayor longitud que los cables paralelos. El puerto serie
transmite un 1 de 3 a -25 voltios y un 0 de +3 a +25 voltios mientras que un puerto paralelo
transmite un 0 como 0 voltios y un 1 como +5 voltios. Por consiguiente, el puerto serial puede
tener una oscilacin mxima de 50V comparado con el puerto paralelo que tiene una oscilacin de
5V. Por consiguiente la prdida del voltaje debido a la longitud del cable no es tanto problema en
los serie que para los paralelos.

No requiere tantos cables como en la transmisin paralela. Si su dispositivo requiere ser instalado
en distancias grandes de la computadora entonces tres cables es ms barato que 19 o 25 cables.
Sin embargo, debe tomar en cuenta el costo de la interfaz de cada terminal.

Aspectos fsicos.

Los dispositivos que utilizan cables seriales para sus comunicaciones son divididos en dos
categoras. stas son DCE (Data Communications Equipment) y DTE (Data Terminal Equipment).
DCE son dispositivos como un mdem y graficador mientras que DTE es una computadora o
terminal.

Las especificaciones elctricas del puerto serie est contenida en el estndar EIA (Electronics
Industry Association) RS232C. Define muchos parmetros:

Un espacio 0 estar entre +3 y +25 V.
Una marca 1 estar entre 3 y 25 V.
La regin entre +3V y 3V es indefinida.
Un voltaje de circuito abierto no deber exceder a 25V en referencia a GND.
La corriente de cortocircuito no deber exceder a 500mA. El manejador deber ser capaz
de manejar esto sin daos.


Esta no es una lista completa del estndar EIA. La capacitancia de las lneas, el baudaje mximo, y
otros tambin son incluidos.
Pines.

Los puertos serie vienen en dos tamaos. El conector tipo D25 y el tipo D9 que son machos en la
parte trasera de la computadora, as que requerir un conector hembra en su dispositivo. En la
tabla se muestra la utilizacin de los pines en cada uno de los conectores.


Programacin Bsica en LabVIEW 27
Centro Regional de Optimizacin y Desarrollo de Equipo
Tabla. Propsito de pines en el protocolo RS-232

D25 D9 Abreviacin Nombre
Pin 2 Pin 3 TD Transmitir Datos
Pin 3 Pin 2 RD Recibir Datos
Pin 4 Pin 7 RTS Requisicin para enviar
Pin 5 Pin 8 CTS Limpiar para enviar
Pin 6 Pin 6 DSR Dato listo
Pin 7 Pin 5 SG Seal de GND
Pin 8 Pin 1 CD Deteccin de carro
Pin 20 Pin 4 DTR Dato terminal listo
Pin 22 Pin 9 RI Indicador de timbrado


Mdems Nulos.
Un mdem nulo es usado para conectar dos DTE esto es comnmente usado como una forma
barata para establecer una pequea red o transferir archivos entre computadoras utilizando
protocolos Zmodem y Xmodem.

El siguiente mtodo es de los ms comunes. Slo requiere tres cables.


Figura 2.7 Conexin para mdem nulo.
Control de flujo.
Si nuestra velocidad de DTE a DCE es algunas veces ms grandes que nuestra velocidad DCE a
DCE la PC puede enviar datos a su mdem a 115,200 BPS. Tarde o temprano los datos tendrn
un sobre flujo en el bfer, as que un control de flujo es usado. El control de flujo tiene dos
variedades: hardware y software.

El control de flujo de software algunas veces es expresado como XON/XOFF. XON es
normalmente indicado por el carcter ASCII 17 y el ASCII 19 es usado para XOFF. Este tipo de
control tiene la ventaja de que no requiere ningn alambre ms. Sin embargo la comunicacin
requiere 10 bits que hace lenta la comunicacin.

El control de hardware es tambin conocido como flujo RTS/CTS. Utiliza dos alambres en el cable
serial en lugar de transmitir caracteres extras en la lnea de datos. Este control de flujo no hace
lenta la comunicacin. Cuando la computadora desea enviar datos activa la lnea RTS y el mdem
activa la seal de CTS y as la computadora enva datos.

Programacin Bsica en LabVIEW 28
Centro Regional de Optimizacin y Desarrollo de Equipo
Direcciones estndares.
En la computadora personal se establecen direcciones fijas para la comunicacin serie. Estas
direcciones se consideran estndares y se utilizan a menudo para la configuracin del UART. En la
tabla se muestran dichas direcciones.

Tabla. Direcciones de los diferentes COM

Nombre Direccin IRQ
COM 1 3F8 4
COM 2 2F8 3
COM 3 3E8 4
COM 4 2E8 3


Programacin Bsica en LabVIEW 29
Centro Regional de Optimizacin y Desarrollo de Equipo
Apndice A.
Instalacin del software.
Instale el software antes de instalar la tarjeta de adquisicin de datos. Siempre tenga a la mano las
notas apropiadas para las instrucciones especficas.

Instalacin del hardware PCI-6503.

Lo siguiente son instrucciones generales para el dispositivo en especfico. Consulte su manual
tcnico o de referencia para instrucciones especficas.

1. Puede instalar su tarjeta en cualquier ranura de expansin PCI a 5V disponible.
2. Apague y desconecte su computadora.
3. Quite la tapa.
4. Quite la cubierta de la ranura de expansin.
5. Toque la parte metlica dentro de la computadora para descargar cualquier electricidad
esttica que puede estar en su ropa o cuerpo.
6. Inserte la tarjeta en la ranura. Debe ser un ajuste apretado, pero no fuerce el dispositivo.
7. Atornille la tarjeta al chasis.
8. Verifique visualmente la instalacin.
9. Ponga la tapa .
10. Conecte su computadora.

Configuracin.
La tarjeta es completamente configurable por software y cumple completamente con la
Especificacin de bus local PCI revisin 2.1. Por consiguiente todos los recursos de la tarjeta son
automticamente configurados por el sistema PCI, incluyendo la direccin base y el nivel de
interrupcin. La direccin base de la tarjeta est mapeada en el espacio de memoria PCI. No
necesita ejecutar ningn paso de configuracin despus de que el sistema se enciende.
Conexiones de seal.
Las conexiones que exceden cualquiera de las tasas mximas de entrada o de salida en la tarjeta
pueden daar la tarjeta y su computadora.

La PCI-6503 tiene 50 pines.

Niveles digitales lgicos.
Las seales mximas de entrada y salidas asumen una fuente de voltaje de 5.0V, el voltaje
mximo absoluto para cada lnea de I/O es de 0.5V a 5.5V con respecto a GND.

Programacin Bsica en LabVIEW 30
Centro Regional de Optimizacin y Desarrollo de Equipo
Programacin Bsica en LabVIEW 31
Distribucin de los pines para la
tarjeta PCI-6503
Centro Regional de Optimizacin y Desarrollo de Equipo

Referencias.


National Instruments LabVIEW User Manual.
National Instruments.
Julio 2000.
Part Number 320999C-01

PCI-DIO-96, PXI-6508 and PCI-6503 User Manual.
National Instruments.
Marzo 1998.
Part Number 320938C-01

LabVIEW for everyone.
Jeffrey Travis.
National Instruments.
Segunda Edicin.
ISBN 0-13-065096-X
Programacin Bsica en LabVIEW 32
Centro Regional de Optimizacin y Desarrollo de Equipo


Autor.


MC Csar Ezequiel Varela Moreno.

cesarv_76@hotmail.com

Maestro en Ciencias en Ingeniera Electrnica.
Egresado del Instituto Tecnolgico de Chihuahua.

Ingeniero en Sistemas Computacionales
Egresado de la Universidad Autnoma de Chihuahua.


Experiencia Profesional

Desde el 2002 a la fecha es Jefe de Proyectos en el rea de Diseo y Desarrollo
de equipo del Centro Regional de Optimizacin y Desarrollo de Equipo.

Durante el 2001 fue catedrtico en la Facultad de Ingeniera de la Universidad
Autnoma de Chihuahua en la materia de Programacin.

















Programacin Bsica en LabVIEW 33
Centro Regional de Optimizacin y Desarrollo de Equipo























Para informacin, favor de comunicarse al departamento de:


GESTIN TECNOLGICA Y VINCULACIN
Av. Homero No. 350, Complejo Industrial Chihuahua, C.P. 31109 Chihuahua, Chih., Mx.
Tel. 4810513 y 4812171,
Tel Direccin: 4817858. Fax: 4810641
www.crodechihuahua.edu.mx


Programacin Bsica en LabVIEW 34