Documentos de Académico
Documentos de Profesional
Documentos de Cultura
DE SEÑALES
Manual de prácticas LabVIEW
Facultad de Ciencias
Benemérita Universidad Autónoma de San Luis Potosí
I. Introducción........................................................................................................................... 2
I. Características Generales de un Programa en LabView ............................................... 3
Estructura de un VI .................................................................................................................... 3
Programación de un VI............................................................................................................ 6
Ejecución de un VI .................................................................................................................... 7
1
II. Manual de Prácticas en LabVIEW ...................................................................................... 9
Práctica #1. Promedidador .................................................................................................... 9
Práctica #2. Números Aleatorios .......................................................................................... 11
Práctica #3. Visualización de Señales ................................................................................. 13
Práctica #4. Uso de Case Structure ..................................................................................... 15
Práctica #5. Medición de Temperatura ............................................................................. 18
Práctica #6. Efecto de Traslape ........................................................................................... 28
Práctica #7. Lazo ADC-DAC Traslape ................................................................................. 32
Práctica #8. Filtro de Hendidura FIR e IIR ............................................................................ 36
Práctica #9. Filtro Pasa Bajos FIR e IIR .................................................................................. 40
III. Anexos............................................................................................................................... 44
Tarjeta NI-USB 6009.................................................................................................................. 44
Sensor LM35 ............................................................................................................................. 48
Atajos de Teclado en LabVIEW ............................................................................................ 49
IV. Bibliografía ........................................................................................................................ 50
I. INTRODUCCIÓN
National Instruments creo LabVIEW para funcionar sobre sistemas operativos MAC, sin 2
embargo fue lanzado por primera vez en 1986 [1] y ahora se encuentra disponible para
las plataformas Windows,UNIX,Mac y Linux [2].
ESTRUCTURA DE UN VI
Los VIs tienen una parte interactiva con el usuario y otra parte de código fuente, y
aceptan parámetros procedentes de otros VIs. Todos los VIs tienen un panel frontal y un
diagrama de bloques. Las paletas contienen las opciones que se emplean para crear y 3
modificar los VIs.
Panel Frontal: El Panel Frontal es la interfaz con el usuario, la cual es utilizada para
interactuar con el usuario cuando el programa se está ejecutando. Los usuarios
pueden observar los datos del programa actualizados en tiempo real. El panel frontal
está formado por una serie de botones, pulsadores, potenciómetros, gráficos, etc.
Cada uno de ellos puede estar definido como un control o un indicador, los primeros
sirven para introducir parámetros al VI, mientras que los indicadores se emplean para
mostrar los resultados producidos, ya sean datos adquiridos o resultados de alguna
operación. La figura 2.1 muestra el panel frontal de un VI.
Indicador
Controles
Figura 2.1. Panel frontal de LabVIEW que muestra los controles e indicadores de un VI.
Diagrama de Bloques: es el programa propiamente dicho y constituye el código
fuente del VI. El diagrama de bloques es donde se realiza la implementación del
programa del VI para controlar o realizar cualquier procesado de las entradas y
salidas que se crearon en el panel frontal (Figura 2.2). El diagrama de bloques incluye
funciones y estructuras integradas en las librerías que incorpora LabVIEW. En el
lenguaje G las funciones y las estructuras son nodos elementales, son análogas a los
operadores o librerías de funciones de los lenguajes convencionales. Los controles e
4
indicadores que se colocaron previamente en el Panel Frontal, se materializan en el
diagrama de bloques mediante las terminales.
El diagrama de bloques se construye conectando los distintos objetos entre sí, como
si de un circuito se tratara. Los cables unen terminales de entrada y salida con los
objetos correspondientes, y por ellos fluyen los datos.
5
2. Paleta de controles (Controls palette). Se utiliza únicamente en el panel frontal.
Contiene todos los controles e indicadores que se emplearán para crear la
interfaz del VI con el usuario (Figura 2.4).
PROGRAMACIÓN DE UN VI
Una vez colocados en la ventana correspondiente al panel frontal todos los objetos
necesarios, debe pasarse a la ventana Diagram, que es donde se realiza la
programación propiamente dicha (diagrama de bloques). Al abrir esta ventana, en ella
se encuentran las terminales correspondientes a los objetos situados en el panel frontal,
dispuestas automáticamente por LabVIEW. Se deben ir situando las funciones,
estructuras, etc. que se requieran para el desarrollo del programa, las cuales se unen a
las terminales mediante cables. Para facilitar la tarea de conexión de todos los
terminales, en el menú “Help” puede elegirse la opción “Show Help”, con lo que al
colocar el cursor del ratón sobre un elemento aparece una ventana con información
relativa a éste (parámetros de entrada y salida). Además, si se tiene seleccionado el
cursor de cableado, al situar éste sobre un elemento se muestran los terminales de forma
intermitente.
EJECUCIÓN DE UN VI
7
Run
Una vez pulsado el botón de Run, el programa comenzará a ejecutarse. Mientras dura
la ejecución del mismo, la apariencia del botón de Run es la que se muestra en la Figura
2.7.
De este modo el programa se ejecutará una sola vez. Si se desea una ejecución
continua, se pulsará el botón situado a la derecha del de Run (Continuous Run). Si
durante el funcionamiento continuo del programa se vuelve a pulsar el citado botón, se
finalizará la última ejecución del mismo, tras lo cual el programa se detendrá (Figura 2.8).
Stop Pausa
Actividades
9
Realizar un programa en LabVIEW, que tome tres números, que el usuario
introducirá, para generar su promedio y además muestre su máximo y mínimo.
Notas
Numeric Control, Numeric Display, Build Array, Add, Divide, Numeric Constant,
Array Max & Min.
Resultados
10
Actividades
Notas
Bloques a Utilizar
Numeric Display, Waveform Chart, For Loop, Add Array Elements, Random
Number (0-1), Substract, Divide, Square, Numeric Constant.
Resultados
En la Figura 3.2.2 se observa claramente que el promedio, y la varianza son los correctos
12
Actividades
Notas
Resultados
Actividades.
Figura 3.4.1. Sugerencia de programa para la práctica 4, en el caso que el case este
en False.
16
Figura 3.4.2. Sugerencia de programa para la práctica 4, en el caso que el case este
en True.
Notas
Bloques a utilizar
Dial, Push Button, Vertical Pointer Slider, Horizontal Toggle Switch, Waveform Chart,
Sine Waveform, Build Array, Case Structure, Multiply, Add.
Resultados
En la Figura 3.4.4, se muestra cuando el case esta en falso (false) y por lo tanto la
señal procesada muestra la multiplicación de las señales.
Material
Actividades
Notas:
En el caso del led verde, la configuración será la misma, solo debe seleccionarse
a01 para la salida de voltaje.
El datasheet del LM35 puede ser consultado en la sección de anexos de este
mismo manual.
Bloques a utilizar
20
Para el DAQ 1.
1. Para obtener el bloque DAQ Assistant, hacer un click derecho sobre Block
Diagram, seleccionar Express, dar click sobre el icono Input y seleccionar el
bloque DAQ Assistant, tal como se observa en la Figura 3.5.3.
21
2. Para inicializar el bloque, dar click sobre “Acquire Signal”, seleccionar “Analog
Inputs” y “Voltage”, por medio de esto se obtendrán los datos de la señal
analógica de temperatura. Esto se observa en la figura 3.5.4.
.
22
1. Para obtener el bloque DAQ Assistant, dar click derecho sobre Block Diagram,
seleccionar Express, hacer click sobre el icono Output y seleccionar el bloque
DAQ Assistant, tal como se observa en la Figura 3.5.8.
24
2. Para inicializar el bloque, dar click sobre “Generate signals”, seleccionar “Analog
Outputs” y “Voltage”, por medio de esto se generaran las señales que
activaran/desactivaran los leds correspondientes al rango de temperatura. Esto
se observa en la Figura 3.5.9.
25
Al someter el sensor LM35 a una temperatura menor de 31°, dentro del programa
de LabVIEW se observa cómo se prende el led verde, de igual manera dentro del
circuito implementado el led verde se ilumina.
26
27
Actividades
28
Implementar un programa, como el sugerido de la Figura 5.6.1, donde se muestre
la señal senoidal de entrada 𝑓(𝑡) = 3 sin(10 ∗ 2𝜋)𝑡 , y donde dicha señal sea
muestreada y reconstruida.
Modificar la frecuencia de muestreo para observar el efecto de traslape (alising)
en la señal muestreada.
Un bajo muestreo causa que la señal aparezca como si tuviera una frecuencia
diferente a la real.
29
Para evitar el aliasing, hay que muestrear varias veces más rápido que la
frecuencia de la señal de entrada.
Bloques a utilizar
Resultados
Figura 5.6.2. Arriba señal original 𝑓(𝑡) = 3 sin(10 ∗ 2 ∗ 𝜋) 𝑡, abajo señal reconstruida
a una frecuencia de muestreo de 100 Hz
31
Material:
32
1 tarjeta NI USB 6009.
1 Generador de funciones.
Actividades:
Notas:
Para fines ilustrativos en esta práctica se utilizaros dos bloques de conversión ADC-
DAC, ya que por si sola la tarjeta NI-USB 6009 al adquirir cualquier señal realiza
una conversión del tipo ADC.
Se lee una señal, por el puerto de entrada analógica ai0, la cual es enviada al
bloque “Convert Analog to Digital” con una resolución inicial de 8 bits, que se
modificara posteriormente.La señal es enviada al bloque “Convert Digital to
Analog” donde será muestreada a una frecuencia variable y por último la señal
reconstruida será mostrada en una Waveform Graph.
Bloques a utilizar
DAQ Assistant, Analog to Digital, Digital to Analog, Resampled Signal, Waveform
Graph, Reciprocal, Stop.
Resultados
Figura 3.7.3. De Arriba hacia abajo, señal de entrada a una frecuencia de 25 Hz, señal
digitalizada y señal reconstruida.
Figura 3.7.4. (De arriba hacia abajo) señal de entrada a una frecuencia de 55 Hz, señal
digitalizada y señal reconstruida.
PRÁCTICA #8. FILTRO DE HENDIDUR A FIR E IIR
Actividades
Notas
Los coeficientes del filtro IIR son los correspondientes a los de la función de
transferencia, donde los Foward coefficients se toman del numerador de dicha
función de transferencia, mientras que los Reverse coefficients son tomados del
denominador.
Si se desea que el filtro rechace otra frecuencia diferente de 60 Hz, se debe realizar
el análisis correspondiente a dicha frecuencia y cambiar los coeficientes de los
filtros FIR e IIR.
Bloques a utilizar
Sine Waveform, IIR Filter, FIR Filter, FFT, Waveform Graph, Reciprocal, Bundle, Stop,
Build Array, Absolute Value, Square.
Resultados
38
Figura 3.8.2. Salida del filtro con una señal de entrada de 17 Hz.
Figura 3.8.3. Salida del filtro con una señal de entrada de 50 Hz.
A 60 Hz se ve como la señal ha sido filtrada y no se tiene señal de salida, también
se observa que la respuesta del filtro FIR en el espectro de frecuencia ha
desaparecido. Esto se observa en la Figura 3.8.4.
39
Figura 3.8.4. Salida del filtro con una señal de entrada de 60 Hz.
Cuando se tiene una señal de entrada con una frecuencia mayor a 60 Hz, la señal
resultante no se ve afectada por el filtro de hendidura; sin embargo, cuando se tienen
frecuencias mucho mayores a 60 Hz el filtro FIR presenta un incremento en la amplitud
en comparación con la amplitud de entrada. Lo anterior se muestra en la Figura 3.8.5.
Figura 3.8.5. Salida del filtro con una señal de entrada de 104 Hz.
PRÁCTICA #9. FILTRO PASA BAJOS FIR E IIR
Actividades
Notas
Los coeficientes del filtro IIR se toman de la función de transferencia, donde los
Foward coefficients corresponden al numerador de dicha función de
transferencia, mientras que los Reverse coefficients son tomados del denominador.
Si se desea que el filtro rechace otra frecuencia diferente de 30 Hz, se debe realizar
el análisis correspondiente a dicha frecuencia y cambiar los coeficientes de los
filtros FIR e IIR.
Se puede obtener la función de transferencia del filtro por medio del software
MATLAB utilizando el Filter Design & Analysis Tool.
El filtro FIR fue diseñado considerando una ventana Hamming, mientras que el filtro
IIR fue diseñado de tipo Butterworth.
Bloques a utilizar
Sine Waveform, IIR Filter, FIR Filter, FFT, Waveform Graph, Reciprocal, Bundle, Stop,
Build Array, Absolute Value, Square.
Resultados
42
Figura 3.9.2. Salida del filtro pasa bajos a una señal de entrada con frecuencia de
10Hz.
A la frecuencia de corte de 30 Hz, la señal ya ha sido atenuada por el filtro IIR, sin
embargo el filtro FIR no ha filtrado la señal, como se observa en la figura 3.9.3.
Figura 3.9.3. Salida del filtro pasa bajos a una señal de entrada con frecuencia
de 30Hz.
A una frecuencia de 60 Hz, se observa que el filtro IIR ha atenuado drásticamente
la amplitud de la señal, esto se observa en la figura 3.9.4.
43
Figura 3.9.4. Salida del filtro pasa bajos a una señal de entrada con frecuencia de
60Hz.
El filtro FIR se observa que atenúa la señal a una frecuencia mucho mayor que la
necesaria para el filtro IIR, esto sucede porque los filtros FIR necesitan ser de un
orden mayor que los IIR para cumplir de manera óptima con las especificaciones
dadas [7]. Lo anterior se observa en la figura 3.9.5.
Figura 3.9.5. Salida del filtro pasa bajos a una señal de entrada con frecuencia de 110
HZ.
ANEXOS
La tarjeta NI USB 6009 proporciona ocho entradas analógicas de una sola terminal ( AI) ,
dos canales de salida analógica (AO), 12 canales DIO, y un contador de 32 bits con una
Interfaz USB de alta velocidad [5] . En la Figura 4.1 se muestra el diagrama a bloques de
la tarjeta NI-USB 6009
44
46
PFI 0 GND Input PFI 0 —This pin is configurable
as either a digital trigger or an
event counter input.
Figura 4.3. Conexión de la tarjeta NI-USB 6009 a una entrada analógica de voltaje
diferencial.
El modo de entrada diferencial puede medir señales en el rango de ± 20 V. Sin embargo,
la tensión máxima en cualquiera de los pines es de ± 10 V con respecto a GND. Por
ejemplo, si AI 1 es 10 V y AI 5 es de -10 V, entonces la medición que regresa el dispositivo
es 20 V (Figura 4.4).
47
Para más información acerca de la tarjeta NI-USB 6009 leer la hoja de especificaciones
[5].
Sensor LM35
48
[1] Essick, J. (2013). Hands-On Introduccion to LabVIEW. New York: Oxford University
Press.
[4] Proakis, J. G., & Manolakis , G. D. (2007). Tratamiento Digital de Señales. Madrid:
Pearson Prentince Hall.
[5] Intruments, N. (2004, 15 July). USER GUIDE NI-USB 6008/6009. Retrieved from NI :
http://www.ni.com/pdf/manuals/371303n.pdf