1
This repository has been archived on 2021-11-25. You can view files and clone it, but cannot push or open issues or pull requests.
Project_Steam_Tracker/not_used/afstandsensor.py
2021-01-11 14:52:35 +01:00

42 lines
1.3 KiB
Python

import RPi.GPIO as GPIO
import time
GPIO.setmode( GPIO.BCM )
GPIO.setwarnings( 0 )
print( "sr04 print" )
sr04_trig = 10
sr04_echo = 11
GPIO.setup( sr04_trig, GPIO.OUT )
GPIO.setup( sr04_echo, GPIO.IN, pull_up_down=GPIO.PUD_DOWN )
def sr04( trig_pin, echo_pin ):
"""
Return the distance in cm as measured by an SR04
that is connected to the trig_pin and the echo_pin.
These pins must have been configured as output and input.s
"""
GPIO.output(trig_pin, False) # altijd met false starten
time.sleep(0.5)
GPIO.output(trig_pin, True)
time.sleep(0.00001) # pulse trigger
GPIO.output(trig_pin, False)
while GPIO.input(echo_pin) == False:
start_time = time.time() # tijd opslaan wanneer de echo false is
while GPIO.input(echo_pin) == True:
end_time = time.time() # tijd opslaan wanneer de echo true is
total_time = end_time - start_time # totaal aantal afstand in seconden
return (round(total_time*34300/2, 2), total_time) #tuple terug geven met afstand in cm en totaal aantal seconden
# sensor is niet helemaal naukeurig(~1-2cm variatie), kan ook aan de rpi timing liggen
try:
while True:
print( sr04( sr04_trig, sr04_echo ))
time.sleep( 0.5 )
except KeyboardInterrupt:
GPIO.cleanup()