|

Compteur de tours avec Speed Sensor Module LM393 + Bouton Reset piloter par un Arduino

Prérequis :

  • 1 x Carte Arduino Uno
  • 1 x 28BYJ-48
  • 1 x ULN2003
  • 1 x Alimentation 12V
  • 1 x Bouton
  • 1 x Speed Sensor Module LM393
  • Fils de connexion

Vidéo de démonstration :

Schéma de câblage :

Code :

// La broche numérique 2 est reliée au Bouton
const int PinBouton = 2;
// La broche numérique 5 est reliée au Speed Sensor Module LM393
const int PinLM393 = 5;

int EtatLM393;
int EtatLM393Sauvegarde;

int EtatBouton;
int EtatBoutonSauvegarde;

int CompteurTours;
int motorSpeed = 100;

#include <Stepper.h>
// modifiez ceci pour qu'il corresponde au nombre de pas par tour
// pour votre moteur
const int stepsPerRevolution = 200;

// initialiser la bibliothèque stepper sur les broches 8 à 11
Stepper myStepper(stepsPerRevolution, 8, 9, 10, 11);

void setup() {
  Serial.begin(9600);
  pinMode(PinBouton, INPUT_PULLUP);
  pinMode(PinLM393, INPUT);
}


void loop() {
  EtatLM393 = digitalRead(PinLM393);
  if (EtatLM393 != EtatLM393Sauvegarde) {  // Si changement d'état du LM393 (front)
    if (EtatLM393 == HIGH) {  // Si front montant
      CompteurTours++;
      Serial.print("Nombre de Tours: ");
      Serial.println(CompteurTours);
    }
    EtatLM393Sauvegarde = EtatLM393; // Mémorisation de l'état du LM393
  }

  EtatBouton = digitalRead(PinBouton);
  if (EtatBouton != EtatBoutonSauvegarde) {  // Si changement d'état du Bouton (front)
    if (EtatBouton == LOW) {  // Si front descendant
      CompteurTours = 0;
      Serial.println("Compteur Tours Reset");
    }
    EtatBoutonSauvegarde = EtatBouton; // Mémorisation de l'état du Bouton
  }

    myStepper.setSpeed(motorSpeed);
    myStepper.step(1);
}

Publications similaires

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *