Problème avec Moteur 42BYG304 et EasyDriver

grattounet
mar, 02/02/2016 - 16:43
Bonjour à tous,
je viens de recevoir ma carte A3967 v44 EasyDriver et j'ai installer un moteur type 42BYG304 et je me pose un probléme ... mais avant tout voilà le schéma de cablage réalisé ...
Mon problème vient du fait que mon moteur et sensé être alimenté par du 12 Volts !!? mais dés que j'essai de lui envoyer plus de "jus" autre que 5 Volts!! ben il fonctionne plus ou du moins il ronronne !!! je pense que cela dois venir d'un problème de fréquence ? ou un truc comme ça !! mais là j'avoue je coince :( ... Sinon à 5 Volts il fonctionne bien et j'arrive à lui faire faire un 360 ° etc ... sans soucis ?
quelqu'un pourrait m'aider ? car je me dis que si c'est un 12 Volts il dois être à son meilleurs rendement à ce voltage ? non ?
MERCI à tous pour me trouver une réponse à ma question :)
grattounet
mer, 02/03/2016 - 17:59
Bonjour, Personne à d'idée :( peut-être qu'il faut j'ajoute une résistance ou autre chose sur mon entré 12V ? Merci
Cédric29
mer, 02/03/2016 - 20:08
Salut
j ai vu des cablages identiques mais avec le gnd relié entre l arduino et l easy driver.
http://www.amazon.com/A3967-Stepper-driver-EasyDriver-Driver/dp/B00OOG4O26
Cédric29
mer, 02/03/2016 - 21:03
Salut
j ai vu des cablages identiques mais avec le gnd relié entre l arduino et l easy driver.
http://www.amazon.com/A3967-Stepper-driver-EasyDriver-Driver/dp/B00OOG4O26
Ton alim 12v est elle assez puissante?
Au passage Alex, pour écrire un message avec une tablette android, ca bug très souvent.
grattounet
jeu, 02/04/2016 - 12:01
Bonjour hcfroid,
ben oui j'avais déjà regardé ce cablage !!! mais rien y fait ... il fonctionne parfaitement sous 5,3 mais dés que je lui donne plus de voltage il fait n'importe quoi !!! je soupconne mon branchement de mon alimentation avec des petit fils ... je vais essayer avec mon alimentation 12 Volts de PC ... je ferais une photo de installation :)
Merci pour ta réponse !
Ps: je cherche aussi le "code" à écrire pour démarer le moteur par bouton poussoir, j'ai ce module là ainsi qu'a afficher l'action sur le LCD ... si vous avez une idée de code suis preneur ! MERCI
grattounet
jeu, 02/04/2016 - 14:51
Pour info voilà la vidéo de mon installation il tourne sous 5Volts là !!! mais je voie pas ou je coince :( et pourquoi il fonctionne correctement en 5V et dés que je le passe en 12V plus rien :(
Merci
grattounet
jeu, 02/04/2016 - 18:47
Bon les z'amis j'ai trouvé :( c'est en faite ma carte easydriver qui HS :( j'en avais deux ! j'ai essayé l'autre et ça fonctionne !!! donc je pense que je l'es cramé !! car j'ai vue sur un site qu'il fallait surtout pas débrancher le moteur avant la puce A3967 ... Voilà maintenant faut je me colle au code :) donc sur ça je suis encore prenneur d'info :)
Alain
pour info ici : Il ne faut en aucun cas débrancher le moteur en laissant l'EasyDriver sous tension, il pourrait en résulter la destruction de l'Allegro. source
Alex
jeu, 02/04/2016 - 20:17
Bonjour Alain,
Ravi que vous ayez trouvé la solution et merci de l'avoir partagée sur le forum.
C'est ce que je vous aurais recommandé de faire dans tous les cas, essayer avec une autre carte.
grattounet
ven, 02/05/2016 - 03:01
Bonjour Alex,
je pense que oui :) il faut expliquer la finalité du souci, bon je débute donc pas tjrs facile aussi de trouver les bons mots, pour expliquer mes soucis !!! bref !! voilà j'ai trouvé la solution, et j'en suis ravi :)
Voilà une petite vidéo de mon avancement :p
Ps : si vous voulez le "Y" faut recopier la partie attribué au "X" et brancher le câble du joystick "Y" en A1 par exemple
Code :
#define step_pin 3 // Pin 3 connected to Steps pin on EasyDriver
#define dir_pin 2 // Pin 2 connected to Direction pin
#define MS1 5 // Pin 5 connected to MS1 pin
#define MS2 4 // Pin 4 connected to MS2 pin
#define SLEEP 7 // Pin 7 connected to SLEEP pin
#define X_pin A0 // Pin A0 connected to joystick x axis
int direction; // Variable to set Rotation (CW-CCW) of the motor
int steps = 1025; // Assumes the belt clip is in the Middle
void setup() {
pinMode(MS1, OUTPUT);
pinMode(MS2, OUTPUT);
pinMode(dir_pin, OUTPUT);
pinMode(step_pin, OUTPUT);
pinMode(SLEEP, OUTPUT);
digitalWrite(SLEEP, HIGH); // Wake up EasyDriver
delay(5); // Wait for EasyDriver wake up
digitalWrite(MS1, LOW); // Configures to Full Steps
digitalWrite(MS2, LOW); // Configures to Full Steps
}
/*****************************************************************
*
* HIGH = Arrière / LOW = Avant)
*
*****************************************************************/
void loop() {
while (analogRead(X_pin) >= 0 && analogRead(X_pin) <= 100) {
if (steps > 0) {
digitalWrite(dir_pin, HIGH);
digitalWrite(step_pin, HIGH);
delay(1);
digitalWrite(step_pin, LOW);
delay(1);
steps--;
}
}
while (analogRead(X_pin) > 900 && analogRead(X_pin) <= 1024) {
if (steps < 2050) {
digitalWrite(dir_pin, LOW);
digitalWrite(step_pin, HIGH);
delay(1);
digitalWrite(step_pin, LOW);
delay(1);
steps++;
}
}
}