2. Componentes - dviracachas/Safe-and-Sound GitHub Wiki

Implementación de Hardware

Componentes empleados

  • ESP32-WROOM-32
  • Acelerómetro ADXL335.
  • Batería de litio de 3.7V y 280mAh.
  • Amplificador de Audio MAX98357 I2S 3W clase D
  • Módulo Micrófono Mems I2s Inmp441
  • Mini Altavoces.
  • Conectores de diversos tipos.
  • Resistores.
  • Capacitores
  • Potenciómetro.
  • Pulsadores.
  • Leds.
  • Conector Micro-USB hembra.
  • Switch Deslizante.

ESP32

Se selecciona esta tarjeta chip teniendo en cuenta que esta permite una variedad de aplicaciones gracias a que mediante sus pines es posible la conexión de diferentes periféricos, cuenta con Wi-Fi, Bluetooth y Bluetooth LE MCU, permite el procesamiento de datos y es común en aplicaciones electrónicas portátiles alimentadas por batería. La tarjeta mencionada se ve a continuación:

Para este caso en específico se usará el Bluetooth para conectar el intercomunicador con un teléfono móvil, de este modo se transmitirán y recibirán señales de voz y de audio entre estos dos dispositivos. El procesamiento de datos se realizará una vez se reciban señales del acelerómetro que se describirá posteriormente. La tarjeta Esp32-WROOM-32 tiene las siguientes especificaciones según su fabricante:

  • Tensión de operación/Fuente de alimentación: 3.0V – 3.6V.
  • Corriente de operación: 80mA promedio.
  • Corriente mínima que debe ser entregad por la fuente de alimentación: 500mA.
  • Rango de temperatura ambiente para su óptima operación: -40°C ~ + 85°C
  • Tamaño: 18mm x 25.5mm x 3.10mm.
  • Interfaces del módulo: Tarjeta SD, UART, SPI, SDIO, I2C, LED PWM, Motor PWM, I2S, IR, GPIO, entre otros.
  • Certificación Bluetooth: BQB.
  • Protocolos Bluetooth: Bluetooth v4.2 BR/EDR and Bluetooth LE specification.
  • Audio Bluetooth: CVSD y SBC.
  • Microprocesador: Xtensa® single-/dual-core 32-bit LX6.
  • ROM: 448KB.
  • SRAM: 520KB.

En el siguiente enlace puede acceder al Datasheet del componente: Datasheet ESP-WROOM-32

El proyecto se dividirá en 4 partes, desde donde se abordará y se empezará a trabajar:

  • Audio Bluetooth
  • Acelerómetro
  • Interfaz
  • Caja

Comunicación Bluetooth

Amplificador de Audio MAX98357 I2S 3W clase D

Ampificador clase D (amplificador de switcheo de alta eficiencia) con entrada de modulación de código de pulso digital mediante el cual se realizará la amplificación de las señales de audio que se deseen transmitir por medio de los altavoces. Este módulo emplea el protocolo de transmision de señales de audio digital I2S y es frecuente en dispositivos portatiles por su eficiencia.

Requerimientos Funcionales:

  • Flexibilidad de escoger la ganancia, lo cuál permite escoger el punto de volumen más óptimo para el usuario
  • Chip incluye filtros de variación de la tensión de entrada (PSRR), lo que se traduce a una señal de salida más limpia.

Requerimientos Técnicos:

  • Flexibilidad de escoger la ganancia, de forma que da flexibilidad para escoger la potencia más pertinente, que cumpla con el requerimiento funcional y a la vez que cumpla con los requerimientos de potencia.
  • Controladores del protocolo I2S vienen por defecto en la tarjeta, lo cuál facilita la compatibilidad.
  • Chip incluye filtros de la tensión de entrada,

Aspectos técnicos

  • Potencia de salida: 3.2W a 4Ω, 10% THD (total harmonic distortion), 1.8W a 8Ω, 10% THD, alimentado con 5V
  • PSRR: 77 dB typ a 1KHz
  • Tasas de muestreo I2S desde 8kHz hasta 96kHz
  • No requiere MCLK
  • Reducción de los sonidos tipo click + Pop
  • Cinco ganancias seleccionables por cada pin: 3dB, 6dB, 9dB, 12dB, 15dB
  • Protección térmica

Especificaciones:

  • Tensión de alimentación: 2.5V – 5.5V.
  • Corriente nominal: 2.4mA.
  • Potencia de salida: 3.2W con una carga de 4Ohms a 5V, 1.8W con una carga de 8 Ohms a 5V.
  • Entrada de audio: I2S.
  • Ganancia de amplificación predeterminada: 9dB.
  • Posibles ganancias de amplificación: 3, 6, 9, 12 y 15 dB.
  • Frecuencia de muestreo: 8kHz – 96kHz.
  • Salidas de audio: izquierda, derecha o (derecha+izquierda)/2.

Para la reproducción del audio se conectó directamente el amplificador mostrado anteriormente a los pines de la ESP32, los cuales no tienen preferencia alguna para el funcionamiento del protocolo I2S. Finalmente se conectan los pines del amplificador a la ESP32 de la siguiente manera.

MAX98357 (I2S Protocol) ESP32
LRC (WS) 22
BCLK (SCK) 26
DIN (SD) 21
GAIN GND
SD No se conecta
GND GND
VIN 3.3 V

En el siguiente enlace puede acceder al Datasheet del componente: Datasheet MAX98357

Micrófono MEMS INMP441

El INMP441 es un micrófono MEMS (Micro Electro Mechanical System) de 3,3 V que utiliza Inter-IC Sound (I2S) para comunicarse con dispositivos capaces de grabar audio a través de la interfaz I2S. El INMP441 es una excelente opción para entradas de voz, localización de sonido y otras aplicaciones en las que se puede usar una matriz de micrófonos para identificar y caracterizar sistemas acústicos. Su funcionamiento está basado en un condensador de placas paralelas Electrec, la separación entre las placas varía según las ondas de sonido que golpean el diagrama.

  • interfaz Digital I2S con datos de alta precisión de 24 bits.

  • Relación señal-ruido alta 61 dBA.

  • Alta sensibilidad-26 dBFS.

  • Respuesta de frecuencia estable de 60Hz a 15 kHz.

  • Bajo consumo de energía: bajo consumo de corriente 1,4 mA.

A continuación, se muestran los pines de conexión con su correspondiente pin en la ESP32:

NMP441 connection ESP32
SCK GPIO14
SD GPIO32
WS GPIO15
L/R GND
GND GND
VDD VDD3.3

Si bien revisamos otras opciones de micrófono como la placa SPH0645 y el micrófono MAX9814, el micrófono INMP441 según fuentes consultadas ofrece mejores prestaciones y es mucho menos ruidoso que el resto. ESP32 Audio Input - INMP441 and SPH0645 MEMS I2S Breakout Boards

En el siguiente enlace puede acceder al Datasheet del componente: Datasheet INMP441

Acelerómetro ADXL335:

Con el fin de identificar cambios repentinos de la velocidad e inclinación del usuario (posibles accidentes) se usará el acelerómetro ADXL335 de 3 ejes mediante el cual es posible medir aceleraciones. Este módulo es ideal para aplicaciones de detección de inclinación gracias a que con este es posible medir la aceleracion estática de la gravedad así como la aceleración dinámica resultante de movimientos, choques o vibraciones. Las mediciones ejecutadas por este acelerómetro serán procesadas por medio de la Esp32 con el fin de interpretarlas de modo que se identifiquen posibles accidentes para la emisión de alertas. El acelerómetro se observa en la siguiente imagen:

Especificaciones básicas de operación:

  • Rando de de tensión para su funcionamiento: 1.8V – 3.6V.
  • Corriente de alimentación: 350uA.
  • Rango de temperatura para su funcionamiento: -40°C ~ + 85°C
  • Rango de medición: +/-3g.
  • Salida: Análoga.

En el siguiente enlace puede acceder al Datasheet del componente: Datasheet ADXL335

Interfaz

Para poder controlar las diferentes funcionalidades que tiene el dispositivo, se usarán pulsadores SMD sobre la placa PCB mostrados a continuación, los cuales tienen el poder de controlar la conexión Bluetooth, el reinicio del dispositivo en dado caso, y un botón multiuso para la conexión con el celular para, por ejemplo, controlar la música.

Anti-rebote

Se puede usar el siguiente circuito para estabilizar la señal de cierre y apertura el boton.

Cuando se trabaje con la señal HIGH del GPIO a 3.3 V se deben usar los siguientes componentes:

Component Value
R1 50 kΩ
R2 5 kΩ
C 100 nF