Sono utilizzati nelle stampanti a getto d’inchiostro, stampanti laser, stampanti 3D, negli scanner, nei CNC, nei robot industriali e in tutti i dispositivi che necessitano di un movimento preciso e stabile.
A differenza dei motori DC, che girano velocemente in una direzione o nell’altra, i motori passo-passo, si spostano lentamente con precisione e forza; questi spostamenti si chiamano passi (step).
Ci sono due tipi di motori passo-passo (stepping motor): unipolari e bipolari, si riconoscono dal numero di fili collegati al motore, 5 o 6 fili è unipolare, 4 fili è bipolare, quest’ultimi sono più potenti; si spostano con precisione e ripetibilità da un punto al successivo, rimanendo saldamente fermi, nella posizione in cui si trovano.
I motori passo-passo, sono caratterizzati dal movimento che avviene per passi; un tipico motore passo-passo ha 200 passi (step) per giro (360°), pertanto si sposterà di 1,8 gradi ogni passo.
Il numero di step dipende dal numero dei magneti e delle bobine.
per pilotare un motore stepper unipolare, servono solo 4 resistenze, 4 transistor in configurazione Darlington e altrettanti diodi di protezione.
I motori passo-passo bipolari, sono difficili da gestire, perché per farli muovere è necessario invertire la polarità di alimentazione delle bobine seguendo una precisa sequenza.
Generazione dello “step”
Quando una bobina è alimentata, il magnete del rotore sarà attratto in questa direzione, togliendo l’alimentazione a questa bobina e alimentando l’altra, il magnete sarà attratto verso quest’ultima. Alimentando nuovamente la prima bobina con polarità invertita, il magnete sarà attratto da questa, di seguito si toglie l’alimentazione alla bobina e si alimenta la seconda con polarità invertita, di nuovo il magnete seguirà quest’ultima, così di seguito passo dopo passo.
Oltre ai driver H-bridge, ci sono diversi circuiti integrati progettati per controllare i motori passo-passo che contengono all’interno transistor in configurazione Darlington (serie ULN 2002,2003,2004)
Senza utilizzare un microprocessore o Arduino, queste operazioni si possono fare utilizzando la coppia di circuiti integrati L297 (logica di controllo) e L298 (driver di potenza).
Seguendo opportune sequenze è possibile muovere il motore di mezzo passo, ad esempio alimentando le bobine contemporaneamente, il magnete si sposterà al centro delle due bobine.
Controllo della velocità di un motore passo-passo che cambia la direzione del movimento quando la barra rossa, tocca un microswitch.
Variabili di progetto.
Proprietà degli oggetti inseriti nel 3D System panel.
Diagramma di flusso
Per utilizzare il motore passo-passo è necessario abilitarlo, inserendo, all’inizio del programma, il Component Macro con la funzione EnableMotor.
Ciclo principale.
Inserisco il Component Macro ADC=pot_trim_finger1::GetByte funzione della variabile ADC, che controlla il Delay della ripetizione del ciclo principale, che a sua volta controlla la velocità del motore, incrementando la rotazione di un passo in senso orario con il Component Macro, IncrementStep .
ADC + 5, serve per evitare la velocità eccessiva della simulazione del motore quando il trimmer è a zero.
Se è premuto, B6->SW1, controlla se il microswitch collegato al pin 6 della porta B è premuto, e la funzione if SW1 fa eseguire il ciclo secondario.
La funzione Delay, controlla la velocità di rotazione del motore; qualora fosse necessario avere una velocità di ritorno, maggiore o minore rispetto alla rotazione in senso orario, è necessario introdurre una nuova variabile ADC2 da collegare a un secondo trimmer.
Ciclo secondario: inversione del movimento.
Il Component Macro, stepper_generic::DecrementStep, inverte il senso di ritazione del motore passo_passo, ad ogni esecuzione del ciclo secondario.
B7-> SW2: controlla se il microswitch 2 è premuto, in tal caso la funzione if SW2, con la funzione goto Connection Point, rimanda il programma al Connection Point, invertendo il senso di rotazione.
Riccardo Monti