Motori passo passo : parte 1
Introduzione
I motori passo-passo trovano largo impiego in tutte quelle applicazioni laddove si desideri posizionare l'albero di un motore in una ben precisa posizione. Infatti, pensare di poter effettuare uno spostamento angolare preciso con un motore in corrente continua è quasi impossibile. Con i motori passo-passo è possibile ottenere elevate precisioni nella risposta al segnale di ingresso anche con configurazioni circuitali a catena aperta, cioè, senza anello di retroazione che riporti in ingresso l'errore, o scostamento, dal valore di uscita che si sarebbe voluto ottenere. Proprio per questo motivo sono diffusissimi, disk-drive, stampanti, plotter, lettori cd e chi più ne ha più ne metta fanno uso di questo tipo di motori. I motori passo-passo hanno la caratteristica di funzionare a "scatti" cioè per passi; il passo è caratteristico per ogni tipo di motore. In questo modo è possibile fermare l'albero del motore in posizioni ben determinate magari contando quanti passi fare per ruotare di un certo angolo e comandando il motore affinchè compia quel preciso numero di passi. Se smontiamo un vecchio floppy-drive da 5" e 1/4 al suo interno troveremo senz'altro un motore passo-passo a 4 fasi cioè costituito da quattro bobine che eccitate in sequenza danno luogo al funzionamento per passi di cui si parlava prima. E' buona norma non buttare mai nell'immondizia un apparato, una scheda o un qualsiasi meccanismo che non funziona o che è ormai obsoleto. Potrebbe non funzionare di per se ma potrebbe contenere al suo interno tutta una serie di sottoapparati che in realtà funzionano benissimo e che ci permettono di risparmiare un sacco di soldi per i nostri esperimenti.


Parametri caratteristici
step anglerotazione espressa in gradi dell'albero per passare da un passo a quello immediatamente successivo, i valori più comuni sono 1.8°, 3.6°, 7.5°, 9°, 15°
numero di fasinumero di avvolgimenti di cui è costituito il motore
passi per girovalore legato allo step angle, indica il numero di passi necessari per compiere un giro completo. Si calcola dividendo 360/step angle
tensione di fasevalore della tensione di alimentazione riferita ad ogni singola fase
corrente di fasevalore della corrente richiesta per ogni fase affinchè il motore lavori all'interno delle proprie caratteristiche elettrico-meccaniche
resistenza di fasevalore della resistenza misurata su ogni fase


Coppia e frequenza
Un discorso accurato va fatto in relazione alla coppia applicabile al motore passo-passo ed alla frequenza di funzionamento dello stesso cioè la velocità con cui vengono eccitate e diseccitate le fasi una di seguito all'altra. Un motore passo-passo, per come è costruito, ha un ben determinato rapporto coppia/frequenza. In generale la coppia è inversamente proporzionale alla frequenza di funzionamento, più il motore gira veloce minore è la coppia che io posso applicare all'albero. A riprova di quanto detto consiglio di effettuare alcune semplici prove empiriche ma che comunque rendono bene l'idea : pilotando il motore con una frequenza di fase via via maggiore provare a fermare l'albero con il pollice e l'indice della mano. Si noterà che via via che la velocità aumenta sarà sempre più facile fermare l'albero motore cioè, sarà sempre minore la coppia da applicare all'albero per riuscire a fermarlo. In questo caso si dice che il motore perde il passo cioè non è più in grado di fornire una certa coppia meccanica all'albero perché la velocità di rotazione dello stesso è troppo elevata. Proprio perché noi non vogliamo che un motore perda il passo dovremo pilotarlo con oculatezza, in modo tale che lavori sempre all'interno della sua curva di slew-range (Figura 1).


Slew Range
Figura 1

Supponiamo infatti di dover pilotare un motore che si occupa di ruotare intorno all'asse y un braccio meccanico di un robot. Il sistema braccio darà luogo, quando posto in movimento, ad una certa coppia meccanica che sarà applicata all'albero del motore oppure se vogliamo il motore per far girare il braccio dovrà essere in grado di applicarvi una coppia maggiore o al limite uguale. Se iniziamo a far ruotare l'albero lentamente noteremo che esso esegue gli spostamenti che noi comandiamo senza dar luogo a nessuno scostamento angolare dalla posizione che ci prefiggiamo di raggiungere. Aumentando la velocità arriveremo sicuramente ad un punto in cui l'albero non riuscirà a stare al passo, cioè, il sistema motore-albero non risponderà più in maniera proporzionale agli impulsi che gli provengono dagli ingressi, l'albero inizierà ad oscillare intorno al suo asse ed il braccio non compirà più nessuno spostamento o al limite ruoterà solo di qualche grado. Ecco che è importante tenere contro delle caratteristiche del motore. Anche a vuoto, cioè con l'albero libero da ogni vincolo meccanico, vale lo stesso discorso. In questo caso la coppia applicata dall'esterno all'albero sarà nulla ma proprio perché il motore non è una struttura ideale avrà anch'esso una sua coppia cioè l'albero e tutte le strutture interne al motore stesso daranno luogo ad una ben precisa coppia meccanica. Anche in questo caso si può provare a fare l'esperimento di prima, si noterà che ad un certo punto il motore perderà il passo, sicuramente ad una velocità maggiore di prima ma lo perderà ugualmente. In questo ultimo caso possiamo fare un altro esperimento che sicuramente chiarirà le idee ancora meglio. A motore fermo, proviamo ad eccitare le fasi con una frequenza bassa e preso atto del fatto che il motore non perde il passo annotiamo la frequenza su un foglio di carta e fermiamo il motore. Facciamo nuovamente partire il motore con una frequenza un po' più alta e ripetiamo le prove fino a che il motore perde il passo in partenza, cioè, quando da fermo eccitato con una certa frequenza di fase l'albero oscilla subito intorno al proprio asse. Ora invece eccitiamo il motore con una frequenza di fase che cresce linearmente, ad un certo punto noteremo che arrivati alla frequenza alla quale il motore prima non partiva esso continua a ruotare regolarmente e perde il passo solo dopo un ulteriore aumento della frequenza stessa. Questo indica che il sistema motore che parte da fermo ha bisogno di una maggiore accortezza nel pilotaggio perché partendo deve vincere degli attriti che in moto non ha. Supponiamo di voler spostare la penna di un plotter da un punto ad un altro del foglio di carta su cui sta disegnando. La maniera migliore per farlo è quella di far partire il motore piano e via via aumentare la velocità sino a raggiungere quella di regime, in fase di fermata vale il discorso inverso, fermare il motore diminuendo la velocità fino alla fermata (Figura 2). Il tutto presuppone un calcolo della distanza da percorrere, il relativo numero di passi da effettuare, quanti passi utilizzare per arrivare alla velocità di regime, quanti passi effettuare alla velocità di regime e quanti passi effettuare per effettuare la fermata graduale. Il tutto ovviamente in caso di sistemi meccanici applicati all'albero deve tenere conto delle coppie in gioco. In questo tutorial si è scelto di trattare i motori passo-passo unipolari per il fatto che sono i più diffusi.

Velocita'
Figura 2


Fili d'uscita
Un motore passo passo unipolare può essere schematizzato come una serie di bobine (di numero uguali alle fasi del motore) che eccitate una di seguito all'altra danno luogo alla rotazione del motore. Per i motori unipolari ci troveremo di fronte ad una serie di fili che escono dal motore e che a seconda dei modelli potranno anche definire per numero. Non è detto che un motore unipolare a 4 fasi abbia sempre lo stesso numero di cavi, quello prodotto dalla ditta x potrebbe averne 5, quello prodotto dalla ditta y potrebbe averne 6 e quello prodotto dalla ditta z potrebbe averne 8. Come riconoscere allora i fili ? E' abbastanza semplice, nel caso ci si trovi di fronte ad un motore con 5 fili in uscita avremo sicuramente un filo per l'eccitazione di ogni fase ed un filo comune per tutte le fasi al quale andrà collegata la tensione di alimentazione di fase (+VL). Nel caso ci si trovi di fronte ad un motore con 6 fili in uscita avremo sicuramente a che fare con una struttura che prevede 2 comuni da collegare alla +VL, uno per ogni coppia di fasi. In questo caso avremo due coppie di fasi che hanno il comune "in comune" ed ovviamente avremo un filo di uscita per il comando di ogni fase. Nei motori con 8 fili infine avremo due fili per ogni fase, uno sarà la +VL e l'altro sarà il filo di comando di fase.

Fili di uscita
Figura 3


Tipi di pilotaggio, diodi di ricircolo
Come abbiamo detto in precedenza per pilotare un motore passo passo occorre applicare la corrente alle fasi del motore stesso secondo una ben determinata sequenza. Vi sono tre tipi di pilotaggio : Wawemode oppure One phase drive, Two phase drive ed Half phase drive. Essi differiscono per quello che riguarda la coppia ottenuta all'albero del motore e nel caso del pilotaggio Half step drive è possibile fermare l'albero motore in una posizione intermedia rispetto all'angolo di passo caratteristico del motore che stiamo pilotando. Supponiamo ora di aver costruito un circuito come quello indicato nella figura sopra. Questa serie di 4 darlington di potenza ci permette di pilotare dei carichi induttivi come quelli formati dalle fasi di un motore passo passo utilizzando uscite Ttl compatibili da collegare ai punti F1, F2, F3, F4. Questi quattro ingressi saranno i "piloti" delle fasi del motore. Potremmo pensare di collegarli per esempio alla parallela di un personal computer, magari ai pin 2,3,4 e 5 del connettore cannon a 25 pin presente sul retro del Pc. Questi 4 pin corrispondono rispettivamente ai primi quattro bit della porta Dati della parallela; esi vengono infatti denominati D0, D1, D2 e D3. Prima di procedere oltre vorrei spendere due parole su questo tipo di utilizzo della parallela. Personalmente ritengo che utilizzarla per questi esperimenti sia estremamente pratico e formativo, infatti, è utilissimo avere delle uscite e degli ingressi che io posso gestire tramite un qualsiasi programma scritto in C per esempio. In questa maniera io posso fare "tutto quello" che desidero che quei bit facciano. Occorre però prestare particolare attenzione al fatto che siamo in presenza di una circuiteria esterna ad un Pc che viene collegata ad una sua porta. Può sembrare banale ma basta una svista per distruggere la pota parallela e per renderla inservibile. Se utilizziamo un bredboard per i nostri esperimenti noteremo che è abbastanza "facile" commettere errori e quindi per esempio invertire i famosi due fili che fanno saltare la parallela. Quindi un consiglio a tutti, prima di alimentare il circuito ma soprattutto prima di collegarlo alla parallela controllate e ricontrollate tutto ciò che avete fatto, come dicono alla NASA "Check and Double Check". Il circuito disegnato sopra è unicamente un circuito teorico semplificato al massimo, in realtà, il circuito andrebbe completato collegando in parallelo ad ogni fase un diodo con l'anodo verso il collettore del darlington. Come sappiamo gli avvolgimenti del motore passo passo non sono altro che bobine e quindi induttori. Un induttore è una specie di volano elettrico, un elemento che per sua natura tende fare in modo che la corrente che vi circola attraverso si mantenga costante. Quando il transistor è in conduzione non c'è nessun problema, quando invece il transistor non è in conduzione la logica direbbe che la corrente che circola attraverso l'induttore dovrebbe andare subito a zero. L'induttore però non vuole saperne di abbattere istantaneamente la corrente che vi circola, come un volano al quale improvvisamente viene a mancare la coppia che lo ha messo in movimento, di sicuro non si fermerà istantaneamente ma dopo numerosi altri giri. Per fare in modo che la corrente non scenda a zero l'induttore tende a far salire la tensione in maniera inversa rispetto a quella alla quale era connesso quando era in conduzione. Ora il collettore del transistor verso massa ha una resistenza praticamente infinita, l'induttore farà salire la tensione sul collettore del transistor anche a valori molto alti. A questo punto dobbiamo trovare una via di fuga per questa benedetta corrente che l'induttore non vuole proprio far scappare (Figura 4).

Diodo di ricircolo
Figura 4

In questa maniera offriremo alla corrente una via di fuga verso la Vcom del circuito. I diodi da utilizzare devono essere diodi veloci e capaci di sopportare correnti anche di alcuni ampere. Dobbiamo tenere contro del fatto che la tensione che si genera sulla Vcom per effetto di questa corrente sarà una tensione che dall'esterno andremo ad applicare alle uscite dell'alimentarore del nostro circuito. Per questo motivo occorre che la circuiteria di alimentazione sia anch'essa ben dimensionata quando si ha la necessità di alimentare carichi induttivi, in particolare, è sempre bene "abbondare" con il condensatore di filtro posto dopo il ponte raddrizzatore utilizzandone uno che abbia una tensione di utilizzo parecchie volte più elevata di quella che normalmente è in gioco. Diodi adatti a questo lavoro son i BYV27 o al limite gli 1N400X, non gli 1N4148 !


Wawemode - One phase drive
Con questo tipo di pilotaggio le fasi del motore vengono eccitate una per volta dando origine alla rotazione dell'albero del motore in oggetto. Ogni volta che la fase precedente viene diseccitata e quella successiva eccitata ha luogo una rotazione dell'albero pari ad uno step. Guarda la tabella e la simulazione animata.

StepFase1Fase2 Fase3Fase4
1onoffoffoff
2offonoffoff
3offoffonoff
4offoffoffon
1onoffoffoff

One step mode drive



Two phase drive
In questo caso vengono eccitate due fasi alla volta di conseguenza l'albero motore andrà ad occupare posizioni intermedie rispetto alle fasi che sono in quel momento eccitate. Come nel caso precedente ogni volta che si cambia lo stato di eccitazione delle fasi l'albero motore ruota di un angolo pari allo Step Angle. In questo caso avendo per ogni passo due fasi attive avremo a disposizione una coppia maggiore del 40% rispetto al pilotaggio Wavemode. Per questo motivo avremo un consumo di corrente doppio.

StepFase1Fase2 Fase3Fase4
1ononoff off
2offonon off
3offoffon on
4onoffoff on
1ononoff off

Two phase drive



Half Step Drive
In questo tipo di pilotaggio si utilizzano alternativamente i pilotaggi One Phase e Two Phase. In questo modo l'albero motore può fermarsi in una posizione intermedia rispetto alle posizioni che raggiungerebbe con uno dei due metodi di pilotaggio di cui sopra. Ciò vuol dire che può fermarsi a metà fra un passo e l'altro e quindi il numero di passi per compiere un certo angolo raddoppia. In questo caso avendo a che fare con un pilotaggio misto avremo una coppia ed un consumo irregolari.

StepFase1Fase2 Fase3Fase4
1onoffoffoff
2ononoff off
3offonoffoff
4offonon off
5offoffonoff
6offoffon on
7offoffoffon
8onoffoff on
9onoffoffoff

Half step drive

A questo punto non ci resta che scegliere il tipo di pilotaggio da utilizzare per far avanzare l'albero del nostro motore. Supponiamo di avere a disposizione un motor che presenta uno Step Angle di 1.8 gradi per passo. Supponiamo ora di voler far ruotare l'albero di 45° rispetto alla posizione in cui esso si trova. Per fare ciò occorre per prima cosa calcolare di quanti passi far ruotare l'albero : 45 / 1.8 = 25 passi. Questo calcolo è valido nel caso si utilizzi o il pilotaggio Wavemode oppure Two Phase Drive, in questo modo non dovremo fare altro che azionare le fasi del motore secondo la sequenza indicata in tabella per 25 volte. Nel caso si decida di utilizzare il metodo Half Step invece il calcolo andrà fatto in questo modo: 45 / (1.8/2) = 45 / 0.9 = 50. In questo caso dovremo eccitare le fasi del motore secondo la sequenza Half Step per 50 volte. Diciamo che il pilotaggio Half Step viene utilizzato laddove sia richiesta una precisione maggiore rispetto ai pilotaggi normali. L'eccitazione secondo la sequenza delle tabelle sopra riportate genera una rotazione dell'albero in senso orario, eccitando invece le fasi in maniera inversa otterremo una eccitazione in senso antiorario.


Mettere tutto in pratica
Siccome è praticamente impossibile capire a priori quali siano i fili giusti relativi alle fasi giuste consiglio, allo scopo di individuarli, di effettuare alcune prove con un multimetro e un alimentatore stabilizzato. Con il multimetro misureremo le resistenze fra un cavo e l'altro e scriveremo i valori letti in una tabella. In questo modo sarà abbastanza semplice capire come le fasi sono collegate ai fili che fuoriescono dal motore. Individuata la conformazione circuitale tramite l'alimentatore andremo ad alimentare in sequenza tutti i fili che fuoriescono dal motore a parte quello che abbiamo battezzato come comune che andrà sempre collegato al + dell'alimentatore. Dopo aver connesso il - a tutti i fili d'uscita del motore e dopo che ad ogni successiva connessione l'albero motore sarà avanzato di un passo in senso orario saremo sicuri di aver individuato con esattezza la corrispondenza fra fili e bobine o fasi.

Nella sezione progetti trovate un driver per motori passo passo.


Stampa la pagina