protocolli di comunicazione anticipazioni

Nel primo articolo dedicato ai mezzi trasmissivi e protocolli di comunicazione per la domotica, abbiamo visto quali sono i principali mezzi trasmissivi guidati, vedendone le caratteristiche e i pro e contro in una possibile applicazione.
Ultimamente sto approfondendo il funzionamento e l’impiego di alcuni protocolli di comunicazione, tra i quali non ha potuto fare a meno di catturare la mia attenzione il protocollo CAN, uno standard per bus seriale.

Cosa è

Il bus CAN (Controller Area Network), è stato introdotto negli anni ottanta in Europa dalla Robert Bosch GmbH ed è stato pensato principalmente per il campo automobilistico, ma data la sua alta versatilità non ha avuto problemi a trovare largo impiego anche in altri campi, come ad esempio nell’automazione industriale e nell’aviazione.
Si tratta di un bus a comunicazione seriale progettato per lavorare senza problemi anche in ambienti fortemente disturbati da onde elettromagnetiche, lavora con frequenze fino a 1 Mbit/s e permette la realizzazione di applicazioni con comunicazione multicast, dove è possibile collegare diverse unità di controllo elettronico (ECU).
Interfacciare tra di loro diverse periferiche hardware tramite lo standard CAN risulta essere molto economico e semplice, infatti bastano soltanto due fili conduttori, al che non può non venire in mente di utilizzare un doppino ritorto.

La lunghezza massima dei cavi che è possibile impiegare per il cablaggio della rete, è di 1000m, ma tutto dipende dalla velocità di comunicazione che si necessita per la propria applicazione: il bit rate può raggiungere 1 Mbit/s per reti fino a 40 m, mentre velocità inferiori consentono di raggiungere maggiori distanze.
Distanza massima bus CAN

can bus nell’Home Automation

Data l’alta efficienza ed il basso costo nell’utilizzo di questo standard, perché non approfittarne ed utilizzarlo in un’applicazione di Home Automation DIY?
Questo è proprio quello che ho intenzione di fare.
In commercio esistono diversi IC ed espansioni che permettono di interfacciare praticamente qualsiasi microcontrollore e board embedded con un bus CAN, come ad esempio il controller MCP2515 prodotto da Microchip. Datasheet MCP2515.
Prossimamente approfondiremo questo argomento e vedremo alcuni progetti che integrano la comunicazione su bus CAN.
Nel frattempo vi lascio il link di un articolo nel quale è presente un esempio di comunicazione su bus CAN, tra due board Arduino, utilizzando due board basate sul controller MCP2515 e il transceiver TJA1050.
Link articolo

Ivan Scordato