PID e motori stepper

Ho la necessit=E0 di posizionare accuratamente uno o piu assi movimentati da motori stepper: il problema =E8 che la non idealit=E0 del sistema meccanico come giochi o eccentricit=E0 non garantisce un movimento preciso e l'entit=E0 dell'errore non =E8 facilmente prevedibile quindi non mappabile. Utilizzo un controller custom e pensavo di modificarlo per chiudere il sistema ad anello con un algoritmo di tipo PID. Cercando tra i controllori commerciali non sono riuscito a trovarne alcuno che lavorasse ad anello chiuso oppure non era ben chiaro il funzionamento. Ho qualche dubbio sul corretto funzionamento di un PID per motori stepper: quello che non mi convince =E8 la granulosit=E0 intrinseca di questo tipo di motori che mi immagino possa instaurare vibrazioni indesiderate impossibili da eliminare; il mio dubbio =E8 fondato secondo voi ? Dimensionando correttamente la risoluzione dell'encoder e la costante mm/passi-motore il problema verrebbe risolto ? Se il controllo PID =E8 possibile quale grandezza usare per il controllo ? In ingresso ovviamente la posizione mentre in uscita mi sembra pi=F9 semplice usare la velocit=E0 ovvero la frequenza di eccitazione. In pratica semplificando al solo caso proporzionale il motore andrebbe piu o meno veloce in base al valore assoluto dell'errore di posizione e direzione dipendente dal segno. Pu=F2 funzionare ? Grazie in anticipo a tutti.

Simone Navari.

Reply to
simnav
Loading thread data ...

snipped-for-privacy@gmail.com ha scritto:

funziona. In genere si controlla proprio la frequenza. Per evitare tremolii si usa una dead band intorno al punto finale (margine entro cui il PID non regola): i controller piu' evoluti usono due o tre set di parametro PID in funzione della velocita' (Regolazione a fermo, o regolazione in operazione per basse velocita e ad alte velocita')

Ad ogni modo i controller per stepper attuali possono frazionare anche a

1/4000step (microstep) con controllo delle correnti negli avvolgimenti , anche i controller piu' economici fanno almeno il frazionamento microstep a 1/10 ..1/50step, per cui in genere non si pone il problema della precisione. Ad es con uno stepper standard da 200passi (1.8gradi/step) e un frazionamento 1/50 ottieni una precisione di (360/(200*50))=0,036gradi/microstep.

brix

Reply to
brix

Questo documento:

formatting link
riporta le caratteristiche di uno step controller che ha l'ingresso encoder.. ciao delo

ha scritto nel messaggio news: snipped-for-privacy@o80g2000hse.googlegroups.com... Ho la necessità di posizionare accuratamente uno o piu assi movimentati da motori stepper: il problema è che la non idealità del sistema meccanico come giochi o eccentricità non garantisce un movimento preciso e l'entità dell'errore non è facilmente prevedibile quindi non mappabile. Utilizzo un controller custom e pensavo di modificarlo per chiudere il sistema ad anello con un algoritmo di tipo PID. Cercando tra i controllori commerciali non sono riuscito a trovarne alcuno che lavorasse ad anello chiuso oppure non era ben chiaro il funzionamento. Ho qualche dubbio sul corretto funzionamento di un PID per motori stepper: quello che non mi convince è la granulosità intrinseca di questo tipo di motori che mi immagino possa instaurare vibrazioni indesiderate impossibili da eliminare; il mio dubbio è fondato secondo voi ? Dimensionando correttamente la risoluzione dell'encoder e la costante mm/passi-motore il problema verrebbe risolto ? Se il controllo PID è possibile quale grandezza usare per il controllo ? In ingresso ovviamente la posizione mentre in uscita mi sembra più semplice usare la velocità ovvero la frequenza di eccitazione. In pratica semplificando al solo caso proporzionale il motore andrebbe piu o meno veloce in base al valore assoluto dell'errore di posizione e direzione dipendente dal segno. Può funzionare ? Grazie in anticipo a tutti.

Simone Navari.

Reply to
delo

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.