You are on page 1of 8

INSTITUCIÓN UNIVERSITARIA ANTONIO JOSÉ CAMACHO

FACULTAD DE INGENIERÍA

INSTRUMENTACIÓN INTELIGENTE

PRACTICA DE LABORATORIO No. 2


ESTRUCTURAS DE CONTROL DE FLUJO
MANEJO DE DATOS SERIALES

1. OBJETIVOS

a. Reforzar conocimientos sobre el ambiente de desarrollo LabVIEW.


b. Desarrollar diferentes ejercicios en los cuales se utilicen algunas estructuras de control
de flujo.
c. Desarrollar diferentes ejercicios que permitan manipular y manejar nuevas
herramientas del ambiente LabVIEW.
d. Crear un patrón de señal sencilla para utilizarlo como entrada serie.
e. Guardar información en forma de arreglos y teniendo en cuanta los bytes de
información.
f. Simular la recepción de datos a través del puerto serie.

2. MARCO TEORICO

Un programa en cualquier entorno de desarrollo, no se


encuentra limitado a una secuencia lineal de
instrucciones. Durante su ejecución, puede ser necesario
que se bifurque, repetir código o tomar decisiones.
LabVIEW, al igual que otros entornos, nos provee con
facilidades para crear estructuras de control de flujo, que
nos permiten modificar el comportamiento del programa a
medida que se ejecuta, dependiendo de las necesidades
u decisiones del operador. En la figura 1 se muestra la
paleta de estructuras de LabVIEW.

Podríamos dividir “informalmente” las estructuras de


control en dos grupos. El primero son las estructuras de
decisión, las cuales seleccionan, entre un grupo de
acciones, aquella que ejecutan por una sola vez si se
cumple una condición en particular. La estructura
representativa de este tipo dentro de LabVIEW es CASE.
El segundo grupo son las estructuras de ciclo, que
ejecutan una sola acción un número determinado de
veces. Las estructuras de ciclo más utilizadas en
LabVIEW son WHILE y FOR. Examinemos con mayor
detenimiento algunas de las características de cada uno
de estos ciclos.

• WHILE (MIENTRAS): Este ciclo ejecuta las


acciones contenidas dentro de si al menos una
vez. El flujo es controlado por medio de una Figura 1: Paleta de estructuras
condición la cual es chequeada en cada iteración
y es establecida por medio del icono Loop Condition, con dos posibles opciones:
Repetir si su condición es falsa o verdadera [1]. Para modificar el estado de la
condición hacemos uso de la herramienta de operación de la Paleta de Herramientas
[2]. Adicionalmente, posee un terminal de número de operaciones , el cual permite
extraer el número de veces que se ha realizado cierta iteración.
• FOR (PARA): A diferencia del ciclo WHILE, el ciclo FOR posee un contador que
determina el número de iteraciones a realizarse y el cual es modificado por medio del
terminal de cuentas . Al igual que WHILE, posee un terminal de número de
iteraciones [1].
• CASE (CASO): Esta estructura permite ejecutar dos o varios casos dependiendo del
valor de su condición. Los casos son agregados o modificados por medio de la lista
desplegable existente en la parte superior . La variable que condiciona los
casos se conecta al terminal identificado como . Los casos pueden tomar valores
numéricos, boléanos o cadenas.

Adicionalmente durante esta práctica haremos uso de


las ventanas de graficación. Estos indicadores
numéricos permiten mostrar uno o más gráficos de
valores históricos, y son de gran utilidad para la
visualización de señales. Para hacer uso de ellos,
debemos acceder a Panel Frontal → Paleta de
Controles → Express → Graph Indicators, como se
muestra en la figura 2. La diferencia entre el Chart y
el Graph, es que el primero grafica de manera
interactiva o en tiempo de ejecución los datos. El
segundo presenta un grupo de valores existentes y no
Figura 2: Paleta de indicadores gráficos
tienen la capacidad de agregar nuevos valores a los
ya presentados.

Una de las razones principales por las cuales se utiliza LabVIEW es su capacidad para adquirir
y manipular datos provenientes de una gran variedad de instrumentos sensando el mundo real.
Cualquiera que sea su aplicación, es necesario recolectar información para ser procesada por
un computador, ya sea comandos proveídos por el usuario o datos tomados de los
instrumentos. Varias soluciones son disponibles, pero la mejor depende de las
desventajas que esta dispuesto a aceptar. Antes de comprar una pieza de hardware, necesita
analizar y entender el tipo de señales que esta tratando de medir. Luego, debe determinar si
el sistema de adquisición de datos corresponde a un instrumento tradicional, como un
multimetro, controlable por medio de software, o por el contrario desea construir un
instrumento virtual completo, que adquiera las señales por medio de hardware de adquisición
de datos genérico.

En este último caso, National Instruments provee una fácil manera de realizar la configuración y
adquisición de datos de diferentes fuentes, por medio de la aplicación Measurement &
Automation Explorer, también conocida como MAX. Esta aplicación ejerce como
Interfase entre la aplicación, en este caso LabVIEW, y el manejador del dispositivo. Para los
dispositivos de National Instruments, corresponde al NI-DAQmx, por lo cual este debe estar
instalado en su computador para realizar mediciones.

3. PROCEDIMIENTO

3.1 Ejercicio 1: Utilización del ciclo WHILE

Este ejercicio fue proporcionado por una fuente anónima. Tiene la ventaja de ser de gran
ayuda para posteriores ejercicios.

1. Inicie LabVIEW. Seleccione la opción Blank VI, del recuadro New.


2. Montar el panel frontal y diagrama de bloques que se ilustra en la figura 3.
Utilizaremos como indicador gráfico un Graph. El indicador canal es de tipo cadena
Los otros son indicadores y controles numéricos.
3. El ciclo WHILE debe expandirlo para poder introducir todos los elementos en él. Su
tiempo de ejecución será de 100ms.
4. Genere tres señales sinusoidales con ruido blando con frecuencias de 20Hz, 50Hz y
100Hz, fases de 0°, 45° y 90°, amplitud de 1 y frecuencia de muestreo de 1000Hz.
Agregue a cada señal un ruido blanco de amplitud 0.6 y Seed de -1. Las señales
sinusoidales se encuentran en el Diagrama de Bloques → Panel de Funciones →
Express → Signal Analysis → Simulate Signal. Los parámetros se modifican por
medio de la ventana de configuración de los elementos. Para activar el ruido blanco
uniforme seleccione la opción Add noise, y en tipo indique Uniform White Noise.
5. Sume las 3 señales sinusoidales a través del elemento de operaciones en el dominio
del tiempo, el cual se puede encontrar en Mathematics → Integ&Diff → Time
Domain Math. Configúrelo para suma y modo continuo activando Summation y
Continuous calculation.
6. Filtre la señal resultante por medio de un filtro IIR Pasabanda de segundo orden
(Bandpass) con frecuencias de corte baja 19.5Hz y alta 20.5Hz. El filtro se encuentra
en Diagrama de Bloques → Panel de Funciones → Express → Signal Análisis.
7. Ejecute y pruebe el VI para que analice la operación que realiza. Escriba un
comentario sobre el diagrama de bloques sobre su funcionamiento y los nombres de
los integrantes.
8. Almacene el VI.

Figura 3. Ejercicio 1 (Superior) Panel frontal (Inferior) Diagrama de bloques

3.2 Ejercicio 2: Utilización del ciclo FOR

1. Seleccione la opción Blank VI, del recuadro New.


2. Dibuje el diagrama de bloques y panel frontal que se muestran el la figura 4.
Utilizaremos como indicador gráfico un Chart. El péndulo lo encuentra en el
Diagrama de Bloques → Panel de Funciones → Timing.
3. Active el indicador digital y la leyenda del Chart dando clic derecho sobre ésta para
que en Visible Items → Plot Legend y Digital Display.
4. Ejecute y pruebe el VI para que analice la operación que realiza. Escriba un
comentario sobre el diagrama de bloques sobre su funcionamiento y los nombres de
los integrantes.
5. Almacene el VI.

Figura 4. Ejercicio 2 (Superior) Panel frontal (Inferior) Diagrama de bloques

3.3 Ejercicio 3: Utilización de la estructura CASE

1. Seleccione la opción Blank VI, del recuadro New.


2. Dibuje el diagrama de bloques y panel frontal mostrado en la figura 5.
3. Dentro del ciclo WHILE, agregue una estructura CASE.
4. Dentro de la estructura CASE, en la opción TRUE, agregue los siguientes elementos:
a. Una Tabla (Controls → Modern → List & Table → Ex Table),
b. Funtions → String → Array to spreadsheet string
c. Funtions → File I/O → Write to text File.
5. Por fuera del ciclo WHILE ubique un control para un cuadro de dialogo (Funtions →
Express → Input → File Dialog).
6. Corra el VI. Cuando aparezca la caja de diálogo Choose or Enter Path or File,
seleccione la carpeta en la cual esté trabajando (o coloque el archivo en el escritorio)
y llame el archivo prueba.txt. Deje correr el VI y deténgalo cuando desee.
7. Abra el archivo prueba.txt generado.
8. Analice el funcionamiento del programa realizado y recuerde grabarlo de nuevo.
Figura 5. Ejercicio 3 (Superior) Panel frontal (Inferior) Diagrama de bloques

3.4 Ejercicio 4: Captura y análisis de datos utilizando la tarjeta de sonido.

NOTA: Para este ejercicio es necesario poseer un micrófono, conectado a la tarjeta


de sonido de su PC.

1. Inicie LabVIEW. Seleccione la opción Blank VI, del recuadro New


2. Dibuje el panel frontal y de bloques que se presenta en la figura 6.
3. En el Simulate Signal: Fr=50Hz, Fr muestreo=1KHz, Amplitud=6000, No.
Señales=100 (automático).
4. Almacene, ejecute y pruebe el VI para que analice la operación que realiza. Escriba un
comentario en el diagrama de bloques sobre su funcionamiento y los nombres de los
integrantes.

Figura 6. Ejercicio 4 (Izquierda) Panel frontal (Derecha) Diagrama de bloques

3.5 Ejercicio 5: Adquirir una señal con DAQ

1. Vamos a configurar una tarjeta de adquisición de datos. Para este procedimiento es


necesario que LabVIEW se encuentre cerrado. Acceda a la aplicación Measurement
& Automation, ubicada en el grupo de programas de National Instruments en el
menú Inicio de Windows
2. A continuación crearemos un dispositivo DAQ simulado. Para esto, de clic derecho en
la opción Devices and Interfaces, ubicada en el menú desplegable de la parte
izquireda. Seleccione la opción Create New. Al realizar esta operación, se desplegara
una ventana para seleccionar los diferentes dispositivos. Seleccione NI-DAQmx
Simulated Device y presione Finish.
3. Esta acción desplegara una nueva ventana donde aparecen los posibles dispositivos a
simular. Seleccione M-Series DAQ → PCI 6220 y presione OK. Al realizar estos
pasos aparecerá como disponible el nuevo dispositivo como PCI-6220: “Dev 1”.
4. Realice las siguientes pruebas sobre el dispositivo simulado:
a. Ejecute una auto-prueba del dispositivo. Esta operación se puede realizar
dando clic derecho sobre el nombre del dispositivo y seleccionando Self Test o
sobre la barra de botones ubicada en la parte superior. Investigue que realiza
esta operación.
b. Ingrese ahora al Test Panel del dispositivo, al cual se puede acceder ya sea
por medio de un clic derecho y seleccionar Test Panels o también por medio
de la barra de botones. En este panel seleccione la pestaña Analog Input y
luego modifique el modo de captura a Continuous. Presione el botón Start.
Observe el resultado y comente.
5. Cierre la aplicación MAX.
6. Inicie LabVIEW. Seleccione la opción Blank VI, del recuadro New
7. Construya el Panel de control y el Diagrama de bloques mostrados en la figura 7. Para
localizar el elemento DAQ Assistant, acceda a Diagrama de Bloques → Paleta de
Funciones → Express → Input. Realice la configuración de este elemento de la
siguiente manera:
a. La ventana de configuración le mostrara un menú en la parte derecha.
Seleccione de este menú las siguientes opciones Acquire Signal → Analog
Input → Votage.
b. Aparecera un segundo menú con los dispositivos existentes. Si usted NO ha
creado ningún DAQ simulado, este menú aparecerá vacio. Seleccione el
canal ai0 del dispositivo PCI 6220. Presione Finalizar.
c. A continuación se desplegara una nueva ventana. En esta se realiza la
configuración de las tareas a realizar por el dispositivo de adquisición de datos.
En la pestaña Configuration, en la sección Timing Settings seleccione los
siguientes valores: Acquisition mode = Continuous Samples, Samples to
read = 1000, Rate(Hz) = 10k. Presione OK.
8. Almacene, ejecute y pruebe el VI para que analice la operación que realiza. Escriba un
comentario en el diagrama de bloques sobre su funcionamiento, las posibles ventajas
que tiene el disponer de un dispositivo simulado y los nombres de los integrantes.

Figura 7. Ejercicio 5 (Izquierda) Panel frontal (Derecha) Diagrama de bloques

3.6 Ejercicio 6: Análisis de datos y utilización de los VI’s Express

1. Inicie LabVIEW. Seleccione la opción Blank VI, del recuadro New.


2. Construya el Panel de control y el Diagrama de bloques mostrados en la figura 8. Para
el elemento Simulate Signal seleccione en la sección de Timing la opción Simulate
Acquisition Timing. No modifique ningún otro parámetro.
3. Para el elemento DAQ Assistant, utilice las opciones del punto anterior.
4. Para ubicar el elemento Filter, acceda a Diagrama de Bloques → Paleta de
Funciones → Express → Signal Análisis. Configure este elemento de tal manera
que el filtro resultante sea IIR Chebyshev de segundo orden pasa bajos, con frecuencia
de corte de 300Hz.
5. Almacene, ejecute y pruebe el VI para que analice la operación que realiza. Modifique
el filtro a un filtro pasa altas. Ejecute y pruebe el VI para que analice la operación que
realiza. Escriba un comentario en el diagrama de bloques sobre su funcionamiento y
los nombres de los integrantes.

Figura 8. Ejercicio 6 (Superior) Panel frontal (Inferior) Diagrama de bloques

6. Remueva el ciclo WHILE del ejercicio. Para esto, de clic derecho sobre el borde del
ciclo y seleccione Remove While Loop.
7. Reemplace el gráfico Chart por un Graph.
8. Haga clic derecho sobre el Graph y en Visible Items active la opción Cursor Legend.
9. Modifique la frecuencia de la señal simulada entre valores de 10Hz a 100Hz.
10. Ejecute el VI y observe la ventana gráfica. Si la señal no es apreciable, es posible que
requiera configurar el gráfico con escala automática. Para esto, haga clic derecho
sobre la gráfica y seleccione X Scale → Autoscale X.
11. Con los cursores de la gráfica, mida manualmente la frecuencia y la amplitud de la
señal. Para crear un cursor haga clic derecho dentro del cuadro de cursores y elija
Create Cursor → Free. A continuación aparecerá en la ventana gráfica dos líneas que
puede ubicar para fijar un solo punto, el cual aparece su coordenada en la ventana de
cursor. Debe añadir otro cursor para establecer las medidas pedidas. Para realizar las
medidas, es necesario que el VI este en ejecución. Compruebe los resultados
obtenidos en forma manual con los presentados por los indicadores de Amplitud y
Frecuencia.
12. Almacene con un nuevo nombre el VI. Escriba un comentario en el diagrama de
bloques sobre su funcionamiento y los nombres de los integrantes.
TALLER

• Elabore los ejercicios planteados en el procedimiento, identificando la función que realiza


cada uno de ellos. Presente su interpretación junto con el diagrama de bloques y el panel
frontal, el cual debe mostrar el nombre de sus creadores.
• Realizar un VI que emule un secuenciador de luces (mínimo 5 LEDs de color rojo). La
velocidad de la secuencia puede ser fijada por el usuario, y además puede indicar el
sentido de la misma (de izquierda a derecha o de derecha a izquierda).
• Construya una aplicación para manipulación de sonido, la cual posea las siguientes
características:
a. La entrada de audio puede ser adquirida por medio de un micrófono o a través de
un archivo WAV.
b. Construya como un subVI, al menos dos efectos de sonido. Algunas sugerencias
son: Desplazamiento en frecuencia, Agregar ruido blanco, Mezclar dos señales.
c. La señal resultante debe ser visible en un gráfico y almacenable en un archivo
WAV.
d. Por estas especificaciones, la aplicación debe tener al menos botones que
permitan: Abrir archivo, grabar archivo, grabar del micrófono, reproducir el sonido,
agregar un efecto.

Nota: Los informes se entregan en tríos. Se recomienda trabajar con sus compañeros de
exposición.

Bibliografía

[1] Travis, Jeffrey. Kring, Jim. LabVIEW for Everyone: Graphical Programming Made Easy
and Fun, Third Edition. Prentince Hall. 2006.
[2] Cano, R. Muñoz M. A. Práctica de Laboratorio No. 1: Introducción a la Instrumentación
Virtual – Ambiente LabVIEW 8.2. Institución Universitaria Antonio José Camacho.
Facultad de Ingeniería. 2008.

You might also like