Skip to Content

Comandos CANxx

Família de comandos para leitura de parâmetros CAN da ECU do veículo.


Para que serve?

Caso de usoDescrição
🚛 Veículos pesadosCAN00/CAN03 para caminhões e ônibus com protocolo J1939
🚗 Veículos levesCAN01 para carros com protocolo OBD-II/J1850
🚚 Trailers e reboquesCAN02 existe mas está depreciado: o ramo não retorna dados
Consumo de combustívelCAN05 para leitura de FuelRate e sensor MAF
📋 Integração com relatóriosCAN03 em formato de largura fixa para relatórios Ux

Descrição Geral

Os comandos CANxx permitem obter informações do veículo através do barramento CAN. Cada variante está otimizada para diferentes protocolos e formatos de dados:

ComandoProtocoloUso Principal
CAN00J1939Veículos comerciais/pesados
CAN01J1850/OBD-IIVeículos leves
CAN02— (depreciado)Não retorna dados: ramo vazio no firmware
CAN03J1939 (largura fixa)Integração com relatórios Ux
CAN05GenéricoFuelRate e consumo

Antes de usar estes comandos, configure o barramento CAN através de CXCAN.


CAN00 - Parâmetros J1939

Leitura de parâmetros padrão usando protocolo J1939 para veículos comerciais e pesados.

Consulta

QCAN00

Resposta

RCAN00 2010=value,5000=value,1030=value,4201=value,1020=value,1010=value,2012=value,2013=value,2020=value,3010=value

Parâmetros

IDParâmetroFormato
2010RPMDecimal, 2 decimais (%.2f)
5000Posição acelerador (%)Decimal, 2 decimais (%.2f)
1030Odolitro (L)Decimal, 2 decimais (%.2f)
4201Nível combustível (%)Decimal, 2 decimais (%.2f)
1020Odômetro (Km)Decimal, 2 decimais (%.2f)
1010Velocidade roda (Km/h)Decimal, 2 decimais (%.2f)
2012Temp. refrigerante (ºC)Decimal, 2 decimais (%.2f)
2013Pressão óleo (kPa)Decimal, 2 decimais (%.2f)
2020Tempo motor ON (h)Decimal, 2 decimais (%.2f)
3010Combustível trip (L)Decimal, 2 decimais (%.2f)

Exemplo

>RCAN00 2010=1000.00,5000=0.00,1030=10000.00,4201=50.00,1020=20000.00,1010=60.00,2012=15.00,2013=100.00,2020=13.00,3010=0.13<

CAN01 - Parâmetros OBD-II

Leitura usando protocolo J1850/OBD-II para veículos leves.

Consulta

QCAN01

Resposta

RCAN01 1=value,2=value,3=value,B=value,14=value,15=value,2A=value,2C=value

Parâmetros

IDParâmetroFormato
1VIN16 dígitos ASCII
2RPMInteiro, sem decimais (%.0f)
3Velocidade roda (Km/h)Inteiro, sem decimais (%.0f)
BOdômetro (Km)Inteiro, sem decimais (%.0f)
14Odolitro (L)Inteiro, sem decimais (%.0f)
15Nível combustível (%)Inteiro, sem decimais (%.0f)
2ATemp. refrigerante (ºC)Inteiro, sem decimais (%.0f)
2CPressão óleo (kPa)Inteiro, sem decimais (%.0f)

Exemplo

>RCAN01 1=2SA23000L2,2=1000,3=60,B=20000,14=100000,15=50,2A=15,2C=100<

CAN02 - Reservado para Trailer ABS/EBS (depreciado)

O comando existe e responde CMDOK, mas engineGetAscii(type==2) é um ramo vazio marcado // EBS DEPRECATED no firmware: não monta nenhum campo. RCAN02 não traz nenhum dado — os campos red, amber, axle_load, whell_speed, vehicle_speed, dtc_0 e dtc_1 não existem na resposta real.

Consulta

QCAN02

Resposta

RCAN02

Não use CAN02 para ler dados de trailer ABS/EBS: o ramo está depreciado e não retorna campos. Se você precisar desses parâmetros, consulte o suporte técnico sobre qual banco os substitui na sua versão de firmware.


CAN03 - Formato de Largura Fixa

Leitura em formato de largura fixa, ideal para integração com relatórios de usuário Ux.

Consulta

QCAN03

Resposta

RCAN03 aaaabbbcccddddddddeeefffggghhhhhhhiiiiiiiijjjjjjjjkk

Parâmetros

CampoTamanhoParâmetroFormatoUnidade
aaaa4Engine SpeedDecimalRPM
bbb3Accel PCTDecimal%
ccc3Fuel PCTDecimal%
dddddddd8Odometer TotalHexmetros
eee3SpeedDecimalKm/h
fff3Engine TempDecimal°C
ggg3Oil PressDecimalkPa
hhhhhhh7Time Engine OnHexhoras
iiiiiiii8Fuel TripHexlitros
jjjjjjjj8Odoliter TotalHexlitros
kk2AgeHexsegundos

Os campos hexadecimais devem ser convertidos para decimal. Por exemplo, se dddddddd = 0001E240, o odômetro é 123456 metros.

Exemplo

>RCAN03 15000350500001E240060015100000012300012345006780010A<

CAN05 - FuelRate

Leitura de taxa de consumo de combustível (FuelRate).

Consulta

QCAN05

Resposta

RCAN05 FR_HW=value,FR_SW=value,MAF=value

Parâmetros

CampoParâmetroDescriçãoUnidade
FR_HWFuelRate HardwareLeitura direta do sensorL/h
FR_SWFuelRate SoftwareCálculo baseado em MAFL/h
MAFMass Air FlowSensor de fluxo de arg/s

Exemplo

>RCAN05 FR_HW!3,FR_SW=89.60,MAF=300.00;ID=869084063093789;*5A<

O FR_SW é calculado a partir do sensor MAF quando não está disponível o valor direto por hardware.


Códigos de Erro

Comuns a todos os comandos CANxx:

CódigoDescrição
=valueValor válido
= (vazio após o igual)Parâmetro não lido, apenas no CAN01 (ex. 15=)
!3Sem informação disponível (dado vencido), no CAN00 e CAN05

O firmware só gera o código !3; geralmente indica que o veículo não suporta o parâmetro ou que há um problema de conexão física com o barramento CAN. Os códigos !1 e !2 não existem em nenhuma versão atual do firmware.


Compatibilidade

💾Firmware:v1.00.00
SPLegacy
ULLegacy
SP-IOT
SM-IOT

O Rinho Zero IoT não tem transceptor CAN: nesse modelo esses comandos respondem NA. Para ler o barramento do veículo é preciso usar Spider IoT ou Smart IoT.


Ver Também

Última atualização