用超声波传感器重复测量距离

时间:2018-07-22 18:04:51

标签: python python-3.x raspberry-pi3

我已经在RP3上运行了这个Python脚本:

import RPi.GPIO as gpio
import time

gpio.setmode(gpio.BCM)
trig = 23
echo = 24
gpio.setup(trig, gpio.OUT)
gpio.setup(echo, gpio.IN)
gpio.output(trig, False)
print('settling ...')
time.sleep(2)
gpio.output(trig, True)
time.sleep(0.00001)
gpio.output(trig, False)

def set_off():
    while gpio.input(echo) == 0:
        pulse_start = time.time()
    while gpio.input(echo) == 1:
        pulse_end = time.time()
    pulse_duration = pulse_end - pulse_start
    distance = pulse_duration * 17150
    distance = round(distance, 2)
    print('Distance:', distance, 'cm')
    gpio.cleanup()

while True:
    set_off()

我收到此错误:RuntimeError: Please set pin numbering mode using GPIO.setmode(GPIO.BOARD) or GPIO.setmode(GPIO.BCM)我将库导入为小写gpio,因此设置模式应该可以。

我要在这里完成的工作是让传感器测量距离并无限打印。我在做什么错了?

0 个答案:

没有答案