Note

Bonjour, bienvenue dans la communauté des passionnés de SunFounder Raspberry Pi, Arduino et ESP32 sur Facebook ! Plongez au cœur de Raspberry Pi, Arduino et ESP32 avec d’autres passionnés.

Pourquoi nous rejoindre ?

  • Support d’experts : Résolvez les problèmes après-vente et les défis techniques grâce à l’aide de notre communauté et de notre équipe.

  • Apprendre & Partager : Échangez des conseils et des tutoriels pour améliorer vos compétences.

  • Aperçus exclusifs : Accédez en avant-première aux annonces de nouveaux produits et à des aperçus privilégiés.

  • Réductions spéciales : Profitez de réductions exclusives sur nos produits les plus récents.

  • Promotions festives et concours : Participez à des concours et des promotions durant les fêtes.

👉 Prêt à explorer et à créer avec nous ? Cliquez sur [ici] et rejoignez-nous dès aujourd’hui !

Leçon 6 : Explorer le module d’évitement d’obstacles

Nous plongeons dans le monde du module d’évitement d’obstacles infrarouge. Placés sur les côtés de notre Mars Rover, ces capteurs agissent comme les « yeux » du rover, l’aidant à esquiver les obstacles latéraux.

Note

Si vous suivez ce cours après avoir entièrement assemblé le GalaxyRVR, déplacez l’interrupteur vers la droite avant de téléverser le code.

../_images/camera_upload.png

Objectifs d’apprentissage

  • Comprendre le principe de fonctionnement du module d’évitement d’obstacles infrarouge.

  • Apprendre à utiliser Arduino pour contrôler le module.

  • Concevoir un système automatique d’évitement d’obstacles.

Matériel nécessaire

  • Modules d’évitement d’obstacles

  • Modèle Mars Rover (avec système rocker-bogie, cartes, moteurs)

  • Câble USB, Arduino IDE, Ordinateur

Étapes

Étape 1 : Installer le module d’évitement d’obstacles

Étape 2 : Démystifier le module

../_images/ir_avoid.png

Définitions des broches : * GND : Masse * + : Alimentation, 3.3~5V DC * Out : Reste haut par défaut, passe à bas lorsqu’un obstacle est détecté * EN : Broche d’activation, connectée à GND par défaut (module toujours actif)

Le module utilise une paire de composants IR - un émetteur et un récepteur. L’émetteur envoie une lumière infrarouge ; lorsqu’elle rencontre un obstacle, elle est réfléchie vers le récepteur. Le module émet alors un signal bas.

../_images/ir_receive.png

Deux potentiomètres permettent de régler la puissance et la fréquence d’émission pour ajuster la distance de détection.

../_images/ir_avoid_pot.png

Étape 3 : Lire les 2 modules

Notre rover est équipé de deux capteurs sur les broches 7 (droit) et 8 (gauche).

#define IR_RIGHT 7
#define IR_LEFT 8
void setup() {
    pinMode(IR_RIGHT, INPUT);
    pinMode(IR_LEFT, INPUT);
    Serial.begin(9600);
}
void loop() {
    int rightValue = digitalRead(IR_RIGHT);
    int leftValue = digitalRead(IR_LEFT);
    Serial.print("Right IR: "); Serial.println(rightValue);
    Serial.print("Left IR: "); Serial.println(leftValue);
    delay(200);
}

Ouvrez le moniteur série à 9600 bauds pour voir les valeurs. 0 = obstacle détecté, 1 = chemin libre.

Étape 4 : Réglage de la distance de détection

Calibrez les modules en plaçant un obstacle à 20 cm et en tournant le potentiomètre jusqu’à ce que l’indicateur s’allume.

Étape 5 : Concevoir un système automatique d’évitement

Logique : Si le capteur droit détecte → tourner arrière droit. Si le gauche détecte → tourner arrière gauche. Les deux → reculer. Aucun → avancer.

../_images/ir_flowchart.png

Le code utilise des instructions if...else if...else pour implémenter cette logique.

Étape 6 : Réflexion et résumé

Notre rover évite bien les obstacles latéraux mais peut avoir des difficultés avec les petits obstacles frontaux. Dans la prochaine leçon, nous ajouterons un capteur à ultrasons pour résoudre ce problème !