Per realizzare piccole automazioni è possibile utilizzare dei motori unipolari Stepper tipo 28-BYJ48 con le relative schede di controllo con un Driver tipo ULN2003A. Il tutto è presente in un kit venduto da Elegoo
Indice
Dove trovare il kit
Il kit contenente il materiate viene venduto dalla Elegoo tramite il sito AMAZON, tutti i componenti trovano posto in un piccolo contenitore plastico, al suo interno troviamo:
- Motori unipolari Stepper tipo 28-BYJ48 – n° 4 pezzi
- Schede di controllo (basata sul Driver 7 canali Darlington NPN tipo ULN2003A – n° 4 pezzi
- Una Piattina multicolore 10 cavi con connettori Dupont maschio/femmina
Un singolo Set composto da un driver per motori passo-passo basato sul chip ULN2003 e da un motore passo-passo a 4 fasi tipo 28BYJ-48 può essere trovato presso il sito FUTURA ELETTRONICA, codice Prodotto: 2846-SM2003DB, al costo di 5,50 €.
Descrizione
I motori Stepper Motor sono un tipo di dispositivo elettromagnetico che si muove in passi discreti. All’interno sono presenti diverse bobine, l’albero centrale ha una serie di magneti montati su di esso, alle bobine che circondano l’albero sono alternativamente date corrente o no, creando campi magnetici che respingono o attraggono i magneti sull’albero, facendo ruotare il motore.
Questo motore unipolare Stepper è dotato di cinque fili e quattro bobine. Le connessioni centrali delle bobine sono collegate tra loro e solitamente utilizzate come connessione di alimentazione.
Per altre informazioni sui motori unipolari vedere l’articolo I motori passo-passo
Schema elettrico del modulo
Esaminando lo schema riportato sotto, realizzato tramite il programma EasyEDA, vediamo che sulla scheda, oltre all’integrato ULN2003A, troviamo 4 diodi LED con le relative resistenze limitatrici, i LED A, B, C, D indica lo stato del funzionamento del motore passo-passo.
I segnali di controllo provenienti dalla scheda di controllo devono essere collegati alla pin strip J1, il motore viene collegato alla Pinstrip a 5 poli J
La pin strip J3 serve per l’alimentazione, se si collega il motore 28-BYJ48 che deve essere alimentato a 5V si dovrà montare un cavallotto in modo che la stessa tensione arrivi oltre che all’integrato U1 anche al motore.
Visto l’assorbimento del motore, l’alimentazione al motore non può essere derivata dalla scheda di controllo, ma dovrà essere fornita da apposito alimentatore esterno
Lo schema realizzato con EasyEDA: Un servizio per il disegno di circuiti e la loro simulazione, progettazione e produzione di PCB. Provalo è gratuito!

Caratteristiche del motore stepper 28BYJ-48
Modello: | 28BYJ-48 – 5V |
Tensione nominale: | 5VDC |
Numero fasi: | 4 |
Angolo di passo: | 5.625° /64 - 1/64 |
Frequenza: | 100Hz |
Resistenza DC: | 200Ω±7%(25°C) |
Frequenza di pull-up a vuoto: | > 600Hz |
Frequenza di estrazione a vuoto: | > 1000Hz |
Coppia di serraggio: | >34.3mN.m(120Hz) |
Coppia di attrito | 600-1200 gf.cm |
Coppia | 300 gf.cm |
Resistenza di isolamento: | >10MΩ(500V) |
Resistenza dielettrica: | 600VAC/1mA/1s |
Grado di isolamento: | A |
Aumento di temperatura: | <40 °C (120Hz) |
Rumore | <35dB (120Hz,No load,10cm) |
Schema tipico di collegamento
Lo schema tipico di collegamento degli unipolari Stepper tipo 28-BYJ48 con le relative schede di controllo con Driver tipo ULN2003A, precede anche una scheda Arduino UNO , mentre l’alimentazione è fornita da un alimentatore per breadboard
Sketch di prova
Segue un semplice sketch di prova, per il suo utilizzo si fa uso della libreria stepper che si trova tra quelle standard dell’IDE, le funzioni disponibili nella libreria sono:
Stepper(steps, pin1, pin2)
Stepper(steps, pin1, pin2, pin3, pin4)
setSpeed(rpm)
step(steps)
lo sketch utilizzato test_stepper.ino è derivato tra quelli presenti negli esempi della libreria il suo nome è Stepper Motor Control – one revolution.
In questo esempio, l’albero esegue una rotazione completa in senso orario, eseguendo il numero di 2048 passi utilizzando la libreria Arduino Stepper.
Lo stepper sarà controllato da pin digitali 2, 3, 4 e 5 secondo lo schema tipico riportato sopra.
Il motore passo-passo unipolare 28BYJ-48 viene azionato agendo sui pin IN1-IN3-IN2-IN4 per fare ciò viene create un’istanza della libreria stepper chiamata myStepper in cui inseriamo la sequenza di pin 5, 3, 4, 2.
Assicuratevi di effettuare questa operazione correttamente altrimenti il motore non funzionerà correttamente.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 | #include <Stepper.h> const int stepsPerRevolution = 2048; // inizializa la libreria stepper Stepper myStepper(stepsPerRevolution, 5, 3, 4, 2); void setup() { // Imposta velocità rotazione a 15 rpm myStepper.setSpeed(15); // initializa la serial port: Serial.begin(9600); } void loop() { // Passo uno, una rotazione in senso orario Serial.println("Rotazione in senso orario"); myStepper.step(stepsPerRevolution); delay(500); // Passo uno, una rotazione in senso antiorario Serial.println("Rotazione in senso antiorario"); myStepper.step(-stepsPerRevolution); delay(500); } |
Il programma per ottenere una rotazione continua in senso orario sarà:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | #include <Stepper.h> const int stepsPerRevolution = 2048; // inizializa la libreria stepper Stepper myStepper(stepsPerRevolution, 5, 3, 4, 2); void setup() { // Imposta velocità rotazione a 15 rpm myStepper.setSpeed(15); // initialize the serial port: Serial.begin(9600); } void loop() { //Fà ruotare il perno motore in continuo // in senso orario myStepper.step(stepsPerRevolution); } |