Piero V.

Stampante 3D/PCB Miller: si va avanti

Checché ne dica chi mi ha visto lavorare ieri, il progetto va avanti.

Ma facciamo un passo indietro: tempo fa avevo parlato di progetti elettronici che avevo in mente.

Quella che avevo chiamato “macchina per fare PCB” ho scoperto che può essere chiamata PCB Miller, per questo ho riportato questo termine nel titolo.

Tuttavia ho anche messo stampante 3D, e non è un caso: già su wired avevo letto del progetto RepRap e me ne ero già dimenticato, ma cercando informazioni su questi argomenti ho letto di parecchia gente che ha sviluppato idee molto simili alla mia partendo da questo progetto, che sarebbe appunto una stampante 3D in grado di replicarsi da sola, stampando tutte le parti di plastica che servono per costruirla.

Sono così tanto interessato al progetto che ho stimolato anche un mio amico a partecipare, tuttavia lui farà una vera e propria RepStrap, ovvero una RepRap costruita con pezzi di recupero, infatti lo “strap” sta per bootstrap, la linguetta con cui aiutarsi per mettersi le scarpe. Però ormai mi conosco: quando comincio un progetto del genere ci impiego dei mesi per avviare la fase operativa.

La prima fase è cominciata al Balon di Torino, dove, prevedendo che mi sarebbero serviti motori, avevo preso una multifunzione HP e uno scanner HP, sperando di recuperare degli stepper. Alla fine ho trovato uno stepper dallo scanner ma tutti gli altri erano motori DC, magari mi serviranno più avanti.

Poi qualche tempo fa sono riuscito a recuperare senza pagare niente un altro scanner HP e una Epson Stylus C600 dismessi. Lo scanner ha un motore passo passo simile ma una struttura molto più solida, perciò penso che userò quello. Invece la stampante è stata ottima: aveva ben due stepper di categoria NEMA 17, con un momento superiore a quello richiesto da alcune RepRap ufficiali: direi che ho fatto centro 😀 . Ho inoltre recuperato anche altri pezzi utili come tre interruttori di fine corsa ottici, che pur essendo elementari si fanno pagare. Direi che difficilmente avrei potuto essere più fortunato!

Da questa mia esperienza ho tratto un insegnamento: meglio evitate le stampanti inkjet HP per cercare motori stepper: ne ho viste sia vecchie che recenti e tutte avevano un motore DC. Si può riconoscere dal fatto che presentano dove c’è una striscia che può sembrare trasparente ma è piena di righe. Ciò perché per controllare i motori DC si usano i cosiddetti encoder e decoder, un insieme di componenti capace di capire il movimento relativo del motore. La striscia serve proprio a quello: nel carrello sono montati un sensore e un led che capiscono quando c’è una linea e quando no e il software fa quindi i suoi calcoli utilizzando quei segnali. Perciò per andare sul sicuro vi conviene cercare stampanti vecchie, magari della Epson, perché i motori DC costano meno, perciò penso che più o meno tutti i produttori adesso li usano, ma sono solo supposizioni.

Comunque sia oltre che smontare stampanti ho anche pensato a come realizzare la parte elettronica. Cominciare da capo potrebbe essere un suicidio, specialmente per me che faccio solo cose pratiche su questo versante 😊 .

Ho trovato tutto ciò di cui avevo bisogno sui siti di RepRap e Arduino.

Per il momento ho pensato di fare una scheda di controllo basata sulla Generation 7 privata del convertitore seriale onboard e delle schede di espansione. Come board ho scelto quella perché è semplice sia a livello di numero di componenti, che a livello di montaggio, infatti la parte che mi interessa è tutta trough-hole. Ciò è un notevole vantaggio, visto che non ho mai fatto una saldatura SMD; comunque se il progetto viene potrei iniziare a farne 😊 . L’esclusione del convertitore seriale-USB è dettata dal fatto che il chip usato da loro costa abbastanza e ho già trovato dei metodi alternativi, che spiegherò sotto. La rimozione delle espansioni, per quanto interessanti, è dettata sempre dal costo ma indirettamente. Quasi tutte le schede di controllo per RepRap sono basate su ATMega644 o superiori. Questo chip è comodo perché ha più memoria e più input/output però molto costoso: anche 2-3 volte un ATMega328, quello su cui sono basati tutti gli ultimi Arduino standard. Visto che comunque, con funzionalità base sembra sia possibile utilizzare questo chip, magari col firmware Teacup. Però appunto l’ATMega328 ha troppi pochi pin, non abbastanza per garantire l’uso delle estensioni. Qualora non dovessi riuscire a usarlo comprerei l’ATMega644 e userei l’ATMega nel mio Arduino auto costruito.

Quindi a livello di scheda madre sono più o meno a posto, anche se dovrò apportare qualche modifica al layout.

A livello di driver per gli stepper ho deciso di non usare i driver consigliati: sono SMD e costosi. Il nostro obiettivo principale è di fare un qualcosa che funzioni, anche senza estrema precisione, spendendo il meno possibile e facendo il più possibile da soli. I driver consigliati sono avanzati, hanno una migliore efficienza e supportano il microstepping, però ci costerebbero abbastanza, almeno 10€. Però a noi piace sperimentare perciò per il momento ho pensato a un’altra soluzione, più economica e through hole, ma senza microstepping: lo stepper motor driver 1.2, ormai obsoleto secondo il progetto. A questo sostituiremmo agli L298 gli SN754410 per i motori bipolari e gli ULN2003 o gli ULN2803 per quelli unipolari. A livello di segnali sono compatibili con i driver recenti: hanno sempre clock, direzione e acceso/spento. È l’integrato L297 che si occupa di trasformare questi segnali in segnali da mandare o al ponte H (L298 per motori con corrente maggiore di 1A, o nel mio caso gli SN754410) o all’array di Darlington, che a loro volta mandano un segnale ad alta corrente agli stepper.

E qui torniamo all’esordio del post: ho presi degli SN754410 dalla Cina e mi sono arrivati ieri. Ne ho presi 10 per 8.60$ più spedizione assicurata di 3$. Purtroppo in quei giorni il cambio era più alto e Paypal gioca sempre con la sua commissione, perciò in € ho speso 9.04€, comunque niente male. La spedizione mi ha fatto stare un po’ in ansia, perché comunque non avevo mai preso dalla Cina. Avevo letto delle spese aggiuntive ma si verificano solo con spese maggiori ai 22€ e consistono in IVA e diritti postali, più eventuale dazio per valori dichiarati sopra i 150€.

Fortunatamente la spedizione non ci ha messo tanto: il 13 Settembre il pacchetto è stato spedito dalla Cina, il 27 è arrivato in Italia e ieri, 2 Ottobre mi è arrivato a casa come raccomandata. Avere il tracking è sempre utile e rassicurante, ve lo consiglio. Avevo un po’ paura della dogana perché avevo letto di storie di pacchi persi, oppure di tempi biblici o di valori dichiarati che secondo loro non erano corretti e un conseguente aumento spropositato di tasse. Comunque il mio pacco era perfettamente in regola e quindi è passato tranquillamente.

Ieri ho testato tutti i 10 integrati, però ho avuto problemi con gli stepper e Arduino, perciò alla fine li ho usati come ponte H per un motore DC intanto per vedere se andavano. Spero che con gli L297 non avrò problemi. È per questo che un mio amico, vedendo gli esperimenti mi ha detto: «Mi sembra tanto una stampante 3D!».

Alla fine 10 pezzi è il numero giusto perché non sono 10 per me ma 5 a testa. A me ne vanno via due, uno per l’asse Y e uno per l’asse Z, visto che per l’asse X uso un motore unipolare con cui posso quindi utilizzare l’ULN. Al mio amico ne dovrebbero andare via 3, perciò ne avremmo potuti prendere anche solo 5. Però abbiamo preferito prenderne 10 visto che comunque abbiamo trovato un buon prezzo: il caso non voglia che servano altri stepper o che se ne brucino.

A tal proposito però posso affermare che l’integrato è abbastanza protetto: oltre che perché nel datasheet c’è scritto che contiene delle protezioni quali diodi etc, quando si fanno i circuiti su breadboard rischi sempre di fare errori, nel mio caso ho sbagliato sia a collegare massa e Vcc (non sono segnati ☹️ nella mia breadboard e rischio di dimenticarmi come li avevo messi) e a un certo punto anche posizione eppure i componenti vanno tutti lo stesso 😊 . Devo ringraziare i produttori per pensare ai pasticcioni come me 😈 .

Probabilmente dovremo procurarci dei dissipatori di calore: nel datasheet dei motori che ho recuperato c’era scritto che la loro corrente era 700mA ed il massimo di questi integrati è 1A. Allora o si collegano due integrati in parallelo oppure si mette appunto un dissipatore. Staremo a vedere, tanto pensavamo di fare tutto su breadboard e poi se funziona far fare alla macchina i PCB di sé stessa 😊 .

Adesso siamo in attesa di un altro pacchetto, contenente gli L297 (pagati $8.27, col cambio di oggi 6.08€), due ATMega328 (con zoccolo e non programmati, $5.90), due convertitori seriali USB-TTL ($3) e cavetti da breadboard (due confezioni da 65 cavi $4). Purtroppo sono stato stupido e per questo pacco ho usufruito della spedizione gratuita che è però priva di assicurazione e tracking number.

All’inizio pensavo di utilizzare un cavo USB-RS232 che avevo già preso e un MAX232, però dopo ho trovato quest’offerta nettamente migliore. In futuro magari sfrutterò il progetto V-USB che si propone di creare una libreria che implementi USB 1.1 nei vari chip Atmel anche se non ce l’avrebbero nativamente.

Per il momento siamo come spesa a circa 12.50€ a testa di componenti che useremo sicuramente, più i 10€ che avevo speso al Balon. Del materiale che ho a casa riuscirò sicuramente riciclare un alimentatore ATX avuto per 0€ e magari qualche componente elettronico passivo e del compensato.

Di sicuro per la struttura ci servirà una barra filettata per fare l’asse delle Z. L’altro giorno sono andato in ferramenta a informarmi sulle varie misure però mi sono dimenticato di chiedere il prezzo. Inoltre non ho assolutamente idea di come farò per collegarla al motore. Ho visto che molti si basano su pezzi di plastica stampati da altri.

L’asse delle X è quasi a posto: lo scanner che ho è molto resistente, devo solo capire come attaccargli il piano di lavoro.

Per gli altri assi sono invece abbastanza in alto mare: per le Y ho deciso che userò la cinghia che ho preso dalla stampante Epson e metterò insieme i carrelli delle due stampanti per dare una struttura basata sulle aste di metallo come sostegno. Per l’asse delle Z so solo che dovrò usare la barra filettata, magari posta al centro di altre due barre di metallo che danno la direzione. Pensavo di prendere ispirazione dalla WolfStrap.

Comunque penserò alla struttura effettiva solamente quando avrò tutti i componenti.

Poi i primi test li relizzerò con qualcosa simile a una penna. Se funziona ci metterò o un trapanino, come il Valex Mini-12, un incisore elettrico che secondo me potrebbe funzionare più che bene per i miei scopi, visto che ha anche una discreta velocità di rotazione oppure vedo se riesco a collegare in qualche modo un motore DC un mandrino, avendo così forse un peso minore. Il Valex Mini-12 costa circa 15€, un trapanino più serio costa invece almeno 50€.

Un’altra idea era di fare un sistema di supporti intercambiabili: poter passare dal trapanino alla penna per scrivere le varie annotazioni e le sagome di componenti direttamente sulla scheda non sarebbe male e aggiungerebbe un tocco di professionalità.

Un bel progetto per una PCB Miller sarebbe se no la Cyclone PCB Factory, però richiede delle parti di plastica stampante e una board SMD a due facce. Di sicuro sarebbe interessante vedere se si riesce a utilizzare il suo software, specialmente la funzione dello Z-Probing, ovvero una correzione a tutte le varie altezze.

Insomma, ce ne sarà di lavoro da fare, però sono ottimista, forse anche troppo. Non appena avrò ulteriori sviluppi vi terrò aggiornati.