CAN Bus
Integración con computadoras de a bordo (ECU) de vehículos mediante protocolo CAN.
¿Para qué sirve?
| Caso de uso | Descripción |
|---|---|
| 🚛 Telemetría de flotas | RPM, velocidad, consumo, temperatura del motor |
| ⛽ Control de combustible | Nivel de tanque, consumo instantáneo, odolitro |
| 🔧 Diagnóstico | Códigos de falla (DTC), estado del motor |
| 🚌 Transporte público | Integración con buses y vehículos pesados |
| 🏗️ Maquinaria | Horas de motor, carga, presión hidráulica |
Descripción
Los dispositivos de Rinho Telematics están equipados con un transceiver CAN integrado, lo que les permite conectarse y comunicarse con las computadoras de a bordo de los vehículos (ECU). A través de esta conexión, es posible obtener información detallada sobre el estado y la telemetría del vehículo.
Para configurar el protocolo CAN, velocidad de conexión y control de captura, use el comando CXCAN.
Comandos de Lectura
Reportes Preformateados (QCAN)
Comandos que retornan múltiples parámetros en formatos específicos:
| Comando | Nombre | Descripción |
|---|---|---|
| CAN00 | Engine Report (ER) | Parámetros J1939 - Motor y consumo |
| CAN01 | Engine Quick (EQ) | Parámetros OBD-II con VIN |
| CAN02 | EBS Report | Sistema de frenos de trailer |
| CAN03 | CAN Data | Formato ancho fijo para Ux |
| CAN05 | MAF Report | FuelRate y flujo de aire |
Lectura Individual
| Comando | Descripción |
|---|---|
| ECU | Lectura flexible de cualquier variable CAN |
Comandos de Configuración
| Comando | Descripción |
|---|---|
| CXCAN | Protocolo, velocidad y habilitación CAN |
| CXECU | Parsers personalizados para datos CAN |
Protocolos Soportados
| Protocolo | Velocidad Típica | Vehículos |
|---|---|---|
| J1939 | 250 kbps | Camiones, buses, maquinaria |
| J1850 | 10.4/41.6 kbps | Vehículos americanos antiguos |
| OBD-II | 500 kbps | Vehículos livianos post-1996 |
| ISO 15765 | 250/500 kbps | Vehículos europeos |
Cómo Reportar Datos CAN al Servidor
Para enviar datos CAN a tu plataforma de rastreo tienes dos estrategias:
| Estrategia | Método | Ideal para |
|---|---|---|
| 🚀 Rápida | Reportes EQ / ER | Integraciones con Wialon, RedGPS, plataformas existentes |
| ⭐ Optimizada | Ux + UC + ECU | Nuevos proyectos, optimización de datos |
Forma 1: Reportes Prefijados (EQ / ER)
Los reportes EQ y ER son reportes extendidos que incluyen automáticamente todos los datos de CAN01 y CAN00 respectivamente.
// Generar reporte ER (Extendido + CAN00 para J1939)
>GER00H<
// Respuesta incluye todos los datos CAN al final
>RER00090719144856-2778101-06425853000214FF00115000...;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;ID=037222;*5A<| Ventajas | Limitaciones |
|---|---|
| ✅ Implementación inmediata | ❌ Conjunto fijo de parámetros (no se pueden elegir) |
| ✅ Compatible con Wialon, RedGPS | ❌ Trama más larga (más datos = más costo) |
| ✅ Sin configuración adicional | ❌ Formato con IDs numéricos difíciles de interpretar |
¿Cuándo usar EQ/ER? Cuando necesita una integración rápida con plataformas que ya soportan estos formatos (Wialon, RedGPS, etc.) y no le importa el tamaño de la trama.
Forma 2: Reportes de Usuario Personalizados (Ux + UC + ECU) ⭐ Recomendado
La combinación de reportes de usuario Ux, configuración UC y lecturas individuales ECU permite crear reportes optimizados y claros para cada aplicación.
Usted elige qué parámetros incluir y cómo nombrarlos.
// Configurar reporte U0: posición HQ + solo los parámetros CAN que necesito
>SUC00 $RHQ| #| QHQ,5| $;PA=| $c0:| QECU00,7|$c2:| QECU02,7|$c4:| QECU04,7|$c6:| QECU06,7|$c7:| QECU07,7<
// Resultado: trama compacta con nombres descriptivos
>RHQ00311225161305-2778104-06425850000348FF00125000000A3030105FFFF1120315000081DF;PA=c0:1850,c2:72,c4:15230.00,c6:89,c7:420;ID=865413053386354;*44<| Ventajas | Consideraciones |
|---|---|
| ✅ Solo los parámetros que necesita | Requiere configuración inicial |
| ✅ Nombres de campo personalizados (c0, c2, etc.) | Necesita desarrollo del parser en servidor |
| ✅ Tramas más cortas (menos costo de datos) | |
| ✅ Fácil de parsear en el servidor |
Recomendación: Para nuevos proyectos, use esta forma. Le permite optimizar el consumo de datos y tener un formato claro y fácil de procesar.
Ejemplo Completo: Reporte Personalizado para Vehículos Pesados
Paso 1: Configurar el reporte UC00
>SUC00 $RHQ| #| QHQ,5| $;PA=| $c0:| QECU00,7|$c2:| QECU02,7|$c4:| QECU04,7|$c6:| QECU06,7|$c7:| QECU07,7<¿Qué hace cada parte?
| Elemento | Función |
|---|---|
$RHQ | Prefijo “RHQ” para identificar el tipo de reporte |
# | Inserta el número de evento que disparó el reporte |
QHQ,5 | Incluye el reporte HQ (posición + horómetro) desde el carácter 5 |
$;PA= | Agrega el separador y texto “;PA=“ |
$c0: | Agrega el texto “c0:” como etiqueta |
QECU00,7 | Lee RPM y toma desde el carácter 7 (solo el valor) |
| … | Repite para cada parámetro CAN |
Paso 2: Probar con valores simulados
>SECU00,1850< // RPM = 1850
>SECU02,72< // Combustible = 72%
>SECU04,15230< // Odolitro = 15230 L
>SECU06,89< // Temperatura = 89°C
>SECU07,420< // Presión aceite = 420 kPaPaso 3: Consultar el reporte
>QU0<Resultado
>RHQ00311225161305-2778104-06425850000348FF00125000000A3030105FFFF1120315000081DF;PA=c0:1850,c2:72,c4:15230.00,c6:89,c7:420;ID=865413053386354;*44<Interpretación de la trama:
| Campo | Valor | Descripción |
|---|---|---|
RHQ00 | 00 | Evento número 00 |
311225161305 | 31/12/25 16:13:05 | Fecha y hora |
-2778104 | -27.78104° | Latitud |
-06425850 | -64.25850° | Longitud |
0003 | 3 km/h | Velocidad |
48 | 48° | Rumbo |
FF | 0xFF | Entradas digitales (todas activas) |
00 | 0x00 | Salidas digitales |
125 | 12.5V | Tensión batería |
;PA= | Parámetros Adicionales CAN: | |
c0:1850 | 1850 RPM | Revoluciones del motor |
c2:72 | 72% | Nivel de combustible |
c4:15230.00 | 15.230 L | Consumo total (odolitro) |
c6:89 | 89°C | Temperatura del motor |
c7:420 | 420 kPa | Presión de aceite |
Comparativa de las Dos Formas
| Criterio | EQ/ER (Forma 1) | Ux+UC+ECU (Forma 2) |
|---|---|---|
| Configuración | Ninguna | Requiere SUC |
| Parámetros | Fijos (todos) | A elección |
| Tamaño trama | ~200+ caracteres | ~145 caracteres |
| Nombres campos | IDs numéricos (2010, 5000…) | Personalizados (c0, c2…) |
| Parseo en servidor | Complejo | Simple |
| Compatibilidad | Wialon, RedGPS | Desarrollo propio |
| Recomendado para | Integraciones legacy | Nuevos proyectos |
Comandos de Consulta CAN (para diagnóstico)
Los comandos QCAN00-QCAN05 permiten consultar los valores CAN directamente, útil para diagnóstico y verificación:
>QCAN00<
>RCAN00 2010=1500,5000=25,1030=15000.00,4201=75,...<Ver documentación de cada comando: CAN00, CAN01, CAN02, CAN03, CAN05.
Ver También
- Comando CXCAN - Configuración del bus
- Comando UC - Reportes de usuario
- Comando Ux - Reportes extendidos