Skip to content
RFrftools.io
Comms

Calculadora de Temporización del Bus CAN

Calcula los parámetros de temporización del bus CAN: prescaler, segmentos de bit y velocidad de baudios.

Loading calculator...

Fórmula

tq=1/(fclk/BRP);NBT=SS+PROP+BS1+BS2tq = 1/(f_clk/BRP); NBT = SS + PROP + BS1 + BS2
tqCuántica temporal (ns)
BRPPreescalador de velocidad en baudios
NBTTiempo nominal de bits en TQ (tq)
SSSegmento de sincronización (1 tq) (tq)
BS1Segmento de búfer de fase 1 (tq)
BS2Segmento de búfer de fase 2 (tq)

Cómo Funciona

Esta calculadora determina los parámetros de temporización de bits del bus CAN para redes automotrices e industriales. Los ingenieros de sistemas integrados y los diseñadores de sistemas de automoción la utilizan para configurar los controladores CAN según las especificaciones ISO 11898-1 (CAN 2.0) e ISO 11898-2 (capa física de alta velocidad). El tiempo de bits se divide en 4 segmentos: Sync_Seg (siempre 1 TQ), Prop_Seg (de 1 a 8 TQ para compensar el retraso de propagación), Phase_Seg1 (de 1 a 8 TQ) y Phase_Seg2 (de 1 a 8 TQ). El punto de muestra, en el que se lee el nivel del bus, debe situarse entre el 75 y el 87,5% del tiempo de bits según la sección 11.3.1.1 de la ISO 11898-1:2015 (Vehículos de carretera: red de área de controladores — Parte 1: capa de enlace de datos y señalización física) e ISO 11898-2:2016 (capa de conexión al medio físico). La temporización del CAN FD se especifica en la enmienda 1 de la norma ISO 11898-1:2015. Para una red de 500 kbps (la velocidad automotriz más común), el tiempo de bits es de 2 microsegundos. Con un reloj de 80 MHz y de 8 a 16 cuánticos de tiempo por bit, los valores alcanzables del preescalador oscilan entre 10 y 20. La CAN FD amplía las velocidades de 2 a 8 Mbps en la fase de datos, lo que requiere puntos de muestreo del 70 al 80% y una tolerancia de oscilación más estricta (el 0,1% frente al 0,5% de la CAN clásica).

Ejemplo Resuelto

Un módulo de control de carrocerías automotrices requiere una comunicación CAN a 500 kbps mediante un microcontrolador S32K144 con un reloj CAN de 80 MHz. Según los requisitos de temporización de la norma ISO 11898-1: tiempo de bits = 1/500000 = 2 microsegundos. El objetivo es de 16 TQ por bit para un ajuste preciso. Cuántica temporal = 2 us/ 16 = 125 ns. Preescalador = 80 MHz x 125 ns = 10. Asignación de segmentos para un 87,5% de puntos de muestreo: Sync_Seg = 1 TQ, Prop_Seg = 5 TQ, Phase_Seg1 = 8 TQ, Phase_Seg2 = 2 TQ. Punto de muestreo = (1 + 5 + 8)/16 = 87,5%. SJW (ancho de salto de sincronización) = min (Phase_Seg1, Phase_Seg2, 4) = 2 TQ, lo que permite una resincronización de +/- 250 ns por bit. Esta configuración admite redes de hasta 100 metros con un retraso de propagación de 5 ns/m.

Consejos Prácticos

  • Según la norma ISO 11898-2, utilice un 87,5% de puntos de muestreo para redes de menos de 40 metros y reduzca al 75% para redes de 40 a 500 metros para adaptarse al retraso de propagación
  • Establezca el SJW (ancho de salto de sincronización) en el valor máximo permitido (normalmente de 1 a 4 TQ) para tolerar una deriva del oscilador de hasta un 1,58% según la especificación CAN de Bosch
  • Para CAN FD en una fase de datos de 2 Mbps, utilice un retardo de propagación del transceptor de <150 ns (familia TJA1042) y mantenga la longitud de los bornes por debajo de 30 cm

Errores Comunes

  • Uso de tiempos de bits no coincidentes entre nodos: incluso una diferencia de 1 TQ provoca una falta de coincidencia en los puntos de muestreo, lo que aumenta los fotogramas de error entre 10 y 50 veces en longitudes de bus superiores a 20 metros
  • Establecer un punto de muestra por encima del 90%, lo que infringe la norma ISO 11898-1 y provoca una tasa de error del 5 al 15% en redes multinodo debido a la insuficiencia de Phase_Seg2
  • Sin tener en cuenta la tolerancia del oscilador: los resonadores cerámicos (precisión del 0,5%) fallan en longitudes de cable superiores a 50 metros, mientras que los cristales (20 ppm) admiten el alcance total de 1 km

Preguntas Frecuentes

La norma ISO 11898 define velocidades de 10 kbps a 1 Mbps. La automoción utiliza 500 kbps (CAN del tren motriz) y 125 kbps (CAN de carrocería). Las redes industriales utilizan 250 kbps (DeviceNet) y 125 kbps (CANopen). CAN FD amplía la fase de datos a 2 a 8 Mbps, mientras que el arbitraje se mantiene a 500 kbps.
El time quantum (TQ) es la unidad de temporización más pequeña, derivada del reloj CAN mediante un preescalador: TQ = Prescaler/F_can. Cada bit contiene de 8 a 25 TQ (normalmente 16 para un ajuste óptimo). Con un reloj de 80 MHz, el preescalador = 10 proporciona un TQ = 125 ns, lo que produce un tiempo de bits de 2 us (500 kbps) con 16 TQ.
Según la norma ISO 11898-1, todos los nodos deben muestrear el bus en puntos consistentes para leer el mismo valor de bits. Un punto de muestreo al 87,5% proporciona un margen del 12,5% para que la señal se estabilice tras la propagación. Si es demasiado pronto (75%) se pierde margen; si es demasiado tarde (> 90%), se corre el riesgo de que el muestreo se realice durante la transición de bits, lo que provocará un fracaso del 100% en el arbitraje.

Shop Components

As an Amazon Associate we earn from qualifying purchases.

USB-UART Adapter

USB to serial adapter for protocol debugging and flashing

USB Logic Analyzer

8-channel USB logic analyzer for capturing digital bus traffic

Calculadoras relacionadas