Il controller del sistema MySupervisor è sostanzialmente un piccolo computer basato sulle note schede Raspberry Pi.

Nella figura si osservano le connessioni del Raspberry relative all’interfaccia Ethernet e alle interfacce USB.

Il controller è contenuto in un box della serie Railbox di Italtronic (italtronic.com) che è particolarmente indicata per la realizzazione di sistemi modulari da montare su una guida DIN da 35 mm.

Il controller è costituito da due schede: il Raspberry e una scheda di interfaccia e supporto.

Nel controller a sinistra è impiegata una scheda Raspberry Pi 3 con 1 GB di memoria, le cui prestazioni si sono dimostrate più che sufficienti in ogni occasione ma chi desiderasse ottenere prestazioni migliori può impiegare la versione Pi 4.

Nella figura si notano in alto il connettore per il bus (nero) e il connettore di alimentazione e in basso i connettori per gli I/O digitali e per la porta seriale. Il cavo piatto con 40 conduttori collega il Raspberry alla scheda di supporto.

Nella figura a sinistra si vede la scheda di supporto montata. Si notino le quattro torrette alte 5 mm per il fissaggio della scheda Raspberry, il modulo riduttore di tensione da 12 a 5 volt per l’alimentazione dei circuiti a sinistra del connettore del bus e, in basso a destra, i ponticelli che determinano il tipo di uscita seriale: RS232 o RS485.

BUS DI SISTEMA

Il bus di sistema è impiegato per le comunicazioni tra il controller e i moduli, esso è composto da 16 linee di cui 14 attive e due di massa.

Il bus è basato sul protocollo SPI con quattro bit di indirizzamento (16 indirizzi).

Con riferimento allo schema elettrico, le linee attive hanno le seguenti funzioni:

  • SCLK: clock delle comunicazioni SPI
  • MISO: linea di input seriale del protocollo SPI
  • MOSI: linea di output seriale del protocollo SPI
  • SEL0…SEL3: linee per la selezione dei moduli
  • SELECT/: linea per la selezione del modulo indirizzato
  • ATT1/…ATT4/: linee per l’indirizzo del modulo che genera l’interrupt
  • INTRQ/: linea per la richiesta dell’interrupt
  • RESET: linea per il reset dei moduli

Le comunicazioni con i moduli sono gestite mediante la libreria com.pi4j.wiringpi.Spi (https://pi4j.com/).

Il protocollo SPI è ampiamente documentato sul web, per esempio si consulti: https://www.unisalento.it/documents/20152/804790/SLIDES+LEZIONE+7-3Dispensa+SPI+Interface-EVIDENZIATA.pdf/ca4f865d-aa50-56e3-2b31-c66b5b5d65b1?version=1.0&download=true

SEL0…SEL3 consentono di selezionare 1 su 15 indirizzi per i moduli, in quanto l’indirizzo 0 è riservato per il controller, pertanto la dimensione massima di un sistema MySupervisor è di un controller e 15 moduli slave.

Le linee ATT1/…ATT4/ posso essere assegnate a quattro diversi moduli, che quindi posso generare interrupt; la richiesta di interrupt avviene abbassando il livello della linea associata al modulo e quindi abbassando il livello del segnale INTRQ/.

SCHEMA ELETTRICO

con riferimento allo schema elettrico riportato in figura (lo schema in formato Eagle .sch è riportato come allegato) si notano quattro blocchi principali:

IL BUS: la gestione del bus è affidata a IC4 per i segnali in uscita e a IC3 per i segnali di entrata. Poiché la logica del bus è a 5 Volt sono previsti dei partitori per ridurre i segnali di ingresso a 3,3 Volt come richiesto dal Raspberry. Ad alzare il livello dei segnali di uscita dal livello 3,3 Volt a 5 Volt provvede direttamente IC4.

L’INTERFACCIA SERIALE: questa interfaccia è gestita da IC5 per quanto riguarda il protocollo RS232 e da IC2 per quanto riguarda il protocollo RS485. Lo switch SV2, realizzato mediante ponticelli seleziona la linea di ingresso onde evitare conflitti, pertanto i due protocolli possono essere utilizzati in alternativa, non contemporaneamente.

L’USCITA ANALOGICA: IC1 è un buffer che, a partire dal segnale PWM prodotto dal Raspberry, provvede a produrre due segnali su uscite a bassa impedenza, uno, mediante integrazione, strettamente analogico di ampiezza 0 – 10 volt, l’altro, pure di ampiezza 10 Volt, che riproduce il segnale PWM in ingresso

ALLARME ALIMENTATORE: U1 è un isolatore ottico che riporta il segnale di allarme degli alimentatori. Questo segnale è utile quando l’alimentazione al sistema è fornita da due alimentatori per segnalare il guasto di uno dei due, mentre il sistema continua a funzionare con l’altro.

CONVERTITORE 12 – 5 VOLT: tutto il sistema MySupervisor è alimentato a 12,5 Volt e ciascun modulo è provvisto di un convertitore switching che riduce la tensione per i circuiti digitali a 5 Volt. Questa scelta consente di avere disponibile una tensione adeguata per i circuiti analogici 0 – 10 Volt e di avere una alimentazione per la parte digitale stabile e ben filtrata. Per compensare la caduta sul diodo D1 gli alimentatori vanno regolati per una uscita di 12,5 volt.

In allegato si riporta anche l’elenco dei componenti.

Il software di gestione del sistema sarà oggetto del prossimo articolo.