Calculateur de synchronisation des bits du bus CAN
Calculez les paramètres de synchronisation des bits du bus CAN, y compris le prescaler, les quanta temporels, les segments de synchronisation, les segments de propagation et les segments de mémoire tampon de phase pour un débit en bauds et un point d'échantillonnage donnés
Formule
Comment ça marche
Ce calculateur détermine les paramètres de synchronisation des bits du bus CAN pour les réseaux automobiles et industriels. Les ingénieurs embarqués et les concepteurs de systèmes automobiles l'utilisent pour configurer les contrôleurs CAN conformément aux spécifications ISO 11898-1 (CAN 2.0) et ISO 11898-2 (couche physique à haut débit). Le temps binaire est divisé en 4 segments : Sync_Seg (toujours 1 TQ), Prop_Seg (1-8 TQ pour la compensation du retard de propagation), Phase_Seg1 (1-8 TQ) et Phase_Seg2 (1-8 TQ). Le point d'échantillonnage, où le niveau du bus est lu, doit être positionné entre 75 et 87,5 % du temps binaire conformément à la section 11.3.1.1 de la norme ISO 11898-1:2015 (Véhicules routiers — Réseau de zone de commande — Partie 1 : couche de liaison de données et signalisation physique) et à la norme ISO 11898-2:2016 (couche de fixation du support physique). La synchronisation CAN FD est spécifiée dans l'amendement 1 de la norme ISO 11898-1:2015. Pour un réseau de 500 kbit/s (le débit automobile le plus courant), le temps binaire est de 2 microsecondes. Avec une horloge de 80 MHz et 8 à 16 quanta de temps par bit, les valeurs de préscaler réalisables vont de 10 à 20. Le CAN FD étend les vitesses à 2 à 8 Mbit/s pendant la phase de données, ce qui nécessite des points d'échantillonnage de 70 à 80 % et une tolérance d'oscillateur plus stricte (0,1 % contre 0,5 % pour le CAN classique).
Exemple Résolu
Un module de commande de carrosserie automobile nécessite une communication CAN à 500 kbit/s à l'aide d'un microcontrôleur S32K144 avec une horloge CAN de 80 MHz. Selon les exigences de synchronisation ISO 11898-1 : temps binaire = 1/500000 = 2 microsecondes. Ciblez 16 TQ par bit pour un réglage précis. Quantum temporel = 2 us/16 = 125 ns. Prescaler = 80 MHz x 125 ns = 10. Allocation de segments pour un point d'échantillonnage de 87,5 % : Sync_Seg = 1 TQ, Prop_Seg = 5 TQ, Phase_Seg1 = 8 TQ, Phase_Seg2 = 2 TQ. Point d'échantillonnage = (1 + 5 + 8)/16 = 87,5 %. SJW (Synchronization Jump Width) = min (Phase_Seg1, Phase_Seg2, 4) = 2 TQ, permettant une resynchronisation de +/- 250 ns par bit. Cette configuration prend en charge les réseaux jusqu'à 100 mètres avec un délai de propagation de 5 ns/m.
Conseils Pratiques
- ✓Conformément à la norme ISO 11898-2, utiliser un point d'échantillonnage de 87,5 % pour les réseaux de moins de 40 mètres, réduire à 75 % pour les réseaux de 40 à 500 mètres afin de tenir compte du retard de propagation
- ✓Réglez SJW (Synchronization Jump Width) sur la valeur maximale autorisée (généralement 1 à 4 TQ) pour tolérer une dérive de l'oscillateur jusqu'à 1,58 % conformément à la spécification CAN Bosch
- ✓Pour le CAN FD à une phase de données de 2 Mbit/s, utilisez un délai de propagation de l'émetteur-récepteur inférieur à 150 ns (famille TJA1042) et maintenez la longueur des tronçons inférieure à 30 cm
Erreurs Fréquentes
- ✗Utilisation d'une synchronisation des bits non adaptée entre les nœuds : même une différence de 1 TQ entraîne une non-concordance des points d'échantillonnage, augmentant les trames d'erreur de 10 à 50 fois sur des longueurs de bus supérieures à 20 mètres
- ✗Régler le point d'échantillonnage au-dessus de 90 %, ce qui constitue une violation de la norme ISO 11898-1 et entraîne un taux d'erreur de 5 à 15 % sur les réseaux multi-nœuds en raison d'une phase de Phase_Seg2 insuffisante
- ✗Tolérance des oscillateurs négligée : les résonateurs céramiques (précision de 0,5 %) tombent en panne à des longueurs de câble supérieures à 50 mètres, tandis que les cristaux (20 ppm) supportent toute la plage de 1 km
Foire Aux Questions
Shop Components
As an Amazon Associate we earn from qualifying purchases.
Calculateurs associés
Comms
Chronométrage SPI
Calculez les paramètres de synchronisation du bus SPI, y compris la période de bits, la durée de trame, la fréquence d'horloge maximale limitée par la capacité de trace et la fréquence de balayage du signal
Comms
Débit en bauds UART
Calculez la synchronisation des trames UART, le débit et le diviseur de registre USART BRR à partir du débit en bauds, du format des données et de la fréquence d'horloge du microcontrôleur. Identifiez les erreurs de débit pour une communication série fiable.
Comms
Pull-Up I2C
Calculez les valeurs des résistances de rappel I2C pour les modes Standard (100 kHz), Fast (400 kHz) et Fast-Plus (1 MHz). Déduit la résistance minimale, maximale et recommandée à partir de la tension d'alimentation et de la capacité du bus, conformément à la norme NXP UM10204.
Comms
Gigue Horloge
Calculez le budget temporel de l'arbre d'horloge pour les conceptions FPGA et SoC.