Note
Bonjour et bienvenue dans la Communauté Facebook des passionnés de Raspberry Pi, Arduino et ESP32 de SunFounder ! Plongez plus profondément dans l’univers des Raspberry Pi, Arduino et ESP32 avec d’autres passionnés.
Pourquoi rejoindre ?
Support d’experts : Résolvez les problèmes après-vente et les défis techniques avec l’aide de notre communauté et de notre équipe.
Apprendre et partager : Échangez des astuces et des tutoriels pour améliorer vos compétences.
Aperçus exclusifs : Accédez en avant-première aux annonces de nouveaux produits et aux aperçus.
Réductions spéciales : Profitez de réductions exclusives sur nos produits les plus récents.
Promotions festives et cadeaux : Participez à des cadeaux et des promotions de vacances.
👉 Prêt à explorer et à créer avec nous ? Cliquez [Ici] et rejoignez-nous aujourd’hui !
2.2.5 Capteur d’Évitement d’Obstacles IR
Introduction
Dans ce projet, nous allons découvrir le module d’évitement d’obstacles IR, qui est un module capteur pouvant être utilisé pour détecter des obstacles à courte distance, avec une petite interférence, facile à assembler, facile à utiliser, etc. Il peut être largement utilisé dans l’évitement d’obstacles pour robots, les chariots d’évitement d’obstacles, le comptage sur les chaînes de montage, etc.
Composants Nécessaires
Pour ce projet, nous avons besoin des composants suivants :
Il est très pratique d’acheter un kit complet, voici le lien :
Nom |
ÉLÉMENTS DANS CE KIT |
LIEN |
|---|---|---|
Kit Raphael |
337 |
Vous pouvez également les acheter séparément via les liens ci-dessous.
INTRODUCTION DES COMPOSANTS |
LIEN D’ACHAT |
|---|---|
Schéma Électrique
Procédures Expérimentales
Étape 1 : Construire le circuit
Étape 2 : Changer de répertoire.
cd ~/raphael-kit/python
Étape 3 : Exécuter.
sudo python3 2.2.5_IrObstacle.py
Après l’exécution du code, lorsque vous mettez votre main devant la sonde du module, l’indicateur de sortie sur le module s’allume et « Detected Barrier! » sera imprimé à l’écran de manière répétée jusqu’à ce que vous retiriez votre main.
Code
Note
Vous pouvez Modifier/Réinitialiser/Copier/Exécuter/Arrêter le code ci-dessous. Mais avant cela, vous devez accéder au chemin du code source comme raphael-kit/python. Après avoir modifié le code, vous pouvez l’exécuter directement pour voir l’effet.
#!/usr/bin/env python3
import RPi.GPIO as GPIO
import time
ObstaclePin = 17
def setup():
GPIO.setmode(GPIO.BCM) # Numbers GPIOs by physical location
GPIO.setup(ObstaclePin, GPIO.IN, pull_up_down=GPIO.PUD_UP)
def loop():
while True:
if (0 == GPIO.input(ObstaclePin)):
print ("Detected Barrier!")
time.sleep(1)
def destroy():
GPIO.cleanup() # Release resource
if __name__ == '__main__': # Program start from here
setup()
try:
loop()
except KeyboardInterrupt: # When 'Ctrl+C' is pressed, the child program destroy() will be executed.
destroy()
Explication du Code
def setup():
GPIO.setmode(GPIO.BCM) # Numbers GPIOs by physical location
GPIO.setup(ObstaclePin, GPIO.IN, pull_up_down=GPIO.PUD_UP)
Configurer le mode GPIO en numérotation BCM. Configurer ObstaclePin en mode entrée et l’initialiser à un niveau haut (3,3V).
def loop():
while True:
if (0 == GPIO.input(ObstaclePin)):
print ("Detected Barrier!")
Lorsque ObstaclePin est à un niveau bas, afficher « Detected Barrier! ». Cela signifie qu’un obstacle est détecté.