def get_distance(self):
# clear trigger
gpio.output(self.trigger, False)
time.sleep(0.1)
print('checking.....')
# send pulse to trigger
gpio.output(self.trigger, True)
time.sleep(0.00001)
gpio.output(self.trigger, False)
# check echo for return signal
while gpio.input(self.echo) == 0:
self.pulse_start = time.time()
while gpio.input(self.echo) == 1:
self.pulse_end = time.time()
pulse_duration = self.pulse_end - self.pulse_start
distance = self.speed_of_sound / 2. * pulse_duration
distance = round(distance, 2)
distance /= 2.54 # inches
# filter out things far away
if distance > self.max_distance:
distance = self.max_distance
# filter out junk
if distance < self.min_distance:
disance = self.min_distance
return distance
评论列表
文章目录