bonjour à tous, je constat un dysfonctionnement sur mon moteur pas à pas qui fonctionnait bien jusqu'à ce que je lui est branché sur une alimentation 12v-10A.
les leds sur le driver ULN2003 reste allumées quand j'appuis sur le PB et le moteur tourne difficilement avec une forte vibration et commence à chauffer un peu un peu.
et merci pour la compréhension.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
40
41
42
43
44
45
46
47
48
49
50
51
52 #include <AccelStepper.h> AccelStepper Mon_moteur( 8, 9, 10, 11); // https://www.arduino.cc/reference/en/libraries/accelstepper/ // https://www.pjrc.com/teensy/td_libs_AccelStepper.html int monMotVitesse = 0; const int BP1=2; const int BP2=3; const int led=7; const int fourche1=5; const int fourche2=6; void setup() { pinMode(led,OUTPUT); pinMode(BP1,INPUT); pinMode(BP2,INPUT); pinMode(fourche1,INPUT); pinMode(fourche2,INPUT); Mon_moteur.setMaxSpeed(600); } void loop() { if ((digitalRead(BP1) == HIGH)&(digitalRead(fourche1)== LOW)) { monMotVitesse = 600; // Marche CW (sens des aiguilles d'une montre) } else if ((digitalRead(BP2 ) == HIGH)&(digitalRead(fourche2) == LOW)) { monMotVitesse = -600; // Marche CCW (sens contraire des aiguilles d'une montre) } else { monMotVitesse = 0; // Arrêt } if (monMotVitesse != 0) // Si un bouton est pressé { //digitalWrite(led,HIGH); digitalWrite(led,HIGH); delay(1000); digitalWrite(led,LOW); delay(1000); Mon_moteur.setSpeed(monMotVitesse); Mon_moteur.runSpeed(); } else { digitalWrite(led,LOW); } }
Partager