Skip to Content

Comando UV — Disparadores de Usuário

Cria disparadores personalizados que monitoram qualquer variável interna do dispositivo e geram eventos quando condições específicas são atendidas.


Para que serve?

Caso de usoDescrição
🎯 Monitoramento de variáveisSupervisiona qualquer parâmetro interno do dispositivo
Detecção de mudançasDispara eventos quando valores entram/saem de faixas
📈 Modo deltaDetecta mudanças bruscas em velocidade, combustível, etc.
🔗 Integração com regrasSinais UV00-UV47 disponíveis para motor de eventos
🔧 Parsing de respostasExtrai campos específicos com delimitadores

Suporta 32 disparadores (índices 00-31), expansíveis até 47 em alguns firmwares.


Sintaxe

AçãoComandoDescrição
ConsultarQUVnnConsulta configuração do disparador nn
ConfigurarSUVnnabb.bb,cc,dd,ee,ffConfigura disparador completo
Apagar umSUVnn*Elimina disparador nn
Apagar todosSUV*55AAElimina todos os disparadores
Reset sinalSUVnnRColoca em 0 o sinal UVnn

Parâmetros

ParamDescriçãoValores
nnÍndice do disparador00 a 31 (ou 47)
aTipo de conversãoVer tabela abaixo
bb.bbComando interno a monitorarEx: QIO, QVR
ccÍndice do primeiro caracterePosição na resposta
ddQuantidade de caracteresTamanho do dado
ee..eeValor mínimo (≥) ou tempo deltaDepende do tipo
ff..ffValor máximo (<) ou deltaDepende do tipo

Tipos de Conversão

TipoDescriçãoFaixa
/ SDecimal com sinal-2147483648 a +2147483647
UDecimal sem sinal0 a 4294967295
FPonto flutuanteDecimais
HHexadecimal Big Endian0x00 a 0xFFFFFFFF
hHexadecimal Little Endian0x00 a 0xFFFFFFFF
ACadeia ASCIITexto
XDelta (mudança brusca)Desde v1.08.07

Modo Delta (X) - Detalhe

O modo delta acumula as mudanças do valor monitorado durante uma janela de tempo e dispara se a variação acumulada superar o limite configurado.

Parâmetros no modo X:

ParamFunção
eeJanela de tempo em segundos
ffLimite delta (ver modos abaixo)

Modos de comparação:

Formato de ffComportamentoDispara quando
ff positivo (ex: 20)Apenas incrementosSe delta acumulado ≥ ff
ff negativo (ex: -20)Apenas decrementosSe delta acumulado ≤ ff
*ff (ex: *20)Valor absolutoSe |delta acumulado| ≥ |ff|

Funcionamento interno:

  1. No início de cada janela, salva o valor atual e reseta o acumulador
  2. Em cada avaliação, soma a diferença: delta += valor_atual - valor_anterior
  3. Ao cumprir o tempo ee, compara o delta acumulado com o limite ff
  4. Se a condição for cumprida, dispara o sinal UV correspondente
  5. Reinicia a janela de tempo e o acumulador

O valor de ff (delta) não pode ser zero. Se delta = 0 for configurado, o disparador não será processado.

Campo Split (Opcional)

Formato: \XXnn onde:

  • XX = Caractere delimitador em hexadecimal (ex: 3B = ;)
  • nn = Número do campo a extrair
// Exemplo: \3B1 separa por ";" e pega o campo 1

Sinais Associados

PropriedadeValor
SinalUV
Índice00 - 47
Uso condicional✅ Sim
Flancos+ positivo, - negativo, * qualquer

Exemplos Práticos

Exemplo 1: Monitoramento de Ignição

Captura o estado de IGN do comando QIO:

>SUV00UQIO,7,1,1,2< // Sem sinal, posição 7, 1 caractere, faixa 1-2

Criar regras para detectar mudanças de ignição:

>SRL00E;TRG=UV00+;ACC={STX UV00+ ;@TRM}< // Disparo positivo (IGN ON) >SRL01E;TRG=UV00-;ACC={STX UV00- ;@TRM}< // Disparo negativo (IGN OFF)

Exemplo 2: Estado de Antena GPS

Detectar se a antena GPS está conectada, aberta ou em curto:

// Configurar buffer de consulta >SCXXB04G0000000,STATUS=,\2A,A< // Criar disparadores para cada estado >SUV00AQXB04,5,2,OK,< // GPS Antena OK >SUV01AQXB04,5,4,OPEN,< // GPS Antena aberta >SUV02AQXB04,5,5,SHORT,< // GPS Antena em curto // Regras para reportar estado >SRL90E;TRG=UV00+;ACC={STX ANTENA GPS CONECTADA;@TRM}< >SRL91E;TRG=UV01+;ACC={STX ANTENA GPS ABERTA;@TRM}< >SRL92E;TRG=UV02+;ACC={STX ANTENA GPS EM CURTO;@TRM}<

Resultado esperado:

>RTX ANTENA GPS CONECTADA;ID=039129;*5B< >RTX ANTENA GPS ABERTA;ID=039129;*47< >RTX ANTENA GPS EM CURTO;ID=039129;*61<

Ver comando CXXB

Exemplo 3: Uso de Delimitador (Split)

Extrair IGN de resposta delimitada por ;:

>SUV04FQIO,\3B1,3,1,1,2< // Delimitador ; (0x3B), campo 1

Resposta de QIO:

RIO;IGN1;IN1111111;XP000;V000;VBU464 Campo 1, posição 3, 1 caractere = "1"

Consulte o valor do disparador UV com: >QSSUV04<


Compatibilidade

💾Firmware v1.03.00
SPLegacy
ULLegacy
MTLegacy
💾Firmware v1.00.00
SP-IOT
SM-IOT
ZE-IOT

Ver Também

Última atualização