Indice |
Premessa
Dopo il mio primo blog Un kit programmabile IEC 61131-3, al quale rimando come punto di partenza, finalmente passo a qualcosa di più concreto. La realizzazione materiale di un prototipo è la fase del progetto che preferisco e che maggiormente attendo sia con curiosità, per vedere come fisicamente si presenterà l'oggetto, sia con una certa ansia perchè è il momento di scoprire se quanto ho stabilito nello schema funziona senza problemi.
In passato, fin da giovane studente, ho realizzato tanti filati, più o meno laboriosi, che ancora oggi in parte conservo. Quando ora li rivedo, mi chiedo come abbia fatto ad avere tutta quella pazienza e tempo per fare simili "lavorate". La spiegazione sta nell'inesauribile entusiasmo e passione, tipici degli hobbisti, nel costruire oggetti che poi facciano "qualcosa" di più o meno utile. Quando poi i risparmi del giovane studente lo permettevano, mi comperavo uno dei più famosi e storici KIT che, nel giro di poche ore, montavo con estrema attenzione. Scartare la confezione, dividere sul tavolo le varie tipologie di componenti, prendere lo stampato già pronto ed accendere il saldatore era, ovviamente, più facile e divertente che fare un filato.
Col passare degli anni, non potendo rimanere studente all'infinito, alcuni metodi ed approcci all'elettronica sono dovuti cambiare per forza di cose. I filati, sempre più rari, sono stati sostituiti dai circuiti stampati, ma l'entusiasmo di costruire una scheda è rimasto invariato. Nel realizzare questo KIT il pensiero mi è andato più volte indietro nel tempo e ho cercato il più possibile di ricreare un qualcosa che rievocasse quei momenti dove saldatore e tester erano praticamente gli unici attrezzi a disposizione per costruire un apparecchio elettronico.
A termine di questa premessa voglio segnalare che possono esserci alcune incongruenze tra il progetto aggiornato, disponibile nei vari links, ed alcune delle fotografie scattate durante la realizzazione del prototipo. Questo progetto nasce e si sviluppa contemporaneamente alla stesura dei blogs, per cui, strada facendo, mi sono accorto di alcuni errori che ho prontamente corretto nei files.
Presentazione del KIT
Prima di procedere alla realizzazione pratica del PLC didattico voglio presentare il mio KIT:
Come si vede i componenti non sono poi tanti, almeno per quello che dovrà essere in grado di fare la scheda. Sono infatti stato più essenziale possibile, in quanto lo scopo era quello di realizzare un PLC didattico ma che al tempo stesso potesse funzionare come un vero PLC. Per questo ho voluto fare un apparecchio completo di IO (8 ingressi + 8 uscite) per poter provare i programmi IEC connettendolo anche a qualcosa di reale (lampade, motorini, pulsanti ed altro). Conseguentemente le interfacce di IO hanno fatto lievitare questa quasi "manciata" di componenti, tanto che la precedente "foto di gruppo" è occupata, per ben oltre la metà, da quelli utilizzati per realizzare gli ingressi ed uscite digitali. A questo proposito voglio esprimere una mia opinione di progettista: l'interfacciamento al mondo esterno di una scheda per l'automazione è spesso la parte più ingombrante e brutta. Basta guardare nel centro della foto come è piccolo e bello il processore e quanto sono grossi e brutti i relè in alto a destra, i varistori (quelli blu), le morsettiere ed i connettori in alto. Anche buona parte dei componenti in basso (condensatori, leds, reti resistive e resistenze) ed alcuni integrati a sinistra, servono per le interfacce di ingresso ed uscita digitali.
Pur essendo questo un progetto didattico, mi preme sottolineare che nel realizzare una scheda per l'automazione industriale, il difficile è proprio fare questa parte di contorno ai circuiti logici di elaborazione. Il progetto di una scheda destinata al controllo di un'automazione non si esaurisce di certo con la stesura della parte digitale, spesso coincidente con un solo microprocessore single-chip. Questi componenti sofisticati, potenti e tecnologici vanno purtroppo "vestiti" da tutta una serie di componenti, generalmente passivi (resistenze, condensatori e bobine), per resistere alle "intemperie" presenti nell'ambiente circostante, quali i disturbi elettromagnetici generati da altri sistemi. Mi capita di frequente di trovare in giro sistemi di controllo realizzati con schede sulle quali sono presenti circuiti integrati fino al bordo limite della stessa e dove le connessioni sono praticamente dirette ai pins di questi. Purtroppo l'interfacciamento all'esterno della scheda è pesante, ingobrante e costoso ma è quello che distingue una demoboard da una scheda destinata all'automazione.
Come ho già evidenziato nel mio primo blog, in questo progetto ho voluto ottenere un compromesso ottimale tra la semplicità e una minima robustezza ai disturbi elettromagnetici. Tale progetto costituisce solo un pretesto per discutere di elettronica e di programmazione IEC e questo PLC in KIT deve essere considerato un oggetto ad uso esclusivamente didattico.
Il circuito stampato, a doppia-faccia, completa il materiale per la realizzazione del PLC didattico:
Ho sempre ritenuto che il circuto stampato sia uno degli elementi più importanti di un sistema elettronico. Un buon progetto a livello di schema può essere compromesso da un layout del circuito stampato poco curato. E' questo elemento spesso a fare la differenza di comportamento di una scheda a microprocessore nei confronti di interferenze elettromagnetiche provenienti, per esempio, da carichi induttivi (teleruttori, elettrovalvole, motori...) quando la loro alimentazione viene improvvisamente interrotta.
Le extratensioni generate da questi dispositivi si propagano lungo tutto il cablaggio del quadro e, in particolare, la componente di "modo comune" (quella che si sovrappone su tutti i segnali con stessa polarità e con riferimento alla struttura metallica del quadro) entrando nei morsetti della scheda e passando sulle delicate piste interne, riesce a chiudere il suo percorso sulla parte metallica sottostante la scheda stessa. Questa "chiusura del giro" avviene anche in assenza di un'effettiva connessione elettrica a causa delle numerose capacità parassite presenti tra qualsiasi cavo, pista del PCB e parti metalliche varie. Per questo occorre rendere difficoltoso questo percorso predisponendo ostacoli in serie mediante isolamenti galvanici subito a ridosso dei morsetti, ma soprattutto vie di fuga preferenziali tra i morsetti della scheda e la stessa struttura metallica del riferimento del disturbo di "modo comune".
Nel PLC didattico ho attuato questa soluzione, a scopo di esempio, limitatamente agli ingressi digitali in quanto optoisolati e dotati del condensatore C5 di deviazione su una piazzola di fissaggio della scheda:
L'utilizzo degli optoisolatori OC1-OC8 introduce sul percorso degli ingressi un buon ostacolo serie al disturbo di "modo comune", ma le capacità parassite degli opto e delle piste sono ancora in grado di fornire una buona strada di accesso ai punti interni. I disturbi di cui sopra hanno tensioni e contenuti spettrali di frequenze elevate per cui non rimangono particolarmente "demotivati" dagli optoisolatori. L'aggiunta di una via di fuga preferenziale e parallela (di shunt) a monte degli opto, sul comune degli ingressi, fornisce un valido supporto al difficile compito degli opto. L'uso di un solo "deviatore" di disturbi (in questo caso un condensatore) posto sul comune degli ingressi può essere più che sufficiente. Normalmente i comuni, facendo percorsi più lunghi ed estesi, trasportano una buona percentuale dei disturbi EMI, per cui, per economia, può bastare uno shunt solo su tale connessione. Nel circuito stampato questa connessione è stata volutamente estesa da un pieno di rame per raccogliere capacitativamente disturbi anche dalle altre piste a monte degli optoisolatori. Ovviamente questo presuppone un fissaggio della piazzola della scheda ad un telaio metallico anche solo parallelo e vicino al fondo quadro oppure direttamente a questo. Tuttavia, visto che è per uso didattico, alla fine del montaggio non resisterò neanche io dal mettere questo PLC giocattolo su un bellissimo e pratico guscio di plastica isolato!!!
Molto importante, nelle parti relative all'isolamento galvanico, è la fisica separazione sul circuito stampato tra le parti a monte e a valle dell'isolamento. La scheda osservata in controluce deve mostrare una zona abbondante di assenza piste, altrimenti le capacità parassite tra queste rendono vano l'isolamento (almeno per le alte frequenze). Altra cosa molto importante è il piano di massa, ossia un'ampia zona di rame su una delle layers dello stampato per la massa (GND) di riferimento dei circuiti. In genere adotto un piano di massa nel lato componenti, come in questo caso, oppure nel lato saldature quando la componentistica è SMD. Questo pieno di massa costringe ad utilizzare, per le connessioni, l'altra superficie del PCB come se fosse un monofaccia, interrompendo il pieno di rame lo stretto essenziale per le connessioni "difficili".
Download
L'elenco dettagliato dei materiali del KIT, con i riferimenti di posizione, è nel seguente file:
EY-CPU_Elenco_Materiali.XLS
I files gerber relativi al circuito stampato sono nel seguente link:
EY-CPU_Gerber_rev02.zip
Per visualizzare i files gerber si può utilizzare (Menu: File->Import) questo tool liberamente scaricabile:
GC-Prevue
Il montaggio del KIT
Per il montaggio ho utilizzato un saldatore a stilo di media potenza termoregolato, con una punta media ed una più sottile. Infatti la scelta di non usare componenti SMD, per evitare l'uso di attrezzi più particolari, non mi è stata possibile solo per un paio di componenti. Si tratta della piccola induttanza L1 e del trasformatore T1 di segnale della porta Ethernet che sono componenti dove il "pressing" della tecnologia SMD si fa piuttosto sentire. Tuttavia il passo (1.27mm) del trasformatore consente agevolmente la saldatura con una punta conica sottile come si vede nelle successive immagini.
La serigrafia presente sul circuito stampato definisce le posizioni dei componenti in relazione ai riferimenti riportati nell'elenco materiali:
Download
Ho iniziato col montare i due componenti SMD ossia la bobina L1 ed il trasformatore T1. In particolare per il trasformatore ho fissato con precisione la posizione, centrata rispetto alle piazzole del circuito stampato, saldando due pins in diagonale agli estremi delle due file. Poi, verificato il corretto posizionamento, ho effettuato la saldatura di tutti i restanti pins:
Per la saldatura dell'induttanza L1 ho utilizzato un paio di pizzette per tenerla in posizione, facendo attenzione a non danneggiarne la superficie:
A questo punto ho continuato con la saldatura di tutti i componenti dando precedenza ai passivi più piccoli come le resistenze:
Ho tralasciato, per ora, il montaggio dei grossi condensatori elettrolitici, saldando i piccoli condensatori ceramici e al tantalio :
I leds previsti nel circuito saranno molto utili in fase di test del programma applicativo IEC. Assieme ai leds ho montato anche i pochi diodi presenti nel circuito:
Le reti resistive (quelle nere) sono molto vantaggiose in termini di spazio occupato e ne ho fatto abbondante uso. Ho anche montato i varistori ed i condensatori a disco alta tensione. A dire il vero poi mi sono pentito di aver montato quest'ultimi in questa fase perchè poi, maneggiando successivamente la scheda, tendono a piegarsi (mai raddrizzarli più volte ma solo alla fine!):
E' giunta l'ora dei circuiti integrati anche se, per quelli che prevedono lo zoccolo, attenderò il termine del montaggio per inserirli. Ho montato anche il pulsante, il deviatore e la bobina dell'alimentatore switching:
Il montaggio degli ingombranti connettori e morsettiere a vite comincia a dare alla scheda un aspetto più definito:
I relè occupano una parte notevole del circuito, ma come già detto vorrei poter collegare questa scheda anche a qualche lampada esterna. Ormai sono alla fine per cui decido di montare anche i condensatori elettrolitici:
E' arrivato il momento di infilare (con grande attenzione) il modulo processore. Ma prima di fare questo mi sono preoccupato di dare alimentazione alla scheda e di verificare almeno le corrette tensioni erogate dall'alimentatore (+5V e +3.3V):
Dopo il montaggio ho dato una pulita al lato saldature con alcool e spazzolino rigido per far sparire più magagne possibili lasciate dal saldatore. Non ho pitturato la scheda finita che appare nelle foto finali, ma semplicemente, essendo un fotografo improvvisato, ho avuto condizioni di illuminazione ambiente differenti tra la tarda serata in cui ho montato il mio KIT e la mattina successiva. Comunque: l'importante è che funzioni...
Il colpo di grazia
Come ho tecnicamente motivato poco sopra, non sono un patito delle scatole di plastica, ma la tentazione di dargli una forma migliore è stata grande. Ho preso un pezzo di profilo in plastica che avevo in giro e, armato di "segaccio", ne ho tagliato un pezzo lungo giusto (che fatica però andare diritti...).
L'effetto finale è sicuramente migliore:
Foto di gruppo finale
Al termine del duro lavoro convinco i miei "fidati collaboratori" a partecipare ad una foto di gruppo assieme alla nuova creatura. Al saldatore vanno i maggiori meriti per il suo instancabile lavoro che svolge, senza mai protestare, da più di 20 anni. Le pinzette hanno contribuito alla saldatura della piccola bobina SMD, mentre le pinze e tronchesine hanno piegato i terminali dei componenti e tagliato le parti in eccesso dopo la saldatura. Il multimetro ha confermato il funzionamento dell'alimentatore prima di inserire definitivamente il processore nello zoccolo. Infine non poteva mancare il "segaccio" il cui contributo è stato fondamentale per il taglio del guscio in plastica.
Conclusione
Finisce qui questa parte, sperando di non aver annoiato nessuno con l'eccessiva estensione verticale del blog causata dalle fotografie. Ora si tratta di far girare qualche programma IEC61131-3 sulla scheda, ma prima di programmarla occorrerà definire alcune questioni software di non poco conto. Mi riferisco allo sviluppo del Real Time System (abbreviato in RTS) che è quel programma eseguibile che la farà funzionare come PLC in stretto contatto con l'ambiente di sviluppo CoDeSys. Di questo e di alcune operazioni di servizio relative al sistema operativo real-time della scheda, necessarie dopo il montaggio hardware, me ne occuperò nel prossimo blog.
Download
http://www.electroyou.it/users/files/AOX/EY-CPU_Schema.pdf
http://www.electroyou.it/users/files/AOX/EY-CPU_Elenco_Materiali.xls
http://www.electroyou.it/users/files/AOX/EY-CPU_Gerber_rev02.zip
http://www.electroyou.it/users/files/AOX/EY-CPU_Assemblaggio.pdf
http://www.electroyou.it/users/files/AOX/fileperblog.zip
L'utente "libero0000" ha costruito il suo PLC
Il provvidenziale intervento di libero0000 ha permesso di risolvere il primo problema che ha colpito duramente il mio progetto. Sapevo che i relè di questi tempi sono introvabili, ma con una certa leggerezza ho utilizzato nel progetto un relè che già conoscevo da tempo e che avevo adottato in passato. Purtoppo nel rimediare i materiali per i primi esemplari mi sono trovato subito "in buca" con le solite marche che avevo in testa e, errore del progettista testardo, non ho guardato oltre il mio naso. Così libero0000 mi ha segnalato che pure Finder produceva tale relè e ne ha pure comperati su Ebay un numero sufficiente a coprire i primi KITS. Cosa ancora più bella è che questi relè hanno pure l'opzione di essere montati su zoccolo, il che da un'ulteriore possibilità alla scheda. Approfittando di tale suggerimento ho poi verificato che tale relè è disponibile a volontà e in stock, alla faccia delle 47 settimane di consegna di quelli che ho usato io nel mio KIT e che avevo già nel cassetto. Ora libero000 è impaziente di cominciare a programmarlo con CoDeSys, ma deve ancora per un po' usarlo come fermacarte sulla scrivania, un'altro dei possibili utilizzi del PLC didattico.
Ecco le foto che libero0000 mi ha inviato sul montaggio del suo KIT:
Anche "claudio7311" ha montato il suo PLC
Voglio presentare un nuovo nato del mio progetto, pronto per ricevere la prima "scossa". Sono sicuro che la volontà, impegno ed entusiasmo di claudio7311 saranno ripagati dal funzionamento al primo colpo del suo KIT. Così potrà iniziare subito a programmarlo e a preparare il suo piccolo, ma importante, corso per i ragazzi della scuola media. Il suo scopo didattico è veramente al limite di ogni possibilità dell'insegnamento, ma se avrà dubbi e difficoltà io sono sempre pronto a sostenerlo, aiutarlo e magari ad ascoltarlo in mezzo ai banchi. Così mi faccio pure un giro dalle sue parti, visto che lì ho dei bei ricordi degli anni dell'università e un po' meno del militare...
Questo è il PLC in KIT realizzato da claudio7311: