Description
Moteur pas à pas 12 V avec pilote ULN2003. Moteur pas à pas 28BYJ-48 de haute qualité avec pilote ULN2003 adapté aux microcontrôleurs.
Moteur pas à pas 12 V avec spécifications du pilote ULN2003 :
– Type : 28BYJ-48
– Fonctionne sur : 12V
– 4 phases
- Diamètre: 28 mm
– Angle de pas : 5.625 x 1/64
– Rapport de réduction : 1/64
– Couple de décrochage de 34.3 mN.m
Connexions moteur :
Connectez le moteur à la carte pilote.
connectez un Arduino comme ci-dessous :
12V+(rouge) à +12V
12V à 0V (terre)
IN1 (bleu) : vers la broche d'entrée numérique Arduino 8
IN2 (rose) : vers la broche d'entrée numérique Arduino 9
IN3 (jaune) : vers la broche d'entrée numérique Arduino 10
IN4 (orange) : vers la broche d'entrée numérique Arduino 11
Exemple de code Arduino :
// This Arduino example demonstrates bidirectional operation of a
// 28BYJ-48, using a ULN2003 interface board to drive the stepper.
// The 28BYJ-48 motor is a 4-phase, 8-beat motor, geared down by
// a factor of 68. One bipolar winding is on motor pins 1 & 3 and
// the other on motor pins 2 & 4. The step angle is 5.625/64 and the
// operating Frequency is 100pps. Current draw is 92mA.
////////////////////////////////////////////////
//declare variables for the motor pins
int motorPin1 = 8; // Blue - 28BYJ48 pin 1
int motorPin2 = 9; // Pink - 28BYJ48 pin 2
int motorPin3 = 10; // Yellow - 28BYJ48 pin 3
int motorPin4 = 11; // Orange - 28BYJ48 pin 4
// Red - 28BYJ48 pin 5 (VCC)
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));
}
Seuls les clients connectés ayant acheté ce produit peuvent rédiger un avis.
Expédition aux Pays-Bas
Ce produit est livré par colis postal PostNL.- 6.95 € de frais de port pour les commandes inférieures à 100 €.
- Les commandes supérieures à 100 € seront acceptées
gratuitement envoyé.
- Vous pouvez également utiliser du pakjegemak.
Informations complémentaires Commandé avant 16h30 les jours ouvrables, expédié le jour même !
Cliquez ici pour connaître les coûts en dehors des Pays-Bas.
Robert (propriétaire vérifié) -
Joli moteur pas à pas, pas le plus rapide, mais utile pour mes projets simples.