Você está na página 1de 82

INSTITUTOTECNOLGICODEMRIDA

CONIEEM2012
Seminario:
Programacindelaplataforma Programacin de la plataforma
LabVIEW7.1(nivelbsico)
M I LUIS JORGE ARCEOMIQUEL M.I.LUISJORGEARCEOMIQUEL
miquel@fisica.ugto.mx
miquellj@yahoo.com
Del23al27deAbril2012
Introduccin Introduccin
QueesLabVIEW?
Es un lenguaje de programacin tipo grfico el
cual usa iconos en lugar de usar lneas de texto.
Su apariencia y funcionamiento imitan los de un
instrumento real. Sin embargo son anlogos a g g
las funciones creadas con los lenguajes de
programacin convencionales.
2 M.I.LUISJORGEARCEOMIQUEL
Introduccin Introduccin
LabVIEW se encuentra construido por: LabVIEW se encuentra construido por:
La interfaz de usuario (user interface)
conformado por el panel frontal vista grfica conformado por el panel frontal, vista grfica
para el usuario final
Diagrama a bloques (block diagram) contiene el Diagrama a bloques (block diagram) contiene el
cdigo de programa el cual conforma el flujo de
datos datos.
3 M.I.LUISJORGEARCEOMIQUEL
Introduccin Introduccin
LabVIEW se encuentra fuertemente integrado LabVIEW se encuentra fuertemente integrado
para comunicarse y controlar dispositivos
(hardwares) y sus interfaces son: (hardwares), y sus interfaces son:
1. GPIB 8. ActiveX
2. VXI
3. PXI
4. RS232(Serial)
9. DLLs
10. TarjetadeSonido
11. USB ( )
5. Paralelo
6. TCP/IP
7 Adquisicin de Datos
12. FireWire
13. BlueTooth
14 DataSocket 7. AdquisicindeDatos
(DAQDevices)
14. DataSocket
15. InternetyWEB
4 M.I.LUISJORGEARCEOMIQUEL
Instrumento Virtual InstrumentoVirtual
Los programas de LabVIEW son llamado como LosprogramasdeLabVIEWsonllamadocomo
instrumentosvirtuales(VIs)
Contienentrestiposdecomponentes:
ElPanelFrontal
DiagramaaBloques g q
ElIconoypanelconector
5 M.I.LUISJORGEARCEOMIQUEL
Instrumento Virtual InstrumentoVirtual
Panel Frontal: Se trata de la interfaz grfica Panel Frontal: Se trata de la interfaz grfica
del VI.
Esta interfaz recoge las entradas procedentes Esta interfaz recoge las entradas procedentes
del usuario y representa las salidas
proporcionadas por el programa proporcionadas por el programa.
Un Panel frontal est formado por:
1. Serie de botones
2. Pulsadores
6 M.I.LUISJORGEARCEOMIQUEL
Instrumento Virtual InstrumentoVirtual
3. Potencimetros
4. grficos,etc
Cadaunodeellos
puedeestar
definidocomo:
l 1. Uncontrol
(Entrada)
2 U i di d 2. Unindicador
(Salida)
3 Constante 3. Constante
7 M.I.LUISJORGEARCEOMIQUEL
Instrumento Virtual InstrumentoVirtual
Diagrama de bloques constituye el cdigo Diagrama de bloques constituye el cdigo
fuente del VI.
En el diagrama de bloques es donde se realiza En el diagrama de bloques es donde se realiza
la implementacin del programa del VI para
controlar o realizar cualquier procesado de las
entradas y salidas que se crearon en el panel
frontal.
Incluye funciones y estructuras integradas en
las libreras
8 M.I.LUISJORGEARCEOMIQUEL
Instrumento Virtual InstrumentoVirtual
Este se construye conectando los distintos Este se construye conectando los distintos
objetos entre s, como si de un circuito se
tratara tratara.
Los cables unen
terminales de terminales de
entrada y salida con
los objetos j
correspondientes, y
por ellos fluyen los
datos.
9 M.I.LUISJORGEARCEOMIQUEL
Paletas Paletas
Las paletas de LabVIEW proporcionan las Las paletas de LabVIEW proporcionan las
herramientas que se requieren para crear y
modificar tanto el panel frontal como el
diagrama de bloques.
Cualessonlostiposdepaletas?
1. Paletadeherramientas(Toolspalette)
Contiene,letreros,conectoresgrficos,colores
delpanelfrontalysirvepara
editarydepurarlosobjetos
10 M.I.LUISJORGEARCEOMIQUEL
Paletas Paletas
2. Paleta de controles 2. Paleta de controles
(Controls palette)
Se utiliza nicamente en Se utiliza nicamente en
el panel frontal. Contiene
todos los controles e
indicadores que se
emplearn para crear la
i t f d l VI l interfaz del VI con el
usuario.
11 M.I.LUISJORGEARCEOMIQUEL
Paletas Paletas
3. Paleta de funciones (functions palette) 3. Paleta de funciones (functions palette)
Se emplea en el diseo del diagrama de bloques.
La paleta de funciones contiene todos los objetos La paleta de funciones contiene todos los objetos
que se emplean en la implementacin del
programa del VI ya sean funciones aritmticas programa del VI, ya sean funciones aritmticas,
de entrada/salida de seales, entrada/salida de
datos a fichero, adquisicin de seales, datos a fichero, adquisicin de seales,
temporizacin de la ejecucin del programa.
12 M.I.LUISJORGEARCEOMIQUEL
Paleta
1. Structures
2 N i
Paleta
2. Numeric
3. Boolean
4. String
5. Arrayy
6. Cluster
7. Comparison
8. Time&Dialog
9 File I/O 9. FileI/O
10. NIMeasurements
11. Waveform
12. Analyze
13. InstrumentI/O
14. ApplicationControl
15. Graphics&Sound
16 Communication 16. Communication
17. ReportGeneration
18. Advanced
19. SelectaVI
20. Decorations
21. UserLibraries
13 M.I.LUISJORGEARCEOMIQUEL
SubVI SubVI
Caso 1. Pasos a seguir para obtener un SubVI: Caso 1. Pasos a seguir para obtener un SubVI:
1. Seleccionar los todos los elementos del diagrama de
bloques que deseemos convertir en un Sub VI.
2. Hacer clic en la ruta Edit>>Create Sub.
3. De esta manera aparecer el icono de nuestro Sub VI. p
Caso 2.
1. Guardarlo como un VI con otro nombre
2. Mapear los controles e indicadores del VI con respecto
al icono
14 M.I.LUISJORGEARCEOMIQUEL
SubVI SubVI
Caso 1 Caso1
15 M.I.LUISJORGEARCEOMIQUEL
SubVI SubVI
Caso 2 (cont.) Caso2(cont.)
En otro programa
seleccione la paleta seleccione la paleta
de funciones,
siguiendo la ruta
Functions>>Select a
VI, en la caja de
di l dialogo que aparece
se ingresa la ruta del
VI a utilizar VI a utilizar.
16 M.I.LUISJORGEARCEOMIQUEL
SubVI SubVI
Asociando el ICONO con los
controles e indicadores
17 M.I.LUISJORGEARCEOMIQUEL
SubVI SubVI
18 M.I.LUISJORGEARCEOMIQUEL
Como pasan los datos en LabVIEW ComopasanlosdatosenLabVIEW
Cuando se crea una aplicacin se comienza en Cuandosecreaunaaplicacin,secomienzaen
elnivelmsaltodelVI.
Inicia de Arriba abajo y de Izquierda a Derecha IniciadeArribaabajoydeIzquierdaaDerecha
19 M.I.LUISJORGEARCEOMIQUEL
Herramientas del panel Frontal HerramientasdelpanelFrontal
FrontPanelToolbar
1 Botn para ejecutar el VI 1. BotnparaejecutarelVI
2. Botnparacorridacontinua
3. Botnparadetenerelprograma
4 Botn para generar una pausa al programa 4. Botnparagenerarunapausaalprograma
5. Botnparaseleccionareltipodeletra,tamao,estiloycolor
6. Botnparaalinearobjetosconelejevertical
7 Botn para distrib ir los objetos (e tender o comprimir) 7. Botnparadistribuirlosobjetos(extenderocomprimir)
8. Botnpararedimensionarobjetos
9. Botnparareordenarlosobjetos(moverlosalfrente,atrs,fijary
) agrupar)
10.Botndeayuda
20 M.I.LUISJORGEARCEOMIQUEL
Herramientas del panel Frontal HerramientasdelpanelFrontal
FrontPanelToolbar
1. BotnparaejecutarelVI,sepresentadosestados:
Si un VI no se puede ejecutar, ste se encuentra mal realizado o es p j ,
un VI no ejecutable. En ocasiones el Botn de RUN aparece como
una flecha rota
El botn de RUN indica que no hay problemas de errores y el
programa se encuentra ejecutado
21 M.I.LUISJORGEARCEOMIQUEL
Herramientas del Diagrama a Bloques HerramientasdelDiagramaaBloques
Block Diagram Toolbar BlockDiagram Toolbar
Step Into. Observe el flujo de datos del diagrama de bloques
desde un nodo a otro utilizando burbujas que se mueven a
travs de los cables Los nodos parpadean para indicar que travs de los cables. Los nodos parpadean para indicar que
estn listos para estar ejecutados.
Step Over, sirve despus de cada nodo para avanzar a travs
del diagrama a bloques completo. Cada vez que se acciona el
nodo actual se ejecuta y se detiene en el nodo siguiente, el
cual esta listo para ser ejecutado nuevamente.
Step Out, cuando el diagrama de bloques parpadee, oprima el
botn y se detendr la ejecucin paso a paso del VI Debug
Exercise (Main) ( )
22 M.I.LUISJORGEARCEOMIQUEL
Ejercicio 1 Ejercicio1
Convertir de grados Centgrados a Fahrenheit ConvertirdegradosCentgradosaFahrenheit
Solucin:
La formula es: F = (1 8 * C) + 32 Laformulaes:F=(1.8 C)+32
23 M.I.LUISJORGEARCEOMIQUEL
Cables (Wire) Cables(Wire)
Los datos se transfieren por diferentes tipos Losdatossetransfierenpordiferentestipos
decablesyseencuentranclasificados:
24 M.I.LUISJORGEARCEOMIQUEL
Ejercicio 2 Ejercicio2
Pendiente de una recta Pendientedeunarecta
Solucin:
f l Sl ( 2 ) / ( 2 ) Laformulaes:Slope=(Y2 Y1)/(X2 X1)
25 M.I.LUISJORGEARCEOMIQUEL
Ejercicio 3 Ejercicio3
Calculadora se necesita programar las funciones Calculadora,senecesitaprogramarlasfunciones
desuma,resta,multiplicacinydivisin.
Solucin: Solucin:
26 M.I.LUISJORGEARCEOMIQUEL
Ejercicio 4 Ejercicio4
Calculadora Calculadora
1. Quedesplieguemensajedeerror
2. Quecalculeelpromedio
27 M.I.LUISJORGEARCEOMIQUEL
Ejercicio 5 Ejercicio5
SETTIME, Programa para convertir das, SET TIME, Programa para convertir das,
horas, minutos y segundos a segundos.
28 M.I.LUISJORGEARCEOMIQUEL
Estructuras Estructuras
Ciclo FOR y WHILE CicloFORyWHILE
CASE
Registro de Corrimiento RegistrodeCorrimiento
Secuenciador
F l N d l FormulaNodal
29 M.I.LUISJORGEARCEOMIQUEL
Estructuras Estructuras
Ciclo FOR: Ejecuta un Ciclo FOR: Ejecuta un
subdiagrama en un nmero
finito de veces
Ciclo WHILE: Ejecuta un
subprograma hasta que deje de
cumplirse una condicin.
CASE: Contiene mltiples
bd l subdiagramas pero solo uno se
ejecuta dependiendo del valor
de entrada de entrada.
30 M.I.LUISJORGEARCEOMIQUEL
Estructuras Estructuras
REGISTRO DE CORRIMIENTO: G S O CO O
Transfiere datos de una iteracin
a otra
SECUENCIAL: Contiene uno o
ms subdiagramas el cual se
ejecuta en una secuencia ejecuta en una secuencia
programada.
FORMULA NODAL: Realiza
operaciones matemticas
basadas en entradas numricas.
31 M.I.LUISJORGEARCEOMIQUEL
Ejercicio 6 Ejercicio6
AUTOMATCH U O C
1. El Number to Match es un
campo de entrada el cual el p
usuario programa el nmero
a jugar.
2. El Current Number indica el
nmero aleatorio actual.
3 # d It ti i di l 3. # de Iterations indica el
nmero de intentos antes de
llegar al nmero deseado llegar al nmero deseado.
32 M.I.LUISJORGEARCEOMIQUEL
Ejercicio 6 Ejercicio6
Solucin: Solucin:
1. SenecesitaconfigurarloslimitesdelCONTROLdeNumber
to Match
2. ModifiqueelformatoylaprecisindelindicadorCurrient
Number aformatoDecimalyNotacinpuntoflotante
3. Configure 50
en el control
de Number to
Match como
valor por valor por
default
33 M.I.LUISJORGEARCEOMIQUEL
Ejercicio 7 Ejercicio7
Registros de Corrimientos g
Construir un VI que utilic tres registros de desplazamiento
para acceder a valores de 10 iteraciones previas, con
i t d i l incrementos de cinco valores.
Solucin:
34 M.I.LUISJORGEARCEOMIQUEL
Ejercicio 8 Ejercicio8
Raz Cuadrada (Square Root) RazCuadrada(Square Root)
HacerunVIcapazdecalcularlaraiz cuadradadeun
nmeroysinoesposibledesplegarunmensajede
error.
35 M.I.LUISJORGEARCEOMIQUEL
Ejercicio 9 Ejercicio9
Solucin Solucin
36 M.I.LUISJORGEARCEOMIQUEL
Ejercicio 10 Ejercicio10
Time to Match TimetoMatch
Utilizar el programa del ejercicio 4, y calcular
en segundos el tiempo transcurrido hasta en segundos el tiempo transcurrido hasta
encontrar el nmero deseado.
S l i Solucin:
Se necesita implementar dos cronmetros,
uno al inicio del VI y otro al final, luego, reste
ambos tiempos y el resultado se divide 1000
37 M.I.LUISJORGEARCEOMIQUEL
Ejercicio 11 Ejercicio11
38 M.I.LUISJORGEARCEOMIQUEL
Ejercicio 12 Ejercicio12
Programacin de un FlipFlop ProgramacindeunFlip Flop
39 M.I.LUISJORGEARCEOMIQUEL
Ejercicio 13 Ejercicio13
Programar un Detector de flancos ProgramarunDetectordeflancos
40 M.I.LUISJORGEARCEOMIQUEL
Grficas y Charts GrficasyCharts
La Grfica chart despliega los datos conforme LaGrficachartdespliegalosdatosconforme
vanllegando(unoauno).
La grfica graph, despliega todos sus datos Lagrficagraph,despliegatodossusdatos
cuandosubuffersellena
41 M.I.LUISJORGEARCEOMIQUEL
Grficas y Charts GrficasyCharts
Waveform Chart and Graph Despliega los datos p p g
a una taza constante
XY Graph Despliega los datos a una taza no
constante asi como ocurrencias de eventos constante, asi como ocurrencias de eventos
Intensity Chart and GraphDespliega los datos en
3D o 2D
Digital Waveform GraphDisplays data as pulses
or groups of digital lines. Computers transfer digital
data to other computers in pulses data to other computers in pulses.
(Windows) 3D GraphsDisplays 3D data on a 3D
plot in an ActiveX object on the front panel.
42 M.I.LUISJORGEARCEOMIQUEL
Grficas y Charts GrficasyCharts
Existentresmodosdegraficacin deunchart g
1. Scope chart: muestra un bloque de datos, por
ejemplo un pulso una onda, desplazando una parte a
t d l fi d i i d d h travs de la figura de izquierda a derecha.
2. Sep chart: trabaja de forma similar que el Scope
chart, excepto que los datos mas antiguos se chart, excepto que los datos mas antiguos se
presentan a la derecha y los mas nuevos a la
izquierda.
3. Strip chart: muestra los datos continuamente,
desplazndose de izquierda a derecha a travs de la
grfica. grfica.
43 M.I.LUISJORGEARCEOMIQUEL
Ejercicio 14 Ejercicio14
En el panel frontal, el interruptor ser utilizado para detener la
adquisicin de datos. La grafica mostrara la variacin de la
temperatura en tiempo real, el sensor de temperatura mide la
temperatura del cuarto.
44 M.I.LUISJORGEARCEOMIQUEL
Ejercicio 14 Ejercicio14
Solucin: So uc
Utilizar el instrumento virtual Digital Thermometer, se
encuentra con la ruta C:\Archivos de programa\National
Instruments\LabVIEW 7.1\activity
45 M.I.LUISJORGEARCEOMIQUEL
Ejercicio 14B Ejercicio14 B
SubVI anidado, utilice el termmetro digital. Sub a dado, u ce e e e o d g a
46 46 M.I.LUISJORGEARCEOMIQUEL
Ejercicio 14C Ejercicio14 C
Control de Temperatura p
Encender un LED y una alarma al momento que se
detecte una temperatura mayor a la programada.
47 47 M.I.LUISJORGEARCEOMIQUEL
Ejercicio 14C Ejercicio14 C
Control de Temperatura (Solucin) o o de e pe a u a (So uc )
48 48 M.I.LUISJORGEARCEOMIQUEL
Ejercicio 15 Ejercicio15
Programar la funcin: Y = 3X^2+6X+7, por formula
Nodal y por las herramientas Numricas y graficar Nodal y por las herramientas Numricas y graficar
ambos resultados
49 M.I.LUISJORGEARCEOMIQUEL
Ejercicio 15 Ejercicio15
50 M.I.LUISJORGEARCEOMIQUEL
Arreglos (Arrays) Arreglos(Arrays)
Losarreglossonconjuntodedatosdelmismotipo.
Unarregloconstadeelementosydimensiones.
Loselementossonlosdatosqueconstituyenelarreglo
U l d t di i h t Unarreglopuedetenerunaomsdimensionesyhasta
unmximode2e311elementospordimensin,sila
memorialopermite.
Elarreglopuedeserconstruidocondatostalescomo
nmeros,booleanos,rutas,cadenas,formulasdeonda
ybloques. y q
Noesposiblecreararreglosdearreglos.Sinembargo,
sisepuedecrearunarreglodeclusters,dondecada
cluster tiene uno o ms arreglos cluster tieneunoomsarreglos.
51 M.I.LUISJORGEARCEOMIQUEL
Ejercicio 16 Ejercicio16
Crear un array Autoindexado CrearunarrayAutoindexado
Solucin:
52 M.I.LUISJORGEARCEOMIQUEL
Ejercicio 17 Ejercicio17
Crear arreglos de dos dimensiones Creararreglosdedosdimensiones
Solucin:
53 M.I.LUISJORGEARCEOMIQUEL
Arrays Arrays
Polymorphic Polymorphic
54 M.I.LUISJORGEARCEOMIQUEL
Ejercicio 17B Ejercicio17 B
Array Exercise ArrayExercise
55 M.I.LUISJORGEARCEOMIQUEL
Ejercicio 17B Ejercicio17 B
Array Exercise ArrayExercise
56 M.I.LUISJORGEARCEOMIQUEL
Creando Matrices del tipo constantes CreandoMatricesdeltipoconstantes
SeleccioneFUNCTIONSARRAY
ArrastrelasconstantesNumricas,lgicaso , g
string,dentrodeArray Constant
57 M.I.LUISJORGEARCEOMIQUEL
Funciones Matriciales FuncionesMatriciales
58 M.I.LUISJORGEARCEOMIQUEL
Funciones Matriciales FuncionesMatriciales
59 M.I.LUISJORGEARCEOMIQUEL
Funciones Matriciales FuncionesMatriciales
60 M.I.LUISJORGEARCEOMIQUEL
Luz Secuencial LuzSecuencial
1. Fabricar cuatro series de luces.
2. Se requiere ajustar el tiempo.
3. Implementar : Constante boleana, Rotate 1D Array, Reverse 1D Array. 3. Implementar : Constante boleana, Rotate 1D Array, Reverse 1D Array.
M.I.LUISJORGEARCEOMIQUEL 61
Luz Secuencial LuzSecuencial
Solucin Solucin
M.I.LUISJORGEARCEOMIQUEL 62
Bundle Bundle
63 M.I.LUISJORGEARCEOMIQUEL
Ejercicio 18 Ejercicio18
ANALISISDETEMPERATURAVI
Analize --> Mathematics --> Probability and Statistics --> Mean Analize > Mathematics > Probability and Statistics > Mean
Analize --> Mathematics -->curving filtering --> General Polynomial
64 M.I.LUISJORGEARCEOMIQUEL
Ejercicio 18 Ejercicio18
65 M.I.LUISJORGEARCEOMIQUEL
Ejercicio 19 Ejercicio19
GrficaXYCirculo
66 66 M.I.LUISJORGEARCEOMIQUEL
Ejercicio 19B Ejercicio19 B
GrficaXY
67 67 M.I.LUISJORGEARCEOMIQUEL
Ejercicio 19B Ejercicio19 B
Programandomuestrasdetemperaturacon
retardo retardo
68 68 M.I.LUISJORGEARCEOMIQUEL
Strings Strings
El STRING es una secuencia desplegable
o no desplegable de caracteres ASCII. p g
Sus aplicaciones son:
Creacin de simple mensajes de Texto.
Convertir de datos numricos a
caracteres string o instrumentos o
convertir de caracteres string a datos
Para la conversin
de string a datos
numricos y
convertir de caracteres string a datos
numricos.
Se encuentra en el diagrama de bloques
numricos y
viceversa seleccione
string/number
conversion
all funtions string
conversion
69 M.I.LUISJORGEARCEOMIQUEL
Ejercicio 20 Ejercicio20
Construya el siguiente VI ConstruyaelsiguienteVI
Convertirdenumricoastring
C i i Concatenarstringaotrosstrings
Determinelalongituddelstring
ElVIencuentraunpatrnenunstringy
conviertedestringanumrico g
70 M.I.LUISJORGEARCEOMIQUEL
Ejercicio 19 Ejercicio19
71 M.I.LUISJORGEARCEOMIQUEL
Ejercicio 19 Ejercicio19
72 M.I.LUISJORGEARCEOMIQUEL
BCD a 7 segmentos BCDa7segmentos
73 M.I.LUISJORGEARCEOMIQUEL
BCD a 7 segmentos BCDa7segmentos
74 M.I.LUISJORGEARCEOMIQUEL
Archivos de E/S ArchivosdeE/S
Esta herramienta se localiza en el
diagrama a bloques y en las diagrama a bloques y en las
herramientas FunctionsFile I/O
Sus aplicaciones son: p
Abrir y cerrar archivos de datos.
Leer y escribir datos de archivos y
Cambiar caracteristicas de los
archivos.
Crear, modificar y leer la
configuracin del archivo.
S l i R d l hi Seleccionar Ruta del archivo.
75 M.I.LUISJORGEARCEOMIQUEL
Ejercicio 20 Ejercicio20
Escribirelejercicio12(Lamedidaes6,0000
V l ) hi i TXT Volts)enunarchivoconextensinTXT
76 M.I.LUISJORGEARCEOMIQUEL
Ejercicio 20 Ejercicio20
77 M.I.LUISJORGEARCEOMIQUEL
Ejercicio 21 Ejercicio21
Leer el archivo creado del ejercicio 13 Leerelarchivocreadodelejercicio13
78 M.I.LUISJORGEARCEOMIQUEL
Ejercicio 21 Ejercicio21
79 M.I.LUISJORGEARCEOMIQUEL
Propiedades Nodales PropiedadesNodales
Aplicaciones: Aplicaciones:
Sepuedeleeryescribirmltiplespropiedades
a un objeto aunobjeto
Agregarterminales
Cambiarlaposicindeunindicador
Habilitarydeshabilitarindicadores y
80 M.I.LUISJORGEARCEOMIQUEL
Ejercicio 22 Ejercicio22
1. Habilitar y deshabilitar controles
2. Mover el tanque en el plano XY
3. Programar los controles de
posicin
4. El tanque debe llenarse y
vaciarse aleatoriamente en un
rango de 10
5. Programar un limite de color g
6. Si el limite del tanque es menor
al programado el color del agua
es azul
7. Si el limite del tanque es mayor
al programado el color del agua
es rojo es rojo
81 M.I.LUISJORGEARCEOMIQUEL
Ejercicio 22 Ejercicio22
82 M.I.LUISJORGEARCEOMIQUEL