2017-03-13 65 views
0

私はarduinoと超音波センサーHC-SR04とPWMに苦しんでいます。 私はarduino pro miniを使用しています。 NewPingライブラリも使用します。Arduino HC-SR04 PWMが干渉します

私がソナーだけを取り付けた場合、newpingライブラリの例は完全に機能し、天井に向かって上を指すと約170cmになります。

しかし、別のピン(この場合はピン3)にpwmコールを追加すると、ソナーは最大41cmの出力を出力しますが、それより下のものはすべてノイズがあります。

私はpwmピンに接続するものはほとんどありません。capasitorと抵抗のみがあります。私はモーターも持っていたが、デバッグのためにそれを取り除いた。私配線の

イラスト:enter image description here

コード:

#include <NewPing.h> 

#define TRIGGER_PIN 8 // Arduino pin tied to trigger pin on the ultrasonic sensor. 
#define ECHO_PIN  7 // Arduino pin tied to echo pin on the ultrasonic sensor. 
#define MAX_DISTANCE 200 
NewPing sonar(TRIGGER_PIN, ECHO_PIN, MAX_DISTANCE); 
int p = 3; 
void setup() { 
    // put your setup code here, to run once: 
    pinMode(p,OUTPUT); 
    Serial.begin(115200); 
} 

void loop() { 
    delay(50);      // Wait 50ms between pings (about 20 pings/sec). 29ms should be the shortest delay between pings. 
    Serial.print("Ping: "); 
    int d = sonar.ping_cm(); 
    Serial.print(d); // Send ping, get distance in cm and print result (0 = outside set distance range) 
    Serial.println("cm"); 
    analogWrite(p,d); 

} 

私はピン3からすべてを削除する場合、問題は消えないが、この配線が何らかの影響を与える可能性がありますどのように私は見ていません、特にモータが紛失している。

どのようにしてソナーとpwmを同時に稼働させるかについてのアイデア。

+0

また、電源投入後の最初の読みは正しいと思われ、残りは間違っています。41 –

答えて

0

HC-SR04のピンの色を確認してください。 「真ちゅう」色のピンを持つモデルには欠陥があります。彼らは誤読を返すかもしれません。 「silver-y-ish」ピンを持つモデルはより正確です。欠陥はそこにない。

また、距離センサーにはピン2 & 3を使用し、PWMには他のものを使用してみてください。

関連する問題