S1I01.pdf

Anuncio
PLATAFORMA PARA LA ADQUISICIÓN Y PROCESADO DE SEÑALES
DE BAJO COSTE CON INSTRUMENTACIÓN VIRTUAL
1
1
2
2
3
I.J. OLEAGORDIA , R. URRETABIZKAYA , JJ. SAMARTIN
Departamento de Tecnología Electrónica. E.U.I.T.I. de Bilbao Universidad del País Vasco
UPV/EHU. España.
Departamento de Tecnología Electrónica. E.U.I.T.I. de Bilbao Universidad del País Vasco
UPV/EHU. España.
3
Departamento de Ingeniería Eléctrica. E.U.I.T.I. de Eibar Universidad del País Vasco
UPV/EHU. España.
En conjunto la plataforma desarrollada consta de dos módulos: uno software que
transforma el PC en un instrumento virtual que conectado vía serie RS232 al otro
módulo hardware, consistente en una tarjeta de adquisición, permite la
adquisición, monitorización y procesado de señales analógicas (máximo 8) y 22
digitales como máximo. Es posible modificar la frecuencia de muestreo hasta un
máximo de 8 KHz empleando un solo canal. Por la arquitectura hardware de la
tarjeta el método de adquisición es el de Round-Robin. Las señales captadas
pueden almacenarse en fichero. Esta alternativa posibilita la monitorización y
procesado cuantas veces desee el usuario. El procesado analógico puede
realizarse tanto en el dominio del tiempo como de la frecuencia (FFT, Espectro
de Potencia, etc).Para la realización de la tarjeta de adquisición se ha empleado
el μC T89C51AC2, el software se ha desarrollado con IDE Keil μ-Visión2, para
programar el μC, ISP e IAP, el programa Flip 1.8.8. Para implementar el
instrumento virtual el entorno LabVIEW 7.0.
1. Introducción
En cualquier proceso industrial se monitorizan y controlan una serie de variables que determinan la
operatividad de todo el sistema. Desde la perspectiva didáctica, a nivel universitario, es necesario
disponer de entornos de aprendizaje donde se pueda comprobar la funcionalidad de pequeños sistemas
que complementados con entornos de simulación ofrezcan una aproximación al mundo real y en los
que se pueda llevar a cabo una estrategia de probada eficacia como es la de aprender haciendo tanto en
el uso como diseño e implementación del entorno. Con estos propósitos se aborda este trabajo
donde además de la propia plataforma se ha implementado diversa instrumentación adicional
como generadores de señal analógicos y digitales, placas con transductores y sus circuitos
acondicionadores, etc. Esta plataforma está formado por las siguientes unidades básicas:
Dos subsistemas hardware. Una que se encargará del tratamiento y acondicionamiento de las
señales a medir para ajustarlas a los requerimientos de tensión del conversor AD del microcontrolador
así como de los generadores de funciones y circuitería adicional. Otra parte basada en un
microcontrolador que hace de interfase entre los circuitos analógicos y digitales, y que vía serie se
conecta al instrumento virtual implementado en el PC. La transmisión es bidireccional ya que la tarjeta
envía al PC la señales analógicas y digitales y el PC envía señales de control, por ejemplo para
controlar la operatividad el generador de funciones basado en el XR2206.
Dos módulos software. Uno de ellos será el propio programa que almacenado en el
microcontrolador y que contendrá el programa monitor con los algoritmos pertinentes para el correcto
funcionamiento según los requerimientos funcionales. El otra módulo es el propio instrumento virtual
desarrollado en el entorno LABVIEW en el cual reside toda la capacidad de control, monitorizado y
procesado de las señales. En la figura 1 se muestra un diagrama en bloques del sistema.
Fig. 1. Estructura general del entorno
2. Especificaciones del sistema
Las característica funcionales más definitorias de la plataforma son:
ƒ Adquisición de hasta un máximo de 8 señales analógicas unipolares para el sistema de adquisición
y comprendidas entre 0 y 3v con un ancho de banda de 250 Hz por canal.
ƒ Posibilidad de adquisición de hasta 2 señales analógicas bipolares , comprendidas entre 0 y +-15v.
ƒ Aplicación de elementos de protección para que las entradas analógicas del microcontrolador (0 a
+3V) queden limitadas y evitar su posible deterioro.
ƒ Máximo aprovechamiento del puerto serie. El puerto serie del ordenador será una de las mayores
limitaciones que nos vamos a encontrar con respecto a la velocidad de transmisión de la
información (muestras), y que realmente va a determinar la potencia del sistema. En este sentido se
ha diseñado el sistema para que únicamente se mande la información útil solicitada. Es decir, si se
programa la adquisición de unos canales concretos , sean las muestras de estos canales las que se
transmitan sin dejar información vacía de los canales no solicitados.
ƒ Flexibilidad respecto a su configuración. El rango de trabajo de recepción de los datos dependerá
fundamentalmente de los siguientes aspectos :
o
o
o
o
numero de canales solicitados.
tiempo destinado a la conversión analógico a digital.
velocidad de transmisión del puerto serie .
numero de instrucciones realizadas por el microcontrolador para el proceso.
En este contexto se ha querido dotar de cierta flexibilidad combinando: la elección del tiempo de
conversión (valor ADCLK en el microcontrolador ) y la velocidad de transmisión por el puerto serie
( 57600 o 115200 baudios) .
ƒ
Elección entre dos formas de adquisición :
o Adquisición continua.
o Adquisición de un numero de muestras determinado (desde 1 a 65536 muestras).
ƒ Posibilidad de archivar en fichero las muestras recibidas, para su posterior tratamiento bajo una
aplicación externa. Así mismo existe la posibilidad de adquirir datos a través de la tarjeta del
microcontrolador (hardware) o a través de un fichero (software) con información adquirida de
experimentos anteriores.
ƒ Alternativa en que el disparo (trigger) de la adquisición de los datos se realice bien desde el propio
instrumento virtual o bien bajo la aparición de un evento (flanco o nivel) producido exteriormente.
ƒ Posibilidad de elección de un modo de funcionamiento para poder tratar señales de una cierta
frecuencia. El desarrollo de este punto es lo que realmente va a dar potencia al sistema al poder
medir señales de hasta 8 kHz. Para ello nos apoyaremos en una memoria XRAM que dispone el
microcontrolador, y de un modo de trabajo en el que con las mínimas instrucciones posibles
tengamos la posibilidad de adquirir por un solo canal hasta 1024 muestras lo mas rápido posible
para que luego finalmente sean transmitidas por el puerto serie a la velocidad requerida.
ƒ Posibilidad de realizar operaciones matemáticas con las señales adquiridas en tiempo real,.
ƒ Distinta alternativas de aplicar a las señales capturadas filtrado digital FIR o IIR (Butterworth, Chebyshev,
Bessel,..) así como de las topologías paso bajo, paso alto, paso banda y rechazo de banda, y la posibilidad de
especificar las características de filtraje como: atenuación, rizado, orden, etc.
ƒ Posibilidad de visualizar las distintas señales adquiridas, así como las señales procesadas, con un
alto grado de exactitud respecto a amplitud y periodo de las mismas de forma muy similar a como
se representarían en un osciloscopio o analizador lógico.
ƒ Representación de las señales tanto en el dominio del tiempo como en el dominio de la frecuencia
de forma similar a un analizador de espectros de bajo coste.
ƒ Presentar un entorno de aplicación útil y de uso sencillo e intuitivo, de forma que cualquier usuario
no encuentre dificultades a la hora de operar con el sistema.
Desde el instrumento virtual se envían 6 palabras con todos los parámetros de configuración del
sistema :modo adquisición, numero de muestras, mascara con canales solicitados, modo ejecución X2,
y disparo (trigger). Una vez recibida esta información el microcontrolador ejecutará las instrucciones
de las funciones que correspondan para transmitir las muestras con el modo de funcionamiento
programado. En la figura 2 se muestra, de una forma resumida la operatividad del sistema. La primera
tarea a realizar es la configuración del puerto serie. Puesto que los datos pueden adquirirse en tiempo
real desde el puesto serie o procedentes de un experimento anterior almacenados en un fichero, la
siguiente acción a realizar es determinar la procedencia de los datos. Una vez configurado el sistema la
funcionalidad del mismo es intuitiva.
3. Tarjeta de control del sistema.
La tarjeta de adquisición y control, con todos sus circuitos auxiliares, se encarga de la captura, el
control y la visualización de las variables que se desean controlar. El microcontrolador empleado es el
T89C51AC2, de Atmel. Dispone de 32Kbytes de memoria FLASH de código, 128 bytes de memoria
RAM interna y 1Kbyte de memoria RAM externa, la posibilidad de emplear sólo 6 ciclos pulsos de
reloj por ciclo de máquina y un hardware muy completo y variado, entre los que se incluye un
convertidor analógico-digital por aproximaciones sucesivas de 10 bits multiplexado, módulos PWM y
contadores - temporizadores. El microcontrolador realiza todas las funciones de control de la tarjeta
mediante el empleo de sus interrupciones y módulos hardware. En la figura 3 se muestra el esquema
hardware de la tarjeta.
Fig. 2. Esquema operativo del sistema
JP2
VCC_5
GND
1
2
3
4
5
6
7
8
9
10
U4
GND
1
VCC_3.3 2
3
4
5
6
7
8
9
10
VCC_5 11
12
13
14
15
16
17
18
19
20
21
22
PUERTO 1
JP3
VCC_5
GND
1
2
3
4
5
6
7
8
9
10
PUERTO 3
SW1
SW_SL_SPDT
C1
VAGND
VAREF
P1.0/AN0/T2
P1.1AN1/T2EX
P1.2/AN2/ECI
P1.3/AN3/CEX0
P1.4/AN4/CEX1
P1.5/AN5/CEX2
P1.6/AN6/CEX3
P1.7/AN7/CEX4
EA
P3.0/RxD
P3.1/TxD
P3.2/INT0
P3.3/INT1
P3.4/T0
P3.5/T1
P3.6/WR
P3.7/RD
P4.0
P4.1
P2.7/A15
RESET
VSS
VCC
XTAL1
XTAL2
ALEN
PSEN
P0.7/AD7
P0.6/AD6
P0.5/AD5
P0.4/AD4
P0.3/AD3
P0.2/AD2
P0.1/AD1
P0.0/AD0
P2.0/A8
P2.1/A9
P2.2/A10
P2.3/A11
P2.4/A12
P2.5/A13
P2.6/A14
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
RESET
GND
VCC_5
GND
Y1
CRY STAL
22p
C2
1
2 3
VCC_5
GND
22p
PUERTO 0
GND
VCC_5
VCC_5
GND
T89C51AC2
P1
5
9
4
8
3
7
2
6
1
VCC_5
GND
2 VCC_5
C5
1u
C1+
VCC
VS+
GND
C1T1OUT
C2+
R1IN
C2R1OUT
VST1IN
T2OUT T2IN
R2IN R2OUT
VCC_5
GND
VCC_3.3
U3
0
U2
1
2
3
4
5
6
7
8
C4
1u
JP4
1
2
3
4
5
6
7
8
9
10
PUERTO 2
C6
1u
CONNECTOR DB9
C3
1u
10
9
8
7
6
5
4
3
2
1
JP1
16
15
14
13
12
11
10
9
VCC_5
GND
MAX232
GND
VCC_5
GND
1
2
3
HEADER 3
1
RESET
JP5
R1
220
C8
10u
R2
8k2
C7
1u
GND
Fig.3. Esquema hardware de la tarjeta
4. Instrumento virtual.
El panel frontal del instrumento virtual, figura 4, es la interfase de usuario y está dividido en siete
secciones cada una de ellas con una funcionalidad específica..
Fig.4. Interfase de usuario
En esta pantalla también se procede a configurar los parámetros de operación del entorno hardware
y software.
4.1. Señales analógicas
La pestaña Señales Analógicas se encarga de mostrar en pantalla hasta un máximo de 8 señales
analógicas capturadas a través de la tarjeta de adquisición de datos con un ancho de banda de 250Hz..
La adquisición se basa en el método Round-Robin. Así mismo proporciona la posibilidad de
configurar los canales que deseamos. Se incorpora también la opción de establecer límites inferiores o
superiores, a partir de los cuales se muestre en pantalla si la señal sobrepasa esos valores. También es
posible realizar operaciones matemáticas de suma, resta, multiplicación y división entre las señales
capturadas. En la gráfica de la figura 4 se muestran diversas señales adquiridas.
4.2. Señales digitales.
Esta sección muestra las señales digitales capturadas a través de la tarjeta de adquisición de datos o
almacenadas en un fichero. Como máximo se pueden representa hasta 22 señales. Operativamente se
comporta como un analizador lógico de bajo coste. Figura 5
Fig.5. Señales digitales capturadas
4.3. Enviar señales.
El entorno permita la posibilidad de enviar señales digitales a través de la tarjeta de adquisición de
datos. Una aplicación inmediata de esta posibilidad es el análisis funcional de un circuito digital.
4.4. Generador de ondas.
En esta sección se generan las señales de control que operan sobre el generador de señales
implementado sobre el CI XR2206 seleccionando el tipo de señales y su rango de frecuencia. Así
mismo es posible generar señales senoidales, cuadradas y triangulares vía software. En este caso como
CDA se emplean los canales PWM del microcontrolador.
4.5. Análisis espectral.
El análisis espectral permite estudiar y representar las señales en el dominio de la frecuencia. EL elemento
básico de esta sección es la FFT. Para realizar el correspondiente procesado el usuario dispone de la posibilidad de
emplear distintas ventanas tales como: Hanning, Hamming, Blackman-Harris, Exact Blackman, Blackman, Flat
Top,4 Term B-Harris, 7 Term B-Harris y Low Sidelob .En la figura 6 se muestra una señal triangular representada
tanto en el dominio del tiempo como en el de la frecuencia. Dentro del análisis frecuencial además de calcular y
representar los armónicos se puede determinar el Espectro de Potencia de una señal.
Fig.6. Análisis espectral
El diseño de la aplicación se ha realizado con un método “top-down” ya que es el más adecuado a las
características de LabVIEW puesto que el lenguaje G puede enmarcarse dentro de los lenguajes procedurales
además de ser un lenguaje concurrente. Entendiendo que un método estructurado “top-down” se basa en la
subdivisión de programas complejos en subprogramas sencillos, con esta técnica cualquier aplicación por
compleja que resulte se estructura en un árbol jerárquico de procedimientos sencillos que en LabVIEW se
implementan mediante subVIs. En la figura 7 un subVI empleado en el análisis espectral.
Fig.7. SubVI empleado en el Análisis espectral.
4.5. Filtros Digitales
En el filtrado digital se puede realizar tanto mediante la topologías FIR e IIR. Entre los tipos de
filtro IIR más representativos son: Butterworth:, Chebyshev:, Inverse Chebyshev:, Eliptico y Besse. En
esta sección además de comprobarse la acción del filtrado es posible estudiar y conocer las
características operativas mas notables del filtro elegido, figura 8. En esta sección también se pueden
elegir distintos tipos de ventanas como en el Análisis Espectral.
Fig.8. Filtrado digital
4.6. Valores estadísticos
Mediante la pestaña Valores Estadísticos se accede al cálculo y representación de distintos valores
estadísticos de las señales que son capturadas por la tarjeta de adquisición de datos o leídas desde un
fichero. Los valores estadísticos de cada canal son: Media, Varianza, Desviación, Máximo y Mínimo
5. Ampliación.
Como ampliación y actualización del entorno se ha optado por el controlador USBN9603, que es
un nodo de control USB compatible con las versiones 1.0 y 1.1. El dispositivo incluye soporte DMA,
un regulador de 3.3 V, Serial Interface Engine (SIE), modo de funcionamiento paralelo de 8 bits, un
generador de reloj y comunicación MICROWIRE/PLUS. Incluye también 7 Endpoints (EP) FIFOs,
una de ellas bidireccional de 8 bytes como Endpoint de control y las demás de 64 bytes para la
transmisión y recepción. La comunicación de 8 bits paralela soporta tanto Multiplexed Mode como
Non-Multiplexed Mode para la comunicación con el microcontrolador. La comunicación
MICROWIRE/PLUS permite adaptar la CPU sin buses de direcciones y de datos externos. Una salida
de interrupción programable permite adaptarse a diferentes tipos de requerimientos de las señales de
interrupción. Utiliza un circuito oscilador con un cristal de 24 MHz, consiguiéndose un reloj interno
de 48 MHz. En la figura 9 se muestra el esquema hardware propuesto.
U1
VCC_5
SW3
JP1
VCC_5
1
2
3
4
5
6
7
8
9
10
25
24
VCC_5
0
PSEN
SW KEY -Y 1011
SW1
MODE0
MODE1
D+
D-
0
26
27
28
SW KEY -Y 1011
SW KEY -Y 1011
0
U2
VCC_3.3 1
2
3
4
5
6
7
8
9
10
11
RXD
12
TXD
13
INT
14
CS
15
RESET_USB
16
ALE
17
WR
18
RD
19
20
21
22
0
HEADER 10
P1
5
9
4
8
3
7
2
6
1
0
VAGND
VAREF
P1.0/AN0/T2
P1.1AN1/T2EX
P1.2/AN2/ECI
P1.3/AN3/CEX0
P1.4/AN4/CEX1
P1.5/AN5/CEX2
P1.6/AN6/CEX3
P1.7/AN7/CEX4
EA
P3.0/RxD
P3.1/TxD
P3.2/INT0
P3.3/INT1
P3.4/T0
P3.5/T1
P3.6/WR
P3.7/RD
P4.0
P4.1
P2.7/A15
RESET
VSS
VCC
XTAL1
XTAL2
ALEN
PSEN
P0.7/AD7
P0.6/AD6
P0.5/AD5
P0.4/AD4
P0.3/AD3
P0.2/AD2
P0.1/AD1
P0.0/AD0
P2.0/A8
P2.1/A9
P2.2/A10
P2.3/A11
P2.4/A12
P2.5/A13
P2.6/A14
SW2
C7 22p
RST51
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
VCC_5
X1 0
X2
PSEN
D7
D6
D5
D4
D3
D2
D1
D0
RESET_USB16
V3.3
C3
1u
C2
1u
C1
1u
16
15
14
13
12
11
10
9
0
RESET
WR/SK
RD
CS
V3.3
INTR
7
8
9
10
11
12
13
14
15
ALE
D0
D1
D2
D3
D4
D5
D6
D7
3
2
1
WR
RD
CS
4
INT
USB1
R9
33
R10
33
D+
D1
2
3
4
5
6
7
8
9
10
C10
4
3
2
1
0
VCC_5
JP2
VCC_5
0
C5
1u
1u
U3
18
D+
D-
USBN9603
VCC_5
C1+
VCC
VS+
GND
C1T1OUT
C2+
R1IN
C2R1OUT
VST1IN
T2OUT T2IN
R2IN R2OUT
DRQ
DACK
C8 22p
C4
1
2
3
4
5
6
7
8
5
6
VCC_5
Y1
24 MHz
T89C51AC2
CONNECTOR DB9
A0/ALE/SI
D0/S0
D1
D2
D3
D4
D5
D6
D7
XIN
XOUT
CLKOUT
19
20
GND
D+
DVCC
Conector USB
R11
1k
V3.3
C6
10u
0
HEADER 10
VCC_5
1n
RXD
TXD
X1
X2
MAX232
R12
220
Y2
CRY STAL
0
R8
10k
RST51
C11
0
VCC_5
C9
10u
D0
R13
8k2
1n
R7
10k
D1
R6
10k
D2
R5
10k
R4
10k
D3
D4
R3
10k
D5
R2
10k
D6
R1
10k
D7
0
JP3
VCC_5
1
2
3
0
VCC_3.3
HEADER 3
Fig.9 Esquema de la tarjeta con USB
En este contexto otra alternativa es la adaptación RS232 a USB mediante el CI FT232BM. Este CI
operativamente consta de dos secciones, una RS232 y otra USB de forma que se puede sustituir el
MAX232 de la figura 2 por el FT232BM, figura 10.
USB1
GND
D+
DVCC
R2 27
4
3
2
1
USBDP
USBDM
C5
10n
R3 27
0
Conector USB
FB1
1
VCC_5
R8
1k5
2VCC_5
RSOUT
TOROIDAL DE FERRITA
JP1
1
2
3
4
5
RxD
TxD
CTS#
RTS#
POWERDN#
Conexiones Microcontrolador
0
C4 33n
R1 470
U3
1
2
VCC_5
3
VCC_5
4
RSOUT 5
6
USBDP
7
USBDM 8
9
0
10
11
12
VCC_5 13
14
0
15
16
EESK
EEDATA
VCC1
RESET#
RSOUT
3V3OUT
USBDP
USBDM
GND1
SLEEP#
RXLED#
TXLED#
VCCIO
PWRCTL
PWREN#
TXDEN
EECS
TEST
AVCC
AGND
XTOUT
XTIN
VCC2
TXD
RXD
RTS#
CTS#
DTR#
DSR#
DCD#
RI#
GND2
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
FT232BM
Fig.10. Adaptación RS232-USB
0
0
0
VCC_5
TxD
RxD
RTS#
CTS#
0
0,1u
C3
6 MHz
C2 27p
Y1
C1 27p
0
6. Conclusiones
A modo de resumen, el instrumento virtual tiene la siguiente funcionalidad: I) Monitorizar en el
dominio temporal hasta 8 señales analógicas, en este caso el ancho de banda para cada uno de los 8
canales es de 250 Hz. En la adquisición se emplea el método Round-Robin. II) Monitorizar en el
dominio del tiempo hasta 22 señales digitales (analizador lógico). III) Generar por software diversas
señales analógicas (senoidal, cuadrada, triangular) y señales digitales patrones para test de circuitos.
También es posible generar, vía hardware con el CI XR 2206, controlado desde este instrumento
virtual, diversas señales analógicas de test y medida IV)Procesado de señales tanto en el dominio del
tiempo como en el dominio de la frecuencia (FFT y Espectro de Potencia), V) Operaciones
matemáticas y cálculos estadísticos. Toda la información tanto de adquisición como de procesado
puede almacenarse en un fichero. A la abundante información gráfica se accede mediante los
correspondientes submenús a los que el usuario tiene fácil acceso a través de la correspondiente
interfase gráfica.
Se ha diseñado, desarrollado e implementado un entorno de bajo coste donde integrando la
funcionalidad de una tarjeta de adquisición basada en un μC y la flexibilidad de la instrumentación
virtual se ha logrado crear una aplicación multidisciplinar que permite experimentar sobre una amplia
variedad de conceptos teóricos. En este contexto se adopta una estrategia educativa de probada
eficacia como es la de aprender haciendo, y un docente debe generar diversas posibilidades de
aprendizaje. Aunque dedicado a la docencia, es posible su adecuación al campo industrial por la
standarización de su diseño. Este trabajo se ha desarrollado en el marco del proyecto de investigación
de la Comunidad Europea dentro del Programa ALFA Nº CRIS 96302, contrato Nº AML/B7311/97/0666/II-0354-A.
Referencias
[1] M. Barrón, J. Martínez, Aplicaciones prácticas con el μC-8051.Programación en lenguaje C. ISBN: 84699-1512-6. Ed. Artes gráficas Michelena, 1998.
[2] J. Essick, Iadvanced LabVIEW Labs, ISBN:0-13-833949-X Ed. Prentice-Hall, S. River USA, 1999.
[3] M.L. Chugani, A.R. Samant, and M. Cerna, LabVIEW SignalProcessing, Prentice-Hall, S. River USA, 1998
Documentos relacionados
Descargar