bonjour a tous
pour la petite histoire,
je suis en pleine renovation de ma maison, je m'attaque a l'escalier
et c'est la qu'arduino intervient
description du projet:
Bande led sous chaque nez de marche (led blanche (pas de RGB)
le but est de faire un allumage automatique au passage de quelqu'un
j'ai fait des test de différents capteurs pour au final opter pour une barrière laser (laser + capteur a photoresistance)
les PIR sont TROP sensible et multidirectionel
les infrarouges que j'ai testé sont trop peu fiable que ce soit niveau détection ou temps de réponse.
pour ce qui est de placer les LED, passé les gaine pour les capteur, ça c'est mon dommaine, ensuite arduino c'est autre chose... je suis plus que débutant!!!
je sait faire des truc hyper simple mais la malgrès mes lecture je bute...
apres multiple lecture j'ai "pondu" ce code qui franchement ne MARCHE PAS
les senario doivent etre les suivant:
1 capteur bas détecte-LED s'allume - (le monsieur monte l'escalier) - capteur haut détecte LED s’éteint)
2 capteur haut détecte-LED s'allume-(le monsieur descend) -capteur bas détecte - LED s’éteint
3 et 4 capteur haut(ou bas) détecte-LED s’allume -monsieur est bourré et fait demi tour) capteur haut( ou bas) détecte - LED s’éteint
quelques âmes charitable seraient a même de me filer un coup de main?
code actuel tres peu efficace....
int relayPin = 6;// pin du relay LOW allumé, HIGH eteind
int CapteurbasPin = 7; // pin du capteur bas
int CapteurhautPin = 8; //pin du capteur haut
int etatbas = 0; // etat du capt bas
int etathaut = 0; //etat du capt haut
void setup() {
pinMode(relayPin, OUTPUT);
pinMode(CapteurbasPin, INPUT);
pinMode(CapteurhautPin, INPUT);
digitalWrite(relayPin, HIGH);
}
void loop() {
etatbas = digitalRead(CapteurbasPin); etathaut = digitalRead(CapteurhautPin); // read capteur
if (etatbas == HIGH) //si capteur bas detecte
{ do {digitalWrite(relayPin, LOW);} // TANT QUE capteur haut ou bas ne RE detecte pas, allume le relay
while (etathaut != HIGH || etatbas != HIGH);
}
if (etathaut == HIGH) //si capteur haut detecte
{ do {digitalWrite(relayPin, LOW);} // TANT QUE capteur haut ou bas ne RE detecte pas, allume le relay
while (etathaut != HIGH || etatbas != HIGH);
}
}
merci d'avance 8)