Vous êtes sur la page 1sur 2

ISI Le………… /………/………………….

Nom :
Prénom :

EXAMEN D’IOT ET SYSTEME EMMBARQUE Licence 3 SEMI(1èsem)

Projet monitoring des capteurs pour l’automatisation d’un système lave anti-covid :
Un jeune entrepreneur à trouver l’idée de créer un dispositif qui aura pour tâche le nettoyage de main
automatique sans toucher à aucun instrument.

Le système doit fonctionner comme suite : en passant la main sur le premier capteur ultrason 1 elle pompe du
savon liquide, au deuxième capteur ultrason 2 celle-ci pompe l’eau pour rincer les mains et au dernier capteur
ultrason 3celle-ci souffle l’aire chaud pour sécher les mains.

COSIGNE : réaliser le circuit de câblage, le schéma du prototype individuellement avec le simulateur Fritzing et
codé avec le compilateur Arduino ?

//EXAMEN DE L’IOT ET SYSTEME EMMBARQUE ? }


int ledPin1 = 3; }
int ledPin2 = 4; void firstsensor(){ // Cette fonction est pour le
int ledPin3 = 5; premier capteur.
#define BUZZER_PIN 12 int duration1, distance1;
const int waitFor = 1000; digitalWrite (trigPin1, HIGH);
const int setupDelay = 100; delayMicroseconds (10);
int trigPin1 = 6;//CAPTEUR SECHE VOITURE digitalWrite (trigPin1, LOW);
int echoPin1 = 7; duration1 = pulseIn (echoPin1, HIGH);
int trigPin2 = 8;//CAPTEUR EAU PUR distance1 = (duration1/2) / 29.1;
int echoPin2 = 9; Serial.print("1st Sensor: ");
int trigPin3 = 10;//CAPTEUR EAU SAVONE Serial.print(distance1);
int echoPin3 = 11; Serial.print("cm ");
const int beepDelay = 100; if (distance1 < 30) { // Modifiez le nombre pour
void setup() { des distances longues ou courtes.
Serial.begin (9600); digitalWrite (ledPin1, LOW );
pinMode(trigPin1, OUTPUT); beep(beepDelay, 2);
pinMode(echoPin1, INPUT); delay(waitFor);
pinMode(trigPin2, OUTPUT); } else {
pinMode(echoPin2, INPUT); digitalWrite (ledPin1, HIGH);
pinMode(trigPin3, OUTPUT); }
pinMode(echoPin3, INPUT); }
pinMode(ledPin1, OUTPUT); void secondsensor(){ // Cette fonction est destinée
pinMode(ledPin2, OUTPUT); au deuxième capteur.
pinMode(ledPin3, OUTPUT); int duration2, distance2;
pinMode(BUZZER_PIN, OUTPUT); digitalWrite (trigPin2,HIGH);
} delayMicroseconds (10);
void beep(int delayFor, int beepCount){ digitalWrite (trigPin2, LOW);
for (int i = 0; i < beepCount; i++){ duration2 = pulseIn (echoPin2, HIGH);
digitalWrite(BUZZER_PIN, HIGH); distance2 = (duration2/2) / 29.1;
delay(delayFor); Serial.print("2nd Sensor: ");
digitalWrite(BUZZER_PIN, LOW); Serial.print(distance2);
delay(delayFor); Serial.print("cm ");
if (distance2 < 45) { // Modifiez le nombre pour
des distances longues ou courtes.
digitalWrite (ledPin2, LOW);
beep(beepDelay, 2);
delay(waitFor);
}
else {
digitalWrite (ledPin2, HIGH);
}
}
void thirdsensor(){ // Cette fonction est destinée
au troisième capteur.
int duration3, distance3;
digitalWrite (trigPin3, HIGH);
delayMicroseconds (10);
digitalWrite (trigPin3, LOW);
duration3 = pulseIn (echoPin3, HIGH);
distance3 = (duration3/2) / 29.1;
Serial.print("3rd Sensor: ");
Serial.print(distance3);
Serial.print("cm");
if (distance3 < 45) { // Modifiez le nombre pour
des distances longues ou courtes.
digitalWrite (ledPin3, LOW);
beep(beepDelay, 2);
delay(waitFor);
}
else {
digitalWrite (ledPin3, HIGH);
}
}
void loop() {
Serial.println("\n");
firstsensor();
secondsensor();
thirdsensor();
delay(100);
}

Prof : Mr Touré

Vous aimerez peut-être aussi