BaroneRosso.it - Forum Modellismo

BaroneRosso.it - Forum Modellismo (https://www.baronerosso.it/forum/)
-   CNC e Stampanti 3D (https://www.baronerosso.it/forum/cnc-e-stampanti-3d/)
-   -   TGA con controller Theremino e DRV8825 (https://www.baronerosso.it/forum/cnc-e-stampanti-3d/349076-tga-con-controller-theremino-e-drv8825.html)

pieri70 11 novembre 15 00:12

TGA con controller Theremino e DRV8825
 
Ciao a tutti
apro questa discussione poichè sto costruendomi una TGA cercando di contenere i costi e utilizzando controller e software Open.

Per la meccanica ho scopiazzato dalle realizzazioni di Gregnapola & C. prese da questa discussione e da questa qui.

Questi sono gli assi

https://dl.dropboxusercontent.com/u/.../tga/assi1.jpg
https://dl.dropboxusercontent.com/u/.../tga/assi2.jpg

Dato che l'elettronica era un po' datata come connessione (porta parallela), scrivendo qui sul barone sono stato consigliato di provare un controller open che è Theremino, che ha una parte controllo motori ed un suo applicativo che legge il GCode e fa muovere la meccanica, ThereminoCNC.

Vi sono già un paio di discussioni in questa sezione, su cui ho già scritto, ma che sono abbastanza specifiche su il solo controller, una è questa e l'altra è questa, che parla un po' in generale di ThereminoCNC.

Vorrei documentare qui la costruzione e cercare aiuti e suggerimenti sul funzionamento del controller/drivers/stepper.
Per me è materia assolutamente nuova, sto leggendo e spero di riuscire a "sfangarmela" in tempi non biblici riducendo al minimo i danni.

Premesso questo, l'elettronica di partenza l'ho presa qui sul mercatino l'anno scorso ed è composta da 4 stepper NEMA 17 (17hs4401n) che hanno queste specifiche

http://img.alibaba.com/img/pb/503/87...873503_687.jpg

La scheda di controllo parallela vecchia l'ho messa in cassetto, i drivers vecchi pure, ho tenuto buono l'alimentatore, che è uno switching da 24V 8,3A, regolabile fino a 19,5V.

Il controller che ho comprato è un theremino MasterDIL V4

http://www.theremino.com/wp-content/...-V4_3D_Top.jpg

Il controller viene alimentato dall'USB e da quanto mi han detto nelle altre discussioni i 5V/500mA vengono distribuiti sui vari pin +5V/GND.

I drivers sono delle copie cinesi dei Pololu DRV8825, la versione md20b, che dicono avere queste differenze con la precedente (md20a):
Citazione:

The only change is that the newer version connects the sleep and fault lines through a resistor, which acts as a pull-up for the sleep line when this board is plugged into some existing third-party A4988 carrier board sockets.
Ora, cosa vuol dire "to pull-up the sleep line" non ho idea di che cosa sia, ma il circuito minimo passa da quello della md20a che è questo:

https://dl.dropboxusercontent.com/u/.../tga/md20a.png

a quello della md20b, che è questo:
https://dl.dropboxusercontent.com/u/.../tga/md20b.png

Qui iniziano i primi casini...
Da quel poco che ho capito al driver del motore devono arrivare due tensioni, una logica che serve a comandare il driver (2,5-5,25V), ed una che serve ad alimentare lo stepper in base allo stato del driver ed ai comandi che arrivano dal controller.

Devo dare corrente logica al FAULT perchè il driver si attivi?? O basta che io porti i soli contatti DIR e STEP e GND provenienti dal master per far si che il si metta in funzione? Tutto questo naturalmente considerata la tensione per lo stepper e stepper collegati..

Intanto questa parte, grazie
pietro

pieri70 11 novembre 15 00:31

Aggiungo la realizzazione di questa sera, la scheda porta drivers

L'ho fatta con una piastra forata, femmine per i pin dei drivers e maschi per portare sopra la scheda i pin da collegare al master. Ho infine usato 4 spinette a 4 poli da circuito integrato su cui andranno ad attaccarsi i 4 cavi di ogni stepper.

I supporti femmina per i drivers li ho affiancati a dei pin maschi, così portò collegare i cavetti che vanno al master senza dover girare i drivers ed accedere ai pin che stanno sotto

Questi sono i drivers

https://dl.dropboxusercontent.com/u/...ga/drv8825.jpg

e questa è la disposizione sulla piastra

https://dl.dropboxusercontent.com/u/.../drvboard3.jpg

Sulla parte sottostante della piastra ho collegato i cavi che portano A2, A1, B1 e B2 alla spinetta a 4 poli ed ho connesso un condensatore elettrolitico da 100µF tra il positivo ed il negativo della tensione per i motori (VMOT e GND)

https://dl.dropboxusercontent.com/u/.../drvboard2.jpg

Questo è il lavoro finito

https://dl.dropboxusercontent.com/u/.../drvboard6.jpg

Ora devo trovare una scatoletta adatta a contenere Master e Drivers e pensavo di mettere una ventolina a 5V che spinga aria sui dissipatori dei drivers...

pieri70 11 novembre 15 10:28

Sono riuscito a far funzionare il MasterDIL V4.
Praticamente il controller Theremino viene gestito da HAL (9000 :lol: ).
Se scaricate ThereminoCNC versione 4 da questo link e scompattate in una cartella troverete all'interno della cartella Theremino_CNC una cartella chiamata Theremino_HAL che appunto contiene l'HAL.
La versione di HAL distribuita assieme a ThereminoCNC è la 5.2 e non mi funziona con il Masterdil V4.
La 5.2 riconosce il master se lo si crea ex novo, ma non lascia modificare i pin e se si caricano configurazioni di master dal database (vedi la guida di hal presente nella cartella \Theremino_CNC\Theremino_HAL\Docs o clicca su aiuto>istruzioni in HAL) tutti i pin associati non vengono riconosciuti.

Per risolvere bisogna scaricare HAL 5.3 da questo link.

sostituire la cartella Theremino_HAL nella cartella Theremino_CNC con quella presente nello zip scaricato, lanciare Theremino_HAL.exe et voilà, masterDIL riconosciuto e configurabile!

Come suggerito da Carcan per vedere se funziona collegare un servo al pin1

https://dl.dropboxusercontent.com/u/.../testservo.jpg

Lanciare thereminoHAL ed impostare il PIN1 come servo (ho messo servo_8)
https://dl.dropboxusercontent.com/u/...lTestServo.PNG

Quindi scaricare lo Slot Viewer e con HAL attivo provare a variare i valori dello slot1, cliccando nella barra con il mouse

https://dl.dropboxusercontent.com/u/...iewerservo.PNG

Se tutto funziona dovreste vedere il servo che si muove...

pieri70 12 novembre 15 16:57

Alla fine leggendo la discussione sul controller Theremino ho visto una bella CNC Shield (non sapevo esistessero belle colorate e pronte :lol:) e me ne sono presa una, spero arrivi presto..

https://dl.dropboxusercontent.com/u/...ncshieldv3.jpg

Ho scoperto che ai drivers non basta che arrivi il pin STEP e DIREZIONE, oltre all'alimentazione logica, ma anche il comando ENABLE, che immagino servirà per accendere i motori.. Su una TGA i 4 motori immagino convenga sempre che siano accesi tutti e 4 contemporaneamente nel momento in cui la macchina è pronta a iniziare il lavoro, non come una CNC a 3 assi in cui magari il mandrino deve essere acceso e spento a seconda che si sia in spostamento/cambio utensile o che si sia in lavoro..

Se ho capito bene come funziona ThereminoCNC devo collegare i 4 pin ENABLE dei drivers ad uno dei 12 pin sul master a cui associerò lo slot 23 (vedere appendice 9 del manuale di thereminoCNC).

Si dovrà usare un pin dal 9 in su dato che i primi 8 sono occupati dai 4 STEP e 4 DIR.

Dalla guida motors su theremino:
Citazione:

Se il driver lo permette è sempre bene impostare i micro-steps almeno a 4. Se non si usano i micro-step il motore produce forti vibrazioni. Le risonanze meccaniche, innescate dalle vibrazioni, possono far perdere passi anche a velocità molto basse. Per evitarlo si dovrebbe aumentare la corrente sul motore, ma questo limiterebbe la velocità massima.
Pensavo che in una TGA non avesse molto senso usare i micro-step, dato che immaginavo fossero usati su applicazioni di maggior precisione..

Poi
Citazione:

Ridurre al minimo la corrente sul motore è importante. Non si deve impostare la corrente massima! La corrente specificata dal costruttore NON è la corrente che si deve usare. Ma si tratta della corrente massima, oltre la quale il motore scalderebbe così tanto da rovinarsi. Riducendo la corrente di lavoro, si minimizzano le vibrazioni e si aumenta la velocità massima. La migliore corrente di lavoro, solitamente è circa un quarto di quella indicata sul motore.
Ed ancora

Citazione:

Comunque i driver vanno regolati con corrente più bassa, della corrente massima sopportabile dal motore!!! Se i motori sono da 1 Ampere allora la corrente giusta è tra i 250 mA e i 500 mA. Così il motore non scalda, i driver scaldano poco e la velocità massima aumenta.
Qui ho ancora un po' di confusione..

I Nema17 (17HS4401N) hanno una rate current di 1,7A (spero che sia quella che sul sito Pololu chiamano Current rating per coil), questa dovrebbe essere la corrente massima per fase, giusto?

In teoria se ho Current Limit = VREF × 2 (sito pololu del driver dove spiegano la current limiting per i drv8825)
1.7/2=vref=0.85V
Quindi io sulla rotellina del potenziometro a motore scollegato dovrei misurare quella tensione..

Sempre in teoria collegando in seguito il motore e mettendo il tester in serie a misurare l'assorbimento di una fase con driver attivato dovrei misurare circa il 70% della rated current...

Sul video di pololu per una rated current di 1A misuravano alla fine un assorbimento di circa 0,6A col tester una volta fatta questa regolazione.

Sbaglio?

Ciao

Andrea97 12 novembre 15 17:52

Citazione:

Originalmente inviato da pieri70 (Messaggio 4773356)
Alla fine leggendo la discussione sul controller Theremino ho visto una bella CNC Shield (non sapevo esistessero belle colorate e pronte :lol:) e me ne sono presa una, spero arrivi presto..

https://dl.dropboxusercontent.com/u/...ncshieldv3.jpg

Ho scoperto che ai drivers non basta che arrivi il pin STEP e DIREZIONE, oltre all'alimentazione logica, ma anche il comando ENABLE, che immagino servirà per accendere i motori.. Su una TGA i 4 motori immagino convenga sempre che siano accesi tutti e 4 contemporaneamente nel momento in cui la macchina è pronta a iniziare il lavoro, non come una CNC a 3 assi in cui magari il mandrino deve essere acceso e spento a seconda che si sia in spostamento/cambio utensile o che si sia in lavoro..

Se ho capito bene come funziona ThereminoCNC devo collegare i 4 pin ENABLE dei drivers ad uno dei 12 pin sul master a cui associerò lo slot 23 (vedere appendice 9 del manuale di thereminoCNC).

Si dovrà usare un pin dal 9 in su dato che i primi 8 sono occupati dai 4 STEP e 4 DIR.

Dalla guida motors su theremino:


Pensavo che in una TGA non avesse molto senso usare i micro-step, dato che immaginavo fossero usati su applicazioni di maggior precisione..

Poi


Ed ancora



Qui ho ancora un po' di confusione..

I Nema17 (17HS4401N) hanno una rate current di 1,7A (spero che sia quella che sul sito Pololu chiamano Current rating per coil), questa dovrebbe essere la corrente massima per fase, giusto?

In teoria se ho Current Limit = VREF × 2 (sito pololu del driver dove spiegano la current limiting per i drv8825)
1.7/2=vref=0.85V
Quindi io sulla rotellina del potenziometro a motore scollegato dovrei misurare quella tensione..

Sempre in teoria collegando in seguito il motore e mettendo il tester in serie a misurare l'assorbimento di una fase con driver attivato dovrei misurare circa il 70% della rated current...

Sul video di pololu per una rated current di 1A misuravano alla fine un assorbimento di circa 0,6A col tester una volta fatta questa regolazione.

Sbaglio?

Ciao

Bella schedina la CNC shield. Quando ti arriva potresti gentilmente aggiornare dato che sono abbastanza interessato a sapere come funziona? :D

pieri70 12 novembre 15 17:55

Ok ma non sono il più indicato dato che è la mia prima cnc che assemblo..

Inviato da smartphone

pieri70 13 novembre 15 10:12

Bene, dopo un po' di letture, scritture con Livio di Theremino e Carcan (che ringrazio infinitamente per la pazienza...) ho deciso la strategia per la regolazione della corrente..
Non me ne vogliano gli autori se cito parte dei discorsi, spero siano utili ad altri che si avvicinano a questa materia per la prima volta..

In sintesi:
Citazione:

La corrente si alza per dare più forza al motore alle basse velocità o la si abbassa per dare più forza alle alte velocità...
Abbassando la corrente il motore acquista maggiore forza alle alte velocità.
E sempre abbassandola il motore può viaggiare a maggiore velocità senza sgranare.

La corrente NON va impostata secondo quello che si legge sul motore.
Quello che si legge sul motore, ad esempio 1 Ampere, NON è la corrente che si deve dargli, ma la corrente massima oltre la quale scalda così tanto da distruggersi in breve tempo.
Se si legge un ampere allora la corrente migliore sarà tra 300 e 500 mA circa.
In questo modo si ottiene la massima velocità e si tengono più freddi sia il motore che il driver.
E infine, per regolare la corrente non si usa il tester ma l’orecchio (con la corrente giusta il motore suona più liscio alle velocità di uso normale)
E si fanno tante prove fino a attenere la massima velocità, la massima accelerazione e la sicurezza che non sgrani mai.
Ed ancora:

Citazione:

Quello descritto nel video sul sito Pololu è un procedimento giusto per regolare la corrente con precisione ad un certo valore.
Ma chi stabilisce quale sia questo valore?

Il valore giusto non te lo dirà nessuna tabella perché dipende da molti fattori, troppi per calcolarli tutti.
- gli attriti meccanici della macchina
- il rapporto tra rotazioni e millimetri (ci sono chiocciole da 1mm/giro 2mm/giro e anche finoa 20mm/giro)
- il numero di microstep impostato
- la massa delle parti mobili
- le risonanze della macchina e se è presente o no un disaccoppiatore elastico che separa il motore dalle risonanze della macchina..
- il carico che si aggiunge nella lavorazione (con polistirolo quasi niente)
- molti altri fattori

Tutto influisce sulla velocità massima raggiungibile e sulla corrente migliore per ottenerla.
Quindi l'approccio andrà per tentativi, ovvero:

I drv8825 li danno a continuous current =1,5A - Max current 2,2A (raffrescati)
I miei motori Nema17 hanno 1,7A rated
Parto con la rotellina a 1/3 della sua escursione, che dovrebbe essere circa 0.7A.
Quindi uno ad uno provo i motori della TGA connessi alle meccaniche e provo ad aumentare gradualmente la velocità max in thereminoCNC.
Provo a vedere se sgrana il motore joggando avanti e indietro.
Quindi giro la rotellina del potenziometro fino a che ottengo la maggior velocità sensa fischi.

Provo prima a regolare la velocità e poi l'accelerazione, in sequenza alternando e joggando avanti e indietro

Sarà da imparare a riconoscere quando iniziano a sgranare... O a cantar male i motori..

Bon, aspetto che mi arrivi la CNCShield e poi mi metto a far prove.
Ciao!

ADSO 13 novembre 15 10:52

Ciao Pieri, hai deciso quale alimentatore prendere per alimentare i motori?

pieri70 13 novembre 15 10:58

Più che deciso ne ho uno che era col kit che ho comprato qui sul barone nuovo ed intonso.
E' uno switching 24V con 8,3A di corrente massima in output
Volendo cali la corrente fino a 19.5V

https://dl.dropboxusercontent.com/u/...tatoreTGA.jpeg

devCad 13 novembre 15 11:09

Citazione:

Originalmente inviato da pieri70 (Messaggio 4773830)
Bene, dopo un po' di letture, scritture con Livio di Theremino e Carcan (che ringrazio infinitamente per la pazienza...) ho deciso la strategia per la regolazione della corrente..

Aggiungo solo un mio pensiero: per una TGA, che durante il taglio si muove a passo di lumaca, la velocita' massima interessa abbastanza poco, in quanto potra' essere usata solo nei movimenti rapidi con filo SICURAMENTE fuori dal blocco polistirolo.


Tutti gli orari sono GMT +1. Adesso sono le 06:10.

Basato su: vBulletin versione 3.8.11
Copyright ©2000 - 2019, Jelsoft Enterprises Ltd.
E' vietata la riproduzione, anche solo in parte, di contenuti e grafica. Copyright 1998/2019 - K-Bits P.I. 09395831002