我目前正在使用HC-SR04超声波传感器来测量从传感器到表面的距离。
问题是传感器的结果值在合理范围内既不一致又不准确。
我了解到HC-SR04的最大读取范围可达400厘米。
我目前的情况是该传感器可以合理地测量20厘米,但是当传感器超过它时,它很快就会失效。
例如,传感器与表面之间的距离约为170cm,但传感器表示约为50cm。
这是引脚的连接方式。
HC-SR04 ------ Arduino。
触发至13。
回声到12
Vcc至5V
GND至GND
这是我的Arduino代码。
#define echoPin1 12
#define trigPin1 13
float duration;
float distance1_1;
void setup()
{
pinMode (echoPin1, INPUT);
pinMode (trigPin1, OUTPUT);
digitalWrite(trigPin1, LOW);
Serial.begin (9600);
Serial.println("Program Begins");
}
void loop()
{
DIST();
delay (1000);
}
void DIST()
{
digitalWrite(trigPin1, LOW);
delayMicroseconds(2);
digitalWrite(trigPin1, HIGH);
delayMicroseconds(10);
digitalWrite(trigPin1, LOW);
duration=pulseIn(echoPin1, HIGH);
distance1_1=(duration*0.0343)/2;
Serial.println("Distance")
Serial.println(distance1_1);
}
答案 0 :(得分:0)