More Related Content Similar to Banco di collaudo per dispositivi pneumatici del sistema frenante ferroviario realizzato con il PSoC 5 LP Cypress. Pregi e difetti di un componente innovativo e del suo eccellente ambiente di sviluppo (20) More from TogetherToSolve (20) Banco di collaudo per dispositivi pneumatici del sistema frenante ferroviario realizzato con il PSoC 5 LP Cypress. Pregi e difetti di un componente innovativo e del suo eccellente ambiente di sviluppo1. AGConsulting S.a.s.
Viale John F. Kennedy, 49
IT – 10042 Nichelino (TO)
guido.ballocca@agcons.eu
Tel. +39 3355900659
© 2015 AG Consulting S.a.s., tutti I diritti riservati.
AG Consulting di Guido Ballocca & C. – V.le Kennedy, 49 – 10042 Nichelino (TO) Italy – REA: 1009971 – C.F. / P.IVA 08916390019
Banco di collaudo per dispositivi pneumatici del sistema frenante
ferroviario realizzato con il PSoC 5 LP Cypress
Pregi e difetti di un componente innovativo e del suo eccellente ambiente di
sviluppo
Il sistema è destinato al collaudo e alla certificazione dopo revisione di 20 tra distributori e valvole
ripetitrici o trasformatrici di pressione secondo l’Istruzione Tecnica Trenitalia IT10007/01 di aprile
2011.
Vista esterna del sistema completo
2. AGConsulting S.a.s.
© 2015 AG Consulting S.a.s., tutti I diritti riservati.
Pagina 2 di 10
Il banco richiede sostanzialmente una pressione regolata in modo dinamico e due pressioni regolate
in modo fisso. La pressione regolata in modo dinamico può assumere valori compresi tra 0 e 7.5
bar. La pressione massima non è disponibile con continuità sulla rete di alimentazione, quindi risulta
indispensabile adottare un moltiplicatore di pressione.
Schema pneumatico a blocchi
Le tolleranze imposte ai valori di pressione regolati dinamicamente escludono l’adozione di un
sistema di regolazione basato su una valvola proporzionale, quindi si implementa un sistema di
regolazione ad anello chiuso, attuato a mezzo di valvole veloci. I repentini sbalzi di pressione dovuti
alla commutazione delle valvole di regolazione sono smorzati a mezzo di un circuito pneumatico RC
dotato di limitatore di flusso regolabile.
La presenza di tale limitatore di flusso nel circuito impone di operare con aria estremamente asciutta
e pulita, di conseguenza è necessario un sistema completo di filtraggio ed essiccazione dell’aria
compressa all’interno del banco.
Il comando elettrico del banco implica la gestione di 18 uscite digitali, di 22 ingressi digitali e di 6
ingressi analogici. I tempi di reazione sono critici, pertanto si è deciso di sviluppare appositamente i
moduli elettronici che compongono il sistema real time di governo.
Per ragioni di manutenibilità e per poter essere in ogni istante certi della funzionalità del banco in
ogni sua parte, tutte le periferiche di ingresso e uscita digitale sono dotate di autodiagnostica.
3. AGConsulting S.a.s.
© 2015 AG Consulting S.a.s., tutti I diritti riservati.
Pagina 3 di 10
Schema a blocchi elettronica
La necessità di produrre un documento di report implica l’adozione di un personal computer collegato
al sistema real time via linea USB. Al personal computer è delegata anche la funzione di interfaccia
operatore.
Fatta eccezione per il modulo di ingressi analogici, che è basato su un dsPIC MicroChip, tutti i moduli
sono equipaggiati con un microcontrollore PSoC 5 LP.
Il primo e più significativo pregio del componente è di incorporare in un solo integrato un
microprocessore di elevate prestazione, qual è il Cortex M3 a 63 MHz, una PLD con tale abbondanza
di celle e di componenti preconfezionati che solo impegnandosi a fondo si riesce a saturare e un
assortimento altrettanto generoso di dispositivi analogici.
Il secondo pregio è quello di integrare in un solo ambiente di sviluppo tanto la gestione del software
applicativo quanto la gestione della PLD e dei dispositivi analogici.
La programmazione della PLD e l’utilizzo dei componenti analogici sono poi agevolati dalla
possibilità di disegnare lo schema elettrico dei dispositivi di contorno al microprocessore in luogo di
descriverne il funzionamento e le connessioni utilizzando un linguaggio di programmazione
specifico.
A titolo d’esempio si illustra quanto è stato implementato all’interno dell’integrato che equipaggia il
modulo di ingressi digitali, ricordando che nulla di quanto è disponibile in analogica è stato qui
utilizzato, perché l’applicazione non lo richiedeva.
4. AGConsulting S.a.s.
© 2015 AG Consulting S.a.s., tutti I diritti riservati.
Pagina 4 di 10
Schema PLD – pagina 1
Nella prima pagina dello schema interno trovano posto la logica di riconoscimento dell’indirizzo e la
generazione dei quattro interrupt che segnalano alla CPU locale l’avvenuta scrittura da parte della
MPU su uno dei port d’ingresso del modulo. Si notano inoltre la decodifica dei 6 segnali che abilitano
altrettanti port d’uscita verso il bus dati e la generazione dei segnali del port di status del modulo.
5. AGConsulting S.a.s.
© 2015 AG Consulting S.a.s., tutti I diritti riservati.
Pagina 5 di 10
Schema PLD – pagina 2
Nella seconda pagina abbiamo i port d’ingresso, a 16 bit il port dati e a 8 bit il port di programmazione.
Il modulo infatti dispone di 256 parametri operativi a 16 bit che ne definiscono il comportamento.
Troviamo inoltre il generatore del real time clock a 1ms, il watch dog, la generazione dei segnali di
interrupt verso la MPU e la generazione degli interrupt verso la CPU locale che segnalano la
ricezione degli interrupt inviati alla MPU.
6. AGConsulting S.a.s.
© 2015 AG Consulting S.a.s., tutti I diritti riservati.
Pagina 6 di 10
Schema PLD – pagina 3
Nella terza pagina si vedono 3 dei 6 port d’uscita a lettura diretta per la MPU, su cui, in base ai
parametri in precedenza impostati, la MPU può leggere immediatamente i dati d’interesse, senza
coinvolgimento del software di modulo. Il port d’indirizzo più basso è lo status del modulo, che
contiene l’indirizzo base del modulo nei 5 bit più significativi, un segnale di guasto e lo stato
(occupato/disponibile) dei due port d’ingresso. Il dato presentato dagli altri port dipende da come il
modulo è stato parametrizzato.
7. AGConsulting S.a.s.
© 2015 AG Consulting S.a.s., tutti I diritti riservati.
Pagina 7 di 10
Schema PLD – pagina 4
Nella quarta pagina si vedono il multiplexing digitale dei segnali d’uscita verso il bus dati e la gestione
della direzione dei pin che si affacciano su tale bus.
8. AGConsulting S.a.s.
© 2015 AG Consulting S.a.s., tutti I diritti riservati.
Pagina 8 di 10
Schema PLD – pagina 5
Nella quinta pagina vediamo la gestione dei rimanenti due port d’uscita verso il bus dati e i registri
di lettura degli stati degli ingressi dal campo.
9. AGConsulting S.a.s.
© 2015 AG Consulting S.a.s., tutti I diritti riservati.
Pagina 9 di 10
Schema PLD – pagina 6
Nella sesta pagina vediamo che le linee al campo 12 e 13 sono utilizzate come ingressi in frequenza
o PWM, mentre le linee 14 e 15 leggono un encoder in quadratura. Le configurazioni possibili per le
quattro linee al campo di indice più alto sono riepilogate nel riquadro a sinistra.
Sono infine presenti una linea USB, destinata al debugging del software di modulo, l’EEPROM, in
cui sono memorizzati i dati dei parametri funzionali, un ingresso e un’uscita, in compatibilità con il kit
di sviluppo, anch’essi destinati al debugging.
10. AGConsulting S.a.s.
© 2015 AG Consulting S.a.s., tutti I diritti riservati.
Pagina 10 di 10
Modulo a 16 ingressi digitali finito
Come si vede nell’immagine, le uniche parti montate all’esterno del microcontrollore sono i moduli
di accoppiamento ottico degli ingressi dal campo, che sono tutti galvanicamente isolati tra loro e
dall’alimentazione del microcontrollore, i componenti di filtraggio dell’alimentazione, i due quarzi e i
connettori.
Per quanto riguarda l’applicativo, va segnalato che la gestione delle interruzioni è implementata così
bene che risulta possibile strutturare il software in modo tale che ogni aspetto del processo sia gestito
come risposta a una specifica interruzione. Si ottengono così task perfettamente confinati e del tutto
indipendenti tra loro, ciascuno dei quali gestisce gli eventi di sua competenza. Il loop principale può
limitarsi a controllare il watch dog e a monitorare l’utilizzo delle risorse CPU, assumendo la funzione
di supervisore. Si evitano così sprechi di risorse e rischi di saturazione randomizzata della CPU,
mentre il debugging, eseguito task per task, è molto più sicuro e veloce.
Visti fin qui gli indubbi pregi di questo componente e del suo ambiente di sviluppo, è ora doveroso
parlare di limiti e difetti.
L’unico difetto di rilievo è lo sbilanciamento delle risorse analogiche in ingresso e in uscita. Mentre
in ingresso possiamo avere fino a 4 ADC SAR a 12 bit e un ADC ∆∑ a 21 bit, in uscita sono disponibili
massimo 4 DAC a 8 bit costituiti semplicemente da un partitore resistivo, il che rende necessario
utilizzare per ciascuno di essi uno dei 4 operazionali di corredo per bufferizzarne l’uscita e ciò genera
lo spreco di due se non di tre pin per ciascun DAC utilizzato, senza contare che la risoluzione è
davvero scarsa.
Limiti all’applicabilità del componente sono invece il core a bassa tensione, con conseguente scarsa
immunità ai disturbi, e il fatto che l’applicativo scritto dall’utente viene eseguito sotto il controllo di un
sistema operativo non accessibile all’utente stesso. Anche solo uno di questi due limiti impedisce
purtroppo l’utilizzo di questo componente in applicazioni di sicurezza, com’è il caso di molti dei
dispositivi di bordo di treni, tram, metropolitane, velivoli e natanti. Un terzo limite, la mancanza del
tracing, è stato superato pochi mesi or sono, quindi nutro buone speranze per il superamento dei
rimanenti due.