j'utilise un interface Arduino Motor Shield avec le programme exemple StepperOneRevolution mais mon moteur ne tourne pas alors que j'ai bien branché les fils de mon moteur sur le entrée A+, A-, B+, B-
J'entends un léger bruit sur le moteur mais il ne bouge pas.
Le câblage est il le bon ?
Merci de votre aide
Philippe
A priori non sinon le moteur tournerait. Mais comment pourrait-on le savoir sans connaitre le programme utilisé, quel est le moteur shield, qu'y a-t-il sur A+ à B- et quel est le moteur utilisé
En fait j'ai utilisé ce programme et cela fonctionne à présent.
byte compteur = 0; // on initialise le conteur
void setup() { // une fois au démarrage
compteur = 0;
pinMode(3, OUTPUT); // Déclaration de la broche n°3 en sortie Digitale PWM
pinMode(11, OUTPUT); // Déclaration de la broche n°11 en sortie Digitale PWM
pinMode(12, OUTPUT); // Déclaration de la broche n°12 en sortie Digitale
pinMode(13, OUTPUT); // Déclaration de la broche n°13 en sortie Digitale
Serial.begin(115200);
}
void unpas(){ // tour complet du moteur pas à pas=200 pas)
// Commande moteur pas à pas Bipolaire 4 fils en Mode Wave | Sens Normal
// Pas n°1 | Sortie B- du Shield Moteur -> Bobine A du moteur pas à pas
digitalWrite(12, HIGH);
digitalWrite(13, LOW);
analogWrite(3, 0);
analogWrite(11, 255);
delay(10);
// Pas n°2 | Sortie A- du Shield Moteur -> Bobine C du moteur pas à pas
digitalWrite(12, LOW);
digitalWrite(13, HIGH);
analogWrite(3, 255);
analogWrite(11, 0);
delay(10);
// Pas n°3 | Sortie B+ du Shield Moteur -> Bobine B du moteur pas à pas
digitalWrite(12, LOW);
digitalWrite(13, HIGH);
analogWrite(3, 0);
analogWrite(11, 255);
delay(10);
// Pas n°4 | Sortie A+ du Shield Moteur -> Bobine D du moteur pas à pas
digitalWrite(12, HIGH);
digitalWrite(13, LOW);
analogWrite(3, 255);
analogWrite(11, 0);
delay(10);
}
// 200 pas
void loop() { // boucle à l'infinie
// on incrémente le conteur
compteur= compteur+1;
// on affiche la valeur du conteur
Serial.println(compteur);
unpas();
// on attend une demi-seconde pour que l'arrête soit visible
// si le conteur est à 9 (de 0 à 9 : 10), alors...
if(compteur >= 50) {
Serial.println("Le compteur est à 50 > Arrêt du programme !");
while(true) {;} // ...on arrête le programme
}
}