Bonsoir à tous !
Voilà, j'ai construis pour mes études la partie mécanique d'une imprimante 3D, et pour la revue de projet, je souhaite animer ma machine avec un Motor Shield R3.
Les déplacements horizontaux se faisant à l'aide de vis, la vitesse assez élevée des moteurs pas à pas ne me gène pas.
Or pour mon déplacement vertical, mon moteur actionne une courroie. Celui doit faire seulement 2 tours pour parcourir toute la hauteur.
Voilà pourquoi j'ai besoin de vous : il me faut réduire la vitesse de ce moteur à son minimum.
Je suis équipé de moteurs pas à pas NEMA 17, d'un Arduino Mega et d'un Motor Shield R3.
Voici le code qui fonctionne très bien et qui me permet d'actionner mes moteurs horizontaux :
#include <Stepper.h>
const int stepsPerRevolution = 200; // change this to fit the number of steps per revolution
// for your motor
// initialize the stepper library on the motor shield
Stepper myStepper(stepsPerRevolution, 12,13);
// give the motor control pins names:
const int pwmA = 3;
const int pwmB = 11;
const int brakeA = 9;
const int brakeB = 8;
const int dirA = 12;
const int dirB = 13;
int x = 0;
void setup () {
Serial.begin(9600);
// set the PWM and brake pins so that the direction pins // can be used to control the motor:
pinMode(pwmA, OUTPUT);
pinMode(pwmB, OUTPUT);
pinMode(brakeA, OUTPUT);
pinMode(brakeB, OUTPUT);
digitalWrite(pwmA, HIGH);
digitalWrite(pwmB, HIGH);
digitalWrite(brakeA, LOW);
digitalWrite(brakeB, LOW);
// initialize the serial port:
Serial.begin(9600);
// set the motor speed (for multiple steps only):
myStepper.setSpeed(200);
} void loop () {
myStepper.step(4000);
myStepper.step(-4000);
delay(0);
}
J'ai tenté d'abaisser la valeur de mySteeper.setSpeed, mais en dessous de 200, mon moteur décroche après quelques tours (2 ou 3), il vibre fortement et ne tourne plus, alors que les premiers tours sont parfaits. J'ai aussi essayé de baisser stepsPerRevolution, mais là aussi, même résultat.
De plus, lorsque j'insert des Delay, le même résultat se produit, le moteur décroche.
J'ai essayer toutes les combinaisons de câblage possible, et la configuration actuelle doit être la bonne puisque le moteur tourne parfaitement avec le code ci-dessus.
Mon alimentation est une alimentation 500W de PC.
Notez que mon moteur doit tourner très lentement, mais qu'il doit aussi être un minimum puissant.
Merci de me venir en aide, je suis totalement bloqué...
(PS : si j'avais su, j'aurais commandé un réducteur, mais il est trop tard ..)