全球最实用的IT互联网信息网站!

AI人工智能P2P分享&下载搜索网页发布信息网站地图

当前位置:诺佳网 > 电子/半导体 > MEMS传感器 >

如何将HC-SR04连接到Arduino并编写一个简单的程序来

时间:2024-02-11 10:17

人气:

作者:admin

标签: arduino  HC-S 

导读:一种流行的Arduino超声波传感器是HC-SR04。它广泛用于非接触式距离测量,通常用于机器人和自动化项目。本指南将向您展示如何将HC-SR04连接到Arduino并编写一个简单的程序来测量距离。...

一种流行的Arduino超声波传感器是HC-SR04。它广泛用于非接触式距离测量,通常用于机器人和自动化项目。本指南将向您展示如何将HC-SR04连接到Arduino并编写一个简单的程序来测量距离。

要求

Arduino的Uno(或兼容板)

HC-SR04超声波传感器

接线图

1.png

分步指南

将HC-SR04的引脚连接到Arduino上的5V输出。VCC

将HC-SR04的引脚连接到Arduino上的一个GND引脚。GND

将引脚连接到Arduino上的数字引脚9。Trig

将引脚连接到Arduino上的数字引脚10。Echo

Arduino超声波示例代码

将以下代码复制并粘贴到ArduinoIDE中。该代码将触发超声波传感器发送脉冲,然后监听其回波,从而计算并打印距离。

// Define the Trig and Echo pin connections
const int trigPin = 9;
const int echoPin = 10;

// Define variables to store duration and distance
long duration;
int distance;

void setup() {
  // Start the serial communication
  Serial.begin(9600);
  
  // Define the Trig and Echo pins as Output and Input
  pinMode(trigPin, OUTPUT);
  pinMode(echoPin, INPUT);
}

void loop() {
  // Clear the trigPin
  digitalWrite(trigPin, LOW);
  delayMicroseconds(2);

  // Sets the trigPin HIGH for 10 microseconds
  digitalWrite(trigPin, HIGH);
  delayMicroseconds(10);
  digitalWrite(trigPin, LOW);

  // Reads the echoPin, returns the sound wave travel time in microseconds
  duration = pulseIn(echoPin, HIGH);

  // Calculating the distance
  distance = duration * 0.034 / 2; // Speed of sound wave divided by 2 (go and back)

  // Displays the distance on the Serial Monitor
  Serial.print("Distance: ");
  Serial.print(distance);
  Serial.println(" cm");

  // Delay 500 milliseconds before next measurement
  delay(500);
}

疑难解答提示

确保ArduinoIDE的串行监视器设置为相同的波特率(在本例中为9600)以查看输出。

确保trig和echo引脚已正确定义和连接。

如果传感器似乎不工作,请检查所有连接并验证您的Arduino板是否正常工作。

该传感器的工作原理

HC-SR04超声波传感器利用声纳原理测量距离。以下是其工作机制的简要说明:

触发超声波脉冲:传感器有一个发射器和一个接收器。当您触发脉冲(使用Trig引脚)时,发射器会发送一小段超声波。

声波传播:一旦超声波脉冲被发送,它就会在空气中传播,直到它击中物体并被反射回传感器。

接收回声:传感器的接收器部分(连接到Echo引脚)等待反射的声波返回。测量从发射脉冲到接收回波所需的时间。

计算距离:您可以根据声波返回所需的时间找到与物体的距离。由于空气中的声速约为每秒343米,因此您可以使用公式计算距离。(除以2,因为声波传播到物体然后再次返回,因此您只需要总传播时间的一半)。distance=(speedofsound*time)/2

此操作发生得非常快,并且可以快速连续重复,使传感器能够实时测量到前方最近物体的距离。
审核编辑:陈陈

温馨提示:以上内容整理于网络,仅供参考,如果对您有帮助,留下您的阅读感言吧!
相关阅读
本类排行
相关标签
本类推荐

CPU | 内存 | 硬盘 | 显卡 | 显示器 | 主板 | 电源 | 键鼠 | 网站地图

Copyright © 2025-2035 诺佳网 版权所有 备案号:赣ICP备2025066733号
本站资料均来源互联网收集整理,作品版权归作者所有,如果侵犯了您的版权,请跟我们联系。

关注微信