超声波传感器HC-SR04 + Arduino计算?

哈米姆

我正在使用此代码:

int trigPin = 7;
int echoPin = 8;

void setup() {
  Serial.begin(9600);
  pinMode(trigPin,OUTPUT);
  pinMode(echoPin,INPUT);
}

void loop() {
  int duration;
  int distance;
  digitalWrite(trigPin,HIGH);
  delayMicroseconds(1000);
  digitalWrite(trigPin,LOW);
  duration = pulseIn (echoPin,HIGH);
  distance = (duration/2)/29.1;
  Serial.print("distance = ");
  Serial.println (distance);
  delay(500);
}

我了解在这种情况下发送1000微秒脉冲并等待反射信号的概念。但是我不明白在这段代码中如何仅将反射信号的脉冲宽度用于计算。

我四处搜寻,他们说反射的脉冲宽度与行进的距离成正比。有人可以解释这是如何发生的(其背后的物理原理)以及29.1的来源吗?

我阅读了本文档,但我仍然不了解脉冲宽度的概念。

提前谢谢了!

匿名企鹅

就像克里斯在评论中提到的那样,输入引脚在发送和接收之间的时间内变为高电平。我不确定传输后或传输期间是否在一定时间内变高,但是您可能能够在数据表上找到它。

29.1来自哪里?

那就是空气中的声音速度...您可以使用它将时间转换为厘米。您必须将其一分为二,因为它有两种方式。

回顾:

  1. Arduino的发送脉冲到SR04(1000微秒): ,digitalWrite(trigPin,HIGH);delayMicroseconds(1000);digitalWrite(trigPin,LOW);
  2. SR04发出ping信号并将信号引脚更改为HIGH
  3. ping会碰到一个对象,然后反弹,然后返回SR04
  4. SR04将引脚设置回低电平

Arduino以此来测量信号引脚为高电平的长度:

duration = pulseIn (echoPin,HIGH); 

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Arduino + HC SR04超声波+电位计

来自分类Dev

为什么使用arduino uno,sr04超声波传感器和9个led不能使用此代码?

来自分类Dev

Arduino UNO +以太网屏蔽+超声波传感器=失败

来自分类Dev

arduino uno和超声波传感器的结果不正确

来自分类Dev

我可以在使用Arduino超声波传感器处理移动/播放时制作图像序列吗?

来自分类Dev

我可以在使用Arduino超声波传感器处理移动/播放时制作图像序列吗?

来自分类Dev

如何与HM-19 BLE模块通讯并使用超声波传感器进行扫描

来自分类Dev

在特定区域内分布许多超声波传感器

来自分类Dev

在树莓派中使用超声波传感器测量距离

来自分类Dev

使用 python 用 BBB 读取多个超声波传感器

来自分类Dev

我有一张图片 18F4550 如何从超声波传感器读取距离

来自分类Dev

Micropython HC-SR04-ESP8266

来自分类Dev

带有arduino的流量传感器

来自分类Dev

Arduino传感器API Web服务器

来自分类Dev

Arduino-基于Arduino的数学计算器的优化?

来自分类Dev

在Arduino中读取传感器时按下按钮

来自分类Dev

Raspberry Pi和Arduino读取串行传感器数据

来自分类Dev

使用Twilio的Arduino Uno PIR运动传感器

来自分类Dev

带有arduino的挠性传感器

来自分类Dev

Arduino - 陀螺仪传感器 - ISR - 时间戳

来自分类Dev

arduino 无法打开树莓派的红外传感器

来自分类Dev

计算传感器数据的平均值(电容传感器)

来自分类Dev

简单的Verilog即可控制MD1715超声波驱动器

来自分类Dev

关于如何构建良好的DHT11传感器网络的任何想法?(Arduino + XBee)

来自分类Dev

为什么我的指纹传感器不响应我的arduino代码?

来自分类Dev

连接Arduino传感器MPU6050和处理的问题

来自分类Dev

从实时arduino传感器数据绘制图像

来自分类Dev

使用 Arduino 发送两种不同类型的传感器数据

来自分类Dev

用于 Arduino 的传感器可以与 Raspberry Pi 一起使用吗?

Related 相关文章

  1. 1

    Arduino + HC SR04超声波+电位计

  2. 2

    为什么使用arduino uno,sr04超声波传感器和9个led不能使用此代码?

  3. 3

    Arduino UNO +以太网屏蔽+超声波传感器=失败

  4. 4

    arduino uno和超声波传感器的结果不正确

  5. 5

    我可以在使用Arduino超声波传感器处理移动/播放时制作图像序列吗?

  6. 6

    我可以在使用Arduino超声波传感器处理移动/播放时制作图像序列吗?

  7. 7

    如何与HM-19 BLE模块通讯并使用超声波传感器进行扫描

  8. 8

    在特定区域内分布许多超声波传感器

  9. 9

    在树莓派中使用超声波传感器测量距离

  10. 10

    使用 python 用 BBB 读取多个超声波传感器

  11. 11

    我有一张图片 18F4550 如何从超声波传感器读取距离

  12. 12

    Micropython HC-SR04-ESP8266

  13. 13

    带有arduino的流量传感器

  14. 14

    Arduino传感器API Web服务器

  15. 15

    Arduino-基于Arduino的数学计算器的优化?

  16. 16

    在Arduino中读取传感器时按下按钮

  17. 17

    Raspberry Pi和Arduino读取串行传感器数据

  18. 18

    使用Twilio的Arduino Uno PIR运动传感器

  19. 19

    带有arduino的挠性传感器

  20. 20

    Arduino - 陀螺仪传感器 - ISR - 时间戳

  21. 21

    arduino 无法打开树莓派的红外传感器

  22. 22

    计算传感器数据的平均值(电容传感器)

  23. 23

    简单的Verilog即可控制MD1715超声波驱动器

  24. 24

    关于如何构建良好的DHT11传感器网络的任何想法?(Arduino + XBee)

  25. 25

    为什么我的指纹传感器不响应我的arduino代码?

  26. 26

    连接Arduino传感器MPU6050和处理的问题

  27. 27

    从实时arduino传感器数据绘制图像

  28. 28

    使用 Arduino 发送两种不同类型的传感器数据

  29. 29

    用于 Arduino 的传感器可以与 Raspberry Pi 一起使用吗?

热门标签

归档