Está en la página 1de 25

PONTIFICIA UNIVERSIDAD CATÓLICA DEL PERÚ

FACULTAD DE CIENCIAS E INGENIERÍA

INGENIERÍA MECATRÓNICA

2022 – 2

LABORATORIO DE SENSORES Y ACTUADORES

INTRODUCCIÓN A LABVIEW
PONTIFICIA UNIVERSIDAD CATÓLICA DEL PERÚ INGENIERÍA MECATRÓNICA

Contenido
1. CONCEPTOS BÁSICOS DE LABVIEW (Laboratory Virtual Instrument Engineering Workbench) 3
1.1 ENTORNO DE LABVIEW 3
1.2 TIPOS DE VARIABLES Y TIPOS DE DATOS 5
1.2.1 CONTROLES E INDICADORES 5
1.2.2 CONSTANTES 6
1.3 PROGRAMACIÓN GRÁFICA (G programming) 8
1.3.1 FLUJO DE DATOS 8
1.3.2 CABLES 8
1.4 HERRAMIENTAS DE PROGRAMACIÓN GRÁFICA 9
1.4.1 PALETA DE HERRAMIENTAS 9
1.4.2 BARRA DE HERRAMIENTAS 9
1.5 ESTRUCTURAS DE PROGRAMACIÓN 9
1.5.1 LAZOS 9
1.5.2 CASOS 11
1.5.3 TÚNELES 11
1.6 SUBVI’S 12
1.7 ALGUNAS FUNCIONES 15
1.7.1 SIMULATE SIGNAL 15
1.7.2 BASIC FUNCTION GENERATOR 16
1.7.3 FILTER 17
1.7.4 SPECTRAL MEASUREMENT 18
1.7.5 MERGE SIGNALS: 18
1.7.6 SPLIT SIGNALS: 19
1.7.7 IN RANGE AND COERCE 19
1.7.8 TO DOUBLE PRECISION FLOAT 19
1.7.9 WAVEFORM CHART Y WAVEFORM GRAPH 19
2. TEOREMA DE MUESTREO DE NYQUIST 20
3. INFORMACION ADICIONAL 21
4. EXPERIENCIA PRÁCTICA 21
4.1 Manejo de LabVIEW 21
4.1.1 Experiencia 1 21
4.1.2 Experiencia 2: 22
4.1.3 Experiencia 3: 24

MTR216 LABORATORIO DE SENSORES Y ACTUADORES SEMESTRE 2022-2 2


PONTIFICIA UNIVERSIDAD CATÓLICA DEL PERÚ INGENIERÍA MECATRÓNICA

INTRODUCCIÓN A LABVIEW

OBJETIVOS
● Familiarizar al alumno con el entorno de LabVIEW
● Desarrollar programas en lenguaje gráfico para LabVIEW, utilizando instrucciones
básicas.

MATERIALES
● Software LabVIEW 2019

1. CONCEPTOS BÁSICOS DE LABVIEW (Laboratory Virtual Instrument Engineering


Workbench)
Es un entorno de programación diseñado para crear interfaces con cualquier instrumento de
medición. LabVIEW utiliza un lenguaje de programación G (Graphical programming language),
esto hace que el entorno sea sencillo de entender, tanto para programadores profesionales
como para estudiantes.

LabVIEW reúne asistentes interactivos, generación de códigos y conectividad con diversos


dispositivos, gracias a esto, puede ser incorporado en sistemas industriales o de laboratorio ya
existentes. Este software es capaz de adquirir y generar señales desde dispositivos USB, tarjetas
de entrada como PCI (Componente Periférico de Interconexión) y sistemas basados en Ethernet.
Otra característica es que cuenta con más de 600 funciones para la síntesis de señales, análisis
de frecuencia, probabilidad, estadística, matemática, ajuste de curva, interpolación,
procesamiento digital y analógico de señales. Se pueden extender las aplicaciones a tareas más
específicas, por ejemplo: sonido, vibraciones, máquinas de visión, comunicaciones en
radiofrecuencia y otras.

Después de adquirir, procesar y analizar los datos, LabVIEW es capaz de mostrar la información
de una forma sencilla y exacta. Genera reportes, guarda la información obtenida, publica
reportes en Internet, cuenta con conectividad con bases de datos entre otras funcionalidades.

1.1 ENTORNO DE LABVIEW

El entorno de LabVIEW presenta las siguientes partes: Panel Frontal (Front Panel), Ventana del
Diagrama de Bloques (Block Diagram Window), Paleta de Controles (Controls Palette), Paleta de
Funciones (Functions Palette) y la Paleta de Herramientas (Tools Palette) (Ver Figura 1).

A continuación, se definirán las partes antes mencionadas, así como algunos conceptos
necesarios para comprender el entorno:

MTR216 LABORATORIO DE SENSORES Y ACTUADORES SEMESTRE 2022-2 3


PONTIFICIA UNIVERSIDAD CATÓLICA DEL PERÚ INGENIERÍA MECATRÓNICA

Figura 1. Entorno del LabVIEW y sus partes principales

1. Instrumento Virtual: Es todo programa que ha sido realizado en LabVIEW. Los


Instrumentos Virtuales (VI) son útiles porque nos permiten reemplazar equipos de
medición y análisis. Todos los archivos tienen como extensión (.vi).
2. Panel Frontal: Es la interfaz gráfica de usuario para el desarrollo de los VIs. En esta vista
se podrán crear los controles de entrada de datos e indicadores (numéricos o gráficos).
3. Paleta de Controles: En ella podemos encontrar todos los indicadores y controles que
se pueden utilizar en el Panel Frontal, se acceder del siguiente modo: View>>Controls
Palette.
4. Ventana de Diagrama de Bloques: En esta ventana es donde se realiza toda la
programación mediante el uso de los Bloques, los cuales se conectan mediante la
herramienta Cable.
5. Paleta de Funciones: En ella podemos acceder a todos los bloques que nos permiten
realizar la programación. Se puede acceder del siguiente modo: View>>Functions
Palette
6. Diagrama de Bloques: Es la programación en Lenguaje G, se realiza mediante el uso de
bloques que representan diferentes funcionalidades (estructuras, operaciones, filtros,
etc.). Representa el código fuente del programa.

MTR216 LABORATORIO DE SENSORES Y ACTUADORES SEMESTRE 2022-2 4


PONTIFICIA UNIVERSIDAD CATÓLICA DEL PERÚ INGENIERÍA MECATRÓNICA

Figura 2. Ejemplos de indicadores y controles (Izq.) y Bloques de Programación (Der.)

1.2 TIPOS DE VARIABLES Y TIPOS DE DATOS

En el panel frontal de LabVIEW se pueden crear controles e indicadores, que son las terminales
interactivas de entrada y salida del VI, respectivamente. Los controles pueden ser botones,
perillas, etc. Mientras que los indicadores pueden ser un LED o un indicador gráfico. Debe
notarse que como los controles son dispositivos de entrada, son aquellos que suministran de
datos al diagrama de bloques del VI. Por otro lado, los indicadores al ser dispositivos de salida,
muestran los datos que el diagrama de bloques adquiere o genera.

En el diagrama de bloques podemos crear constantes, que son valores numéricos o booleanos
que no se visualizan en el panel frontal y no cambian su valor durante la ejecución del programa.

1.2.1 CONTROLES E INDICADORES

Los controles e indicadores sirven como entradas y salidas en el panel frontal, respectivamente.
Existen diferentes tipos, que a continuación se detallan:

Numéricos: pueden representar números de varios tipos como un entero o real. Los dos objetos
numéricos comunes son el control numérico y el indicador numérico, como se muestra en
la Figura 3. Los objetos como medidores y perillas también representan datos numéricos.

Figura 3. (a) Incremento/Reducción de Control Numérico; (b) Control; (c) Indicador

Booleanos: representa aquellos datos que solamente tienen dos estados posibles, como TRUE
o FALSE u ON y OFF o ‘1’ y ‘0’. Los objetos Booleanos se representan como interruptores,
botones y LEDs como puede observarse en la Figura 4.

MTR216 LABORATORIO DE SENSORES Y ACTUADORES SEMESTRE 2022-2 5


PONTIFICIA UNIVERSIDAD CATÓLICA DEL PERÚ INGENIERÍA MECATRÓNICA

Figura 4. Controles e Indicadores Booleanos

1.2.2 CONSTANTES

Son aquellos datos que no cambian durante la ejecución del programa. En la Figura 5 se observa
un ejemplo del uso de una constante en el cálculo del área de un triángulo.

Figura 5. Constante 0.5 en el cálculo del área de un triángulo

LabVIEW cuenta con varios tipos de datos, y estos se asocian con un tipo de variable específico.
Por ejemplo, las variables booleanas se asocian con un tipo de dato booleano (TRUE o FALSE);
mientras que las variables numéricas se asocian con un tipo de dato numérico (byte entero,
punto flotante, etc.). En la Tabla 1 se muestran de los tipos de Datos numéricos más usados.

MTR216 LABORATORIO DE SENSORES Y ACTUADORES SEMESTRE 2022-2 6


PONTIFICIA UNIVERSIDAD CATÓLICA DEL PERÚ INGENIERÍA MECATRÓNICA

Tabla 1 Tipos de Datos numéricos más usados en LabVIEW

Tipo de Dato Tipo de Dato


Símbolo Rango Símbolo Rango
Numérico Numérico

Punto flotante
Byte entero
de precisión [–3.40e+38, 3.40e+38] [–128 ,127]
con signo
simple
Punto flotante Word o
[–1.79e+308,
de precisión palabra entero [–32 768, 32 767]
1.79e+308]
doble con signo
Punto flotante [–1.19e+4932,
Entero largo [–2 147 483 648,
de precisión 1.19e+4932
con signo 2 147 483 647]
extendida
Igual que el de punto
Punto flotante
flotante de precisión
de precisión Byte entero sin
simple pero por cada [0, 255]
compleja signo
parte (real e
simple
imaginaria)
Igual que el de punto
Punto flotante
flotante de precisión
de precisión Word entero
doble pero por cada [0, 65 535]
compleja sin signo
parte (real e
doble
imaginaria)
Igual que el de punto
Punto flotante
flotante de precisión
de precisión Entero largo
extendida pero por [0, 4 294 967 295]
compleja sin signo
cada parte (real e
extendida
imaginaria)
Tiempo mínimo:
01/01/1600 00:00:00
Marca de
Tiempo máximo UTC:
tiempo
01/01/3001 00:00:00
UTC

MTR216 LABORATORIO DE SENSORES Y ACTUADORES SEMESTRE 2022-2 7


PONTIFICIA UNIVERSIDAD CATÓLICA DEL PERÚ INGENIERÍA MECATRÓNICA

1.3 PROGRAMACIÓN GRÁFICA (G PROGRAMMING)

Como ya se mencionó es el tipo de programación usada en el LabVIEW que utiliza los diagramas
de bloques. Para esto tenemos que entender el Flujo de Datos, que se da mediante Cables.

1.3.1 FLUJO DE DATOS

Los lenguajes tradicionales ejecutan el programa según la secuencia escrita. En el Lenguaje G, el


principio es el de Flujo de Datos, donde un nodo solamente ejecuta su función cuando los datos
necesarios están disponibles en todos sus terminales de entrada. Al terminar su ejecución, el
nodo enviará los datos procesados a todos los terminales de salida conectados.

Figura 6. Flujo de Datos en Lenguaje Gráfico

1.3.2 CABLES

Son los encargados de transferir datos entre los diagramas de bloques. Los cables son de
diferentes colores, estilos y grosores dependiendo del tipo de dato que transfiere. Puede ocurrir
que aparezca un cable roto, ver Figura 7, lo que nos indica que el tipo de dato que envía un
bloque es diferente e incompatible con el tipo de dato del bloque de entrada.

Figura 7. Cable Roto

La herramienta con la que se realiza el cableado se encuentra en la Paleta de Herramientas, se


llama herramienta de cableado , ver Figura 8.

Figura 8. Paleta de herramientas. Herramienta de cableado

En la Tabla 2 se muestran los distintos tipos de conexión.

Tabla 2- Los distintos tipos de conexión en el LabVIEW

MTR216 LABORATORIO DE SENSORES Y ACTUADORES SEMESTRE 2022-2 8


PONTIFICIA UNIVERSIDAD CATÓLICA DEL PERÚ INGENIERÍA MECATRÓNICA

Tipo de Dato Color


Numérico – Punto Flotante Naranja
Numérico – Entero Azul
Boolean Verde
String Fucsia

1.4 HERRAMIENTAS DE PROGRAMACIÓN GRÁFICA

1.4.1 PALETA DE HERRAMIENTAS

En ella encontramos las diferentes herramientas que nos ayudan a interactuar con el entorno
del LabVIEW (ver Figura 8). Se mencionarán algunas herramientas comunes:

Herramienta de Posicionamiento : Nos permite seleccionar, mover, cambiar tamaño de


los diferentes objetos en el Panel Frontal y en la Ventana de Diagramas de Bloques.

Herramienta de Operación : Nos permite cambiar los valores de un control.

Herramienta de Cableado : Nos permite realizar las conexiones entre los bloques de
programación.

1.4.2 BARRA DE HERRAMIENTAS

Se encuentra en la parte superior de las ventanas de Diagrama de Bloques y Panel Frontal. En


ellas se encontrarán las opciones de comando para ejecutar, parar, pausar o ejecutar paso a
paso el programa diseñado, ver Figura 9.

Figura 9. Barra de Herramientas en Panel Frontal (izq.) y Diagrama de Bloques (der.)

1.5 ESTRUCTURAS DE PROGRAMACIÓN

1.5.1 LAZOS

Los lazos o bucles de programación permiten ejecutar varias veces un mismo código, pudiéndose
controlar el número de veces que se ejecuta. Existen dos tipos de lazos: lazo While y lazo For. A
continuación, se explica el funcionamiento de cada uno de ellos.

En la ventana de Diagrama de Bloques, en la Paleta de Funciones Programming>>Structures


encontrará los diferentes lazos que pueden ser utilizados en la programación (Ver Figura 10).

MTR216 LABORATORIO DE SENSORES Y ACTUADORES SEMESTRE 2022-2 9


PONTIFICIA UNIVERSIDAD CATÓLICA DEL PERÚ INGENIERÍA MECATRÓNICA

Figura 10. Bloques de lazos

While: Este lazo garantiza la ejecución del código que contiene al menos una vez, ya que la
condición de finalización del lazo se evalúa al final. Posee una terminal de iteración que indica
el número de iteración en que se encuentra el lazo (empieza en cero) y una terminal de
condición a la cual se cablea la condición que detendrá el lazo (valor verdadero (´1´) en la
terminal detiene el lazo).

Figura 11. Ventanas de programación del LabVIEW para el Lazo While, (a) Panel Frontal y (b) Diagrama de Bloques

For Loop: Este lazo posee una terminal de conteo en la cual se indica el número de veces que se
ejecutará el código. Si se cablea el valor cero a la terminal de conteo el código al interior del lazo
no se ejecutará. Al igual que para el lazo While la terminal de iteración empieza en cero.

Figura 12. Estructura de lazo For

MTR216 LABORATORIO DE SENSORES Y ACTUADORES SEMESTRE 2022-2 10


PONTIFICIA UNIVERSIDAD CATÓLICA DEL PERÚ INGENIERÍA MECATRÓNICA

Adicionalmente es posible configurar el lazo For, Figura 13, para agregar una terminal de
condición, haciendo click derecho sobre el lazo y seleccionando la opción Conditional Terminal.
De esta forma el lazo se ejecutará el número de veces especificado o una vez que se cumpla la
condición de salida, lo que ocurra primero.

Figura 13. Lazo For con terminal de condición

1.5.2 CASOS

Se utilizan estructuras condicionales cuando las operaciones a realizar dependen del estado de
una variable. Las estructuras se generan en el panel de bloques:

Panel de Funciones>>Programming>>Structures>>Case Structure

En la Figura 14, se quiere realizar la operación de suma o resta dependiendo de un control


Booleano (Verdadero o Falso). En este caso, la estructura tiene dos entradas y una salida. Para
conectar las entradas o salidas al bloque, basta con trazar una línea con el carrete entre el
control de entrada y la estructura; con ello, se generará un punto desde el cual se puede trabajar
dentro de la estructura. Se puede navegar entre los casos a través de las flechas que aparecen
al lado de las etiquetas “False” o “True”, estos valores también pueden ser numéricos, todo
depende del tipo de datos de la variable que controla a la estructura.

Figura 14. Ejemplo del uso de estructura condicional. (a) Caso sea verdadero. (b) Caso sea falso

1.5.3 TÚNELES

Los túneles, ver Figura 15, permiten la entrada y salida de información de las estructuras de
programación, como de los lazos While y For. La forma en que los datos salen de una estructura
puede ser configurada al dar click derecho sobre el túnel; sin embargo, LabVIEW crea los túneles
de la siguiente forma por defecto:

● Lazo While: El túnel saca de lazo el último valor (Modo Last Value).
● Lazo For: El túnel saca del lazo un arreglo de valores (Modo Indexing).

MTR216 LABORATORIO DE SENSORES Y ACTUADORES SEMESTRE 2022-2 11


PONTIFICIA UNIVERSIDAD CATÓLICA DEL PERÚ INGENIERÍA MECATRÓNICA

Figura 15. Izq. Túnel en modo Last Value. Der. Túnel en modo Auto-indexing.

Es importante recordar cómo funciona el flujo de datos en la programación G: un nodo


solamente ejecuta su función cuando los datos necesarios están disponibles en todos sus
terminales de entrada. Al terminar su ejecución, el nodo enviará los datos procesados a todos
los terminales de salida conectados.

1.6 SUBVI’S

Son similares a funciones o subrutinas de un lenguaje de programación convencional. Se le


puede considerar como una caja negra con entradas y salidas. Haciendo doble clic sobre el subVI
se abre el VI donde se puede observar o bien modificar el mismo.

El Ícono/Conector de un VI o subVI sirve como identificador de cada subVI. Éste se encuentra en


la esquina superior derecha del panel frontal y se muestran como “Ícono o Icon”. A su izquierda
se puede encontrar los “Terminales de Conexión o Panel Conector” (ver Figura 16). Nótese que
en el Diagrama de Bloques o Block Diagram solo aparece “Icon”. Haciendo doble clic cuando se
muestra el ícono del VI, éste se puede modificar como si fuese una imagen de mapa de bits.
Cuando se muestran las conexiones del VI, se puede asignar las entradas y salidas que tendrá el
VI cuando se le utilice como SubVI, para agregar conexiones basta con hacer clic en una de las
conexiones del ícono y luego seleccionar el objeto asociado a la entrada o salida.

Figura 16. Vista de Ícono y Terminal de Conexiones

El conector de un VI está constituido por una serie de terminales que corresponden siempre a
controles o indicadores en el panel frontal. Estos se pueden agregar haciendo clic derecho en el
panel frontal. En la Figura 17, se puede observar como agregar los 2 controladores ‘x’ e ‘y’, y el
indicador ‘Resultado’. De modo que quede como en la Figura anterior.

MTR216 LABORATORIO DE SENSORES Y ACTUADORES SEMESTRE 2022-2 12


PONTIFICIA UNIVERSIDAD CATÓLICA DEL PERÚ INGENIERÍA MECATRÓNICA

Figura 17. Ejemplo de cómo agregar un controlador numérico en LabVIEW

El ícono representa gráficamente el subVI en el Diagrama de Bloques y el Terminal de Conexiones


define cuantas y cuáles son las entradas o salidas del subVI. El Terminal de Conexiones se
modifica haciendo clic derecho sobre su imagen y luego haciendo clic sobre la opción “Patterns”.
En la Figura 18, se muestra como modificar el terminal de conexiones.

Figura 18. Cómo modificar el “Terminal de Conexiones” en LabVIEW

Figura 19. Ejemplo de cómo agregar entradas y salidas a un SubVI en LabVIEW

Para el ejemplo de la Figura 19 se necesitan 2 entradas (‘x’ e ‘y’) y una salida (‘Resultado’). En la
Figura 19.a se muestra las terminales de conexión correspondiente para dicho ejemplo. Luego,
en la Figura 19.b se selecciona el cuadrado superior izquierdo, poniéndose de color negro para
que más adelante, en la Figura 19.c, al seleccionar la entrada ‘x’ se ponga automáticamente de
color naranja. Esto indica que la entrada o salida ha sido correctamente seleccionada.
Finalmente, en la Figura 19.d, se muestra cómo debe de quedar luego de seleccionar todos los
parámetros.

MTR216 LABORATORIO DE SENSORES Y ACTUADORES SEMESTRE 2022-2 13


PONTIFICIA UNIVERSIDAD CATÓLICA DEL PERÚ INGENIERÍA MECATRÓNICA

Luego podemos modificar la apariencia del VI o SubVI haciendo doble clic en Icon. Recuerde que
un SubVI se puede agregar al programa a través del panel de Diagrama de Bloques haciendo clic
derecho: Paleta de Funciones (Functions) >> “Select a VI”. Recuerde que para agregar dicho
SubVI primero debe guardarlo con algún nombre.

En la Figura 20 se muestra un ejemplo de un SubVI que ha sido creado y guardado con el fin de
calcular el promedio de 2 números cualesquiera (Izquierda). Luego este mismo SubVI ha sido
agregado en un VI apareciendo con el nombre de ‘Demo LabVIEW’ (Derecha).

Figura 20. (a) Representación de un VI. (b) Representación de un SubVI

MTR216 LABORATORIO DE SENSORES Y ACTUADORES SEMESTRE 2022-2 14


PONTIFICIA UNIVERSIDAD CATÓLICA DEL PERÚ INGENIERÍA MECATRÓNICA

1.7 ALGUNAS FUNCIONES

1.7.1 SIMULATE SIGNAL

Permite la simulación básica de determinadas ondas, pudiendo configurar parámetros como


offset, frecuencia, amplitud, fase y ruido desde variables externas. La frecuencia de muestreo
solo se configura en el bloque por lo que no puede ser una variable.

Figura 21. Simulate Signal

Figura 22. Simulate Signal – Opciones

MTR216 LABORATORIO DE SENSORES Y ACTUADORES SEMESTRE 2022-2 15


PONTIFICIA UNIVERSIDAD CATÓLICA DEL PERÚ INGENIERÍA MECATRÓNICA

1.7.2 BASIC FUNCTION GENERATOR

Permite crear una función pudiendo manipular todos los parámetros necesarios de la señal.

Figura 23. Basic Function Generator

a) Offset es el desfase DC de la señal. Por defecto es 0.0.


b) Reset signal, si es VERDADERO, restablece la fase con el valor de control de fase y la
marca de tiempo a cero. Por defecto es FALSO.
c) Signal type Es el tipo de señal a generar.
a. Señal sinusoidal (por defecto)
b. Señal triangular
c. Señal cuadrada
d. Señal diente de cierra
d) Frequency es la frecuencia de la señal en hertz. Por defecto es 10.
e) Amplitude es la amplitud de la señal. La amplidut también es el voltage pico. Por defecto
es 1.0.
f) Phase es la fase inicial, en grados, de la señal. Por defecto es 0. El VI ignora la fase si la
señal de reset es FALSO.
g) Error in describe las condiciones de error que ocurren antes que se ejecute este nodo.
La entrada provee un error estándar durante la ejecución.
h) Sampling info contiene la información de muestreo.
a. Fs es la frecuencia de muestreo en muestras por segundo. Por defecto es 1000.
b. #s es el número de muestras en la señal. Por defecto es 1000.
i) Square wave duty cycle es el porcentage de tiempo que una señal cuadrada se
mantiene en alta durante un periodo. El VI utiliza este parámetro solo si el tipo de señal
es cuadrada. Por defecto es 50.
j) Signal out es la señal generada.
k) Phase out es la fase de la señal en grados.
l) Error out contiene la información de error. La salida provee un error estándar luego de
su ejecución.

MTR216 LABORATORIO DE SENSORES Y ACTUADORES SEMESTRE 2022-2 16


PONTIFICIA UNIVERSIDAD CATÓLICA DEL PERÚ INGENIERÍA MECATRÓNICA

1.7.3 FILTER

Ruta: Functions-> Express -> Signal Analysis ->Filter

Figura 24. Filter

ß Tipo de filtro

ß Frecuencia de Corte

ß Topología

ß Orden del Filtro

Figura 25. Opciones del filtro

NOTA: SE SUGIERE LEER ANEXO1_FILTROS

MTR216 LABORATORIO DE SENSORES Y ACTUADORES SEMESTRE 2022-2 17


PONTIFICIA UNIVERSIDAD CATÓLICA DEL PERÚ INGENIERÍA MECATRÓNICA

1.7.4 SPECTRAL MEASUREMENT

Normalmente las señales se visualizan en el dominio del tiempo (Amplitud vs Tiempo); sin
embargo, muchas veces es de gran ayuda poder observarlas en el dominio de la frecuencia
(Amplitud vs Frecuencia). El análisis en el dominio de la frecuencia permite identificar las
componentes con frecuencias predominantes, lo cual no es posible realizar en el domino del
tiempo. Además, trabajando con una señal en el dominio de la frecuencia es posible aplicar
diferentes filtros para obtener una señal deseada. Spectral Measurement permite observar la
señal en el dominio de la frecuencia usando la transformada de Fourier.

Figura 26. Spectral Measurement

Figura 27. Spectral Measurement - Opciones

1.7.5 MERGE SIGNALS:

MTR216 LABORATORIO DE SENSORES Y ACTUADORES SEMESTRE 2022-2 18


PONTIFICIA UNIVERSIDAD CATÓLICA DEL PERÚ INGENIERÍA MECATRÓNICA

Esta herramienta nos ayuda a juntar señales para visualizarlas en un solo gráfico, así como
ahorrar cables en el “Diagram Block”.

Figura 28. Merge Signals

1.7.6 SPLIT SIGNALS:

Esta herramienta nos ayuda a separar señales que son enviadas por un solo cable. Esto nos
ayuda en el caso de que en la adquisición de Datos tengamos más de una señal en cada lectura.

Figura 29. Split Signals

1.7.7 IN RANGE AND COERCE

In Range and Coerce te permite forzar un valor dentro de un determinado rango y recibir una
señal indicando si está o no en el rango definido.

Figura 30. In Range and Coerce

1.7.8 TO DOUBLE PRECISION FLOAT

Figura 31. To Double Precision Float

1.7.9 WAVEFORM CHART Y WAVEFORM GRAPH

Sirven para mostrar la señal de manera gráfica

MTR216 LABORATORIO DE SENSORES Y ACTUADORES SEMESTRE 2022-2 19


PONTIFICIA UNIVERSIDAD CATÓLICA DEL PERÚ INGENIERÍA MECATRÓNICA

Figura 32. (a) Waveform Chart (b) Waveform Graph

La diferencia principal entre Waveform Chart y Waveform Graph es que el primero acumula la
data, mientras que el segundo refresca la información mostrada cuando recibe nueva data. Por
ejemplo, un Waveform Chart puede recibir como entrada un escalar o un arreglo unidimensional
e irá mostrando el valor(es) de dicha entrada, así como de todas las entradas anteriores. Por el
contrario, para el caso del Waveform Graph, la entrada debe ser un arreglo unidimensional, es
decir, no puede ser un escalar. Asimismo, todo el arreglo se mostrará en una sola iteración, la
siguiente iteración borrará toda la información y volverá a mostrar el arreglo con los nuevos
valores actualizados.

2. TEOREMA DE MUESTREO DE NYQUIST

Al digitalizar una señal analógica se debe tener en cuenta la pérdida de información tanto en sus
valores de amplitud, por la conversión a valores discretos de amplitud, como en componentes
en el tiempo, debido a que se toman muestras periódicas de la señal para la digitalización.

El hecho de tomar muestras de la señal a intervalos de tiempo fijos requiere un conocimiento


previo de la señal a digitalizar, pues es necesario saber que tan rápido varía la señal en el tiempo
para poder elegir un periodo de muestreo adecuado y no perder datos importantes sobre el
comportamiento de la señal. Cuando el periodo de muestreo no es el adecuado ocurre el efecto
llamado ‘aliasing’, el cual conlleva a la pérdida de información y la imposibilidad de recuperarla
correctamente.

El teorema de muestreo de Nyquist establece que para muestrear correctamente una señal se
necesita una frecuencia de muestreo superior que el doble de la componente de frecuencia
mayor de la señal para poder reconstruirla de forma adecuada, de otra manera, el contenido en
alta frecuencia de la señal va a aparecer dentro del espectro de interés generando ‘aliasing’.

Consideremos como ejemplo una señal sinusoidal de 1Hz:

Primero se muestrea la señal sinusoidal con 2Hz (límite de Nyquist), se observa que con las
muestras tomadas se puede regenerar la señal original (Ver Figura 33).

MTR216 LABORATORIO DE SENSORES Y ACTUADORES SEMESTRE 2022-2 20


PONTIFICIA UNIVERSIDAD CATÓLICA DEL PERÚ INGENIERÍA MECATRÓNICA

Figura 33. Señal muestreada a 2Hz

En cambio, si se muestrea por ejemplo a 1.5 Hz (señal inferior a la frecuencia límite), con los
puntos muestreados se regenera una señal completamente distinta a la señal original (señal
punteada), a lo que se le conoce como un ‘alias’ de la señal (Ver Figura 34).

Figura 34. Señal muestreada a 1.5Hz

El teorema de Nyquist establece la frecuencia de muestreo mínima para que no se genere


‘aliasing’, sin embargo, para poder reconstruir una señal correctamente es recomendable
utilizar una frecuencia de muestreo mayor a la frecuencia de Nyquist con la finalidad de tener
un mayor número de muestras significativas.

3. INFORMACION ADICIONAL

Para mayor información, se recomienda al alumno visitar la página de National Instruments


(http://www.ni.com/academic/students/learnlabview/esa/) dónde podrá encontrar videos en
línea, ejercicios y exámenes de LabVIEW.

4. EXPERIENCIA PRÁCTICA

4.1 MANEJO DE LABVIEW

4.1.1 EXPERIENCIA 1

MTR216 LABORATORIO DE SENSORES Y ACTUADORES SEMESTRE 2022-2 21


PONTIFICIA UNIVERSIDAD CATÓLICA DEL PERÚ INGENIERÍA MECATRÓNICA

La experiencia 2 consiste en generar un VI que calcule la multiplicación y división de dos


números, con el siguiente Panel Frontal:

Figura 35. Panel Frontal – Experiencia 1.1

La operación entre el operando X e Y se selecciona con el interruptor. El resultado se muestra


en el indicador “Z” y en el indicador gráfico.

Luego de realizar esto, debe crear un SubVI con el nombre de ‘’EJM PUCP”, ver Figura 36, que
haga lo mismo que la experiencia 1 (Exp 1.2).

Figura 36. SubVI – Experiencia 1.2

4.1.2 EXPERIENCIA 2:

La experiencia 2 nos permite generar alarmas usando comparadores, escalamiento y simulación


de señales. Se asume un sistema ideal que cuenta con un sensor de temperatura y una alarma
para indicar si esta es óptima. La señal de salida del sensor es de 0 a 5 VDC y considera 100°C/V.
La temperatura adecuada para el proceso de es 300°C ±10; si la temperatura se encuentra fuera
de este rango se prenderá la señal de alarma. Adicionalmente, se debe mostrar la temperatura
medida por el sensor y graficar las señales de entrada.

MTR216 LABORATORIO DE SENSORES Y ACTUADORES SEMESTRE 2022-2 22


PONTIFICIA UNIVERSIDAD CATÓLICA DEL PERÚ INGENIERÍA MECATRÓNICA

Figura 37. Exp 2- Front Panel

a. Generar una señal sinusoidal que debe ser de 0.1Vp (voltaje pico), 0.2Hz, con
temporización de 1000 muestras por segundo y con posibilidad de modificar el offset
que varié de 3 a 4v. Además, la señal deberá tener ruido blanco de una amplitud de
0.05. Seleccionar el número de muestras en 5000.

Figura 38. Configuración de las opciones del bloque Simulate Signal

b. Filtrar la señal y graficar la señal con ruido y sin ruido usando Waveform Chart.
c. Escalar la señal filtrada para que se muestre en un indicador.
d. Validar los valores óptimos de la señal y usando un botón tipo LED indicar si los
valores están dentro o fuera de rango (Rojo, fuera de rango y Verde, dentro de rango)

MTR216 LABORATORIO DE SENSORES Y ACTUADORES SEMESTRE 2022-2 23


PONTIFICIA UNIVERSIDAD CATÓLICA DEL PERÚ INGENIERÍA MECATRÓNICA

Figura 39. Ejemplo del Block Diagram del VI solicitado – Experiencia 2

4.1.3 EXPERIENCIA 3:

Generar un VI que ayude a entender el procedimiento de muestreo de señales. Para esto, se


requiere que se generen dos señales a las cuales se les pueda variar el tiempo de muestreo
independientemente. Adicionalmente se requiere un Pulsador- LED que pueda suspender o
iniciar la ejecución del programa.

Figura 40. Panel Frontal para experiencia 3

Se debe generar dos señales, una que represente la señal original y otra la señal muestreada
(Utilice los bloques Basic Function Generator). Al crear la señal original, considerar que también
es una señal digital creada por LabVIEW a la cual se le asignará una frecuencia de muestreo (Fs

MTR216 LABORATORIO DE SENSORES Y ACTUADORES SEMESTRE 2022-2 24


PONTIFICIA UNIVERSIDAD CATÓLICA DEL PERÚ INGENIERÍA MECATRÓNICA

= 10k). Además, para que las variaciones de fase se actualicen instantáneamente poner una
constante de “True” para la entrada “reset signal”.

El botón de “ON/OFF” del bucle del programa debe ser un botón tipo LED y permitirá iniciar o
pausar el programa.

Utilice un indicador gráfico para mostrar las 2 señales.

Probar el sistema para una señal sinusoidal de 10Hz, 1Vp, 1V de Offset. Quitar la auto escala en
el eje X de la gráfica y ajustarla a 0.2.

Figura 41. Exp3 - Block Diagram

MTR216 LABORATORIO DE SENSORES Y ACTUADORES SEMESTRE 2022-2 25

También podría gustarte