HC-SR04 超声波传感器使用教程
创作时间:
作者:
@小白创作中心
HC-SR04 超声波传感器使用教程
引用
1
来源
1.
https://spotpear.cn/public/index/study/detail/id/624.html
Arduino连接超声波传感器测距
超声波传感器适用于对大幅的平面进行静止测距。普通的超声波传感器测距范围大概是2cm-450cm,分辨率3mm(测试环境没那么好,个人实测比较稳定的距离10cm-2m左右,超过此距离就经常有偶然不准确的情况发生了,当然不排除技术问题。)
测试对象是SRF-04超声波传感器,有四个脚:5v电源脚(Vcc),触发控制端(Trig),接收端(Echo),地端(GND)
模块使用方法:
使用本模块,占用单片机的两个IO口,一个IO口做为触发端。一个IO口做为回波PWM信号捕捉引脚。写程序时,先在TXD引脚端为8个40K周期电平,程序处理变换成一个PWM的信号从RXD引脚输出,一旦检测到有回波信号则输出回响信号,供我们方便使用。我们使用时,只需读出的低电平时间(T)。回响信号是一个脉冲的宽度成正比的距离对象。可通过发射信号到收到的回响信号时间间隔可以计算得到距离。公式: uS/58=厘米或者uS/148=英寸。也可以通过声波在空气中传播公式L=340T/2。就可以求出L(测量的距离)。如果没有检测到回响信号,模块回响信号脚将输出约140uS的电平,以防止发射信号对回响信号的影响。
模块工作原理:
采用IO触发测距,给至少10us的高电平信号;
模块自动发送8个40HKz的方波,自动检测是否有信号返回;
有信号返回,通过IO输出一高电平,高电平持续的时间就是超声波从发射到返回的时间,测试距离=(高电平时间*声速(340m/s))/2
电路连接方法:
Arduino程序例子:
const int TrigPin = 2;
const int EchoPin = 3;
float cm;
void setup() {
Serial.begin(9600);
pinMode(TrigPin, OUTPUT);
pinMode(EchoPin, INPUT);
}
void loop() {
digitalWrite(TrigPin, LOW); //低高低电平发一个短时间脉冲去TrigPin
delayMicroseconds(2);
digitalWrite(TrigPin, HIGH);
delayMicroseconds(10);
digitalWrite(TrigPin, LOW);
cm = pulseIn(EchoPin, HIGH) / 58.0; //将回波时间换算成cm
cm = (int(cm * 100.0)) / 100.0; //保留两位小数
Serial.print(cm);
Serial.print("cm");
Serial.println();
delay(1000);
}
热门推荐
在肾动脉上起舞——肾交感神经消融术
当心!养仓鼠、豚鼠竟可能会染上这么多种病!(不只鼠疫)
边境牧羊犬的颜色大全:17种标准色与非标准色详解
组合贷款中常见的问题都有哪些
挑战传统体验的AR技术正在为观展增强现实趣味
紫丁香花语:承载着初恋与思念的温柔印记
递归与迭代:编程中的两种重要控制结构
八字命理中的未戌燥土,到底生不生金?
为防止这些潜在威胁带来的损失,如何备份电脑所有数据,数据备份的全面指南!
宿舍可跳减肥操(在宿舍就能做的燃脂运动)
货币政策强调“适度宽松”,重大利好下股市为何冲高回落?
结合创新!通道注意力+UNet,实现高精度分割
锻炼孩子大脑的八种感统训练游戏方法
魏碑:去古未远的多样风姿
拯救新生仔猪!5项关键措施,有效降低死亡率
劳务外包与劳务派遣:概念、区别及法律规定
绿豆的功效与煮法:清热解毒、止渴消暑的正确打开方式
“入美”、“独立”、“公愤”:格陵兰岛议会选举成为“决定未来的选择”
香港电影发展获得新动能
大模型微调的几种常见方法,看完你就是LLM大师!
历史上的仁宗并不多,但西辽仁宗耶律夷列却是一个特殊的存在
开发的软件如何和硬件交互
探索汉字“巳”的文化内涵与历史渊源,揭示其独特魅力与意义
如何用C语言写贪吃蛇
校园网盘:数据传输安全的多副本与备份机制
中国联通"输送"的领导人才,获各央企重用成集团一把手
算命有科学根据吗?
茅台保存秘籍!掌握7大细节,让好酒更保值
小猫打喷嚏怎么回事
甜叶菊的功效与食用指南