Arduino UNO控制HC-SR04超声波传感器实现测距
创作时间:
作者:
@小白创作中心
Arduino UNO控制HC-SR04超声波传感器实现测距
引用
CSDN
1.
https://blog.csdn.net/weixin_45344328/article/details/123449535
超声波传感器是一种能够检测物体距离的传感器,广泛应用于机器人避障、液位测量等领域。本文将详细介绍如何使用Arduino UNO控制HC-SR04超声波传感器进行测距。
超声波的历史
超声波是指频率高于20000Hz的声波,人耳无法听到。1793年,意大利科学家斯帕拉捷通过蝙蝠实验首次揭示了超声波的存在。他发现蝙蝠即使在完全黑暗的环境中也能准确捕捉飞蛾,这启发了人们对超声波的研究。
HC-SR04超声波传感器
技术参数
- 工作电压:直流(DC)5V
- 工作电流:15mA
- 工作频率:40Hz
- 测量范围:2cm~4m
- 测量角度:≤15度
- 触发信号:10微秒(μs)的TTL脉冲
- 输出信号:与射程成正比的TTL电平信号
工作原理
当传感器接收到触发信号时,会发出超声波脉冲。脉冲遇到障碍物后反射回来,被传感器接收。通过计算发射和接收之间的时间差,可以计算出距离。具体公式为:
[ \text{距离} = \frac{\text{时间} \times 340 \text{m/s}}{2} ]
实物搭建
所需材料
- 面包板
- Arduino UNO板(含USB连接线)
- HC-SR04超声波传感器
- 杜邦线若干
接线方式
HC-SR04超声波传感器 | Arduino UNO板 |
|---|---|
GND | GND |
VCC | 5V |
Trig | D2 |
Echo | D3 |
代码实现
#define Trig 2 //引脚Tring 连接 IO D2
#define Echo 3 //引脚Echo 连接 IO D3
float cm; //距离变量
float temp; //存储回波
void setup()
{
Serial.begin(9600);
pinMode(Trig, OUTPUT);
pinMode(Echo, INPUT);
pinMode(8,OUTPUT);
}
void loop()
{
//给Trig发送一个低高低的短时间脉冲
digitalWrite(Trig, LOW); //给Trig发送一个低电平(初始化)
delayMicroseconds(2); //等待 2微妙
digitalWrite(Trig,HIGH); //给Trig发送一个高电平
delayMicroseconds(10); //等待 10微妙
digitalWrite(Trig, LOW); //给Trig发送一个低电平
temp = float(pulseIn(Echo, HIGH)); //存储回波等待时间,
//pulseIn函数会等待引脚变为HIGH,开始计算时间,再等待变为LOW并停止计时
//返回脉冲的长度
//声速是:340m/1s 换算成 34000cm / 1000000μs = 34 / 1000
//因为发送到接收,是一来一回,我们只要单程就好了,所以➗2
//距离(厘米) = (回波时间 * (34 / 1000)) / 2
//简化后的计算公式为 (回波时间 * 17)/ 1000
cm = (temp * 17 )/1000; //把回波时间换算成cm
Serial.print("Echo =");
Serial.print(temp);//串口输出等待时间的原始数据
Serial.print(" | | Distance = ");
Serial.print(cm);//串口输出距离换算成cm的结果
Serial.println("cm");
}
通过以上步骤,你就可以使用Arduino UNO控制HC-SR04超声波传感器进行距离测量了。
热门推荐
DOTA2新手入门:英雄分类详解
作为客服,有哪些 KPI 指标需要了解
孕妇肚皮怎么保湿
哪些方法可以帮助孕妇提高纤维代谢率?
什么是TPM管理?
增量资金涌动,508家上市公司开年回购近两百亿
数显卡尺精度一般是多少?如何确保测量结果的准确性
如何解决衣柜挨着墙壁潮湿的问题
丁玲《莎菲女士的日记》解读:一个五四时期叛逆女性的内心世界
如何进行财务报表制作
OpenLayers
六君子汤在野外医学中的新用途
失业提取公积金的步骤
全国开设人力资源管理专业的大学名单一览表
陶渊明隐居后做什么为生?揭秘历史上真实的陶渊明
主板BIOS下如何开启内存XMP/EXPO/DOCP
生物能源的环保意义
可再生能源和技术
双向NAT应用场景和配置详解
要善“相”不要忘“疑”——谈兵法“慧”处世
要善“相”不要忘“疑”:从《孙子兵法》看现代处世智慧
被爱妄想症的表现
高考最低分差是什么意思?什么是录取分数线?线差怎么计算?
最低分差是录取最低分吗?最低分差大好还是小好?怎么算出来的
这种很难洗,营养却很好的蔬菜,你吃过吗?
西洋菜如何清洗
债券技术分析:资金面与技术面的双重影响
三国名臣辛毗:刚正不阿,忠直一生
窦性心律T波改变怎么办
杜牧《赤壁》诗:历史背景与诗意解析