Advertisement
JingleBZH

ElieBol

May 18th, 2019
160
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. /* Utilisation du capteur Ultrason HC-SR04 */
  2.  
  3. #include <Stepper.h>
  4.  
  5. // 32 pas par tour, reducteur de 1/64... Donc 32*64 pas pour 1 tour.
  6.  
  7. int NbPas = 2048;
  8.  
  9. //pour un moteur de 200 pas par tour et brancher sur les broches 6, 9, 10 et 11
  10.  
  11. Stepper moteur(NbPas, 3, 5, 4, 6);
  12.  
  13. // définition des broches utilisées
  14.  
  15. int trig = 12;
  16.  
  17. int echo = 11;
  18.  
  19. long lecture_echo;
  20.  
  21. long cm;
  22.  
  23. #define avertisseur 7 //Led
  24.  
  25. void setup()
  26.  
  27. {
  28.  
  29.   pinMode(trig, OUTPUT);
  30.  
  31.   digitalWrite(trig, LOW);
  32.  
  33.   pinMode(echo, INPUT);
  34.  
  35.   Serial.begin(9600);
  36.  
  37.   pinMode(avertisseur, OUTPUT); //On défini la led comme une sortie
  38.  
  39.   moteur.setSpeed(17);
  40.  
  41. }
  42.  
  43. void loop()
  44.  
  45. {
  46.  
  47.   digitalWrite(trig, HIGH);
  48.  
  49.   delayMicroseconds(10);
  50.  
  51.   digitalWrite(trig, LOW);
  52.  
  53.   lecture_echo = pulseIn(echo, HIGH);
  54.  
  55.   cm = lecture_echo / 58;
  56.  
  57.   Serial.print("Distance en cm : ");
  58.  
  59.   Serial.println(cm);
  60.  
  61.   delay(100);
  62.  
  63.   //Faire un tour = 2048 pas dans le sens 1
  64.  
  65.   //Faire un tour = 2048 pas dans le sens 2
  66.  
  67.   switch (cm) {
  68.  
  69.     case 1 ( cm < 50 ) : // On allume la led si on est moins loin que cm
  70.  
  71.       digitalWrite(avertisseur, HIGH);
  72.  
  73.       moteur.step(512);
  74.  
  75.       delay(200);
  76.  
  77.       break;
  78.  
  79.   }
  80.  
  81. case 2 ( cm > 50 ) : //sinon on éteind la led // else ou if penser a essayer
  82.  
  83.   digitalWrite(avertisseur, LOW);
  84.  
  85.   moteur.step(-512);
  86.  
  87.   delay(200);
  88.  
  89.   break;
  90.  
  91. }
  92.  
  93. }
  94.  
  95. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement