Cos'è ElectroYou | Login Iscriviti

ElectroYou - la comunità dei professionisti del mondo elettrico

3
voti

BUS elettronico

Domanda:

Cerco delucidazioni sul collegamento tra schede elettroniche definito SISTEMA BUS.

Risponde Paolino

I sistemi che dialogano con BUS DI CAMPO sono ormai molto diffusi. Il bus di campo (o filedbus) nasce originariamente con l'obiettivo di ridurre il costo dei cablaggi nel settore automobilistico ma dopo pochi anni si espande con prepotenza anche nel mondo industriale manifatturiero, grazie alle interfaccie di cui sono dotati i PLC.
Il mercato offre svariati metodi per comunicare a bus di campo; tra i sistemi/protocolli più blasonati si possono citare il CAN, CAN-OPEN, DeviceNet, ProfiBUS, Modbus, ecc. Sostanzialmente sono reti di dispositivi che dialogano secondo ben specifiche regole (protocollo) su mezzi trasmissivi ben definiti. Essendo reti di dispositivi, i bus di campo possono essere con elementi paritetici (struttura multi-master) oppure con un master ed un numero (maggiore o uguale a uno) di slave.
Per semplificare di molto (cercando di non banalizzare), ecco come funzionano, in linea di principio, le due alternative.

MASTER-SLAVE
Se la rete è configurata con struttura MASTER-SLAVE, è il MASTER che interroga ogni singolo slave per dargli dei comandi e/o per leggere variabili da esso. Quando uno slave ha un dato disponibile, non prende iniziativa e non chiama il master; sarà questi che, con ben precise regole (definite dal processo su cui il bus di campo è applicato) va ad interrogare ogni singolo slave.

MULTI-MASTER
La rete paritetica permette a ciascun elemento che la costituisce di comunicare agli altri degli specifici dati. Ad esempio, un sensore di livello che sente un "troppo pieno" può avvertire il modulo di comando alla valvola per cui si chiuda una saracinesca.

Ciascuna delle due soluzioni ha vantaggi e svantaggi. Per quanto concerne la struttura MASTER-SLAVE è facile capire che il canale trasmissivo (il canale fisico) non corre rischi di trovarsi intasato, in quanto mai potrà verificarsi il fatto che due elementi possano concorrere all'accesso al mezzo fisico. È il master che chiama ogni singolo slave, uno alla volta. Di contro, queste sono reti con tempi di risposta potenzialmente elevati nel caso si verifichi un evento: la rete deve essere continuamente monitorata dal master affinché conosca lo stato di ogni singolo slave.
Viceversa, con bus MULTI-MASTER ogni elemento può accedere alla rete quando meglio crede. Senz'altro questo è un modo più veloce per rispondere ad esigenze di real-time. Nel caso non ci siano eventi in corso, il mezzo fisico non è attraversato da dati. I problemi nascono quando contemporaneamente più di un elemento della rete cercano di accedere al mezzo fisico; il concetto è che se si parla in due contemporaneamente, non si capisce nulla nè di quanto dice il primo nè di quanto dice il secondo. Vanno quindi introdotti dei criteri di arbitraggio nell'accesso alla rete fisica; questo viene fatto ad esempio dando una priorità a ciascun nodo della rete. Ai nodi che ricoprono ruoli vitali per il sistema, viene assegnata la priorità più elevata nell'accesso alla rete, agli altri via via più bassa.

La connessione tra nodi della rete avviene tramite doppino; su quel cavo avviene la trasmissione tra MASTER e SLAVE. Chi inizia la comunicazione (il MASTER) "chiama" uno SLAVE modulando sul cavo 0 e 1 in modo da generare un pacchetto di informazioni. Dopo che il MASTER si è dichiarato, il primo dato utile generalmente è l'indirizzo dello slave, ossia il master chiama un nodo "per nome" o per indirizzo, se preferisci. Il pacchetto si compone quindi di indirizzo dello slave seguito comandi da impartire a questo nodo. Di solito la comunicazione non prevede un cambio di frequenze, altrimenti ci vorrebbero nodi con circuiteria tale da poter decodificare segnali a più frequenze e questo potrebbe far aumentare i costi.

Un esempio di pacchetto può essere il seguente:

PREAMBOLO + INDIRIZZO DEL MASTER (che sta trasmettendo) + INDIRIZZO DELLO SLAVE (che deve ricevere il dato) + COMANDI IMPARTITI + CHEKSUM

Il preambolo (di solito usato quando il mezzo fisico non è il doppino ma è l'etere) serve per sincronizzare lo slave sul segnale trasmesso.

2

Commenti e note

Inserisci un commento

di ,

E' difficile dare una risposta secca a questo quesito. La scelta del protocollo è dettata da almeno quest'ordine di esigenze:
1. interfacciamento con un elettronica pre-esistente;
2. specificità del protocollo per una applicazione;
3. facilità di implementazione;
4. costi.

Cerco di essere più completo.
Per quanto concerne il punto 1. Non c'è molto da dire; se devi collegare un dispositivo in una rete già esistente, bisogna adeguarsi.
Per il punto 2. invece si può dire qualcosa di più. Alcuni protocolli sono particolarmente performanti se impiegati in applicazioni specifiche. Per esempio SERCOS è formidabile per il controllo di azionamenti, il LIN è (stato) ottimo per l'automotive.
Qui ci si collega al punto 4. Se devi sviluppare una elettronica custom con i nodi di rete realizzati per una tua applicazione, vale la pena analizzare la facilità di implementazione: direi che in questo caso un CAN-OPEN oppure un ModBus possono andare, mentre ProfiBus te lo sconsiglio (va bene se hai PLC). Infine i costi: va valutato quale configurazione hardware e software ha il miglior rapporto qualità/prezzo.

Rispondi

di Cap-br,

Volevo chiedere se possibile la differenza tra i vari protocolli e quando e meglio usare uno rispetto all'altro.

Rispondi

Inserisci un commento

Per inserire commenti è necessario iscriversi ad ElectroYou. Se sei già iscritto, effettua il login.