#!/usr/bin/python
#-*- coding: utf-8 -*-
# import des librairies
import time
import RPi.GPIO as GPIO
# GPIO numérotation BCM
GPIO.setmode(GPIO.BCM)
Trigger = 27 # l'envoi
Echo = 17 # la réception
print "Mesure par ultrasons"
# gpio Trigger en mode output
GPIO.setup(Trigger,GPIO.OUT)
# gpio Echo en mode intput
GPIO.setup(Echo,GPIO.IN)
# on met le trrigger a 0
GPIO.output(Trigger, False)
# petite pose
time.sleep(0.5)
# envoi 10us d'infrason
GPIO.output(Trigger, True)
time.sleep(0.00001)
GPIO.output(Trigger, False)
start = time.time()
# heure de l'envoi
while GPIO.input(Echo)==0:
start = time.time()
# heure de retour
while GPIO.input(Echo)==1:
stop = time.time()
# Calcule du temps de l'aller retour
elapsed = stop-start
# distance aller retour = temps du parcours multiplier par la vitesse du son en cm/s
distance = elapsed * 34000
# on divise par 2 pour la distance aller simple
distance = distance / 2
# On affiche la distance
print "Distance : %.1f cm" % distance
# petite pose
time.sleep(0.5)
# clean des GPIO
GPIO.cleanup()
exit