Skip to main content

Assemblage et programmation de la poubelle à couvercle automatique

1. Utilisation du capteur à ultrasons HC-SR04 

Objectif :

Gestion et programmation des capteurs/actionneurs de la poubelle à couvercle automatique dans son ensemble.  

Assemblage :

Le modèle 3D de la poubelle à imprimer en 3D ce trouve en pièce jointe du wiki

Positionner les capteurs de la même façon que sur les photos ci-dessous.

1746451665438.jpg 1746451665443.jpg1746451665429.jpg

Câblage :

Vous référez à la page précédente . Voici un résumé :

  • Capteur à ultrasons :
    • VCC → 5V de l’Arduino
    • GND → GND de l’Arduino
    • TRIG → D9 de l’Arduino
    • ECHO → D10 de l’Arduino
  • Servomoteur :
    • VCC (fil rouge) → 5V de l’Arduino
    • GND (fil noir) → GND de l’Arduino
    • Signal (fil jaune) → D11D12 de l’Arduino

Programmation final :

Programmation par bloc avec Mblock :

DemanderPremièrement auxne élèvespas oublier de rajouter l'extension "Ultrasons HC-SR04"

image.png

Ensuite voici des aides afin de réaliser le code final tout en les aidants si besoin. Voici le code final :

Code_final_Mblock.PNG

    Programmation

      avec
    1. Une arduinofois IDE :

      En fonction du niveau, demander aux élèves d'écrire ou de copier le code suivant tout en expliquant ce dernier.

      #include <Servo.h> // Inclure la bibliothèque Servoquelque // Déclaration des pins
      const int trigPin = 9;
      const int echoPin = 10;
      Servo myServo;
      
      void setup() {
        Serial.begin(9600); // Initialiser la communication série
        pinMode(trigPin, OUTPUT); // Définir le trigPin comme sortie
        pinMode(echoPin, INPUT);  // Définir l'echoPin comme entrée
        myServo.attach(6); // Attacher le servomoteur à la pin D6
        myServo.write(0); // Position initiale à 0 degrés
      }
      
      void loop() {
        // Envoyer un signal
        digitalWrite(trigPin, LOW);
        delayMicroseconds(2);
        digitalWrite(trigPin, HIGH);
        delayMicroseconds(10);
        digitalWrite(trigPin, LOW);
      
        // Lire la durée du signal de retour
        long duration = pulseIn(echoPin, HIGH);
        int distance = duration * 0.034 / 2; // Calculer la distance
      
        // Afficher la distance dans le moniteur série
        Serial.print("Distance: ");
        Serial.print(distance);
        Serial.println(" cm");
      
        // Si la distancechose est inférieuredétecté àpar l'ultrason a moins de 5 cm, déplacerouvrir le couvercle pendant 3 secondes. Sinon rester fermer.
    2. Un servomoteur ifpeux (distancealler <de 5)0 {a myServo.write(140);180, //donc Positionnersi 0 est vers le servomoteur àhaut 180 degrésest delay(1000);vers //le Attendrebas 1se secondequi myServo.write(0);permet //de Retourner à 0 degrés } delay(500); // Attendre un peu avantreculer la prochainelanguette.
    3. mesure
    4. }

HXXimage.png


Conclusion et discussion 

Synthèse des compétences acquises :

Compétences techniques et mécaniques :

  • Conception mécanique : savoir imaginer et concevoir le mécanisme d'ouverture automatique du couvercle 

  • Assemblage de composants : apprendre à manipuler et assembler les différentes parties (couvercle, axe, moteur, composants électroniques, etc.)

  • Choix des matériaux : identifier les matériaux adaptés au projet

Compétences en électronique :

  • Découverte et câblage de capteurs pour détecter une présence.

  • Découverte et câblage de servomoteur pour l'ouverture/fermeture du couvercle.

  • Savoir réaliser un schéma de câblage et connecter les composants sur une carte Arduino.

Compétences en programmation :

  • Programmation d'un microcontrôleur Arduino : écrire un code qui gère les capteurs, les délais, et l'action du moteur.

  • Logique conditionnelle : comprendre comment programmer des conditions simples (si détection → ouvrir couvercle).

  • Optimisation du fonctionnement : ajuster les temps de réponse, la durée d’ouverture, etc.

Compétences transversales :

  • Gestion de projet : planifier les étapes de réalisation, répartir les tâches, respecter les délais.
  • Résolution de problèmes : savoir réagir face aux imprévus techniques ou fonctionnels.

  • Travail en équipe.

Perspectives :

  • Comment pourrait-on améliorer ce projet ? (ex. : ajouter une LED qui s'allume lorsque l'objet est détecté, amélioration de pièces mécaniques, etc...)
  • Quelles autres applications pourraient utiliser un capteur à ultrasons et un servomoteur ensemble ?
  • etc...

Projet similaire

https://www.hackster.io/FANUEL_CONRAD/automatic-soap-dispenser-75abd6