树莓派连 HC-SR04 这个模块进行超声波测距,连线,py 代码应该都没问题,可是距离一直都在 5.6m 左右不变的,这啥情况?大哥们帮臭弟弟看看吧。我感觉是这个模块有问题? py 代码
import RPi.GPIO as GPIO
import time
Trig_Pin = 23
Echo_Pin = 24
def init():
GPIO.setmode(GPIO.BCM)
GPIO.setup(Trig_Pin, GPIO.OUT, initial=False)
GPIO.setup(Echo_Pin, GPIO.IN)
time.sleep(2)
def distance():
GPIO.output(Trig_Pin, True)
time.sleep(0.00001)
GPIO.output(Trig_Pin, False)
while not GPIO.input(Echo_Pin):
pass
t1 = time.time()
while GPIO.input(Echo_Pin):
pass
t2 = time.time()
return (t2 - t1) * 340 * 100 / 2
if __name__ == '__main__':
init()
try:
while True:
print('Distance : {:.2f} cm'.format(distance()))
time.sleep(1)
except KeyboardInterrupt:
GPIO.cleanup()
输出情况,不管怎么给前面放障碍物距离都是 5.6m 左右
Distance : 560.90 cm
Distance : 560.91 cm
Distance : 560.90 cm
Distance : 560.92 cm
Distance : 560.90 cm
Distance : 560.93 cm
Distance : 560.90 cm