process Accelerometer Data
Procesa datos del acelerómetro para calcular niveles de actividad física.
Implementa un algoritmo que:
Calcula la magnitud de la aceleración (removiendo la gravedad).
Determina el nivel de actividad basado en umbrales predefinidos.
Mantiene un valor de actividad acumulada con decaimiento exponencial.
Actualiza una ventana deslizante de datos del acelerómetro.
Algoritmo de Decaimiento Exponencial para Actividad Acumulada
La actividad acumulada se calcula usando la siguiente fórmula:
decayFactor = baseDecayRate^(Δt / timeUnit)
accumulatedActivity = previousAccumulatedActivity * decayFactor + activityIncrementDonde:
baseDecayRate: Es el factor de decaimiento base por unidad de tiempo (e.g.,0.95por minuto). Configurado en HealthMonitoringConfig.ACTIVITY_ACCUMULATION_DECAY_RATE.Δt: Es el tiempo transcurrido desde la última actualización, en milisegundos.timeUnit: Es la unidad de tiempo para elbaseDecayRate(e.g., 60000 ms para minutos).activityIncrement: Es el incremento de actividad calculado a partir de la magnitud actual de la aceleración, normalizado por minuto.
El valor de accumulatedActivity se mantiene dentro del rango [0f, 100f].
Parameters
Los datos del acelerómetro provenientes del Samsung Health SDK. Contiene las componentes x, y, z de la aceleración y el timestamp.