Maquette de maison automatisée

Bonjour,

Je vous rejoins avec pour projet de fabriquer une maquette de maison automatisée.

J’ai quelques soucis sur ce projet, j’avais commencé à développer mes automatismes les uns après les autres, lumière qui s’adapte à la lumière ambiante, alarme de fuite d’eau, volets roulants etc…

J’ai fait trois programmes séparés à améliorer, mais qui fonctionnent tous, le problème vient quand je fais des trois programmes un seul. Le cerveau moteur fonctionne correctement, la LED ne fonctionne plus qu’en On/Off et le buzzeur grésille.

Ci-joint, vous trouverez un schéma électronique ainsi que mon programme. Mon cerveau moteur n’est pas réglé pour le moment, je me contentais juste de le faire bouger avec la lumière.

L’interrupteur de mon schéma sera en réalité de l’eau qui tombera sur deux fils dénudés qui simulera la fuite.

#include <Servo.h>

Servo myServo; 

int const sensorPin = A0; 
int sensorVal;  
int angle; 

const int LEDPin = 9;


const int SensorPin = A0;


int lightValue = 0;



int SensorValue = 0;


int switchState = 0; 


void setup() {
  
  myServo.attach(10);
  
  Serial.begin(9600);

  pinMode(LEDPin, OUTPUT);

  pinMode (2,INPUT);

}


void loop() {
  sensorVal = analogRead(sensorPin); 
  
  Serial.print("sensorVal: ");
  Serial.print(sensorVal);

 
  angle = map(sensorVal, 0, 1023, 0, 179);

 
  Serial.print(", angle: ");
  Serial.println(angle);

 
  myServo.write(angle);


  delay(15);



  switchState = digitalRead(2);

  if (switchState == LOW){
   
  }

   else{
    tone(8,30,20);


  }


{
  SensorValue = analogRead(SensorPin);


  Serial.print("Raw Sensor Values \t Red : ");
  Serial.print(SensorValue);


  
lightValue = SensorValue/4;


  Serial.print("Valeurs recalculees \t Rouge : ");
  Serial.print(lightValue);


if ( SensorValue>= 800){
analogWrite( 9, 0);
}

if ( SensorValue<= 750){
analogWrite( 9, 2);
}

if ( SensorValue<= 700){
analogWrite( 9, 20);
}

if ( SensorValue<= 650){
analogWrite( 9, 50);
}

if ( SensorValue<= 600){
analogWrite( 9, 100);
}

if ( SensorValue<= 550){
analogWrite( 9, 200);
}

if ( SensorValue<= 500){
analogWrite( 9, 255);
}

}

}

Merci par avance pour votre aide.

Bonjour, C'est bien un projet fini ?

:(

Effectivement dans la précipitation je me suis surement trompé de section.

Je vais contacter un modérateur pour déplacer le topic.

UP personne pour m'aider ?

:confused: :confused:

Bonjour,

Il y a un problème dans le cablage de ton bouton. Il doit être monté avec une résistance de pullup (externe ou interne) ou une résistance de pulldown. La led est branchée à l'envers (peut être uniquement sur le schéma)

Bonjour,

et merci pour la réponse.

Pour la led elle est à l’envers uniquement sur le schéma.
Pour le bouton je vais essayer de mettre une résistance de pullup.

Je me suis dépanner pour l’instant en séparent mon servo moteur sur un autre arduino et tous marche pour l’instant.

je ferais un compte rendu quand j’aurais tous fini.