loop chiuso su stepper qualcuno ha gia realizzato?

volevo sapere se c'è qualche progettino o quialche realizzazione per fare il loop chiuso sul movimento dei motori stepper tramite encoder per ripristinare la perdita di passi, se succede che se ne perdono

il tutto è da intendere per poter funzionare su una cnc

se lo stepper perde passi hai un problema.
che poi il problema sia correggibile via software è un altro paio di maniche. :slight_smile:
nel caso di un cnc la correzione dei passi la fai con i finecorsa sapendone le posizioni e la distanza, quindi quando fai lo "zero macchina".
non è possibile correggere la posizione durante la lavorazione (non conviene), conviene invece fermare tutto e ricalibrare e possibilente correggere la causa della perdita di passi.
i mei 2 uF.

Se un azionamento via motore passo passo si blocca spesso é dimensionato male. Se vuoi essere sicuro al 1000% che un movimento giá intrinecamente sicuro via il stepper é giusto puoi aggiungere un encoder che comunque Ti consiglio che abbia gli stessi impulsi o multipli come lo stepper ha passi. Non é possibile correggere la perdita di passi in automatico lo stepper perché lo stepper si ferma meccanicamente quando va fuori passo. Deve essere fermato e ripartire da 0.
In macchine come una CNC questo comportamento non é ammesso perché i movimenti sono coordinati in diverse assi.

Se il motore deve mantenere un peso il fatto che va fuori passo significa che ha pochissima coppia e percui probabilmente non riuscirá a tenerlo.

In poche parole é meglio dimensionare lo stepper e il pilotaggio e l'acelerazione/frenata in modo che col carico previsto non perda mai passi.

Ciao Uwe

BrainBooster:
se lo stepper perde passi hai un problema.
che poi il problema sia correggibile via software è un altro paio di maniche. :slight_smile:
nel caso di un cnc la correzione dei passi la fai con i finecorsa sapendone le posizioni e la distanza, quindi quando fai lo "zero macchina".
non è possibile correggere la posizione durante la lavorazione (non conviene), conviene invece fermare tutto e ricalibrare e possibilente correggere la causa della perdita di passi.
i mei 2 uF.

strano quello che dici se
es: se il software manda 200 impulsi alla scheda che pilota il motore (un giro completo) e l'encoder fissoo all'albero del motore si ferma alla conta a 199 si dovrebbe stoppare /STAND BY/ il software che semplicemente consiste di portare a livello logico alto o basso un segnale inviare alla scheda il passo impulso perso, e far ripartire il software, un passo o 2 e facile perderli ci possono essere decine di motivi
ovviamente se la cnc non e stata dimensionata bene è un altro discorso

praticamente arduino dovrebbe monitorare 2 treni di inpulsi quello che dal pc va alla scheda motore,
e quello dell'encoder sul motore, se il comteggio dei 2 impulsi sono pari arduino non fa mai nulla,
appena gli impulsi dell'encoder sono meno di un unita rispetto a quelli della scheda blocca il software e manda un impulso per pareggiare il conteggio e tutto riprende come prima

Un motore steper non perde 1 o 2 step ognitanto. Lui fa esattamente gli step che gli vengono dati oppure si blocca dando solo un ronzio. Una volta bloccato per ecesso anche temporanea di coppia richiesta non riparte se non viene stoppato e fatto ripartire.

Se temi che il pilotaggio da 199 e mezzo impulso é meglio che migliori le tue conoscenze di programmazione perché devi programmare, testare e debuggare in modo piú affidabile. Chi Ti dice che la elaborazione del Encoder funzioni meglio del pilotaggio del motore? :wink: :wink:

Ciao Uwe

uwefed:
Un motore steper non perde 1 o 2 step ognitanto. Lui fa esattamente gli step che gli vengono dati oppure si blocca dando solo un ronzio. Una volta bloccato per ecesso anche temporanea di coppia richiesta non riparte se non viene stoppato e fatto ripartire.

Se temi che il pilotaggio da 199 e mezzo impulso é meglio che migliori le tue conoscenze di programmazione perché devi programmare, testare e debuggare in modo piú affidabile. Chi Ti dice che la elaborazione del Encoder funzioni meglio del pilotaggio del motore? :wink: :wink:

Ciao Uwe

mah all'atto pratico lo stepper di passi ne perde talmente tanti che significa di solito buttar via la lavorazione

di solito lo stepper e collegato ad una vite ad alta precisione e l'encoder e collegato alla parte opposta della vite,

tutte le cnc un po serie hanno abbandonato gli stepper a favore dei motori con loop chiuso,
l'encoder è un dispositivo altamente affidabile (almeno quelli seri)

e ripeto la programmazione dovrebbe essere molto semplice deve solo confrontare 2 ingressi e se sono dissimili
intervenire (o almeno generare un avviso/allarme)

le cnc serie non usano stepper ma servomotori con encoder incorporati

Hanno dei servomotori perche quelli sono:
a) piú veloci
b) piú potenti
e l' unica possibilitá di leggere la loro posizione sono gli encoder.

Ciao Uwe

uwefed:
Hanno dei servomotori perche quelli sono:
a) piú veloci
b) piú potenti
e l' unica possibilitá di leggere la loro posizione sono gli encoder.

Ciao Uwe

piou veloci nopn ha troppo senso perche la velocita dipende dalla potenza .....

piu potenti dipende anche qui gli stepper non sono solo quei giocattolini delle stampanti c'e ne sono anche da 5-6 kili di peso con una coppia enorme,
anche gli stepper l'unico modo per sapere la loro posizione e un qualche encoder

BrainBooster:
le cnc serie non usano stepper ma servomotori con encoder incorporati

comunque il succo del discorso è economico, motorizzare un asse di una cnc (di solito ne hanno 3)
con un motore brussheless costa 1000 euro (circa) un motore stepper serio con 100 euro lo compri,
se si potesse fare in modo di farlo operare anche a lo stepper con loop chiuso diventerebbe interessante

Chi parla di motori brushless?

Comunque; Tu hai chiesto e noi abbiamo espresso i nostri dubbi. Fai le Tue prove e vedremo se sei fortunato e Ti va bene. Buona fortuna.

Ciao Uwe

uwefed:
Chi parla di motori brushless?

Comunque; Tu hai chiesto e noi abbiamo espresso i nostri dubbi. Fai le Tue prove e vedremo se sei fortunato e Ti va bene. Buona fortuna.

Ciao Uwe

beh... e sottinteso che le cnc sostituiscono gli stepper con i brushless (parliamo di cose professionali cose da 3-400 watt a salire di potenza per intenderci)
poi il loop chiuso vero e proprio e qualcosa di molto piu sofisticato che il semplice circuito che intendevo, quello di generare un allarme o una correzione se lo stepper inizia a perdere passi

Posso dire che la gestione di un motore dc unito ad encoder incrementale di quelli che si trovano nelle stampanti non è cosa di arduino, ci vuole un micro più prestante. Anche l'algoritmo necessario a mantenere la velocità costante è cosa molto complessa, poi c'è da considerare che bisogno trovare un modo per fare il link tra i motori al fine di metterli in sincro, cioè ogni asse deve emettere un clock e trovare il modo di leggere questo clock e apportare modifiche alla velocità di ogni motore al fine di sincronizzarli con precisione, oppure affidarsi alla bonta dell'insieme motore + encoder + scheda di controllo.

Invece usare un encoder preciso per verificare che uno stepper perde o no passi può essere di aiuto per bloccare la lavorazione, ma la causa della perdita è sempre da imputare alla scheda controllo + motore + meccanica. Es un stepper può perdere un passo nel caso in cui per un istante si supera la coppia di stallo e se la scheda di controllo lo prevede lo stepper riprende a lavorare ma ovviamente se la lavorazione termina con successo è tutto da verificare, in ogni caso si dovrebbe risolvere il problema alla radice, cioè intervendo su motore + scheda + meccanica.

Ciao.

MauroTec:
Posso dire che la gestione di un motore dc unito ad encoder incrementale di quelli che si trovano nelle stampanti non è cosa di arduino, .....
Invece usare un encoder preciso per verificare che uno stepper perde o no passi può essere di aiuto per bloccare la lavorazione, ma la causa della perdita è sempre da imputare alla scheda controllo + motore + meccanica. Es un stepper può perdere un passo nel caso in cui per un istante si supera la coppia di stallo e se la scheda di controllo lo prevede lo stepper riprende a lavorare ma ovviamente se la lavorazione termina con successo è tutto da verificare, in ogni caso si dovrebbe risolvere il problema alla radice, cioè intervendo su motore + scheda + meccanica.

Ciao.

forse hai un idea inesatta di quello che potrebbe essere un brushless per un asse cnc (almeno quello che intendo io) sicuramente non sara un brushless tipo modellismo ma 100 volte piu potente,
arduino non deve pilotare nulla dovrebbe solo confrontare gli impulsi che vanno dal pc alla scheda piloggio stepper con quelli che manda l'encoder (professionale) fissato saldamennte sull'albero motore stepper e se non sono uguali di numero generare un allarme che blocca la lavorazione e tenere un log almeno questo
anche mettere un arduino per ogni asse è ancora molto economico gli impulsi che pilotano i motori non superano i 160 kiloertz alla massima velocità

GINGARDU:
forse hai un idea inesatta di quello che potrebbe essere un brushless per un asse cnc (almeno quello che intendo io)

scusami GINGARDU sei Tu che stai facendo casino. Sei partito con la discussione col seguente testo:

GINGARDU:
volevo sapere se c'è qualche progettino o quialche realizzazione per fare il loop chiuso sul movimento dei motori stepper tramite encoder per ripristinare la perdita di passi, se succede che se ne perdono
il tutto è da intendere per poter funzionare su una cnc

e adesso ci dici che usi dei Brushless professionali da qualche centinaio di W.
Scusaci se Ti abbiamo risposto riferendoci ai motori passo passo.

Riguardanti i motori brushless:
Lascia stare le soluzioni con Arduino. Compra un prodotto industriale perché quello garantisce che funziona. Se il Tuo controllo fallisce sei nella m...da perché hai la CNC ferma e dei pezzi distrutti col cliente che aspetta la cosegna.

Ciao Uwe

stavo giusto guardando qualche giorno fa il funzionamento dei motori brushless... ho trovato questo link dove si vede il funzionamento dei vari modelli (stella, delta, sinusoidale)

il controllo di passi è effettuato attraverso dei sensori hall o degli encoder direttamente all'interno del motore. ah quanto ho capito i sensori hall non contano i reali giri del rotore, ma i "giri" del campo magnetico. nell'esempio l'unico con encoder è l'esempio col brushless sinusoidale.

http://en.nanotec.com/steppermotor_animation.html

@uwe: a quanto pare il BL sono considerati stepper

La velocitá di rotazione del campo magnetico corrisponde alla velocitá di rotazione del motore perché sul rotore ci sono magneti permanenti e non una gabbia di scoiattolo (almeno in quelli "piccolini" da modellismo. Non avendo mai visto o smontato un BL industriale non so dire niente riguardo queli.

Il pilotaggio dei motori BL da modelismo avviene in 2 modi.
I sensori Hall montati servono per dire all'elettronica di pilotaggio quando invertire il pilotaggio delle fasi. La seconda posibilitá é che si usa la tensione indotta nella terza fase non aliemntata per misurare quel la posizione.
Trovi della animazioni sulla pagina linkata se schiacci sul menu BLDC
http://en.nanotec.com/steppermotor_animation.html

Nei motori BL la velocitá di rotazione non é pilotata dall esterno. La regolazione del pilotagio avviene per avere un campo rotante sempre un po anticipante come fase e percui se la forza é sufficente a vincere il carico anche una accelerazione. Il pilotaggio dei BL non viene pilotato con un segnele a step.

@uwe: a quanto pare il BL sono considerati stepper

Non ci credo.

Ciao Uwe

uwefed:

GINGARDU:
forse hai un idea inesatta di quello che potrebbe essere un brushless per un asse cnc (almeno quello che intendo io)

scusami GINGARDU sei Tu che stai facendo casino.
e adesso ci dici che usi dei Brushless professionali da qualche centinaio di W.
Scusaci se Ti abbiamo risposto riferendoci ai motori passo passo.

Riguardanti i motori brushless:
Lascia stare le soluzioni con Arduino. Compra un prodotto industriale perché quello garantisce che funziona. Se il Tuo controllo fallisce sei nella m...da perché hai la CNC

Ciao Uwe

beh.. intendo sempre motori passo passo grossi ovviamente, mi interessava solo che nonm perdessero passi,

certo che chi ha bisogno di lavorare con cnc non si mette di sicuro sperimentare
mi interessava perche avevo gia fatto (motorizzato) una cnc e l'unico "dramma" che perdeva i passi
volevo rifarne una piu performante

Allora riincominciamo da zero.

Partiamo da questo: Che tipo di motore vuoi usare? Hai giá selto un modello particolare?

Ciao Uwe

uwefed:
Allora riincominciamo da zero.

Partiamo da questo: Che tipo di motore vuoi usare? Hai giá selto un modello particolare?

Ciao Uwe

piu o meno come quello del filmato da 9 a 12 nm max 8 ampere (le schede che ho arrivano a 8 ampere)