Commande moteur pas a pas

arduino

a marqué ce sujet comme résolu.

Bonsoir à tous,

Voila j'ai un petit soucis.

J'aimerai commandé un moteur pas a pas a l'aide de ma carte arduino uno et de mon motor shield R3.

Donc j'ai trouvé plusieurs tuto sur le net et j'en est sorti se programme qui fonctionne :

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
#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 dirA = 12;
const int dirB = 13;

int x = 0;
void setup() {
// set the PWM and brake pins so that the direction pins  // can be used to control the motor:
pinMode(pwmA, OUTPUT);
pinMode(pwmB, OUTPUT);

digitalWrite(pwmA, HIGH);
digitalWrite(pwmB, HIGH);

// initialize the serial port:
// set the motor speed (for multiple steps only):
}


void loop() 
{
myStepper.setSpeed(50);
myStepper.step(100);
myStepper.setSpeed(100);
myStepper.step(100);
myStepper.setSpeed(120);
myStepper.step(100);
myStepper.setSpeed(150);
myStepper.step(100);
}

Mais en augmentant la vitesse de rotation c'est le drame … Le moteur se bloque et grogne et je ne comprend pas pourquoi.

J'ai un autre système plus manuel ou je peut faire tourner le moteur bien plus rapidement sans soucis. J'utilise une alimentation stabilisé suffisamment puissante, (tout fonctionne parfaitement avec le système manuel)

Le systeme manuel est composé de ceci : http://www.ebay.com/itm/TB6560-3A-Driver-Board-CNC-Router-Stepper-Motor-Drivers-Single-1-Axis-Controller-/221498779603 http://www.ebay.com/itm/Pulse-Signal-Generator-Stepper-Motor-Speed-Regulator-Controller-Motor-Driver-/330692980897?pt=LH_DefaultDomain_0&hash=item4cfed670a1

Donc ma question d'ou sa viendrais le problème avec l'arduino et son motor shield ? Et la seconde est il possible de remplacé le générateur manuel par l'arduino uno ?

Merci d'avance

+0 -0

Salut. Il faudrait mettre le code dans une "boite code" histoire que le formatage (c++ par exemple) puisse s'appliquer et que l'on y voit quelque chose. Pour cela clique sur le bouton <> ;)

Pourquoi sinon ne pas coupler ton "système manuel" avec ton Arduino voir si cela marche (en envoyant des successions de niveau 0 puis 1 pour générer des impulsions)

+0 -0

Merci pour l'astuce Eskimon.

Pour la séquence de 0 et de 1 j'avais essayé mais sa faisais un peut n'importe quoi.... Apres j'avais peut être pas fait le bon branchement .

Donc la si je comprend bien il faudrait juste que je débranche la partie pulse de mon générateur et que je le gère uniquement avec l'arduino ?

edit: Je viens de tester ceci:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
const int moteur = 2;

void setup() {
pinMode(moteur, OUTPUT);

}

void loop() {
digitalWrite(moteur,LOW);
digitalWrite(moteur,HIGH);
delay(100);
}

Le moteur ne tourne quasiment pas il fait des micros pas n'importe comment. j'ai également essayé d'introduire du temps entre l'état haut et l'état bas même résultat.

+0 -0

Bonjour bidibulle77, Quelle type de moteur pàp utilisez vous? Pour ma part je souhaite piloter un moteur d'une imprimante 3D (k8200 de velleman). Pour cela, je dispose d'une carte arduino uno ainsi que qu'un motor shield rev 3. Avez vous la possibilité de m'envoyer votre shémas de cablage ou une photo de votre dispositif? Merci d'avance

Connectez-vous pour pouvoir poster un message.
Connexion

Pas encore membre ?

Créez un compte en une minute pour profiter pleinement de toutes les fonctionnalités de Zeste de Savoir. Ici, tout est gratuit et sans publicité.
Créer un compte