30/11/2015, 00:28
ciao a tutti, sono alle prese con l'interfacciamento del sensore ultrasuoni HC-SR04 ed ho notato che la misura della distanza rilevata varia da misura a misura a parità di condizioni a contorno.
Ho usato un semplicissimo script python
secondo voi il problema sta nel sensore o nel fatto che il python non è attendibile per quanto riguarda il timing?
grazie
Ho usato un semplicissimo script python
Codice:
import RPi.GPIO as GPIO
import time
GPIO.setwarnings(False)
GPIO.setmode(GPIO.BCM)
TRIG = 24
ECHO = 4
print "Calibrazione in corso...."
GPIO.cleanup()
GPIO.setup(TRIG, GPIO.OUT)
GPIO.setup(ECHO, GPIO.IN)
#Impostazione di TRIG a low e attesa di 2sec prima di iniziare la misura
GPIO.output(TRIG, False)
time.sleep(2)
#Invio dell'impulso da 10microsec su TRIG
GPIO.output(TRIG, True)
time.sleep(0.00001)
GPIO.output(TRIG, False)
# Check dello stato dell'ECHO
while GPIO.input(ECHO)==0:
pulse_start = time.time()
while GPIO.input(ECHO)==1:
pulse_end = time.time()
# Calcolo della distanza
pulse_duration = pulse_end - pulse_start
# distanza = (sound speed (343m/sec) * duranta impulso) / 2
distance = pulse_duration * 17150
distance = round(distance, 2)
# Print del risultato
if distance > 2 and distance < 400:
print "Distanza:",distance,"cm"
else:
print "Out Of Range"
secondo voi il problema sta nel sensore o nel fatto che il python non è attendibile per quanto riguarda il timing?
grazie