Créez un Détecteur de Passage avec Arduino: Laser KY-008, Buzzer KY-012 et Afficheur TM1637

Sommaire

Plongée dans le Monde des Détecteurs Arduino

Bienvenue dans ce guide pratique où vous apprendrez à construire un détecteur de passage Arduino innovant.

 La vidéo ci-dessous est une illustration du système de détection laser que vous allez pouvoir réaliser dans ce tutoriel

Utilisant la puissance et la flexibilité de la Carte Arduino Uno REV3, ce projet intègre un émetteur laser KY-008 et un buzzer actif KY-012 pour une notification sonore à chaque détection.

De plus, grâce à un afficheur TM1637, vous pourrez non seulement détecter mais aussi compter précisément le nombre de passages. Ce tutoriel est parfait pour les amateurs de projets DIY cherchant à explorer les capacités d’Arduino dans des applications pratiques et interactives.

Les Fondations de votre Projet de Détecteur Laser

Les systèmes de détection laser sont devenus des outils indispensables dans une multitude d’applications, allant des magasins, qui s’en servent pour signaler l’entrée de clients, aux parkings et péages d’autoroute, où ils détectent la présence de véhicules. Ces technologies, auparavant réservées aux professionnels en raison de leur coût et complexité, sont désormais accessibles aux passionnés de projets DIY grâce à des composants abordables et faciles à utiliser avec Arduino.

Pour réaliser notre détecteur de passage Arduino, nous utiliserons les composants suivants :

  • Carte Arduino Uno REV3 : Le cœur de notre projet.
  • Émetteur Laser KY-008 : La source de notre système de détection.
  • Buzzer Actif KY-012 : Fournit une alerte sonore à chaque détection.
  • Afficheur 4 chiffres TM1637 : Affiche le nombre de passages détectés.
  • Câbles de connexion : Pour relier les composants.

Le Transmetteur Laser KY-008

Le transmetteur est constitué de 2 modules :

  • Un module émetteur laser
  • Un module récepteur avec capteur de lumière photosensible

Ces modules travaillent de concert pour créer un système de détection efficace et précis, donc idéal pour notre projet de détecteur de passage Arduino.

Module émetteur Laser KY-008 montrant les broches VCC, GND et SIGNAL.
Module émetteur Laser KY-008
Module récepteur photosensible KY-008 indiquant les broches VCC, GND et SORTIE.
Module récepteur photosensible KY-008

Le module Buzzer

Le signal d’alerte sonore est généré par un module Buzzer actif KY-012. Le buzzer actif produit un son dès qu’il est alimenté, contrairement à un buzzer passif qui nécessite un signal sonore variable. Cela le rend idéal pour des applications simples comme une alerte sonore. Le module doit être alimenté en 5V et le son à émettre est activé par un signal sur la broche “SIGNAL“.

En premier lieu nous allons programmer l’Arduino pour que le buzzer émette un son continu en mode “Classique“. En plus nous expérimenterons avec un programme Arduino pour générer une “Mélodie” spécifique, rendant notre projet encore plus interactif.

Module Buzzer actif 5V KY-012 montrant les broches SIGNAL, VCC+ et GND.
Module Buzzer actif 5V KY-012

Afficheur TM1637

Le TM1637 est un afficheur à 7 segments de 4 chiffres (4 digits). Il permet d’afficher un nombre compris entre 0 et 9999 ou encore l’heure moyennant le programme adéquat. Cette flexibilité en fait un choix idéal pour notre détecteur de passage Arduino, permettant une lecture facile et rapide du nombre de détections.

Afficheur 7 segments - 4 digits TM1637 montrant les broches pour la connexion.
Afficheur 7 segments - 4 digits TM1637

La Carte Arduino UNO

La carte Arduino Uno REV3 représente le cœur de notre système et permet d’identifier la détection d’un passage ou non et d’activer l’alerte sonore. Cet outil polyvalent est au centre de nombreux projets DIY, offrant une plateforme accessible pour le développement d’applications interactives.

Vue de la Carte Arduino UNO REV3 montrant ses composants principaux et broches de connexion.
Carte Arduino UNO REV3

Le Montage Arduino

Ci-dessous, vous trouverez le schéma de montage de notre système de détection laser utilisant Arduino. Ce schéma illustre comment chaque composant est connecté à la carte Arduino Uno REV3 pour créer un détecteur de passage efficace.

Schéma illustrant le montage du système de détection laser avec Arduino, incluant l'émetteur laser KY-008, le récepteur KY-008, le module buzzer actif KY-012 et l'afficheur TM1634.
Montage du système de détection Laser Arduino
Carte Arduino Uno REV3Émetteur Laser KY-008Récepteur KY-008Module Buzzer Acif KY-012Afficheur TM1634
D2CK
D3DIO
D4Signal
D5Sortie
D10Signal
VCCVCCVCCVCCVCC
GNDGNDGNDGNDGND

Les Programmes Arduino

En termes de programmation, nous allons réaliser deux scripts distincts pour notre projet. Le premier script déclenchera un son classique avec le buzzer lors de la détection d’un passage. Le second, plus créatif, fera en sorte que le buzzer émette une mélodie que nous avons spécialement composée pour l’occasion. Ces programmes permettront non seulement de signaler la détection de passages mais aussi d’ajouter une touche personnelle et ludique au projet.

  • Programme Arduino “Classique” : Ce script activera le buzzer pour émettre un son unique à chaque détection, servant d’alerte sonore simple.
  • Programme Arduino “Mélodie” : Dans ce script plus avancé, le buzzer jouera une mélodie composée spécialement, ainsi  offrant une réponse plus élaborée à la détection.

Programme Arduino "Classique"

Dans ce code, nous allons  faire sonner le buzzer de manière classique en cas de détection de passage. Nous utiliserons une sonnerie sommaire de 2 tons, similaire à celle d’une alarme standard. Ce programme est conçu pour offrir une réponse audible immédiate, permettant une indication claire de la détection de passage.

				
					/*Programme: Détecteur de Passage avec Arduino: Laser KY-008, Buzzer KY-012 et TM1637
 * Auteur: Christian Joseph
 * Date: 21/03/2019
 * Help: contact@atelierdelarobotique.fr
 * Site: https://atelierdelarobotique.fr
 */

#include <TM1637Display.h>

#define CLK 3
#define DIO 4
#define laser 5
#define recepteur 6
#define buzzer 10

TM1637Display display(CLK, DIO);
int detect = 0;//Initialisation du nombre de passages


void setup() {
  Serial.begin(9600);
  pinMode(laser, OUTPUT);//Configuration du Laser
  pinMode(recepteur, INPUT);//Configuration du capteur photosensible
  pinMode(buzzer, OUTPUT);//Configuration du Buzzer
  digitalWrite(laser, HIGH);//Activation du Laser
  display.setBrightness(0x0f);//Réglage de la luminosité de l'afficheur TM1637
  display.showNumberDec(detect);//Affichage du nombre de passages
}

void loop() {
  bool passage = digitalRead(recepteur);

  if (passage == 0) {
    Serial.println("Aucune détection");
  } 
  else {
    detect++;
    display.clear();// Rafraîchissement de l'afficheur TM1637
    display.showNumberDec(detect);//Mise à jour du nombre de passages sur l'afficheur TM1637  
    Serial.println("Passage détecté");
    while(passage == 1){
      passage = digitalRead(recepteur);
      sonne();//Activation du buzzer
    }
  }
}

void sonne(){
  for (int i = 0; i <80; i++) 
    {
      digitalWrite (buzzer, HIGH) ; //ne sonne pas
      delay (1) ;
      digitalWrite (buzzer, LOW) ; //Sonne
      delay (1) ;
    }
    for (int i = 0; i <100; i++) 
    {
      digitalWrite (buzzer, HIGH) ;//ne sonne pas
      delay (2) ;
      digitalWrite (buzzer, LOW) ;//Sonne
      delay (2) ;
    } 
    delay(1000);
}

				
			

Programme Arduino "Mélodie"

Nous allons maintenant faire jouer à notre buzzer une mélodie de notre composition en cas de détection. Pour cela, nous aurons besoin de télécharger et d’utiliser la bibliothèque “Pitches.h”, qui facilite la définition des fréquences des notes musicales. Cette bibliothèque doit être placée dans le même dossier que votre programme Arduino. Vous pouvez vous procurer cette bibliothèque en cliquant sur le lien: Bibliothèque pitches.h.

Cette bibliothèque contient un ensemble de définitions pour les notes musicales que nous utiliserons pour créer notre mélodie personnalisée. Dans notre code Arduino, nous avons sélectionné les notes C4, G3, A3, et B3 pour composer notre mélodie. D’ailleurs vous pouvez créer une mélodie avec autant de notes que vous désirez, en ajustant la durée de chaque note pour varier le rythme.

Capture d'écran montrant la liste des définitions de notes musicales dans la bibliothèque Pitches.h pour Arduino.
Liste des notes musicales de "pitches.h"

Vous avez la liberté de personnaliser la durée de chaque note en modifiant les valeurs dans votre code. Cette flexibilité vous permet de jouer avec le rythme de la mélodie, offrant ainsi une expérience auditive unique à chaque utilisation du détecteur de passage.

Si vous décidez de composer une mélodie plus longue ou plus courte que les 8 notes initialement proposées, n’oubliez pas d’ajuster le code en conséquence. Par exemple, si votre mélodie contient plus ou moins de 8 notes, modifiez la séquence de programmation pour refléter le nombre exact de notes dans votre mélodie, comme indiqué à la ligne 59 de votre code Arduino.

				
					/*Programme: Détecteur de Passage avec Arduino: Laser KY-008, Buzzer KY-012 et TM1637
 * Auteur: Christian Joseph
 * Date: 21/03/2019
 * Help: contact@atelierdelarobotique.fr
 * Site: https://atelierdelarobotique.fr
 */
#include "pitches.h" 
#include <TM1637Display.h>

#define CLK 3
#define DIO 4
#define laser 5
#define recepteur 6
#define buzzer 10

TM1637Display display(CLK, DIO);
int detect = 0;

// Mélodie du  buzzer:
int melody[] = { //création d'une mélodie de 8 notes
  NOTE_C4, NOTE_G3, NOTE_G3, NOTE_A3, NOTE_G3, 0, NOTE_B3, NOTE_C4 //Voir Fichier "Pitches.h" pour selection des notes
};

// Durée des notes: 4 = note 4 temps, 8 = note 8 temps, etc.:
int noteDurations[] = {
  4, 8, 8, 4, 4, 4, 4, 4
};

void setup() {
  Serial.begin(9600);
pinMode(laser, OUTPUT);//Configuration du Laser
  pinMode(recepteur, INPUT);//Configuration du capteur photosensible
  pinMode(buzzer, OUTPUT);//Configuration du Buzzer
  digitalWrite(laser, HIGH);//Activation du Laser
  display.setBrightness(0x0f);//Réglage de la luminosité de l'afficheur TM1637
  display.showNumberDec(detect);//Affichage du nombre de passages
}

void loop() {
  bool passage = digitalRead(recepteur);

  if (passage == 0) {
    Serial.println("Aucune détection");
  } 
  else {
    detect++;
    display.clear();//Raffraîchissement de l'afficheur TM1637
    display.showNumberDec(detect);//Affichage du nombre de passages sur le TM1637
    Serial.println("Passage détecté");
    while(passage == 1){
      passage = digitalRead(recepteur);
      sonne();//Sonnerie du Buzzer

    }
  }
}

void sonne(){ //Buzzer
 for (int thisNote = 0; thisNote < 8; thisNote++) { //Lecture de nos 8 notes
    int noteDuration = 1000 / noteDurations[thisNote];
    tone(buzzer, melody[thisNote], noteDuration);//Le buzzer joue la note
    int pauseBetweenNotes = noteDuration * 1.30;
    delay(pauseBetweenNotes);
    noTone(buzzer); //arrêt du buzzer
  }
  delay(200);
}
				
			

Vers de Nouvelles Créations

Finalement à travers ce projet, nous avons exploré la puissance et la polyvalence de l’Arduino pour créer un système de détection de passage innovant et interactif. En utilisant des composants tels que le transmetteur laser KY-008, le buzzer actif KY-012, et l’afficheur TM1637, nous avons démontré comment les concepts élémentaires de l’électronique et de la programmation peuvent être combinés pour réaliser des applications pratiques et ludiques.

Que ce soit pour compter le nombre de personnes passant par une porte ou pour développer des projets plus complexes, l’Arduino offre un terrain de jeu idéal pour les inventeurs, les éducateurs et les hobbyistes. Nous espérons que ce tutoriel vous inspirera à pousser plus loin vos explorations en robotique et en programmation, en utilisant l’Arduino comme plateforme de base pour vos créations innovantes.

 Pour conclure n’oubliez pas, la seule limite à ce que vous pouvez construire est votre imagination. Bonne création !

Bonjour ! 🌟 Rejoignez notre newsletter pour ne rien manquer.

Recevez nos offres spéciales et les derniers articles directement dans votre boîte de réception

Nous ne faisons pas de spam, promis ! Consultez notre politique de confidentialité pour en savoir plus.

Retour en haut

Projet sur mesure