質問編集履歴

2

ご指南を頂き有難うございます。修正させて頂きました。何卒宜しくお願い致します。

2023/03/30 04:06

投稿

jserojgmv53
jserojgmv53

スコア0

test CHANGED
File without changes
test CHANGED
@@ -21,7 +21,7 @@
21
21
  なし
22
22
 
23
23
  ### 該当のソースコード
24
-
24
+ ```ここに言語を入力
25
25
  import time
26
26
  import RPi.GPIO as GPIO
27
27
  import datetime
@@ -67,6 +67,8 @@
67
67
  print(recordtime,distance)
68
68
 
69
69
  GPIO.cleanup()
70
+ ```
71
+ ```Python3
70
72
 
71
73
  ### 補足情報(FW/ツールのバージョンなど)
72
74
 

1

プログラムが適切に表示されていないとご指摘があり、修正させて頂きました。宜しくお願い致します。

2023/03/29 11:10

投稿

jserojgmv53
jserojgmv53

スコア0

test CHANGED
File without changes
test CHANGED
@@ -22,75 +22,48 @@
22
22
 
23
23
  ### 該当のソースコード
24
24
 
25
- Python3
26
-
27
- ソースコード
28
-
29
- # -*- coding: utf-8 -*-
30
- # 日本語コメントをエラーとしないように、UTF-8で保存
31
-
32
- # 使用するライブラリのインポート
33
25
  import time
34
26
  import RPi.GPIO as GPIO
35
27
  import datetime
36
28
  import csv
37
29
 
38
- # 定数の定義
39
30
  PIN_TRIG = 24
40
31
  PIN_ECHO = 25
41
- # 音速(cm / s)
32
+
42
33
  SPEED_OF_SOUND = 33145
43
34
 
44
35
  def init_GPIO():
45
- # GPIOの初期設定
46
36
  GPIO.setwarnings(False)
47
37
  GPIO.setmode(GPIO.BCM)
48
-
49
38
  GPIO.setup(PIN_TRIG, GPIO.OUT)
50
39
  GPIO.setup(PIN_ECHO, GPIO.IN)
51
40
 
52
41
  def calc_distance():
53
- # 0.5秒ほど落ち着かせれる
54
42
  GPIO.output(PIN_TRIG, GPIO.LOW)
55
43
  time.sleep(0.5)
56
- # 0.5秒間、超音波を発射
57
44
  GPIO.output(PIN_TRIG, True)
58
45
  time.sleep(0.5)
59
46
  GPIO.output(PIN_TRIG, False)
60
-
61
- # 超音波が跳ね返ってくるまでの時間を計測
62
47
  while GPIO.input(PIN_ECHO) == 0:
63
48
  signaloff = time.time()
64
49
  while GPIO.input(PIN_ECHO) == 1:
65
50
  signalon = time.time()
66
51
  time_passed = signalon - signaloff
67
-
68
- # 距離を計算する(音速 * 超音波を出力、戻ってくるまでの時間 / 2)
69
52
  distance = SPEED_OF_SOUND * time_passed / 2
70
53
  return distance
71
54
 
72
55
  init_GPIO()
73
56
 
74
- #32400秒測定する
75
57
  for measure in range(32400):
76
-
77
- # 0.5 * 20 で、10秒間、0.5秒間隔で測定結果を表示
78
- # 測定結果が約0.5秒で取得されるので、
79
- # 0.5秒毎に距離が測定される
80
58
  distance = f'{calc_distance():.3f}'
81
-
82
59
  today = datetime.date.today()
83
60
  today = str(today).replace('-','')
84
-
85
61
  with open(today + 'data.csv','a') as f:
86
-
87
62
  now = datetime.datetime.now()
88
63
  recordtime = '{0:%H:%M:%S}'.format(now)
89
64
  writer = csv.writer(f)
90
65
  writer.writerow([recordtime,distance])
91
-
92
66
  f.close()
93
-
94
67
  print(recordtime,distance)
95
68
 
96
69
  GPIO.cleanup()