首页 > 解决方案 > Arduino,HC SR-04 距离传感器输出错误

问题描述

我的名字是 Dmitrij,我想将 HC-SR04 连接到 Arduino,以便测量距离。问题是传感器连续发送 4-5 个正确结果,然后连续发送 5-6 个错误结果。

我试图更换 Arduino 和它没有帮助的传感器。最后,当我写这篇文章时,我有点解决了这个问题。在我将传感器连接到 Arduino 5V 后,传感器从外部电源模块 ( https://i.imgur.com/Zjg22ka.png )获得 5 伏电压,一切正常。有没有办法以某种方式解决这个问题?

int echo = 8;
int trig = 9;
float duration, distance;

void setup() {

  pinMode(echo, INPUT);
  pinMode(trig, OUTPUT);
  digitalWrite(trig, LOW); 
  Serial.begin (9600);
}

void loop() {

  digitalWrite(trig, HIGH);
  delayMicroseconds(10);
  digitalWrite(trig, LOW);
  duration = pulseIn(echo, HIGH);
  distance = (duration / 2) * 0.0344;
  Serial.print("Distance = ");
  Serial.print(distance);
  Serial.println(" cm");
  delay(500);

}

那是传感器对准墙壁时的输出。实际距离约为 15-16 厘米,我不明白为什么它还会输出其他东西。

Distance = 15.70 cm
Distance = 15.70 cm
Distance = 15.65 cm
Distance = 15.70 cm

Distance = 3.92 cm
Distance = 2.25 cm
Distance = 1.67 cm
Distance = 0.48 cm
Distance = 0.55 cm
Distance = 6.73 cm

Distance = 15.65 cm
Distance = 15.65 cm
Distance = 15.65 cm
Distance = 15.65 cm

Distance = 4.11 cm
Distance = 2.27 cm
Distance = 1.50 cm
Distance = 0.50 cm
Distance = 0.50 cm
Distance = 6.33 cm  

等等。

标签: arduinodistancesensors

解决方案


你能按照这些步骤吗?我遇到了同样的问题,我连接了 trig 和 echo pin,如链接所示并工作。

不要忘记你必须下载NewPing 库

如果不工作,你应该检查所有的电缆。


推荐阅读