5V Stepper Motor with ULN2003 Driver Board Set

https://www.botshop.co.za/web/image/product.template/390/image_1920?unique=8544054
(1 review)

26.34 26.34 ZAR 37.63 VAT Included

32.72 VAT Included

Not Available For Sale

This combination does not exist.

OLED Display Displays Module

Internal Reference: ACT-035

5V Stepper Motor with ULN2003 Driver Board Set.

This ULN2003 Driver Board is designed to operate small stepper motors at voltages between 5V and 12V, at a maximum current of 500mA. It is Arduino compatible and is typically used with Arduino UNO boards, but often requires a separate power supply to avoid damaging the Arduino board.

This set is a perfect choice for building your own 3D printer or CNC machine. The Driver board could function as a driver for other devices as well, as listed below in the " ULN2003 Chip Features". It is pretty self-explanatory that buying this set would be a very wise choice.

5V Stepper Motor Specification:

Rated voltage: 5VDC
Number of Phase 4
Speed Variation
Ratio 1/64
Stride Angle 5.625° /64
Frequency 100Hz
DC resistance 50Ω±7%(25℃) Idle
In-traction Frequency > 600Hz Idle
Out-traction Frequency > 1000Hz In-traction
Torque >34.3mN.m(120Hz)
Self-positioning Torque >34.3mN.m
Friction torque 600-1200 gf.cm
Pull in torque 300 gf. cm
Insulated resistance >10MΩ(500V)
Insulated electricity power 600VAC/1mA/1s
Insulation grade A
The rise in Temperature <40K(120Hz)
Noise <35dB(120Hz,No load,10cm)
Model 28BYJ-48 – 5V
Data on Motor: PDF stepper1

ULN2003 Driver Board Set Feature:

• 500-mA-Rated Collector Current (Single Output)
• High-Voltage Outputs: 50 V
• Output Clamp Diodes
• Inputs Compatible With Various Types of Logic
• Relay-Driver Applications 2 Applications
• Relay Drivers
• Stepper and DC Brushed Motor Drivers
• Lamp Drivers
• Display Drivers (LED and Gas Discharge)
• Line Drivers
• Logic Buffers

ULN2003 DataSheet

Code

//declare variables for the motor pins
int motorPin1 = 8; //pin 1N1
int motorPin2 = 9; //pin 1N2
int motorPin3 = 10; //pin 1N3
int motorPin4 = 11 //pin 1N4
int motorSpeed = 1200; //variable to set stepper speed
int count = 0; // count of steps made
int countsperrev = 512; // number of steps per full revolution
int lookup[8] = {B01000, B01100, B00100, B00110, B00010, B00011, B00001, B01001};
 
//////////////////////////////////////////////////////////////////////////////
void setup() {
 //declare the motor pins as outputs
 pinMode(motorPin1, OUTPUT);
 pinMode(motorPin2, OUTPUT);
 pinMode(motorPin3, OUTPUT);
 pinMode(motorPin4, OUTPUT);
 Serial.begin(9600);
}
 
//////////////////////////////////////////////////////////////////////////////
void loop(){
 if(count < countsperrev )
 clockwise();
 else if (count == countsperrev * 2)
 count = 0;
 else
 anticlockwise();
 count++;
}
 
//////////////////////////////////////////////////////////////////////////////
//set pins to ULN2003 high in sequence from 1 to 4
//delay "motorSpeed" between each pin setting (to determine speed)
void anticlockwise()
{
 for(int i = 0; i < 8; i++)
 {
 setOutput(i);
 delayMicroseconds(motorSpeed);
 }
}
 
void clockwise()
{
 for(int i = 7; i >= 0; i--)
 {
 setOutput(i);
 delayMicroseconds(motorSpeed);
 }
}
 
void setOutput(int out)
{
 digitalWrite(motorPin1, bitRead(lookup[out], 0));
 digitalWrite(motorPin2, bitRead(lookup[out], 1));
 digitalWrite(motorPin3, bitRead(lookup[out], 2));
 digitalWrite(motorPin4, bitRead(lookup[out], 3));
}