Background Image
Table of Contents Table of Contents
Previous Page  106 / 118 Next Page
Information
Show Menu
Previous Page 106 / 118 Next Page
Page Background

APRILE 2015

AUTOMAZIONE OGGI 380

106

AO

TUTORIAL

negli edifici, per gestire impianti domotici, macchine utensili,

strumentazione di laboratorio, apparecchiature elettromedicali e

persino giocattoli. I motivi che hanno portato a una così ampia

adozione di CAN in settori tanto diversi sono molteplici. Innanzi-

tutto, la semplicità e i bassi costi di cablaggio: nelle sue incarna-

zioni più popolari CAN fa uso di un semplice doppino intrecciato

(UTP o STP) per trasmettere un segnale di tensione differenziale.

Certe versioni utilizzano persino un solo filo (oltre a un necessario

ritorno di massa, per esempio costituito dall’intelaiatura del vei-

colo) per semplificare ulteriormente il cablaggio.

Il fatto che il protocollo sia orientato al contenuto, con nodi privi

di indirizzo, che trasmettonomessaggi inmodalità broadcast, fa sì

che sia possibile aggiungere o rimuovere i dispositivi senza dover

riconfigurare la rete. CAN si contraddistingue inoltre per l’elevata

immunità ai disturbi: il segnale differenziale è indifferente ai di-

sturbi di modo comune, inclusi eventuali offset nel livello di massa

delle varie parti del sistema; il bus CAN può persino continuare a

operare anche quando uno dei fili venga cortocircuitato a massa

o con l’alimentazione. La robustezza è garantita anche da mecca-

nismi multipli di rilevamento degli errori e di richiesta di ritrasmis-

sione dei messaggi corrotti, tutti implementati in hardware. Per

evitare che la compromissione di un nodo si propaghi all’intero

sistema, ogni controller CAN è poi in grado di diagnosticare il pro-

prio malfunzionamento e di autoescludersi dalla rete in caso di

errori ripetuti. Tutte queste caratteristiche, unite alla possibilità di

assegnare priorità ai messaggi e di garantire un tetto alla latenza

massima, hanno fatto di CAN una risposta ideale alle esigenze di

comunicazioni deterministiche in complessi sistemi dedicati.

In principio fu Bosch

Le prime specifiche di CAN rese pubbliche da Bosch portavano il

numero di versione 1.1 e descrivevano un bus seriale caratteriz-

zato dalla velocità massima di 125 kbps e messaggi con identifi-

catori da 11 bit. La versione 1.2 del protocollo ha incrementato la

tolleranza dell’oscillatore ed è stata essenzialmente riportata tale

e quale nella variante A dello standard CAN 2.0. Nota anche come

Basic o Standard CAN, la versione 2.0A dello standard proposto

da Bosch è stata originariamente incorporata da ISO nello stan-

dard 11519. La versione 2.0B, nota anche come ‘Full’, ‘Extended’

o ‘High-Speed’ CAN, porta la velocità massima di trasmissione a 1

Mbps (tutte le velocità massime dipendono dalla lunghezza del

bus) e introduce frame estesi con un campo identificatore di 29

bit. Fatte salve alcune limitazioni, le due versioni di CAN 2.0 sono

in grado di convivere sulla stessa rete e sono comunemente usate

nelle applicazioni odierne.

Basic CAN e Full CAN si differenziano anche per il modo in cui

sono realizzati i rispettivi controller. Nel caso di Basic CAN solo

le funzioni essenziali del protocollo sono implementate diretta-

mente in hardware; i messaggi sono trasferiti in un buffer e la loro

gestione è effettuata dal computer host.

In Full CAN, invece, i controller sono più complessi e si occupano

di tutti i compiti di comunicazione, incluso il filtraggio dei mes-

saggi, liberando il computer host da tali incombenze.

Con l’evoluzione delle tecnologie, i controllori CAN hanno finito

per essere incorporati direttamente sui chip dei microcontrollori

in soluzioni altamente integrate, che, per la loro compattezza ed

economicità, hanno dato un contributo significativo all’amplia-

mento del mercato.

Un bus, molti standard

Il protocollo CAN originario, le sue varianti e svariati altri bus di

comunicazioni su di esso basati sono stati oggetto di standar-

dizzazione da parte di enti nazionali e internazionali come ISO e

SAE, nonché di consorzi di aziende tesi a promuovere la propria

versione di rete di microcontrollori.

Nel 1993 ISO ha introdotto lo standard 11898 ‘Road vehicles - In-

terchange of digital information - Controller area network (CAN)

for high-speed communication’, che ha successivamente incor-

porato lo standard ISO 11519 e ulteriori varianti del protocollo

CAN. Le prime due parti dello standard ISO 11898, Part 1 ‘Data link

layer and physical signalling’ e Part 2 ‘High-speed MediumAccess

Unit’, descrivono, nel contesto del modello ISO/OSI, l’implemen-

tazione del bus CAN ad alta velocità con segnali differenziali su

doppino intrecciato.

La versione a bassa velocità (tra 40 e 125 kbps) ed elevata tol-

leranza ai guasti del bus CAN è descritta nella terza parte dello

standard (Part 3 ‘Low-speed, fault-tolerant, medium-dependent

interface’). Si tratta di un’implementazione di CAN che è in grado

Diversa implementazione delle funzioni nei controller per

Basic CAN e Full CAN

Strutturadei framedati nelle implementazioni BasicCANeFull CAN