Porte automatique pour poulailler version 2 *

Description :

Version 2 : Ouverture et fermeture de la porte pilotée par un capteur LDR ( photorésistance photoconductrice ).

 

    Prérequis :

Matériel :

  • 1 x Carte Arduino Uno
  • 2 x Fin de course
  • 1 x LDR photorésistance
  • 1 x Résistance 10 KΩ
  • 1 x Moteur Nema PAP
  • 1 x L298N
  • 1 x Alimentation 12v
  • Fils de connexion
  • 1 x Breadboard

Version IDE :

 

 

Vidéo de démonstration :

 

Schéma de câblage :

 

Code :

#include <Stepper.h>
const int stepsPerRevolution = 200;
// Initialise le moteur sur les broches 8 à 11
Stepper myStepper(stepsPerRevolution, 8, 9, 10, 11);

const int LDR = A0; // broche du LDR
const int fdchaut = 3; // broche du fin de course haut
const int fdcbas = 5; // broche du fin de course bas
int etatporte = 0; 
int val_LDR_ouverture = 400; // valeur luminosité minimum pour ouverture
int val_LDR_fermeture = 100; // valeur luminosité minimum pour fermeture

void setup() {  
  myStepper.setSpeed(200); //Vitesse de rotation du moteur à 200
  pinMode(fdchaut, INPUT_PULLUP);
  pinMode(fdcbas, INPUT_PULLUP);
  Serial.begin(9600); 
}

void loop() {
    if(analogRead(LDR) >= val_LDR_ouverture){
      etatporte = 1;
    }
    if(analogRead(LDR) <= val_LDR_fermeture){
      etatporte = 0;
    }   
    while(etatporte == 1 && digitalRead(fdchaut) == HIGH){
        myStepper.step(1);
    }
    while(etatporte == 0 && digitalRead(fdcbas) == HIGH){
        myStepper.step(-1);
    } 
    moteurrepos(); //Mise au repos du moteur PAP
}

void moteurrepos (){
   digitalWrite (8, LOW);
   digitalWrite (9, LOW);  
   digitalWrite (10, LOW);
   digitalWrite (11, LOW);  
}

 


 

Laisser un commentaire