reti di campo per applicazioni automotive e controller...

108
Consiglio Nazionale delle Ricerche – Istituto IEIIT – Torino Automotive Electronics: sistemi elettronici distribuiti e comunicazione via bus Politecnico di Milano, 17-19 Maggio 2004 A. Valenzano - Comunicazioni Embedded e Controller Area Network / 1 Reti di campo per applicazioni Reti di campo per applicazioni automotive automotive e Controller Area Network e Controller Area Network Adriano Valenzano (e-mail: [email protected]) IEIIT/CNR – Istituto di Elettronica e di Ingegneria dell’Informazione e delle Telecomunicazioni – Politecnico di Torino

Upload: others

Post on 05-Jul-2020

5 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Reti di campo per applicazioni automotive e Controller ...docenti.etec.polimi.it/IND32/Didattica/AzionamentixAutomazione/file… · A. Valenzano - Comunicazioni Embedded e Controller

Con

sigl

io N

azio

nale

del

le R

icer

che

–Is

titut

o IE

IIT

–T

orin

oAutomotive Electronics: sistemi elettronici distribuiti e comunicazione via bus

Politecnico di Milano, 17-19 Maggio 2004

A. Valenzano - Comunicazioni Embedded e Controller Area Network / 1

Reti di campo per applicazioni Reti di campo per applicazioni automotiveautomotivee Controller Area Network e Controller Area Network

Adriano Valenzano

(e-mail: [email protected])

IEIIT/CNR – Istituto di Elettronica e di Ingegneria dell’Informazione e delle Telecomunicazioni – Politecnico di Torino

Page 2: Reti di campo per applicazioni automotive e Controller ...docenti.etec.polimi.it/IND32/Didattica/AzionamentixAutomazione/file… · A. Valenzano - Comunicazioni Embedded e Controller

Con

sigl

io N

azio

nale

del

le R

icer

che

–Is

titut

o IE

IIT

–T

orin

oAutomotive Electronics: sistemi elettronici distribuiti e comunicazione via bus

Politecnico di Milano, 17-19 Maggio 2004

A. Valenzano - Comunicazioni Embedded e Controller Area Network / 2

Sommario

• Reti embedded per applicazioni automotive– topologie– priorità dei messaggi– accesso al mezzo trasmissivo

• Controller Area Network (CAN)– caratteristiche– evoluzione storica– livello fisico– livello data-link– tipologie di componenti

Page 3: Reti di campo per applicazioni automotive e Controller ...docenti.etec.polimi.it/IND32/Didattica/AzionamentixAutomazione/file… · A. Valenzano - Comunicazioni Embedded e Controller

Con

sigl

io N

azio

nale

del

le R

icer

che

–Is

titut

o IE

IIT

–T

orin

oAutomotive Electronics: sistemi elettronici distribuiti e comunicazione via bus

Politecnico di Milano, 17-19 Maggio 2004

A. Valenzano - Comunicazioni Embedded e Controller Area Network / 3

Cablaggi senza fieldbus

Controllomotore

Controllotrasmissione

SospensioniattiveABS

Cruscotto

Luci Regol.sedili

Contr.finestr.Condiz. Airbag Accens.

Page 4: Reti di campo per applicazioni automotive e Controller ...docenti.etec.polimi.it/IND32/Didattica/AzionamentixAutomazione/file… · A. Valenzano - Comunicazioni Embedded e Controller

Con

sigl

io N

azio

nale

del

le R

icer

che

–Is

titut

o IE

IIT

–T

orin

oAutomotive Electronics: sistemi elettronici distribuiti e comunicazione via bus

Politecnico di Milano, 17-19 Maggio 2004

A. Valenzano - Comunicazioni Embedded e Controller Area Network / 4

Cablaggi con fieldbus

Controllomotore

Controllotrasmissione

SospensioniattiveABS

real-time / high speed

Cruscottonon real-time / low speed

Regol.sedili

Contr.finestr.Luci Condiz. Airbag Accens.

Page 5: Reti di campo per applicazioni automotive e Controller ...docenti.etec.polimi.it/IND32/Didattica/AzionamentixAutomazione/file… · A. Valenzano - Comunicazioni Embedded e Controller

Con

sigl

io N

azio

nale

del

le R

icer

che

–Is

titut

o IE

IIT

–T

orin

oAutomotive Electronics: sistemi elettronici distribuiti e comunicazione via bus

Politecnico di Milano, 17-19 Maggio 2004

A. Valenzano - Comunicazioni Embedded e Controller Area Network / 5

Topologie di rete

Page 6: Reti di campo per applicazioni automotive e Controller ...docenti.etec.polimi.it/IND32/Didattica/AzionamentixAutomazione/file… · A. Valenzano - Comunicazioni Embedded e Controller

Con

sigl

io N

azio

nale

del

le R

icer

che

–Is

titut

o IE

IIT

–T

orin

oAutomotive Electronics: sistemi elettronici distribuiti e comunicazione via bus

Politecnico di Milano, 17-19 Maggio 2004

A. Valenzano - Comunicazioni Embedded e Controller Area Network / 6

Bus

• Collegamento multipoint.• Adatta per installazioni “lineari” ed estese.• Flessibile (numerose opzioni per i protocolli).• La rottura del cavo partiziona la rete.• Poco adatta per le fibre ottiche.

Page 7: Reti di campo per applicazioni automotive e Controller ...docenti.etec.polimi.it/IND32/Didattica/AzionamentixAutomazione/file… · A. Valenzano - Comunicazioni Embedded e Controller

Con

sigl

io N

azio

nale

del

le R

icer

che

–Is

titut

o IE

IIT

–T

orin

oAutomotive Electronics: sistemi elettronici distribuiti e comunicazione via bus

Politecnico di Milano, 17-19 Maggio 2004

A. Valenzano - Comunicazioni Embedded e Controller Area Network / 7

Star

• Collegamenti point-to-point.• Può emulare il bus.• Guasti facili da individuare ed isolare.• Adatta per le fibre ottiche.• Il guasto del nodo centrale può bloccare la rete.• Meno flessibile del bus.

Page 8: Reti di campo per applicazioni automotive e Controller ...docenti.etec.polimi.it/IND32/Didattica/AzionamentixAutomazione/file… · A. Valenzano - Comunicazioni Embedded e Controller

Con

sigl

io N

azio

nale

del

le R

icer

che

–Is

titut

o IE

IIT

–T

orin

oAutomotive Electronics: sistemi elettronici distribuiti e comunicazione via bus

Politecnico di Milano, 17-19 Maggio 2004

A. Valenzano - Comunicazioni Embedded e Controller Area Network / 8

Ring

• Collegamenti point-to-point.• Ogni nodo agisce da ripetitore.• Richiede switch di bypass per tollerare i guasti.• Adatta per fibre ottiche.• Nessuna “contesa” sul mezzo trasmissivo.

Page 9: Reti di campo per applicazioni automotive e Controller ...docenti.etec.polimi.it/IND32/Didattica/AzionamentixAutomazione/file… · A. Valenzano - Comunicazioni Embedded e Controller

Con

sigl

io N

azio

nale

del

le R

icer

che

–Is

titut

o IE

IIT

–T

orin

oAutomotive Electronics: sistemi elettronici distribuiti e comunicazione via bus

Politecnico di Milano, 17-19 Maggio 2004

A. Valenzano - Comunicazioni Embedded e Controller Area Network / 9

Modelli di comunicazione

Page 10: Reti di campo per applicazioni automotive e Controller ...docenti.etec.polimi.it/IND32/Didattica/AzionamentixAutomazione/file… · A. Valenzano - Comunicazioni Embedded e Controller

Con

sigl

io N

azio

nale

del

le R

icer

che

–Is

titut

o IE

IIT

–T

orin

oAutomotive Electronics: sistemi elettronici distribuiti e comunicazione via bus

Politecnico di Milano, 17-19 Maggio 2004

A. Valenzano - Comunicazioni Embedded e Controller Area Network / 10

Modello client-serverLa comunicazione è di tipo one-to-one.

nodo servernodo client sistema di comunicazioneservice.request

service.indication

service.response

service.confirmation

Page 11: Reti di campo per applicazioni automotive e Controller ...docenti.etec.polimi.it/IND32/Didattica/AzionamentixAutomazione/file… · A. Valenzano - Comunicazioni Embedded e Controller

Con

sigl

io N

azio

nale

del

le R

icer

che

–Is

titut

o IE

IIT

–T

orin

oAutomotive Electronics: sistemi elettronici distribuiti e comunicazione via bus

Politecnico di Milano, 17-19 Maggio 2004

A. Valenzano - Comunicazioni Embedded e Controller Area Network / 11

Modello produttore-consumatoreLa comunicazione è di tipo one-to-many.nodo produttore sistema di

comunicazionenodi consumatori

service.request

service.indication

Page 12: Reti di campo per applicazioni automotive e Controller ...docenti.etec.polimi.it/IND32/Didattica/AzionamentixAutomazione/file… · A. Valenzano - Comunicazioni Embedded e Controller

Con

sigl

io N

azio

nale

del

le R

icer

che

–Is

titut

o IE

IIT

–T

orin

oAutomotive Electronics: sistemi elettronici distribuiti e comunicazione via bus

Politecnico di Milano, 17-19 Maggio 2004

A. Valenzano - Comunicazioni Embedded e Controller Area Network / 12

Priorità dei messaggi

Page 13: Reti di campo per applicazioni automotive e Controller ...docenti.etec.polimi.it/IND32/Didattica/AzionamentixAutomazione/file… · A. Valenzano - Comunicazioni Embedded e Controller

Con

sigl

io N

azio

nale

del

le R

icer

che

–Is

titut

o IE

IIT

–T

orin

oAutomotive Electronics: sistemi elettronici distribuiti e comunicazione via bus

Politecnico di Milano, 17-19 Maggio 2004

A. Valenzano - Comunicazioni Embedded e Controller Area Network / 13

Tipi di prioritàLocale

– Ogni nodo trasmette il messaggio a maggior priorità quando ottiene l’accesso al mezzo.

• Schemi di priorità di tipo “round-robin”.• Si possono assegnare priorità in modo dinamico.

Globale– Stabilire i “turni” di accesso al mezzo. Schemi:

• di tipo “round-robin”;• legati alla priorità intrinseca dei nodi;• legati alla priorità dei messaggi da trasmettere.

Problema: trovare un compromesso ragionevole per ridurre la latenza dei messaggi ad alta priorità e garantire lafairness per quelli a bassa priorità.

Page 14: Reti di campo per applicazioni automotive e Controller ...docenti.etec.polimi.it/IND32/Didattica/AzionamentixAutomazione/file… · A. Valenzano - Comunicazioni Embedded e Controller

Con

sigl

io N

azio

nale

del

le R

icer

che

–Is

titut

o IE

IIT

–T

orin

oAutomotive Electronics: sistemi elettronici distribuiti e comunicazione via bus

Politecnico di Milano, 17-19 Maggio 2004

A. Valenzano - Comunicazioni Embedded e Controller Area Network / 14

Come coordinare l’accesso al mezzo trasmissivo?

Page 15: Reti di campo per applicazioni automotive e Controller ...docenti.etec.polimi.it/IND32/Didattica/AzionamentixAutomazione/file… · A. Valenzano - Comunicazioni Embedded e Controller

Con

sigl

io N

azio

nale

del

le R

icer

che

–Is

titut

o IE

IIT

–T

orin

oAutomotive Electronics: sistemi elettronici distribuiti e comunicazione via bus

Politecnico di Milano, 17-19 Maggio 2004

A. Valenzano - Comunicazioni Embedded e Controller Area Network / 15

Uso di un bus master (polling)Il master interroga gli “slave” con messaggi di richiesta e attende le risposte.Problemi:

– Guasti del master.– Guasti degli slave (e “debolezza” del meccanismo

di timeout per risposte tardive).master

ric. slave i ric. slave jslave i

risp. slave islave j

risp. slave j

Page 16: Reti di campo per applicazioni automotive e Controller ...docenti.etec.polimi.it/IND32/Didattica/AzionamentixAutomazione/file… · A. Valenzano - Comunicazioni Embedded e Controller

Con

sigl

io N

azio

nale

del

le R

icer

che

–Is

titut

o IE

IIT

–T

orin

oAutomotive Electronics: sistemi elettronici distribuiti e comunicazione via bus

Politecnico di Milano, 17-19 Maggio 2004

A. Valenzano - Comunicazioni Embedded e Controller Area Network / 16

Polling

Vantaggi:– Semplice da implementare.– Molto conosciuto.– Latenze limitate per applicazioni real-time.

Svantaggi:– Il master è un “single point of failure”.– Spreco di banda per le interrogazioni.– Struttura della rete definita all’installazione (rigidità).– Priorità dei messaggi garantita prevalentemente a

livello locale (si possono usare anche tecniche di bilanciamento del carico centralizzate).

Page 17: Reti di campo per applicazioni automotive e Controller ...docenti.etec.polimi.it/IND32/Didattica/AzionamentixAutomazione/file… · A. Valenzano - Comunicazioni Embedded e Controller

Con

sigl

io N

azio

nale

del

le R

icer

che

–Is

titut

o IE

IIT

–T

orin

oAutomotive Electronics: sistemi elettronici distribuiti e comunicazione via bus

Politecnico di Milano, 17-19 Maggio 2004

A. Valenzano - Comunicazioni Embedded e Controller Area Network / 17

Uso di temporizzazioni (TDMA)

• Il master invia un segnale di tempo (clock tick).• I nodi individuano l’istante in cui possono accedere al

bus.• Si possono avere protocolli che riservano “intervalli”

temporali ai nodi (time slice o time slot).master

clock tick clock tick

mess. nodo inodo i

nodo jmess. nodo j

start

Page 18: Reti di campo per applicazioni automotive e Controller ...docenti.etec.polimi.it/IND32/Didattica/AzionamentixAutomazione/file… · A. Valenzano - Comunicazioni Embedded e Controller

Con

sigl

io N

azio

nale

del

le R

icer

che

–Is

titut

o IE

IIT

–T

orin

oAutomotive Electronics: sistemi elettronici distribuiti e comunicazione via bus

Politecnico di Milano, 17-19 Maggio 2004

A. Valenzano - Comunicazioni Embedded e Controller Area Network / 18

TDMA( time division multiplexed access)Vantaggi:

– Semplice da implementare.– Tempi di risposta deterministici.– Nessuno spreco di banda per i messaggi di

richiesta.Svantaggi:

– Il master è un “single point of failure”.– Spreco di banda per i nodi idle.– Richiede elevata stabilità dei clock.– Priorità dei messaggi garantita prevalentemente a

livello locale (si possono usare anche tecniche di bilanciamento del carico centralizzate).

Nota: esistono schemi TDMA a lunghezza variabile che “troncano” gli slot inutilizzati per risparmiare banda.

Page 19: Reti di campo per applicazioni automotive e Controller ...docenti.etec.polimi.it/IND32/Didattica/AzionamentixAutomazione/file… · A. Valenzano - Comunicazioni Embedded e Controller

Con

sigl

io N

azio

nale

del

le R

icer

che

–Is

titut

o IE

IIT

–T

orin

oAutomotive Electronics: sistemi elettronici distribuiti e comunicazione via bus

Politecnico di Milano, 17-19 Maggio 2004

A. Valenzano - Comunicazioni Embedded e Controller Area Network / 19

CSMA (carrier sense multiple access)• Quando il canale è libero si inizia la trasmissione sperando

di evitare “collisioni”.• Se si riceve un ack tutto è ok, ma la risposta può anche non

arrivare mai.• Adatto a trasmissioni satellitari e sistemi privi di meccanismi

di collision detection.nodo i

collisione

tx

txX

tx

trasmissioni oknodo j

tx

Page 20: Reti di campo per applicazioni automotive e Controller ...docenti.etec.polimi.it/IND32/Didattica/AzionamentixAutomazione/file… · A. Valenzano - Comunicazioni Embedded e Controller

Con

sigl

io N

azio

nale

del

le R

icer

che

–Is

titut

o IE

IIT

–T

orin

oAutomotive Electronics: sistemi elettronici distribuiti e comunicazione via bus

Politecnico di Milano, 17-19 Maggio 2004

A. Valenzano - Comunicazioni Embedded e Controller Area Network / 20

CSMA/CD (collision detection)• Quando il mezzo è libero si inizia la trasmissione e si

osserva il canale (occorre h/w ad hoc).• In caso di collisione si “ritarda” la ritrasmissione per un

certo tempo (backoff time: dipende dal carico della rete).• La “finestra di vulnerabilità” è pari a circa 2 volte il

tempo di propagazione da un estremo all’altro della rete.• Esempi: Ethernet, IEEE 802.3.

tx

txX

nodo iritrasmissione

nodo j

collisione

ritrasmissione

backoff time

backoff time

Page 21: Reti di campo per applicazioni automotive e Controller ...docenti.etec.polimi.it/IND32/Didattica/AzionamentixAutomazione/file… · A. Valenzano - Comunicazioni Embedded e Controller

Con

sigl

io N

azio

nale

del

le R

icer

che

–Is

titut

o IE

IIT

–T

orin

oAutomotive Electronics: sistemi elettronici distribuiti e comunicazione via bus

Politecnico di Milano, 17-19 Maggio 2004

A. Valenzano - Comunicazioni Embedded e Controller Area Network / 21

CSMA/CDVantaggi:

– Latenze contenute per traffico di rete basso.– Inizializzazione della rete non richiesta.– Ingresso/uscita dei nodi dalla rete “on the fly”.– Possibilità di avere reti con elevato numero di nodi.– Possibili schemi di priorità globale dei messaggi.– Elevato numero di sistemi installati e buona disponibilità di

supporto.Svantaggi:

– Adatta a traffico aperiodico. Non ideali per loop di controllo sincroni.

– Meccanismo CD di tipo analogico non sempre pratico da realizzare.

– Latenza del singolo messaggio non limitata a priori.– Bassa efficienza per carichi di rete elevati.

Page 22: Reti di campo per applicazioni automotive e Controller ...docenti.etec.polimi.it/IND32/Didattica/AzionamentixAutomazione/file… · A. Valenzano - Comunicazioni Embedded e Controller

Con

sigl

io N

azio

nale

del

le R

icer

che

–Is

titut

o IE

IIT

–T

orin

oAutomotive Electronics: sistemi elettronici distribuiti e comunicazione via bus

Politecnico di Milano, 17-19 Maggio 2004

A. Valenzano - Comunicazioni Embedded e Controller Area Network / 22

Passaggio esplicito di token• Solo il possessore del token può trasmettere. • Possibili schemi master-slave (lo slave “restituisce” il

token al master).• Gestione complessa (perdita o duplicazione del token,

inizializzazione ecc).• Occorre “inviare” messaggi di token anche in assenza

di dati da trasmettere.

nodo 1T (3)tx

nodo 1T (1)

nodo 3T (2)tx

Page 23: Reti di campo per applicazioni automotive e Controller ...docenti.etec.polimi.it/IND32/Didattica/AzionamentixAutomazione/file… · A. Valenzano - Comunicazioni Embedded e Controller

Con

sigl

io N

azio

nale

del

le R

icer

che

–Is

titut

o IE

IIT

–T

orin

oAutomotive Electronics: sistemi elettronici distribuiti e comunicazione via bus

Politecnico di Milano, 17-19 Maggio 2004

A. Valenzano - Comunicazioni Embedded e Controller Area Network / 23

Token bus• L’anello è “virtuale” e gestito a livello logico (parte in h/w e

parte in s/w).• Il “token” è rappresentato da un messaggio.• Solo il possessore del token può trasmettere.• Esempi: IEEE 802.4, MAP, Profibus.

token

Page 24: Reti di campo per applicazioni automotive e Controller ...docenti.etec.polimi.it/IND32/Didattica/AzionamentixAutomazione/file… · A. Valenzano - Comunicazioni Embedded e Controller

Con

sigl

io N

azio

nale

del

le R

icer

che

–Is

titut

o IE

IIT

–T

orin

oAutomotive Electronics: sistemi elettronici distribuiti e comunicazione via bus

Politecnico di Milano, 17-19 Maggio 2004

A. Valenzano - Comunicazioni Embedded e Controller Area Network / 24

Token busVantaggi:

– Limite superiore per le latenze (controlli real-time).– Throughput elevato anche per alti carichi della rete.– Riconfigurazione “on the fly”.

Svantaggi:

– Latenze per il passaggio del token per bassi carichi della rete.

– Priorità dei messaggi a livello locale.– Lunghi tempi di riconfigurazione della rete .– Overhead per l’inizializzazione dell’anello, la gestione di

eccezioni quali perdita e duplicazione del token ecc.– Collisioni durante l’inizializzazione e la riconfigurazione.– Protocollo MAC complicato.

Page 25: Reti di campo per applicazioni automotive e Controller ...docenti.etec.polimi.it/IND32/Didattica/AzionamentixAutomazione/file… · A. Valenzano - Comunicazioni Embedded e Controller

Con

sigl

io N

azio

nale

del

le R

icer

che

–Is

titut

o IE

IIT

–T

orin

oAutomotive Electronics: sistemi elettronici distribuiti e comunicazione via bus

Politecnico di Milano, 17-19 Maggio 2004

A. Valenzano - Comunicazioni Embedded e Controller Area Network / 25

Token ring• L’anello è “fisico” e costituito da collegamenti point-to-point.• Il segnale di “token” è passato da un nodo all’altro in modo

circolare.• Il protocollo di trasmissione è orientato al bit anziché al

messaggio (i bit vengono “shiftati” attraverso l’anello).• Esempi: IEEE 802.5, FDDI.

token

Page 26: Reti di campo per applicazioni automotive e Controller ...docenti.etec.polimi.it/IND32/Didattica/AzionamentixAutomazione/file… · A. Valenzano - Comunicazioni Embedded e Controller

Con

sigl

io N

azio

nale

del

le R

icer

che

–Is

titut

o IE

IIT

–T

orin

oAutomotive Electronics: sistemi elettronici distribuiti e comunicazione via bus

Politecnico di Milano, 17-19 Maggio 2004

A. Valenzano - Comunicazioni Embedded e Controller Area Network / 26

Token ringVantaggi:

– Limite superiore per le latenze (controlli real-time).– Throughput elevato anche per alti carichi della rete.– Priorità dei messaggi a livello locale e globale.– Riconfigurazione “on the fly” (richiede by-pass h/w!).– Adatto per fibra ottica.– Buon livello dei segnali (ogni nodo è un repeater).

Svantaggi:– Latenze per il passaggio del token per bassi carichi della rete

(meglio di token bus).– Monitoraggio centralizzato (definito all’inizializzazione).– Overhead per la gestione di eccezioni quali perdita e

duplicazione del token ecc.– Ritardi di propagazione dipendenti dal numero di nodi.– Blocco della rete in caso di interruzione dell’anello.

Page 27: Reti di campo per applicazioni automotive e Controller ...docenti.etec.polimi.it/IND32/Didattica/AzionamentixAutomazione/file… · A. Valenzano - Comunicazioni Embedded e Controller

Con

sigl

io N

azio

nale

del

le R

icer

che

–Is

titut

o IE

IIT

–T

orin

oAutomotive Electronics: sistemi elettronici distribuiti e comunicazione via bus

Politecnico di Milano, 17-19 Maggio 2004

A. Valenzano - Comunicazioni Embedded e Controller Area Network / 27

Passaggio implicito di tokenSi utilizza la durata del tempo di attesa come “token” nel dominio del tempo.• time slice (il tempo di attesa è lungo un messaggio intero)

nodo 1 tx1nodo 2nodo 3

tx2

tx3

tx1tx2

tx32 3 1 2 31

• time slot (il tempo di attesa è il più breve possibile: es. 2-3 bit)nodo 1 tx1nodo 2nodo 3

tx3

tx1tx2

tx32 3 1 2 31

Page 28: Reti di campo per applicazioni automotive e Controller ...docenti.etec.polimi.it/IND32/Didattica/AzionamentixAutomazione/file… · A. Valenzano - Comunicazioni Embedded e Controller

Con

sigl

io N

azio

nale

del

le R

icer

che

–Is

titut

o IE

IIT

–T

orin

oAutomotive Electronics: sistemi elettronici distribuiti e comunicazione via bus

Politecnico di Milano, 17-19 Maggio 2004

A. Valenzano - Comunicazioni Embedded e Controller Area Network / 28

Collision resolution (binary countdown)

• Permette la risoluzione deterministica delle collisioni.• Richiede un meccanismo di “dominanza” dei bit sul

canale• Esempi: CAN, SAE J1850

msg 0

msg 4

msg 7

msg 6

msg 5

msg 2sono trasmessi imess. a più alta priorità

collisioninodo 1

nodo 2

nodo 3

busmsg 0 msg 2

Page 29: Reti di campo per applicazioni automotive e Controller ...docenti.etec.polimi.it/IND32/Didattica/AzionamentixAutomazione/file… · A. Valenzano - Comunicazioni Embedded e Controller

Con

sigl

io N

azio

nale

del

le R

icer

che

–Is

titut

o IE

IIT

–T

orin

oAutomotive Electronics: sistemi elettronici distribuiti e comunicazione via bus

Politecnico di Milano, 17-19 Maggio 2004

A. Valenzano - Comunicazioni Embedded e Controller Area Network / 29

Binary countdown

Vantaggi:– Throughput elevato per bassi carichi della rete.– Priorità locale e globale dei messaggi.– L’arbitraggio fa parte del frame (overhead

contenuto).Svantaggi:

– Dimensione della rete limitata dai ritardi di propagazione.

– Possibile comportamento unfair (se la priorità è associata al nodo).

– Latenze elevate per i messaggi a bassa priorità.

Page 30: Reti di campo per applicazioni automotive e Controller ...docenti.etec.polimi.it/IND32/Didattica/AzionamentixAutomazione/file… · A. Valenzano - Comunicazioni Embedded e Controller

Con

sigl

io N

azio

nale

del

le R

icer

che

–Is

titut

o IE

IIT

–T

orin

oAutomotive Electronics: sistemi elettronici distribuiti e comunicazione via bus

Politecnico di Milano, 17-19 Maggio 2004

A. Valenzano - Comunicazioni Embedded e Controller Area Network / 30

Codifica dei bit e CSMASvantaggiVantaggiTipo

• latenze non limitate superiormente

• non limitati dal rapporto velocità di trasmissione/ lunghezza della rete

Protocolli a collisione

• richiedono bit aggiuntivi• lunghezza del messaggio

non deterministica

• consumano meno banda degli schemi self-clocking“bit-stuffed”

• ottima efficienza

• più semplici

• richiedono mezzi trasmiss. compatibili

• limitati dal rapporto velocità di trasmissione/ lunghezza della rete

Protocolli “binarycountdown”

• consumano banda“self-clocking”

tecnichedi codifica dei bit

Page 31: Reti di campo per applicazioni automotive e Controller ...docenti.etec.polimi.it/IND32/Didattica/AzionamentixAutomazione/file… · A. Valenzano - Comunicazioni Embedded e Controller

Con

sigl

io N

azio

nale

del

le R

icer

che

–Is

titut

o IE

IIT

–T

orin

oAutomotive Electronics: sistemi elettronici distribuiti e comunicazione via bus

Politecnico di Milano, 17-19 Maggio 2004

A. Valenzano - Comunicazioni Embedded e Controller Area Network / 31

Sistemi a tokenSvantaggiVantaggi

• consumo di banda per il passaggio del token

• jitter (contenuti)

• non occorrono oscillatori precisi in tutti i nodi

• non limitati dal rapporto velocità di trasmissione/ lunghezza della rete

Token esplicito

• tempi di risposta deterministici

• Jitter assai contenuti

• intervalli di tempo lunghi causano spreco di banda (sliceinutilizzate)

• occorrono un oscillatore preciso in ogni nodo

• limitati dal rapporto velocità di trasmissione/ lunghezza della rete

Token implicito (TDMA)

Page 32: Reti di campo per applicazioni automotive e Controller ...docenti.etec.polimi.it/IND32/Didattica/AzionamentixAutomazione/file… · A. Valenzano - Comunicazioni Embedded e Controller

Con

sigl

io N

azio

nale

del

le R

icer

che

–Is

titut

o IE

IIT

–T

orin

oAutomotive Electronics: sistemi elettronici distribuiti e comunicazione via bus

Politecnico di Milano, 17-19 Maggio 2004

A. Valenzano - Comunicazioni Embedded e Controller Area Network / 32

Priorità e fairness

possibile (rotazione degli slot)

sì, con passaggio molto rapido del token

semplice da realizzare

Tokenimplicito

Tokenesplicito

BinaryCountdown

CSMA

sì, con passaggio molto rapido del token (tokenring). Più difficile in token bus.

automaticadifficile da realizzare

priorità globale

possibile se si emula un altro protocollo (es. polling)

semplice da realizzare

automatica (a livello di nodo)

difficile da realizzare (emulazione di altro protocollo)

fairnessglobale

semplice da realizzare

semplice da realizzarepriorità locale

Page 33: Reti di campo per applicazioni automotive e Controller ...docenti.etec.polimi.it/IND32/Didattica/AzionamentixAutomazione/file… · A. Valenzano - Comunicazioni Embedded e Controller

Con

sigl

io N

azio

nale

del

le R

icer

che

–Is

titut

o IE

IIT

–T

orin

oAutomotive Electronics: sistemi elettronici distribuiti e comunicazione via bus

Politecnico di Milano, 17-19 Maggio 2004

A. Valenzano - Comunicazioni Embedded e Controller Area Network / 33

Confronto conclusivo• Sistemi a collisioni

– Elevato numero di possibili trasmettitori.– Basso numero di trasmettitori attivi.– Overhead di arbitraggio proporzionale al carico di rete.

• Sistemi token-based, TDMA e polling– Numero modesto di nodi totali.– Gestione agevole di carichi di rete elevati.– Overhead di arbitraggio costante.

• Sistemi basati su binary countdown– Numero di tipi diversi di messaggi piuttosto elevato.– Overhead di arbitraggio costante.– Priorità globale (senza fairness).

Page 34: Reti di campo per applicazioni automotive e Controller ...docenti.etec.polimi.it/IND32/Didattica/AzionamentixAutomazione/file… · A. Valenzano - Comunicazioni Embedded e Controller

Con

sigl

io N

azio

nale

del

le R

icer

che

–Is

titut

o IE

IIT

–T

orin

oAutomotive Electronics: sistemi elettronici distribuiti e comunicazione via bus

Politecnico di Milano, 17-19 Maggio 2004

A. Valenzano - Comunicazioni Embedded e Controller Area Network / 34

Emulazione di protocolli su bus

CSMA/CD CSMA/DCR

Token bus TDMA

Polling(master/slave)

Page 35: Reti di campo per applicazioni automotive e Controller ...docenti.etec.polimi.it/IND32/Didattica/AzionamentixAutomazione/file… · A. Valenzano - Comunicazioni Embedded e Controller

Con

sigl

io N

azio

nale

del

le R

icer

che

–Is

titut

o IE

IIT

–T

orin

oAutomotive Electronics: sistemi elettronici distribuiti e comunicazione via bus

Politecnico di Milano, 17-19 Maggio 2004

A. Valenzano - Comunicazioni Embedded e Controller Area Network / 35

Controller Area Network

Page 36: Reti di campo per applicazioni automotive e Controller ...docenti.etec.polimi.it/IND32/Didattica/AzionamentixAutomazione/file… · A. Valenzano - Comunicazioni Embedded e Controller

Con

sigl

io N

azio

nale

del

le R

icer

che

–Is

titut

o IE

IIT

–T

orin

oAutomotive Electronics: sistemi elettronici distribuiti e comunicazione via bus

Politecnico di Milano, 17-19 Maggio 2004

A. Valenzano - Comunicazioni Embedded e Controller Area Network / 36

Classi di reti SAE

> 10 $

tra 5$ e 10$

< 4$

Costo tipico per nodo

Controlli critici real-time

Controlli e comunicazioni non-real time

Attuatori e sensori intelligenti (event-driven)

Applicazioni

1 Mb/s

125 Kb/s

10 Kb/s

Data rate (max)

EsempiClasse

ISO 11898-2 (high speed CAN)

C

SAE J1850, J2411, ISO 11898/3 (f.t. CAN)

B

LINA

Page 37: Reti di campo per applicazioni automotive e Controller ...docenti.etec.polimi.it/IND32/Didattica/AzionamentixAutomazione/file… · A. Valenzano - Comunicazioni Embedded e Controller

Con

sigl

io N

azio

nale

del

le R

icer

che

–Is

titut

o IE

IIT

–T

orin

oAutomotive Electronics: sistemi elettronici distribuiti e comunicazione via bus

Politecnico di Milano, 17-19 Maggio 2004

A. Valenzano - Comunicazioni Embedded e Controller Area Network / 37

Struttura di una rete CAN

CAN H

CAN L

120Ω

CAN transceiver

CAN controller

host controller

applicazione (es. ABS)

nodo 1applicazione

(es. contr. motore )

nodo n

µcontroller

CAN transceiver 120Ω

Page 38: Reti di campo per applicazioni automotive e Controller ...docenti.etec.polimi.it/IND32/Didattica/AzionamentixAutomazione/file… · A. Valenzano - Comunicazioni Embedded e Controller

Con

sigl

io N

azio

nale

del

le R

icer

che

–Is

titut

o IE

IIT

–T

orin

oAutomotive Electronics: sistemi elettronici distribuiti e comunicazione via bus

Politecnico di Milano, 17-19 Maggio 2004

A. Valenzano - Comunicazioni Embedded e Controller Area Network / 38

Caratteristiche di CAN (I)

> 150.000.000 a fine 1999 (> 200.000.000 nel settore automotive negli ultimi tre anni)

Numero di nodi installati

2 Km @ 25 Kb/s (1 repeater)Lunghezza bus (max)1 Mb/sTransfer rate (max)busTopologiaMultimasterTipo di sistema

sviluppato da Bosch e Intel per applicazioni Automotive. Norma ISO 11898 dal 1993.

Origine

Page 39: Reti di campo per applicazioni automotive e Controller ...docenti.etec.polimi.it/IND32/Didattica/AzionamentixAutomazione/file… · A. Valenzano - Comunicazioni Embedded e Controller

Con

sigl

io N

azio

nale

del

le R

icer

che

–Is

titut

o IE

IIT

–T

orin

oAutomotive Electronics: sistemi elettronici distribuiti e comunicazione via bus

Politecnico di Milano, 17-19 Maggio 2004

A. Valenzano - Comunicazioni Embedded e Controller Area Network / 39

Caratteristiche di CAN (II)

automotive (auto, bus e v. indust.), industrial & building automation, tessile, alimentare, medicale, meccanico…

Settori applicativi

2048 (identificatori 11 bit)2048 * 218 (identif. estesi a 29 bit)

Priorità

Da 0% (0 byte) a 53% (8 byte)Efficienza pacchetto dati

Da 0 a 8 byte di datiLunghezza messaggi

Orientato agli oggetti (modello produttore-consumatore)

Indirizzamento

CSMA/DCR (arbitraggio non distruttivo)Tecnica di accesso al mezzo trasmissivo

Page 40: Reti di campo per applicazioni automotive e Controller ...docenti.etec.polimi.it/IND32/Didattica/AzionamentixAutomazione/file… · A. Valenzano - Comunicazioni Embedded e Controller

Con

sigl

io N

azio

nale

del

le R

icer

che

–Is

titut

o IE

IIT

–T

orin

oAutomotive Electronics: sistemi elettronici distribuiti e comunicazione via bus

Politecnico di Milano, 17-19 Maggio 2004

A. Valenzano - Comunicazioni Embedded e Controller Area Network / 40

Evoluzione di CAN (I)• 1980: Bosch inizia a studiare un bus seriale per

applicazioni automotive.• 1986: il nuovo protocollo (Serial Controller Area

Network) viene presentato al congresso SAE a Detroit.• 1987: Philips e Intel iniziano a produrre i primi chip

(basic e full CAN rispettivamente).• 1992: Nasce il “CAN in Automation” (CIA) user group

per la definizione di un livello applicativo standard.• 1992: Honeywell e Allen-Bradley iniziano un progetto

congiunto basato su CAN (il progetto, abbandonato, porterà alla nascita di SDS e DeviceNet).

Page 41: Reti di campo per applicazioni automotive e Controller ...docenti.etec.polimi.it/IND32/Didattica/AzionamentixAutomazione/file… · A. Valenzano - Comunicazioni Embedded e Controller

Con

sigl

io N

azio

nale

del

le R

icer

che

–Is

titut

o IE

IIT

–T

orin

oAutomotive Electronics: sistemi elettronici distribuiti e comunicazione via bus

Politecnico di Milano, 17-19 Maggio 2004

A. Valenzano - Comunicazioni Embedded e Controller Area Network / 41

Evoluzione di CAN (II)• 1993: la specifica Bosh 2.0 viene approvata come

standard internazionale ISO 11898.• 1995: 15 principali produttori di seminconduttori (tra

cui Siemens, Motorola e Nec) hanno già prodotto milioni di chip utilizzati da Mercedes-Benz, Volvo, Saab, Volkswagen, BMW, Renault e Fiat.

• 1995: un addendum allo standard ISO introduce il formato esteso degli identificatori.

• 2003: l’ISO inizia la revisione e l’aggiornamento delle specifiche CAN.

Page 42: Reti di campo per applicazioni automotive e Controller ...docenti.etec.polimi.it/IND32/Didattica/AzionamentixAutomazione/file… · A. Valenzano - Comunicazioni Embedded e Controller

Con

sigl

io N

azio

nale

del

le R

icer

che

–Is

titut

o IE

IIT

–T

orin

oAutomotive Electronics: sistemi elettronici distribuiti e comunicazione via bus

Politecnico di Milano, 17-19 Maggio 2004

A. Valenzano - Comunicazioni Embedded e Controller Area Network / 42

Profilo di comunicazione

Physical ISO 11898-1/2/31Data-link ISO 11898-12Network Not used3Trasport Not used4Session Not used5

Presentation Not used6

ApplicationProtocolli proprietari,CAL, CANOpen, CAN Kingdom, Devicenet

7

Applicazioni

Page 43: Reti di campo per applicazioni automotive e Controller ...docenti.etec.polimi.it/IND32/Didattica/AzionamentixAutomazione/file… · A. Valenzano - Comunicazioni Embedded e Controller

Con

sigl

io N

azio

nale

del

le R

icer

che

–Is

titut

o IE

IIT

–T

orin

oAutomotive Electronics: sistemi elettronici distribuiti e comunicazione via bus

Politecnico di Milano, 17-19 Maggio 2004

A. Valenzano - Comunicazioni Embedded e Controller Area Network / 43

Livello fisico

Page 44: Reti di campo per applicazioni automotive e Controller ...docenti.etec.polimi.it/IND32/Didattica/AzionamentixAutomazione/file… · A. Valenzano - Comunicazioni Embedded e Controller

Con

sigl

io N

azio

nale

del

le R

icer

che

–Is

titut

o IE

IIT

–T

orin

oAutomotive Electronics: sistemi elettronici distribuiti e comunicazione via bus

Politecnico di Milano, 17-19 Maggio 2004

A. Valenzano - Comunicazioni Embedded e Controller Area Network / 44

Livello fisicoDefinisce:

• Mezzo trasmissivo, interfacce (connettori) e medium access unit (transceiver).

• Livello dei segnali.• Bit representation, timing e synchronization.

Le specifiche CAN prevedono che:– Sia garantita la “dominanza” dei bit sul canale.– Si adottino opportune tecniche per realizzare

l’interfaccia al mezzo e migliorare la compatibilità elettromagnetica (ad. es. non si usino trasformatori di accoppiamento).

Page 45: Reti di campo per applicazioni automotive e Controller ...docenti.etec.polimi.it/IND32/Didattica/AzionamentixAutomazione/file… · A. Valenzano - Comunicazioni Embedded e Controller

Con

sigl

io N

azio

nale

del

le R

icer

che

–Is

titut

o IE

IIT

–T

orin

oAutomotive Electronics: sistemi elettronici distribuiti e comunicazione via bus

Politecnico di Milano, 17-19 Maggio 2004

A. Valenzano - Comunicazioni Embedded e Controller Area Network / 45

Livello fisico ISO: possibili alternative

Optical CAN Transceiver

Fibra otticaTxD

RxD

Differential CANtransceiver

Twisted pair

120 Ω

120 Ω

TxD

RxD

TxD

CAN controller

RxD

Page 46: Reti di campo per applicazioni automotive e Controller ...docenti.etec.polimi.it/IND32/Didattica/AzionamentixAutomazione/file… · A. Valenzano - Comunicazioni Embedded e Controller

Con

sigl

io N

azio

nale

del

le R

icer

che

–Is

titut

o IE

IIT

–T

orin

oAutomotive Electronics: sistemi elettronici distribuiti e comunicazione via bus

Politecnico di Milano, 17-19 Maggio 2004

A. Valenzano - Comunicazioni Embedded e Controller Area Network / 46

Livello fisico SAE (J2411)

Single-wireCAN transceiver

TxD

RxD

TxD

CAN controller

RxD

Page 47: Reti di campo per applicazioni automotive e Controller ...docenti.etec.polimi.it/IND32/Didattica/AzionamentixAutomazione/file… · A. Valenzano - Comunicazioni Embedded e Controller

Con

sigl

io N

azio

nale

del

le R

icer

che

–Is

titut

o IE

IIT

–T

orin

oAutomotive Electronics: sistemi elettronici distribuiti e comunicazione via bus

Politecnico di Milano, 17-19 Maggio 2004

A. Valenzano - Comunicazioni Embedded e Controller Area Network / 47

Caratteristiche dei livelli fisici

Medium type

Network topology

Bus type

Max number of nodes

Max bus length

Max data rate

utp/stpunshielded single wireutp/stp

not limited to a linear structure

not limited to a linearstructure

single line (drop line max 30cm)

two-wire /single wire (f.t.)

single wiretwo wiredifferential

3232limited by electric. bus load

~ 500m2Km40m (@1 Mb/s)

125 Kb/s33,3 Kb/s (normal)83,3 kB/s (diagnostic)

1 Mb/s

ISO 11898-3(low-speed/

fault-tolerant)

SAE J2411(road vehicle)

ISO 11898-2(high speed)

Page 48: Reti di campo per applicazioni automotive e Controller ...docenti.etec.polimi.it/IND32/Didattica/AzionamentixAutomazione/file… · A. Valenzano - Comunicazioni Embedded e Controller

Con

sigl

io N

azio

nale

del

le R

icer

che

–Is

titut

o IE

IIT

–T

orin

oAutomotive Electronics: sistemi elettronici distribuiti e comunicazione via bus

Politecnico di Milano, 17-19 Maggio 2004

A. Valenzano - Comunicazioni Embedded e Controller Area Network / 48

Tecniche di codifica dei bit

Non-return tozero (NRZ) encoding

Manchester encoding

Sample bit stream(0100111)

Logical“1”

Logical“0”

Page 49: Reti di campo per applicazioni automotive e Controller ...docenti.etec.polimi.it/IND32/Didattica/AzionamentixAutomazione/file… · A. Valenzano - Comunicazioni Embedded e Controller

Con

sigl

io N

azio

nale

del

le R

icer

che

–Is

titut

o IE

IIT

–T

orin

oAutomotive Electronics: sistemi elettronici distribuiti e comunicazione via bus

Politecnico di Milano, 17-19 Maggio 2004

A. Valenzano - Comunicazioni Embedded e Controller Area Network / 49

Vantaggi e svantaggi

Codifica Manchester– richiede 2 time-slot per rappresentare un bit;– esiste sempre una transizione all’interno di ogni bit

(sincronizzazione).Codifica NRZ

– richiede un solo time slot per rappresentare un bit (efficienza);

– richiede oscillatori precisi e/o una “distanza” massima tra 2 fronti successivi (risincronizzazione).

Page 50: Reti di campo per applicazioni automotive e Controller ...docenti.etec.polimi.it/IND32/Didattica/AzionamentixAutomazione/file… · A. Valenzano - Comunicazioni Embedded e Controller

Con

sigl

io N

azio

nale

del

le R

icer

che

–Is

titut

o IE

IIT

–T

orin

oAutomotive Electronics: sistemi elettronici distribuiti e comunicazione via bus

Politecnico di Milano, 17-19 Maggio 2004

A. Valenzano - Comunicazioni Embedded e Controller Area Network / 50

Bit stuffing

• Consente la risincronizzazione del ricevitore introducendo opportuni fronti nel segnale trasmesso (l’assenza di fronti indica bus idle o errore).

• Il trasmettitore inserisce uno “stuff bit” di polarità opposta ogni n bit consecutivi uguali (5 bit in CAN).

• Il ricevitore rimuove gli “stuff bit” dallo streamricevuto (de-stuffing).

• L’efficienza della codifica si riduce in qualche misura (dipende dallo stream da trasmettere).

Page 51: Reti di campo per applicazioni automotive e Controller ...docenti.etec.polimi.it/IND32/Didattica/AzionamentixAutomazione/file… · A. Valenzano - Comunicazioni Embedded e Controller

Con

sigl

io N

azio

nale

del

le R

icer

che

–Is

titut

o IE

IIT

–T

orin

oAutomotive Electronics: sistemi elettronici distribuiti e comunicazione via bus

Politecnico di Milano, 17-19 Maggio 2004

A. Valenzano - Comunicazioni Embedded e Controller Area Network / 51

Esempio di bit stuffing

source data stream

stuffed data stream

de-stuffed data str.

Page 52: Reti di campo per applicazioni automotive e Controller ...docenti.etec.polimi.it/IND32/Didattica/AzionamentixAutomazione/file… · A. Valenzano - Comunicazioni Embedded e Controller

Con

sigl

io N

azio

nale

del

le R

icer

che

–Is

titut

o IE

IIT

–T

orin

oAutomotive Electronics: sistemi elettronici distribuiti e comunicazione via bus

Politecnico di Milano, 17-19 Maggio 2004

A. Valenzano - Comunicazioni Embedded e Controller Area Network / 52

Efficienza del bit stuffing

Nel caso peggiore viene aggiunto uno stuff bit ogni 4 bit da trasmettere:

source bit stream

stuffed bit stream

Per CAN si può dimostrare che il max numero di stuff bit (msb) inseriti dal trasmettitore in funzione del numero di byte di dato (dlc) è dato da:

msb = (34 + 8 dlc - 1) / 4 = 8 + 2 dlc

Page 53: Reti di campo per applicazioni automotive e Controller ...docenti.etec.polimi.it/IND32/Didattica/AzionamentixAutomazione/file… · A. Valenzano - Comunicazioni Embedded e Controller

Con

sigl

io N

azio

nale

del

le R

icer

che

–Is

titut

o IE

IIT

–T

orin

oAutomotive Electronics: sistemi elettronici distribuiti e comunicazione via bus

Politecnico di Milano, 17-19 Maggio 2004

A. Valenzano - Comunicazioni Embedded e Controller Area Network / 53

Stima del numero di stuff bitdata length

code estimated maximum number of existing CAN messages with:

dlc msb msb msb-1 msb-2 msb-3

0 8 0 0 1 13 1 10 0 0 0 30 2 12 0 0 0 32 3 14 0 0 5 444 4 16 0 0 2 >171 5 18 0 0 0 >82 6 20 0 0 1 >175 7 22 0 1 124 >15205 8 24 0 0 21 >2660

Page 54: Reti di campo per applicazioni automotive e Controller ...docenti.etec.polimi.it/IND32/Didattica/AzionamentixAutomazione/file… · A. Valenzano - Comunicazioni Embedded e Controller

Con

sigl

io N

azio

nale

del

le R

icer

che

–Is

titut

o IE

IIT

–T

orin

oAutomotive Electronics: sistemi elettronici distribuiti e comunicazione via bus

Politecnico di Milano, 17-19 Maggio 2004

A. Valenzano - Comunicazioni Embedded e Controller Area Network / 54

Sincronizzazione e temporizzazione dei bit

• Le trasmissioni in CAN sono sincrone (maggior efficienza di quelle asincrone character-oriented).

• Il ricevitore deve essere risincronizzato in continuazione con il trasmettitore (ogni “fronte” valido del segnale può servire allo scopo).

• Il segnale è campionato a frequenza più alta del bit rate

• Il bit time è un multiplo del “time quantum” che a sua volta è un multiplo del periodo di clock.

• A causa della tecnica di arbitraggio e del meccanismo di acknowledge i segnali devono potersi propagare dal trasmettitore al ricevitore e ritorno entro il bit time.

Page 55: Reti di campo per applicazioni automotive e Controller ...docenti.etec.polimi.it/IND32/Didattica/AzionamentixAutomazione/file… · A. Valenzano - Comunicazioni Embedded e Controller

Con

sigl

io N

azio

nale

del

le R

icer

che

–Is

titut

o IE

IIT

–T

orin

oAutomotive Electronics: sistemi elettronici distribuiti e comunicazione via bus

Politecnico di Milano, 17-19 Maggio 2004

A. Valenzano - Comunicazioni Embedded e Controller Area Network / 55

Struttura del bit time

sync phasebuffer 2

bit time nominale

Punto di campionamento

phasebuffer 1Propagation delay segm.

“hard” synchronization “resynchronization”

La sincronizzazione può avvenire solo sui fronti di discesa (da recessivo a dominante).

Page 56: Reti di campo per applicazioni automotive e Controller ...docenti.etec.polimi.it/IND32/Didattica/AzionamentixAutomazione/file… · A. Valenzano - Comunicazioni Embedded e Controller

Con

sigl

io N

azio

nale

del

le R

icer

che

–Is

titut

o IE

IIT

–T

orin

oAutomotive Electronics: sistemi elettronici distribuiti e comunicazione via bus

Politecnico di Milano, 17-19 Maggio 2004

A. Valenzano - Comunicazioni Embedded e Controller Area Network / 56

Bit rate ed estensione della rete• Perché il livello MAC operi correttamente

occorre che il segnale generato dal nodo trasmittente:– si propaghi a tutti gli altri nodi (caso peggiore: da

un’estremità all’altra della rete);– effettui il cammino inverso;– raggiunga il nodo trasmittente in tempo utile per

essere campionato (rilevamento delle collisioni).• Esistono pertanto limitazioni fisiche alla

massima estensione consentita per la rete fissato il bit rate.

Page 57: Reti di campo per applicazioni automotive e Controller ...docenti.etec.polimi.it/IND32/Didattica/AzionamentixAutomazione/file… · A. Valenzano - Comunicazioni Embedded e Controller

Con

sigl

io N

azio

nale

del

le R

icer

che

–Is

titut

o IE

IIT

–T

orin

oAutomotive Electronics: sistemi elettronici distribuiti e comunicazione via bus

Politecnico di Milano, 17-19 Maggio 2004

A. Valenzano - Comunicazioni Embedded e Controller Area Network / 57

Relazione bit rate/estensione

( )pMAXrtransceiveCANsegprop tLTTT ⋅++⋅≥ 2_

• Dove:– Tprop_seg: durata del prop. delay segm.– TCAN: ritardo del controller CAN– Ttransceiver: ritardo del transceiver– LMAX: lunghezza massima del bus– tp: ritardo di propagazione specifico (circa 5 ns/m

su rame)

Page 58: Reti di campo per applicazioni automotive e Controller ...docenti.etec.polimi.it/IND32/Didattica/AzionamentixAutomazione/file… · A. Valenzano - Comunicazioni Embedded e Controller

Con

sigl

io N

azio

nale

del

le R

icer

che

–Is

titut

o IE

IIT

–T

orin

oAutomotive Electronics: sistemi elettronici distribuiti e comunicazione via bus

Politecnico di Milano, 17-19 Maggio 2004

A. Valenzano - Comunicazioni Embedded e Controller Area Network / 58

Velocità di trasmissione tipiche• Approssimativamente, l’estensione della rete si

dimezza al raddoppiare del bit rate.• In pratica non è possibile aumentare la velocità di

CAN oltre 1Mbit/s (limite fisico e non tecnologico!).

10 Kb/s5 Km (16000 ft.)50 Kb/s1 Km (3200 ft.)

125 Kb/s500 m (1600 ft.)250 Kb/s200 m (650 ft.)500 Kb/s100 m (300 ft.)1 Mb/s40 m (130 ft.)

Bit rateMax segm. Length

Page 59: Reti di campo per applicazioni automotive e Controller ...docenti.etec.polimi.it/IND32/Didattica/AzionamentixAutomazione/file… · A. Valenzano - Comunicazioni Embedded e Controller

Con

sigl

io N

azio

nale

del

le R

icer

che

–Is

titut

o IE

IIT

–T

orin

oAutomotive Electronics: sistemi elettronici distribuiti e comunicazione via bus

Politecnico di Milano, 17-19 Maggio 2004

A. Valenzano - Comunicazioni Embedded e Controller Area Network / 59

Livello data-link

Page 60: Reti di campo per applicazioni automotive e Controller ...docenti.etec.polimi.it/IND32/Didattica/AzionamentixAutomazione/file… · A. Valenzano - Comunicazioni Embedded e Controller

Con

sigl

io N

azio

nale

del

le R

icer

che

–Is

titut

o IE

IIT

–T

orin

oAutomotive Electronics: sistemi elettronici distribuiti e comunicazione via bus

Politecnico di Milano, 17-19 Maggio 2004

A. Valenzano - Comunicazioni Embedded e Controller Area Network / 60

Livello data-link

• Specifica i sottolivelli LLC e MAC di CAN (ISO 11898/1).

• In particolare definisce:– tecnica di arbitraggio del mezzo trasmissivo;– formato dei messaggi;– meccanismi di error detection;– tecniche di error confinement;

Page 61: Reti di campo per applicazioni automotive e Controller ...docenti.etec.polimi.it/IND32/Didattica/AzionamentixAutomazione/file… · A. Valenzano - Comunicazioni Embedded e Controller

Con

sigl

io N

azio

nale

del

le R

icer

che

–Is

titut

o IE

IIT

–T

orin

oAutomotive Electronics: sistemi elettronici distribuiti e comunicazione via bus

Politecnico di Milano, 17-19 Maggio 2004

A. Valenzano - Comunicazioni Embedded e Controller Area Network / 61

Struttura dei messaggi CAN

Header Data Error detection

CRC di 15 bit

da 0 a 8 byte di dati

IndirizzamentoPrioritàTipo di mess.

Page 62: Reti di campo per applicazioni automotive e Controller ...docenti.etec.polimi.it/IND32/Didattica/AzionamentixAutomazione/file… · A. Valenzano - Comunicazioni Embedded e Controller

Con

sigl

io N

azio

nale

del

le R

icer

che

–Is

titut

o IE

IIT

–T

orin

oAutomotive Electronics: sistemi elettronici distribuiti e comunicazione via bus

Politecnico di Milano, 17-19 Maggio 2004

A. Valenzano - Comunicazioni Embedded e Controller Area Network / 62

Tecnica di accesso al mezzo• Indirizzamento orientato agli oggetti anziché ai

nodi.• Accesso di tipo CSMA/DCR (carrier sense,

multiple access/deterministic collision resolution) basato su risoluzione non distruttiva delle collisioni (binary countdown).

• Arbitraggio realizzato tramite arbitration fieldcontenuto nell’header del messaggio.

• Identificatori a valore numerico inferiore hanno priorità più elevata.

• Si sfrutta il principio di dominanza dei bit sul bus.

Page 63: Reti di campo per applicazioni automotive e Controller ...docenti.etec.polimi.it/IND32/Didattica/AzionamentixAutomazione/file… · A. Valenzano - Comunicazioni Embedded e Controller

Con

sigl

io N

azio

nale

del

le R

icer

che

–Is

titut

o IE

IIT

–T

orin

oAutomotive Electronics: sistemi elettronici distribuiti e comunicazione via bus

Politecnico di Milano, 17-19 Maggio 2004

A. Valenzano - Comunicazioni Embedded e Controller Area Network / 63

Bit dominanti e recessiviI trasmettitori di tutti i nodi CAN nella rete sono connessi in modo da realizzare un’unica strut-tura wired-or di tipo distribuito:

nodo 1Rx Tx

nodo 2Rx Tx

nodo NRx Tx

+Vcc

CAN bus

Page 64: Reti di campo per applicazioni automotive e Controller ...docenti.etec.polimi.it/IND32/Didattica/AzionamentixAutomazione/file… · A. Valenzano - Comunicazioni Embedded e Controller

Con

sigl

io N

azio

nale

del

le R

icer

che

–Is

titut

o IE

IIT

–T

orin

oAutomotive Electronics: sistemi elettronici distribuiti e comunicazione via bus

Politecnico di Milano, 17-19 Maggio 2004

A. Valenzano - Comunicazioni Embedded e Controller Area Network / 64

Livelli dominante e recessivoIl livello dominante (0 logico) “prevale” su quellorecessivo (1 logico): se anche un solo nodo trasmette un livello dominante il bus assume tale valore.Esempio con 3 trasmissioni simultanee:

10000000bus10101010nodo 311001100nodo 111110000nodo 1

Page 65: Reti di campo per applicazioni automotive e Controller ...docenti.etec.polimi.it/IND32/Didattica/AzionamentixAutomazione/file… · A. Valenzano - Comunicazioni Embedded e Controller

Con

sigl

io N

azio

nale

del

le R

icer

che

–Is

titut

o IE

IIT

–T

orin

oAutomotive Electronics: sistemi elettronici distribuiti e comunicazione via bus

Politecnico di Milano, 17-19 Maggio 2004

A. Valenzano - Comunicazioni Embedded e Controller Area Network / 65

Algoritmo CSMA/DCR

intermissionterminato ?

txstart of frame

tx prossimobit arbitraggio

livello bus = bit trasmesso?

stato diricezione

si

si

no: tx=recessivo,bus=dominante

no: tx=dominante,bus=recessivo

fine campoarbitraggio ?

no

tx parte rimanente

messaggio pronto da trasmettere

no

stato dierrore

Page 66: Reti di campo per applicazioni automotive e Controller ...docenti.etec.polimi.it/IND32/Didattica/AzionamentixAutomazione/file… · A. Valenzano - Comunicazioni Embedded e Controller

Con

sigl

io N

azio

nale

del

le R

icer

che

–Is

titut

o IE

IIT

–T

orin

oAutomotive Electronics: sistemi elettronici distribuiti e comunicazione via bus

Politecnico di Milano, 17-19 Maggio 2004

A. Valenzano - Comunicazioni Embedded e Controller Area Network / 66

Tecnica di arbitraggio

SOF 10 9 8 7 6 5 4 3 2 1 0 RTR CTRL DATA

Nodo 1(11001100000)

Nodo 2(11001011001)

Nodo 3(11001000000)

Bus

Page 67: Reti di campo per applicazioni automotive e Controller ...docenti.etec.polimi.it/IND32/Didattica/AzionamentixAutomazione/file… · A. Valenzano - Comunicazioni Embedded e Controller

Con

sigl

io N

azio

nale

del

le R

icer

che

–Is

titut

o IE

IIT

–T

orin

oAutomotive Electronics: sistemi elettronici distribuiti e comunicazione via bus

Politecnico di Milano, 17-19 Maggio 2004

A. Valenzano - Comunicazioni Embedded e Controller Area Network / 67

Tecnica di arbitraggioarbitraggio perso

SOF 10 9 8 7 6 5 4 3 2 1 0 RTR CTRL DATA

Nodo 1(11001100000)

Nodo 2

Nodo 3

(11001000011)

(11001000000)

Bus

Page 68: Reti di campo per applicazioni automotive e Controller ...docenti.etec.polimi.it/IND32/Didattica/AzionamentixAutomazione/file… · A. Valenzano - Comunicazioni Embedded e Controller

Con

sigl

io N

azio

nale

del

le R

icer

che

–Is

titut

o IE

IIT

–T

orin

oAutomotive Electronics: sistemi elettronici distribuiti e comunicazione via bus

Politecnico di Milano, 17-19 Maggio 2004

A. Valenzano - Comunicazioni Embedded e Controller Area Network / 68

Tecnica di arbitraggio

SOF 10 9 8 7 6 5 4 3 2 1 0 RTR CTRL DATA

Nodo 1

Nodo 2

Nodo 3

Bus

(11001100000)

(11001000111)

(11001000100)

solo ascolto

Page 69: Reti di campo per applicazioni automotive e Controller ...docenti.etec.polimi.it/IND32/Didattica/AzionamentixAutomazione/file… · A. Valenzano - Comunicazioni Embedded e Controller

Con

sigl

io N

azio

nale

del

le R

icer

che

–Is

titut

o IE

IIT

–T

orin

oAutomotive Electronics: sistemi elettronici distribuiti e comunicazione via bus

Politecnico di Milano, 17-19 Maggio 2004

A. Valenzano - Comunicazioni Embedded e Controller Area Network / 69

Tecnica di arbitraggio

Nodo 1

Nodo 2

Nodo 3

Bus

(11001100000)

(11001000111)

(11001000100)

SOF 10 9 8 7 6 5 4 3 2 1 0 RTR CTRL DATA

solo ascolto

arbitraggio perso

Page 70: Reti di campo per applicazioni automotive e Controller ...docenti.etec.polimi.it/IND32/Didattica/AzionamentixAutomazione/file… · A. Valenzano - Comunicazioni Embedded e Controller

Con

sigl

io N

azio

nale

del

le R

icer

che

–Is

titut

o IE

IIT

–T

orin

oAutomotive Electronics: sistemi elettronici distribuiti e comunicazione via bus

Politecnico di Milano, 17-19 Maggio 2004

A. Valenzano - Comunicazioni Embedded e Controller Area Network / 70

Tecnica di arbitraggio

SOF 10 9 8 7 6 5 4 3 2 1 0 RTR CTRL DATA

(11001000111)

Nodo 1

Nodo 2

Nodo 3

Bus

(11001100000)

(11001000101)

solo ascolto

solo ascolto

Page 71: Reti di campo per applicazioni automotive e Controller ...docenti.etec.polimi.it/IND32/Didattica/AzionamentixAutomazione/file… · A. Valenzano - Comunicazioni Embedded e Controller

Con

sigl

io N

azio

nale

del

le R

icer

che

–Is

titut

o IE

IIT

–T

orin

oAutomotive Electronics: sistemi elettronici distribuiti e comunicazione via bus

Politecnico di Milano, 17-19 Maggio 2004

A. Valenzano - Comunicazioni Embedded e Controller Area Network / 71

Tecnica di arbitraggio

SOF 10 9 8 7 6 5 4 3 2 1 0 RTR CTRL DATA

Nodo 1

Nodo 2

Nodo 3

Bus

(11001100000)

(11001000111)

(11001000101)

solo ascolto

solo ascolto

trasmissionetrasmissione

Page 72: Reti di campo per applicazioni automotive e Controller ...docenti.etec.polimi.it/IND32/Didattica/AzionamentixAutomazione/file… · A. Valenzano - Comunicazioni Embedded e Controller

Con

sigl

io N

azio

nale

del

le R

icer

che

–Is

titut

o IE

IIT

–T

orin

oAutomotive Electronics: sistemi elettronici distribuiti e comunicazione via bus

Politecnico di Milano, 17-19 Maggio 2004

A. Valenzano - Comunicazioni Embedded e Controller Area Network / 72

Struttura dell’header

arbitration field

1 11 o 29 bit 1 6 bit

control field

RTR (remote transmissionrequest): 0 = data frame,

1= remote frame

identifier

SOF (start of frame)

base format => 11 bitextended format => 29 bit

Page 73: Reti di campo per applicazioni automotive e Controller ...docenti.etec.polimi.it/IND32/Didattica/AzionamentixAutomazione/file… · A. Valenzano - Comunicazioni Embedded e Controller

Con

sigl

io N

azio

nale

del

le R

icer

che

–Is

titut

o IE

IIT

–T

orin

oAutomotive Electronics: sistemi elettronici distribuiti e comunicazione via bus

Politecnico di Milano, 17-19 Maggio 2004

A. Valenzano - Comunicazioni Embedded e Controller Area Network / 73

Control field (base format)

DLC2

DLC1

DLC0

DLC3IDE res.

data lengthcode (0-15 ma

max 8 byte trasmessi se

dlc > 8)

reserved

Identifier extension(0=base, 1=extended)

Page 74: Reti di campo per applicazioni automotive e Controller ...docenti.etec.polimi.it/IND32/Didattica/AzionamentixAutomazione/file… · A. Valenzano - Comunicazioni Embedded e Controller

Con

sigl

io N

azio

nale

del

le R

icer

che

–Is

titut

o IE

IIT

–T

orin

oAutomotive Electronics: sistemi elettronici distribuiti e comunicazione via bus

Politecnico di Milano, 17-19 Maggio 2004

A. Valenzano - Comunicazioni Embedded e Controller Area Network / 74

Formati base ed extended

Base format (id. su 11 bit, 2048 oggetti diversi)

11 bitIDENTIFIER

SOF

RTR

IDE

r0 DLC 0-8 byte

DATA FIELDCRC

FIELDACK

FIELD EOF IMS

control fieldarbitration field

Extended format (id. su 29 bit, circa 500 milioni di oggetti diversi)

11 bitBASE ID

SOF

SRR

IDE

DLC -0-8 byteDATA FIELD

CRCFIELD

ACKFIELD EOF IMSr

018 bit

ID EXTENSIONr1

RTR

control fieldarbitration field

Page 75: Reti di campo per applicazioni automotive e Controller ...docenti.etec.polimi.it/IND32/Didattica/AzionamentixAutomazione/file… · A. Valenzano - Comunicazioni Embedded e Controller

Con

sigl

io N

azio

nale

del

le R

icer

che

–Is

titut

o IE

IIT

–T

orin

oAutomotive Electronics: sistemi elettronici distribuiti e comunicazione via bus

Politecnico di Milano, 17-19 Maggio 2004

A. Valenzano - Comunicazioni Embedded e Controller Area Network / 75

CRC field• È costituito da un campo di 15 bit seguito da un bit

recessivo (CRC delimiter).• Deriva da un codice a ridondanza ciclica adatto a

frame di lunghezza inferiore a 127 bit.• Consente di scoprire sequenze continue di errori

(burst) lunghe fino a 15 bit.• Consente di scoprire fino a 5 errori “isolati” (singoli bit)

=> distanza di Hamming=6.

CONTROL FIELD

ARBITRATION FIELD

CCRCSOF

DATAFIELD

campi soggetti a “bit stuffing”

ACK EOF

campi “coperti” dal CRC

Page 76: Reti di campo per applicazioni automotive e Controller ...docenti.etec.polimi.it/IND32/Didattica/AzionamentixAutomazione/file… · A. Valenzano - Comunicazioni Embedded e Controller

Con

sigl

io N

azio

nale

del

le R

icer

che

–Is

titut

o IE

IIT

–T

orin

oAutomotive Electronics: sistemi elettronici distribuiti e comunicazione via bus

Politecnico di Milano, 17-19 Maggio 2004

A. Valenzano - Comunicazioni Embedded e Controller Area Network / 76

CRC e bit stuffing• Il meccanismo di bit stuffing può, in alcuni casi, ridurre l’efficacia

“teorica” del CRC (distanza di Hamming=2 invece di 6!!).• È stato verificato che l’interazione “bit-stuffing”/CRC porta a:

– Probabilità di errori singoli (in numero <= 5) non individuati crescente col decrescere del numero di errori (ma non nulla!).

– Probabilità di errori singoli (>5) non individuati decrescente con il numero di errori e inferiore a quella teorica (tenendo conto anche degli errori di allineamento, del formato dei campi ecc).

Undetected corrupted messageprobability

Number of flipped bits

10-6

51

sperimentale

teorica10-5

10-7

Page 77: Reti di campo per applicazioni automotive e Controller ...docenti.etec.polimi.it/IND32/Didattica/AzionamentixAutomazione/file… · A. Valenzano - Comunicazioni Embedded e Controller

Con

sigl

io N

azio

nale

del

le R

icer

che

–Is

titut

o IE

IIT

–T

orin

oAutomotive Electronics: sistemi elettronici distribuiti e comunicazione via bus

Politecnico di Milano, 17-19 Maggio 2004

A. Valenzano - Comunicazioni Embedded e Controller Area Network / 77

Esempio di interazione bit-stuffing/CRC(messaggio originale)

00000100111000110110101111001(bit stuffing)

000001100111000110110101111001

(errori di trasmissione)

000101100111000110110101111101

(shift di 1 posizione ditutti i bit )

(de-stuffing)

00010110011100011011010111111

Page 78: Reti di campo per applicazioni automotive e Controller ...docenti.etec.polimi.it/IND32/Didattica/AzionamentixAutomazione/file… · A. Valenzano - Comunicazioni Embedded e Controller

Con

sigl

io N

azio

nale

del

le R

icer

che

–Is

titut

o IE

IIT

–T

orin

oAutomotive Electronics: sistemi elettronici distribuiti e comunicazione via bus

Politecnico di Milano, 17-19 Maggio 2004

A. Valenzano - Comunicazioni Embedded e Controller Area Network / 78

ACK field

• È costuito da un bit (ack slot) seguito da un bit delimitatorerecessivo (ack delimiter).

• Il trasmettitore invia un ack slot recessivo.• Tutti i nodi che ricevono il frame correttamente (CRC ok) forzano

il bit di ack a dominante.• Può accadere che alcuni nodi richiedano la ritrasmissione di un

frame ricevuto correttamente da altri.N.B. L’ack non implica che il destinatario abbia ricevuto il frame

ma solo che almeno un ricevitore nella rete lo abbia visto “transitare” correttamente!

ack

ackdel.

EOF flagCRC

Page 79: Reti di campo per applicazioni automotive e Controller ...docenti.etec.polimi.it/IND32/Didattica/AzionamentixAutomazione/file… · A. Valenzano - Comunicazioni Embedded e Controller

Con

sigl

io N

azio

nale

del

le R

icer

che

–Is

titut

o IE

IIT

–T

orin

oAutomotive Electronics: sistemi elettronici distribuiti e comunicazione via bus

Politecnico di Milano, 17-19 Maggio 2004

A. Valenzano - Comunicazioni Embedded e Controller Area Network / 79

EOF flag & Intermission fieldAck slot EOF flag Interframe space

• Ogni frame (di richiesta remota o di dati) è concluso da una sequenza di 7 bit recessivi.

• Tra due frame di dati successivi, inoltre, è previsto uno “spazio” di almeno 3 bit recessivi.

• La fine della trasmissione di un frame di dati o di richiesta remota è quindi conclusa da 11 bit recessivi.

Page 80: Reti di campo per applicazioni automotive e Controller ...docenti.etec.polimi.it/IND32/Didattica/AzionamentixAutomazione/file… · A. Valenzano - Comunicazioni Embedded e Controller

Con

sigl

io N

azio

nale

del

le R

icer

che

–Is

titut

o IE

IIT

–T

orin

oAutomotive Electronics: sistemi elettronici distribuiti e comunicazione via bus

Politecnico di Milano, 17-19 Maggio 2004

A. Valenzano - Comunicazioni Embedded e Controller Area Network / 80

Tipi di comunicazionea) broadcast

b) peer to peer

Page 81: Reti di campo per applicazioni automotive e Controller ...docenti.etec.polimi.it/IND32/Didattica/AzionamentixAutomazione/file… · A. Valenzano - Comunicazioni Embedded e Controller

Con

sigl

io N

azio

nale

del

le R

icer

che

–Is

titut

o IE

IIT

–T

orin

oAutomotive Electronics: sistemi elettronici distribuiti e comunicazione via bus

Politecnico di Milano, 17-19 Maggio 2004

A. Valenzano - Comunicazioni Embedded e Controller Area Network / 81

Comunicazioni in CANNodo 1 Nodo 2 Nodo 3 Nodo 4

RiceviMessaggio

Selezione

Accetta

RiceviMessaggio

Accetta

Selezione

Prepara

Spedisci Messaggio Ricevi

Messaggio

Selezione

Sono essenzialmente di tipo broadcast e basate sul modello produttore-consumatore

Page 82: Reti di campo per applicazioni automotive e Controller ...docenti.etec.polimi.it/IND32/Didattica/AzionamentixAutomazione/file… · A. Valenzano - Comunicazioni Embedded e Controller

Con

sigl

io N

azio

nale

del

le R

icer

che

–Is

titut

o IE

IIT

–T

orin

oAutomotive Electronics: sistemi elettronici distribuiti e comunicazione via bus

Politecnico di Milano, 17-19 Maggio 2004

A. Valenzano - Comunicazioni Embedded e Controller Area Network / 82

Tipi di messaggi CAN

• data frame: usato dal produttore di un dato per trasmetterlo sulla rete rete.

• remote frame: usato da un generico nodo per richiedere la trasmissione di un dato (da parte del relativo produttore).

• error frame: usato per segnalare ai nodi della rete un errore quando queso viene rilevato.

• overload frame: usato per introdurre un ritardo ulteriore fra due frame consecutivi sul bus.

Page 83: Reti di campo per applicazioni automotive e Controller ...docenti.etec.polimi.it/IND32/Didattica/AzionamentixAutomazione/file… · A. Valenzano - Comunicazioni Embedded e Controller

Con

sigl

io N

azio

nale

del

le R

icer

che

–Is

titut

o IE

IIT

–T

orin

oAutomotive Electronics: sistemi elettronici distribuiti e comunicazione via bus

Politecnico di Milano, 17-19 Maggio 2004

A. Valenzano - Comunicazioni Embedded e Controller Area Network / 83

Meccanismo di richiesta dati remotinodo A

frame (ident.=X,

RTR=1)

data-link nodo BRemote

Data frame (ident.=X

RTR=0, dati)

,

agli altrinodi

Page 84: Reti di campo per applicazioni automotive e Controller ...docenti.etec.polimi.it/IND32/Didattica/AzionamentixAutomazione/file… · A. Valenzano - Comunicazioni Embedded e Controller

Con

sigl

io N

azio

nale

del

le R

icer

che

–Is

titut

o IE

IIT

–T

orin

oAutomotive Electronics: sistemi elettronici distribuiti e comunicazione via bus

Politecnico di Milano, 17-19 Maggio 2004

A. Valenzano - Comunicazioni Embedded e Controller Area Network / 84

Remote frame e data frame

• La richiesta (remote frame) per un certo dato può essere spedita da qualsiasi nodo (in genere un consumatore del dato).

• Il dato trasmesso come risposta (data frame) può essere letto anche da altri consumatori.

• Lo coppia remote-data frame è simile ad una transazione master-slave ma non è garantito che il data frame segua immediatamente il remote frame.

Page 85: Reti di campo per applicazioni automotive e Controller ...docenti.etec.polimi.it/IND32/Didattica/AzionamentixAutomazione/file… · A. Valenzano - Comunicazioni Embedded e Controller

Con

sigl

io N

azio

nale

del

le R

icer

che

–Is

titut

o IE

IIT

–T

orin

oAutomotive Electronics: sistemi elettronici distribuiti e comunicazione via bus

Politecnico di Milano, 17-19 Maggio 2004

A. Valenzano - Comunicazioni Embedded e Controller Area Network / 85

Error frame

ims

error frame

data field

error flag (6 o 12 bit dominanti)

error delimiter(8 bit recessivi)

• Generato alla scoperta di un errore durante la trasmissione/ricezione di un messaggio (remote o data). L’errore viene propagato a tutti gli altri nodi.

• Frame costituito dalla possibile sovrapposizione di più error flag seguita da un error delimiter.

• L’error flag viola le regole del bit stuffing.

Page 86: Reti di campo per applicazioni automotive e Controller ...docenti.etec.polimi.it/IND32/Didattica/AzionamentixAutomazione/file… · A. Valenzano - Comunicazioni Embedded e Controller

Con

sigl

io N

azio

nale

del

le R

icer

che

–Is

titut

o IE

IIT

–T

orin

oAutomotive Electronics: sistemi elettronici distribuiti e comunicazione via bus

Politecnico di Milano, 17-19 Maggio 2004

A. Valenzano - Comunicazioni Embedded e Controller Area Network / 86

Sovrapposizione di error flag

inizio error frame

inizio error framenodo A

nodo B

errore nei dati errore bit stuffingritrasmissione

inizio error frame nodo C

bus

Page 87: Reti di campo per applicazioni automotive e Controller ...docenti.etec.polimi.it/IND32/Didattica/AzionamentixAutomazione/file… · A. Valenzano - Comunicazioni Embedded e Controller

Con

sigl

io N

azio

nale

del

le R

icer

che

–Is

titut

o IE

IIT

–T

orin

oAutomotive Electronics: sistemi elettronici distribuiti e comunicazione via bus

Politecnico di Milano, 17-19 Maggio 2004

A. Valenzano - Comunicazioni Embedded e Controller Area Network / 87

Overload frameend of frame oerror delimiter ooverload delimiter

ims

overload frame

overload flag (6 o 12 bit dominanti)

overload delimiter(8 bit recessivi)

• In pratica è un error frame generato quando:– Il ricevitore desidera “ritardare” la trasmissione del frame

successivo.– Si scopre un errore relativo al campo di intermission.

• Gli overload frame non causano la ritrasmissione del frameprecedente (come accade per gli error frame).

• L’overload deve sempre iniziare in luogo del primo bit di IMS.

Page 88: Reti di campo per applicazioni automotive e Controller ...docenti.etec.polimi.it/IND32/Didattica/AzionamentixAutomazione/file… · A. Valenzano - Comunicazioni Embedded e Controller

Con

sigl

io N

azio

nale

del

le R

icer

che

–Is

titut

o IE

IIT

–T

orin

oAutomotive Electronics: sistemi elettronici distribuiti e comunicazione via bus

Politecnico di Milano, 17-19 Maggio 2004

A. Valenzano - Comunicazioni Embedded e Controller Area Network / 88

Rilevamento degli errori

• CAN prevede 5 diversi meccanismi simultanei per il rilevamento degli errori:– cyclic redundancy code (CRC)– frame check– acknowledgement error check– bit-monitoring– bit-stuffing

Page 89: Reti di campo per applicazioni automotive e Controller ...docenti.etec.polimi.it/IND32/Didattica/AzionamentixAutomazione/file… · A. Valenzano - Comunicazioni Embedded e Controller

Con

sigl

io N

azio

nale

del

le R

icer

che

–Is

titut

o IE

IIT

–T

orin

oAutomotive Electronics: sistemi elettronici distribuiti e comunicazione via bus

Politecnico di Milano, 17-19 Maggio 2004

A. Valenzano - Comunicazioni Embedded e Controller Area Network / 89

Cyclic redundancy codePuò essere calcolato velocemente in h/w con shift register e porte ex-or.Si adotta il seguente algoritmo:

CRC[14:0] = 0,0…,0; /* inizializzazione shift register */DO

CRCNXT= Next_bit + CRC[14];FOR (i=14; i>0; i--) /* shift a sinistra di una posizione */

CRC[i] = CRC[i-1];CRC[0]=0;IF (CRCNXT) /* ex-or con polinomio generatore */

CRC[14:0]=CRC[14:0] + (0100010110011001);WHILE ((Next_bit != End of data) && (!Error_condition));

Page 90: Reti di campo per applicazioni automotive e Controller ...docenti.etec.polimi.it/IND32/Didattica/AzionamentixAutomazione/file… · A. Valenzano - Comunicazioni Embedded e Controller

Con

sigl

io N

azio

nale

del

le R

icer

che

–Is

titut

o IE

IIT

–T

orin

oAutomotive Electronics: sistemi elettronici distribuiti e comunicazione via bus

Politecnico di Milano, 17-19 Maggio 2004

A. Valenzano - Comunicazioni Embedded e Controller Area Network / 90

Errori di formato (frame check)

12 6 0-64 15 1 1 1 7 31

SOFarbitration

control data CRC CRC delim.

ackslot EOF IMS

ackdelim.

Alcuni campi hanno formato fisso (sono a valore recessivo):– occorre verificare che tali campi abbiano effettivamente il valore

previsto;– in caso contrario viene generato un errore di formato.

Page 91: Reti di campo per applicazioni automotive e Controller ...docenti.etec.polimi.it/IND32/Didattica/AzionamentixAutomazione/file… · A. Valenzano - Comunicazioni Embedded e Controller

Con

sigl

io N

azio

nale

del

le R

icer

che

–Is

titut

o IE

IIT

–T

orin

oAutomotive Electronics: sistemi elettronici distribuiti e comunicazione via bus

Politecnico di Milano, 17-19 Maggio 2004

A. Valenzano - Comunicazioni Embedded e Controller Area Network / 91

Errori di acknowledgement

Ogni nodo che riceve correttamente un messaggio forza a livello dominante il bit di acknowledgement (ack slot):

– se il trasmettitore rileva un livello recessivo, vuole dire che nessun altro nodo ha letto correttamente il messaggio;

– In questo caso viene generato un errore di acknowledgement.

Page 92: Reti di campo per applicazioni automotive e Controller ...docenti.etec.polimi.it/IND32/Didattica/AzionamentixAutomazione/file… · A. Valenzano - Comunicazioni Embedded e Controller

Con

sigl

io N

azio

nale

del

le R

icer

che

–Is

titut

o IE

IIT

–T

orin

oAutomotive Electronics: sistemi elettronici distribuiti e comunicazione via bus

Politecnico di Milano, 17-19 Maggio 2004

A. Valenzano - Comunicazioni Embedded e Controller Area Network / 92

Errori di bit monitoring

Bus

CAN ControllerTX0 TX1 RX0 RX1

Microcontroller

Transmit-network

Receive-network

Nodo CAN

Se si trasmette un valore dominante e si legge un valore recessivo sul bus viene generato un errore.

Page 93: Reti di campo per applicazioni automotive e Controller ...docenti.etec.polimi.it/IND32/Didattica/AzionamentixAutomazione/file… · A. Valenzano - Comunicazioni Embedded e Controller

Con

sigl

io N

azio

nale

del

le R

icer

che

–Is

titut

o IE

IIT

–T

orin

oAutomotive Electronics: sistemi elettronici distribuiti e comunicazione via bus

Politecnico di Milano, 17-19 Maggio 2004

A. Valenzano - Comunicazioni Embedded e Controller Area Network / 93

Error detection capability

La suscettibilità all’errore può essere caratterizzata tramite parametri statistici:

– Frame error rate– Bit error probability

Frame error rate: rapporto tra il numero di framecorrotti ed il numero di frame trasmessi su un lungo periodo di osservazione (probabilità che un frame sia errato).Bit error probability: probabilità che un bit trasmesso sia corrotto.

Page 94: Reti di campo per applicazioni automotive e Controller ...docenti.etec.polimi.it/IND32/Didattica/AzionamentixAutomazione/file… · A. Valenzano - Comunicazioni Embedded e Controller

Con

sigl

io N

azio

nale

del

le R

icer

che

–Is

titut

o IE

IIT

–T

orin

oAutomotive Electronics: sistemi elettronici distribuiti e comunicazione via bus

Politecnico di Milano, 17-19 Maggio 2004

A. Valenzano - Comunicazioni Embedded e Controller Area Network / 94

Globalizzazione degli errori• Poiché ogni nodo “globalizza” gli errori

scoperti localmente trasmettendo un error flag, un errore di trasmissione non viene scoperto solo se:– il trasmettitore non viene “disturbato” (altrimenti

l’errore sarebbe rilevato dal bit monitoring) e, contemporaneamente,

– Tutti i nodi che ricevono il frame corrotto “osservano” una sequenza di errore non rilevabile.

CAN ha ottime caratteristiche di error detection!

Page 95: Reti di campo per applicazioni automotive e Controller ...docenti.etec.polimi.it/IND32/Didattica/AzionamentixAutomazione/file… · A. Valenzano - Comunicazioni Embedded e Controller

Con

sigl

io N

azio

nale

del

le R

icer

che

–Is

titut

o IE

IIT

–T

orin

oAutomotive Electronics: sistemi elettronici distribuiti e comunicazione via bus

Politecnico di Milano, 17-19 Maggio 2004

A. Valenzano - Comunicazioni Embedded e Controller Area Network / 95

Residual error probability

È la probabilità di non riuscire a rilevare un messaggio corrotto. Per CAN è stato stimato che:

ρ < 4.7 · 10-11 · frame_error_rate

Esempio: => 500kb/s, lunghezza media messaggi 80bit, carico medio della rete=25%, 1 errore ogni 0.64 s (frame error rate= 0.001), 2000 ore/anno, 365giorni/anno

Media statistica:1 errore non rilevato ogni 2000 anni !!!

Page 96: Reti di campo per applicazioni automotive e Controller ...docenti.etec.polimi.it/IND32/Didattica/AzionamentixAutomazione/file… · A. Valenzano - Comunicazioni Embedded e Controller

Con

sigl

io N

azio

nale

del

le R

icer

che

–Is

titut

o IE

IIT

–T

orin

oAutomotive Electronics: sistemi elettronici distribuiti e comunicazione via bus

Politecnico di Milano, 17-19 Maggio 2004

A. Valenzano - Comunicazioni Embedded e Controller Area Network / 96

Confinamento degli errori

Problema: evitare che un nodo guasto possa bloccare l’intero sistema. In CAN ciò può accadere se il nodo malfunzionante continua ad inviare error frame (ma anche nel caso di un nodo “babbling idiot” !!).

SoluzioneIndividuare il nodo guasto tramite un meccanismo automatico e disconnetterlo dalla rete.La tecnica si basa su error counter.

Page 97: Reti di campo per applicazioni automotive e Controller ...docenti.etec.polimi.it/IND32/Didattica/AzionamentixAutomazione/file… · A. Valenzano - Comunicazioni Embedded e Controller

Con

sigl

io N

azio

nale

del

le R

icer

che

–Is

titut

o IE

IIT

–T

orin

oAutomotive Electronics: sistemi elettronici distribuiti e comunicazione via bus

Politecnico di Milano, 17-19 Maggio 2004

A. Valenzano - Comunicazioni Embedded e Controller Area Network / 97

Error counter• Ogni nodo ha un error counter per le trasmissioni ed

uno per le ricezioni.• L’error counter viene incrementato per ogni frame

errato (in tx o in rx).• L’error counter è decrementato per ogni frame

trasmesso/ricevuto correttamente.• L’incremento per errore è superiore al decremento per

operazione corretta.• Gli incrementi sono maggiori per il nodo che ha

scoperto per primo l’errore.N.B. un nodo può sapere di essere il primo ad averscoperto l’errore monitorando la fine dell’error flag.

Page 98: Reti di campo per applicazioni automotive e Controller ...docenti.etec.polimi.it/IND32/Didattica/AzionamentixAutomazione/file… · A. Valenzano - Comunicazioni Embedded e Controller

Con

sigl

io N

azio

nale

del

le R

icer

che

–Is

titut

o IE

IIT

–T

orin

oAutomotive Electronics: sistemi elettronici distribuiti e comunicazione via bus

Politecnico di Milano, 17-19 Maggio 2004

A. Valenzano - Comunicazioni Embedded e Controller Area Network / 98

Stati di (confinamento di) errore

Un nodo che per un periodo è sempre il primo a scoprire errori di trasmissione è probabilmente guasto.

–Error-active: il nodo partecipa normalmente alle comunicazioni e può inviare error flag attivi (distruggere il fame soggetto a errore violando le regole del bit-stuffing con 6 bit dominanti).

–Error-passive: il nodo partecipa alle comunicazioni ma può inviare solo error flag passivi (6 bit recessivi che non disturbano la comunicazione.

–Bus-off: il nodo non può modificare lo stato del bus (ma non è escluso che possa ricevere i frame).

Page 99: Reti di campo per applicazioni automotive e Controller ...docenti.etec.polimi.it/IND32/Didattica/AzionamentixAutomazione/file… · A. Valenzano - Comunicazioni Embedded e Controller

Con

sigl

io N

azio

nale

del

le R

icer

che

–Is

titut

o IE

IIT

–T

orin

oAutomotive Electronics: sistemi elettronici distribuiti e comunicazione via bus

Politecnico di Milano, 17-19 Maggio 2004

A. Valenzano - Comunicazioni Embedded e Controller Area Network / 99

Tipi di error flagERROR-ACTIVE

6 bit 0...6 bit 8 bit 3 bit

6 bit 0...6 bit 8 bit 3 bit

ERROR-PASSIVE

sovrapposizione di error flag

error flag

errordelimiter IMS

Page 100: Reti di campo per applicazioni automotive e Controller ...docenti.etec.polimi.it/IND32/Didattica/AzionamentixAutomazione/file… · A. Valenzano - Comunicazioni Embedded e Controller

Con

sigl

io N

azio

nale

del

le R

icer

che

–Is

titut

o IE

IIT

–T

orin

oAutomotive Electronics: sistemi elettronici distribuiti e comunicazione via bus

Politecnico di Milano, 17-19 Maggio 2004

A. Valenzano - Comunicazioni Embedded e Controller Area Network / 100

Error state diagram

Error Active

Error Passive Bus Off

Rx_Cnt <= 127 eTx_Cnt <= 127

Rx_Cnt > 127 oTx_Cnt > 127

Reset, configurazionee ricezione di 128 sequenzedi 11 bitrecessivi

Reset e configurazione

Tx_Cnt > 255

Page 101: Reti di campo per applicazioni automotive e Controller ...docenti.etec.polimi.it/IND32/Didattica/AzionamentixAutomazione/file… · A. Valenzano - Comunicazioni Embedded e Controller

Con

sigl

io N

azio

nale

del

le R

icer

che

–Is

titut

o IE

IIT

–T

orin

oAutomotive Electronics: sistemi elettronici distribuiti e comunicazione via bus

Politecnico di Milano, 17-19 Maggio 2004

A. Valenzano - Comunicazioni Embedded e Controller Area Network / 101

Tipologie di componenti

Page 102: Reti di campo per applicazioni automotive e Controller ...docenti.etec.polimi.it/IND32/Didattica/AzionamentixAutomazione/file… · A. Valenzano - Comunicazioni Embedded e Controller

Con

sigl

io N

azio

nale

del

le R

icer

che

–Is

titut

o IE

IIT

–T

orin

oAutomotive Electronics: sistemi elettronici distribuiti e comunicazione via bus

Politecnico di Milano, 17-19 Maggio 2004

A. Valenzano - Comunicazioni Embedded e Controller Area Network / 102

Componenti CAN

• Due versioni:– 2.0A (identificatore su 11 bit) – 2.0B (identificatore esteso su 29 bit), anche passiva

• Diversi tipi di implementazione:– FullCAN (dual ported RAM)– BasicCAN (uno o due RX/TX buffer)– SLIO (serial-linked I/O per dispositivi slave -

soluzioni integrate a basso costo - non più utilizzati)

Page 103: Reti di campo per applicazioni automotive e Controller ...docenti.etec.polimi.it/IND32/Didattica/AzionamentixAutomazione/file… · A. Valenzano - Comunicazioni Embedded e Controller

Con

sigl

io N

azio

nale

del

le R

icer

che

–Is

titut

o IE

IIT

–T

orin

oAutomotive Electronics: sistemi elettronici distribuiti e comunicazione via bus

Politecnico di Milano, 17-19 Maggio 2004

A. Valenzano - Comunicazioni Embedded e Controller Area Network / 103

Tipi di componenti

• Chip che implementano il protocollo CAN:– semplici ed economici o sofisticati– conosciuti e ben collaudati– molte case produttrici diverse

• Diversi tipi di componenti:– Controller CAN stand-alone– Microcontroller con CAN– Bus driver per CAN (transceiver)– ASICs

Page 104: Reti di campo per applicazioni automotive e Controller ...docenti.etec.polimi.it/IND32/Didattica/AzionamentixAutomazione/file… · A. Valenzano - Comunicazioni Embedded e Controller

Con

sigl

io N

azio

nale

del

le R

icer

che

–Is

titut

o IE

IIT

–T

orin

oAutomotive Electronics: sistemi elettronici distribuiti e comunicazione via bus

Politecnico di Milano, 17-19 Maggio 2004

A. Valenzano - Comunicazioni Embedded e Controller Area Network / 104

Filtraggio dei messaggi

Controller CAN Microcontroller

Funzione di filtraggio in

h/w (semplice oavanzata)

Memoriaper un oggetto

Memoriaper unoggetto

Tx

RxFunzione

di filtraggioin s/w

(opzionale)

Applicazione

Page 105: Reti di campo per applicazioni automotive e Controller ...docenti.etec.polimi.it/IND32/Didattica/AzionamentixAutomazione/file… · A. Valenzano - Comunicazioni Embedded e Controller

Con

sigl

io N

azio

nale

del

le R

icer

che

–Is

titut

o IE

IIT

–T

orin

oAutomotive Electronics: sistemi elettronici distribuiti e comunicazione via bus

Politecnico di Milano, 17-19 Maggio 2004

A. Valenzano - Comunicazioni Embedded e Controller Area Network / 105

Inversione di priorità

Buffer di trasmissione singolo

messaggio a bassa priorità

Ciclo di attesa

Controller CAN Microcontroller

messaggio ad alta priorità

Page 106: Reti di campo per applicazioni automotive e Controller ...docenti.etec.polimi.it/IND32/Didattica/AzionamentixAutomazione/file… · A. Valenzano - Comunicazioni Embedded e Controller

Con

sigl

io N

azio

nale

del

le R

icer

che

–Is

titut

o IE

IIT

–T

orin

oAutomotive Electronics: sistemi elettronici distribuiti e comunicazione via bus

Politecnico di Milano, 17-19 Maggio 2004

A. Valenzano - Comunicazioni Embedded e Controller Area Network / 106

Perdita di un messaggio

Controller CAN Microcontroller

Primo messaggio ricevuto

Doppio buffer Rx (FIFO)

Secondo messaggio ricevuto

Terzo messaggio ricevuto Se il terzo messaggio arriva troppo prestol‘interrupt del primo messaggio non viene servito

Rx

Page 107: Reti di campo per applicazioni automotive e Controller ...docenti.etec.polimi.it/IND32/Didattica/AzionamentixAutomazione/file… · A. Valenzano - Comunicazioni Embedded e Controller

Con

sigl

io N

azio

nale

del

le R

icer

che

–Is

titut

o IE

IIT

–T

orin

oAutomotive Electronics: sistemi elettronici distribuiti e comunicazione via bus

Politecnico di Milano, 17-19 Maggio 2004

A. Valenzano - Comunicazioni Embedded e Controller Area Network / 107

Mancato aggiornamentoController CAN Microcontroller

Dati del messaggio n

Dati del messaggio 3

Dati del messaggio 2

Dati del messaggio 1

Dati del messaggio 4

::

buffer Rx come dual-port RAM

Se arriva un secondomessaggio prima cheil precedente sia statoletto, il primo viene perso

Rx

Page 108: Reti di campo per applicazioni automotive e Controller ...docenti.etec.polimi.it/IND32/Didattica/AzionamentixAutomazione/file… · A. Valenzano - Comunicazioni Embedded e Controller

Con

sigl

io N

azio

nale

del

le R

icer

che

–Is

titut

o IE

IIT

–T

orin

oAutomotive Electronics: sistemi elettronici distribuiti e comunicazione via bus

Politecnico di Milano, 17-19 Maggio 2004

A. Valenzano - Comunicazioni Embedded e Controller Area Network / 108

Principali produttori di componenti CAN

*Fujitsu

**Siemens

*Texas Instruments

**Temic*ST-Microelectronics

*SGS Thomson**Philips*NEC

*National Seminconductor**Motorola

*Mitsubishi**Intel

*Hitachi

CAN controllers& chips

EmbeddedCAN µPs

Manufacturer