Créer une alarme avec le module KY-008, une photorésistance et un buzzer.

Créer une alarme avec le module KY-008, une photorésistance, un buzzer et la carte Arduino.
Créer une alarme avec le module KY-008, une photorésistance, un buzzer et la carte Arduino.

Dans ce tutoriel nous allons fabriquer une alarme qui se déclenchera au moment précis où le faisceau lumineux du pointeur ne touche plus la photorésistance. D’abord, on créera un signal d’alarme qui nous avertira via moniteur série, et après, on ajoutera un buzzer pour nous avertir de façon sonore.

Alarme silencieuse avec le module KY-008 et une LDR.

Pour fabriquer notre alarme on se servira des propriétés des photorésistances puisque leur résistance varie en fonction de la lumière reçue. Au fur et à mesure que la lumière augmente, la résistance diminue. Ainsi, on utilisera la lecture du capteur pour savoir si le faisceau lumineux produit par le pointeur laser incide sur la photorésistance ou, si par contre, il y a un obstacle qu’empêche cette connexion, déclenchant notre alarme.

Il est nécessaire:

  • Carte Arduino Uno ou équivalent.
  • Plaque d’essai.
  • Pointeur laser, module KY-008.
  • Capteur photorésistance, LDR.
  • Résistance de 10 KΩ
  • Cables.

Schéma:

On relie le pin d’alimentation (S) du module KY-008 au pin digital 8 de la carte, le GND au GND de la carte. Pour connecter la LDR on utilise la résistance de 10 KΩ et on lit sa valeur à travers du pin analogique A0 de la carte Arduino.

Connexion du module KY-008, LDR et la carte Arduino.

Code.

Avant tout, on indique le pin que nous allons utiliser pour comme source d’énergie du pointeur (laserPin ->pin 8), on indique aussi celui de la lecture de la résistance (capteur ->A0) et on configure une variable nommée lecture pour enregistrer les valeurs reçues.

int laserPin = 8;
int capteur = A0;
int lecture;

Dans la fonction setup(), on configure le pin 8 comme sortie. Le laser sera allumé, cela on l’indique avec le mandat digitalWrite(laserPin,High) et on initialise le moniteur série.

void setup(){
  pinMode(laserPin, OUTPUT);
  Serial.begin(9600);
  digitalWrite(laserPin, HIGH);
}

Dans la fonction loop() on lit la valeur du capteur, on l’enregistre dans la variable lecture et on la montre sur le moniteur série. On vérifie que sa valeur est inférieure à 100: si la condition est remplie, cela signifie que le faisceau lumineux ne touche pas le photorésisteur, donc notre alarme s’active.

void loop() {
  lecture = analogRead(capteur);
  Serial.println(lecture);
  if(lecture < 100){
    Serial.println("Alarme");
  }
}

On utilise 100 comme valeur limite parce que la lumière ambiante donne une lecture entre 40 et 60, tandis que si le laser touche le photorésisteur la lecture montre entre 590 et 620. Prenant le 100 comme valeur limite on assure largement que le pointeur ne touche pas la LDR.

Code complet:

int laserPin = 8;
int capteur = A0;
int lecture;

void setup() {
  pinMode(laserPin, OUTPUT);
  Serial.begin(9600);
  digitalWrite(laserPin, HIGH);
}

void loop() {
  lecture = analogRead(capteur);
  Serial.println(lecture);
  if(lecture < 100){
    Serial.println("Alarme");
  }
}

Alarme sonore avec le module KY-008 et une LDR.

Dans ce petit projet on ajoute un buzzer actif afin de produire du son quand le faisceau lumineux ne touche plus la photorésistance.

Il est nécessaire:

  • Carte Arduino Uno ou équivalent.
  • Plaque d’essai.
  • Module KY-008.
  • Buzzer actif, module KY- 012.
  • Capteur photorésistance, LDR.
  • Résistance de 10 KΩ.
  • Cables.

Schéma:

Connexions du module KY-008, LDR, Buzzer et la carte Arduino.

Code:

Au code du premier projet on ajoute la variable buzzerPin, elle nous indiquera les pins auxquels nous avons connecté l’avertisseur sonore.

Dans la fonction setup(), on configure le pin 9 du buzzer comme sortie, et avec le mandat analogWrite(), on indique que préalablement il ne doit pas sonner.

Dans la fonction loop(), on vérifie si le faisceau lumineux touche la LDR: S’ ils ne se touchent pas, on fera sonner l’alarme avec analogWrite(), pouvant choisir entre 0 et 255 pour un son de plus en plus intense. En revanche, s’ ils se touchent, la valeur sonore sera 0, stoppant l’alarme.

int buzzerPin = 9;
int laserPin = 8;
int capteur = A0;
int lecture;

void setup() {
  pinMode(buzzerPin, OUTPUT);
  pinMode(laserPin, OUTPUT);
  Serial.begin(9600);
  digitalWrite(laserPin, HIGH);
  analogWrite(buzzerPin,0);
}

void loop() {
  lecture = analogRead(capteur);
  Serial.println(lecture);
  if(lecture < 100){
    Serial.println("Alarme");
    analogWrite(buzzerPin,255);
  }else{
    analogWrite(buzzerPin,0);
  }
}
Articles similaires
Laisser un commentaire