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 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85
| #include <Stepper.h>
const int stepsPerRevolution = 2048; //2048 pour la 28BYJ-48 = 1 tour
int Nbre_tour ;
int trig = 2;
int echo = 3;
int led = 4;
int buzzer = 5;
long lecture_echo;
long cm;
// initialiser la bibliothèque stepper sur les broches D8 a D11:
Stepper myStepper(stepsPerRevolution, 8,10,9,11); // Attribution des broches
void setup() {
// Règlage de la vitesse (28BYJ-48):
myStepper.setSpeed(12); // De 4 à 14 vitesse de rotation
// Initialisation du port série:
pinMode(trig, OUTPUT);
digitalWrite(trig, LOW);
pinMode(buzzer, OUTPUT);
pinMode(4, OUTPUT);
Serial.begin(9600);
}
void loop() {
Nbre_tour = 1; // Faire 1 tours dans un sens:
Serial.println("Sens Horaire");
myStepper.step(stepsPerRevolution*Nbre_tour);
delay(1000);
digitalWrite(trig, HIGH);
delayMicroseconds(10);
digitalWrite(trig, LOW);
lecture_echo = pulseIn(echo, HIGH);
cm = lecture_echo / 58;
Serial.print("Distancem : ");
Serial.println(cm);
if (cm < 5)
{
digitalWrite (led,HIGH);
delay (1000);
digitalWrite (led, LOW);
delay (1000);// action A
digitalWrite (buzzer,HIGH);
delay (1000);
digitalWrite (buzzer,LOW);
delay(1000);
}
else
{
digitalWrite (led,LOW);
digitalWrite (buzzer,LOW);
}
Nbre_tour = 1; //Faire 1 tours dans l autre sens:
Serial.println("Sens inversie du sens horaire");
myStepper.step(-stepsPerRevolution*Nbre_tour);
delay(1000);
digitalWrite(trig, HIGH);
delayMicroseconds(10);
digitalWrite(trig, LOW);
lecture_echo = pulseIn(echo, HIGH);
cm = lecture_echo / 58;
Serial.print("Distancem : ");
Serial.println(cm);
if (cm < 5)
{
digitalWrite (led,HIGH);
delay (1000);
digitalWrite (led, LOW);
delay (1000);// action A
digitalWrite (buzzer,HIGH);
delay (1000);
digitalWrite (buzzer,LOW);
delay(1000);
}
else
{
digitalWrite (led,LOW);
digitalWrite (buzzer,LOW);
}
} |
Partager