Está en la página 1de 11

Escuela Politécnica Nacional

ESFOT
Comunicaciones Analógicas y Digitales
Trabajo Final
1st Leonel Campoverde 2nd Erik Ortega 3rd Alex Chuchuca
Comunicaciones Analógicas y Digitales Comunicaciones Analógicas y Digitales Comunicaciones Analógicas y Digitales
Escuela de Formación de Tecnólogos Escuela de Formación de Tecnólogos Escuela de Formación de Tecnólogos
Quito, Ecuador Quito, Ecuador Quito, Ecuador

I. R ESUMEN E JECUTIVO - Objetivos del proyecto.

-El proyecto perteneciente al grupo D tiene la intención


• 1.- Hallar formas de mejorar la eficiencia en la
de desarrollar un sistema de compresión de audio utilizando
transmisión o almacenamiento de datos de audio sin
una combinación de hardware y software. Los componentes
comprometer de manera exagerada la calidad del sonido
necesarios para este trabajo son: un Arduino Uno, una shield
que puede percibir el usuario final.
ISD1820, el software online Matlab, Audacity y Arduino
IDE. El proyecto se divide en varias etapas:
• 2.- Reducir del tamaño de archivos de audio para permitir
un almacenamiento y transmisión más eficientes.
-Adquisición de audio: Se utiliza un micrófono conectado
a la shield ISD1820 para capturar audio en tiempo real. El • 3.- Minimizar la pérdida de calidad que puede percibirse
procesamiento inicial con la shield ISD1820 se encarga de por el cliente con acciones como la eliminación de
la grabación y reproducción de audio. Los mensajes de voz datos redundantes o menos importantes con el objetivo
grabados se almacenan en la memoria de la shield. de que la calidad del sonido sea lo suficientemente
alta como para que las personas que usen el sistema
-Transferencia de datos al Arduino Uno: Los mensajes de compresión no perciban una degradación significativa.
de voz grabados se transfieren desde la shield ISD1820 al
Arduino Uno a través una SD. Pero antes de esto se realiza • 4.-Dar eficiencia en tiempo real puesto que, en
la creación de graficas en Matlab online y la compresión de aplicaciones en tiempo real, como son las videollamadas
audio en Audacity en un archivo .WAV que es compatible en o transmisión de música en vivo, la compresión de
Arduino IDE. Audacity también permite la visualización y audio debe ser lo suficientemente rápida para no causar
análisis de los datos de audio comprimidos. Aquı́, se pueden retrasos perceptibles en la transmisión o la reproducción.
visualizar los cambios en la forma de onda y analizar la
calidad del audio comprimido.
II. I NTRODUCCI ÓN
-Reproducción de audio comprimido: El Arduino Uno -El proyecto por realizar se enfoca en la compresión
puede reproducir el audio comprimido a través de la shield de audio, un tema que forma parte de las comunicaciones
de una bocina o altavoz, lo que permite verificar la calidad analógicas y digitales, puesto que se va a permitir la
del audio después de la compresión. transmisión eficiente y la reproducción de señales de audio
de alta calidad como también de señales comprimidas
-Este proyecto combina hardware y software para crear que resultan útiles en ciertas aplicaciones. En el área de
un sistema de compresión de audio completo. Utiliza la la tecnologı́a de las comunicaciones, tanto en sistemas
capacidad de procesamiento de audio de MATLAB para analógicos como digitales, la transmisión de audio sin
comprimir los datos y Audacity para la visualización y comprimir puede ser un problema porque suele resultar
análisis de audio. El Arduino Uno y la shield ISD1820 ineficiente en términos de ancho de banda y capacidad de
se utilizan para adquirir, almacenar y reproducir el audio, almacenamiento. Ası́ pues, la compresión de audio se ha
creando ası́ un sistema eficiente de compresión de audio. convertido en una herramienta esencial para resolver estas
limitaciones y garantizar una comunicación efectiva en una
variedad de aplicaciones, desde una comunicación entre una y herramientas dedicadas al procesamiento de audio,
estación radio con un vehı́culo hasta servicios de música y aquı́ se incluye la lectura y escritura de archivos de audio
videoconferencias. en varios formatos, en este caso se usó el formato .WAV
para que sea posible la lectura, reproducción y grabación
-El primer punto que se hará referencia es el concepto de de audio en ARDUINO, por último, se encuentran las
compresión de audio como tal, se hace referencia a la técnica operaciones de manipulación de señales.
de reducir la cantidad de datos necesarios para representar una
señal de audio sin comprometer significativamente su calidad • Evaluación de calidad de audio: Este software incluye
original o inicial. Este proceso se basa en la eliminación o herramientas para evaluar la calidad de audio antes
reducción de redundancias y detalles no esenciales en la señal y después de la compresión. Esto es importante para
de audio, lo que resulta en una representación más eficiente. garantizar que la compresión no dañe significativamente
Existen dos divisiones principales para la compresión de la calidad del audio percibida por el usuario.
audio: la compresión sin pérdida, que conserva toda la
información original de la señal, y la compresión con pérdida, • Algoritmos de compresión de audio: Matlab otorga una
que elimina cierta información para lograr una mayor amplia variedad de algoritmos de compresión de audio
compresión. listos para usar, tal es el caso de un algoritmo muy
conocido como es el de MP3, ası́ como otros algoritmos
En este trabajo grupal, se investigará y consultará personalizados que los usuarios pueden utilizar. Para
detalladamente los principios fundamentales de la compresión acceder a estos algoritmos se los llama a través de
de audio en comunicaciones analógicas y digitales, ası́ como funciones y bibliotecas especı́ficas.
las técnicas y estándares comunes utilizados en la actualidad.
También se analizará los problemas que surgieron durante • Simulación y experimentación: MATLAB permite
la ejecución del proyecto y las consideraciones importantes simular y experimentar con diferentes configuraciones
relacionadas con la compresión de audio, como la calidad, de compresión de audio para evaluar su eficacia y
la latencia y la interoperabilidad. Es necesario comprender rendimiento. Esto es esencial para ajustar los parámetros
estos conceptos, para poder apreciar cómo la compresión de compresión y lograr un equilibrio entre la calidad y
de audio ha transformado la forma en que se vive y se la tasa de bits.
comparte el sonido en el mundo moderno de la tecnologı́a y
las comunicaciones. • Desarrollo de algoritmos personalizados: En esta
plataforma también se puede trabajar para desarrollar
Por otro lado, el software Matlab que es utilizado y probar algoritmos de compresión de audio
para múltiples aplicaciones con ayuda de su lenguaje de personalizados. Los usuarios pueden aprovechar el
programación, forma un entorno compuesto de herramientas amplio entorno de programación y las bibliotecas de
informáticas y software ampliamente utilizado en ingenierı́a señales para crear algoritmos adaptados a sus necesidades
y ciencias, también ofrece una serie de caracterı́sticas y especı́ficas.
herramientas útiles para trabajar con la compresión de audio.
A continuación, se presentan algunas caracterı́sticas esenciales
En esta ocasión, el programa Matlab online resultó una
de MATLAB que tienen relación con la compresión de audio:
herramienta de suma utilidad para trabajar con compresión
de audio, no solo porque ofreció un amplio menú de
• Herramientas de análisis de señales: Matlab ayuda a
herramientas, sino también porque da capacidades que
los usuarios a realizar análisis detallados de señales de
permiten a los estudiantes investigar, desarrollar y evaluar
audio, como es el caso de los espectrogramas, el análisis
eficazmente algoritmos de compresión de audio, ası́ como
de frecuencia, el espectro de potencia, entre otros. Estas
realizar análisis detallados de señales de audio antes y
herramientas son muy importantes para comprender las
después del proceso de compresión.
caracterı́sticas de una señal de audio antes y después de
la compresión.
- Objetivos especı́ficos del informe.
• Interfaz de usuario gráfica: El programa ofrece
herramientas para crear interfaces de usuario gráficas • Documentar y difundir todos los resultados obtenidos ya
personalizadas que facilitan la interacción con las sean positivos o negativos, es decir relatar el proceso de
funciones y algoritmos de compresión de audio, compresión y las respuestas generadas en el desarrollo
entonces se vuelve sencillo y útil para usuarios que no de la actividad, ası́ pues, se facilitará la comunicación
están familiarizados con la programación. de los logros y el entendimiento correcto del proyecto.

• Bibliotecas de funciones de procesamiento de audio: • Entregar un documento que informe de la eficiencia en el


También proporciona una amplia variedad de funciones almacenamiento de la compresión de audio, porque con
ayuda de este sistema es posible guardar más contenido
de audio en el mismo espacio de almacenamiento, lo que
es beneficioso para aplicaciones como la música digital,
las grabaciones de voz y las aplicaciones multimedia.

• Evaluar la calidad y el rendimiento con graficas para


asegurarse de que los resultados cumplen con los
estándares de calidad esperados.

III. M ARCO T E ÓRICO


La comunicación analógica y la digital se refieren a
dos aspectos de la comunicación humana y tecnológica.
La primera se centra en transmitir información sobre las Fig. 1. Esquema habitual de conección del módulo ISD1820
relaciones sociales entre interlocutores y a menudo implica
señales no verbales y gestos. Por otra parte, la comunicación
digital se orienta a transmitir información sobre los objetos de - Altavoz incorporado: Lleva un altavoz amplificador de
referencia externos y recurre a lenguajes y códigos artificiales, 8ohms incorporado en el propio chip.
como la comunicación verbal.[1]
- Fuente de alimentación de 3V: Necesita una alimentación
Compresión de audio es una técnica básica en la creación de 3,3V o 5V.
musical y la grabación de audio. Consiste en ajustar el rango
dinámico de una señal de audio, lo que implica disminuir la - Duración de grabación ajustable: La duración de la
diferencia entre los tonos más bajos y los más altos de una grabación y la frecuencia de muestreo se pueden cambiar
grabación. Para conseguirlo, se reduce el nivel de volumen de cambiando una resistencia.[3]
los sonidos más fuertes y se aumenta el de los más suaves.[2]

La relación entre la compresión de audio y las


comunicaciones analógicas y digitales está en cómo se usan
juntas para poder transmitir la información con efectividad.
Ası́, en la comunicación digital, como las grabaciones de
audio o las transmisiones en lı́nea, la compresión de audio se
utiliza para disminuir el tamaño de los archivos de audio y
hacer más fácil su transmisión o almacenamiento.[1],[2]
Fig. 2. Resistencias y tiempo de sample
Además para llevar a cabo el proyecto en cuestion se
utilizo ,un módulo lector de targeta sd para un arduino UNO
, un modulo ISD1820 de microfono y bocina y el programa - Dimensiones compactas: El módulo tiene un tamaño de
audacity . 37 x 54 mm.[3]

• El módulo ISD1820 tiene las siguientes caracterı́sticas • Por otra parte módulo SD tiene las siguientes
principales: caracterı́sticas:

- Grabación y reproducción de voz: El módulo puede - Alimentación: Puede funcionar con una fuente de
grabar y reproducir los audios de voz de entre 8 y 20 alimentación de 3,3 V o 5 V, en función del módulo y de
segundos de duración.[3] las especificaciones de la tarjeta SD que se utilice. Ciertos
módulos disponen de un regulador de tensión para suministrar
- Fácil control: Es posible su control directo por botones la tensión correcta a la tarjeta SD.
en la placa o a traves de un microcontrolador como Arduino,
STM32 o ChipKit, para le caso particular del arduino se - Compatibilidad de formatos: El dispositivo de tarjeta SD
puede controla con un menú en el monitor serial .[3] es compatible con los sistemas de archivos FAT16 o FAT32,
que son sistemas de archivos comunes en las tarjetas SD.
- Interfaz de pulsador: La grabación y reproducción puede Esto simplifica la lectura y escritura de los datos en la tarjeta
activarse por flanco o nivel.[3] SD por parte del microcontrolador.[4]
- Edición de audio: Audacity hace posible que los usuarios
modifiquen múltiples formatos de audio, como MP2, MP3,
AIFF, WAV y FLAC. Se pueden realizar operaciones como
copiar, cortar, mezclar y fusionar fragmentos de audio.

• Otro elemento es el aplificador LM386 que cuenta con las


siguientes caracteristicas :

Fig. 3. Esquema habitual de conección del módulo ISD1820

- Comunicación: Se comunican con el microcontrolador


a través de la interfaz SPI (Serial Peripheral Interface). Usa
lı́neas de comunicación como SCK (Reloj), MISO (Master In
Slave Out), MOSI (Master Out Slave In), y CS (Chip Select)
para transmitir datos entre el microcontrolador y la tarjeta SD.
Fig. 5. Diagrama del CI aplificador
- Librerı́as Arduino: Para interactuar con un módulo de
tarjeta SD a lo largo de un proyecto con Arduino, se usan
- Amplio rango de tensión de alimentación: El amplificador
generalmente las librerı́as SD.h y SPI.h. Dichas librerı́as
LM386 puede funcionar con un rango de tensión de
facilitan la lectura y escritura de datos en la tarjeta SD. [4]
alimentación de 4 V a 12 V o de 5 V a 18 V, lo que lo hace
adecuado para diversas aplicaciones.

- Drenaje de baja corriente de reposo: Con un bajo drenaje


de corriente de reposo de sólo 4 mA, el amplificador LM386
es eficiente energéticamente y adecuado para dispositivos que
funcionan con baterı́as.

- Ganancias de tensión de 20 a 200: La ganancia del


amplificador está ajustada internamente a 20, pero puede
modificarse fácilmente a cualquier valor entre 20 y 200
añadiendo una resistencia y un condensador externos.

- Entrada referenciada a masa: El amplificador LM386 tiene


Fig. 4. Módulo de tarjetas SD pinout, datashee entradas referenciadas a tierra, lo que simplifica el diseño
del circuito y facilita su integración en diferentes aplicaciones.
• Sofware Audacity y sus principales caracterı́sticas:
- Gratuito y multiplataforma: Audacity es un software gratuito - Tensión de reposo de salida autocentrada: La salida
de procesamiento de audio compatible con Windows, Apple del amplificador se polariza automáticamente a la mitad de
macOS y Linux. Los usuarios pueden tener acceso a sus la tensión de alimentación, asegurando un funcionamiento
funciones sin coste alguno. correcto y estable.

- Interfaz fácil de usar: Audacity ofrece una interfaz - Baja distorsión: El amplificador LM386 tiene una baja
sencilla y fácil de usar, que lo hace más accesible tanto distorsión, con un valor del 0,2% cuando la ganancia de
para usuarios principiantes como para los más experimentados. tensión está ajustada a 20, la tensión de alimentación es de
6 V, la impedancia de carga es de 8 , la potencia de salida es
- Compatibilidad con plugins y bibliotecas: Audacity admite de 125 mW y la frecuencia es de 1 kHz.
diversos plugins y librerı́as, lo que aumenta su funcionalidad - Disponible en diferentes encapsulados: El amplificador
y ayuda a los usuarios a mejorar sus posibilidades. LM386 está disponible en tres encapsulados diferentes de 8
patillas, incluyendo PDIP, SOIC y VSSOP, lo que permite su
uso en diversas aplicaciones con diferentes limitaciones de un código que satisfaga las necesidades de compresión, por
espacio. ello se detallara a contunuación, el funcionamiento del código
realizado:
IV. M ETODOLOG ÍA
- Pasos detallados del proceso de compresión de audio. - Al iniciar todo codigo es necesario iniciar con los
Para el desarrollo de este proyecto los audios implicados comandos ”clc” y ”clear all”, estos comandos son los
deben contar con el formato WAV (.WAV), con la finalidad encargados de limpiar la ventana de trabajo y eliminar las
de presentar los audios de manera sencilla mediante la variables existentes.
utilización de una placa Arduino UNO. En este proceso,
la placa Arduino carga los archivos de audio desde una
tarjeta SD previamente formateada en FAT16 o FAT32, y se
aprovecha de un altavoz de PC convencional para amplificar
la señal de audio generada por el microcontrolador Arduino.

Los archivos de audio WAV son un estándar de formato


de archivo desarrollado por Microsoft e IBM para almacenar
datos de audio en computadoras. Lo notable de este
formato es que no utiliza compresión, lo que facilita que Fig. 7. Comandos para limpiar la ventana.
incluso microcontroladores de recursos limitados puedan
reproducirlo. En el caso de la Arduino UNO, que carece de - A continuación, realizamos la importación del archivo
un DAC (convertidor de digital a analógico), se emplea la por medio de la funcion ”audioread”, en donde se almacena
técnica de modulación por ancho de pulso (PWM) en lugar la señal de audio en la variable ”x” y su respectiva frecuencia
de un DAC. Aumentar la frecuencia de la señal PWM deberı́a de muestreo en la variable ”fs”.
mejorar la calidad de salida del sonido.

La generación del sonido se logra manipulando el ciclo de


trabajo de la señal PWM.
• Para garantizar una reproducción óptima de archivos de
audio WAV, es esencial que estos cumplan con las siguientes
especificaciones: Fig. 8. Comandos para la importación de un archivo.
- Formato: PCM
- Configuración de formato: sin signo
- En la variable ”info”, guardaremos la información
- Frecuencia de muestreo: 16.0 kHz
obtenida del archivo de audio por medio del comando
- Profundidad de bits: 8 bits
”audioinfo”, los datos que se almacenaran corresponderán a
- Número de canales: mono (1 canal)
la duración, frecuencia de muestreo, el número de canales, etc.
En caso de disponer de archivos de audio en formato MP3,
es posible convertirlos al formato WAV utilizando el software
gratuito y de código abierto Audacity.

Fig. 9. Obtención de datos del archivo de audio.

- Preparación de la señal de audio, por medio del comando


”transporte(x)”, cambiamos la orientacion de la señal de
audio, pasando de un vector de columnas a un vector de filas
”(x1)”. La variable ”t” se crea como un vector de tiempo que
va desde 0 a 2 segundos, con pasos de 1/fs, lo que representa
el eje de tiempo para la señal.

Fig. 6. Audacity, software de conversión de Audio

• El proceso de compresión se lo realiza por medio del


software denominado ”MATLAB”, para ello se ha desarrollado Fig. 10. Conversión de la señal.
- Reduccion de la frecuencia de muestreo, para este nuevo archivo de audio llamado ”Audiocomprimido.wav”
proyecto se ha reducido la frecuencia de muestreo a la a partir de la señal submuestreada y con una profundidad
mitad y calculamos la relación entre la frecuencia original de bits de 8 bits por muestra y una frecuencia de muestreo fs1.
y la frecuencia de muestreo. Por medio del comando
”downsample”, submuestreamos la señal original ”x1” y la
almacenamos en la variable ”y” y finalmente la variable ”t1”,
representa el nuevo eje de tiempo.

Fig. 14. Creación de un archivo de audio comprimido.

- Calcular relación de compresión obtenida, se calcula la


relación de compresión dividiendo el tamaño en bytes del
archivo original (tamano original) por el tamaño en bytes del
archivo submuestreado (tamano submuestrado).

Fig. 11. Reducción de la frecuencia de muestreo.

- Creación de gráficos de las señales original y


submuestreada, genera dos subtramas en una figura, la
primera muestra la señal de audio original y la segunda
muestra la señal submuestreada. Fig. 15. Relación de compresioón obtenida.

- Descripción del programa desarrollado para controlar el


módulo ISD1820 y la lectura de la tarjeta SD:
• En esta primera parte se han incluido las librerı́as necesarias
para el programa:
- SPI.h: Esta librerı́a es importante para la conexión entre el
Arduino y dispositivos exteriores, como la tarjeta SD, a tráves
del interfaz Serial Peripheral Interface (SPI).
-SD.h: Esta librerı́a se usa para comunicarse con la tarjeta SD
y poder acceder a los archivos almacenados en ella.
Fig. 12. Gráficos de la señal original y submuestreada
- ”TMRpcm.h Esta librerı́a personalizada llamada ”TMRpcm”
facilita la reproducción de archivos de audio WAV en el
- Cálculo y visualización de los espectros de frecuencia, Arduino.
estos bloques de código calculan y grafican los espectros de
frecuencia de la señal original y la señal submuestreada.

Fig. 16. Incluir las librerias necesarias

• Como Segundo paso definen dos pines con los nombres


next y pausa, que están conectados a botones fı́sicos que se
utilizarán para controlar la reproducción de audio. :

Fig. 13. Graficos de los espectros de frecuencia.

- Crear un archivo de sonido con la señal submuestrada


y 8 bits por muestra, utilizando audiowrite, se crea un
tarjeta SD.

Fig. 17. Definir pines de los pulsadores

• Luego se definen variables : - TMRpcm audio: Aquı́


se crea un objeto llamado audio basado en la biblioteca
”TMRpcm”. Este objeto controla la reproducción de audio y Fig. 21. Pulsadores Next y pause
se utilizará para cargar y reproducir los archivos de sonido.
- File root: Este objeto se emplea para navegar por la estructura
de archivos en la tarjeta SD.
- Se definen constantes para los pines REC, PLAYER, y • Se inicializa la tarjeta SD usando SD.begin() y se verifica
PLAYL, que corresponden a las conexiones fı́sicas utilizadas si la inicialización fue exitosa. Si no lo fue, el programa se
para la grabación y reproducción de audio. quedará en un bucle infinito
char estado: Esta variable se utiliza para almacenar el comando
que se recibe desde la comunicación serial. • Se configuraron

Fig. 22. Inicializar la targeta sd para leerla


Fig. 18. Definir pines para el ISD1820 y variable estado
• Además se tiene que especificar que el pin 9 se usa como
los pines REC, PLAYER y PLAYL como salidas, ya que se la salida del altavoz para la reproducción de audio. Se abre el
utilizaran para el control de la grabación y la reproducción de directorio raı́z de la tarjeta SD (root) y se llama a la función
audio printDirectory para listar los nombres y tamaños de todos los
archivos en la tarjeta SD,y se configura el volumen en 5 (con
una escala de 0 a 7) y la calidad de reproducción a 1 (para
una calidad 2x de muestreo, 0 para calidad normal).

Fig. 19. Configurar pines para controlar el ISD1820

• La comunicación serie se inicia a 9600 baudios para Fig. 23. Configurar pin y volumen de salida
comunicarse con el usuario. Se produce un retardo de 1
segundo (delay(1000)) para garantizar que la transmisión serie • Se comprueba la disponibilidad de los datos
está lista. (Serial.available()) y, se lee el comando y se almacena
en la variable de estado:

- Si el estado es igual a ”a”, se activa un mensaje de voz


durante 10 segundos. La barra REC se enciende durante la
grabación y se apaga en cuanto ésta finaliza.
- Si el estado es igual a ”b”, se reproduce un mensaje de
Fig. 20. Parámetros para la comunciación serial voz. Durante la reproducción, la tecla PLAYER se enciende
brevemente y luego se apaga.
• Se deben configuran los pines que controlaran los - Si el estado es igual a ”c”, el mensaje de voz se reproduce
pulsadores de next y pause respectivamente como entradas durante 10 segundos y es posible cambiar los archivos de audio
con resistencias pull-up internas para usarlos para navegar de la tarjeta SD mediante los botones de avance y pausa.
entre la lista de audios posibles que se encuentran en la
proporciona un comportamiento más predecible.

Fig. 24. Programa que controla el ISD1820

• Luego, el programa verifica si hay archivos de audio en la


tarjeta SD y los reproduce uno por uno utilizando la biblioteca
TMRpcm. Los botones next y pausa se utilizan para controlar
la reproducción de audio desde la tarjeta SD.

Fig. 26. Función Debounce

• Se define una función para imprimir el contenido del


directorio en la tarjeta SD, incluyendo los nombres de los
archivos y sus tamaños.

Fig. 25. Programa que controla el Módulo sd

• La función debounce se encarga de evitar el ”rebote” que


se produce al aplastar o soltar botones fı́sicos. Esta función
es primordial para un registro confiable de la acción de los
botones. Funciona de la siguiente manera:

- Se recibe el número del pin bt al que está conectado el


botón.
- Se inicializa a 0 la variable count, que se utiliza para contar
el número de veces que se detecta la pulsación de un botón
en un corto espacio de tiempo.
- El bucle for se ejecuta cinco veces para muestrear cinco
estados del botón.
- Si el botón se detecta en un estado bajo (pulsado), la cuenta Fig. 27. Programa que enlista los archivos de la sd
se incrementa.
- Se introduce un pequeño retardo de 10 milisegundos
(delay(10)) entre cada muestra. V. R ESULTADOS
- Por último, se comprobará si el número es mayor que 2. Si - Presentación de los resultados obtenidos durante el
lo es, la función devolverá 1, indicando que el botón se ha proyecto.
pulsado de forma fiable; en caso contrario, devolverá 0. - Comparación entre el audio original y el audio comprimido.
- Esta función ayuda a reducir la posibilidad de que se - Gráfico de las primeras 200 muestras:
registren varias acciones del botón debido al rebote y En esta gráfica es posible visualizar las primeras 200 muestras
de la señal de audio original en función del tiempo. el plano El eje x está limitado a 0-4000 Hz y el eje y a 0-600 para
horizontal representa el tiempo en segundos y el plano enfocarse en las frecuencias más bajas.
vertical representa el valor de la señal de audio en las
correspondientes muestras. - Espectro señal de audio comprimida:
En la segunda subgráfica, se muestra el espectro de frecuencia
de la señal de audio después de la compresión (submuestreo).
El eje x representa la frecuencia en Hz y el eje y muestra la
amplitud de las componentes de frecuencia.
El eje x está limitado a 0-4000 Hz y el eje y a 0-700 para
enfocarse en las frecuencias más bajas.

Fig. 28. Gráfico de las primeras 200 muestras

- Señal de audio original y Señal del audio submuestreado:

La primera subgráfica representa la señal de audio original


durante 2 segundos.
La segunda subgráfica muestra la señal de audio
submuestreada después de reducir la frecuencia de muestreo. Fig. 30. Gráfico de los espectros de la señal original y submuestreada.
Estas gráficas permiten comparar la señal de audio original y
la versión submuestreada. - Realción de compresión:
Este valor representa la relación de compresión obtenida al
comparar el tamaño del archivo original con el tamaño del
archivo submuestreado. Se calcula dividiendo el tamaño del
archivo original (tamano original) entre el tamaño del archivo
submuestreado (tamano submuestrado).
Si relacion compresion es mayor que 1, significa que el
archivo submuestreado es más pequeño que el original.
Cuanto mayor sea este valor, mayor será la compresión.
Si relacion compresion es igual a 1, significa que ambos
archivos tienen el mismo tamaño, lo que indica que no hubo
compresión.
Si relacion compresion es menor que 1, significa que el
archivo submuestreado es más grande que el original, lo que
indica una ampliación en lugar de una compresión.

Fig. 29. Gráfico de la señal original y submuestreada.

- Espectro señal de audio:


En la primera subgráfica, se muestra el espectro de frecuencia
de la señal de audio original.
El eje x representa la frecuencia en Hz y el eje y muestra la Fig. 31. Resultado, relación de compresión.
amplitud de las componentes de frecuencia.
Se ha realizado un desplazamiento del espectro (usando - Datos cuantitativos si están disponibles.
fftshift) para centrar las frecuencias alrededor de cero.
VI. D ISCUSI ÓN La eficiencia de recursos en el proyecto se ha demostrado
-El desafı́o principal que tuvo el grupo fue acerca de por medio de la capacidad del microcontrolador Arduino
los recursos limitados del microcontrolador Arduino UNO, Uno para realizar tareas de procesamiento de audio, aunque
es decir la potencia de procesamiento, memoria RAM y con limitaciones en términos de potencia de procesamiento y
almacenamiento. Esto puede dificulto la implementación de memoria, es ası́ como se tomaron otros módulos para ofrecer
algoritmos de compresión de audio sofisticados. una presentación más compacta.

-Los algoritmos de compresión fueron limitados para La calidad del audio comprimido puede ser aceptable
adecuar al hardware del Arduino UNO. Algunos algoritmos para ciertas aplicaciones, pero es importante reconocer que
de compresión de audio, como MP3, pueden ser demasiado la compresión a menudo conlleva pérdida de calidad. Los
complejos para este microcontrolador. futuros proyectos pueden centrarse en mejorar la calidad del
audio comprimido.
-La calidad de audio fue uno de los grandes problemas
a resolver, puesto que es necesario un equilibrio entre la Se han investigado varias aplicaciones potenciales de la
compresión y la calidad de audio aceptable. compresión de audio en proyectos de bajo costo y recursos
limitados. El resultado de esta búsqueda llega a la conclusión
-La solución a uno de los problemas se basó en optar que este plan podrı́a ser útil en aplicaciones como sistemas
por algoritmos de compresión más simples y eficientes de monitoreo de audio remoto o proyectos de seguridad.
en términos de recursos, como el algoritmo WAV, que es
adecuado para microcontroladores de baja potencia. El trabajo realizado brinda aprendizajes y mejoras
continuas, es decir una oportunidad de aprendizaje valiosa en
-Por otro lado, a causa de las limitaciones de hardware, es programación de Arduino, procesamiento de señales de audio
probable que la calidad de audio no sea comparable a la de y compresión de datos. Se pueden aplicar estas habilidades
los sistemas de compresión de audio más avanzados. para mejorar y expandir proyectos futuros.

-La mejora que se implementó en el proyecto fue la En cuanto a las consideraciones de los costos efectuados
agregación de hardware adicional como una tarjeta de en esta idea, la elección de hardware fue de fácil acceso para
memoria SD, para aumentar la capacidad de almacenamiento los integrantes del grupo. Es aconsejable evaluar y comparar
y procesamiento. diferentes opciones de hardware antes de adquirirlas porque
puede ser útil para futuras implementaciones.
VII. C ONCLUSIONES La visión a futuro al concluir con este trabajo es incentivar
-El proyecto presentado en este informe se ha logrado a la colaboración y agregación de recursos adicionales,
ejecutar exitosamente junto con sus objetivos principales de no solo finalizar la idea en este punto sino partir de
implementar un sistema de compresión de audio, se utilizó la misma para proyectos futuros, se podrı́an considerar
hardware que no es muy costoso y que fue suministrado por nuevas colaboraciones con expertos en audio y electrónica
las instalaciones de la ESFOT como el módulo de Arduino para mejorar la calidad y eficiencia de la compresión de audio.
Uno, en cuanto a otros materiales como la shield ISD1820,
una bocina, una shield SD y resistencias y capacitores, el Por último, ha sido esencial la documentación del proceso,
grupo se hizo cargo de conseguir dichas herramientas para es por esto que se comparte el código fuente, esquemas de
aplicar el desarrollo de este trabajo. conexión y los resultados del proyecto. Es de suma relevancia
para la comunidad de estudiantes, como también para
Se consiguió la reducción del tamaño del archivo de audio, personas dedicadas al aprendizaje de Arduino y electrónica.
ası́ mismo se demostró que la compresión de audio puede Esto puede ayudar a otros a aprender y mejorar sus propios
reducir significativamente el tamaño de los archivos de audio, proyectos.
lo que es beneficioso para la transmisión y el almacenamiento
de datos.
VIII. R EFERENCIAS
Los problemas existentes conforme se avanzó la practica R EFERENCES
fueron con respecto a la shield ISD1820, que, si bien es
una opción económica, tiene sus limitaciones en términos de [1] E. Gil Calvo. “Https://www.theoria.eu/dictionary/C/comunicacion anadigi.pdf”.
Euro-Mediterranean University Institute. Accedido el
calidad de audio y opciones de compresión avanzadas. Se 3 de septiembre de 2023. [En lı́nea]. Disponible:
recomienda analizar estas limitaciones y considerar varias https://www.theoria.eu/dictionary/C/comunicacion anadigi.pdf
elecciones antes de elegir este hardware para proyectos [2] N. Amorós Ferri. “Analógico y digital: Ejemplos de comuni-
cación - UDOE”. UDOE. Accedido el 3 de septiembre de 2023.
futuros. [En lı́nea]. Disponible: https://udoe.es/analogico-y-digital-ejemplos-de-
comunicacion/
[3] “ISD1820 datasheet(pdf) - list of unclassifed manufactur-
ers”. ALLDATASHEET.COM - Electronic Parts Datasheet
Search. Accedido el 3 de septiembre de 2023. [En
lı́nea]. Disponible: https://www.alldatasheet.com/datasheet-
pdf/pdf/1132094/ETC2/ISD1820.html
[4] “ISD1820 - Modulo grabador y reproductor de voz con altavoz
3,3v”. ElectroComponentes.es. Accedido el 9 de septiembre de 2023.
[En lı́nea]. Disponible: https://www.electrocomponentes.es/sonido/534-
isd1820-modulo-grabador-y-reproductor-de-voz-con-altavoz-33v.
[5] Analog — Embedded processing — Semiconductor company —
TI.com. Accedido el 10 de septiembre de 2023. [En lı́nea]. Disponible:
https://www.ti.com/lit/ds/symlink/lm386.pdf
[6] “Arduino wave audio player with SD card - simple circuit”. Simple
Circuit. Accedido el 11 de septiembre de 2023. [En lı́nea]. Disponible:
https://simple-circuit.com/arduino-wave-audio-player-sd-card/

IX. LINK DE OVERLEAF


https://www.overleaf.com/project/6495fdf1633797dbfbe2502b

También podría gustarte