Hello
Je débute sur Arduino.
J'ai un moteur 14HS17-0504S et un driver DM432C que je pilote avec ce programme:
/*
* Test fait avec le moteur 14HS17
* alimentation externe 13V
* Friver en demi pas 5 sur Off 22,5° correspond a x = 25
*/
//defines pins
const int stepPin = 6; //PUL -Pulse
const int dirPin = 7; //DIR -Direction
void setup(){
//Sets the pins as Outputs
pinMode(stepPin,OUTPUT);
pinMode(dirPin,OUTPUT);
for (int m=0; m<=15; m++){
//Enables the motor direction to move
digitalWrite(dirPin,HIGH);
//Makes 400 Pulses for making one full cycle rotation
for(int x = 0; x < 25; x++){
digitalWrite(stepPin,HIGH);
delayMicroseconds(2000);
digitalWrite(stepPin,LOW);
delayMicroseconds(2000);
}
delay(1000);
}
}
void loop(){
}
Je souhaite faire juste un tour donc je n'utilise pas la void loop.
Sur le driver je peux changer le nombre de pulse par révolution.
Dans ce cas ci-dessus, j'ai mis 400 pulses et avec x = 25, le moteur avance de 22,5° chaque fois.
Ca fonctionne bien.
Maintenant j'aimerais le faire avancer d'un degré par degré! Sauf que même en prenant le plus grand des pulses (25600) je ne vois pas comment je pourrais arriver à le faire avancer de 1°...
Est ce impossible?
Merci d'avance.