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.8 Module Capteur Ultrasonique

Introduction

Le capteur ultrasonique utilise des ultrasons pour détecter avec précision des objets et mesurer des distances. Il émet des ondes ultrasonores et les convertit en signaux électroniques.

Composants Nécessaires

Pour ce projet, nous avons besoin des composants suivants :

../_images/list_2.2.5.png

Il est très pratique d’acheter un kit complet, voici le lien :

Nom

ÉLÉMENTS DANS CE KIT

LIEN

Kit Raphael

337

Raphael Kit

Vous pouvez également les acheter séparément via les liens ci-dessous.

INTRODUCTION DES COMPOSANTS

LIEN D’ACHAT

Carte d’extension GPIO

ACHETER

Plaque d’expérimentation (Breadboard)

ACHETER

Fils de Liaison

ACHETER

Module Ultrasonique

ACHETER

Schéma Électrique

../_images/image329.png

Procédures Expérimentales

Étape 1 : Construire le circuit.

../_images/image220.png

Étape 2 : Aller dans le dossier du code.

cd ~/raphael-kit/python/

Étape 3 : Exécuter le fichier exécutable.

sudo python3 2.2.8_Ultrasonic.py

Une fois le code exécuté, le module capteur ultrasonique détecte la distance entre l’obstacle devant lui et le module lui-même, puis la valeur de la distance sera imprimée à l’écran.

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.

import RPi.GPIO as GPIO
import time

TRIG = 16
ECHO = 18

def setup():
    GPIO.setmode(GPIO.BOARD)
    GPIO.setup(TRIG, GPIO.OUT)
    GPIO.setup(ECHO, GPIO.IN)

def distance():
    GPIO.output(TRIG, 0)
    time.sleep(0.000002)

    GPIO.output(TRIG, 1)
    time.sleep(0.00001)
    GPIO.output(TRIG, 0)

    while GPIO.input(ECHO) == 0:
        a = 0
    time1 = time.time()
    while GPIO.input(ECHO) == 1:
        a = 1
    time2 = time.time()

    during = time2 - time1
    return during * 340 / 2 * 100

def loop():
    while True:
        dis = distance()
        print ('Distance: %.2f' % dis )
        time.sleep(0.3)

def destroy():
    GPIO.cleanup()

if __name__ == "__main__":
    setup()
    try:
        loop()
    except KeyboardInterrupt:
        destroy()

Explication du Code

def distance():

Cette fonction est utilisée pour réaliser la fonction du capteur ultrasonique en calculant la distance de détection de retour.

GPIO.output(TRIG, 1)
time.sleep(0.00001)
GPIO.output(TRIG, 0)

Cela envoie une impulsion ultrasonique de 10µs.

while GPIO.input(ECHO) == 0:
    a = 0
time1 = time.time()

Cette boucle vide est utilisée pour s’assurer que lorsqu’un signal de déclenchement est envoyé, il n’y a pas de signal d’écho interférent, puis obtenir l’heure actuelle.

while GPIO.input(ECHO) == 1:
    a = 1
time2 = time.time()

Cette boucle vide est utilisée pour s’assurer que l’étape suivante n’est pas effectuée tant que le signal d’écho n’est pas reçu, puis obtenir l’heure actuelle.

during = time2 - time1

Effectuer le calcul de l’intervalle.

return during * 340 / 2 * 100

La distance est calculée en fonction de l’intervalle de temps et de la vitesse de propagation du son. La vitesse du son dans l’air : 340 m/s.

Image du Phénomène

../_images/image221.jpeg