Sommario:

Dispositivo di prova del motore passo-passo: 3 passaggi
Dispositivo di prova del motore passo-passo: 3 passaggi

Video: Dispositivo di prova del motore passo-passo: 3 passaggi

Video: Dispositivo di prova del motore passo-passo: 3 passaggi
Video: Motore Elettrico Corrente Continua DC Funzionamento 3D ⚙️ 2024, Novembre
Anonim
Image
Image
Cablaggio
Cablaggio

Avevo poca o nessuna esperienza nella guida di motori passo-passo, quindi prima di progettare, stampare, assemblare e programmare l'orologio analogico a correzione automatica "antico" (https://www.instructables.com/id/Antique-Auto-Correcting-Analog-Clock/) utilizzando un motore passo-passo, ho deciso di progettare e testare il software utilizzando un dispositivo di prova molto più semplice. Se tu, come me, hai poca o nessuna esperienza con i motori passo-passo, spero che questo breve Instructable con il codice sorgente possa aiutarti.

Il dispositivo di prova richiede i seguenti componenti:

  • Una scheda di prototipazione.
  • Un Adafruit Feather ESP32 con intestazioni femminili.
  • Una scheda controller stepper basata su ULN2003.
  • Un motore passo-passo 28BYJ-48 5vdc.
  • Alcuni ponticelli maschio-femmina.
  • Una batteria al litio Adafruit 3.7vdc.
  • Una lancetta indicatrice stampata in 3D.

Il controller passo-passo, il motore passo-passo e i cavi jumper che ho usato sono inclusi in una confezione da 5 che ho acquistato come kit on line (cercare "TIMESETL 5pcs DC 5V Stepper Motor 28BYJ-48 + 5pcs ULN2003 Driver Board + 40pcs cavo jumper maschio femmina ").

La batteria è opzionale. Nota che la batteria emette 3,7 V CC, ma la scheda del controller stepper e lo stepper sono 5 V CC. L'apparecchiatura di prova funzionerà solo con alimentazione a batteria, anche alla tensione più bassa.

Ho incluso un video che mostra i passaggi necessari per scaricare il software su ESP32, collegare ESP32 al controller del motore passo-passo e collegare il motore passo-passo e la batteria.

Passaggio 1: cablaggio

Cablaggio
Cablaggio
Cablaggio
Cablaggio

Ho usato i cavi jumper maschio/femmina inclusi nel kit per cablare l'apparecchiatura di prova. Sono necessari sei fili e si inseriscono come segue:

  1. ESP32 pin 14 (maschio) al pin IN4 (femmina) della scheda stepper.
  2. ESP32 pin 32 (maschio) al pin IN3 (femmina) della scheda stepper.
  3. ESP32 pin 15 (maschio) al pin IN2 (femmina) della scheda stepper.
  4. ESP32 pin 33 (maschio) al pin IN1 (femmina) della scheda stepper.
  5. ESP32 pin "GND" (maschio) al pin "-" (femmina) della scheda stepper.
  6. Pin ESP32 "USB" (maschio) per il funzionamento USB OPPURE "BAT" (maschio) per il funzionamento a batteria, al pin "+" (femmina) della scheda stepper.

Una volta che i fili sono stati inseriti e ricontrollati, collegare il cavo del motore passo-passo al connettore della scheda del controller del motore passo-passo. Il connettore è codificato e si adatta solo in un modo.

Infine, se si utilizza una batteria, collegarla al connettore della batteria ESP32.

Passaggio 2: indicatore

Indicatore
Indicatore

Per un indicatore sul motore passo-passo, ho progettato e stampato in 3D una lancetta indicatrice "Hand.stl". Ho stampato la lancetta dell'indicatore ad un'altezza dello strato di 0,15 mm, riempimento del 20% senza supporti, quindi l'ho premuta sull'albero del motore passo-passo.

In alternativa è possibile utilizzare come indicatore nastro adesivo, cartone o altro materiale.

Passaggio 3: software

Software
Software

Ho scritto il software di test stepper nell'ambiente Arduino 1.8.5. Se non lo hai già fatto, scarica l'ambiente Arduino e i driver USB necessari sul tuo computer e installali. Inoltre, visita il sito Web di Adafruit per qualsiasi software aggiuntivo correlato ad Adafruit ESP32. Ho trovato molto utile questo collegamento: Adafruit ESP32 e Arduino Environment.

Con un cavo USB collegato tra il computer e ESP32 e "Stepper.ino" caricato nell'ambiente Arduino, scarica "Stepper.ino" su ESP32.

Una volta scaricato, lo stepper dovrebbe aumentare di 6 gradi una volta al secondo.

Ho scritto questo software di prova per due motivi; primo, per imparare a pilotare un motore passo-passo, e secondo, per convertire i 4096 passi per rotazione del motore passo-passo in 60 "tick" di un secondo a 6 gradi per l'orologio.

La funzione "Step(nDirection)" aziona il motore passo-passo. Questa funzione mantiene una variabile intera locale (statica) "nPhase", che viene incrementata o decrementata di uno (ogni volta che la funzione viene chiamata), in base al segno dell'argomento della funzione nDirection. Questa variabile è limitata nell'intervallo da 0 a 7, che, se utilizzata insieme all'interruttore della custodia, pilota le fasi del motore in base alle specifiche del produttore per ogni fase.

La funzione "Update()" determina quando e quanti passaggi eseguire per ogni tick per distanziare uniformemente 60 tick per 360 gradi di rotazione. Questa funzione fa avanzare il motore passo-passo di 68 o 69 passi per ogni tick. Ad esempio, se la funzione utilizza solo 68 passi per tick, allora (68 passi * 60 tick) = 4080 passi non sarebbero sufficienti per completare i 360 gradi di rotazione (ricorda che lo stepper richiede 4096 passi per 360 gradi di rotazione). E se la funzione utilizzasse 69 passi per tick, allora (69 passi * 60 tick) = 4140 sarebbero troppi passi. Il semplice algoritmo che ho scritto distribuisce uniformemente 68 e 69 step tick durante la rotazione di 360 gradi e può determinare quale direzione di rotazione è più rapida per il conteggio dei secondi desiderato (utilizzato nell'orologio).

Ed è così che ho progettato e testato il software per l'orologio analogico a correzione automatica "Antico".

Se avete suggerimenti e/o domande, non esitate a commentare e farò del mio meglio per rispondere.

Consigliato: