Está en la página 1de 61

SISTEMA DE ADQUISICIN DE DATOS

PARA INGENIERA BIOMEDICA


GUIA DE LABVIEW
Programacin general y uso en Control
Aplicacin en Ingeniera Biomedica
!UBE" #!E$% AL&A!A'
Proyecto de grado presentado como re(uisito
parcial para optar al ttulo de Ingeniero
SACRAMENTO
UNIVERSIDAD ESTATAL DE CALIFORNIA
FACULTAD DE INGENIERIAS
1997
Nota de Acetac!"#
$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
P%e&!de#te de' ()%ado
()%ado
$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
()%ado
$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
INTRODUCCION
Al estudiar pro)undamente la con)iguracin de los sistemas de ad(uisicin de
datos modernos DA* +Data Ac(uisition ,ystem-. /asados en e(uipos PC
+Personal Computer-. se aprecia (ue una de las partes (ue componen dic0os
sistemas. es el so)t1are (uien controla y administra los recursos del
computador. presenta los datos. y participa en el an2lisis
Viendolo de este modo. el so)t1are es un tpico muy importante (ue re(uiere de
especial cuidado Para los sistemas DA* se necesita de un so)t1are de
instrumentacin. (ue sea )le3i/le para )uturos cam/ios. y pre)eri/lemente (ue
sea de )acil mane4o. siendo lo mas poderoso e ilustrati5o posi/le
Programas y lengua4es de programacin (ue cumplan con lo dic0o e3isten en
gran n6mero en el mercado actual. como por e4emplo el Visual Basic. el C. el C7
7. el Visual C77. Pascal. La/Windo1s CVI. La/5ie1. y muc0os otros
con)eccionados espec)icamente para las aplicaciones (ue los necesiten
Para ela/orar los algoritmo de control y toma de datos en los proyectos de
ssmica. se consider (ue el lengua4e m2s apto es el La/VIEW +La/oratory
Virtual Engineering 1or8/enc0-. y las ra9ones son 5arias:
Es muy simple de mane4ar. de/ido a (ue est2 /asado en un nue5o sistema
de programacin gr2)ica. llamada lengua4e G
Es un programa en)ocado 0acia la instrumentacin 5irtual. por lo (ue cuenta
con numerosas 0erramientas de presentacin. en gr2)icas. /otones.
indicadores y controles. los cuales son muy es(uem2ticos y de gran
elegancia Estos seran complicados de reali9ar en /ases como c77 donde el
tiempo para lograr el mismo e)ecto sera muc0as 5eces mayor
Es un programa de muc0o poder donde se cuentan con li/reras
especiali9adas para mane4os de DA*. !edes. Comunicaciones. An2lisis
Estadstico. Comunicacin con Bases de Datos +;til para una automati9acin
de una empresa a ni5el total-
Con este las 0oras de desarrollo de una aplicacin por ingeniero. se reducen
a un ni5el mnimo
Como se programa creando su/rutinas en modulos de /lo(ues. se pueden
usar otros /lo(ues creados anteriormente como aplicaciones por otras
personas
Es un programa (ue permite pasar las aplicaciones entre di)erentes
plata)ormas como &acintos0 y seguir )uncionando
#omando en cuenta todo lo anterior. se considera de gran utilidad para los
estudiantes. los docentes y empleados de la uni5ersidad tener un conocimiento
/2sico del m<todo de programacin y del mane4o de estructuras (ue posee. por
tanto este li/ro trata de ser una gua /2sica. (ue puede usarse para intruducirse
en el mane4o del La/Vie1
,e de4an algunos e4emplos aclaratorios 6tiles en control. dri5ers. y para concluir
se e3plica como )unciona el programa desarrollado so/re La/Vie1 para la
aplicacin de Ingeniera Biomedica para poder asi darle soporte
REQUERIMIENTOS
Como la plata)orma m2s usada en nuestro medio son los PC. en t<rminos de los
mismos. lo mnimo para correr La/Vie1. es:
Un micro =>? con coprocesador Como se re(uieren muc0as operaciones de
punto )lotante. es indispensa/le el coprocesador Los modelo a parir del @>?D3A
en adelante 5ienen con el coprocesador incluido en si mismos
Por uso de memoria. se recomienda usar > megas de !A& mnimo
,i se usa un Demo con A megas en disco duro /asta Para el pa(uete completo
es /ueno disponer entre @B y CB megas de espacio en disco duro
Como se aprecia el re(uerimiento es alto. pero 0oy en da es posi/le conseguir
un computador de este tipo a un precio mnimo. y en decenso da a da
CARGANDO LABVIE*
Despu<s de 0a/er instalado e3itosamente La/Vie1. e3istir2 un grupo de iconos
correspondientes en Windo1s
DEl La/Vie1 es el programa principal
DWIBIC es un programa para con)igurar puertos de tipo GPIB
DWDA*Con) es usado por La/Vie1 para con)igurar las tar4etas inserta/les de la
"acional Instruments (ue se usan en la ad(uisicin de datos

1+ INTRODUCCION AL LABVIE*
El La/Vie1 es un lengua4e de programacin de alto ni5el. de tipo gr2)ico. y
en)ocado al uso en instrumentacin Pero como lengua4e de programacin.
de/ido a (ue cuenta con todas las estructuras. puede ser usado para ela/orar
cual(uier algoritmo (ue se desee. en cual(uier aplicacin. como en an2lisis.
telem2tica. 4uegos. mane4o de te3tos. etc
Cada programa reali9ado en La/Vie1 ser2 llamado Instrumento Virtual +VI-. el
cual como cuales(uier otro ocupa espacio en la memoria del computador
USO DE LA MEMORIA:
La memoria usada la utili9a para cuatro /lo(ues di)erentes como son:
EL PA"EL E!%"#AL: Donde se 5en los datos y se manipulan y controlan
EL DIAG!A&A DE BL%*UE,: En este se aprecia la estructura del programa.
su )uncin y algoritmo. de una )orma gr2)ica en lengua4e G. donde los datos
)luyen a tra5<s de lneas
EL P!%G!A&A C%&PILAD%: Cuando se escri/e en La/Vie1. el algoritmo
escrito de )orma gr2)ica no es e4ecuta/le por el computador. por tanto.
La/Vie1 lo anali9a. y ela/ora un cdigo asem/ler. con /ase en el cdigo
)uente de tipo gr2)ico Esta es una operacin autom2tica (ue ocurre al
e4ecutar el algoritmo. por tanto no es importante entender como sucede esto
Lo (ue si es algo para apreciar. es (ue en este proceso. se encuentran los
errores de con)eccin (ue son mostrados en una lista de errores. donde con
solo darle do/le clic8 al error. se aprecia en el diagrama de /lo(ues. donde
ocurre <ste. para su correccin
L%, DA#%,: Como el algoritmo mane4a datos. re(uiere de un espacio en
memoria para estos. lo (ue 0ace tomar en cuenta (ue el computador usado
de/e tener la memoria su)iciente para mane4arlos Por e4emplo. cuando se
usan grandes matrices en calculos se puede re(uerir de muc0o espacio
"ota: A un programa VI terminado se le puede /orrar el diagrama de /lo(ues
para (ue ocupe menos memoria. y no pueda ser editado. y seguir2 )uncionando
El panel nunca puede ser /orrado
INSTRUMENTOS VIRTUALES
Un programa creado en La/VIEW es llamado como Instrumento Virtual y consta
de tres partes a crear
El Panel )rontal . donde estar2n u/icados todos los indicadores y controles
(ue el usuario podr2 5er cuando el programa este en )uncionamiento Por
e4emplo /otones. perillas. gr2)icas.etc
Barra de
despla9amiento
Gr2)ica
#tulo
Icono
&enus
Paleta de
0erramientas
Boton
Control
El diagrama de /lo(ues muestra el programa en cdigo gr2)ico G. el cual es
el o/4eti5o de aprendi9a4e en un ni5el /2sico. en este li/ro ,e usan en este
diagrama estructuras de programacin. y )lu4o de datos entre las di)erentes
entradas y salidas. a tra5es de lneas En este las su/rutinas son mostradas
como iconos de ca4as negras. con unas entradas y unas salidas
determinadas. donde en el interior se cumple una )uncin espec)ica El )lu4o
se aprecia. como se di/u4ara en un /os(ue4o de sistemas. cuando se 0a/la
de teora de sistemas. donde cada su/sistema se representa como un cuadro
con entradas y salidas
#odos los indicadores y controles u/icados en el panel )rontal est2n
respaldados por un terminal de coneccin en el diagrama de /lo(ues tal como si
se tu/iera un ta/lero de control de una m2(uina o un a5in. donde por el )rente
se 5en los indicadores y por el lado posterior se aprecian todos los ca/les y
terminales de conneccin
El cono de coneccin ,e usa para utili9ar el programa creado como
su/rutina en otro programa. donde el cono ser2 la ca4a negra. y las entradas
son las conecciones a los controles del programa su/rutina. y las salidas son
las conecciones a los indicadores del mismo su/programa Al crear el cono.
se conecta a tra5<s del alam/re de soldadura a los indicadores y controles
en la )orma (ue se desee (ue se distri/uyan las entradas y salidas en la ca4a
negra. tal como en un circuito integrado algunos pines corresponden a
alguna )uncin en <l La idea es crear un sistema de programacin modular.
donde cada rutina creada llame otras rutinas. y estas a su 5es otras de menor
ni5el. en una cadena 4er2r(uica con cual(uier lmite deseado As cuando se
use un mdulo. no se re(uiere sa/er como )unciona interiormente.
simplemente solo /asta conocer sus entradas y salidas para ser as usado
Para sa/er el uso de los su/5is. la 5entana de F0elpG o)rece la in)ormacin
pertinente a las entradas y salidas Esta 5entana se puede o/tener presionando
CtrlD0 o por medio del menu FWindo1sG
Actualmente e3iste una asociacin de usuarios de La/Vie1 donde los miem/ros
estan creando ca4as negras de di)erentes )unciones. las cuales pueden ser
usadas para utilidades propias
PALETAS DE TRABAJO
#anto en el panel )rontal como en el diagrama de /lo(ues. e3iste una paleta de
erramientas. (ue sir5e tanto para editar el VI. o e4ecutarlo seg6n el modo de
tra/a4o (ue se tenga
Cuando se trabaja en modo de ejecucin la paleta es la de la figura.
E4ecutar
&odo
,top
Corrido
sucesi5o
Punto
de paro
&odo de
corrido
Hig0lig0t
Imprimir
Panel
Gra/ar
Panel
Con el /otn ,E-ec)ta%. se corre una 5es el programa Cuando est2
e4ecutando. se cam/ia a rayado como se aprecia en la )igura y aparece un
/otn de ,Sto. con el cual se pede detener el programa "o es
recomendado 0acer esto. es pre)eri/le crear un alagoritmo de paro del
programa. con un /otn destinado esclusi5amente para esto
Algunos programas al terminar de/en de e4ecutar algunas operaciones de
cierre. como puede ser en la programacin de tar4etas de ad(uisin de datos. o
en el cierre de arc0i5os. por tanto si se usa el /otn de stop. este parar2 el
programa totalmente. en el punto en el (ue se encontra/a y no permitir2 (ue
complete sus rutinas de cierre. pudiendo incurrir en errores y perdida de la
in)ormacin
Cuando la )lec0a aparece rota indica (ue 0ay un error en el programa Al 0acer
clic8 se muestra una lista de errores. y al 0acer clic8 en cada uno de los errores
se apreciar2 en el diagrama la u/icacin de la )alla
,Modo. cam/ia entre modo de edicin y modo de e4ecucin As est2 en
modo de e4ecucin
,Co%%!do &)ce&!/o. 0ace (ue el programa e4ecute una 5es tras otra 0asta
(ue se le de un paro con el /oton de stop
,P)#to de a%o. al ser presionado cam/ia a ,0.. as. al ser llamado como
su/rutina. a/rir2 el panel )rontal para mostrar como cam/ia. para encontrar
errores de lgica. o por simple 5isuali9acin
,Modo de co%%!do. Al ser presionado cam/ia a una linea por pasos. as el
programa e4ecutar2 paso a paso cada paso se dar2 al oprimir el icono de un
solo paso
,1!23'!23t. &uestra como )luyen los datos y (ue datos. a tra5<s de las
lneas del diagrama de /lo(uesG
,I4%!4!% Pa#e'. Imprime el panel )rontal actual cuando termina de e4ecutar
el programa
,G%a5a% Pa#e'. Almacena en un arc0i5o L%G el estado actual del panel
)rontal
En el modo de edicin la paleta es la siguiente.
E4ecucin
&odo
%perador
Posicionador
#e3to
Alam/rador
Color
,Oe%ado%. ,ir5e para accionar los controles e indicadores
,Po&!c!o#ado%. ,ir5e para cam/iar de posicin los di)erentes elementos en
las di)erentes pantallas #am/i<n permite cam/iar el tamaIo de estos
,Te6to. Permite crear te3tos y eti(uetas. tanto como cam/iar los 5alores de
las escalas de las gr2)icas
,A'a45%ado%. ,ir5e para conectar los elementos en el diagrama de /lo(ues.
y para conectar los controles e indicadores a los pines del cono del
programa
,Co'o%. Permite colorear los di)erentes elementos
MENUS DE TRABAJO
Haciendo clic8 en los menus superiores se aprecian las aplicaciones necesarias
para tra/a4ar con La/VIEW. como gra/ar o cargar programas. como editarlos.
tipos de letra etc Los menus se muestran a continuacin
F!'e+ En este men6 se encuentran las 0erramientas para el mane4o de
arc0i5amiento. impresin. y guardado de in)ormacin de los los programas
creados en La/Vie1
En el menu Ed!t se tienen los comandos para cortar. copiar. pegar y /orrar
partesJ eliminar ca/les malos y editar controlesJ alinear y distri/uir o/4etosJ
cam/iar o/4etos entre di)erentes planosJ y dar las )re)erencias de mane4o del
La/Vie1
En el menu Oe%ate se encuentran erramientas para e4ecutar y detener los
programas. asi como cam/iar el modo de tra/a4o. y 0acer (ue todos los 5alores
en los controles e indicadores (ueden como 5alores iniciales al ser guardado el
programa
En el menu Co#t%o'& aparecen todos los tipos de controles e indicadores (ue
se pueden colocar en el panel )rontal. como son:
K "um<ricos: Permiten la entrada y salida de datos y 5alores medi/les de tipo
num<rico. ya sea en un n6mero real. enteros. naturales positi5os Por e4emplo
un medidor de ni5el gra)icado como un tan(ue. donde el ni5el es el 5alor dado.
o un termmetro. donde la temperatura es un 5aria/le continua
A Boleanos: Permiten la salida y la entrada de datos de tipo discreto. onDo)).
como es el caso de los pulsadores. s1ic0es. ledLs indicadores
= ,tring M #a/le: permite entrar y sacar datos de tipo al)anum<rico. 5istos en un
indicador o control. o en una ta/la (ue tam/ien puede cumplir las dos
)unciones
@ List M !ing: ,on controles e indicadores (ue presentan listas de opciones
donde el item seleccionado se entrega como un 5alor al programa
C Array M Clusters: Permite agrupar datos para )ormar matrices ya sean de
entrada o salida Estas matrices pueden ser de tipo num<rico. o de tipo /oleano
#am/ien se pueden agrupar datos de di)erentes tipos de control o de di)erentes
tipos de indicador. en un cluster. el cual es una agrupacin (ue posee una sola
terminal en el diagrama de /lo(ues. seme4ante a un conector de un computador.
el cual siendo un solo conector lle5a muc0as lineas (ue lle5an di)erentes
seIales en las matrices todas las seIales son del mismo tipo
? Grap0: Controles e indicadores de gr2)icas Pueden ser gr2)icas de /arrido.
gra)icas NO. o de tonos de colores
P Pat0 M !e)num: Controles 6tiles en el mane4o de arc0i5os
> Decorations: ,e disponen alementos de decorati5os para el panel )rontal
Q Controles: Adem2s de poderse u/icar los controles e indicadores
presentados en los menus anteriores. tam/i<n se pueden usar controles
editados por el programador. como por e4emplo el di/u4o de una /om/a. o un
pistn neum2tico
KB Error Cluster: Controles de entrada y salida. para par2metros de algoritmos
mane4adores de errores
KK Visa #ransition: Utiles para comunicacin VI,A "o son de uso normal para
principiantes
En el men6 *!#do7& se encuentran las 0erramientas para 0acer cam/ios entre
5entanas de tra/a4o
&ostrar diagrama o panel. seg6n la 5entana en la (ue se encuentre
&ostrar la 0istoria de los cam/ios en el programa
Visuali9ar la lista de los errores (ue posee el VI o programa
Desplegar el contenido del Clip/oard
&ostrar el orden 4erar(ueco. en el cual un programa llama su/Vis
Adem2s 0ay 0erramientas para ordenar las 5entanas. a/rir programas (ue (ue
son usados por el VI principal. y otros

El menu Te6t se encuentran todas las utilidades para seleccionar tipos. colores.
estilos y tamaIos de letra
El menu 1e' presenta las ayudas necesarias so/re el programa. y o)rece la
opcion para desplegar una 5entana donde se e3plica cada o/4eto solo con
seIalarlo En la 5entana mencionada se e3plica como son las entradas y salidas
de cada su/Vi. y de cada )uncin
El menu de F)#ct!o#& o)rece todas las posi/ilidades de )unciones (ue se
pueden utili9ar en el diagrama de /lo(ues. donde al 0acer clic8 se esco4e y
u/ica dentro del programa
K ,tructs M Constants: Contiene las estructuras /2sicas de programacin como
son las secuencias. los casos. los ciclos EorD"e3t y &ientras. las 5aria/les de
tipo glo/al y local. y las constantes de todo tipo. como son las num<ricas. las
al)anum<ricas. las /oleanas. y algunos numeros especiales. FeF por e4emplo
A Arit0metic: Presenta las operaciones /2sicas aritm<ticas como son suma.
resta. multiplicacin. n6meros al a9ar. 5alor a/soluto. compuertas and. or. not y
muc0as otras Para 5er la )uncin de cada una usar la 5entana de Help RctrlDHS
= #rig M Log: presenta )unciones trigonometricas y logaritmicas
@ Comparison: Eunciones de comparacin (ue de5uel5en un 5alor de 5erdadero
o )also seg6n se cumpla dic0a comparacin
C Con5ersion: Con5ersiones de tipos de 5aria/les. de un )ormato a otro. por
e4emplo con5ertir un n6mero a otro (ue ocupe =A /its en memoria. o con5ertir
un n6mero a una matri9 de /oleanos cuya representacin en /inario
corresponda al n6mero
? ,tring: presenta 0erramientas para manipular cadenas de caracteres Por
e4emplo conn5ertir todos los caracteres a may6sculas. o reportar el 5alor de la
longitud de la cadena
P Array M Cluster: &ane4a las 0erramientas para el uso de matrices y
agrupaciones E4 dar las dimensiones de una matri9. en otra de una sola
dimensin E4 agrupar un con4unto de ca/les en uno solo par manipular menos
lneas El mane4o de matrices y clusters ser2 me4or esplicado adelante
> Eile IT%: Para el mane4o de arc0i5os y almacenamiento de in)ormacin en
disco

Q #ime M Dialog: !eportadores de tiempo. esperas. )ec0as. y cuadros (ue dan
anuncios
KB &iscellaneous: Blo(ues de llamada a codigos en C. o a li/reras din2micas
de 1indo1s DLL Con5ersin de datos a /inarioJ mane4adores de ocurrencias
para ordenar el )lu4o de datos O otras )unciones de uso mas a5an9ado

KK Vi: Para llamar /lo(ues creados como rutinas
KA Analysis: Eunciones a5an9adas de procesamiento de seIales. estadsticas.
2lge/ra lineal. )iltros. regresin y otras (ue re(uieren de un /uen entendimiento
matem2tico
K= DA*: Para la ad(uisicin de datos. lectura y escritura de datos a las tar4etas
inserta/les. toma y control de seIales an2logas y digitales. y control de los
circuitos contadores (ue 0ay en algunas tar4etas
K@ Instrument IT%: Comunicacin con instrumentos medidores a tra5<s de
puertos GPIB. serial o VI,A
KC "et1or8: Para la comunicacin de computadores en red. y enlace entre
di)erentes aplicaciones. como es el caso del DDE. Dynamic Data E3c0ange. (ue
puede ser5ir para enla9ar aplicaciones de La/Vie1 con Bases de datos como
ACCE,. para actuali9arlas simultaneamente los 0ec0os 5an ocurriendo %tros
parametros son los de comunicacin #CP y UDP para comunicacin en red
#odo esto re(uiere de un aprendi9a4e especial
K? #utorial Erramientas para el uso de e4emplos de ad(uisicin de datos sin
tener las tar4etas inserta/les
KP Utility: Utiles para el mane4o y an2lisis de errores en los programas creados
Utiles para el control de los VI +A/rir un VI por e4emplo- &ane4adores
especiales de arc0i5os &ane4adores de puertos inport y outport

DDE +Dynamic Data E3c0ange-
PC +Personal Computer-.
VI +Instrumento Virtual-8
La/VIEW +La/oratory Virtual Engineering 1or8/enc0-.
DA* +Data Ac(uisition ,ystem-.
9+ COMO CREAR PROGRAMAS
PANEL FRONTAL
Al desarrollar una aplicacin o una su/rutina primero se de/e tener un claro
conocimiento de (ue 5alores se 5an a utili9ar. cuales 5an a ser las entradas y
cuales las salidas. para as de)inir como se 5an a entrar y sacar estos 5alores
Por e4emplo si simplemente se desea reali9ar un programa (ue tome dos
n6meros y entregue como resultado la suma de estos 0asta (ue se pulse un
/otn de stop. al )inal diga (ue termin. se sa/e (ue de/e 0a/er un instrumento
de control para la entrada de cada 5alor. y un indicador (ue muestre el
resultado
Crear lo anterior se logra simplemente u/icandose en el panel )rontal y sacando
dos controles y un indicador del menu Controls Esto se 0ace uno a uno. y se
de/e ir nom/rando cada elemento en el la/el. a medida (ue se 5an
posicionando
Control
num<rico
Control
Boleano
Indicador
"um<rico
La/el
,e aprecia como en estos instrumentos digitales se di)erencian los controles del
indicador por(ue estos cuentan con unas )lec0as para manipularlos cuando el
programa est2 corriendo #am/i<n se pueden cam/iar escri/iendo so/re ellos
Estos controles se pueden con)igurar sacando el PopDmenu de cada uno.
seIalandolo y oprimiendo el /otn derec0o del mouse. as si por e4emplo se
comete un error al nom/rar el instrumento y no se alcan9a a escri/ir el nom/re.
en este menu en la su/seccin &3o78 'a5e'8 se puede 0acer (ue reapare9ca la
marca para as escri/ir so/re ella
DIAGRAMA DE BLOQUES
En <ste se 5e el )lu4o del programa. y se compone de cinco tipos de elementos
Las terminales de coneccin de los indicadores y de los controles del panel
)rontal ,e nota (ue las lneas del di/u4o de la coneccin de los controles es
m2s gruesa (ue la de los indicadores. para di)erenciarlos
Las constantes
Las )unciones y ca4as negras. donde se pocesan las seIales
Las estructuras de programacin
Los ca/les (ue conducen las di)erentes seIales. los cuales 5aran seg6n la
seIal (ue conducen
Estructura
#erminal del
control
#erminal del
indicador
Lineas de
seIal
Euncin
Ca4a negra
Constante
Al)anum<rica
Para reali9ar el diagrama de /lo(ues se /uscan las estructuras necesarias en el
menu de )unctions. estructuras y constantes. donde se encuentra el ciclo
mientras +W0ile-. el cual ser2 esplicado luego
Posteriormente se u/ican las )unciones necesarias en el menu de Eunctions.
como en este caso el sumador y el negador en el su/menu arit0metic. y el
cuadro de di2logo en el su/menu #ime M Dialog
Los terminales aparecen autom2ticamente en el digrama de /lo(ues al armar el
panel )rontal
Por 6ltimo se 0acen las conecciones con ayuda de la 0erramienta de
alam/rado
CONECCION DE ICONO
,i se desea (ue el programa reali9ado sir5a como su/rutina para otro VI de
mayor 4erar(ua. como primero se de/e reali9ar un Icono (ue represente el VI. y
luego 0acer las conecciones entre los terminales del cono y los istrumentos del
panel )rontal Ca/e anotar (ue se conectan solo los deseados Los (ue no se
conecten tomaran el 5alor (ue poseen como De)ault. o 5alor propio inicial
correspondiente. para las )unciones y operaciones (ue se de/an reali9ar
Para editar el icono se selecciona con el /otn derec0o del mouse en el icono
del panel )rontal y se selecciona :Ed!t Ico#; En este editor se puede di/u4ar el
cono deseado

Despu<s de tener el icono deseado se muestran los conectores por medio de
:&3o7 co##ecto%; en el mismo popDup menu y con la 0erramienta de alam/rar
se 0acen las conecciones con los dispositi5os del panel 0aciendo primero clic8
en el indicador o control y luego en el pin del cono deseado Es recomenda/le
conectar las entradas a la i9(uierda y las salidas a la derec0a
,i se re(uieren mas conectores. se puede cam/iar el es(uema de conecciones.
por medio de Patte%#& en el popDup menu. cuando est2 mostrando los pines
Cuando est2 lista la coneccin la 5entana de 0elp muestra como (uedan las
entradas y salidas

Luego de terminar el programa solo es sal5arlo
GUARDAR PROGRAMAS Y CARGARLOS
P!%PIEDADE, DE L%, VI
Antes de guardar un VI. se puede con)igurar <ste para (ue cuando sea cargado
e4ecute inmediatamente. sin presionar ning6n /otn ,e puede tam/i<n lograr
(ue cuando e4ecute. no muestre paletas. o la /arra de ttulo. (ue (uede
centrado. o (ue no se le pueda modi)icar el tamaIo a la 5entana del panel #odo
esto por medio de la opcin VI<Set) en el popDup men6 del icono principal En
la lista se escoge el tipo de par2metro a con)igurar +1indo1. e3ecution. 0istory-
LI,#A
DI!EC#%!I%, DE AL&ACE"A&IE"#%
Por mane4o de memoria. la/5ie1 permite almacenar los datos. programas y
otros. en dos tipos di)erentes de directorios. entendi/les por La/Vie1
Los directorios normales en los (ue se almacenan los programas con
e3tensin 5i. y el nom/re no puede tener m2s de oc0o caracteres para los
PC
E3isten un arc0i5o ll/ el cual es una li/reria en la (ue solo La/Vie1 es capa9
de almacenar. y el cual el la entiende como un directorio #iene la 5enta4a de
tener internamente comprimidos los programas. economi9ando memoria en
disco Adem2s los nom/res de los programas no tienen restricciones
%PCI%" DE GUA!DA!
Por medio de la opcin ,AVE A,. se despliega un menu con los directorios y
las li/rerias en las cuales se puede almacenar programas Dando clic8 en "EW.
se puede crear un directorio nue5o o una li/rera nue5a
"om/re
Directorios
Li/rerias
Directorio
Actual
Dri5e
Crear
Directorio
o Li/reria
#ipo de
arc0i5o
El proceso para cargar es de la misma )orma. por medio de %PE"
El comando ,a5e 1it0 %ptions permite gra/ar en una li/rera todos los arc0i5os
re(ueridos para correr una aplicacin. pero esto corresponde a un ni5el m2s
a5an9ado
=+ MANE(O DE DATOS EN UN VI
TIPOS DE VARIABLES Y DATOS NUMRICOS
"U&E!% DE BI#, E" U" "U&E!%
El computador posee una memoria compuesta de una gran lista de n6meros. los
cuales son llamados /ytes. (ue son un con4unto de unos o ceros. llamados /its
Cada /yte se compone de oc0o /its los cuales pueden representar un n6mero
de B a ACC Para poder almacenar n6meros mayore se re(uere de m2s /ytes.
donde se tengan K? o =A /its Este n6mero se relaciona con el n6mero de /its
con los (ue puede tra/a4ar el microprocesador del computador. en cuanto a la
5elocidad de operacin Adem2s un n6mero de m2s /its ocupa mayor espacio
en memoria
#omando en cuenta esto. si se desea mane4ar el AC>. y se usa un /yte +> /its-.
el n6mero o/tenido es ACC. perdiendo toda la e3actitud ,e de/en usar K?/its
,IG"% E" EL "U&E!%
Como se tiene un cdigo /inario. 0ay m<todos para dar el caracter de positi5o o
negati5o a un n6mero. de4ando /its (ue representen el signo Cuando se opera
con n6meros con signo el m<todo es di)erente a como se 0ace con n6meros sin
signo
"U&E!%, E!ACCI%"A!I%,
Igual (ue con el pro/lema del signo. se re(uieren de algunos m<todos para
representar la coma en un cdigo /inario. y las operaciones tam/i<n 5aran De
0ec0o se re(uiere de muc0os m2s c2lculos para un microprocesador para
sumar dos n6meros de coma )lotante +(ue posean coma. )raccionarios-. (ue
para sumar dos enteros sin signo Para esto el microprocesador se 5ale del
coprocesador matem2tico. (ue 0ace operaciones de coma )lotante a gran
5elocidad Los n6meros de coma )lotante dependen del n6mero de /its. para
tener una mayor e3actitud
,eg6n lo anterior 0ay n6meros de tipo entero UIL de >. K? y =A /its. de tipo sin
signo +unsigned U- de >. K?. =A. o de coma )lotante de tipo simple +,GL K?-.
do/le +DBL =A-. y E3tendido +EN# ?@ /its- Igualmene n6meros comple4os
simples. do/les y e3tendidos
El tipo de n6mero se aprecia en la terminal de coneccin de los controles o
indicadores. pues aparece inscrito. y el color de las conecciones de punto
)lotante son anaran4adas o ro4as. mientras (ue en los enteros y sin signo son
a9ules
,e recomienda usar datos de menor n6mero de /its. siempre y cuando no se
pierda precisin. para (ue no se ocupe muc0a memoria Los c2lculos de punto
)lotante restan 5elocidad
El tipo de dato (ue mane4an los indicadores y controles se con)igura en el popD
up menu de cada control por la opcin %e%e&e#tat!o#. igualmente con las
constantes
DATOS BOLEANOS Y ALFANUMERICOS
Los datos /oleanos tam/i<n tienen su tipo de conector Para /oleanos El color
de las conecciones y los ca/les es de color 5erde. y para las de tipo
al)anum<rico son de color rosado
MATRICES
Las matrices son con4untos de datos de una misma especie Para crear una
matri9 se u/ica en el panel )rontal un cuadro de matri9 +Array o arreglo- sacado
del men6 A!!AO M CLU,#E!. y dentro se u/ica el control o indicador (ue se
mostrar2 ,e puede estirar el cuadro para (ue muestre 5arios datos
pertenecientes a la misma matri9 ,i se estira el display lateral se aumenta el
n6mero de dimensiones
El conector ser2 uno solo para la matri9 con todos los datos. y se di)erencia de
los otros conectores por tener el tipo de datos di/u4ado entre V W. en lugar de un
recuadro. as se puede poseer una matri9 de cual(uier clase de n6mero. sea
do/le. al)anum<rico. /oleano. etc
Las lneas o ca/les (ue conducen matrices son m2s gruesos y aumentan de
espesor seg6n sea el n6mero de dimensiones (ue mane4en

Cuadro de &atri9
Dimensin
X dim
Control
AGRUPACIONES O ESTRUCTURAS
Las agrupaciones o estructuras son con4untos de datos pero de di)erente tipo
Para crear una agrupacin se u/ica en el panel )rontal un cuadro de agrupacin
+cluster o estructura- sacado del men6 A!!AO M CLU,#E!. y dentro se u/ican
los controles o indicadores (ue se mostrar2n
El conector ser2 uno solo para la agrupacin con todos los datos. y se
di)erencia de los otros conectores por tener di/u4ado unos cuadritos. en lugar
del tipo de dato. as se puede poseer una agrupacin con cual(uier clase de
n6meros. sean do/les. al)anum<ricos. /oleanos. todos me9clados. tal como se
agrupan un con4unto de ca/les del circuito el<ctrico de un automo5il. donde
cada ca/lecito dentro del ca/le grande lle5a un tipo de dato. y se conecta a un
toma donde cada pin tiene un uso. pero en total un solo toma
Las lneas o ca/les (ue conducen agrupaciones son m2s gruesos y parecen
como mangueras con /ur/u4as
#am/i<n se pueden crear matrices de agrupaciones. y agrupaciones de
matrices

Cuadro de
Cluster
Control
CABLES DE TRASMISIN
Como se 0a mencionado los ca/les lle5an la in)ormacin de un lado a otro El
ca/le cam/ia seg6n el dato (ue lle5e. pero esta es una opcin autom2tica (ue
sir5e para 5isuali9ar en el momento de 0acer las conecciones
Lnea de
agrupacin
Lnea de dato
normal
Lnea de
/oleano
Lnea de
al)anum<rico
Lneas de
matrices K
dimensin
Lneas de
matrices =
dimensines
POLIMORFISMO
Como se 0a mencionado e3isten n6meros con di)erente )ormato de
representacin. y seg6n esto al sumar u operar con dos n6meros de di)erente
clase no es correcto ,i se trata de sumar un n6mero unsignado de K? y uno de
> /its. no se tendr2 un resultado correcto Como en el lengua4e C. para 0acer
este tipo de operaciones se de/e con5ertir el de menor precisin a la mayor
para no perder e3actitud en el resultado Una di5isin siempre genera n6meros
de punto )lotante. por tanto lo correcto es usar este tipo de 5aria/les Para
con5ertir datos se usa un /lo(ue especial. el cual se encuentra en el menu de
)unciones de con5ersin
,in em/argo La/Vie1 permite parra muc0as )unciones operar con n6meros de
di)erente clase en la entrada. sin tomarse como un error (ue impida la e4ecucin
del programa. lo (ue se llama polimor)ismo Cuando esto sucede se aprecia un
punto gris +dot- en la coneccin. (ue indica el con)licto &irar di/u4o en la
e3plicacin del diagrama de /lo(ues
FLUJO DE DATOS EN FUNCIONES
A di)erencia de los lengua4es escritos en algoritmo de te3to continuo. el La/Vie1
es un lengua4e (ue en cierta )orma se puede llamar multiproceso. pues puede
e4ecutar 5arias rutinas al mismo tiempo. esto se logra por(ue el procesador
gasta partes de tiempo en cada rutina. dentro de un inter5alo de tiempo As
seg6n un sistema de prioridades se 5a e4ecutando parte de cada programa
Como se 5e en la )igura cuando se corre el programa los dos ciclos corren
simultaneamente. +cosa (ue no es cierta en t<rminos de nanosegundos. pero se
puede a)irmar en segundos- Para 0acer (ue un ciclo corra despu<s de otro se
re(uiere de una estructura (ue permita esto como es la de secuencia. donde
dentro de cada cuadro se u/ica el ciclo (ue se 5a a reali9ar
El )lu4o de datos a tra5<s del programa. se 0ace a tra5<s de los ca/les (ue
lle5an la in)ormacin a las )unciones y a los datos de control a las estructuras
Una )uncin no se e4ecuta sino 0asta (ue 0an llegado todos los datos de
entrada. as. en la )igura el signo de menor arro4ar2 un dato de 5erdadero o
)also solo cuando 0allan llegado los datos de entrada a esta )uncin
Los datos de salida solo sur4en cuando 0a cumplido la )incin su operacin. as
mismo ocurre con las estructuras %sea (ue el dato de salida de la estructura
)luir2 al resto del programa cuando esta 0alla concluido. para el caso de la
)igura. cuando el ciclo 0aya cumplido todo su n6mero de 5ueltas
,e puede usar un ciclo W0ile. o un EorD"e3t para acomular datos en la )rontera
de salida. y as cuando terminen las iteraciones. tener una matri9 como
resultado. lo (ue se logra dando clic8 con el /oton derec0o en la coneccin de
salida del ciclo y seleccionando ,E#a5'e I#de6!#2.
Con dos ciclos anidados se tendr2 una matri9 de dos dimensiones de tamaIo
seg6n el n6mero de 5ueltas
Para (ue no almacene datos en la )rontera. seleccionar ,D!&a5'e I#de6!#2.. en
el mismo popDup mun6
Para 5er como )luyen los datos a tra5<s de el diagrama de /lo(ues se puede
0acer clic8 en el /oton de 0ig0Dlig0t u/icado en la paleta de 0erramientas. para
5er como unos puntos luminosos indican los mo5imientos en dic0o diagrama
,i se desea (ue esta re5isin se 0aga paso a paso. se de/e presionar el icono
de marc0a a pasos. y presionar en el cono de un paso para o/tener el paso
siguiente
Cuando se llega a una su/rutina. normalmente no se 5e lo (ue ocurre adentro
,i se desea (ue cuando se e4ecute <sta por(ue llegan los datos a ella se a/ra
el panel de esta y se detenga. para 5er el )lu4o dentro. se de/e gra/ar <sta con
el cono de Pa%o co# L'a4ada :+++; Cuando esto se 0ace el cono cam/ia a ,0.
Hig0Dlig0t
Paro cuando
es llamado
A5an9ar
paso a paso
A5an9ar un
paso
>+
ESTRUCTURAS ? ELEMENTOS DE PROGRAMACIN
Para reali9ar un programa dentro de cual(uier lengua4e se re(uiere de conocer
el mane4o de las estructuras (ue go/iernan un algoritmo En el La/Vie1 como
lengua4e tam/ien cunta con estas
La estructuras en La/Vie1 son:
Los ciclos W0ile
Los ciclos EorD"e3t
Los cuadros de casos
Las secuencias
%tros elementos de programacin son las 5aria/les. (ue pueden ser de tipo
glo/al o local. y los cuadros de )rmula
LOS CICLOS WHILE
GE"E!AL:
,ir5en para 0acer (ue una secuencia de instrucciones se repitan una cantidad
de 5eces. siempre y cuando una a)irmacin sea 5erdadera En el La/Vie1 se
e4ecutar2n las )unciones (ue se encuentren dentro del cuadro de ciclo. tomando
los 5alores (ue (uedaron almacenados en la )rontera de entrada. y sacando los
resultados a la )rontera de salida Por e4emplo si se desea contar a partir de un
n6mero UaL. durante una cantidad de 5eces U/L. e ir mostrando el n6mero de
conteo en un indicador UdL. y 5er el 6ltimo n6mero contado en UcL. el programa
sera el siguiente
El t<rmino UiL en el ciclo es un contador (ue se incrementa una unidad cada 5es
(ue se repite el ciclo
La )lec0a circular es el parametro (ue al reci5ir un 5alor de true +5erdadero-.
permite repetir el ciclo. y al reci/ir un )also. lo detiene para (ue el dato (ue 0aya
en la )rontera de salida 5alla al indicador c


Los datos a. y / solo llegan una 5es a )rontera de entrada y alli (uedan
almacenados en un /u))er para ser usados todas las 5eces (ue el ciclo repita
Estos datos siempre ser2n iguales
En el programa se sumar2 en cada loop el 5alor de UaL con el contador (ue en
cada iteracin es mayor en uno El dato se mostrar2 en UdL. y se lle5ar2 a la
)rontera de salida. donde se almacena 0asta (ue termine el ciclo En la iteracin
siguiente un nue5o dato llega a la )rontera /orrando el anterior. as cuando el
loop para. solo el ultimo 5alr pasa a UcL
Constantemente se e5alua si el n6mero U/L es mayor o igual al contador
Cuando este contador alcan9a a /. la comparacin se 5uel5e )alsa y el ciclo se
detiene

I"DENI"G:
Los ciclos se pueden utili9ar para crear matrices simplemente acomulando los
datos en la )rontera de salida. sin permitir (ue el 6ltimo /orre el primero. y m2s
/ien apilandolos uno tras otro en matri9 Esto se logra sacando el popDup men6
de el punto negro de la )rontera de salida. el cual es el elemento de memoria o
/u))er. y seleccionande FEna/le inde3ingG ,e aprecia (ue el ca/le de salida
a0ora es mas grueso. y de/e lle5ar los datos a un indicador de matri9
,HIE# !EGI,#E!:
,e puede 0acer (ue los resultados de un ciclo sir5an como datos para la
pr3ima iteracin. mediante unas memorias llamadas ,0i)t !egister. las cuales
se crean sacando el popDup men6 del ciclo en una de las )ronteras ,e crean
unas memorias en las )ronteras de entrada y salida Desp6es del ciclo el dato
resultado colocado en el s0i)t de la )rontera de salida. pasa a ocupar el lugar del
s0i)t de la )rontera de entrada para participar en las )unciones del ciclo el tipo
de dato mane4ado puede ser cual(uiera. como se 5e en el e4emplo. se mane4a
un dato /oleano de 5erdadero )also
El dato inicial siempre de/e ser de)inido. pues en la primera iteracin estas
memorias de entrada se encuentran 5acas Esto se logra conectando un 5alor a
las memorias
En el e4emplo primero se le agrega un U)alsoL al s0i)t. despu<s en el ciclo es
negado y el resultado U5erdaderoL se muestra en un /om/illo indicador UrL. y se
coloca en el s0i)t de salida. el cual ser2 el pro3imo 5alor en el s0i)t de entrada.
en el pr3imo ciclo ,e toma el 5alor del s0i)t de entrada. se niega. y se muestra
en el indicador U)alsoL y de nue5o al s0i)t de salida Asi sucesi5amente. se tiene
como resultado un tren de pulsos )also 5erdadero y un /om/illo titilando
Es posi/le almacenar no solo datos de la 6ltima iteracin. sino de la pen6ltima.
y muc0as anteriores. agregando s0i)tLs a la entrada. por medio del popDup men6
del s0i)t. con Add S3!@t Re2!&te% Asi el e4emplo muestra como tener una
secuencia donde se genera una cantidad de n6meros al a9ar y se calcula el
promedio de los tres 6ltimos n6meros El indicador UdL muestra el 5alor actual al
a9ar y los s0i)t almacenan los dos anteriores Para el caso inicial estos se llenan
con cero El resultado del n6mero al a9ar se coloca en el s0i)t de salida para
(ue en la pr3ima iteracin pase a la entrada del 5alor anterior. y en el otro ciclo
pase al trasDanterior
CICLO FOR-NEXT
,e comporta similar al ciclo W0ile Este 0ace un n6mero de)inido de iteraciones
el cual esta dado por el 5alor (ue se coloca en el parametro U"L Este siempre
de/e ser de)inido. pues de no suceder as el programa no corre
#am/i<n se puede usar para crear matrices. y tam/i<n puede usar 5alores de
ciclos anteriores con los ,0i)t register #iene la des5enta4a respecto al ciclo
10ile de tener (ue cumplir todas las iteraciones para terminar. mientras (ue en
el 10ile. se termina dependiendo de una condicin. por tanto se puede crear un
algoritmo (ue cuando detecte un error termine el ciclo &ientras (ue el )orDne3t
es un ciclo ciego. el 10ile siempre se est2 c0e(ueando

El ciclo EorD"e3tD tam/i<n cunta con un elemento UiL (ue sir5e de contador para
decir en (ue ciclo 5a
El programa anteriormente reali9ado con un ciclo W0ile es e(ui5alente al
mostrado en la )igura A <ste se le 0a agregado un contador (ue suma un 5alor
inicial U0L con el contador. para mostrar en el indicador FiGDBL. un n6mero (ue 5a
desde 0 0asta 07/ / es el n6mero de 5eces (ue se e4ecuta el ciclo por ser el
5alor (ue entra a U"L
CUADROS DE CASOS CASE
E, una estructura de comparacin y e4ecucin condicionada donde de acuerdo
a alg6n par2metro se reali9an las operaciones de un cuadro u otro ,i el
par2metro de condicin es del tipo 5erdaderoD)also cuando <ste es 5erdadero se
e4ecuta un contenido. y cuando es )also se e4ecuta otro De esta )orma solo son
posi/le dos opciones de e4ecucin
,i el parametro es un n6mero. se e4ecuta un cuadro cuyo n6mero de
identi)icacin corresponde al 5alor de entrada En este caso pueden 0a/er
tantas opciones de e4ecuciones como se desee
Para o/tener esta estructura. /uscarla en el su/men6 de e&t%)ct)%a& A
co#&ta#te&. en el men6 de )unciones
Indicador
de n6mero
de caso


Para agregar un cuadro de caso cuando se usa un par2metro de seleccin
num<rico. solo /asta seleccionar el popDup men6 de la estructura. dando clic8
con el /otn derec0o y seleccionando FAdd Case A)terG para un caso de n6mero
siguiente. o FAdd Case Be)oreG Dentro de este pop men6. se encuentran otros
par2metros de control de estas estructuras
Para 5er el contenido de cada caso. solo /asta seleccionarlo con las )lec0as del
indicador del caso
En el e4emplo se aprecian los cuadros de caso de tipo /oleano y los de tipo
Fs1itc0G donde la entrada es num<rica Con solo conectar la entrada. se crea el
tipo de caso Para cada caso en el e4emplo. se conecta una constante a el
indicador. (ue corresponde al caso (ue se e4ecuta
LAS SECUENCIAS
Como el La/Vie1 es un lengua4e de tipo multiproceso. puede e4ecutar 5arias
partes del programa simultaneamente Adem2s las )unciones se 5an operando
cuando llegan todos los par2metros de entrada de cada una lo (ue no da muc0a
certe9a de (ue )uncin se reali9a primero Pero si por alguna ra9n se desea
(ue un cun4unto de operaciones se reali9e antes (ue otro. se puede agregar
una estructura de secuencias. la cual e4ecuta el contenido del primer cuadro.
luego el del segundo. y as sucesi5amente tal como en una cinta de )otos para
cine. cada )oto sigue a la otra
Para agregar un cuadro adicional tal camo en las estructuras case. se logra por
medio del popDup men6 en el /orde del marco. Add Erame
Para seleccionar el cuadro en el (ue se edita se usa el indicador en el e3tremo
superior del marco
Un truco posi/le para lograr (ue una )uncin siga a la otra sin usar cuadros de
secuencias. es usando ca/les (ue delimiten un )lu4o o/ligatorio

En el e4emplo se aprecian dos ciclos los cuales al e4ecutarlos lo 0acen
simultaneamente. as al presionar el /otn de estop de cada uno. se detienen
independientemente Los ciclos simplemente cuentan n6meros
,i se desea (ue primero pase el ciclo uno y al presionar el estop de <ste pase
el segundo. se puede lograr tal e)ecto con los cuadros de secuencia as:
Indicador de
n6mero de
cuadro

El mismo e)ecto se logra en algunos casos con el truco antes mencionado.
como en la )igura. pero no siempre es com5eniente. por lo (ue es me4or usar la
secuencia. adem2s de (ue <sta reduce la e3tensin del diagrama

VARIABLES
Los parametros de entrada para una )uncin pueden lograrse a tra5<s de
controles. indicadores. e incluso 5aria/les Las salidas pueden usarse para
mostrarse en indicadores o simplemente para ser almacenadas en los mismos
elementos los cuales son las 5aria/les Estas se usan para almacenar datos y
pueden ser de dos tipos seg6n su uso. de tipo Local o de tipo Glo/al
L%CALE,
,on 5aria/les asociadas a alg6n control o indicador dentro de un programa VI.
en el cual son usadas Cuando se escri/e en una de <stas. elcontenido del
indicador o control cam/ia
El uso de estas 5aria/les )acilita la 5isuali9acin en el digrama cuando se 5a a
accesar 5arias 5eces un mismo dato. puesto (ue e5ita llenar de ca/les
conductores la pantalla. (ue conduscan el 5alor desde el control al lugar
re(uerido
,on una )orma adecuada de escri/ir so/re un control. desde el algoritmo
Las 5aria/les locales solo son entendidas por el programa VI (ue las posee.
ninguna su/rutina entiende el contenido de <stas. ni ning6n programa VI
di)erente
Para o/tener una de estas 5aria/les. se /usca por el men6 de estructuras y
constantes. L%CAL
Para seleccionar el indicador o control (ue se accesa. seleccionar por medio del
popDup men6 de la 5aria/le. ,ELEC# I#E&
,i se desea leer un 5alor de la 5aria/le seleccionar en el popDup menu
CHA"GE #% !EAD El cono de la 5aria/le mostrar2 las paredes laterales mas
gruesas (ue en el caso de la 5aria/le a la (ue se escri/e Para escri/ir
seleccionar en el popDup men6 CHA"GE #% W!I#E
En el e4emplo se aprecia como para no tener (ue lle5ar ca/les desde el terminal
del /otn de stop al otro ciclo. para detenerlo simult2neamente. simplemente se
lee el dato de una 5aria/le asociada En el primer cuadro se muestra un cono
de una 5aria/le para ser escrita con un dato. pero como no est2 conectado a
ninguna )uente de 5alores. se genera un error (ue no permite e4ecutar el
programa. lo (ue se puede notar por la )lec0a de e4ecucin rota

GL%BALE,
La di)erencia con las 5aria/les locales radica en (ue estas pueden ser
entendidas por cual(uier programa yTo su/rutina VI. y pueden ser actuali9adas
por los mismos Estas se almacenan en un arc0i5o di)erente de e3tensin +GLB
(ue consta 6nicamente de un panel )ront2l donde se encuentran todas las
5aria/les asociadas a dic0o arc0i5o. lo (ue (uiere decir (ue en un arc0i5o se
pueden guardar numerosas 5aria/les
Para crear una 5aia/le glo/al. se selecciona del munu de estructuras y
constantes Luego con el popDup men6 se da la orden de a/rir el panel )rontal
de esta 5aria/le. y all se colocan todos los indicadores y controles (ue
almacenan los datos deseados Posteriormente se gra/a como cual(uier otro
programa VI. pero con e3tensin DBL
Con la 5aria/le creada solo es seleccionar en el popDup men6 del cono de la
5aria/le con ,ELEC# I#E&. el 5alor al (ue se lee o escri/e
Para colocar en el diagrama otra 5aria/le glo/al de el mismo dato. a0ora se
0ace por medio de la opcion VI. en el men6 de )unciones. tal como si se )uera a
usar una su/rutina ya creada
,e 5e como la paleta de las 5aria/les glo/ales y el cono principal cam/ia

En el e4emplo el dato del /otn stop se escri/e a una 5aria/le glo/al. (ue se lee
en otros lados del programa #am/i<n puede ser leido en otro su/programa
Los cam/ios entre lectura y escritura. son id<nticos al procedimiento con las
5aria/les locales Igualmente se aprecia (ue el cono en estado de lectura es
di)erente al de escritura
CUADROS DE FRMULA
Cuando se reali9an operaciones matem2ticas comple4as donde 0ay muc0os
c2lculos distintos. tener un cono por cada operacin puede ser comple4o e
implicar muc0os ca/les y conecciones. (ue di)icultan el entendimiento del
diagrama y alargan el tiempo de programacin
Un me4or camino es tomar todas esas )unciones y 4untarlas en un cuadro de
)rmula. donde se escri/e la operacin de una )orma te3tual Al cuadro se le
agregan unos conectores de entrada y salida de datos. con el nom/re de los
par2metros inscritos. y de alli se alam/ran los conductores Para agregar
entradas o salidas 0acerlo por medio del popDup men6 Add I#)t o Add
O)t)t
Para escri/ir y corre4ir usar la 0erramienta de te3to
Como regla despues de cada )uncin se de/e colocar un punto y coma FJG
El cuadro de )rmula se encuentra en el men6 de )unciones. estructuras y
constantes


En el e4emplo se aprecia una )rmula complicada con muc0os alam/res. la
5ersin con cuadro de )rmula (ueda as:
B+ FUNCIONES8 MATRICES8 STRINGS8 FILE8 ICO
En <ste capitulo se tratan algunos tipos de )unciones especiales como son las
usadas para mane4ar &atrices +Arrays-. ,trings o cadenas de caracteres.
Arc0i5os. y )ormas de entrada y salida como es el sistema DA*
MATRICES
Las matrices son con4untos de datos los cuales se almacenan uno detr2s de
otro. en )ila o columna. si se 0a/la de una dimensin. y en cuadros para
matrices /idimensionales Las matrices o arreglos pueden tener tantas
dimenciones como se desee
El mane4o de c2lculos y operaciones con matrices es tema de materias como
Alge/ra Lineal. por lo cual no se esplica a )ondo su comportamiento
Las matrices son la /ase de los grandes c2lculos reali9ados por el computador.
(uien se puede decir (ue posee su memoria en )orma de matri9. donde cada
5alor est2 u/icado en un lugar de la memoria
Como se 0a mencionado se pueden usar ciclos para )ormar matrices de datos. e
incluso ciclos anidados para )ormar matrices de 5arias dimensiones
,e recomienda mirar los e4emplos de mane4o de matrices. arrays. en el
directorio de ENA&PLE,. GE"E!AL A!!AO,LLB. en la carpeta de Arc0i5o
del LABVIEW. y cargar los VI (ue son de ayuda para comprender m2s a )ondo
Como se 0a 5isto los ca/les (ue conducen datos de matrices son m2s gruesos
Hay )unciones para multiplicar matrices por una constante. sacar el 5alor
determinante. sacar una su/matri9 (ue contenga parte de los elementos.
a5eriguar un elemento de la matri9. reempla9arlo. o agregar uno nue5o
Para el La/Vie1 una matri9 puede ser de dos dimensiones as una de las
dimensiones sea de un elemento. osea (ue un 5ector se puede tomar como
matri9 /idimencional. siempre y cuando se especi)i(ue as
Es per)ectamente )acti/le tomar 5arios elementos y por medio de una )uncin
BUILD A!!AO 4untarlos en una matri9

#odos los elementos de la matri9 de/en ser del mismo tipo. de no ser as como
en el e4emplo. la matri9 )ormada si los tendr2. produciendose un cam/io
polimr)ico (ue puede ser traer consecuencias de impresicin
,i se desea unir un elemento a una matri9. se puede usar la misma )uncin
Build Array para encadenarlos.esto se logra entrando la matri9 inicial como
arreglo y no como elemento Para esto seleccionar el popDup men6 de la
entrada de Buid Array. y seleccionar C3a#2e to A%%aD ,e nota como la e/trada
cam/ia en su con)iguracin para aceptar una matri9

,i se da entrada a dos o m2s matrices de una dimensin. del mismo tamaIo.
como elementos. se crea una matri9 de dos dimensiones. como apilando capas
de )ilas
,i se da entrada a dos o m2s matrices de dos dimensin. del mismo tamaIo.
como elementos. se crea una matri9 de tres dimensiones. como apilando capas
de planos As sucesi5amente
Para agregar una dimensin al control solo /asta cam/iar el tamaIo de los
indicadores de ndice de la matri9. con la 0erramienta de posicionamiento
Para sacar una su/matri9 de otra mayor. se puede usar la )uncin Array ,u/set.
dando los ndices de la matri9 a sacar. y el tamaIo
&atri9
Principal
,u/matri9

Las )unciones para operar con matrices se encuentran dentro de los menus de
)unciones. Array M Cluster. y Analysis
Para crear un control de &atri9. o un indicador. solo 0ace )alta seleccionarlo en
el panel )rontal del men6 Controls. Array M Cluster. A!!AO. y u/icarlo Luego
colocar dentro el tipo de control o indicador deseado. sea num<rico. o /oleano

CLUSTERS
Un Cluster es una agrupacin de datos. de di)erente tipo. como ya se 0a/a
mencionado. donde todos los ca/les se 4untan en uno solo para )acilitar el
ca/leado en el diagrama de /lo(ues Para 4untar los datos se usa la )uncin
Boundle. y para separarlos la )uncin Un/undle
Igual (ue en una coneccin electrica de un automo5il. tam/i<n es posi/le sacar
una sola lnea de todo el ramal. si se sa/e como se llama la linea. por medio de
la )uncin Un/undle By "ame
Cuando se usa la )uncin Bundle. se de/e conectar todos los terminales
Cuando se usa la )uncin Un/undle. la dimensin de las conecciones de/e
coincidir con el n6mero de ca/les (ue <ste lle5a. lo (ue se logra cam/iandole el
tamaIo por medio de la 0erramienta de posicionar Fla )lec0a de la paletaG.
alargando en una es(uina
Cuando se usan las )unciones Bundle y Un/undle. se de/e tener especial
cuidado con el orden en (ue los instrumentos son conectados dentro de los
controles o indicadores de cluster. pues esto determina el orden de los ca/les
en los conectores Bundle y Un/undle. y dentro de los mismos ca/les para
conectar con otros cluster Para cam/iar el orden interno se puede 0acer por el
popDup men6 del marco de cluster dentro del panel de control. con la )uncin
Cluster %rder. y cam/iando el n6mero de orden de cada elemento dentro del
cuadro
Errores de compati/ilidad de ca/les pueden resultar de un orden inadecuado
En el e4emplo se aprecia como un ca/le de cluster pro5eniente de una entrada.
se des/arata en todos sus elementos y se 5uel5e a agrupar Luego a este ca/le
grueso se accesa el conductor U"6meroL y en este se coloca el dato del
indicador "6mero El resultado se lle5a al cuadro cluster de salida
En el e4emplo tam/i<n se aprecia como un con4unto de datos se agrupan en un
ca/le. y a este mayor se accesa el dato U"6meroAL el cual se 5isuali9a en el
indicador de resultado
STRINGS
Los string o cadenas de caractere son con4untos de datosal)anum<ricos como lo
son letreros. anuncios y ta/las de letras El almacenamiento de estos es en
cdigo A,CII. en modo de te3to
%perar con strings tiene muc0a similitud con el mane4o de matrices Hay
)unciones para dar la longitud de la cadena. para com5ertir parte de la cadena a
n6meros. para sacar una su/seccin de la cadena. y para 4untar cadenas
menores para lograr una mayor. entre muc0as otras
Es muy di)erente almacenar un FKG como n6mero (ue como caracter. pues como
n6mero representa el 5alor uno. usado para c2lculos. mientras (ue como
caracter se almacena en memoria como su identi)icador A,CII. el cual e un
cdigo con un n6mero muy distinto (ue se encuentra entre B y ACC. el cual es el
rango de este cdigo. ya (ue posee un solo /yte
Generalmente almacenar caracteres ocupa poco espacio en memoria. pues un
solo /yte es menos (ue lo ocupado por un n6mero tipo DBL donde se usan
5arios Bytes para tenerlo en memoria

En el e4emplos se muestra como tomar un ,tring inicial dado en el string control.
y por medio de una )uncin de ,tring ,u/set. se saca un tro9o de letrero de una
longitud de doce caracteres a partir de el caracter n6mero doce. y el tro9o se
5isuali9a en el indicador #am/i<n se encuentra un e4emplo donde se con5ierte
una cadena de caracteres en una matri9 de n6meros cuyo 5alor A,CII
representa la cadena en el control
FILE
,on )unciones (ue permiten accesar in)ormacin guardada en disco duro o
dis(uettes. por medio de los directorios
Con estas instrucciones se pueden almacenar datos o/tenidos en el transcurso
de la e4ecucin del VI
,e recomienda mirar los e4emplos so/re el mane4o de estas )unciones en el
Directorio de E3amples. EILE. en el La/VIEW. para tener una /uena
comprensin
Para mane4ar arc0i5os. se de/e seguir 5arios pasos
D,a/er (ue arc0i5o se 5a a mane4ar Esto se puede lograr tomando una lista de
directorio en el lugar donde el arc0i5o se encuentre
DA/rir el Arc0i5o Por medio de una instruccin %pen ,i el arc0i5o no e3iste. se
de/e crear. con la )uncin "EW Cuando el arc0i5o est2 a/ierto se le asigna un
n6mero de identi)icacin. para escri/ir o leer /a4o este concepto
DEscritura o lectura en el arc0i5o. /a4o el n6mero de identi)icacin dado
DCerrado del arc0i5o ,i el arc0i5o no se cierra. permanece a/ierto. limitando la
posi/ilidad de tra/a4ar en otros. y ocupando al computador
En el e4emplo se aprecia como /ra/ar un grupo de datos de una )uente
senoidal. en un arc0i5o /inario Para 0acer uso de cada )uncin /uscar su
mane4o en la 5entana de 0elp
Dentro de las )unciones de mane4o de arc0i5os 0ay algunas listas para escri/ir
en )ormato de 0o4as de c2lculo. como las usadas en E3cel. donde los datos
entre columnas se saparan por ta/ulaciones. y entre )ilas por UenterL
DAQ I!O Y OTRAS"
La/Vie1 cuenta adem2s de las )unciones normales de programacin. con otras
en )orma de VI para ser usadas como su/rutinas en aplicaciones de grado m2s
comple4o. como son las 0erramientas usadas para comunicaciones
Estas )unciones cuentan con los programas Dri5er. para mane4ar dispositi5os
(ue se conectan al computador. como /alan9as. osciloscopios. y muc0os m2s
Como se tienen estos Dri5er. no se 0ace necesario conocer a )ondo el m<todo
de programacin de estos e(uipos. solo /asta usar las rutinas (ue los mane4an
Un programa Dri5er consta de los siguientes elementos:
Iniciador o Con)igurador: Entrega el modo de empleo. y como ser2 la
comunicacin al instrumento o tar4eta Esta/lece metodos de gatilleo. y
con)iguracin del dispositi5o para (ue )uncione
Iniciador de medicin y presentador de estado: %rdena a la tar4eta o
dispositi5o (ue tome datos. o tome su propio estado
#rasladar datos: Lle5ar o traer los datos del dispositi5o al computador. para
ser usados como sea necesario
Utiles: Para leer errores. resetear el peri)erico. o pedir autoc0e(ueo y
autocali/racin
Cerrar: Cerrar la comunicacin con el dispositi5o. para (ue se mantenga en
un estado esperado
En comunicaciones e3isten numerosos m<todos de tra/a4o. como son:
Co4)#!cac!"# co# ta%-eta& DAQ+
Las tar4etas DA* son tar4etas inserta/les (ue permiten la entrada y salida de
datos del computador a otros aparatos. donde se conectan sensores. y
actuadores. para interactuar con el mundo real Los datos (ue entran y salen
pueden ser seIales digitales o an2logas. o simplemente conteos de ocurrencias
digitales. tanto de entrada. como de salida
Las tar4etas se comportan como si )ueran un puerto m2s en el computador. y
poseen todo un protocolo y sistema de mane4o. por lo (ue entender cada tar4eta.
como su )uncionamiento. al igual (ue cual(uier instrumento. re(uiere de tiempo
y cuidado
E3isten tar4etas de alto desempeIo. y de /a4o Las de alto son programa/les. y
)acilitan altas ratas de mane4o de in)ormacin. pues son en cierta )orma
inteligentes y su)icientes. tal como un sistema ,tand Alone. y por tanto no
comprometen muc0o la 5elocidad y rendimiento del computador
Las tar4etas de /a4o desempeIo re(uieren de un control directo del computador.
y se 5en limitadas por la 5elocidad de <ste El 1indo1s en cierta )orma es un
sistema operati5o (ue no tra/a4a en tiempo real. para operaciones donde la rata
de muestreo es muy alta. como en aplicaciones de audio. radar. 5i5raciones y
5ideo. aun(ue para aplicaciones de lentitud considera/le es /ueno. como en
controles de 0ornos En aplicaciones lentas Windo1s y tar4etas simples /astan
por(ue los tiempos perdidos por el sistema de interrupciones de Windo1s +sea
por mo5er el mouse o cual(uier otra cosa- no a)ectan comparati5amente
Para aplicacines de alta 5elocidad y tiempo real. se re(uiere de 0ard1are
especial. osea tar4etas inteligentes. (ue se programen. y trans)ieran los datos a
memoria. ya sea por rutinas de D&A +acceso directo a memoria-. o por rutinas
de interrupciones al procesador
Las tar4etas como cual(uier otro peri)<rico. re(uiere de sus par2metros de
programacin. y 0asta protocolos de comunicacin. por lo (ue se re(uiere de un
so)t1are Dri5er (ue mane4e lo /a4o de programacin. y de4e en la super)icie. la
posi/ilidad de programar aplicaciones con los /ene)icios de dic0as tar4etas. de
una )orma sencilla
La/VIEW o)rece acceso a los dri5er desde las rutinas de con)iguracin Los
dri5er disponi/les son para las tar4etas de la "I "ational Instruments. pero en el
mercado se consiguen dri5er para otras marcas como PCDLAB
La con)iguracin se 0ace a tra5<s del programa ane3o a La/Vie1. "IDDA*
Co4)#!cac!"# a t%a/E& de' )e%to &e%!a'+
,e trasmite la in)ormacin por un puerto (ue puede ser el C%&K o el C%&A. de
)orma serial. osea a tra5<s de un solo ca/le. y cada /it pasa uno tras otro a alta
5elocidad Para la comunicacin entre computadores se esta/lece un protocolo
com6n para (ue la in)ormacin sea entendida por am/os ,e de/e de)inir el
tamaIo de los BUEEE! para almacenar datos mientras se reali9a la
comunicacin #am/i<n se de/e de)inir si 0ay Hands0a8ing. el cual consiste en
(ue el (ue reci5e cuando 5alla a tener lleno el /u)er de in)ormacin mande una
instruccin +,i es por so)t1are es un comando RctrlD,S. si es por 0ard1are por
una linea- para detener la trasmisin. y otra para reanudar la transmisin de
in)ormacin +Por so)t1are RCtrlD*S. por 0ard1are una linea-
,e de/e tener cuidado al trasmitir caracteres como RCtrlD*S y RCtrlD,S por(ue
pueden ser tomados como isntrucciones
La/Vie1 cuenta con )unciones para iniciar. escri/ir y leer el puerto serial
Co4)#!cac!"# a t%a/E& de )# )e%to de GPIB+
EL GPIB +General Purpose Inter)ace Bus A",ITIEEE @>>K y @>>A-. es un
puerto diseIado por la He1lett Pac8ard. para esta/lecer comunicacin con
instrumentos de medicin &uc0os de los instrumentos como son Balan9as.
%sciloscopios. multmetros y e(uipos de tipo F,tand AloneG +(ue no re(uieren
de un computador para )uncionar. son independientes- cuentan con este tipo de
puerto
Los mane4os de este puerto y los protocolos y controles de so)t1are Dri5er para
GPIB son comple4os y no se esplicaran en este li/ro. por ser <ste simplemente
una introduccin para los principiantes ,i se desea tener un me4or
conocimiento )a5or remitirse a los cat2logos y manuales del La/Vie1
Esta capacidad de comunicacin es uno de los )uertes del La/Vie1. pues este
5iene con 5ariedad de li/reras de so)t1are dri5er. controlador de los
instrumentos. con los protocolos de comunicacin (ue mane4a cada uno. as no
se re(uiere de conocer el ni5el m2s /a4o de programacin de dic0os
instrumentos. simplemente es mirar si se tiene el dri5er de dic0o instrumento. y
conectarlo

Co4)#!cac!o#e& co# %ede& TCP8 UDP
Para comunicacin de e(uipos en red Ea5or remitirse al manual
Co4)#!cac!o#e& d!#F4!ca& e#t%e %o2%a4a& de *!#do7& DDE+
,i se tiene una /ase de datos a/ierta. es posi/le accesar datos de esta. y
usarlos por el La/Vie1. y 5ice5ersa. lo (ue sir5e para una actuali9acin
din2mica Ver los e4emplos en el directorio de E3amples ,e recomienda tener
un conocimiento claro del uso de aplicacines en Windo1s. como es Acces. y
tenerlo cargado y )uncionando
!emitirse al manual
Pa%a )&)a%!o& co# INPORT8 OUTPORT+
,i simplemente se tiene conectada una tar4eta )a/ricada en casa. y se conoce la
direccin de memoria del puerto al (ue est2 conectada. y solo 0ace )alta leer o
escri/ir datos en esta locali9acin. se puede 0acer por medio de los comandos
I"P%!# u %U#P%!#. dando el 5alor a escri/ir. oreci/iendo el 5alor a leer.
dando la direccin. y especi)icando si se lee o escri/e un solo /yte. o dos
+W%!D-


G+ PANEL FRONTAL DE CONTROL
PRESENTACION DEL PANEL FRONTAL
El panel )rontal es el medio con el (ue el programa interactua con el usuario
&ientras m2s es(uem2tico sea. m2s 0umano. m2s entendi/le. y m2s cerca del
usuario se encuentre. muc0o me4or
Posi/lemente (uien use el programa no tenga la menor idea de como usar un
computador. por lo (ue en aplicaciones como en la automati9acin de plantas.
si se contara con un di/u4o mmico del proceso )acilitara muc0o el tra/a4o del
operario
La/Vie1 como lengua4e gr2)ico cuenta con m6ltiples 0erramientas de
diagramacin y presentacin de la in)ormacon. de una )orma clara. como son
los indicadores num<ricos. los de tipo /oleano. strings. arrays. ta/las. etc y los
controles e(ui5alentes
#odo indicador se puede usar como control si se con)igura como <ste. por
medio del popDup men6 del mismo. con la opcin C3a#2e to Co#t%o' Lo mismo
con los controles con C3a#2e to I#d!cato%
Los controles e indicadores son colorea/les con la 0erramienta de color para
una me4or presentacin
El men6 de Controls cunenta con un su/men6 de decoracines (ue pueden
ayudar con la presentacin
I"DICAD%!E, O C%"#!%LE, "U&Y!IC%,
Algunos controles e indicadores "um<ricos son los digitales. los de perilla. los
de desli9ador. y otros tal como se encuentran en los e(uipos de sonido u otros
aparatos comunes
Cada control tiene sus di)erentes par2metros para con)igurar a tra5<s del popD
up men6 propio ,e puede lograr (ue muestre un la/el o letrero con el nom/re.
mostrar un display con el dato marcado. (ue muestre o no la escala #am/i<n
es posi/le agregar una in)ormacin de e3plicacin e in)ormacin
Escala
Para cam/iar la escala solo 0ace )alta usar la 0erramienta de te3to. para usarla
so/re la escala del control directamente y alli escri/ir los 5alores m23imos y
mnimos deseados
Un control num<rico se puede con)igurar para (ue muestre los 5alores en
n6meros %C#ALE,. HENADECI&ALE,. BI"A!I%,. DECI&ALE,. si el dato
(ue mane4a es de tipo entero con o sin signo. por medio dela opcin Eormat M
Presicion del popDup menu del control ,i es de tipo punto )lotante. se puede
5ariar el EIN o n6mero de ceros decimales. adem2s de mostrar notaciones
cient)icas o de ingeniera. a tra5<s de la msma opcin

I"DICAD%!E, B%LEA"%,
Los s1ic0es /oleanos son controles (u retornan solo dos 5alores al programa. o
uno o cero. 5erdadero o )also Los indicadores solo muestran esas
posi/ilidades
Indicadores /oleanos e3isten muc0os. como son los /om/illos piloto. los LED. y
otros ,1ic0es tam/ien e3isten de numerosos tipos. como son palancas.
pulsadores. /otones. etc
Entre los /otones y pulsadores 0ay numerosas con)iguraciones de
)uncionamiento. como por e4emplo (ue el /otn retorne un 5erdadero despu<s
de oprimir y soltar. o (ue retorne el 5erdadero al oprimir y al soltar regrese a su
posicin de )also. etc
Para cam/iar la con)iguracin del /oleano. 0acerlo por su popDup men6 a tra5<s
del su/men6 Mec3a#!ca' Act!o#
A!!AO M CLU,#E!
Los indicadores y controles de array y cluster son cuadros donde se colocan
otros indicadores o controles. para el mane4o de estas estructuras Un control
solo sir5e como control. y un indicador solo sir5e como indicador Para 0acer el
cam/io 0acerlo como cual(uier otro control
Para agregar dimensines a las matrices 0acerlo con la 0erramienta de
posicionamiento. agrandando el indicador de las dimensiones
Un cluster puede contener un Array interno . 4unto con otros elementos
Un array o matri9 puede estar )ormada de clusters Esto es 6til en aplicaciones
de /ases de datos
G!AEICAD%!E,
La/Vie1 cuenta con algunos controles o indicadores (ue presentan gr2)icas de
los datos o/tenidos en el programa Estos se encuentran en el su/men6 Grap0
en el men6 de controles Para cada uno se pueden con)igurar muc0os
par2metros como escala de la gr2)ica. autoescala. color de las lneas. n6mero
de lneas en una gr2)ica. presentacin de letreros. paletas de control.
indicadores. etc
La/el Leyenda
Display
,croll Bar
Escala
Paleta de
Herramientas

Entre los gra)icadores se encuentran:
Wa5e)orm C0arts: Como el anteriormente di/u4ado permite entrar datos de a
un n6mero. o en una matri9 de una dimensin Gra)ica dando
automaticamente la secuencia en el e4e N. simplemente por el dato (ue sigue
al anterior. osea por pasos El e4e N siempre corresponde a tiempo ,i se
gra)ican dos o m2s datos al tiempo se de/en entrar como un ca/le cluster.
como se muestra en la )igura ,i se deseea entrar todos los datos al tiempo
para llenar un /u))er de la gr2)ica. 0acerlo como una matri9. y si se desea
gra)icar llenando /u))ers de 5arias gra)icas simultaneamente. entrar los datos
como una matri9 de clusters
Wa5e)orm Grap0: De comportamiento similar a la Wa5e)orm C0art. pero con
esta ya se puede de)inir la escala en el tiempo. a los 5alores deseados.
mientras (ue en la anterior la escala en N es propiamente de pasos. m2s (ue
tiempo
NO Grap0: En <sta se entran los datos por pares ordenados en una matri9
/idimensional. o una matri9 de clusters de dos datos cada uno N.O Permite
gra)icar )unciones matem2ticas. circulos. etc. dando una secuencia de
puntos. N.O
Intensity Grap0 e Intensity C0art: Para gra)icar planos de di)erentes colores.
para matrices de dos dimensiones. donde los 5alores contenidos
corresponden a un color
ATRIBUTOS DE LOS CONTROLES
Cuando se crean controles e indicadores se puede desear (ue estos cam/ien
su con)iguracin durante el curso del programa. para e)ectos de 5isuali9acin
#am/i<n se puede desear o/tener datos del estado de los controles Por
e4emplo (ue al oprimir un /otn apare9ca un panel adicional de controles. sin
necesidad de llamar una su/rutina. o (ue con un /otn se tenga el 9oom de una
gr2)ica
#odo esto se logra a tra5<s de un nodo de atri/utos. el cual se o/tiene por
medio del popDup men6 de cada control. por la opcin C%eate Aat%!5)te Node
Cuando esto se 0ace aparece un cono asociado al control en el diagrama de
/lo(ues. el cual puede usarse para reci/ir o entregar datos
En el e4emplo se tiene un nodo asociado al indicador del tan(ue Este nodo
constantemente controla si se 5e o no. el tan(ue en el panel )rontal +UVisi/leL-
Esta operacin es independiante a lo (ue muestra el tan(ue. una serie de
n6meros aleatorios. 0asta (ue se de stop al programa
Los atri/utos de nodos pueden controlar muc0os )actores en los controles Para
cam/iar entre los posi/les )actores a 5ariar o leer en el nodo. 0acerlo por medio
del popDup del men6 del modo. a tra5<s de la opcin Se'ect Ite4
A tra5<s de estos nodos esposi/le leer la posicin de un gursor dentro del
gra)icador. y muc0o m2s
Para tener una me4or idea de los "odos de Atri/utos. mirar los e4emplos en el
directorio de E3amples. General. Atri/ute del La/Vie1

EDICION DE CONTROLES
,i los controles o)recidos por el La/Vie1 no parecen satis)actorios. se pueden
editar para lograr (ue tengan una presentacin como se desee Por e4emplo
(ue muestren el mmico de una /om/a en estado de prendido. y una /om/a en
el estado de apagado Es tal el grado de edicin (ue no sera am/icioso
esperar (ue un control )uera el rostro de una persona guiIando un o4o. donde
este mo5imiento sera de tipo /oleano
Para editar controles se de/e seleccionar con la 0erramienta de
posicionamiento un control con )unciones y caractersticas similares al control
(ue se desea o/tener Luego en el mun6 de edit seleccionar Ed!t Co#t%o'
Aparecera una nue5a 5entana para editar el control y modi)icarlo El control
nue5o se puede gra/ar como un arc0i5o de e3tensin C#L Por e4emplo se 5e
la carta de Po8er lograda desde un control de )iguras Pict !ing
El panel mostrado presenta 0erramientas similares a las del panel )rontal en
modo de edicin pero en 5es de tener un /otn para e4ecutar posee uno de %Z
para aceptar cuando est2 listo
El /otn de cam/io de modo 5ara entre un modo de edicin general tal como
en el panel )rontal. y un modo de despie9e del control ,e aprecia con )orma de
lla5e inglesa En este modo se puede tomar cada parte del control y modi)icarlo
independiente
,i se tiene un di/u4o dentro del ClipDBoard. con el popDup men6 de cada parte
se puede usar la opcin I4o%t P!ct)%e para reempla9ar esa parte por el di/u4o
en el Clip
Para u/icar los controles ya gra/ados en el panel )rontal. 0acerlo por la opcin
Co#t%o'+++ en el men6 de controles
7+ PROGRAMAS E(EMPLO
A" CONTROL DE UN MOTOR PASO A PASO:
E"U"CIAD%
La idea es controlar un motor de pasos el cual est2 conectado a una tar4eta (ue
sale del puerto paralelo del computador. la cual est2 locali9ada en la posicin
de memoria H=P>
El motor consta de cuatro /o/inas (ue se de/en emergi9ar intercaladamente.
seg6n una secuencia dada (ue determina el sentido de giro y el tamaIo del
paso Como son cuatro /its. son K? las posi/les com/inaciones de las cuales se
usan oc0o La com/inacion esta dada asi en orden: KBKB. KBBB. KBBK. BBBK.
BKBK. BKBB. BKKB. BBKB. de )orma (ue si el coam/io 5a de i9(uierda a derec0a
el motor sigue una direccin. con mo5imientos de medio paso ,i 5a de derec0a
a i9(uierda. el motor gira en sentido contrario. tam/i<n de a medio paso
Para 5ariar pasos enteros se de/e saltar un n6mero en la secuencia. de cdigo
/inario
,e de/e controlar el n6mero de pasos (ue se desea dar. la 5elocidad del motor.
y se de/e determinar con un /otn el sentido de giro. y con otro /otn si a5an9a
de a uno o medio paso Como cada puesta en un cdigo implica estar en una
)ase de estado entre oc0o posiciones. se de/e reportar en (ue )ase (ued al
)inal. y al empe9ar de nue5o el programa de/e comen9ar por la )ase en (ue
termin anteriormente. para e5itar /lo(ueos del motor
De/e mostrar La com/inacin de /its en (ue pasa a cada momento. y el n6mero
de pasos (ue 0a dado actualmente
DE,A!!%LL%
K Crear el p2nel )rontal con los /otones y controles deseados: "6mero de
pasos. Puerto. ,entido. &edio Paso. Velocidad. Bits de Control. Ease. "6mero
de pasos actuales.
#omando en cuenta cuales son controles y cuales indicadores +)ase. Bits de
cont. "um de pasos actuales-
Como n6mero de pasos no es )raccionario. se con)igura como un entero de =A
/its. (ue es lo (ue entiende un ciclo EorD"e3t
#omar en cuenta (ue ,entido y &edio Paso son controles /oleanos
Bits de Control es un array de indicadores /oleanos LED
A Crear el diagrama de /lo(ues o programas Un ciclo EorD"e3t repetir2 su
contenido el n6mero de pasos o mediopasos (ue se 5allan a dar

Un ,0i)t !egister almacenar2 el estado de )ase en el (ue se encuentra y ser5ir2
para alimentar un cuadro de casos del uno al P. donde seg6n el n6mero de
estado permitir2 a un n6mero /inario ir al cuadro outport
%utport escri/e dentro de la locali9acin del puerto. el n6mero dado por el
cuadro Case
El n6mero /inario se traduce a una matri9 de /oleanos por medio de un
con5ersor. y es mostrado en la matri9 Bits de Control

,eg6n el sentido de giro se resta o suma un 5alor al n6mero de estado para (ue
pase al estado siguiente. y este 5alor se lle5a al ,0i)t !egister para (ue sea el
n6mero (ue realmente dice el estado actual
,i el nue5o estado es un numero menor (ue cero. el estado actual de/e
5ol5erse siete. y si es mayor (ue siete de/e 5ol5erse cero. para (ue nunca
0allan 5alores (ue se salgan del rango


,i se trata de un paso entero se sumar2 o restar2 dos estados y si se trata de
medio paso se sumar2 o restar2 uno al 5alor del estado
El indicador de n6mero de pasos se conecta al contador del ciclo para sa/er
cuantos ciclos se 0an dado
El control de 5elocidad se conecta a un tempori9ador (ue 0ace (ue pasen
determinado n6mero de milisegundos entre ciclo y ciclo
Al terminar todos los ciclos el contenido del ,0i)t !egister pasa al indicador de
)ase para 5er en (ue )ase (uedo ,e aprecia como el contenido del ,0i)t inicial
sale de una 5aria/le local asociada al contenido de la )ase. as cuando comie9a
el programa en el s0i)t inicial entra el contenido de esta 5aria/le. (ue no es m2s
(ue el contenido de la )ase )inal de la 6ltima 5e9 (ue se corri el programa
Este algoritmo es una de las posi/les solucines a este pro/lema. aun(ue
e3isten muc0as mas soluciones
Una me4ora (ue se de4a al usuario es 0acer (ue cuando 5alla en el estado siete
y trate de aumentar un paso. tratando de pasar al Q y como este no e3iste pasa
al cero. de/iendo pasar al uno. 0aciendo (ue de so/resaltos el motor Esto se
logra 0aciendo (ue en 5es de cam/iar el estado por cero. simplemente reste
oc0o &uy similar para el sentido contrario
= Crear el cono del programa. y 0acer las conecciones del panel )rontal con los
conectores del cono. para poder ser llamado como su/rutina. y gra/ar el VI
B" PROGRAMA DRIVER DE UN ENCODER DE DOS BITS"
E"U"CIAD%
,e tiene un sensor encoder el cual consta de una regla per)orada. dos emisores
de lu9 y dos )otosensores ,eg6n alternen las seIales en los )otosensores. con
lu9. no lu9. uno y cero. se puede detreminar el mo5imiento de los sensores
respecto a la regla. seg6n la secuencia Entre cam/io y cam/io de estado e3iste
medio paso de a5ance de la regla. donde un paso es el anc0o de un 0ueco. o el
anc0o entre separaciones de 0uecos Los )otosensores estan separados paso y
medio
La secuencia es BB. BK. KK. KB en retroceso. y KB. KK. BK. BB en a5ance 0acia
adelante
,e desea (ue el programa muestre el estado de los sensores. muestre la
posicin a/soluta respecto al origen de la regla. permita resetear el origen al
lugar donde e encuentra. y detener el programa
K Crear el p2nel )rontal con los controles e indicadores re(ueridos. Dos LED,.
uno para el estado de cada sensor. un indicador para la posicin. un /otn de
stop. y un de reset

A Crear el diagrama de /lo(ues Como se de/e c0e(uear constantemente
0asta (ue se detenga el programa. se 0a/re una estructura W0ile. y se conecta
al /otn de stop a tra5<s de un elemento negador. para (ue cuando el /oton
sea presionado se 0aga 5erdadero. y al negar se 0aga )alsa la entrada al
control del ciclo para (ue se detenga El /oton 0a sido con)igurado como
pulsador. por medio de la opcin &ec0anical Action en el pop men6 del stop
Como se trata de un elemento con memoria donde se compara un estado actual
con uno anterior. se colocan dos ,0i)t register para almacenar el estado anterior
de los sensores y actuali9ar esta in)ormacin con lo leido desde el puerto
%tro ,0i)t almacena la posicin respecto el origen. y mediante los cam/ios se
actuali9a
El nue5o estado de los sensores es tomado por la su/rutina import a la cual se
le da como par2metro. el puerto en el (ue de/e leer. y retorna los dos /its
deseados. (ue son lle5ados a los s0i)t de nue5o 5alor. pero siendo antes
mostrados por los indicadores de estado actual de los sensores
#anto los /its de estado anterior como los del nue5o estado leido son
agrupados en una matri9a de dos /its. por medio de las )unciones Build Array. y
estas matrices son traducidas a n6meros por medio de un con5ersor ,eg6n
estos n6meros se anali9a (ue pasa cuando cam/ia el estado de los sensores a
tra5<s de cuadros case anidados. donde seg6n el estado anterior se e5alua el
nue5o estado. y se retorna o no un cam/io en la posicin Por e4emplo si el
estado anterior es KK y el nue5o es KK. simplemente los cuadro case de4an
pasar el 5alor de posicin sin 5ariarlo ,i el anterior es BB y el nue5o es KK. es
por(ue 0u/o un error pues )sicamente es imposi/le. entonces los cuadros no
alteran el 5alor. y adem2s lan9an un anuncio diciendo (ue algo pas ,i es caso
anterior es KK y el sigiente es KB es por(ue se est2 retrocediendo. entoncesse
resta uno a la posicin y por 6ltimo si el caso anterior es KK y el nue5o BK. se
suma uno a la posicin En total son K? com/inaciones de las cuales KA son
)sicamente posi/les
,eg6n el /otn de reset se controla un case. (ue en caso de no presionar. de4a
pasar el 5alor de posicin. y en caso de dar reset. coloca un cero en la linea de
posicin. para (ue se almacene en el s0i)t
Einalmente el resultado de posicin se di5ide en dos para dar el 5alor en
terminos del paso. pues con a5an9ar medio paso 0ay un cam/io de estado en
los sensores


Para lograr traer los /its 0ay (ue 0acer la rutina de import
,e aplica el mismo procedimiento de crear VI. primero el panel de control. con
los /it de salida y el puerto de entrada
Luego el diagrama. donde el 5alor del puerto se lle5a a una rutina import el
resultado se con5ierte a una matri9 de /oleanos La matri9 se traduce en un
ca/le de cluster para (ue por medio de la )uncin Un/undle se puedan sacar
los dos /its deseados para lle5arlos a los indicadores

Luego se crea el cono. y se 0ace la coneccin del panel )rontal con el icono en
los conectores (ue este posee Einalmente se gra/a
Desde el VI del encoder se llama la su/rutina inport a tra5<s de la opcin VI
del men6 de )uncines. y se enla9a con el diagrama de /lo(ues
Por 6ltimo gra/ar el dri5er del encoder ,i este se desea usar como su/rutina.
no se de/e ol5idar crear el cono de este y 0acer las conecciones del caso con
el panel )rontal

También podría gustarte