【Arduino基础教程】HC-SR04超声波测距模块

简介: HC-SR04超声波测距模块超声波测距原理:通过超声波发射装置发出超声波,根据接收器接到超声波时的时间差就可以知道距离。模块特征HC-SR04超声波测距模块具有测距距离精确,能和SRF05,SRF02等超声波测距相媲美,测量距离 ** 2cm~450cm (小编实测:10cm~300cm)。
img_7507c2b5ce5dc09540b43e985fc63ac8.jpe
HC-SR04超声波测距模块

超声波测距原理:通过超声波发射装置发出超声波,根据接收器接到超声波时的时间差就可以知道距离。

模块特征

HC-SR04超声波测距模块具有测距距离精确,能和SRF05,SRF02等超声波测距相媲美,测量距离 ** 2cm~450cm (小编实测:10cm~300cm)。

工作原理

1.采用IO触发测距,给至少10us的高电平信号。
2.模块自动发送8个40KHz的方波,自动检测是否有信号返回。
3.有信号返回,通过IO输出一高电平,高电平持续时间就是超声波从发射到返回的时间

测试距离=(高电平时间*声速(340m/s)/2)

准备材料

  • Arduino Uno *1
  • HC-SR04超声波测距模块 *1
  • 面包板 *1
  • 跳线 *4

模块接线

img_051bf1ecfb8d620b0d8ae718a730f96f.jpe
接线示意图
HC-SR04 Arduino
TRIG -> 12
ECHO -> 11
VCC -> 5V
GND -> GND

加载库文件

到这里https://bitbucket.org/teckel12/arduino-new-ping/downloads下载NewPing_v1.7.zip,在Arduino IDE中,选择项目->加载库->添加一个.zip库,选择下载好的NewPing_v1.7.zip文件即可添加成功。

示例程序

#include<NewPing.h>
#define TRIGGER_PIN 12//12端口
#define ECHO_PIN 11//11端口
#define MAX_DISTANCE 200//最大距离是400-500cm,我们需要可以设定200cm

NewPing sonar(TRIGGER_PIN,ECHO_PIN,MAX_DISTANCE);//设置端口和最大距离
void setup(){ 
  Serial.begin(9600); 
}

void loop(){ 
  delay(100);//间隔50ms扫描一次(大约20次/秒).29ms是扫描最短的时间间隔 
  unsigned int uS=sonar.ping();//把扫描时间转化成us 
  int dis=uS/US_ROUNDTRIP_CM;//转成距离     
  Serial.print(">>>>>>>>>>>"); 
  Serial.print(uS);
  Serial.println("cm") 
} 

参考文献

  1. http://www.voidcn.com/blog/qq5132834/article/p-3347951.html
  2. http://blog.xuite.net/lwchafter30/blog/328792563-Arduino+%E8%B6%85%E9%9F%B3%E6%B3%A2+%E8%B6%85%E8%81%B2%E6%B3%A2%E6%84%9F%E6%B8%AC%E5%99%A8%E7%9A%84%E5%AF%A6%E4%BD%9C%EF%BC%8C%E4%B8%8D%E8%A6%81%E5%86%8D%E7%94%A8%E5%88%B0%E9%81%8E%E6%99%82%E7%9A%84%E7%AF%84%E4%BE%8B
目录
相关文章
|
传感器 芯片
STM32外设系列—HC-SR04(超声波)
本文主要介绍了超声波测距的原理,常用的超声波传感器。并且针对HC-SR04给出了使用思路和程序设计。最后,简单进行了思路拓展。
380 1
STM32外设系列—HC-SR04(超声波)
|
传感器 机器人 Linux
Linux驱动基础(HC-SR04超声波模块)
Linux驱动基础(HC-SR04超声波模块)
156 0
|
7月前
|
传感器 机器人
SR04 超声波测距模块
SR04 超声波测距模块
99 0
51单片机学习-HC-05蓝牙模块-LCD12864显示
51单片机学习-HC-05蓝牙模块-LCD12864显示
170 0
51单片机学习-HC-05蓝牙模块-LCD12864显示
51单片机学习--LCD模块使用
51单片机学习--LCD模块使用
145 0
|
传感器
STM32驱动HC-SR04超声波模块
STM32驱动HC-SR04超声波模块
487 0
stm32cubeMX配置人体感应器SR505
stm32cubeMX配置人体感应器SR505
151 0
STM32学习笔记(7) 超声波HSR04模块详解
有信号返回时,通过IO输出一高电平、高电平持续时间就是超声波从发射到返回的时间
196 0