Transceiver CAN

Il CAN-transceiver è un emettitore (transmitter) e un ricevitore (receiver). Esso converte i dati del CAN controller in segnali elettrici che successivamente trasmette per mezzo delle linee del bus dati. Nello stesso modo riceve i dati che converte per il CAN-controller.

Il protocollo CAN-bus è spesso usato nel settore automotive, dove sono particolarmente apprezzate le sue qualità di affidabilità. Il Controller Area Network, noto anche come CAN-bus, è uno standard seriale per bus di campo (principalmente in ambiente automotive), di tipo multicast, introdotto negli anni ottanta dalla Robert Bosch GmbH, per collegare diverse unità di controllo elettronico (ECU).

Il CAN è stato espressamente progettato per funzionare senza problemi anche in ambienti fortemente disturbati dalla presenza di onde elettromagnetiche e può utilizzare come mezzo trasmissivo una linea a differenza di potenziale bilanciata come la RS-485. L’immunità ai disturbi EMC può essere ulteriormente aumentata utilizzando cavi di tipo twisted pair (doppino intrecciato). Sin dal suo inizio, il protocollo CAN ha guadagnato grande popolarità nel campo dell’automazione industriale e nelle applicazioni per autoveicoli/autocarri. Altri mercati in cui le soluzioni con impiego di reti di comunicazioni possono recare vantaggi (apparecchiature medicali, di testing) stanno cominciando a utilizzare il protocollo CAN. Quali componenti costituiscono il CAN-bus dati? Esso è costituito da un controller, un transceiver, due chiusure per bus dati e due linee per il trasferimento dei dati. Eccetto per le linee per il trasferimento dei dati, i componenti sono integrati nelle centraline. La tecnologia CAN si colloca sui livelli 1 e 2 (fisico e data link) della pila ISO-OSI (figure 1, 2 e 3). L’object layer si occupa del filtraggio dei messaggi. La trasmissione è sempre di tipo broadcast (tutti i nodi ricevono i medesimi pacchetti). Il transfer layer definisce, invece, le modalità di trasferimento: formato dei messaggi, arbitraggio del bus, segnalazione e correzione degli errori ecc. Il livello fisico è basato su un singolo canale (di solito un doppino intrecciato, schermato o meno e terminato con una impedenza di 120 ohm). I due conduttori sono noti come CANH e CANL o semplicemente H e L. Appositi circuiti sono disponibili per rendere possibile la connessione di un sistema a microprocessore con il bus:

  • Il controlller CAN si fa carico dell’implementazione del protocollo a livello di data link (un controller CAN stand-alone di Microchip è l’MCP2510). Il controller si può trovare già integrato nel microcontrollore.
  • Tramite il transceiver viene realizzato il collegamento fisico al bus (un transceiver, sempre di produzione Microchip è l’MCP2551). Il componente non è integrabile a causa dei livelli dei segnali che devono essere controllati dai circuiti affacciati direttamente sul La lunghezza massima del bus dipende dalla velocità di trasmissione utilizzata. Occorre che il fronte di un impulso possa viaggiare lungo tutto il bus e poi tornare indietro prima che il bit sia campionato.
Figura 1: CAN-bus.

Figura 1: CAN-bus.

TRANSCEIVER CAN

Il CAN-transceiver è un emettitore (transmitter) e un ricevitore (receiver). Esso converte i dati del CANcontroller in segnali elettrici che successivamente trasmette per mezzo delle linee del bus dati. Nello stesso modo riceve i dati che converte per il CAN-controller. La chiusura per bus dati è una resistenza e impedisce che i dati trasmessi vengano rimandati dalle estremità sotto forma di eco, sfalsandoli. Le linee del bus dati, inoltre, sono bidirezionali e servono per la trasmissione dei dati. Esse vengono denominate CAN-high e CAN-low. Nel bus dati non viene determinato alcun destinatario. I dati vengono trasmessi sul bus dati e, di regola, ricevuti e analizzati da tutte le centraline allacciate. Come si svolge una trasmissione di dati:

  • predisposizione: la centralina mette i dati a disposizione del CAN-controller per la trasmissione;
  • verifica: le centraline verificano se i dati ricevuti sono necessari o meno per le loro funzioni;
  • trasmissione: Il CAN-transceiver riceve i dati dal CANcontroller, li converte in segnali elettrici e li trasmette;
  • accettazione: se i dati sono importanti, vengono accettati ed elaborati, altrimenti vengono ignorati;
  • ricevimento: tutte le altre centraline collegate al CAN-bus dati diventano ricevitori.

Che cosa trasmette il CAN-bus dati? Il CAN trasmette dati secondo un modello basato su bit “dominanti” e “recessivi”, in cui i bit dominanti sono gli 0 logici e i bit recessivi sono gli 1 logici. Se un nodo trasmette un bit dominante e un altro un bit recessivo, allora il bit dominante prevale fra i due (realizzando una combinazione AND logico). Con questa tecnica, quando viene trasmesso un bit recessivo, e contemporaneamente un altro dispositivo trasmette un bit dominante, si ha una collisione, e solo il bit dominante è visibile in rete (tutte le altre collisioni sono invisibili). In pratica avviene che un bit dominante è “asserito” dalla generazione di una tensione fra i conduttori, mentre un bit recessivo è semplicemente ignorato. Si è così sicuri che ogni volta che si impone una differenza di potenziale tutta la rete la rileva e quindi “sa” che si tratta di un bit dominante. Tutti i frame (detti anche “messaggi”) iniziano con un bit di “start-of-frame” (SOF). I frame del CAN possono essere di quattro tipi:

  • data frame: frame contenente i dati che il nodo trasmette;
  • remote frame: frame che richiede la trasmissione di un determinato identificatore;
  • error frame: frame trasmesso da un qualsiasi nodo che ha rilevato un errore;
  • overload frame: frame che introduce un ritardo fra data frame e/o remote frame.

I data frame sono i frame che eseguono l’effettiva trasmissione dei dati. I messaggi possono avere due formati:

  • base frame format, con 11 bit di identificazione;
  • extended frame format, con 29 bit di identificazione.

Lo standard CAN deve obbligatoriamente riconoscere il formato base frame e può opzionalmente riconoscere il formato extended frame format (che, tuttavia, deve essere tollerato). Il CAN base permette 211 = 2048 tipi di messaggi diversi, ma per ragioni storiche se ne usano solo 2031. Nella versione extended si possono avere fino a 229 = 536.870.912 tipi di messaggi.

Figura 2: CAN-bus.

Figura 2: CAN-bus.

SOLUZIONI COMMERCIALI

Texas Instruments ha proposto un transceiver CAN con protezione contro le scariche elettrostatiche fino a ±8 kV (modello del corpo umano). Si tratta di un robusto dispositivo che vanta elevata immunità dalle interferenze elettromagnetiche e bassissime emissioni elettromagnetiche, che gli consentono di sopravvivere e funzionare in ambienti elettrici gravosi. Denominato SN65HVD1050Q, è qualificato secondo la norma AEC-A100 relativa ad applicazioni automobilistiche e soddisfa o oltrepassa i requisiti del livello fisico specificati dallo standard ISO 11898-2. Il CAN transceiver TJA1145 e il chip UJA1168 – la prima soluzione altamente integrata al mondo a supporto del CAN Partial Networking – offre ai progettisti, inoltre, un controllo preciso sul bus di comunicazione delle autovetture. Mediante una gestione intelligente delle ECUs (Electronic Control Units) durante i periodi di inattività, quando il funzionamento dell’unità non è strettamente necessario, è possibile ottenere una riduzione significativa dei consumi di carburante e delle emissioni di CO2 senza sacrificare le prestazioni della vettura.

Figura 3: circuito di interfaccia elettrica CAN-bus.

Figura 3: circuito di interfaccia elettrica CAN-bus.

Scarica subito una copia gratis

2 Commenti

  1. Avatar photo Maurizio 19 Febbraio 2020
  2. Avatar photo GANTRA 23 Febbraio 2020

Scrivi un commento

Seguici anche sul tuo Social Network preferito!

Send this to a friend