Estoy ejecutando algunas pruebas donde estoy registrando mediciones del acelerómetro. Estoy buscando utilizar elementos de procesamiento de señal en esta señal, pero no estoy seguro de dónde comenzar o cuál debería ser mi enfoque.
Mi objetivo final es poder monitorear las lecturas de aceleración en tiempo real y luego mostrar una notificación cuando event
ocurra. Como puede ver alrededor del tiempo de muestra de 150,000, event
ocurre un .
- Si estoy monitoreando estos datos en tiempo real, ¿qué tipo de técnicas de procesamiento de señales podrían implementarse para reaccionar ante este evento?
- ¿Sería una opción la Transformada de Fourier a corto plazo (STFT)?
Estoy monitoreando mis datos en Python, y tienen una función STFT decente .
Los argumentos de esta función son los siguientes:
scipy.signal.stft (x, fs = 1.0, window = 'hann', nperseg = 256, noverlap = None, nfft = None, detrend = False, return_onesided = True, límite = 'ceros', acolchado = True, eje = -1)
¿Cómo determino los parámetros óptimos para procesar esta señal?
¿Hay algún otro método que la gente piense que puede ayudarme a identificar cuándo
event
ocurre en tiempo real (en lugar de simplemente usar la magnitud de la aceleración)?
EDITAR 1:
Mi STFT se ha agregado anteriormente.
event
que desea detectar. Vea la respuesta de Fat32 para un ejemplo de lo que estoy hablando.event
.Si este gráfico representa el escenario de aplicación más típico, entonces buscaría una estimación simple de la varianza de la ventana corta y luego realizaría el umbral;
Donde es la señal de entrada de CC eliminada; es decir, donde es el valor DC (medio) de la entrada que puede ser localmente estimado por También puede usar un filtro de muesca de bloqueo de CC para eliminar cualquier acumulación de CC arriba en lugar de estimarlo.Xa c[ n ] Xa c[ n ] = x [ n ] -X¯[ n ] X¯[ n ] x [ n ]
Seleccione un tamaño de ventana suficientemente pequeño y apropiado para su aplicación. Puede realizar la decisión del evento basándose en una comparación de la desviación estándar (raíz cuadrada de esta estimación de varianza calculada) con un umbral seleccionado correctamente.norte
Esto se calculará fácilmente en tiempo real con mucha menos carga computacional en comparación con un análisis de dominio de frecuencia. Tenga en cuenta que en la aplicación en tiempo real, sus índices de suma deben ir hacia atrás desde la muestra actual (en lugar de las fórmulas anteriores que usan una suma no causal)
Como segunda alternativa eficiente, también podría implementar una detección de envolvente de dominio de tiempo (seguida de un umbral) para activar el evento.
fuente