Il Motore passo-passo (Stepper)

Obiettivo: Pilotare un motore passo-passo tramite Arduino



Componenti elettronici:

  • Arduino UNO
  • Breadboard
  • 1 Motore Stepper (e.g. Nema17 1.7A 1.8° 42MM Stepper Motor – 42shdc3025-24b)
  • 1 Driver A4988
  • 1 Alimentatore a 12 V e 2 A a corrente continua

TeoriaIl motore passo-passo, detto anche stepper, è un motore elettrico sincrono in corrente continua, senza spazzole, che permette la suddivisione della rotazione in piccoli angoli detti step. E’ un motore molto preciso e veloce e facilmente controllabile tramite una scheda elettronica, denominata “driver”. Esso viene collegato ad Arduino, e rende il controllo del motore molto facile, permettendo, con soli due uscite digitali, di controllare la velocità, la direzione e l’angolo di rotazione.

Il driver è il vero protagonista del controllo del motore passo-passo. Si pone tra Arduino e il motore e viene collegato come dal seguente schema:

I pin STEP e DIR servono per controllare la rotazione (e la velocità) e la direzione e vanno collegati a due uscite digitali di Arduino. Sulla destra invece l’A4988 presenta i pin per il collegamento al motore. GND (in basso) e VDD servono per alimentare la scheda tramite Arduino. Fondamentali sono i pin 1A, 1B, 2A e 2B che vanno collegati alle fasi del motore, come descritto più avanti. Infine, i pin GND e VMOT riguardano l’alimentazione del motore e vanno collegati all’alimentatore a 12 V.

Il motore necessita di 200 impulsi per completare un giro. Il programma si basa su cicli che gestiscono la rotazione. La velocità di rotazione dipende dal tempo di attesa tra un impulso e un altro all’interno dei singoli cicli di rotazione.

La pausa tra un impulso e un altro (e quindi la gestione della velocità di rotazione) dipende dalla funzione delayMicroseconds presente all’interno del ciclo di rotazione.

Collegamento Circuitale:

Codice:




PersonalizzazioniE’ possibile collegare un potenziometro e un pulsante per gestire la direzione e la velocità di rotazione.