Sommario:

Come costruire un programmatore USBTiny ISP: utilizzando la fresatrice PCB CNC: 13 passaggi (con immagini)
Come costruire un programmatore USBTiny ISP: utilizzando la fresatrice PCB CNC: 13 passaggi (con immagini)

Video: Come costruire un programmatore USBTiny ISP: utilizzando la fresatrice PCB CNC: 13 passaggi (con immagini)

Video: Come costruire un programmatore USBTiny ISP: utilizzando la fresatrice PCB CNC: 13 passaggi (con immagini)
Video: ProMicro ISP | SparkFun ProMicro come programmatore ISP 2024, Luglio
Anonim
Come costruire un programmatore USBTiny ISP: utilizzando CNC PCB Milling Machine
Come costruire un programmatore USBTiny ISP: utilizzando CNC PCB Milling Machine
Come costruire un programmatore USBTiny ISP: utilizzando CNC PCB Milling Machine
Come costruire un programmatore USBTiny ISP: utilizzando CNC PCB Milling Machine
Come costruire un programmatore USBTiny ISP: utilizzando CNC PCB Milling Machine
Come costruire un programmatore USBTiny ISP: utilizzando CNC PCB Milling Machine

Hai pensato a come costruire da zero il tuo progetto elettronico?

Fare progetti di elettronica è così eccitante e divertente per noi, creatori. Ma la maggior parte dei produttori e degli appassionati di hardware che si stanno avvicinando alla cultura dei produttori ha costruito i propri progetti con schede di sviluppo, breadboard e moduli. In questo modo, possiamo costruire la versione prototipale rapida del nostro progetto. Ma sarà ingombrante e incasinato con cablaggi breadboard. Caso simile mentre si utilizza una scheda PCB generica, sembra anche disordinato e poco professionale!

Quindi, come possiamo costruire i nostri progetti in un modo più conveniente?

Il modo migliore per utilizzare PCB Standalone per il nostro progetto!

Progettare e produrre un PCB per il nostro progetto è un modo migliore e conveniente per esprimere la tua professionalità e competenza!. Possiamo ridurre al minimo le dimensioni del nostro progetto in una dimensione compatibile e forme personalizzate, i PCB hanno un aspetto pulito e le connessioni robuste sono alcuni dei vantaggi.

Quindi, ciò che conta è, come costruiamo un PCB conveniente ed efficace in termini di tempo?

Possiamo inviare il nostro design a un produttore di PCB per produrre il nostro design PCB, ma dovrebbe volerci del tempo e farti esplodere le tasche. Un altro metodo consiste nel trasferire il toner utilizzando una stampante laser e carta fotografica. Ma è anche necessario tempo e testare il tuo livello di pazienti e hai anche bisogno di un pennarello indelebile per rattoppare le parti non incise. Ho usato questo metodo molto tempo e lo odio.

Allora, qual è il modo migliore?

Nel mio caso, il modo migliore per utilizzare le fresatrici CNC per costruire il tuo PCB. Le fresatrici per PCB offrono PCB di buona qualità e richiedono meno tempo, meno risorse e un modo più economico per produrre prototipi di PCB!

Quindi, costruiamo un programmatore ISP USBtiny utilizzando una fresatrice CNC!

Senza ulteriori operazioni, iniziamo!

Passaggio 1: non vuoi essere ricco

Veramente! non si desidera acquistare una fresatrice per PCB. La maggior parte di noi non ha il budget per acquistare una macchina costosa come questa. Non ne ho nemmeno uno.

Quindi, come posso accedere a una macchina? Semplicemente, vado in un fablab, in un makerspace o in un hackerspace nella mia località! Nel mio caso, vado in un fablab e uso la macchina a un prezzo conveniente. Quindi, trova un posto come fablab o un makerspace nella tua località. Per me, il prezzo è di 48 /ora per l'utilizzo della fresatrice PCB. Il prezzo può variare nella tua località. Quindi, come ho detto, non vuoi essere ricco!

Passaggio 2: Distinta base

Distinta materiali
Distinta materiali
Distinta materiali
Distinta materiali
Distinta materiali
Distinta materiali

Elenco dei componenti

  • 1 x microcontrollore Attiny 45/85 (pacchetto SOIC)
  • 2 x 499 Ohm
  • 2 x 49 Ohm
  • 2 x 1K
  • 2 x 3,3 diodo Zener
  • 1 x condensatore da 0,1 mf
  • 1 x led blu
  • 1 x LED verde
  • 1 x 2x3 pin di intestazione maschio (smd)
  • 1 cavo a nastro a 6 fili da 20 cm
  • Connettore di transizione del cavo a nastro IDC con intestazione femmina 2 x 2x3
  • 1x 4 cm x 8 cm FR4 rivestito in rame

Si prega di notare: (Resistenze, condensatori, diodi e led sono utilizzati in questo progetto è il pacchetto 1206)

Requisiti degli strumenti

  • Stazione di saldatura o saldatore (punta micro)
  • Cavo di saldatura
  • Pinzetta (micropunta)
  • Stoppino dissaldante
  • Strumento di terza mano
  • Multimetro
  • Spelafili
  • Aspiratore fumi (opzionale)

Requisiti delle macchine

Modela MDX20 (Qualsiasi fresatrice per PCB fa il lavoro, ma il software di controllo del lavoro cambierà)

Scarica le risorse per questo progetto!

Passaggio 3: cos'è una fresatrice per PCB?

Che cos'è una fresatrice per PCB?
Che cos'è una fresatrice per PCB?

La fresatrice per PCB è una macchina CNC (Computer Numerical Control) utilizzata per fabbricare prototipi di PCB. Le fresatrici per PCB fresano via le parti in rame del rivestimento in rame per individuare tracce e cuscinetti del PCB. La fresatrice per PCB è dotata di un movimento meccanico a tre assi (X, Y, Z). Ogni asse è controllato da un motore passo-passo per movimenti di precisione. Questi movimenti degli assi sono controllati da un programma per computer tramite comandi G-code. Gcode utilizza ampiamente i linguaggi di programmazione del controllo numerico, la maggior parte delle macchine utilizza il codice g per controllare l'asse delle macchine. Una testa dell'utensile (di solito una punta di fresatura) è collegata a questi assi per fresare i PCB.

:- La macchina che sto utilizzando è una fresatrice CNC MODELA MDX20.

Fresatrice per PCB Modela MDX 20

Modela MDX20 è una fresatrice per PCB. Modela MDX20 viene solitamente utilizzato per fabbricare PCB ma possiamo anche realizzare modanature, incisioni ecc. Modela può fresare su materiali diversi come compensato, cera, acrilico, materiali PCB diversi come Fr1 Fr4 ecc. Possiamo posizionarlo anche su un piccolo desktop. Il letto (superficie di fresatura) è collegato all'asse Y e la testa dell'utensile è collegata a X e Z. Ciò significa che il movimento del letto è controllato dall'asse Y e il movimento della testa dell'utensile è controllato dall'asse X e dalla testa dell'utensile è controllato dall'asse Z. Modela ha un proprio programma per computer. Ma sto usando un programma Linux chiamato FABModules. I moduli FAB comunicano con Modela per controllare il processo di taglio e fresatura. I moduli Fab non impostano mai automaticamente gli assi X, Y, Z, dobbiamo impostarli manualmente.

Passaggio 4: iniziare con Modela MDX20

Inizia con Modela MDX20
Inizia con Modela MDX20

Se voglio fresare il mio PCB, in questo caso, un programmatore FabISP. Per prima cosa ho bisogno di un layout di progettazione PCB e di un layout di contorno PCB. La fresatura PCB è un processo in due fasi. Nella prima fase, devo fresare le tracce e i pad del PCB e nella seconda fase, devo ritagliare il contorno del PCB. Usando i moduli fab possiamo convertire il layout di progettazione PCB-p.webp

Specifiche generali

  • Area di lavoro: 203,2 x 152,4 mm
  • Corsa dell'asse Z: 60,5 mm
  • Velocità del mandrino: 6500 giri/min

Punte da fresare da usare

  • Punta di fresatura: punta da 1/64 pollici (0,4 mm)
  • Punta da taglio: punta da 1/32 pollici (0,8 mm)

Passaggio 5: cos'è l'ISP (IN - Sistema - Programmatore)?

In System Programmer (ISP) noto anche come In-Circuit Serial Programmer (ICSP) è un programmatore di microcontrollori. L'ISP leggerà le istruzioni ei comandi dall'USB del computer e li invierà al Microcontrollore tramite l'interfaccia periferica seriale (SPI). I dispositivi Simply ISP ci consentono di comunicare con il microcontrollore utilizzando le linee SPI. SPI è la modalità di comunicazione nel microcontrollore. Ogni periferica e interfaccia collegata comunica con i microcontrollori tramite SPI. Da appassionato di elettronica, la prima cosa che mi viene in mente quando dico su ISP è MISO, MOSI SCK. Questi tre perni sono i perni importanti.

Semplicemente, ISP viene utilizzato per masterizzare programmi sul microcontrollore e anche per comunicare con il tuo microcontrollore!

Passaggio 6: USBTiny ISP: Schemi e layout PCB

USBTiny ISP: Schemi e layout PCB
USBTiny ISP: Schemi e layout PCB
USBTiny ISP: Schemi e layout PCB
USBTiny ISP: Schemi e layout PCB
USBTiny ISP: Schemi e layout PCB
USBTiny ISP: Schemi e layout PCB
USBTiny ISP: Schemi e layout PCB
USBTiny ISP: Schemi e layout PCB

USB Piccolo ISP

USBTiny ISP è un semplice programmatore AVR USB open source e un'interfaccia SPI. È a basso costo, facile da realizzare, funziona alla grande con avrdude, è compatibile con AVRStudio e testato sotto Windows, Linux e MacOS X. Perfetto per studenti e principianti, o come programmatore di backup.

Tutti i componenti sono utilizzati in questo progetto Componenti SMD. Il cervello dell'USBTinyISP è un microcontrollore Attiny45.

ATtiny 45 Microcontrollore

Il microcontrollore utilizzato in USBTinyISP è Attiny 45. Attiny45 è un microcontrollore AVR a 8 bit ad alte prestazioni e bassa potenza in esecuzione su architettura RISC di Atmel (microchip acquisito recentemente da Atmel). Attiny 45 è disponibile in una confezione da 8 pin. Attiny 45 ha 6 pin I/O, tre dei quali sono pin ADC (10 bit ADC) e altri due sono pin digitali che supportano PWM. Viene fornito con una memoria flash da 4 KM, 256 EEPROM programmabili nel sistema e 256 B SRAM. Tensione di esercizio da 1,8 V a 5,5 V 300 mA. Attiny 45 supporta l'interfaccia seriale universale. Sul mercato sono disponibili sia la versione SMD che la versione THT. Attiny 85 è una versione superiore di Attiny 45, sono quasi uguali. L'unica differenza è nella memoria Flash, Attiny 45 ha una flash da 4KB e Attiny 85 ha una flash da 8KB. Possiamo scegliere Attiny 45 o Attiny 85, non è un grosso problema, ma Attiny 45 è più sufficiente per creare FabTinyISP. Vedi la documentazione ufficiale da qui.

Passaggio 7: configurare la macchina

Configura la macchina
Configura la macchina
Configura la macchina
Configura la macchina
Configura la macchina
Configura la macchina
Configura la macchina
Configura la macchina

Ora costruiamo il PCB utilizzando la fresatrice per PCB. Ho incluso il layout Trace e il layout Cut nel file zip, puoi scaricare il file zip dal basso.

Prerequisito: scaricare e installare i Fabmodules da questo link

Fabmodules è supportato solo su macchine Linux, sto usando Ubuntu!

Passaggio 1: livello sacrificale

Innanzitutto, la piastra di lavoro della fresatrice PCB (AKA fresatura letto) è una piastra metallica. È robusto e ben costruito. Ma in alcuni casi, potrebbe danneggiarsi durante il taglio in profondità per errore. Quindi, posiziono uno strato sacrificale sopra il letto di fresatura (un rivestimento in rame posto sopra il letto di fresatura per evitare di toccare i bit nella piastra metallica).

Passaggio 2: fissare la fresa 1/62 nella testa dell'utensile

Dopo aver posizionato lo strato sacrificale, ora devo fissare la punta di fresatura (di solito si usa una punta di fresatura 1/62) nella testa dell'utensile. Ho già spiegato il processo in due fasi di fresatura dei PCB. Per fresare le tracce e le pastiglie del PCB, utilizzare una punta da fresa 1/64 e posizionarla sulla testa dell'utensile utilizzando la chiave a brugola. Mentre si cambiano i bit, prestare sempre maggiore attenzione ai bit. La punta della punta è così sottile che ha più possibilità di romperla mentre scivola dalle nostre mani anche se si tratta di una piccola caduta. per ovviare a questa situazione ho posizionato un pezzetto di gommapiuma sotto la testa dell'attrezzo per proteggerlo da cadute accidentali.

Passaggio 3: pulire il rivestimento in rame

Sto usando un rivestimento in rame FR1 per questo progetto. Gli FR-1 sono resistenti al calore e più durevoli. Ma i rivestimenti di rame si ossideranno rapidamente. I rame sono magneti per impronte digitali. Quindi, prima di utilizzare un rivestimento in rame, anche se nuovo, ti consiglio di pulire il PCB con un detergente per PCB o acetone prima e dopo la fresatura del PCB. Ho usato un detergente per PCB per pulire il PCB.

Passaggio 4: fissare il rivestimento in rame sul pad di fresatura

Dopo aver pulito il rivestimento in rame, posizionare il rivestimento in rame sulla parte superiore del letto di fresatura. Ho posizionato il rivestimento in rame sul pad di fresatura con l'aiuto di un nastro biadesivo. I nastri biadesivi sono così facili da rimuovere e sono disponibili a un prezzo economico. Incollo il nastro biadesivo sulla parte superiore dello strato sacrificale. Quindi posiziona il rivestimento di rame sulla parte superiore del nastro adesivo.

Passaggio 8: configurazione dei moduli Fab e processo di fresatura

Configura moduli Fab e processo di fresatura
Configura moduli Fab e processo di fresatura
Configura moduli Fab e processo di fresatura
Configura moduli Fab e processo di fresatura
Configura moduli Fab e processo di fresatura
Configura moduli Fab e processo di fresatura

Passaggio 1: accendi la macchina e carica FabModules

acceso la macchina e quindi aprire il software del modulo Fab in un sistema Linux (sto usando Ubuntu) digitando il comando seguente nel terminale Linux.

f ab

Quindi si aprirà una nuova finestra. Seleziona image(.png) come formato di file di input e formato di output come Roland MDX-20 mill(rml). Successivamente, fai clic sul pulsante Make_png_rml.

Passaggio 2: caricare l'immagine del progetto PCB

Nella parte superiore della nuova finestra seleziona il bit che utilizzerai. quindi carica il tuo formato-p.webp

Passaggio 3: imposta gli assi X, Y e Z

Non abbiamo ancora finito. Ora premi il pulsante Visualizza sul pannello di controllo di Modela MDX20. assicurati che la punta sia ben stretta. premere ancora una volta il pulsante Visualizza per tornare alla posizione predefinita. Ora imposta le posizioni X, Y inserendo le misure (dipende dalla posizione della tua scheda) nelle caselle di testo desiderate. Ti consiglio di annotare le posizioni X e Y da qualche parte. Se qualcosa è andato storto e devi iniziare dal primo, dovresti aver bisogno delle esatte posizioni X&Y per continuare il tuo processo di fresatura, altrimenti si rovinerà.

Abbassare la testa dell'utensile premendo il pulsante Giù. Fermarsi quando la testa dell'utensile si avvicina al rivestimento di rame. Quindi perdere la vite della testa dell'utensile e abbassare leggermente la punta finché non tocca lo strato di rame del rivestimento di rame. Quindi serrare nuovamente la vite e riportare la testa dell'utensile nella posizione iniziale premendo il pulsante Visualizza. Ora siamo tutti a posto. Chiudere il coperchio di sicurezza della Modela e fare clic sul pulsante Invia. La modella inizierà il processo di fresatura.

Ci vorranno da 10 a 13 minuti per fresare le tracce e le pastiglie. Terminata la fresatura ho ottenuto un buon risultato.

Passaggio 4: tagliare il layout del contorno

Dopo aver terminato la fresatura della traccia, ritaglia il layout del contorno del PCB (semplicemente la forma del PCB). Il processo è quasi lo stesso. Per tagliare il layout, cambiare il bit da 1/64 a 1/32 bit nella testa dell'utensile. Quindi carica il file-p.webp

Passaggio 9: PCB finito

PCB finito
PCB finito
PCB finito
PCB finito

Ecco il PCB dopo il processo di fresatura!

Passaggio 10: saldatura dei componenti su PCB

Saldatura dei componenti su PCB
Saldatura dei componenti su PCB
Saldatura dei componenti su PCB
Saldatura dei componenti su PCB

Ora ho un PCB finito. tutto quello che devo fare è saldare i componenti sul PCB. Per me è un compito facile e divertente.

Quando si tratta di saldatura, i componenti a foro passante sono così facili da saldare rispetto ai componenti SMD. I componenti SMD hanno un ingombro ridotto. è un po' difficile da saldare per i principianti. Ci sono molte possibilità di commettere errori come errori di posizionamento delle saldature a freddo dei componenti e la cosa più comune o creare ponti tra tracce e pad. Ma ognuno ha i propri suggerimenti e trucchi per la saldatura, che sono stati appresi dalle proprie esperienze. questo renderà questo compito facile e divertente. Quindi prenditi il tuo tempo per saldare i componenti!

Qui come faccio a saldare

Di solito saldare prima i microcontrollori e altri circuiti integrati. Poi ho saldato piccoli componenti come resistori e condensatori ecc…

Infine componenti a foro passante, fili e spine di testata. Per saldare il mio USBTinyISP, seguo gli stessi passaggi. Per saldare facilmente gli SMD, in primo luogo, riscaldo il saldatore a 350°C. Quindi aggiungi un po 'di flusso di saldatura sui pad. Quindi riscaldare il pad su cui voglio saldare i componenti, quindi aggiungo una piccola quantità di saldatura a un singolo pad del pad del componente. Usando le pinzette, pizzicare il componente e posizionarlo sul pad e riscaldare il pad per 2-4 secondi. Successivamente, saldare i pad rimanenti. Se crei ponti tra pin e tracce o fornisci molta saldatura a un componente, usa il nastro dello stoppino di saldatura per rimuovere la saldatura indesiderata. Continuo gli stessi passaggi fino a quando il PCB non è completamente saldato senza alcun problema. Se qualcosa è andato storto, per prima cosa controllo attentamente tutte le tracce e i componenti che presentano rotture o ponti utilizzando una lente di ingrandimento e un multimetro. Se l'ho trovato, lo rettifico!

Passaggio 11: realizzazione del cavo ISP

Realizzazione del cavo ISP
Realizzazione del cavo ISP

Per collegare il microcontrollore o un altro programmatore ISP per eseguire il flashing del firmware. abbiamo bisogno di un filo Ribon Ribon a sei linee con due connettori femmina 2x3. Ho usato un cavo a nastro da 4/3 piedi e 6 canali e ho collegato con cura l'intestazione femmina su entrambi i lati. Per fare bene ho usato un morsetto G. vedere l'immagine.

Passaggio 12: firmware lampeggiante

Firmware lampeggiante
Firmware lampeggiante
Firmware lampeggiante
Firmware lampeggiante
Firmware lampeggiante
Firmware lampeggiante

Ora possiamo eseguire il flashing del firmware sul nostro ISP. Per farlo abbiamo bisogno di un altro programmatore ISP. Ho usato un altro USBTinyISP, ma puoi usare un Arduino come ISP per svolgere questa attività. Collega entrambi gli ISP utilizzando il connettore ISP che abbiamo realizzato in precedenza. Quindi collegare USBinyISP (quello che stiamo usando per la programmazione) al computer. Assicurati che l'ISP sia rilevato nel tuo sistema digitando il comando seguente nel terminale Linux.

lsusb

Passaggio 1: installare la catena di strumenti AVR GCC

Prima di tutto, dobbiamo installare la catena degli strumenti. Per farlo, apri un terminale Linux e digita.

sudo apt-get install avrdude gcc-avr avr-libc make

Passaggio 2: scarica e decomprimi il firmware

Ora scarica e decomprimi i file del firmware. Puoi scaricarlo da qui. Dopo aver scaricato il file zip, estrai in una buona posizione che puoi trovare facilmente (per evitare inutili confusioni).

Passaggio 3: crea file

Prima di masterizzare il firmware. dobbiamo assicurarci che il makefile sia configurato per i microcontrollori Attiny. Per fare ciò, apri il Makefile in qualsiasi editor di testo. quindi confermare MCU = Attiny45. Vedi l'immagine qui sotto.

Passaggio 4: flashare il firmware

Ora possiamo eseguire il flashing del firmware sul nostro ISP. Per farlo abbiamo bisogno di un altro programmatore ISP, come ho detto prima. Ho usato un FabTinyISP, che ho creato in precedenza. Ma puoi usare qualsiasi ISP o usare un Arduino come programmatore ISP. Collega entrambi gli ISP utilizzando il connettore ISP che ho realizzato in precedenza. Quindi collega FabTinyISP (quello che utilizzo per programmare il mio ISP) al computer. Assicurati che l'Isp sia rilevato nel tuo sistema digitando il comando seguente nel terminale Linux.

lsusb

Ora siamo pronti per il flash. Aprire il terminale nel percorso della cartella del firmware che si trova e digitare "make" per creare il file.hex. Questo genererà un file. file esadecimale che dobbiamo masterizzare in Attiny 45.

Digita il comando seguente nel terminale Linux per eseguire il flashing del firmware sul microcontrollore.

fare lampeggiare

Passaggio 5: abilitazione di Fusebit

Questo è tutto, abbiamo finito di flashare il firmware. Ma dobbiamo attivare il fusibile. Basta digitare

fare fusibile

il terminale per attivare il fusibile interno.

Ora dobbiamo rimuovere il ponticello o disabilitare il pin di ripristino. La rimozione della connessione del ponticello non è obbligatoria, possiamo disabilitare il pin di ripristino. Spetta a voi. Scelgo di disabilitare il pin di ripristino.

Nota: se disabiliti il pin di ripristino, il pin di ripristino verrà disconnesso internamente. Significa che non puoi più programmarlo dopo aver disabilitato il pin di ripristino.

Se vuoi disabilitare il pin di ripristino, digita il comando seguente nel terminale.

rstdisbl

Riceverai un messaggio di successo. Dopo aver caricato con successo il firmware devo verificare che USBTinyISP funzioni correttamente, per farlo è necessario inserire un comando nel terminale

sudo avrdude -c usbtiny -b9600 -p t45 -v

Dopo aver inserito il comando, otterrà il feedback di ritorno nella finestra del terminale.

Passaggio 13: abbiamo finito

Abbiamo chiuso
Abbiamo chiuso
Abbiamo chiuso
Abbiamo chiuso
Abbiamo chiuso
Abbiamo chiuso

Ora puoi rimuovere entrambi i dispositivi dal computer e utilizzare USBtiny che è stato creato in questo momento per programmare i tuoi microcontrollori d'ora in poi. Sto usando questo ISP per flashare i miei schizzi Arduino.

Consigliato: