Files
HealthTracking/docs/research/bpm-indicators-fightrate-2026-06-10.md

15 KiB
Raw Permalink Blame History

FightRate — métricas científicas derivadas de frequência cardíaca e HRV/VFC

Documento técnico-educacional. Nenhuma métrica abaixo deve ser apresentada como diagnóstico médico. Interpretação clínica exige contexto, validação, exame adequado, controle de artefatos e revisão profissional.

Escopo

Este relatório consolida fórmulas, algoritmos e limites de interpretação para transformar dados reais do FightRate em indicadores de saúde, desempenho e carga interna. A base foi limitada a literatura acadêmica indexada em PubMed/PMC ou páginas de periódico científico.

Premissa de dados do app

O FightRate já pode usar:

  • bpm: frequência cardíaca instantânea enviada pelo Heart Rate Service 180D, Measurement 2A37.
  • timestamp: instante real de cada amostra persistida.
  • rrIntervalsMs: intervalos RR quando o sensor enviar esse campo no pacote 2A37.
  • workout_sessions: janelas de treino marcadas dentro do fluxo contínuo.
  • continuous_heart_rate_samples: amostras contínuas, inclusive fora da janela de treino.

Separação crítica:

  1. Métricas BPM-only: podem ser calculadas hoje com FC timestampada.
  2. Métricas dependentes de perfil: exigem FCmáx, FCrepouso, idade e/ou sexo informados ou estimados.
  3. Métricas HRV/VFC reais: exigem RR intervals confiáveis, filtragem de artefatos e janela adequada.

Matriz de implementação

Métrica Dados mínimos Pode entrar já? Observação
FC atual/média/mín/máx BPM + timestamp Sim Baixo risco; métrica central.
Amplitude e variabilidade de BPM BPM + timestamp Sim Útil para esforço estável vs intervalado.
Tempo em zonas fixas BPM + timestamp Sim Usar como zona operacional até existir perfil.
Tendência/deriva de FC BPM + timestamp Sim Rotular como tendência, não causa fisiológica.
Recuperação pós-janela BPM contínuo após fim da janela Sim, quando houver dados pós-esforço Precisa continuar monitorando após encerrar janela.
Zonas por FCmáx BPM + FCmáx ou idade Parcial FCmáx por idade tem erro individual. Preferir FCmáx manual.
Karvonen/HRR BPM + FCmáx + FCrepouso Parcial Mais individualizado, mas exige perfil.
TRIMP BPM + duração + FCmáx + FCrepouso + coeficiente Parcial Útil como carga estimada; limitações em intervalados.
RMSSD/SDNN/pNN50 RR intervals limpos Só se RR vier do sensor Não derivar de BPM médio.
LF/HF/frequência RR + interpolação + janela adequada Futuro Alto risco de interpretação; evitar MVP.
HRV-guided readiness RR matinal padronizado Futuro Depende de protocolo diário consistente.

1. Frequência cardíaca atual, média, mínima e máxima

Fonte fisiológica: monitoramento direto de FC é prático e barato, mas a relação FC↔intensidade é afetada por hidratação, temperatura, fadiga, cafeína, estresse e deriva cardiovascular. Achten & Jeukendrup destacam que FC é útil em campo, mas limitada para estimar gasto energético ou VO₂ individual com alta precisão.

Dados: BPM válido e timestamp.

Fórmulas:

FC_atual = último BPM válido
FC_média = soma(BPM) / n
FC_mín = min(BPM)
FC_máx = max(BPM)
Amplitude = FC_máx - FC_mín

Uso no FightRate:

  • Mostrar como leitura primária nos Insights.
  • Usar sampleCount e duração para indicar qualidade/confiança.
  • Não exibir quando não houver amostras reais.

2. Variabilidade simples de BPM

Esta não é HRV/VFC. É variabilidade da frequência cardíaca agregada por amostras de BPM. Ainda assim, é útil para caracterizar treino contínuo, intervalado ou caótico.

Dados: BPM timestampado.

Fórmulas:

média = soma(BPM) / n
variância = soma((BPM - média)^2) / n
DP_BPM = sqrt(variância)
CV_BPM = DP_BPM / média
Amplitude = FC_máx - FC_mín

Classificação operacional sugerida:

CV_BPM < 0.06      = esforço estável
0.06–0.12          = misto / progressivo
> 0.12             = intervalado / oscilante

Limitação: CV alto pode indicar treino intervalado, sensor instável ou mudanças bruscas de contexto. Rotular como “oscilação de FC”, não HRV.

3. FC máxima estimada e zonas por %FCmáx

Tanaka, Monahan e Seals revisaram a fórmula clássica 220 - idade e propuseram uma equação mais robusta para adultos saudáveis:

FCmáx_estimada = 208 - 0.7 × idade
%FCmáx = BPM / FCmáx

Zonas operacionais comuns:

Zona %FCmáx Uso prático
Z1 <60% recuperação / muito leve
Z2 60–70% base aeróbia
Z3 70–80% moderado / tempo
Z4 80–90% alta pressão
Z5 >90% redline / esforço máximo relativo

Limitação: Tanaka et al. deixam claro que FCmáx é amplamente explicada pela idade em população saudável, mas a estimativa individual pode errar bastante. Para o app, a FCmáx manual do usuário deve ter prioridade sobre fórmula.

4. Reserva cardíaca / Karvonen / HRR

Karvonen, Kentala e Mustala popularizaram o uso da faixa entre FC de repouso e FC máxima como referência de intensidade. Swain & Leutholtz demonstraram que %HRR se alinha melhor a %VO₂ reserve do que a %VO₂max.

Dados necessários: BPM, FCmáx, FCrepouso.

Fórmulas:

Reserva = FCmáx - FCrepouso
Intensidade_HRR = (BPM - FCrepouso) / Reserva
Alvo_BPM = FCrepouso + Intensidade_alvo × Reserva

Uso no FightRate:

  • Quando perfil existir, mostrar zonas por HRR como modo mais personalizado.
  • Sem FCrepouso confiável, cair para zonas por %FCmáx ou zonas operacionais fixas.

5. Tempo em zona

Tempo em zona é um dos indicadores mais úteis para leitura visual compacta, porque combina intensidade e duração.

Dados: BPM timestampado e função zona(BPM).

Algoritmo:

para i de 1 até n-1:
  delta = timestamp[i] - timestamp[i-1]
  delta_limitado = min(delta, gapMaxMs)
  zona = zona(BPM[i])
  tempo[zona] += delta_limitado

Regras de robustez:

  • Ignorar ou limitar gaps grandes para não atribuir minutos sem sinal a uma zona.
  • Exibir duração e percentual.
  • Usar o mesmo cálculo para janela de treino, uso contínuo e faixa customizada.

6. Carga interna / TRIMP

Banister introduziu o conceito de treinamento como “dose” fisiológica, combinando duração e intensidade. O TRIMP clássico usa FC relativa à reserva e um peso exponencial. Desgorces et al. discutem que TRIMP é histórico e útil, mas não é intercambiável com métodos alternativos e pode falhar em exercícios intermitentes quando usa FC média.

Dados necessários: duração, BPM, FCmáx, FCrepouso, coeficiente.

Banister TRIMP clássico:

HRr = (FCmédia - FCrepouso) / (FCmáx - FCrepouso)
TRIMP_homem = duração_min × HRr × 0.64 × e^(1.92 × HRr)
TRIMP_mulher = duração_min × HRr × 0.86 × e^(1.67 × HRr)

TRIMP acumulado por amostra, mais adequado ao FightRate:

para cada intervalo entre amostras:
  HRr_i = clamp((BPM_i - FCrepouso) / (FCmáx - FCrepouso), 0, 1.2)
  peso_i = coeficiente_a × e^(coeficiente_b × HRr_i)
  TRIMP += delta_min × HRr_i × peso_i

Uso no FightRate:

  • Chamar de carga estimada.
  • Se FCmáx/FCrepouso não existirem, mostrar “perfil incompleto”.
  • Para treino de luta intervalado, preferir versão acumulada, não FC média única.

7. Recuperação cardíaca pós-esforço (HRR recovery)

Cole et al. definiram recuperação como a queda da FC do pico ao primeiro minuto após o exercício; em teste clínico, queda ≤ 12 bpm no primeiro minuto foi associada a maior mortalidade. No FightRate, isso deve ser usado apenas como referência educativa, pois o contexto é treino livre, não teste clínico padronizado.

Dados necessários: fim da janela de treino e monitoramento contínuo por 1–2 min depois.

Fórmulas:

HRR_1min = FC_fim_ou_pico - FC_60s_após
HRR_2min = FC_fim_ou_pico - FC_120s_após

Algoritmo recomendado:

  1. Ao fechar a janela, manter monitor contínuo ativo.
  2. Guardar FC no fim da janela e pico dos últimos minutos.
  3. Buscar amostra mais próxima de endedAt + 60s e endedAt + 120s.
  4. Exibir apenas se houver amostras suficientes depois da janela.

8. Deriva cardiovascular / tendência de drift

Coyle & González-Alonso definem a deriva cardiovascular como queda progressiva do volume sistólico após 10–20 min de exercício, acompanhada por aumento de FC. Sem potência, velocidade, temperatura e hidratação, o app só deve inferir “tendência de deriva de FC”, não causa.

Dados: série BPM longa e timestampada.

Fórmulas operacionais:

média_inicial = média de uma janela inicial estável
média_final = média da janela final
Deriva_abs = média_final - média_inicial
Deriva_% = Deriva_abs / média_inicial × 100

Janela sugerida para app:

  • Se duração ≥ 20 min: comparar primeiros 20% vs últimos 20%, ignorando aquecimento curto.
  • Se duração < 10 min: não calcular deriva; mostrar “janela curta”.

9. HRV/VFC com RR intervals

A Task Force ESC/NASPE estabeleceu padrões clássicos de medição e interpretação de HRV. Shaffer & Ginsberg detalham métricas de domínio do tempo, frequência e não lineares, reforçando que duração da janela, artefatos, respiração, idade, sexo e método de medição mudam a interpretação.

Dados necessários: RR/NN intervals em milissegundos, limpos de artefatos.

Domínio do tempo

SDNN = desvio padrão dos intervalos NN
RMSSD = sqrt(média((NN[i+1] - NN[i])²))
NN50 = contagem de pares sucessivos com |ΔNN| > 50 ms
pNN50 = NN50 / número_de_pares × 100

Interpretação resumida:

  • RMSSD é uma das métricas mais usadas para atividade vagal de curto prazo.
  • SDNN depende fortemente da duração da janela; 24h e 5 min não são intercambiáveis.
  • pNN50 é correlacionado com RMSSD, mas RMSSD costuma ser preferido.

Domínio de frequência

Bandas clássicas:

VLF: 0.0033–0.04 Hz
LF:  0.04–0.15 Hz
HF:  0.15–0.40 Hz
LF/HF = potência_LF / potência_HF

Limitação importante: LF/HF é controverso como “balanço simpático-vagal”; respiração, postura e não estacionaridade podem distorcer a leitura. Para MVP, não usar LF/HF como score principal.

Não lineares

SD1 = dispersão perpendicular no Poincaré; relacionado a RMSSD
SD2 = dispersão longitudinal no Poincaré
SampEn = regularidade/complexidade da série
DFA α1 = correlação fractal de curto prazo

Uso no FightRate: futuro, apenas após validação de RR do sensor e filtros de artefato.

10. HRV-guided readiness / prontidão

Kiviniemi et al. testaram prescrição diária guiada por HRV em treino de endurance: quando HRV matinal caía significativamente, o treino era reduzido para baixa intensidade ou repouso. Buchheit argumenta que medidas quase diárias de 5 min em repouso e FC submáxima podem ser úteis quando interpretadas individualmente com erro de medida, menor mudança importante e contexto de carga.

Requisitos para FightRate:

  • Protocolo matinal padronizado, não amostra aleatória de treino.
  • RR intervals reais.
  • Baseline individual de vários dias.
  • Exibir como prontidão/protocolo, não diagnóstico.

Algoritmo futuro:

baseline = média móvel de LnRMSSD dos últimos 7–10 dias
limite = baseline - desvio_ou_SWC
se LnRMSSD_hoje < limite:
  sugestão = reduzir intensidade / recuperar
senão:
  sugestão = treino planejado permitido

11. Alertas e anomalias

Dados: BPM, timestamp, perfil opcional.

Regras não clínicas úteis:

Sem sinal = nenhuma amostra válida por N segundos
Pico abrupto = |BPM_atual - BPM_anterior| > limiar em poucos segundos
Alta sustentada = BPM > limite por N segundos
Queda pós-pico = FC cai X bpm em 60/120s após janela

Cuidado: alertas de saúde reais exigem validação médica. No app, usar linguagem operacional: “verifique sensor”, “pausa recomendada”, “zona alta sustentada”.

Recomendações diretas para a tela Insights

  1. Substituir lista simples por uma grade tabular de instrumentos com linhas compactas.
  2. Priorizar métricas calculáveis hoje:
    • FC atual/média/mín/máx;
    • duração e amostras;
    • tempo em zonas;
    • variabilidade BPM;
    • carga observada/carga estimada;
    • tendência de deriva;
    • recuperação pós-janela quando existir.
  3. Exibir métricas dependentes de perfil como bloqueadas ou “perfil necessário”, sem inventar FCmáx/FCrepouso silenciosamente.
  4. Exibir HRV/VFC como indisponível quando não houver RR intervals confiáveis.
  5. Cada métrica deve ter:
    • valor;
    • unidade;
    • status (OK, perfil, RR, janela curta, sem dados);
    • frase curta de leitura;
    • base de cálculo/confiança.
  6. Para uso espacial eficiente, usar tabela em linhas densas, trilhos e separadores do Corner Instrument — não cards genéricos.

Referências acadêmicas

  1. Task Force ESC/NASPE. Heart rate variability: standards of measurement, physiological interpretation and clinical use. Circulation. 1996. PubMed: https://pubmed.ncbi.nlm.nih.gov/8598068/
  2. Shaffer F, Ginsberg JP. An Overview of Heart Rate Variability Metrics and Norms. Front Public Health. 2017. PMC: https://pmc.ncbi.nlm.nih.gov/articles/PMC5624990/
  3. Tanaka H, Monahan KD, Seals DR. Age-predicted maximal heart rate revisited. J Am Coll Cardiol. 2001. PubMed: https://pubmed.ncbi.nlm.nih.gov/11153730/
  4. Karvonen MJ, Kentala E, Mustala O. The effects of training on heart rate; a longitudinal study. Ann Med Exp Biol Fenn. 1957. PubMed: https://pubmed.ncbi.nlm.nih.gov/13470504/
  5. Swain DP, Leutholtz BC. Heart rate reserve is equivalent to %VO2 reserve, not to %VO2max. Med Sci Sports Exerc. 1997. PubMed: https://pubmed.ncbi.nlm.nih.gov/9139182/
  6. Cole CR, Blackstone EH, Pashkow FJ, Snader CE, Lauer MS. Heart-rate recovery immediately after exercise as a predictor of mortality. N Engl J Med. 1999. PubMed: https://pubmed.ncbi.nlm.nih.gov/10536127/
  7. Achten J, Jeukendrup AE. Heart rate monitoring: applications and limitations. Sports Med. 2003. PubMed: https://pubmed.ncbi.nlm.nih.gov/12762827/
  8. Coyle EF, González-Alonso J. Cardiovascular drift during prolonged exercise: new perspectives. Exerc Sport Sci Rev. 2001. PubMed: https://pubmed.ncbi.nlm.nih.gov/11337829/
  9. Buchheit M. Monitoring training status with HR measures: do all roads lead to Rome? Front Physiol. 2014. PubMed/PMC: https://pubmed.ncbi.nlm.nih.gov/24578692/
  10. Kiviniemi AM, Hautala AJ, Kinnunen H, Tulppo MP. Endurance training guided individually by daily heart rate variability measurements. Eur J Appl Physiol. 2007. PubMed: https://pubmed.ncbi.nlm.nih.gov/17849143/
  11. Desgorces FD, Hourcade JC, Dubois R, Toussaint JF, Noirez P. Training load quantification of high intensity exercises: discrepancies between original and alternative methods. PLoS One. 2020. PMC: https://pmc.ncbi.nlm.nih.gov/articles/PMC7398532/
  12. Foster C, Florhaug JA, Franklin J, et al. A new approach to monitoring exercise training. J Strength Cond Res. 2001. PubMed: https://pubmed.ncbi.nlm.nih.gov/11708692/