28BYJ-48 Stepper Motor är en populär, prisvärd stegmotor som ofta används i DIY-elektronikprojekt. I kombination med ULN2003 -drivrutinen är det ett utmärkt val för applikationer som kräver exakt rörelse, såsom robotik, kameravisslingar och hemmautomation. Denna handledning kommer att vägleda dig genom att ställa in och kontrollera 28byj-48 stegmotor med Arduino.
Vad du behöver
- 28byj-48 stegmotor
- ULN2003 drivrutin
- Arduino Board (t.ex. Uno, Mega, Nano)
- Bulttrådar
- Breadboard (valfritt)
- En dator med Arduino Ide installerad
Steg 1: Förstå komponenterna
28byj-48 stegmotor
- 28byj-48 är en 4-fas, 5-tråds stegmotor med ett växelreduktionsförhållande på cirka 1:64, vilket gör det exakt och pålitligt.
ULN2003 drivrutin
- ULN2003 är en drivrutinskort designad specifikt för 28BYJ-48-motorn. Den inkluderar lysdioder för att indikera motorns aktiva fas och förenklar anslutningarna till Arduino.
Steg 2: Kopplar ULN2003 till Arduino
-
Anslut 28BYJ-48-motorn till ULN2003-drivrutinskortet. Motorns kontakt passar direkt in i rubriken märkt "i" på brädet.
-
Använd jumpertrådar för att ansluta ULN2003 -drivrutinskortet till Arduino enligt följande:
Uln2003 -stift | Arduinosnål |
---|---|
In1 | Stift 8 |
In2 | Stift 9 |
I3 | Stift 10 |
In4 | Stift 11 |
Vcc | 5V |
Gard | Gard |
Steg 3: Installera stegbiblioteket
Arduino IDE innehåller ett inbyggt bibliotek för stegmotorstyrning.
- Öppna Arduino IDE.
- Gå till Skiss > Inkludera bibliotek > Stege.
Steg 4: Ladda upp koden
Här är en grundläggande exempelkod för att styra stegmotorn:
#include <Stepper.h>
// Define the number of steps per revolution for the 28BYJ-48 motor
#define STEPS_PER_REV 2048
// Initialize the Stepper library on pins 8, 9, 10, and 11
Stepper stepper(STEPS_PER_REV, 8, 10, 9, 11);
void setup() {
stepper.setSpeed(15); // Set motor speed (in RPM)
Serial.begin(9600);
Serial.println("28BYJ-48 Stepper Motor Test");
}
void loop() {
Serial.println("Moving Forward");
stepper.step(STEPS_PER_REV); // Move one full revolution forward
delay(1000);
Serial.println("Moving Backward");
stepper.step(-STEPS_PER_REV); // Move one full revolution backward
delay(1000);
}
Steg 5: Testa installationen
- Anslut Arduino till din dator via USB.
- Öppna Arduino IDE och välj rätt Styrelse och Hamn under Verktyg meny.
- Ladda upp koden till Arduino genom att klicka Ladda upp.
- När koden har laddats upp bör stegmotorn rotera en full revolution framåt och sedan bakåt upprepade gånger.
Avancerad kontroll med acceleration
För mjukare och mer exakt kontroll kan du använda Accelstepper Bibliotek istället för det inbyggda stegbiblioteket. Här är ett exempel:
#include <AccelStepper.h>
// Define the motor interface type
#define HALFSTEP 8
// Initialize the AccelStepper library
AccelStepper stepper(HALFSTEP, 8, 10, 9, 11);
void setup() {
stepper.setMaxSpeed(1000); // Set maximum speed
stepper.setAcceleration(500); // Set acceleration
stepper.setSpeed(200); // Set initial speed
}
void loop() {
stepper.runSpeed(); // Continuous rotation
}
Felsökning
- Motor rör sig inte: Kontrollera alla anslutningar och se till att rätt stift definieras i koden.
- Eratisk rörelse: Kontrollera att motorns strömförsörjning är tillräcklig och koden matchar din installation.
- Lågt vridmoment: 28byj-48 är inte en hög vridmoment. Se till att det inte är överbelastat.
Applikationer av 28byj-48 stegmotor
- Kamerasreglage
- Robotarmar
- Automatiserad persienner
- 3D -skrivarmekanismer
Slutsats
Du har framgångsrikt konfigurerat och kontrollerat 28BYJ-48 stegmotorn med ULN2003-drivrutinen och Arduino. Denna prisvärda och pålitliga motor är perfekt för olika DIY -projekt. Experimentera med olika hastigheter, steg och kontrollmetoder för att göra dina projekt mer dynamiska!