voila mon programme (c'est le deuxième)
quand j'allume ma carte UNO rien ne se passe, ce qui est normal, puisque le programme attend un signal dans l'entrée 10 pour démarrer.
si j'envoi un signal; le programme s’exécute correctement
la carte
puis la carte son et un moteur
puis le moteur s’arrête
la ventouse s’arrête et la porte s'ouvre.
et le programme s’arrête.
chaque élément est commandé par une carte relais: donc trois relais
mon problème est que dés que je met un fil dans la borne 10 (relié à rien du tout) le programme démarre. je pensais quand dessous de 1volt la carte considérée que l'entrée était à zéro.
le probléme vient: de la carte??
du programme
ou du montage , j'ai essayé de rajouter une résistance de 220 ohm à la sortie avant de mettre le fil, dés que j'enfonce un coté de la résistance dans la pin 10 le programme démarre, j'ai éssaye avec un entrée analogique même pb
à l'aide
int pinMoteur = 4;
int pinSon = 6;
int pinVentouse =8;
boolean ouverturePorte;
int pinAction;
int val = 0;
void setup() {
//initialisation des ports
pinMoteur = 4;
pinSon = 6;
pinVentouse = 8;
pinAction = 10;
// état des ports
pinMode(pinMoteur, OUTPUT);
pinMode(pinSon, OUTPUT);
pinMode(pinVentouse, OUTPUT);
pinMode(pinAction, INPUT);
//mise à zéro
digitalWrite(pinSon, LOW);
digitalWrite(pinMoteur, LOW);
digitalWrite(pinVentouse, LOW);
digitalWrite(pinAction, LOW);
ouverturePorte = true;
}
void loop() {
val = digitalRead(pinAction);
if (val ==1)
if (ouverturePorte)
{
digitalWrite(pinSon, HIGH);
delay(3000);
digitalWrite(pinSon, HIGH);
digitalWrite(pinMoteur, HIGH);
delay(4000);
digitalWrite(pinMoteur, LOW);
digitalWrite(pinVentouse, HIGH);
delay(3000);
digitalWrite(pinSon, LOW);
digitalWrite(pinMoteur, LOW);
digitalWrite(pinVentouse, LOW);
{
ouverturePorte = false;
}
}
}