我正试图让我的 us-sensor 与 arduino 一起工作。我已经在普通的 arduino-IDE 中做到了这一点,但现在我需要它在 python 中用于项目。我得到的测量距离始终为 0。如果有人知道如何修复它会很棒:)。
到目前为止,这是我的代码:
import time
import pyfirmata
port = "COM3"
board = pyfirmata.Arduino(port)
it = pyfirmata.util.Iterator(board)
it.start()
trig_pin = 9
echo_pin = 10
duration = ""
Pdistance = ""
distance = ""
while True:
board.digital[trig_pin].write(0)
time.sleep(0.002)
board.digital[trig_pin].write(1)
time.sleep(0.01)
board.digital[trig_pin].write(0)
time.sleep(0.01)
board.digital[echo_pin].write(1)
end = 0
start = 0
while board.digital[echo_pin].write(0):
start = time.time()
while board.digital[echo_pin].write(1):
end = time.time()
duration = end - start
distance = duration * 0.034 / 2
print("Measured Distance: ")
print(distance)