besoin d'aide pour automatisation poulailler

Bonjour à tous,

je me suis lancé dans l’Arduino il y a une quinzaine de jours avec le kit starter. J’ai réalisé les exercices du livre fourni et j’ai (j’espère) compris les grandes lignes des exercices. Aujourd’hui je me lance dans un projet personnel dont pas mal de versions existent déjà sur le net : l’automatisation d’une porte de poulailler. J’ai avec les exercices du livre essayé de faire un mix mais ça ne marche pas !
avant de compliquer mon projet et comme j’ai surtout envie d’apprendre comment ça marche ! j’ai tout d’abord commencé par tenter de faire tourner mon moteur dans les deux sens en fonction de la luminosité avant d’étoffer les composants et le code.

ma photorésistance capte bien les valeurs puisqu’elle me les restitues sur mon PC et évolue quand je passe la main devant donc ça c’est bon ! la ou ça ne va pas c’est que mon moteur ne tourne jamais alors qu’il devrait tourner tout le temps dans un sens ou dans l’autre. Je pense que mon câblage est correct(j’ai recopié celui du bouquin) l’inversion du sens de rotation est assuré par un composant L293DNE. Je pense que c’est mon code qui plante. J’ai fais plusieurs tentatives sans succès ! j’ai du mal à comprendre ce qu’il faut mettre en entrée et sortie (il me semble logique de mettre en entrée ma photorésistance et mon moteur en sortie mais c’est peut être une bêtise…)

ci dessous mon câblage et mon code si une âme charitable veut bien corriger mon “exercice” si l’erreur est minime ou me dire si j’ai fais un emplâtre et que je dois tout recommencer en me donnant au passage quelques tuyaux. l’idée étant encore de comprendre le pourquoi du comment.

commande_poulailler.ino (814 Bytes)

votre câblage

comment est alimenté l'Arduino ? avez vous relié les GND ?

merci pour l'intérêt porté à mon projet, l'arduino est alimenté par le port USB du PC.la photoresistance est relié à la GND de la carte et pour le cablage du moteur j'ai fais le même que celui du livre du starter kit. j'ai fais un pont pour mettre tout le circuit sur une masse commune (cable noir à droite) également comme dans le starter kit

le GND du driver de moteur n'est pas le même que celui de votre Arduino
il faut emmener un fil depuis le GND de l'arduino vers le rail Bleu de la breadbard
Attention le câble noir à droite vient dans le rail rouge en bas qui devrait être réservé au 5V. il faut le mettre dans le rail bleu.

Dans ton code , tu a oublie d’activer la broche enable!

Voila ton code avec la correction (je crois, car je suis vraiment hyper nouveau dans le domaine (genre 2 semaines)

</>
const int controlPin1 = 2;
const int controlPin2 = 3;
const int enablePin = 9;
const int photocell = A0;

int photocellPin = 0;
int photocellReading;

void setup(void) {

Serial.begin(9600);
pinMode(photocellPin,INPUT);
pinMode(photocellReading,INPUT);
pinMode(controlPin1,OUTPUT);
pinMode(controlPin2,OUTPUT);
pinMode(enablePin,OUTPUT);
}

void loop(void) {
photocellReading = analogRead(photocellPin);
Serial.print("Analog reading = ");
Serial.print(photocellReading);

if (photocellReading <= 500) {
Serial.println(" - noir");

digitalWrite(enablePin, HIGH);
digitalWrite(controlPin1, LOW);
digitalWrite(controlPin2, HIGH);

} else {
Serial.println(" - blanc");

digitalWrite(enablePin, HIGH);
digitalWrite(controlPin1, HIGH);
digitalWrite(controlPin2, LOW);

}
delay(1000);
}
</>

Bonsoir merci pour vos retour. J'ai viré la commande enable qui en fait ne me. Servait pas. Il y avait également un problème dans le câblage un fil était inversé désormais ça fonctionne :slight_smile: