Calculadora de tempo de bits CAN Bus
Calcule os parâmetros de temporização de bits do barramento CAN, incluindo prescaler, quanta de tempo, segmento de sincronização, segmento de propagação e segmentos de buffer de fase para uma determinada taxa de transmissão e ponto de amostragem
Fórmula
Como Funciona
Esta calculadora determina os parâmetros de temporização de bits do barramento CAN para redes automotivas e industriais. Engenheiros embarcados e projetistas de sistemas automotivos o usam para configurar controladores CAN de acordo com as especificações ISO 11898-1 (CAN 2.0) e ISO 11898-2 (camada física de alta velocidade). O tempo de bits é dividido em 4 segmentos: Sync_Seg (sempre 1 TQ), Prop_Seg (1-8 TQ para compensação de atraso de propagação), Phase_Seg1 (1-8 TQ) e Phase_Seg2 (1-8 TQ). O ponto de amostragem, onde o nível do barramento é lido, deve ser posicionado em 75-87,5% do tempo de bits de acordo com a Seção 11.3.1.1 da ISO 11898-1:2015 (Veículos rodoviários — Rede de área do controlador — Parte 1: Camada de enlace de dados e sinalização física) e ISO 11898-2:2016 (Camada de conexão média física). A temporização CAN FD é especificada na Emenda 1 da ISO 11898-1:2015. Para uma rede de 500 kbps (a taxa automotiva mais comum), o tempo de bits é de 2 microssegundos. Com um relógio de 80 MHz e quanta de tempo de 8 a 16 por bit, os valores de prescaler alcançáveis variam de 10 a 20. O CAN FD estende as velocidades de 2 a 8 Mbps na fase de dados, exigindo pontos de amostra de 70 a 80% e uma tolerância mais rígida do oscilador (0,1% versus 0,5% para o CAN clássico).
Exemplo Resolvido
Um módulo de controle de carroceria automotiva requer comunicação CAN a 500 kbps usando um microcontrolador S32K144 com relógio CAN de 80 MHz. De acordo com os requisitos de temporização da ISO 11898-1: Tempo de bits = 1/500000 = 2 microssegundos. Alvo de 16 TQ por bit para um ajuste preciso. Quantum de tempo = 2 és/16 = 125 ns. Prescaler = 80 MHz x 125 ns = 10. Alocação de segmentos para 87,5% do ponto de amostra: Sync_Seg = 1 TQ, Prop_Seg = 5 TQ, Phase_Seg1 = 8 TQ, Phase_Seg2 = 2 TQ. Ponto de amostragem = (1 + 5 + 8)/16 = 87,5%. SJW (Largura do salto de sincronização) = min (Phase_Seg1, Phase_Seg2, 4) = 2 TQ, permitindo a ressincronização de +/- 250 ns por bit. Essa configuração suporta redes de até 100 metros com atraso de propagação de 5 ns/m.
Dicas Práticas
- ✓De acordo com a ISO 11898-2, use 87,5% de ponto de amostra para redes abaixo de 40 metros, reduza para 75% para redes de 40 a 500 metros para acomodar o atraso de propagação
- ✓Defina SJW (largura do salto de sincronização) para o valor máximo permitido (normalmente 1-4 TQ) para tolerar o desvio do oscilador de até 1,58% de acordo com a especificação CAN da Bosch
- ✓Para CAN FD na fase de dados de 2 Mbps, use atraso de propagação do transceptor <150 ns (família TJA1042) e mantenha os comprimentos do talão abaixo de 30 cm
Erros Comuns
- ✗Usando tempo de bits incompatível entre os nós - até mesmo uma diferença de 1 TQ causa incompatibilidade de pontos de amostra, aumentando os quadros de erro em 10 a 50 vezes em comprimentos de barramento maiores que 20 metros
- ✗Definir um ponto de amostra acima de 90%, o que viola a ISO 11898-1 e causa uma taxa de erro de 5 a 15% em redes de vários nós devido à insuficiência de Phase_Seg2
- ✗Negligenciando a tolerância do oscilador - os ressonadores cerâmicos (precisão de 0,5%) falham em comprimentos de cabo superiores a 50 metros, enquanto os cristais (20 ppm) suportam o alcance total de 1 km
Perguntas Frequentes
Shop Components
As an Amazon Associate we earn from qualifying purchases.
Calculadoras relacionadas
Comms
Cronometragem SPI
Calcule os parâmetros de temporização do barramento SPI, incluindo período de bits, tempo de quadro, frequência máxima de clock limitada pela capacitância de rastreamento e taxa de variação do sinal
Comms
Taxa de transmissão UART
Calcule o tempo de quadro UART, a taxa de transferência e o divisor de registro USART BRR a partir da taxa de transmissão, formato de dados e frequência do relógio MCU. Identifique o erro da taxa de transmissão para uma comunicação serial confiável.
Comms
Pull-Up I2C
Calcule os valores do resistor pull-up I2C para os modos Padrão (100 kHz), Rápido (400 kHz) e Fast-Plus (1 MHz). Deriva a resistência mínima, máxima e recomendada da tensão de alimentação e da capacitância do barramento de acordo com o NXP UM10204.
Comms
Jitter Clock
Calcule o orçamento de temporização da árvore de clock para projetos de FPGA e SoC.