Skip to Content

Comando HM — Detector de Manobras Bruscas

Detecção de eventos de condução com 8 instâncias independentes e 8 algoritmos: aceleração e frenagem por GPS; curvas, manobra forte e colisões por acelerômetro.


Para que serve?

Caso de usoDescrição
🏎️ Pontuação de conduçãoAvaliar o estilo de direção do motorista
🚨 Alertas de segurançaNotificar frenagens bruscas ou manobras perigosas
💥 Detecção de colisõesIdentificar colisões ou acidentes
📈 Análise de frotaGerar estatísticas de comportamento

Descrição

O módulo HM detecta eventos de condução usando 8 instâncias independentes (HM00-HM07) onde cada uma pode ser configurada para qualquer tipo de algoritmo (0-7):

  • HMxx = Índice de módulo (instância independente)
  • eventType = Tipo de algoritmo de detecção (0-7)
  • Flexibilidade total: HM03 pode usar algoritmo tipo 5, HM00 pode usar tipo 2, etc. O tipo é definido por eventType, não pelo índice.

Configuração

Sintaxe

Configuração completa (os parâmetros são posicionais e os finais podem ser omitidos):

SHMxx,eventType,magnitude,min_speed_kmh,hysteresis_percent,time_window_ms,cooldown_s

Formas abreviadas (sem vírgula entre xx e a letra):

FormaAção
SHMxxEHabilitar módulo
SHMxxDDesabilitar módulo (guarda a configuração, mas não detecta)
SHMxxRReset para configuração padrão
SHMxxE,... / SHMxxD,... / SHMxxR,...Combinar habilitar/desabilitar/reset com parâmetros
QHMxxConsultar configuração atual

Parâmetros

ParâmetroDescrição
xxInstância do módulo (00-07)
eventTypeAlgoritmo a usar (0-7)
magnitudeLimiar: km/h por segundo no GPS (tipos 0-1), mg no acelerômetro (tipos 2-7)
min_speed_kmhVelocidade mínima GPS (0 = sem restrição). Os tipos 5-7 a ignoram
hysteresis_percentPorcentagem que se soma ao limiar
time_window_msDuração mínima sustentada (0 = instantâneo)
cooldown_sTempo entre eventos (anti-spam)

Tipos de Algoritmos

🌐 Por GPS (Tipos 0-1)

Medem a variação de velocidade GPS de um segundo para o seguinte. Não dependem de como o equipamento está montado.

TipoÍconeNomeDetectaValores de referência
0🏎️Aceleração GPSGanha ≥ magnitude km/h em um segundo5-7 km/h/s, vel_min 5 km/h, janela 1000 ms
1🛑Frenagem GPSPerde ≥ magnitude km/h em um segundo6-9 km/h/s, vel_min 10 km/h, janela 1000 ms

📐 Por acelerômetro, com velocidade mínima (Tipos 2-4)

TipoÍconeNomeDetectaValores de referência
2↪️Curva esquerdaEixo Y positivo ≥ limiar220-330 mg, vel_min 15 km/h, janela 2000 ms
3↩️Curva direitaEixo Y negativo ≥ limiar220-330 mg, vel_min 15 km/h, janela 2000 ms
4🌀Manobra forte (centrípeta)Força horizontal total √(x²+y²): curva, frenagem, aceleração ou combinadas250-330 mg, vel_min 20 km/h, janela 2000 ms

⚡ Colisões (Tipos 5-7)

Ignoram min_speed_kmh: detectam também com o veículo parado.

TipoÍconeNomeDetectaValores de referência
5↔️Colisão lateral|eixo Y| ≥ limiar1500-2000 mg, janela 0
6⬆️Colisão frontalEixo X ≤ −limiar1500-2000 mg, janela 0
7⬇️Colisão traseiraEixo X ≥ +limiar1500-2000 mg, janela 0

Como o Firmware Avalia

GPS: um dado por segundo

A variação de velocidade é avaliada uma vez por segundo e precisa se manter em segundos consecutivos até completar time_window_ms; se um segundo não atinge o limiar, a contagem recomeça. Com uma janela de T ms são necessários T/1000 + 1 segundos seguidos:

time_window_msSegundos seguidosExemplo com magnitude 9 (frenagem)
100 ou 10002Perder 18 km/h em 2 s (≈0,25 g)
20003Perder 27 km/h em 3 s
30004Perder 36 km/h em 4 s
40005Perder 45 km/h em 5 s (na prática não acontece)

Para os tipos 0-1 use janela de 1000 ms e histerese 0. Com janelas de 3000 ms ou mais a detecção quase nunca dispara. Uma frenagem seca de menos de 2 segundos não é vista pelo GPS.

Acelerômetro

O equipamento lê o acelerômetro a cada 20 ms e calcula a média de 4 leituras (cerca de 80 ms); o HM verifica essa média a cada 100 ms. time_window_ms exige que o limiar se mantenha em todas as verificações desse período, e com 0 basta uma. magnitude é em mg (1000 mg = 1 g).

Histerese

hysteresis_percent se soma ao limiar: limiar efetivo = magnitude × (1 + hysteresis_percent / 100). Não existe limiar de desativação, então mais histerese torna o disparo mais difícil. Exemplo: 330 mg com 10 % dispara a partir de 363 mg.

Cooldown

Depois de um evento, a mesma instância não volta a detectar até passarem cooldown_s segundos.


Orientação do Equipamento

Os tipos 2-7 usam os eixos do acelerômetro. Se o equipamento não foi calibrado (ver Calibração de Eixos), são usados os eixos da placa tal como foi instalada:

  • Equipamento inclinado: a gravidade se soma aos eixos horizontais (10° ≈ 170 mg) e um lado dispara antes do outro.
  • Equipamento girado: esquerda e direita, ou frontal e traseira, podem ficar invertidos, e uma curva pode ser lida como frenagem.

Antes de usar em uma frota, teste em um veículo: faça uma curva clara à esquerda e verifique qual evento chega, e frene firme em linha reta verificando que nenhuma curva dispare. As colisões laterais (tipo 5) e a manobra forte (tipo 4) usam a magnitude do eixo, então dependem menos da orientação.


Presets por Classe de Veículo

São os mesmos oferecidos pelo configurador em Módulos → Manobras → Presets. As três classes usam o mesmo mapa de slots, então as regras servem para qualquer uma. São valores de partida: ajuste-os com os eventos reais da frota.

🚗 Carro / Leve

>SHM00E,0,7,5,0,1000,5< // Aceleração brusca: +7 km/h por segundo, 2 s seguidos >SHM01E,1,9,10,0,1000,5< // Frenagem brusca: −9 km/h por segundo, 2 s seguidos >SHM02E,2,330,15,10,2000,3< // Curva brusca à esquerda: 0,36 g sustentados 2 s >SHM03E,3,330,15,10,2000,3< // Curva brusca à direita: 0,36 g sustentados 2 s >SHM04E,5,2000,0,5,0,30< // Colisão lateral: 2,1 g, sem demora >SHM05E,6,2000,0,5,0,30< // Colisão frontal: 2,1 g, sem demora >SHM06E,7,2000,0,5,0,30< // Colisão traseira: 2,1 g, sem demora >SHM07E,4,330,20,10,2000,5< // Manobra forte: 0,36 g horizontais sustentados 2 s

🚛 Utilitário / Frota

>SHM00E,0,6,5,0,1000,5< // Aceleração brusca: +6 km/h por segundo, 2 s seguidos >SHM01E,1,8,10,0,1000,5< // Frenagem brusca: −8 km/h por segundo, 2 s seguidos >SHM02E,2,280,15,0,2000,3< // Curva brusca à esquerda: 0,28 g sustentados 2 s >SHM03E,3,280,15,0,2000,3< // Curva brusca à direita: 0,28 g sustentados 2 s >SHM04E,5,2000,0,5,0,30< // Colisão lateral: 2,1 g, sem demora >SHM05E,6,2000,0,5,0,30< // Colisão frontal: 2,1 g, sem demora >SHM06E,7,2000,0,5,0,30< // Colisão traseira: 2,1 g, sem demora >SHM07E,4,300,20,0,2000,5< // Manobra forte: 0,30 g horizontais sustentados 2 s

⛽ Pesado / Perigosos

>SHM00E,0,5,5,0,1000,5< // Aceleração brusca: +5 km/h por segundo, 2 s seguidos >SHM01E,1,6,10,0,1000,5< // Frenagem brusca: −6 km/h por segundo, 2 s seguidos >SHM02E,2,220,15,0,2000,5< // Curva brusca à esquerda: 0,22 g sustentados 2 s >SHM03E,3,220,15,0,2000,5< // Curva brusca à direita: 0,22 g sustentados 2 s >SHM04E,5,1500,0,5,0,30< // Colisão lateral: 1,6 g, sem demora >SHM05E,6,1500,0,5,0,30< // Colisão frontal: 1,6 g, sem demora >SHM06E,7,1500,0,5,0,30< // Colisão traseira: 1,6 g, sem demora >SHM07E,4,250,20,0,2000,5< // Manobra forte: 0,25 g horizontais sustentados 2 s

Exemplo Completo: Evento e Caixa-Preta

Cada manobra dispara uma regra que gera seu evento (relatório UC0) e a caixa-preta com os segundos anteriores e posteriores, tudo para o log para que nada se perca sem cobertura.

>SCXBB,U0,1,10,20< // Caixa-preta: UC0 a cada 1 s, 10 amostras depois e 20 antes >SRL70E;TRG=HM00+;ACC={GBBFFH;@LOG}{GU070H;@LOG}< // Evento 70: aceleração brusca >SRL71E;TRG=HM01+;ACC={GBBFFH;@LOG}{GU071H;@LOG}< // Evento 71: frenagem brusca >SRL72E;TRG=HM02+;ACC={GBBFFH;@LOG}{GU072H;@LOG}< // Evento 72: curva brusca à esquerda >SRL73E;TRG=HM03+;ACC={GBBFFH;@LOG}{GU073H;@LOG}< // Evento 73: curva brusca à direita >SRL74E;TRG=HM04+;ACC={GBBFFH;@LOG}{GU074H;@LOG}< // Evento 74: colisão lateral >SRL75E;TRG=HM05+;ACC={GBBFFH;@LOG}{GU075H;@LOG}< // Evento 75: colisão frontal >SRL76E;TRG=HM06+;ACC={GBBFFH;@LOG}{GU076H;@LOG}< // Evento 76: colisão traseira >SRL77E;TRG=HM07+;ACC={GBBFFH;@LOG}{GU077H;@LOG}< // Evento 77: manobra forte
  • O conteúdo de cada amostra da caixa-preta e de cada evento é definido pelo relatório UC00: inclua data, hora e posição.
  • Uma curva ou frenagem muito fortes podem gerar também o evento de manobra forte (77).
  • A caixa-preta envia uma rajada por vez: se outra manobra ocorrer enquanto as amostras posteriores são enviadas, essa segunda rajada não é gerada (o evento sim).
  • Numere os eventos entre 00 e 99 se a plataforma lê o número em decimal.

Para somar as manobras à pontuação da viagem, adicione {STPGCI,n} em cada regra: aceleração → GC2, frenagem → GC3, curvas → GC4 (ver Contadores GC).


Validações

Limites por Parâmetro

ParâmetroUnidadeMínimoMáximo
magnitude (GPS, tipos 0-1)km/h por segundo150
magnitude (acelerômetro, tipos 2-7)mg508000
min_speed_kmhkm/h0200
hysteresis_percent%050
time_window_msms030000
cooldown_ss0120

Os tipos 0-4 não admitem time_window_ms=0: o firmware corrige automaticamente para 100 ms e retorna um WARNING.


Recomendações

Para Detecção de Colisões

  • Tipos 5, 6 e 7 com magnitude entre 1500 e 2000 mg
  • time_window_ms em 0: uma colisão dura cerca de 100 ms e uma janela maior a deixa passar
  • cooldown_s longo (30 s)

Para Avaliação de Motoristas

  • Aceleração e frenagem por GPS (tipos 0-1) com janela de 1000 ms e histerese 0
  • Curvas e manobra forte (tipos 2-4) com janela de 2000 ms para filtrar buracos
  • cooldown_s moderado (3-5 s)
  • Combinar com os contadores do módulo TRIP para a pontuação por viagem

Antes de Implantar em uma Frota

  • Fazer o teste de orientação em pelo menos um veículo
  • Revisar a quantidade de eventos da primeira semana e ajustar magnitude por classe de veículo

Sinais Associados

SinalÍndiceApto para uso condicional
HM00-07NÃO

Os disparadores disponíveis são HM00+ a HM07+. Apenas flanco positivo.


Compatibilidade

💾Firmware:v1.09.15
SP-IOT
SM-IOT
ZE-IOT

Ver Também

Última atualização