前提・実現したいこと
超音波センサー(HC-SR04)を使いraspberrypi で0.2秒ずつに距離を測りたいです。よろしくお願いします。
発生している問題・エラーメッセージ
File "pi_sensor.py", line 37 print reading(0) ^ SyntaxError: invalid syntax
該当のソースコード
python
1def reading(sensor): 2 import time 3 import RPi.GPIO as GPIO 4 5 GPIO.setwarnings(False) 6 GPIO.setmode(GPIO.BOARD) 7 TRIG = 11 8 ECHO = 13 9 10 11 if sensor == 0: 12 GPIO.setup(TRIG,GPIO.OUT) 13 GPIO.setup(ECHO,GPIO.IN) 14 GPIO.output(TRIG, GPIO.LOW) 15 time.sleep(0.3) 16 17 GPIO.output(TRIG, True) 18 time.sleep(0.00001) 19 GPIO.output(TRIG, False) 20 21 while GPIO.input(ECHO) == 0: 22 signaloff = time.time() 23 24 while GPIO.input(ECHO) == 1: 25 signalon = time.time() 26 27 timepassed = signalon - signaloff 28 distance = timepassed * 17000 29 return distance 30 GPIO.cleanup() 31 print(1) 32 else: 33 print ("Incorrect usonic() function varible.") 34 35for i in range(100): 36 print reading(0) 37 time.sleep(0.2) 38
試したこと
for文がなければ動くのですが入れると動きません
補足情報(FW/ツールのバージョンなど)
Python 3.6.5
anaconda環境
###その他分からないこと
初心者で分からないことが多く恐縮ですが、次のことを教えていただけるとありがたいです。
import time
import RPi.GPIO as GPIO
これを関数の前に出すとエラーは出ないのですが処理が止まって、完了しません。
回答2件
あなたの回答
tips
プレビュー