MECCANICA e DINTORNI
http://meccanicaedintorni.morpel.it/phpbb/

Arduino CNC Shield
http://meccanicaedintorni.morpel.it/phpbb/viewtopic.php?f=16&t=28668
Pagina 1 di 2

Autore:  umbez [ dom ott 18, 2020 11:47 ]
Oggetto del messaggio:  Arduino CNC Shield

Visto che mi è stato chiesto qualche giorno fà info circa l'elettronica delle cnc / torni e visto che ad ora la cnc che ho in vendita ha una elettronica non funzionante, ho iniziato a giocare un po' con quello che avevo accumulato nel tempo (eh si anche io sono un accumulatore seriale) e fra ieri ed oggi ho messo su una elettronica di pilotaggio (almeno per quello che offre la piattaforma) completa.
In questo post condividerò le mie impressioni e il build-log cosicchè se qualcuno è interessato alla sua realizzazione, può partire da queste informazioni. Ovviamente non è nulla di speciale, e sicuramente ci sono persone più in gamba di me su questi argomenti (vedi McMax grazie per il tuo condividere), quindi prendetelo per quello che è.
L'idea è testare il software e mettere in linea la shield, per poi una volta capito il funzionamento, togliere la shield e pilotare driver più potenti tramite la logica arduino.
Una cosa buona è che tutto l'accrocchio si pilota tramite usb e con un software opensource.

Iniziamo con la lista della spesa :
- Arduino Uno
- Cnc Shield V3
- 3 Motori Passo Passo Bipolari 200 Passi (quelli a 4 o 8 fili per intenderci, non gli unipolari; ho usato 3 motori da stampante 3D da 1.5A tanto è solo una prova, per la precisione sono nema17 codice 17HD34008-22B)
- Un alimentatore per lo stadio di potenza (io ho un 24V-14A)
- Un alimentatore per la board Arduino Uno (io ne avevo una china made)
- Tre drv8825 (sono i driver di potenza, piloatano max 2A ma per ragioni di dissipazione meglio stare al max su 1.5A)
- Cacciavite piccolo ceramico
- Tester
- Compilatore Arduino (https://www.arduino.cc/en/Main/Software)
- Software di controllo per mandare il gcode ad arduino (http://bit.ly/2L2v9k6)
- OpenJDK 1.5 è l'sdk Java utile a far funzionare il software di controllo (https://download.java.net/java/GA/jdk15 ... 64_bin.zip)


In realtà durante il black friday avevo preso All-In-One shield arduino - CNC - e drv8825 per un prezzo ridicolo, i motori e l'alimentatore li presi da un ragazzo che sbaraccava la sua stampante 3d con scheda ecc tutto mi sarà costato una 50 di euro.

Qualche immagine di seguito

Autore:  umbez [ dom ott 18, 2020 12:00 ]
Oggetto del messaggio:  Re: Arduino CNC Shield

Ok, dato per scontato che avete già installato l'IDE arduino e collegato la board arduino uno all'usb dobbiamo flashare l'atmega.
- Andate qui https://github.com/gnea/grbl in alto a destra pulsante code e scaricate lo zip (per i più advanced clonate il repository con git clone)
- decomprimete lo zip in una folder comoda
- lanciate l'ide di arduino
- caricate GRBL nell'Arduino IDE come Library. (cliccate "Sketch", poi "#Include libreria", e selezionate "aggiungi libreria da file zip")
Importante: Selezionate la folder "Grbl" all'interno di "grbl-master" (che avete decompresso nel punto precedente)
- Aprire dal menu file ->esempi->grbl-> "GrblUpload"
- Connettete la board all'usb (a me si è connessa su COM3) e caricate lo sketch tramite menu sketch -> carica (ctrl+U)
- A caricamento completato avete finito il primo step.

Visto che non è farina del mio sacco (anche se ho letto la documentazione su git-hub) vi lascio il link al video dove spiegano dove caricare lo sketch (https://youtu.be/aXcsRKDZsv4)
NB. io non ho ne visto ne seguito questo video, ma credo che implementi un po i passi che vi ho descritto.

A questo punto avete finito la parte di flash arduino

Autore:  umbez [ dom ott 18, 2020 12:14 ]
Oggetto del messaggio:  Re: Arduino CNC Shield

Software di controllo.
Ok do per scontato che avete scaricato sia il jdk che il software (come specificato nella lista della spesa).
- Decomprimete la folder del jdk e piazzatela in c:\programmi o dove volete (ma ricordatevelo).
- Andate nelle variabili d'ambiente di windows e in path aggiungete la folder del jdk seguita da /bin. (Esempio c:\programmi\jdk14\bin)
- Aggiungete una nuova variabile con key JAVA_HOME e value c:\programmi\jdk14 (ad esempio)
- Applicate e chiudete
- Decomprimete il software di controllo (a me l'ha decompresso nella folder ugs-platform-app-2.0-SNAPSHOT)
- lanciate l'eseguibile ugsplatform64.exe che si trova nella sottocartella bin (o senza 64 se avete un sistema a 32 bit)
Importante : nel caso l'applicazione non si avvia, ed il messaggio d'errore è che non trova il jdk, andate nella folder etc ed editate il file ugsplatform.conf con notepad, decommentate (togliete il #) davanti alla riga jdkhome=
(a me è capitato, quindi ho modificato così jdkhome="C:\Program Files\Java\jdk-14.0.2") rilanciate, dovrebbe funzionare.
- con arduino connesso andate in macchina -> setup wizard
- controllate i settaggi della porta COM, se è tutto in ordine schiacciate connetti e dovrebbe trovarvi il firmware che avete flashato allo step precedente. ( a me è grbl 1.1h)
- completate il wizard facendo i settaggi opportuni e schiacciate su finish (ora il software è configurato).

Autore:  umbez [ dom ott 18, 2020 12:41 ]
Oggetto del messaggio:  Re: Arduino CNC Shield

Ora è il momento dei drv8825
- Montate delicatamente le alette di raffreddamento sugli integrati drv8825
- inserite i 3 jumper a secondo del micropasso che volete (vedi immagine shield microstep settings)
- inserite le tre schede nella shield come in figura
- attaccate la main power (quella dell'alimentatore 24v per intenderci nel connettore, facendo attenzione a rispettare le polarità)
- alimentate arduino tramite un alimentatore 12V 2A
- prendete un tester
- prendete un cacciavite ceramico
- attaccate i motori nel connettore a pettine di fianco ai drv8825 , rispettando le fasi del motore e i pin
- accendete il tutto, se non esplodete siete sulla strada giusta
- ora bisogna regolare la vref dei drv8825 :
in pratica i driver bipolari hanno due resistenze si sensing in cui scorre la corrente che passa nei coil del motore, e regolano il pwm a seconda della tensione che voi impostate. La formula per l'impostazione della tensione per i
drv8825 è vref=corrente/2 quindi per esempio io ho impostato la corrente di 1A quindi 0.5V
- Con il cacciavite ceramico ruotate il trimmer (l'unica vite che vedete sul drv8825) e settate la vostra vref (vi ricordo di non esagerare questi driver erogano poca corrente, pena rottura)
- il punto di test (ovvero dove misurate la tensione) è fra la vite che ruotate e la massa del circuito (io ho usato il connettore dei 24V), ovviamente settate il tester sulla scala corretta ed in corrente continua.
- finito con i drv è tempo di caricare il primo gcode di test

Autore:  umbez [ dom ott 18, 2020 12:51 ]
Oggetto del messaggio:  Re: Arduino CNC Shield

Ok, per il test ho scaricato in giro (non mi ricordo dove, non me ne vogliate) il file allegato, quindi aprite il software decomprimete il punto zip del file .nc e dal menu file cliccate Apertura del file GCode.
Selezionate il file decompresso circle.nc e si aggiornerà il tab visualizzatore con il percorso utensile.
Schiacciate Macchina -> connetti e premete il tasto invia, se i motori iniziano a girare, allora avete finito, altrimenti riverificate gli step precedenti.

Ora questo era solo un test, ovviamente per una cnc sono necessari motori più potenti e quindi driver più performanti, il prossimo step sarà di sganciare la cncshield e collegare le uscite di arduino uno direttamente ai driver per pilotare motori più potenti.
(vedi immagine nel primo post).

Un ulteriore step sarà quello di collegare il pulsante di arresto (vedi immagine del primo post) e collegare anche gli home switch.

Per ora ho concluso. stay tuned

Autore:  McMax [ dom ott 18, 2020 13:54 ]
Oggetto del messaggio:  Re: Arduino CNC Shield

Bella questa cosa Umbez, grazie per la condivisione!
Certo la CNC shield con queste correnti va bene giusto per farsi un plotter ma l'idea di un sw open source che gira su arduino mi piace.
Peccato non avere tempo di fare un può di prove altrimenti le farei.... ma prima devo finire quei 200 progetti aperti che giacciono sugli scaffali, ivi compresi alcuni lavoretti in casa per i quali ho il capo pronto con la frusta :risatina:

Autore:  CARLINO [ dom ott 18, 2020 17:36 ]
Oggetto del messaggio:  Re: Arduino CNC Shield

Bella esposizione Umberto , anche se ti ho seguito fino ad un certo punto poi mi sono perso per ignoranza di alcuni termini e di dispositivi..... :grin:

Autore:  lelef [ dom ott 18, 2020 17:46 ]
Oggetto del messaggio:  Re: Arduino CNC Shield

l'avevo studicchiata ,se togli i modulini puoi entrare diretto nei driver con step dir quindi stepper ,dc servo e brushless
Bel progetto,ci sono un paio di SW di controllo molto ben fatti

Autore:  umbez [ dom ott 18, 2020 18:00 ]
Oggetto del messaggio:  Re: Arduino CNC Shield

ciao ragazzi.
- Carlo fai tutte le domande che ritieni necessarie, ti chiarisci tu e magari chiarisci dei dubbi ad altri.
- lelef ci ho pensato anche io, infatti l'ho previsto nei prossimi step, a quel punto però non hai proprio più bisogno della shield ma vai direttamente in arduino, vedi ultima foto primo post.

Ciao!

Autore:  lelef [ dom ott 18, 2020 19:02 ]
Oggetto del messaggio:  Re: Arduino CNC Shield

avevo capito ,ma posso sbagliarmi, :?: che con la scheda ma senza i driverini si avevano le uscite optoisolate :?:

Autore:  umbez [ dom ott 18, 2020 21:42 ]
Oggetto del messaggio:  Re: Arduino CNC Shield

Nella mia no, ti lascio un link trovato al volo con lo schema : https://win.adrirobot.it/arduino/cnc_sh ... shield.htm

Autore:  Davide Resca [ dom ott 18, 2020 23:19 ]
Oggetto del messaggio:  Re: Arduino CNC Shield

Bella esposizione Umbez !!! :mrgreen:

Autore:  CARLINO [ lun ott 19, 2020 00:14 ]
Oggetto del messaggio:  Re: Arduino CNC Shield

Che fai , copi ? :risatina:

Autore:  Davide Resca [ lun ott 19, 2020 07:35 ]
Oggetto del messaggio:  Re: Arduino CNC Shield

Direi di no, io che sono imparato l'ho seguito fino alla fine :risatina:

Autore:  Dasama46 [ lun ott 19, 2020 11:56 ]
Oggetto del messaggio:  Re: Arduino CNC Shield

Allora adesso ripeti senza spiare ...... :risatina: :risatina:

Pagina 1 di 2 Tutti gli orari sono UTC +1 ora
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
http://www.phpbb.com/