質問編集履歴

1

修正

2017/06/29 11:45

投稿

super987
super987

スコア7

test CHANGED
File without changes
test CHANGED
@@ -9,113 +9,3 @@
9
9
  ###発生している問題・エラーメッセージ
10
10
 
11
11
  距離は取れているが、誤差・振れが大きい。
12
-
13
- ###該当のソースコード
14
-
15
- ```
16
-
17
- #define echo1Pin 4 // Echo1 Pin
18
-
19
- #define trig1Pin 3 // Trigger1 Pin
20
-
21
- #define echo2Pin 5 // Echo2 Pin
22
-
23
- #define trig2Pin 6 // Trigger2 Pin
24
-
25
- int Duration_1, Duration_2;
26
-
27
- float Distance_1, Distance_2,AveDistance;
28
-
29
- void setup() {
30
-
31
- Serial.begin( 9600 );
32
-
33
- pinMode( echo1Pin, INPUT );
34
-
35
- pinMode( trig1Pin, OUTPUT );
36
-
37
- pinMode( echo2Pin, INPUT );
38
-
39
- pinMode( trig2Pin, OUTPUT );
40
-
41
- }
42
-
43
- ////////////////////////////////////////////////////////////////////////////////
44
-
45
- void loop() {
46
-
47
- ultra_sonicPin();
48
-
49
- Distance_1 = Duration_1 / 2;
50
-
51
- Distance_2 = Duration_2 / 2;
52
-
53
- Distance_1 = (Distance_1 * 0.034);//1番センサ cm間隔で取得
54
-
55
- Distance_2 = (Distance_2 * 0.034);//2番センサ cm間隔で取得
56
-
57
- AveDistance=((Distance_1+Distance_2)/2);//センサ-壁間の距離
58
-
59
- }
60
-
61
- ////////////////////////////////////////////////////////////////////////////////
62
-
63
- /* 超音波センサ */
64
-
65
- void ultra_sonicPin() {
66
-
67
- int count=0;
68
-
69
- if(count==0){
70
-
71
- digitalWrite(trig1Pin, LOW);
72
-
73
- delayMicroseconds(10);
74
-
75
- digitalWrite(trig1Pin, HIGH);
76
-
77
- delayMicroseconds(10);
78
-
79
- digitalWrite(trig1Pin, LOW);
80
-
81
- Duration_1 = pulseIn(echo1Pin, HIGH);
82
-
83
- delay(60);
84
-
85
- count=1;
86
-
87
- }
88
-
89
- if(count=1){
90
-
91
- digitalWrite(trig2Pin, LOW);
92
-
93
- delayMicroseconds(10);
94
-
95
- digitalWrite(trig2Pin, HIGH);
96
-
97
- delayMicroseconds(10);
98
-
99
- digitalWrite(trig2Pin, LOW);
100
-
101
- Duration_2 = pulseIn(echo2Pin, HIGH);
102
-
103
- delay(60);
104
-
105
- count=0;
106
-
107
- }
108
-
109
- }
110
-
111
- ```
112
-
113
-
114
-
115
-
116
-
117
-
118
-
119
- ###補足情報(言語/FW/ツール等のバージョンなど)
120
-
121
- また、main文内にdelayが入らないように超音波センサの値を取得することは可能でしょうか。