Utilisation du capteur HC-SR04

Ce capteur permet de mesurer la distance en centimètres séparant le capteur d’un obstacle allant de 2cm à 4m.

Son montage va nécessiter deux pattes logiques (Trigger et Echo), en plus de Vcc et Gnd.

L’initialisation se fait par la méthode set_pin_mode_sonar(Trigger_pin,Echo_pin, callback).

La lecture hors callback se fait par la méthode sonar_read(Trigger_pin).

Exemple utilisant un callback

from pymata4 import pymata4
import sys
import time

carte = pymata4.Pymata4()

print("--------------- Début --------------")
# Constantes
Trigger_pin = 8 # port du Trigger D8
Echo_pin = 7    # port du Echo D7


#------------------ fonction callback
def nouvelle_distance(data):
    dist=data[2]
    print(f"Nouvelle distance : {dist} cm")

#----------------  programme principal
try :
    carte.set_pin_mode_sonar(Trigger_pin,Echo_pin, callback=nouvelle_distance)
    time.sleep(1)
    while True:
        time.sleep(0.1)
except KeyboardInterrupt :
    print("--------------- Fin --------------")
    carte.shutdown()
    sys.exit(0)

Exemple utilisant des lectures à intervalles réguliers

from pymata4 import pymata4
import sys
import time

carte = pymata4.Pymata4()

print("--------------- Début --------------")
# Constantes
Delai=1
Trigger_pin = 8 # port du Trigger D8
Echo_pin = 7    # port du Echo D7


#----------------  programme principal
try :
    carte.set_pin_mode_sonar(Trigger_pin,Echo_pin)
    time.sleep(1)
    while True:
        time.sleep(Delai)
        (dist,temp)=carte.sonar_read(Trigger_pin)
        print(f"Distance : {dist} cm")
except KeyboardInterrupt :
    print("--------------- Fin --------------")
    carte.shutdown()
    sys.exit(0)

Retour à la rubrique