You are on page 1of 42

CONTENIDO

Contenido I
1. Marco teórico 1
1.1. Elemento sensor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.2. Elemento acondicionador de la señal . . . . . . . . . . . . . . . . . . . . . . . 2
1.2.1. Módulo de filtrado . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.2.2. Módulo de amplificación . . . . . . . . . . . . . . . . . . . . . . . . . 4
1.2.3. Módulo de ajuste de nivel . . . . . . . . . . . . . . . . . . . . . . . . 4
1.3. Elemento procesador de señales . . . . . . . . . . . . . . . . . . . . . . . . . 5
1.3.1. Módulo digitalizador . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
1.3.2. Módulo de procesamiento . . . . . . . . . . . . . . . . . . . . . . . . 5
1.4. Elemento presentador de datos . . . . . . . . . . . . . . . . . . . . . . . . . . 8
2. Diseño experimental 13
2.1. Etapa de Diseño del Elemento Sensor . . . . . . . . . . . . . . . . . . . . . . 13
2.2. Etapa de Diseño del Elemento Acondicionador de la Señal . . . . . . . . . . . 15
2.2.1. Módulo de filtrado . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
2.2.2. Módulo de amplificación . . . . . . . . . . . . . . . . . . . . . . . . . 18
2.2.3. Módulo de ajuste del desplazamiento de la señal . . . . . . . . . . . . 18
2.3. Etapa de Diseño del Elemento Procesador de Señales . . . . . . . . . . . . . . 19
2.3.1. Descripción de los componentes . . . . . . . . . . . . . . . . . . . . . 20
2.3.2. Estructuración de la comunicación . . . . . . . . . . . . . . . . . . . . 26
2.3.3. Aplicación para el microcontrolador . . . . . . . . . . . . . . . . . . . 30
2.3.4. Aplicación para el computador . . . . . . . . . . . . . . . . . . . . . . 32
2.3.5. Implementación del Elemento Procesador de Señales . . . . . . . . . . 35
2.4. Etapa de Diseño del Elemento Presentador de Datos . . . . . . . . . . . . . . . 35
3. Evaluación del equipo 39
3.1. Detección del ruido interno . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
I
II CONTENIDO
3.2. Definición de la amplitud máxima a detectar . . . . . . . . . . . . . . . . . . . 40
3.3. Respuesta en función de la frecuencia en dB FS . . . . . . . . . . . . . . . . . 40
3.4. Determinación del aliasing . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
1
MARCO TEÓRICO
El Sistema de Detección de Sonidos de Corta Duración, como todo sistema de detección de
variables físicas, se compone de un elemento sensor, un elemento de acondicionamiento de la
señal, el elemento procesador de señales y el elemento presentador de datos [1]. En cada caso
se hará a continuación su respectiva descripción.
1.1. Elemento sensor
La detección del sonido se ha simplificado bastante con la aparición de los micrófonos in-
corporados a los circuitos integrados. Esto, gracias al diseño de los micrófonos de capacitor con
membrana electret ECM (del inglés Electret Condenser Microphones) [2], [3]. Básicamente,
constan de una membrana electret previamente cargada que, al tener movimiento relativo con
el capacitor, afecta la carga del capacitor. Éste, conectado a la compuerta de un transistor JFET,
debidamente polarizado, controla la corriente entre fuente y drenaje. Así, el movimiento de la
membrana debido a la presión de las ondas sonoras causa, a la salida del ECM, variaciones en
la corriente del sensor. La estructura general de los ECM se observa en la figura 1.1.
Para definir los detalles técnicos del sensor, se toma como referencia un ECM comercial,
por ejemplo el WM-61A [4]. Sus características son las siguientes:
Rango de trabajo: de 20 a 20 000 Hz.
Sensibilidad: −35 ±4dB(0db = 1V/pa, 1kHz)
1
2 Marco teórico
Figura 1.1: Esquema de un ECM.
Máximo voltaje de entrada: 10 V.
Máxima corriente de salida: 0.5 mA
Impedancia: menor que 2,2kΩ
1.2. Elemento acondicionador de la señal
Dado que el sensor entrega una señal de corriente menor a 0,5 A es necesario que esta señal
sea modificada. Se considera que ésta es una corriente variable con idéntico comportamiento al
de la presión ejercida por el sonido sobre la membranan electret y como resultado, a la salida del
elemento acondicionador, se debe obtener un voltaje idénticamente variable. Adicionalmente,
este voltaje de salida estará en el rango de trabajo del elemento procesador de señales, que
normalente es de 0 a 5 voltios.
También se debe considerar que la mayoría de los sensores manejan voltajes pequeños (me-
nores a 10 mV), por esta razón son muy susceptibles al ruido electromagnético, especialmente
a la señal de 60 Hz.
Así pues, el elemento acondicionador de la señal debe cumplir con las siguientes especifi-
caciones:
1.2 Elemento acondicionador de la señal 3
El factor de amplificación estará en un rango de 50 a 300.
Debe contar con un filtro que atenúe frecuencias como la de 60 Hz.
La señal de salida estará entre 0 y 5 voltios, de tal forma que se facilite su digitalización.
También se debe considerar la posibilidad de contar con un ajuste de nivel (offset), de tal
forma que sea posible el desplazamiento arriba y abajo de la señal de salida.
De forma sencilla se pueden implementar amplificadores operacionales en cascada, en el
cual cada módulo se encarga de cumplir una función. Así:
1.2.1. Módulo de filtrado
Dado que la señal presenta ruido, éste se minimiza implementando un filtro pasa alta, pues
las señales deseadas tienen frecuencias en el rango de 500 Hz a 20 KHz y el ruido predominante
es el de 60 Hz. Su implementación más sencilla es a partir de un filtro pasa alto pasivo RC de
frecuencia de corte ω
0
= (RC)
−1
. Aprovechando la alta impedancia de entrada de los amplifi-
cadores operacionales (AO), al diseño anterior se le adiciona uno. Así se obtiene el circuito que
se muestra en la figura 1.2.1, el cual se caracteriza por tener una función de transferencia igual
a:
v
0
v
i
=
−R
2
R
1
C
2
ω
2
R
2
1
C
2
ω
2
+ 1
(1.1)
Considerando una frecuencia de corte de 200 Hz y un capacitor de 0,01 µF las resistencias
deben satisfacer la relación de R
2
= 4, 4x10
9
R
−1
1
+ 0, 7R
1
. Esta relación es una limitante
que debe ser evaluada junto con el factor de amplificación de la señal, dado que el AO esta
implementado como un inversor de ganancia R
2
/R
1
.
Al hacer la evaluación de este circuito es preciso revisar la ganancia del voltaje diferen-
cial de entrada vs. frecuencia del AO implementado, pues dicha ganancia decrece a partir de
frecuencias específicas para cada uno de ellos, “en consecuencia, cualquier circuito de ampli-
ficador operacional se comportará como un filtro pasa bajas con una frecuencia de corte casi
siempre del orden de 10 a 100 kHz“ [6].
4 Marco teórico
Figura 1.2: Filtro.
1.2.2. Módulo de amplificación
Se consigue implementando un amplificador operacionl inversor. El ajuste en la ganancia
se obtiene implementando como resistencia de retroalimentación una resistencia variable con
rango de trabajo de 10kΩ a 60kΩ y una resistencia de 2kΩ conectada a la entrada negativa.
En este caso se logra un factor de amplificación máximo de 30. El factor de 10 faltante puede
incluirse en otro módulo, implementando así, una conexión de ganancias de etapas múltiples [5].
1.2.3. Módulo de ajuste de nivel
Se obtiene mediante un amplificador inversor sumador. La señal a sumar se logra conec-
tando un potenciómetro, a través de una resistencia, a la entrada inversora y los extremos del
potenciómetro irán a la entrada positiva y negativa respectivamente, tal como se muestra en la
figura 1.2.3.
Figura 1.3: Sumador.
1.3 Elemento procesador de señales 5
1.3. Elemento procesador de señales
Las señales de voltaje que cambian entre 0 y 5 voltios serán analisadas y/o presentadas
en pantallas o dispositivos que representan la señal gráficamente. El análisis de estas señales
frecuentemente consiste en la comparación con señales de referencia y en algunos casos la
evaluación de su variación en el tiempo. El procesamiento de la señal se facilita cuando ésta es
digital, dado que se incorporan al sistemas elementos microprocesados, los cuales tienen una
mayor capacidad de procesamiento.
En este último caso, el Elemento Procesador de Señales se compone de un módulo que
digitaliza la señal y un módulo que la procesa.
1.3.1. Módulo digitalizador
Comercialmente se le da el nombre de Conversor Análogo Didigal
1
[7]. Estos dispositivos
electrónicos toman una señal de voltaje comprendida entre dos valores de referencia, un voltaje
mínimo y un voltaje máximo (V
min
−V
max
), y lo traducen a un número binario de 8 bits (también
los hay de 10 o más bits). Esta transformada es lineal y le asocia el valor de cero a un voltaje
igual o menor al V
min
y el valor de 2
8
−1 a un voltaje igual o mayor al V
max
. Con base en estos
valores se define la resolución del ADC, tal como se describe en la ecuación 1.2:
R
ADC
=
V
max
−V
min
2
8
−1
(1.2)
En la conversión son importantes los parámetros de tiempo de toma de señal (t
t
) y el tiempo
de conversión (t
c
) [8], [9].
1.3.2. Módulo de procesamiento
En su estructura básica está conformado por un microcontrolador, el cual toma la lectura
de la señal digitalizada, realiza con ella operaciones aritméticas y lógicas y obtiene un resul-
1
Un conversor análogo digital (ADC, del inglés “Analog to Digital Converter”) es un dispositivo que convierte
una señal de entrada análoga (de voltaje o corriente), en un número proporcional a la magnitud de dicha señal.
6 Marco teórico
tado. Actualmente, a los microcontroladores se les han adicionado otros elementos ampliando
su gama de prestaciones, como conversores ADC, transmisión seriada con protocolos I
2
C
2
y RS232
3
[12], temporizadores, etc. Muchos microcontroladores cuentan con estos servicios,
como los PICs de la familia 16F87XA, razón por la cual, su implementación facilita la cons-
trucción del módulo de procesamiento de señales, el cual contendrá el módulo digitalizador. En
el diseño electrónico y la construcción del programa se recurre a la literatura que nos brinda el
fabricante de los PICs de esta familia, microcontrolador que se toma como referencia en este
trabajo: [11] y [12]. Bajo estas circunstancias, el microcontrolador realiza las siguientes tareas:
Toma de la señal análoga: La toma de la señal análoga exige un tiempo mínimo para la
estabilización de las señales en el dispositivo, en el caso de los microcontroladores de la
familia 16F87XA, para garantizar buenas lecturas en el ADC, este tiempo (T
acq
) es del
orden de 12 µs. Para que esto funcione, en la programación del PIC se debe definir un
pin del puerto A como entrada análoga y el cuerpo del programa contendrá un ciclo de
espera, cuya duración será mayor a este tiempo.
Digitalización: Esta tarea se realiza en el ADC seleccionado. Con una instrucción del
programa se da inicio a la conversión, la cual tarda como mínimo un tiempo de 12T
AD
=
20µs
4
. El resultado de la conversión es un número binario de 10 bits, los cuales se alma-
cenan en los registros ADRESH y ADRESL. A estas posiciones de memoria, de 8 bits,
se tiene acceso únicamente por programa. Los parámetros de control requeridos en cada
conversión se han definido preliminarmente en los registros ADCON0 y ADCON1. La
conversión se inicia poniento en uno el bit 2 de ADCON0 (GO/DONE) y ésta se realiza
independientemente del programa. Al finalizarse la conversión, GO/DONE es puesto au-
tomáticamente en cero. Para la detección del final de la conversión se recurre a sucesivas
2
I
2
C es una conexión entre dispositivos que permite la comunicación seriada (del inglés “inter integrated
circuits”). En su estructura básica se compone de tres líneas: SCL es la línea de los pulsos del reloj, SDA se emplea
en la transmisión del dato y GND la línea de referencia.
3
Norma de comunicación diseñada para el intercambio de datos entre un computador y un equipo de comuni-
cación, que en general puede ser cualquier periférico.
4
T
A
D es el tiempo de conversión por bit. Cuando el oscilador del microcontrolador es de 20MHz este tiempo
es de 1,6µs.
1.3 Elemento procesador de señales 7
lecturas de este bit o a la espera de la generación de una interrupción
5
.
Almacenamiento temporal: Los resultados de las converciones pueden almacenarse en
el espacio de memoria RAM del microcontrolador. En general, los microcontroladores
poseen un espacio de memoria dividida en bancos. Cada banco contiene 128 bytes de
memoria distribuidos entre los registros de propósito general (GPR) y los registros de
función específica (SFR). En el microcontrolador 16F873A, que es el de menor capacitad
de esta familia, se distribuye el espacio de memoria así: 192 bytes para GPR y 64 bytes
para SFR. Así, una implementación con este microcontrolador permite hasta 192 datos
de 8 bits. Considerando que los datos resultantes de las converciones del ADC son de 10
bits, se podrán almacenar temporalmente un máximo de 96 datos.
Envío de los datos a un computador (Transmisión): La limitante del pequeño espa-
cio de almacenamiento de datos del que se dispone en un microcontrolador se resuelve
al poderse transmitir la información a sistemas de mayor capacidad, como lo son los
computadores. Para esto se dispone de la interface de comunicación seriada del micro-
controlador, la “Universal Synchronous Asynchronous Receiver Transmitter” (USART),
que es uno de los dos módulos de comunicación seriada con que cuentan estos dispositi-
vos
6
. Este módulo soporta la comunicación asíncrona (full duplex), con la cual se facilita
la comunicación con terminales CRT y computadores, y la comunicación síncrona, con
la cual se permite la comunicación con periféricos como conversores ADC y DAC, me-
morias EEPROMs, etc. Para la tarea específica de envío de datos al puerto seriado de un
computador, la USART se habilita, en este caso en particular, en el modo asíncrono de
transmisión (“USART Asynchronous Transmitter”) y se establecen los parámetros pro-
pios del protocolo RS232 [13], [14]:
5
Estos microcontroladores, en su módulo de interrupciones, permiten la generación de una interrupción cuando
se termina la conversión del ADC, para ello se debe haber habilitado esta opción, definiendo apropiadamente los
registros INTCON, PIE y PIR.
6
Otro mecanismo de comunicación es la interface de comunicación seriada “Synchronous Serial Port” (SSP),
diseñada para conectarse con otros periféricos en el modo “Serial Peripherical Interface (SPI) o con dispositivos
microcontrolados en el modo “Inter Integrated Circuit (I
2
C)”.
8 Marco teórico
• Velocidad de transmisión.
• Número de bits por dato.
• Paridad.
• bit de parada.
Para establecer esta información se recurre a los registros SPBRG, TXSTA y RCSTA. El
dato a transferir se carga en el registro TXREG. La transmisión se realiza independiente-
mente del programa que se está ejecutando en el microcontrolador.
1.4. Elemento presentador de datos
Es una unidad de cómputo básica. Este computador estará provisto de sus periféricos con-
vensionales, entre los cuales estarán el puerto serial RS232, una unidad de almacenamiento
de información (disco duro) y dispondrá de una impresora gráfica para la impresión del reporte
gráfico en el que se visualizará la evolución temporal de la señal en cuestíon: los sonidos de cor-
ta duración. Entre sus aplicaciones contendrá una que en el momento de su ejecución realizará
las siguientes tareas:
Habilitar el puerto: Para que se establezca la comunicación con el módulo de procesa-
miento es necesario inicializar el puerto seriado con los mismos parámetros definidos en
la USART: velocidad de transmisión, número de bits por dato, paridad y bits de parada.
Recepción de información: La información llegará conforme es enviada por el módulo
de procesamiento, razón por la cual el programa hará que el sistema lea recurrentemente
el puerto seriado durante el tiempo que se especifique. El dato obtenido será incorporado
a una estructura de datos a la que se puede acceder de forma aleatoria o secuencial.
Presentación en pantalla: Los datos almacenados tienen dos características particulares:
• Sus valores están comprendidos entre 0 y 255 (correspondientes a 0 y 5 voltios
respectivamente.
1.4 Elemento presentador de datos 9
• Los datos son consecutivos y la distancia temporal existente entre cada uno de ellos
es la unidad de tiempo definida en el elemento anterior.
Con base en estas dos características se define una ventana a la cual se le asocia a la altura
la magnitud amplitud de la señal y a su ancho la magnitud tiempo. Así, al ubicar los datos
en la ventana se generan gráficos de amplitud de la señal vs. tiempo.
Impresión del reporte: El gráfico generado, al igual que los datos que identifican la me-
dición y notas adicionales serán impresas cuando así se desee. Así pues, el programa debe
ser capaz de imprimir el reporte y para esto generará un archivo que será administrado
por el servidor de impresiones.
Almacenamiento de la información: Como valor agregado, también se podrán crear
archivos que contengan los datos, facilitándose así un posterior estudio de la variable de
interés. El programa también será capaz de almacenar el reporte en el que figura la gráfica
de amplitud de la señal vs. tiempo, esto en un formato transportable.
10 Marco teórico
REFERENCIAS
[1] Bentley J. P., “Sistemas de medición - Principios y aplicaciones”. CECSA, segunda edi-
ción, 1993.
[2] Zhen-zhun S., et al., Design And Fabrication of Condenser Microphone Using Wafer
Transfer And Micro-electroplating Technique, EDA Publishing/DTIP, 9-11 april 2008.
ISBN: 978-2-35500-006-5.
[3] Quombo Z., et al., A Novel Integrated Silicon Capacitive Microphone- Floating Electrode
“Electret” Microphone (FEEM), Journal of MicroElectroMechanical Systems, VOL. 7,
No. 2, june 1998.
[4] Panasonic, Omnidirectional Back Electret “Condenser Microphone Cartridge”, series
WM-61A y WM-61B.
[5] Boylestad R. L. y Nashelsky L., Electrónica: Teoría de circuitos y dispositivos electróni-
cos, ed. Pearson, 8a. edición, pág. 717, 2003.
[6] Hayt W. H, et al., “Análisis de Circuitos en Ingeniería”, Editorial McGrawHill, 2003,
página 631.
[7] R. Pallàs A., “Instrumentos Electrónicos Básicos”, Edi. Marcombo, 2006.
[8] D. Schilling and C. Belove, “Circuitos Electrónicos Discretos e Integrados”, 3a edición,
Mac Grawn Hill, 1993.
[9] National Semiconductor, “ADC0808/ADC0809 8-Bit mP Compatible A/D Converters
with 8-Channel Multiplexer”, noviembre de 1995.
[10] J. L. Laporta y M. M. Aguiñiga, “Fundamentos de telemática”, editorial de la Universidad
Politécnica de Valencia, 2005.
[11] Microchip, “PICmicro
TM
, Mid-Range MCU Family, Reference Manual”, Microchip Te-
chnology Inc., 1997.
11
12 REFERENCIAS
[12] Microchip, “PIC16F87XA Data Sheet, 28/40/44-Pin Enhanced Flash Microcontrollers”,
Microchip Technology Inc., 2003.
[13] González N., “Comunicaciones y Redes de Procesamiento de Datos”, Mc Grawn Hill,
1992.
[14] Ibrahim D., “PIC BASIC: programming and projects”, Newnes, Elsevier Science, 2003.
2
DISEÑO EXPERIMENTAL
El diseño del Sistema de Detección de Sonidos de Corta Duración se realiza en 4 etapas,
donde cada una de ellas se destina a la implementación de cada uno de los elementos del sistema
de detección. En cada etapa se debe considerar que, la señal de entrada del elemento en cuestión
es la salida del elemento anterior. Esta consideración es válida incluso cuando el elemento se
subdivida en módulos.
2.1. Etapa de Diseño del Elemento Sensor
Para implementar un micrófono eletrect han de considerarse sus características eléctricas
básicas: máximo voltaje de entrada de 10 V., máxima corriente de salida de 0.5 mA y una
impedancia menor que 2,2kΩ. Al polarizar el micrófono, la corriente a través de él variará
con el sonido. Para medir estas variaciones, medimos la corriente a través de una resistencia R
S
conectada en serie con el micrófono y sensamos la caída del voltaje en R
S
. En esta configuración
tendremos un divisor de voltaje. Aquí se sugiere que el valor de R
S
sea igual a R
e
, que es la
impedancia máxima del sensor. En la figura 2.1 se visualiza la respectiva implementación y en
la ecuacion 2.1 se define la forma de la señal a la salida.
V
O
=
(
1 −
R
S
R
S
+R
e
)
V
f
(2.1)
Note que el mayor valor de V
O
será de 0, 5V
f
y como R
e
tiende a disminuir ligeramente, V
O
tiende a ser un poco menor a 0, 5V
f
.
13
14 Diseño experimental
Figura 2.1: Elemento sensor.
Los valores apropiados para R
S
se obtienen a partir de la evaluación del circuito, en funcio-
namiento. Un método a emplear es similar al de la calibración de medidores de nivel de sonido,
en el cual se le inyecta al micrófono un sonido de frecuencia y amplitud conocidas, este método
es conocido como “calibración eléctrica” [1]. El montaje empleado se observa en la figura 2.1.
Figura 2.2: Montaje para medir la respuesta del elemento sensor.
Los sonidos se generan con programas editores de archivos de audio como el descrito en [2].
El sensor, junto con el medidor
1
, se ubicaron a 0,5 metros de la fuente sonora. Para diferentes
frecuencias y resistencias R
S
se mide la amplitud de la señal V
O
, es decir, el voltaje pico a pico
de la señal. Su comportamiento se visualiza en la figura 2.1.
1
Enviroment multimeter “5 in 1 meter” de V&A Instrument, referencia WLC120.
2.2 Etapa de Diseño del Elemento Acondicionador de la Señal 15
Figura 2.3: Gráfica que muestra la variación de la amplitud de salida del circuito mostrado en la figura 2.1 como
función de la resistencia R
S
.
En esta gráfica (2.1), se observa que la salida se maximiza cuando R
S
es aproximadamente
igual a la resistencia del elemento sensor, tal como lo sugiere el fabricante. Para efectos prácti-
cos se debe considerar que este máximo es función de la frecuencia, pues para frecuencias del
orden de 400 Hz el valor de R
S
está entre 10kΩ y 20kΩ. En caso de que se desee estudiar este
comportamiento, se debe tener en cuenta que la absorción del sonido por el aire es función de
la frecuencia, como se puede observar en la tabla 2.1, pues en ella se muestra como se atenúa la
señal al aumentar la frecuencia.
Frecuencia (kHz) 0,40 1,0 6,0 10,0
Intensidad (dB) 87 80 67 42
Tabla 2.1: Variacion
2.2. Etapa de Diseño del Elemento Acondicionador de la Señal
En esta etapa se debe partir de las especificaciones del elemento sensor, el cual entrega una
corriente máxima de 20 mA, su voltaje de salida es del orden de 20 mV pico a pico, sobre una
16 Diseño experimental
señal de 2.5 voltios como “offset” y que incluye un ruido cuya frecuencia predominante es la
de 60 ciclos. Como salida debe entregar una señal de voltaje cuyo valor máximo es de 5 voltios.
Dado que esta etapa realiza 3 tareas que pueden realizarse independientemente (filtrar, am-
plificar y ajustar el desplazamiento de la señal), se considera pertinente dividirlo en 3 módulos,
así:
2.2.1. Módulo de filtrado
Se implementa un filtro pasa alta activo con un amplificador operacional inversor. En este
circuito, al implementar un 741
2
se deben tener en cuenta los siguientes detalles:
El fabricante sugiere la conexión de un potenciómetro de 10 kΩ (R
offset
) para corregir
las posibles corrientes parásitas dentro del amplificador operacional [3].
Dada la cercanía entre las frecuencias de interés y la frecuencia de corte del filtro, f
0
,
se consideró la posibilidad de un desplazamiento en f
0
desde los 200 Hz hasta 1,7 kHz.
Esto se obtiene con un capacitor de 0, 01µF (C
f
) y dos resistencias en serie, una de 10kΩ
(R
f
1) y un potenciómetro de 50kΩ (R
vf
).
El inversor presenta un factor de amplificación pequeño, cuyo valor depende de la relación
entre R
f2
y R
f1
+R
vf
. Con R
f2
= 50kΩ este rango va desde 0,8 hasta 5.
Considerando que la salida del elemento acondicionador es un voltaje que está entre 0
y 5 voltios, es aconsejable que se emplee la técnica conocida como polarización de una
sola fuente “Single-Supply” [4]. Así, los voltajes de alimentación de los AOs se redefinen
como V
CC+
= 5V y V
CC−
= 0V y el voltaje de referencia será V
ref
= 0, 5(V
CC+
+
V
CC−
) = 2, 5V .
Dado que la porarización de una sola fuente exige un voltaje de referencia, el cual está
por encima de cero (V
ref
= 2, 5V ), es necesario implementar un diodo zener de 2, 5V o,
2
Uno de los primeros diseños de los amplificadores operacionales (AO), basado en la tecnología bipolar, fue
fabricado por la empresa Fairchild en 1968 y se referenció como µA741. Este amplificador tuvo un gran éxito
comercial y su popularidad ha hecho que diversos fabricantes lo reproduzcan bajo el seudónimo de 741.
2.2 Etapa de Diseño del Elemento Acondicionador de la Señal 17
en su defecto, el circuito integrado LM336
3
. El cátodo del LM336 (patica 2) se conecta
a la fuente (V
CC+
) a través de una resistencia R
z
= 2,5kΩ y el ánodo (patica 3) va
directamente a tierra (V
CC−
). Para cancelar pequeños rizados en la señal, se conecta un
capacitor C
z
= 10µF en paralelo al integrado. Así, con esta implementación, la entrada
positiva del amplificador, V
in+
, se conecta al voltaje de referencia V
ref
, como se muestra
en la figura 2.2.1.
Figura 2.4: Implementación de un LM336 para generar el voltaje de referencia de 2,5V.
El filtro activo se conecta como se muestra en la figura 2.2.1.
Figura 2.5: Implementación de un filtro pasa alta empleando un amplificador operacional 741.
3
El LM336 es un circuito integrado conocido como “diodo regulador de voltaje de precisión de 2.5V”, se
caracteriza por tener un bajo coeficiente de temperatura y una impedancia dinámica de 0,2 Ω. Además, brinda la
posibilidad de hacer pequeños ajustesen el voltaje regulado [5].
18 Diseño experimental
2.2.2. Módulo de amplificación
Se implementa un amplificador operacional 741 dispuesto como inversor, siguiendo el de-
lineamiento descrito en [4], de nuevo V
in+
va conectado a V
ref
como puede verse en la figura
2.2.2. Este circuito cuenta con ajuste del “offset”. El factor de amplificación es variable, dado
que su valor se obtiene de la relación entre R
A2
y la suma de R
A1
más R
V A
.
Amp =
R
A2
R
A1
+R
V A
(2.2)
En este caso, el factor de amplificación oscila entre 4,5 y 27.
Figura 2.6: Implementación de un amplificador inversor con ajuste de ganancia.
2.2.3. Módulo de ajuste del desplazamiento de la señal
Siguiendo el mismo delineamiento [4], se recurre a un amplificador operacional 741 imple-
mentado como sumador inversor. Igualmente, V
in+
va conectado a V
ref
como se muestra en la
figura 2.2.3. Note que el circuito tiene un factor de amplificación de 2,2, el cual está dado por
la relación entre R
D2
y R
D1
(Aquí R
D1−in
y R
D1−add
deben ser iguales). El desplazamiento de
la señal se ajusta con el potenciómetro R
V D
, cuyos extremos van conectados a V
CC+
y V
CC−
(+5V y 0V respectivamente).
2.3 Etapa de Diseño del Elemento Procesador de Señales 19
Figura 2.7: Implementación de un amplificador sumador inversor.
2.3. Etapa de Diseño del Elemento Procesador de Señales
En esta etapa, el punto de partida es la señal de voltaje proveniente del elemento acondicio-
nador de la señal cuya magnitud está en el rango de 0 a 5 voltios. Para el procesamiento de la
señal se consideran las siguientes tareas:
Toma y digitalización de la señal.
Transmisión del dato asociado a la magnitud de la señal
4
a un computador.
Para realizar estas tareas se recurre a un PIC de la familia 16F87XA, pues estos microcon-
troladores cuentan con puertos provistos de ADC y la electrónica para la transmisión seriada
bajo los protocolos RS232 e I
2
C [6]. La frecuencia del muestreo y la transmisión se definen
con la estructuración de la comunicación entre el computador y el microcontrolador, referen-
ciándonos en su debido momento al Modelo OSI de la ISO
5
. La transmisión de los datos se
hace hacia el puerto serial del computador, caracterizado por tener voltajes de trabajo basados
4
Esta señal de voltaje es representativa de la variación de la presión del aire sobre el sensor debida al sonido.
5
Dada la necesidad de interconectar sistemas procedentes de distintos fabricantes, la ISO (“International Stan-
dards Organization”) aprobó el modelo de referencia para la interconexión de sistemas abiertos OSI (Open Systems
Interconnection) bajo la norma ISO/7498. El modelo OSI está conformado por 7 niveles que cumplen funciones
muy específicas y que proporcionan servicios al nivel inmediatamente superior, estos son: nivel físico, de enlace
de datos, de red, de transporte, de sesión, presentación y aplicación [8].
20 Diseño experimental
en la norma RS-232 y que son incompatible con los voltajes del microcontrolador, razón por la
cual se requiere de un dispositivo que haga la “traducción” de voltajes entre ellos. Así pues, el
Elemento Procesador de Señales se compone de un microcontrolador y un conversor de niveles
lógicos, estos elementos se describen a continuación. Puesto que es necesario el conocimiento
de la norma RS232 para el entendimiento del proceso de comunicación, también se describe
aquí el puerto serial RS-232 del computador.
2.3.1. Descripción de los componentes
El microcontrolador
Un microcontrolador con la capacidad de realizar estas tareas es el 16F873A, el cual es la
unidad mínima de la familia 16F87XA [11] y cuenta con 5 canales ADC, 3 puertos de entrada
y salida, 4 Kbytes para la programación, 192 bytes para el almacenamiento de datos de 8 bits,
frecuencia de operación hasta de 20 MHz y está empaquetado en un dispositivo de 28 paticas.
La distribución de sus señales de control, entradas y salidas se muestran en la figura 2.3.1.
Figura 2.8: Microcontrolador 16F873A.
El 16F873A está provisto de periféricos que facilitan su desempeño, tales como conversores
análogo-digital (ADC) de 8 y 10 bits, temporizadores, módulos de comunicación serial síncrona
y asíncrona y otros periféricos.
2.3 Etapa de Diseño del Elemento Procesador de Señales 21
El Módulo ADC: El ADC de 8 o 10 bits permite multiplexar hasta 8 entradas análogas
y el resultado es generado mediante el método de aproximaciones sucesivas [7]. La con-
versión se hace teniendo a V
DD
como voltaje de referencia o un voltaje presente en AN3
(patica 5), en este caso, éste es seleccionable por programa. Este módulo cuenta con cua-
tro registros para su funcionamiento: ADCON0, ADCON1 son los registros de control,
ADRESH y ADRESL son los registros donde se almacena el resultado. Cuando el cristal
es de 20 MHz, el fabricante sugiere seleccionar un reloj de F
osc
/32.
Las palabras de control requeridas para su programación son:
• Con 80
H
en el registro ADCON0 se selecciona AN0 como puerto de entrada y el
reloj de F
osc
/32. Al escribir 81
H
se habilita el módulo ADC y con 85
H
se da inicio
a la conversión.
• Se escribe 0E
H
en ADCON1 para justificar a la izquierda el dato, seleccionar AN0
como entrada análoga y a V
DD
como voltaje de referencia.
El TIMER0: Es un registro temporizador/contador de 8 bits que trabaja bien con un reloj
interno o con uno externo, seleccionable por programa. Su incremento está controlado por
el prescaler
6
y es regulado por el ciclo de instrucción del reloj (F
osc
/4). Los parámetros de
control del TIMER0 se definen en el registro de control OPTION_REG, allí se especifican
el reloj, el momento de cambio y relación de cambio del prescaler. Cuando ocurre el
desbordamiento del TMR0 se genera una interrupción que pone en alto el bit 2 de INCON
(T0IF). Un funcionamiento acorde con los requerimientos de esta aplicación se obtiene
con las siguientes palabras de control:
• C3
H
en OPTION_REG hace que el reloj del TIMER0 sea el ciclo interno de instruc-
ciones (F
osc
/4), los incrementos ocurran en la transición de bajo a alto y se asigna
el prescaler con una relación de 1:16.
6
El prescaler es un circuito electrónico diseñado para reducir la frecuencia de una señal electrica. En su imple-
mentación básica se emplea un contador digital. El PIC 16F873A cuenta con un prescaler entre sus componentes
básicos.
22 Diseño experimental
• El TMR0IF (bit 2 de INCON) debe ser puesto en cero por programa para iniciar
el ciclo del TIMER0. También se debe incluir esta instrucción en la subrutina de
atención a la interrupción, puesto que cada vez que se produce un desbordamiento
en el TIMER0 este bit se pone en uno.
El módulo USART: Es el módulo de comunicación serial o USART (del inglés “Univer-
sal Synchronous Asynchronous Receiver Transmitter”). Este módulo puede ser configu-
rado para establecer una comunicación full-duplex en el modo asíncrono y half-duplex
en el modo síncrono. Para su funcionamiento requiere de los registros de control RCSTA,
TXSTA y SPBRG, con ellos se especifican los parámetros propios de la norma RS-232.
Los registros de transferencia de datos TXREG y RCREG son los registros para la trans-
misión y la recepción de los datos respectivamente. En caso de que se requiera hacer uso
de las interrupciones, estas se definen en los registros de control PIE1, PIR1 e INTCON.
Las palabras de control requeridas en esta aplicación son:
• 80
H
en RCSTA Habilita el puerto serial, define recepción de datos de 8 bits, desha-
bilita la recepción contínua de datos, los datos no tendrán tramas de error ni habrá
detección de errores.
• 26
H
en TXSTA selecciona 8 bits de transmisión por dato, se habilita la transmisión,
se define el modo de transmisión asíncrono, una velocidad de transmisión alta y se
estipula el registro de transmisión seriada TSR como vacío.
• 14
H
en SPBRG define la velocidad de transmisión igual a 59,5 kBaudios. Se tiene
en cuenta que la velocidad se a seleccionado como alta en TXSTA.
• Al tranferir el dato a TXREG se inicia automáticamente la transmisión.
Un correcto funcionamiento del microcontrolador, sin considerar el empleo de interrupcio-
nes externas, exige las siguientes conexiones básicas con un cristal de 20 MHz:
La alimentación (V
DD
= 5V ) y referencia (V
SS
= GND) se conectan en las paticas 20 y
19 respectivamente.
2.3 Etapa de Diseño del Elemento Procesador de Señales 23
El cristal de alta velocidad (HS) va a OSC1 y OSC2 (paticas 9 y 10 respectivamente). El
circuito incluye dos capacitores con valores de 15 a 33 pF. En la figura 2.3.1 se muestra
la configuración sugerida por el fabricante [6].
Figura 2.9: Oscilador.
El microcontrolador implementa la detección de pequeños rizados en la señal de alimen-
tación, causando reinicios al sistema [11]. Esto se inhibe conectando MCLR (patica 1) a
través de una resistencia de 10 KΩ, a V
DD
.
La línea proveniente del elemento acondicionador se conecta directamente a una de las
entradas análogas del microcontrolador, AN0 (patica 2).
La salida del puerto seriado TX (patica 17) va a la entrada del conversor de niveles
lógicos.
El puerto RS-232
Esta interfaz está diseñada para facilitar la comunicación entre equipos lógicos a distancias
cortas, máximo 15 metros y velocidades del orden de 20 KHz. Permite la comunicación síncrona
y asíncrona, con control de flujo, en una dirección (simplex), en una u otra dirección (half
duplex) y en las dos direcciones simultáneamente (full duplex). Su diseño fue concebido para
conectar un computador (DTE) a un equipo de comunicación (DCE), frecuentemente se emplea
un conector DB-25 de 25 pines y en su versión económica se recurre a un DB-9, que es un
24 Diseño experimental
conector de 9 pines. Cada pin tiene un nombre, como se especifíca en la norma EIA 232, pues
desempeña una función en particular, el nombre del pin (tomado de la norma sin traducción) y
su función se describen a continuación:
Signal Ground: O tierra lógica, es la referencia para las demás señales.
Transmit Data: Envío primario de datos desde el DTE al DCE.
Receive Data: Envió primario de datos del DCE al DTE.
Request To Send: El DTE hace una petición de transmisión al DCE.
Clear To Send: El DCE le indica al DTE que puede realizar la transmisión.
Data Set Ready: El DCE le comunica al DTE que el canal está disponible.
Data Carrier Detect: El DCE le indica al DTE que se ha establecido una buena conexión.
Data Terminal Ready: El DCE le indica al DTE que está listo para recibir.
Ring Indicator: En esta línea el DCE le indica al DTE que existe una conexión entrante.
Estas funciones, que no incluye las señales de transmisión secundaria y que son comple-
mentarias de la norma, se distribuyen en el conector DB-9 como se muestra en la tabla 2.3.1.
Esta norma brinda la posibilidad de conectar entre si dos computadores con una conexión
punto a punto, esto significa que la comunicación se realiza sin equipo de comunicación, es decir
sin modem (DCE). En esta configuración los puertos seriales se conectan entre si directamente,
para ello se implementa un cable conocido como “null modem” [12], en él se conectan dos
conectores DB-9 como se muestra en la tabla 2.3.1.
Conversor de niveles lógicos
Los niveles lógicos del microcontrolador son de tecnología TTL mientras que los del puerto
serial del computador están definidos por el estándar EIA 232. Los valores de voltaje de los
niveles lógicos tanto del computador como los de la RS-232 se muestran en la tabla 2.3.1.
2.3 Etapa de Diseño del Elemento Procesador de Señales 25
SEÑAL PIN DB-9 DIRECCIÓN
Signal Ground SG 5 - - -
Transmit Data TD 3 Salida
Receive Data RD 2 Entrada
Data Terminal Ready DTR 4 Salida
Data Set Ready DSR 6 Salida
Request To Send RTS 7 Salida
Clear To Send CTS 8 Entrada
Data Carrier Detect DCD 1 Entrada
Ring Indicator RI 9 Entrada
Tabla 2.2: Señales de una RS232. La dirección de las señales están definidas con respecto al DTE.
Esta incompatibilidad se corrige con circuitos conocidos como drivers/receivers, los cuales
se diseñan para hacer la conversión de niveles TTL a RS-232 y viceversa. Comercialmente
se consigue un circuito integrado muy práctico como lo es el MAX232. Esta aplicación se
caracteriza por requerir solamente de la fuente de alimentación de 5 V, ya que internamente
genera los niveles lógicos del estándar RS232 [13]. La conexión básica de este integrado, tal
como lo indica el fabricante, se muestra en la figura 2.3.1.
Figura 2.10: MAX232.
26 Diseño experimental
PIN DTE DTE PIN
DB-9 1 Computador 1 Computador 2 DB-9 2
3 Transmit Data −→ Receive Data 2
2 Receive Data ←− Transmit Data 3
7 Request To Send −→ Data Carrier Detect 1
1 Data Carrier Detect ←− Request To Send 7
4 Data Terminal Ready −→ Data Set Ready 6
4 Data Terminal Ready −→ Ring Indicator 9
6 Data Set Ready ←− Data Terminal Ready 4
9 Ring Indicator ←− Data Terminal Ready 4
7 Request To Send
-
Request To Send 7
8 Clear To Send Clear To Send 8
5 Signal Ground ←→ Signal Ground 5
Tabla 2.3: Conexión básica de la RS232
2.3.2. Estructuración de la comunicación
Conocidas las características básicas de los dispositivos presentes en la transferencia de
datos se procede a estructurar la comunicación. Aunque ésta sea una comunicación muy simpli-
ficada, se comparará con el modelo OSI, para que, en caso de que se desee, se hagan las mejoras
pertinentes.
El tipo de conexión es punto a punto
7
.
El control de acceso al medio (MAC del inglés “Media Access Control”) se define con el
modo maestro-esclavo
8
. El microcontrolador será el maestro, mientras que el computador
7
La conexión punto a punto es la que enlaza solamente dos elementos de comunicación y están conectados
en sus extremos. Esta configuración permite una dedicación exclusiva, sin límites de tiempo e inhibe el acceso de
otros usuarios. [9]
8
En este modo de comunicación, el maestro es quien inicia y controla la transmisión, mientras que el esclavo,
del otro extremo del medio físico, recibe y responde los comandos del maestro.
2.3 Etapa de Diseño del Elemento Procesador de Señales 27
TECNOLOGÍA NIVEL LÓGICO
BAJO ALTO
TTL 0 a 0,8V 2,2 a 5V
EIA 232 3 a 15V -3 a -15V
Tabla 2.4: Niveles lógicos
hace las veces de esclavo.
El control lógico de línea (LAC) se implementa en su modalidad de difusión sin respuesta,
es decir, sin conexión y sin reconocimiento. Esto obliga a que el computador siempre esté
pendiente de la llegada de un dato. En caso de no hacerlo se perderá el dato, si opción a
recuperarlo.
La recepción del dato es en modo RAW [10], es decir, sin evaluación a su llegada. No se
considera la posibilidad de detección de errores, encriptamiento, ni peticiones como la de
retransmición.
La frecuencia del muestreo es de 4 kHz
9
.
Con base en estas especificaciones, el programa del microcontrolador hará que éste realice
las tareas de forma ciclica. Así, cada 250 µs toma la señal, la digitaliza, hace su almacenamiento
temporal y transmite el dato. El sistema de transmisión, según el modelo OSI, se estructura así:
Nivel físico:
El dato se transmite desde un dispositivo con voltajes lógicos TTL hacia otro con voltajes
EIA-232, estos son un microcontrolador y un puerto serial RS-232. Dada la incompatibilidad
de estos dispositivos, es necesario implementar un conversor de niveles lógicos, para lo cual se
9
En cumplimiento del teorema de Nyquist-Shannon, la velocidad de muestreo mínima sera igual al doble de
la máxima frecuencia a muestrear. Con esta frecuencia se reproducirán señales cuyas frecuencias sean inferiores a
2 kHZ y su fidelidad mejorará con base en que las señales muestreadas sean de más baja frecuencias.
28 Diseño experimental
recurre a un circuito integrado conocido como drivers/receivers. Estos tres dispositivos confor-
man el Elemento Procesador de Señales y dan el soporte para el nivel físico de la comunicación
según la OSI.
Nivel de enlace de datos:
Por ser este sistema de comunicación muy sencillo, a corta distancia
10
y considerando que el
microcontrolador hará las veces de computador 1 y el computador hará las veces de computador
2, definidos en la tabla 2.3.1, este nivel se simplifica de la siguiente manera:
El control de acceso al medio es mediante el modo maestro-esclavo, por esto, no hay
petición de enlace. El RTS →DCD y DCD ←RTS no se conectan. Y, como tampoco
se da autorización para realizar la transmisión, ninguno de los dos CTS se conectan.
El computador es un único “usuario”, por lo tanto no hay gestión y coordinación de la
comunicación, el canal siempre está disponible. DTR → DSR y DSR ← DTR no se
conectan.
El LAC se implementa en su modalidad de difusión sin respuesta, por lo tanto la comu-
nicación es en una dirección, el control de flujo es en el modo simplex. DTR → RI,
RI ←DTR y RD ←TD no se conectan.
Los datos en el microcontrolador tienen una longitud de 8 bits, por esto, una palabra o
carácter a transferir será de 8 bits.
Nivel de Red:
Por ser el tipo de conexión punto a punto, con un único “usuario”, no se requiere de equipos
enrutadores (comercialmente conocidos como “routers”) y el caracter tampoco tendrá tramas.
Nivel de transporte:
Físicamente no es posible que el dato enviado llegue a un destino diferente, por lo que este
nivel no se implementa.
10
el cable que conecta el microcontrolador al computador tendrá un longitud aproximada de 1 o 2 metros
2.3 Etapa de Diseño del Elemento Procesador de Señales 29
Nivel de Sesión:
Como el LAC se implementa sin conexión y sin reconocimiento, no se establece una se-
sión como tal, el microcontrolador siempre transmite datos mientras que el computador está
pendiente de su llegada. Este nivel no se implementa.
Nivel de Presentación:
Se implementan aspectos tales como la semántica y la sintaxis de los datos transmitidos,
para esto retomamos la norma RS232 y se fija su protocolo para definir los parámetros de
comunicación tanto en el microcontrolador como en el computador. Estos son:
Transmisión sin paridad. No se implementan la transmisión del bit de paridad, por lo tanto
el receptor no evalúa la paridad al recibir el dato.
Un bit de parada. Indica la finalización del envío del dato.
Palabras de 8 bits. La dimensión de cada dato es de 8 bits.
Adicionalmente la norma exige la definición de la velocidad de la transmisión.
En resumen, las especificaciones de los parámetros de comunicación en esta implementación
son: 1 bit de parada, palabras de 8 bits, sin paridad y a una velocidad de 57,6 Kbps.
Nivel de Aplicación:
Este último nivel hace que el usuario tenga acceso a la información, para ello se definen los
programas que acceden al nivel de presentación y al nivel físico para transferir los datos. En
este caso habrá un programa para el microcontrolador, quien transmite en modo maestro, y otro
para el computador quien, en modo esclavo, recibe el dato. Como los programas realizan tareas
que no tienen nada que ver con la comunicación, pero son de interés en este trabajo, estas se
explicarán con igual complejidad en las secciones siguientes.
30 Diseño experimental
2.3.3. Aplicación para el microcontrolador
Esta aplicación realiza las tareas de digitalización y transferencia de datos, como se muestra
en el algoritmo 2.3.3.
INICIO
-
Definición de parámetros del ADC, TIMER0 y USART.
ciclo Ajuste de parámetros.
Repita hasta una interrupción del TIMER.
Interrupción del TIMER:
- Lectura de la señal en el puerto análogo.
- Digitalización de la señal.
- Almacenamiento temporal del dato.
- Transmisión del dato.
- Vaya a ciclo.
Fin
Tabla 2.5: Algoritmo del microcontrolador
La implementación del algoritmo se hace directamente con el ensamblador del PIC
11
. Esta
programación es una estructura secuencial inmersa en una estructura iteractiva. La iteración se
logra al hacer que el TIMER0 genere una interrupción periódica y como consecuencia de la
interrupción se ejecutan, de manera secuencial, las instrucciones de la subrutina de atención a
la interrupción.
La definición de los parámetros se hace escribiendo, en un bloque preliminar, las palabras
de control en los respectivos registros de control, descritas en la sección del microcontrolador.
- MOVLW C3H y MOVWF OPTION_REG asignan un preescaler de 1:16 al TIMER0 e inician el
TIMER0.
- MOVLW B1H y MOVWF TMR0 definen la duración del TIMER0.
11
El ensamblador del PIC es el lenguaje de bajo nivel que se emplea para su programación, se cuenta con un
juego de instrucciones o mnemónicos que son establecidos por el fabricante [6], [11].
2.3 Etapa de Diseño del Elemento Procesador de Señales 31
- MOVLW 0EH y MOVWF ADCON1 definen el canal análogo y el reloj de la conversión.
Se recomienda iniciar la subrutina de atención a la interrupción reiniciando el TIMER0, pa-
ra lo cual se debe recargar el valor de B1 en este registro y regresar a cero el bit 2 de INCON:
- MOVLW B1H y MOVWF TMR0. Recargan el valor B1 en el registro TMR0
- BCF INTCON,2 Escribe cero en el bit 2 del registro INTCON.
La toma de la señal incluye habilitar el puerto ADC y un ciclo de espera T
acq
de más de 12
µs
12
. Esto se hace con los siguientes comandos:
- MOVLW 81H y MOVWF ADCON0 Seleccionan AN0 y definen el reloj de conversión.
- ciclo1 MOVLW 0x06 y MOVWF CCE escriben un 6 en el contador del ciclo de espera.
- DECFSZ CCE,1 y GOTO ciclo1 Decrementa CCE y repite el cilclo1 hasta que CCE=0.
La digitalización requiere de un ciclo de espera para garantizar que el ADC ha completado
la conversión.
- BSF ADCON0,2 inicia la conversión.
- ciclo2 BTFSC ADCON0,2 y GOTO ciclo2 conforman el ciclo de espera de la conversión.
Se transmiten primero los bits más significativos del dato (ADRESH) y luego los menos
significativos (ADRESL).
- MOVF ADRESH,0 y MOVWF TXREG Transmite ADRESH.
- MOVF ADRESL,0 y MOVWF TXREG Transmite ADRESL.
Note que los datos se transfieren sin tramas dado que la comunicación es sin detección de
errores y sin enrutamiento.
12
Se debe considerar este tiempo a partir del momento en el que se habilita el módulo de conversión. Con un
oscilador de 20 MHz se requiere de un ciclo con 6 iteraciones, valor que se almacena en el Contador del Ciclo de
Espera CCE. Si esto nunca se hace, el ciclo solo se tendrá en cuenta entre lecturas sucesivas, de lo contrario, dicho
ciclo se puede omitir.
32 Diseño experimental
2.3.4. Aplicación para el computador
Esta aplicación realiza las tareas de lectura del puerto serial, almacenamiento de los datos,
generación de la gráfica de los datos en función del tiempo y la creación de un reporte impreso
con la gráfica anterior. Para su desarrollo se recurre a un lenguaje de programación robusto,
como lo es Qt4
13
. El diseño y depuración de la aplicación se hace mediante QDevelop
14
bajo la
filosofía de la programación orientada a objetos
15
.
La aplicación se crea a partir de una ventana principal de clase widget
16
(QWidget), la que
a su vez se divide en dos regiones, en la primera, generada mediante el método paintEvent, se
grafican “en tiempo real” los datos y en la segunda se ubican las cajas de chequeo y los botones
que generan las señales para el control y operación de los métodos propios de cada objeto.
El objeto central es el widget qport [15], el cual controla la comunicación a través del puerto
RS-232. El creador de este widget definió los métodos necesarios para su funcionamiento [16],
con ellos se hace la inicialización, apertura y lectura del puerto serial. Dado que el computador
hace las veces de “esclavo” y que la comunicación es sin petición de enlace, sin gestión y
sin coordinación en la comunicación, se implementan solamente los métodos requeridos para la
apertura y recepción de datos: open(), close(), enableReceiving(), disableReceiving(). La lectura
del puerto se hace con la señal newData(QByteArray) y al dato se le da formato con el método
FormatData(QByteArray). En la figura 2.3.4 se muestra la estructura general del programa.
Los métodos más importantes tienen asociados cajas de chequeo (QCheckBox) y botones
(QPushBotton) que se activan mediante señales originadas al presionar el “mouse” dentro de la
13
Qt es una biblioteca multiplataforma que sirve para desarrollar interfaces gráficas de usuario y también para
el desarrollo de programas sin interfaz gráfica como herramientas de consola y servidores. Qt utiliza el lenguaje de
programación C++ y puede ser utilizado por otros lenguajes, además funciona en las principales plataformas. Qt
es software libre y de código abierto, distribuido bajo los términos de GNU Lesser General Public License. [14]
14
QDevelop es un entorno de desarrollo gráfico creado para Qt4 y C++, desarrollado con licencia GPL “General
Public License”. Está disponible para Windows y Linux.
15
La programación orientada a objetos se basa en la idea de un objeto. Un objeto es un ente autónomo que
atiende tareas acorde con sus métodos y atributos. Un objeto se diferencian de los demás por un conjunto de
características o propiedades y acciones que se realizan en respuesta a requerimientos de otros objetos.
16
En el ámbito de la programación gráfica los widgets son componentes visuales que el programador utiliza
como interfaz gráfica para facilitar la interacción entre el usuario y el programa.
2.3 Etapa de Diseño del Elemento Procesador de Señales 33
Figura 2.11: Estructura del programa del computador.
región asociada a la respectiva caja de chequeo o botón. La programación incluye las siguientes
líneas de programa:
Instrucciones para definir los objetos del programa:
- qport = new QPort(Dialog); Define el objeto “qport”.
- painter.drawRect( x0 , y0 , x1-x0 , y1-y0 ); define el área para graficar.
- checkBox = new QCheckBox(Dialog); Define una caja de chequeo.
- printerButton = new QPushButton(tr(“Imprimir” )); define el botón para imprimir el gráfico.
Instrucciones para asociar los objetos del programa con los métodos:
- connect(qport, SIGNAL(newData(QByteArray)), this, SLOT(recived(QByteArray))); Asocia
la señal newData con el método recived.
- connect(checkBox3, SIGNAL(toggled(bool)), this, SLOT(graficando(bool))); Asocia la señal
toggled de la caja de chequeo con el método graficando.
- connect( printerButton, SIGNAL( clicked() ), this, SLOT( imprimir() ) ); asocia la señal “cli-
cked” del botón “printerButton” con el método imprimir.
Llamado al los métodos preestablecidos.
34 Diseño experimental
- qport->setObjectName(QString::fromUtf8(“qport”));
- qport->setProperty(“Speed”, QVariant(QPort::BAUD57600));
- qport->setProperty(“Open”, QVariant(true));
- qport->setBuffer(10);
Y la definición de eventos que se ejecutan con la toma de datos:
void DialogImpl::paintEvent(QPaintEvent * /* event */) {
- float abc;
- QPainter painter(this);
- painter.setPen(pen);
- painter.setBrush(brush);
- painter.drawRect( x0 , y0 , x1-x0 , y1-y0 );
- painter.drawLine( x0, ym , x1 , ym);
- painter.drawText( x1/2-23, y1+33, "tiempo (s)");
- for ( ab = 1 ; ab <11 ; ab++ ) {
- painter.drawLine( x0+100*ab, y0, x0+100*ab , y0+10 );
- painter.drawLine( x0+100*ab, y1-10, x0+100*ab , y1 );
- painter.drawLine( x0+100*ab, ym-5, x0+100*ab , ym+5 );
- if ( ab % 2 == 0 ) {
- abc = 0.05*ab;
- painter.drawText( 100*ab , y1+14 , str1.setNum( abc ,10,1) ); }
- }
- for ( ab = 1 ; ab <totaldatos ; ab++ ) {
- painter.drawPoint( x0+ab , y0+vector.data()[ab]); }
- painter.setPen(palette().dark().color());
- painter.setBrush(Qt::NoBrush);
- painter.drawRect(QRect(0, 0, width() - 1, height() - 1));
- }
2.4 Etapa de Diseño del Elemento Presentador de Datos 35
2.3.5. Implementación del Elemento Procesador de Señales
La señal de voltaje del elemento acondicionador de señal, se conecta al microcontrolador, a
su vez, la salida del microcontrolador va al MAX232 y la salida de éste a la RS-232 del compu-
tador, como se muestra en la figura 2.3.5. De esta manera se garantiza que la señal análoga
tomada en el puerto RA0 del microcontrolador es digitalizada y transferida al computador a
través del conversor de niveles.
Figura 2.12: Soporte físico.
2.4. Etapa de Diseño del Elemento Presentador de Datos
Como se mencionó en la sección 1.4, se requiere solamente de una unidad de cómputo
básica para ejecutar el programa que da soporte a la recepción, análisis, representación gráfica,
impresión y almacenamiento de la información. Esta aplicación se desarrollo en un equipo con
las siguientes características:
Microprocesador doble nucleo de 160 GHz.
Memoria total de 994 MiB. En memoria cache 467 MiB.
Disco duro de 80 GB.
36 Diseño experimental
Monitor LCD de 17“, con una resolución de 1280 x 1024 para un total de 1,3 MPixeles.
Su ancho de banda caraterístico es de 60 MHz.
La impresora, modelo LaserJet 1010, tiene una resolución de 600x600 ppp (puntos por
pulgada), es decir 23 puntos por mm, bien sea horizontal o verticalmente.
Adicionalmente, cuenta con el puerto de comunicación serial RS232.
La aplicación, tan pronto se monta en el sistema, habilita el puerto serial con las especi-
ficaciones descritas en 2.3.2, esto es, 1 bit de parada, palabras de 8 bits, sin paridad y a una
velocidad de 57,6 Kbps. Dos cajas de chequeo sirven para habilitar las acciones de graficar y/o
escribir el dato, tan pronto como es leido.
Mediante el empleo de botones se implementan las siguientes funciones adicionales:
Se implementa un primer botón para activar el método encargado de imprimir el reporte
con el gráfico de la señal que se está mostrando en pantalla.
Con el segundo botón se almacena la información capturada durante 8 segundos, es decir,
se guardan 8000 datos de 8 bits en un archivo.
El tercer botón sirve para que se cree un archivo gráfico en formato .BMP
17
con la imágen
mostrada en pantalla.
17
Un archivo de extensión .BMP (del inglés Bit Mapped Picture) es un archivo con el formato de imágenes
empleado por Windows.
REFERENCIAS
[1] Bies D. A. y Hansen C. H., “Engineering Noise Control: Theory and Practice”, Spon Press,
1988.
[2] Crook J., et al., http://audacity.sourceforge.net/, octubre 2009.
[3] LM741 Single Operational Amplifier, http://www.fairchildsemi.com, link directo
http://www.datasheetcatalog.org/datasheets/120/53989_DS.pdf, nov 2010.
[4] Carter B., “A Single-Supply Op-Amp Circuit Colletion”, Texas Instrument, Application
Report SLOA058, Noviembre, 2000.
[5] SGS-THOMSON Microelectronics, LM236, LM336,B, 2.5V Voltage References, SGS-
THOMSON, 1997.
[6] Microchip, “PIC16F87XA Data Sheet, 28/40/44-Pin Enhanced Flash Microcontrollers”,
Microchip Technology Inc., 2003.
[7] Tocci R. J. y Widmer N. S., “Sistemas digitales: principios y aplicaciones”, editorial Pear-
son, 2003.
[8] Tanenbaum A. S., “Computer Networks”, Editorial Prentice Hall, 1989.
[9] Castillo E. E. y López P. G., “Comunicación de datos”, Editorial Universidad del Cauca,
1995.
[10] Puerto serie RS-232-C, http://30-03-67.dreamstation.com/ c950264/index.htm, febrero 19
de 2011.
[11] Microchip, “PICmicro
TM
Mid-Range MCU Family Reference Manual”, Microchip Tech-
nology Inc., 1997.
[12] Lázaro L. J. y Miralles A. M., “Fundamentos de telemática”, editorial Universidad Poli-
técnica de Valencia, 2002.
37
38 REFERENCIAS
[13] Texas Instruments, “MAX232, MAX232I dual EIA-232 drivers/receivers”, Texas Instru-
ments Incorporated, 2002.
[14] J. Thelin, “Foundations of Qt Development”, Apress, 2007.
[15] S. Oldani, “QPort 1.5”, http://www.sebest.com.ar/?q=node/19, 2009.
[16] S. Oldani, “Manual de QPort Ver: 1.5”, http://www.sebest.com.ar/?q=node/35,
03/03/2011.
3
EVALUACIÓN DEL EQUIPO
La evaluación del Sistema de Detección de Sonidos de Corta Duración considera la evalua-
ción de los siguientes aspectos:
Ruido interno a partir de una entrada cero.
Definición de la amplitud máxima a detectar.
Respuesta en función de la frecuencia en dB FS.
Determinación del aliasing.
3.1. Detección del ruido interno
Como todo sistema electrónico, sus componentes generan señales no deseadas que se su-
perponen a la señal de interés afectando su detección. Estas señales no deseadas o ruido interno
son función de parámetros como la temperatura e incluso de la calidad de los componentes
electrónicos. Para su determinación se sugiere medir, a temperatura ambiente, la magnitud de
la señal de salida en ausencia de la señal de entrada, es decir, se mide la respuesta del elemento
acondicionador de la señal cuando el elemento sensor se ha aislado y no recibe ningun sonido.
Para su medición, el micrófono se encerró en una cubierta de icopor y se tomó el mayor
valor del voltaje de salida del elemento acondicionador, variando los potenciómetros del factor
de amplificación, filtrado y ajuste de nivel. El máximo valor obtenido fue de XXXX voltios.
39
40 Evaluación del equipo
3.2. Definición de la amplitud máxima a detectar
3.3. Respuesta en función de la frecuencia en dB FS
3.4. Determinación del aliasing
javier
aliasing
1
http://www.jimprice.com/prosound/db.htm
1
El aliasing es el efecto que causa que señales continuas distintas se tornen indistinguibles cuando se les
muestrea digitalmente. Cuando esto sucede, la señal original no puede ser reconstruida de forma unívoca a partir
de la señal digital.