MAGGIO 2017
FIELDBUS & NETWORKS
98
Fieldbus & Networks
il bus, a prescindere da quanti stiano trasmettendo uno stato logico
1 (recessivo). La risoluzione dei conflitti si ha in corrispondenza della
trasmissione dell’identificativo dei messaggi: i nodi con identificati con
più zeri logici, quindi più bassi, hanno priorità maggiore, perché riescono
a dominare lo stato del bus e sopravvivono inalterati in caso di colli-
sione. I nodi con priorità inferiore, che perdono il conflitto, rimandano
la trasmissione e si pongono in condizione di ricevere il messaggio. La
robustezza necessaria ad applicazioni automotive è implementata per
mezzo di meccanismi multipli di rilevamento degli errori e di richiesta di
ritrasmissione dei messaggi corrotti.
Ogni nodo ha due contatori separati, che tengono traccia degli errori di
ricezione e trasmissione, mentre il meccanismo di gestione degli errori
permette di escludere dalla rete i nodi che si dimostrano più problema-
tici. Per evitare che la compromissione di un nodo si propaghi all’intero
sistema, ogni controller CAN è in grado di diagnosticare il proprio mal-
funzionamento e di autoescludersi dalla rete in caso di errori ripetuti.
Le estensioni
La prima versione di CAN sviluppata da Bosch è stata estesa e arric-
chita in più di un modo. Una delle modifiche più importanti ha portato
alla differenziazione tra ‘Basic CAN’ (o CAN 2.0A) ed ‘Extended CAN’
(o CAN 2.0B): nella versione originale l’identificatore del messaggio è
lungo 11 bit, corrispondente alla possibilità di avere 2.048 diverse tipo-
logie di messaggio (abbastanza da accomodare il livello di priorità e una
sommaria categorizzazione).
Nella versione estesa il campo identificativo del frame CAN diventa di
29 bit (11 bit di identificatore base e 18 bit di identificatore esteso), che
porta il numero di possibili combinazioni a più di 536 milioni e permette
di aggiungere informazioni più dettagliate direttamente nella prima
parte del frame. Inizialmente, la versione con l’identificativo a 29 bit
veniva usata solo per i veicoli commerciali e i mezzi pesanti, ma poi è
stata estesa anche alle autovetture passeggeri e oggi Extended CAN è
la norma nei nuovi controller CAN.
Il continuo successo di CAN dentro e fuori il settore automotive ha por-
tato all’introduzione di nuove funzionalità, che sono state via via incor-
porate negli standard.
TimeTriggered CAN (TT-CAN), per esempio, è un protocollo di livello
superiore che mette a disposizione un meccanismo di comunicazione
pianificata per mezzo di slot temporali: le trasmissioni si susseguono
a intervalli scanditi da un clock comune (un messaggio di riferimento
fornito da un dispositivo denominato Time Master), secondo un ordine
predefinito in una tabella di
schedulazione. Questa moda-
lità di comunicazione permette
di passare dalla comunicazione
basata sugli eventi dello stan-
dard originale, a una comuni-
cazione con multiplazione a
divisione di tempo (Tdma) e si
presta alle applicazioni in cui il
traffico dei dati è di natura ci-
clica, come i controlli ad anello
chiuso. La predeterminazione
dei tempi di latenza permette
inoltre di migliorare le presta-
zioni in tempo reale delle reti
CAN.
In campo automobilistico TT-
CAN si propone come soluzione per la realizzazione di applicazioni cri-
tiche, come i sistemi X-by-wire. Un’ulteriore evoluzione del bus CAN è
stata indotta dalla crescente complessità dei sistemi da controllare e
dal rafforzarsi della concorrenza di bus alternativi ad alta velocità (come
FlexRay e Most).
CAN with Flexible Datarate (Can-FD) è una variante di CAN che ri-
sponde all’esigenza di superiori velocità di trasmissione. Utilizza alcuni
bit riservati per introdurre nel frame CAN standard un meccanismo per
distinguere la fase di arbitraggio, in cui tutti i nodi possono intervenire,
da quella di scambio dati, in cui il canale può essere occupato dal solo
nodo trasmittente uscito vincitore dalla contesa.
Una volta terminato l’arbitraggio alla velocità ridotta, dettata dalla ne-
cessità per tutti i nodi di poter confrontare la priorità dei propri mes-
saggi, il bus può passare alla modalità ad alta velocità. Per mantenere
la compatibilità con i transceiver tradizionali, CAN FD permette la tra-
smissione alla velocità media di 2,5 Mbps.
Gli standard ISO
La popolarità di CAN, cresciuta nei primi anni di vita grazie soprattutto
alla varietà di microcontrollori supportati, ha portato alla standardiz-
zazione delle specifiche da parte di ISO e SAE (Society of Automotive
Engineers).
Lo standard ISO 11898
‘Road vehicles - Interchange of digital informa-
tion - Controller area network (CAN) for high-speed communication’
,
approvato nel 1993, definisce le caratteristiche del bus specificando lo
strato di collegamento dati e parte dello strato fisico. Questo standard
ha successivamente incorporato le specifiche ISO 11519 ed è stato am-
pliato aggiungendo nuove varianti del protocollo CAN.
Le prime due parti di ISO 11898,
‘1 - Data link layer and physical signal-
ling’
e
‘2 - High-speed Medium Access Unit’
, descrivono l’implemen-
tazione del bus CAN High Speed con segnali differenziali su doppino
intrecciato e velocità comprese tra 40 kbps e 1 Mbps (a seconda della
lunghezze del cavo). Questa è la versione più popolare di CAN e in am-
bito automotive è impiegata per il controllo della propulsione.
La versione Low Speed di CAN, con velocità comprese tra 40 e
125 kbps, offre una superiore resilienza ai guasti (è in grado di tollerare
la messa a terra o l’interruzione di uno dei due fili) e viene descritta
nella terza parte dello standard,
‘3 - Lowspeed, fault-tolerant, medium-
dependent interface’
.
Questa versione di CAN viene usata per il controllo di portiere e vetri
elettrici, dove le sollecitazioni meccaniche in corrispondenza delle cer-
L’andamento della tensione sulle linee Can-Hi e Can-Lo nelle versioni CAN High-Speed e Fault-Tolerant