SirenSense — un proyecto de Tekkera Electronix · tekkera.com

SirenSenseTekkera Electronix
  • CH1 norte
  • CH2 este
  • CH3 sur
  • CH4 oeste
rumbo
137°
confianza
0.92
captura
44.1 kHz · 24-bit
i²s
GPIO 4/14 · 6/5

Oír el peligro.Verlo antes.

El aislamiento acústico, la música y las ventanillas cerradas esconden una sirena que se acerca. Y un aviso que solo hace ruido deja fuera a quien no puede oírlo. Tres dispositivos pequeños convierten lo que ocurre alrededor del coche en algo que se puede ver, oír y atender.

Diseñado, construido y documentado de principio a fin por un solo ingeniero: el array acústico, el firmware, el procesado de señal, la carcasa, las placas y esta página. Cada cifra que aparece aquí es una que este proyecto se ha ganado.

El nodo de cabina SirenSense sobre un banco, con su pantalla mostrando un aviso de monitorización del conductor que dice wake up, microsleep, pull over when safe, eyes closed 56 percent
Así se ve cuando está funcionando: el nodo de cabina lanzando un aviso de fatiga del conductor en el banco de trabajo. La cruz de micrófonos del nodo de techo mide 190 mm.
fuente
Hack4Change 2026 · primer premio · ETSII, Universidad de Sevilla
construido por
Ibrahim Najjar · Tekkera Electronix. Un solo ingeniero, de principio a fin — concepto, hardware, firmware, DSP, carcasa y sitio web.
estado
Prototipo de investigación. No es un producto automovilístico homologado. V16 Pro no está certificado por la DGT.

Un segundo par de oídos, y un segundo par de ojos

El aislamiento acústico, la música y las ventanillas cerradas esconden una sirena que se acerca. Y un aviso que solo hace ruido deja fuera a quien no puede oírlo. SirenSense son tres dispositivos pequeños que convierten lo que ocurre alrededor del coche en algo visible, hablado y direccional — y escuchar sirenas es solo una de las cosas que hace. Todo lo de esta sección está pensado para entenderse sin matemáticas. Eso empieza más abajo en la página.

Nodo de techo

Escucha

Cuatro micrófonos en cruz, montados fuera del habitáculo, donde la carretera se oye de verdad. Decide si hay una sirena presente y de qué dirección llega.

  • Da una dirección, no solo una presencia
  • Distingue sirenas de tráfico, viento y ruido de rodadura
  • Habla con la cabina por radio de corto alcance
  • Funciona con una sola celda recargable

Nodo de cabina

Muestra y habla

Una pantalla pequeña, con una cámara mirando a la carretera y otra al conductor. Muestra el aviso, lo dice en voz alta y reúne el resto del viaje en un mismo sitio.

  • Avisos de sirena visuales y hablados
  • Dashcam y cámara frontal al conductor
  • Mapas que funcionan sin cobertura
  • Datos del vehículo, calidad del aire y movimiento

Transpondedor

Responde

Lo lleva el propio vehículo de emergencia. Emite su posición, de modo que al coche cercano se le puede decir dónde está la ambulancia en lugar de tener que deducirlo solo por el sonido.

  • Añade un canal de posición directo
  • Radio de largo alcance a 433 MHz
  • Posición por navegación por satélite
  • Carga de posición cifrada

Qué hace en realidad

La detección de sirenas es una función de doce. Cada una lleva un estado que describe el proyecto tal como está hoy: implementado significa que funciona en el prototipo o en su software, en integración significa que está construido pero aún no probado en un vehículo, y concepto significa una dirección diseñada que no se presenta como una función certificada. La etiqueta cambia solo cuando el ensayo correspondiente está completo.

Detección de sirenas

Un pequeño modelo de IA a bordo escucha sirenas y las distingue del tráfico, la música y el viento. Se entrenó con grabaciones reales de carretera, no con muestras limpias de estudio.

Implementado

De dónde viene

Los cuatro micrófonos trabajan juntos para dar un rumbo, de modo que el aviso puede decir izquierda, derecha, delante o detrás en lugar de limitarse a anunciar que hay una sirena.

Implementado

Dashcam

La cámara frontal graba la carretera, con una interfaz pensada para captura en alta definición completa a 30 fotogramas por segundo.

En integración

Monitorización del conductor

Una cámara frente al conductor busca señales de fatiga, distracción y uso del móvil, y da un aviso en lugar de una puntuación.

En integración

Aviso anticolisión

El radar frontal mide la distancia y la velocidad de cierre del vehículo de delante, y avisa cuando ese hueco se cierra más rápido de lo que debería.

En integración

Ambiente de cabina

Se miden calidad del aire, humedad y temperatura dentro del coche: útil para el conductor y una forma de proteger la electrónica de su propia carcasa.

Implementado

Impacto y movimiento

Un acelerómetro y un giróscopo registran cómo se mueve realmente el coche y pueden marcar un evento de colisión junto al vídeo del entorno.

Implementado

Navegación sin conexión

Un mapa vectorial dibujado por el propio dispositivo, para que la navegación y la pantalla del vehículo de emergencia sigan funcionando sin cobertura y sin servicio de mapas en la nube.

Implementado

Datos del vehículo

La interfaz lee el puerto de diagnóstico del propio coche (OBD‑II) y muestra indicadores y estado del sistema junto a los avisos de seguridad.

En integración

Transpondedor de emergencia

Radio de largo alcance más posición por satélite dan al vehículo de emergencia participante una línea directa con las unidades SirenSense cercanas, diciendo dónde está en lugar de solo que existe.

Implementado

Modo V16 Pro

Un modo de emergencia prototipo que comparte su posición con las unidades cercanas y enciende la baliza del techo. No sustituye reglamentariamente a un dispositivo V16 certificado.

Concepto · no certificado por la DGT

Alimentación y protección

La protección de la batería, la carga, la conversión y el filtrado se diseñan como parte de la cadena de sensado, no añadidos después.

Implementado
Dos nodos de techo uno al lado del otro: la unidad sellada con cuatro puertos redondos de micrófono en la tapa, y una unidad abierta que muestra la placa, la batería, cuatro módulos de micrófono y la antena de satélite
El nodo de techo, sellado y abierto: cuatro puertos de micrófono en la tapa, y dentro la celda, la placa y una antena de satélite.
Un módulo de cámara sujeto en un soporte impreso, con su cable plano y su placa de conexión
Un módulo de cámara en su soporte impreso, listo para mirar a la carretera o al conductor.
Una placa con un módulo de navegación por satélite BN-880, un sensor de movimiento MPU6050 y un módulo de radio LoRa
Posición, movimiento y radio en una sola placa: navegación por satélite, un sensor de movimiento y una radio de largo alcance.

Qué hay realmente dentro

Las funciones de arriba no son una lista de ideas. Cada una tiene detrás una placa, un módulo o una página de trabajo, y casi todo ese trabajo es una persona en un banco con un cuaderno.

La placa verde del transpondedor SirenSense junto a un módulo de radio de largo alcance, una placa ESP32 y una lista manuscrita de componentes de alimentación
La placa del transpondedor con su radio de largo alcance al lado. El cuaderno es la lista de alimentación: regulador, inductores, condensadores y una ferrita.
Varias placas verdes SirenSense junto a un portátil que muestra la asignación de pines para el radar y para una tarjeta SD
Placas contrastadas con el plan de pines en pantalla, donde el enlace de radar y la tarjeta SD tienen sus propias líneas.
Una página de notas manuscritas de ingeniería sobre la impedancia de condensadores e inductores, con esquemas de circuito y un filtro en pi
Resolviendo el filtro de alimentación a mano: por qué un inductor bloquea las altas frecuencias mientras un condensador las manda a tierra.

Cómo una sirena se convierte en un rumbo

Todo lo que sigue se deduce de cuatro números que son hechos sobre este montaje: la cruz de micrófonos de 190 mm, la velocidad del sonido a 20 °C (343 m/s), la frecuencia de muestreo de 44.1 kHz y la interpolación de 8× aplicada a las estimaciones de retardo. Nada de lo que hay aquí es una medición de exactitud; eso exige una caracterización en campo que este prototipo aún no ha terminado.

Cuatro micrófonos sobre una cruz de 190 mm con un frente de onda plano que llega con rumbo theta EO NS θ d = 190 mm

Diferencia de tiempo de llegada

Un frente de onda plano llega a los cuatro micrófonos en instantes distintos. La distancia adicional que la onda debe recorrer hasta el micrófono lejano de un par es la separación entre micrófonos proyectada sobre la dirección de la onda:

ΔxEW = d·cos θ   ΔxNS = d·sin θ

Dividir por la velocidad del sonido da el retardo que mide cada par:

τEW = (d/c)·cos θ   τNS = (d/c)·sin θ

El mayor retardo que el array puede llegar a ver es, por tanto, d/c = 554 µs, que a 44.1 kHz son 24.4 muestras — holgadamente dentro de la ventana de correlación.

Retardo medido por cada par frente al ángulo de rumbo, de cero a 360 grados 0°90°180°270°360°+554µs−554 137° → τEW = −405 µs
FIG. 1 Los dos pares miden sinusoides en cuadratura de la misma amplitud, d/c = 554 µs. Este–oeste es el coseno, dibujado con la tinta del este; norte–sur es el seno, dibujado con la tinta del norte. Las líneas verticales marcan los rumbos cardinales; las horizontales avanzan de 277 µs, un cuarto del máximo de 554 µs. Una muestra de 44.1 kHz son 22.68 µs, y cerca de la perpendicular eso equivale a 2.35° de rumbo. El marcador es el ejemplo de 137° que se usa en toda la página.

Dos ejes dan un rumbo

Los retardos son un vector: (τEW, τNS) tiene módulo d/c y dirección θ. Su ángulo es el rumbo, así que las dos coordenadas se combinan directamente:

θ = atan2(τNS, τEW)

Con un rumbo real de 137° los pares leen τEW = −405 µs y τNS = +378 µs, y atan2 devuelve 137°. Ambos retardos escalan con la velocidad del sonido, así que esta se cancela en la razón — y por eso el diseño no afirma que la compensación de temperatura mejore el rumbo. Corregir c cambia ambos ejes en el mismo factor y el ángulo no varía.

Un solo par no puede hacer esto. Mide un único retardo, que es compatible con dos rumbos opuestos, y su sensibilidad se desploma hacia el extremo.

El plano del retardo: los dos retardos medidos forman un vector de módulo d partido por c, cuyo ángulo es el rumbo θ τEW τNS −405, +378 d/c = 554 µs
Error de rumbo relativo a un error de retardo de una muestra, para un par aislado y para el array en cruz 0°90°180°12×9×6×3×1× un par: error → ∞ en el extremo array en cruz: plano a 1×
FIG. 2 Error de rumbo relativo para la misma incertidumbre de retardo, como múltiplo del error propio de la cruz. Un par aislado (ocre) se degrada como 1/|sin θ| y es inutilizable en el extremo; la curva está recortada a 12×. La cruz (azul, discontinua) mantiene un error de primer orden constante porque cuando un eje está en el extremo el otro está en la perpendicular: σθ = στ·c/d. Como ese valor es la referencia, la línea discontinua es 1× por definición. Con una muestra de incertidumbre de retardo eso son 2.35° en cualquier rumbo; con interpolación de 8× sobre la estimación de retardo son 0.29°. Esa cifra es la resolución de la rejilla de retardo, no una exactitud angular medida — la acústica de la carcasa, la reverberación, la geometría y la calibración determinan el error real.

Situar una sirena y ver cómo el array la localiza

Hacer clic en cualquier punto de la escena para poner una ambulancia en la carretera. Cada número de abajo — los cuatro retardos de canal, los retardos de par, los picos de correlación, el rumbo — se calcula a partir del punto en el que se ha hecho clic usando la geometría anterior. Nada está pregrabado. Cada panel indica si es calculado o un sustituto.

Hacer clic en cualquier punto de la escena — o usar un botón de rumbo.

El array se dibuja ampliado: la cruz real mide 190 mm, y el coche unos 4.5 m. La escala de la escena es 40 px por metro.

  1. La sirena emite
  2. El frente de onda llega al array
  3. Cuatro canales capturan
  4. Características mel
  5. El clasificador se activa
  6. Picos de GCC-PHAT
  7. atan2 da el rumbo

Medido en el array

acimut θ
—
distancia
—
τEW
—
τNS
—
retardos
—
primera llegada
—
Sirena detectada —

Cuatro canales calculado

El mismo estallido llega a cada micrófono en un instante distinto; la dispersión es el retardo real del punto donde se ha hecho clic, a escala real — sin exagerar.

Trama mel ilustrativo

Energía espaciada en escala mel a lo largo de una ventana de análisis — las características que consume el clasificador.

Clasificador ilustrativo

Una red compacta sobre características mel devuelve una confianza de sirena, que decide si se emite o no un aviso.

Correlación GCC-PHAT picos exactos

Blanquear el espectro cruzado hasta dejar solo la fase agudiza el pico en el retardo real. Las posiciones de los picos son exactas; la forma de la curva es un sustituto.

Estimador de rumbo src/main.cpp · repositorio público

/* get_siren_heading() — as it stands in the public repository */
for (int i = 0; i < samples; i++) {
    fl_e += abs(audio_FL[i]);  fr_e += abs(audio_FR[i]);
    rl_e += abs(audio_RL[i]);  rr_e += abs(audio_RR[i]);
}
/* energy to spatial pull */
float raw_x = (float)(-fl_e + fr_e - rl_e + rr_e);
float raw_y = (float)( fl_e + fr_e - rl_e - rr_e);

vector_x = (vector_x * (1.0f - DRIFT_FILTER)) + (raw_x * DRIFT_FILTER);
vector_y = (vector_y * (1.0f - DRIFT_FILTER)) + (raw_y * DRIFT_FILTER);

float final_rad = atan2(vector_x, vector_y);
int final_deg = (int)(final_rad * 57.2958f);
if (final_deg < 0) final_deg += 360;

Conviene leer esto junto con la sección anterior. El estimador del repositorio público combina la energía por canal con atan2 y un filtro de deriva: no calcula retardos temporales, y la cadena gcc_phat no aparece en ningún punto de ese árbol. Sus canales son delantero–izquierdo, delantero–derecho, trasero–izquierdo y trasero–derecho, no la cruz norte–este–sur–oeste que se describe aquí. La vía basada en retardos derivada en esta página es el enfoque de diseño documentado. Cuál de las dos incluye la versión actual debería confirmarse antes de afirmar cualquiera de ellas como un hecho.

De cuatro micrófonos a un aviso

La detección y la dirección están separadas a propósito. El clasificador decide si la ventana contiene una sirena o no; solo entonces se dedica correlación a encontrar dónde está. Así la cadena de procesado del rumbo no se aplica a audio irrelevante.

4× Micrófonos INMP441

Norte, sur, este y oeste sobre una cruz de 190 mm. Cada par comparte una línea de datos I²S seleccionando la ranura izquierda o derecha de la trama estéreo.

2× I²S en un solo dominio de reloj

I²S0 (E/O, GPIO 4) es maestro y genera BCLK 6 y WS 5; I²S1 (N/S, GPIO 14) funciona como esclavo con esos relojes a través de la matriz GPIO.

16 bits hacia el correlador

44.1 kHz, ranuras de 32 bits, datos de micrófono de 24 bits; la cadena de correlación usa los 16 bits superiores.

MFE Clasificador TinyML

Una exportación de Edge Impulse con características de energía de banco de filtros mel, entrenada con grabaciones reales de ambulancias en carretera con tráfico, viento y Doppler — no con muestras limpias descargadas.

PHAT Estimación del retardo

GCC-PHAT blanquea el espectro cruzado de modo que solo sobrevive la fase, lo que da un pico de retardo agudo que tolera la reverberación.

θ Rumbo y una puerta de confianza

atan2 sobre los dos ejes da el rumbo; la confianza del clasificador decide si se emite o no un aviso.

Por qué importa un solo dominio de reloj

Los dos pares no comparten controlador, así que cualquier desfase fijo que se suponga entre ellos no es un retardo real. Restar uno inyectaría un retardo falso en un eje, y cerca de la perpendicular la sensibilidad no perdona. El montaje midió en torno a 9° de error de rumbo por una corrección de ese tipo y la eliminó. Dos periféricos I²S en un solo dominio de reloj evitan el problema en lugar de compensarlo.

Rij(τ) = ∫ Xi(f) Xj*(f)|Xi(f) Xj*(f)| ej2πfτ df

Correlación cruzada generalizada con transformada de fase. Dividir por el módulo descarta la amplitud y conserva la fase, lo que agudiza el pico en el retardo real τ y hace que la estimación sea mucho menos sensible a la reverberación que una correlación cruzada simple.

Tres fases, fotografiadas tal como ocurrieron

El prototipo no se montó de una sola vez. Funcionó en placas de pruebas, después pasó a una primera placa fabricada en una carcasa impresa y luego al sistema funcional de tres dispositivos. Las fotografías de abajo siguen ese orden.

Fase 0

Puesta en marcha en placa de pruebas

Un devkit ESP32-S3 sobre portadores de bornera, dos pares de micrófonos I²S cableados a mano y asignaciones de GPIO escritas en papel porque todavía nada estaba fijado. Aquí fue donde la captura de cuatro canales se hizo funcionar por primera vez.

Placas de pruebas sobre cartón cableadas a un devkit ESP32-S3, con notas de GPIO escritas a mano en papel amarillo
Banco de puesta en marcha: notas manuscritas de cableado y GPIO junto al primer cableado de cuatro canales.
Devkit ESP32-S3 en un portador verde de bornera con cables de puente
El devkit en su portador de bornera, antes de que existiera ninguna placa propia.
Vista de cerca de la placa ESP32-S3 con USB-C conectado y cables saliendo de los bloques de bornes
Alimentación y señal saliendo del portador; los rails de 5 V y GND están etiquetados en el bloque.
Fotografía macro del módulo ESP32-S3-N16R8 que muestra los botones BOOT y RST y las etiquetas de pines
Módulo ESP32-S3-N16R8: el MCU que ejecuta los cuatro canales.
Fase 1

Primera placa, primera carcasa

El cableado manual se convirtió en una placa fabricada con el mismo ESP32-S3, y la cruz de micrófonos recibió una carcasa impresa con cuatro puertos en la tapa. La serigrafía dice SirenSense · Tekkera Electronix · REV 1 · 04/2026.

Una carcasa impresa blanca con SirenSense en relieve en la tapa, cuatro puertos de micrófono circulares y una OLED que muestra SAFE
La carcasa impresa: cuatro puertos de micrófono en la tapa y una OLED en la cara frontal.
La placa de circuito SirenSense REV 1, verde, montada dentro de la carcasa impresa blanca
Placa REV 1 dentro de la carcasa, con el módulo ESP32-S3 asentado sobre ella.
La placa REV 1 sobre un banco con un módulo OLED que muestra la pantalla de arranque de SirenSense con el texto Oye antes
Primera pantalla de arranque en el módulo OLED: “SirenSense · Oye antes”.
Fotografía macro de un portapilas de litio y un módulo pequeño con cables conectados
Portapilas y cableado de alimentación, antes de montar la cadena de alimentación del nodo de techo.
Vista de cerca en ángulo bajo de la placa verde, que muestra el portapilas soldado y las pistas de cobre
Detalle de la cara inferior de la placa con el portapilas montado.
La placa derivadora de cuatro micrófonos con los INMP441 montados
La placa de micrófonos: un INMP441 por cada puerto de la tapa, en una placa cortada a medida para esta carcasa.
Fase 2

El sistema funcional de tres dispositivos

Placas fabricadas por JLCPCB, la protección de batería del nodo de techo, el nodo de cabina ejecutando su interfaz con cámara y pantalla, y el mapa vectorial sin conexión. La interfaz de cabina aparece informando de un vehículo de emergencia y de la dirección por la que hay que esperarlo.

Tres placas de circuito fabricadas, verdes, sobre una caja de JLCPCB, con la serigrafía TEKKERA ELECTRONIX y SirenSense
Placas fabricadas: nodo, transpondedor y la placa “Spooky”, todas marcadas con Tekkera Electronix.
El interior del nodo de techo, con una placa azul de protección de batería HXYP-1S-60330, transistores NCE3080K y cables planos
Interior del nodo de techo: la placa de protección 1S HXYP-1S-60330 y sus FET, cableada a la placa del nodo.
Una placa blanca con un módulo ESP32-S3 y componentes pasivos en pruebas, con pinzas de prueba conectadas
Placa del transpondedor en pruebas con puntas de medida conectadas.
Una hoja resumen del proyecto que combina la pantalla de alerta del dispositivo de cabina, los diseños de PCB, un diagrama de dispersión de datos de entrenamiento de Edge Impulse y la vista desde el coche
Hoja del proyecto: pantalla de alerta de cabina, los dos diseños de placa y el explorador del conjunto de entrenamiento y el perfil DSP de Edge Impulse.
Una pantalla oscura que muestra un mapa vectorial verde con un rumbo de 090 grados, 45 kilómetros por hora y coordenadas
Mapa vectorial sin conexión: rumbo 090°, 45.0 km/h, coordenadas y escala, dibujado sin un servicio de mapas en la nube.
Montaje de pruebas de banco con un módulo de cámara, OLED, placas verdes apiladas, un multímetro y un disco impreso
Prueba de banco del nodo de cabina: cámara, pantalla, placas apiladas y un multímetro en el mismo banco.

Qué está demostrado y qué no

Las etiquetas de estado forman parte de la ingeniería, no del marketing. Solo cambian cuando el ensayo correspondiente está completo.

Captura sincronizada de cuatro canalesImplementada, con comprobaciones de bucle de retorno y calibración al arrancar
Matemáticas del retardo y del rumboDerivadas e implementadas; las cifras de esta página son resolución, no exactitud medida
Clasificación de sirenas con TinyMLPrototipo funcional; ampliación del conjunto de datos en curso
Exactitud de rumbo en campoNo caracterizada — no se afirma ninguna cifra única garantizada
Alcance LoRa urbano4 km objetivo de diseño — aún no caracterizado en campo
Resistencia a la intemperieIP67 objetivo de estanqueidad, no certificado de forma independiente
V16 ProUna evolución materialmente más capaz del concepto español de baliza V16 de la DGT. No certificado por la DGT; no es un sustituto reglamentario de un dispositivo V16 certificado

Las notas detrás de los números

Lo que las secciones anteriores comprimen en diagramas, escrito con palabras: el mapa de pines, la cadena de alimentación, la división de la cabina y el transpondedor. Cuando una decisión tiene un modo de fallo, el modo de fallo se indica junto a ella.

Captura de audio en el nodo de techo

Un solo ESP32-S3 captura los cuatro canales; el array no se reparte entre dos controladores. A un INMP441 se le puede indicar qué ranura de una trama estéreo I²S debe excitar, así que cada par opuesto comparte una línea de datos, con un micrófono en la ranura izquierda y su opuesto en la derecha.

Este / OesteI²S0 maestro · datos GPIO 4
Norte / SurI²S1 esclavo · datos GPIO 14
Relojes compartidosBCLK GPIO 6 · WS GPIO 5 · enrutados internamente a través de la matriz GPIO
Formato de muestreo44.1 kHz · ranuras estéreo de 32 bits · datos de micrófono de 24 bits
Entrada del correladorLos 16 bits superiores de cada muestra
Comprobación de arranqueEl bucle de retorno y la calibración confirman que ambos buses están activos y alineados
INMP441 E [L] ─┐
INMP441 O [R] ─┴─ DATA4  → I²S0 MAESTRO ─┐
                                BCLK6 / WS5
INMP441 N [L] ─┐                         │ matriz GPIO interna
INMP441 S [R] ─┴─ DATA14 → I²S1 ESCLAVO ←┘

El segundo par es esclavo de los relojes que genera el primero, en lugar de ser una segunda captura independiente que tendría que alinearse después. La razón está en la sección de la cadena de procesado anterior: una corrección fija entre pares con relojes independientes no es un retardo real, y aplicar una midió en torno a 9° de error de rumbo en este montaje.

La detección condiciona la dirección

El clasificador y el estimador de rumbo hacen trabajos distintos y no se fusionan. El clasificador es una exportación de audio de Edge Impulse que usa características de energía de banco de filtros mel, entrenada con grabaciones de ambulancias en carretera que incluyen tráfico, viento y desplazamiento Doppler en lugar de muestras limpias de estudio. Su confianza decide si una ventana contiene una sirena o no.

Solo las ventanas que pasan se entregan a la correlación. Ese orden es lo que mantiene la cadena de procesado del rumbo apartada del audio irrelevante, y es la razón de que el simulador anterior etiquete su trama mel y su etapa de clasificador como sustitutos: el modelo real se ejecuta en el ESP32-S3 y esta página no pretende reproducirlo. El comportamiento ante falsos positivos en carreteras reales sigue siendo una tarea abierta de conjunto de datos, no un resultado terminado.

Integridad de la alimentación

El nodo de techo aloja una radio, un convertidor conmutado y cuatro micrófonos digitales en una carcasa pequeña, así que la alimentación forma parte del problema de sensado y no es algo situado después de él. La cadena, en orden:

  1. Celda LiFePO₄ 26650 — todo el nodo funciona con una sola celda.
  2. Módulo TP5000 USB-C — carga con el perfil LiFePO₄, no con uno de Li-ion.
  3. BMS 1S — el retorno protegido del sistema se toma de P−.
  4. Convertidor elevador MT3608 — eleva hasta un rail regulado de 5 V.
  5. Filtro π — 220 µF de bulk, 10 µH en serie, 100 nF cerámico.
  6. AMS1117-3.3 — el propio rail de los micrófonos.
  7. Cuenta de ferrita y 100 nF — en cada rama de micrófono, no una sola vez en la alimentación.
  8. Adaptador de 12 V a 5 V — una alimentación aparte para la unidad de cabina.

Dos formas de equivocarse aquí

El MT3608 es aquí un convertidor elevador, no un convertidor reductor: la celda está por debajo del rail de 5 V, así que un componente reductor nunca regularía. Y el retorno protegido debe venir del terminal P− del BMS — tomarlo de B− puentea la protección de descarga y anula el circuito de protección.

El nodo de cabina, dividido en dos

La arquitectura de cabina separa la E/S sensible al tiempo de la interfaz más rica. Las lecturas de sensores y el enlace de radio se quedan en un microcontrolador; el renderizado, las cámaras y la aplicación viven en la Pi, y ambos se comunican mediante un enlace UART estructurado.

Controlador ESP32-S3

  • Firmware ESP-IDF v5
  • Mensajes ESP-NOW procedentes del nodo de techo
  • Interfaces de LoRa, GPS, radar, audio, microSD y MPU6050
  • Mensajes UART estructurados hacia la Raspberry Pi
  • PCB de cabina fabricada; montaje y puesta en marcha completa en curso

Aplicación de la Raspberry Pi

  • Interfaz pygame de ocho páginas
  • Alertas de sirena, navegación vectorial sin conexión y diagnóstico del sistema
  • Cámaras frontal y orientada al conductor
  • Indicadores OBD-II, control multimedia mediante MPRIS y vista de cámara trasera
  • Gestionada como servicio de Linux con systemd

Mantener la vía sensible al tiempo fuera de un sistema operativo de propósito general es el objetivo de la división: nada en la cadena de alerta depende de que el planificador de escritorio esté de buen humor.

El transpondedor del vehículo de emergencia

Un demostrador aparte, transportado por el propio vehículo de emergencia. Emite un mensaje de posición compacto que los nodos SirenSense cercanos pueden situar en su mapa, de modo que un aviso puede indicar una dirección y una distancia en lugar de solo un rumbo.

ControladorESP32-S3
RadioSX1278 · 433 MHz LoRa
PosiciónReceptor GNSS BN-880
Interfaz localPantalla OLED de estado
PaqueteCarga útil protegida con AES-128
Acceso al canalJitter estilo ALOHA, de 800 a 1500 ms

Se ha construido una unidad de demostración en placa perforada y se ha diseñado una PCB. El alcance de radio no se ha caracterizado en un ensayo de campo urbano controlado, así que la cifra recogida en el registro anterior — 4 km objetivo de diseño — aún no caracterizado en campo — es una estimación de ingeniería.

Lo que estas notas no afirman

El prototipo no tiene certificación IP. V16 Pro no está certificado por la DGT y no es un sustituto reglamentario de un dispositivo V16 certificado. No se declara ninguna exactitud de rumbo en campo, porque no se ha medido ninguna, y el conjunto de datos del clasificador sigue creciendo. Cada frase cambia solo cuando el ensayo correspondiente está completo, en el registro anterior.

Los diseños de placa, las capturas de KiCad y el registro de validación completo están en el registro técnico. Código fuente y documentación: SirenSense y SirenSense V2 en GitHub.