找回密码
 立即注册

QQ登录

只需一步,快速开始

基础模块资料库

基于Arduino使用HC-SR04 超声波模块



超声波传感器简介

超声波传感器是将超声波信号转换成其他能量信号(通常是电信号)的传感器,超声波是振动频率高于20kHz的机械波,它具有频率高、波长短、绕射现象小,特别是方向性好、能够成为射线而定向传播等特点,超声波对液体、固体的穿透本领很大,尤其是在阳光不透明的固体中,超声波碰到杂质或分界面会产生显著反射形成反射回波,碰到活动物体能产生多普勒效应,超声波传感器广泛应用在工业、国防、生物医学等方面。

具体应用

一、超声波传感器可以对集装箱状态进行探测,将超声波传感器安装在塑料熔体罐或塑料粒料室顶部,向集装箱内部发出声波时,就可以据此分析集装箱的状态,如满、空或半满等。
二、超声波传感器可用于检测透明物体、液体、任何表粗糙、光滑、光的密致材料和不规则物体,但不适用于室外、酷热环境或压力罐以及泡沫物体。
三、超声波传感器可以应用于食品加工厂,实现塑料包装检测的闭环控制系统,配合新的技术可在潮湿环如洗瓶机、噪音环境、温度极剧烈变化环境等进行探测。
四、超声波传感器可用于探测液位、探测透明物体和材料,控制张力以及测量距离,主要为
包装、制瓶、物料搬检验煤的设备运、塑料加工以及汽车行业等,超声波传感器可用于流程监控以提高产品质量、检测缺陷、确定有无以及其它方面。

99.jpg

(HC-SR04超声波模块)

HC-SR04超声波模块特点

HC-SR04超声波模块性能稳定,测度距离精确,能和国外的SRF05,SRF02等超声波测距模块相媲美,模块高精度,盲区(2cm)超近,稳定测距。

技术参数

使用电压:DC5V
静态电流:小于2mA
电平输出:高5V
电平输出:低0V
感应角度:不大于15度
探测距离:2cm-450cm
高精度:可达3mm

工作原理

1、采用IO触发测距,给至少10us的高电平信号
2、模块自动发送8个40khz的方波,自动检测是否有信号返回
3、有信号返回,通过IO输出一高电平,高电平持续的时间就是超声波从发射到返回的时间。测试距离=(高电平时间*声速(340M/S))/2

使用方法

一个控制口发一个10US以上的高电平,就可以在接收口等待高电平输出,一有输出就可以开定时器计时,当此口变为低电平时就可以读定时器的值,此时就为此次测距的时间,方可算出距离,如此不断的周期测,就可以达到你移动测量的值了。

接线方式

Arduino Nano  <------>    HC-SR04超声波模块
           5V           <------>      VCC
          GND         <------>     GND
           D7           <------>      Trig
           D8           <------>      Echo

实验原理

利用Arduino Nano 结合HC-SR04超声波模块,读取测量距离的数值

程序测试----读取HC-SR04超声波模块在不同测距情况下的数值

1、Mixly 图形化编程程序

100.png
(图形化程序)

打开串口监视器,会显示HC-SR04超声波模块读取到不同距离的数值1、HC-SR04超声波模块距离障碍物近时读取到的数值

101.png
(串口数值显示)

2、HC-SR04超声波模块距离障碍物远时读取到的数值

102.png
(串口数值显示)

程序实现代码

  1. float checkdistance_7_8() {
  2.   digitalWrite(7, LOW);
  3.   delayMicroseconds(2);
  4.   digitalWrite(7, HIGH);
  5.   delayMicroseconds(10);
  6.   digitalWrite(7, LOW);
  7.   float distance = pulseIn(8, HIGH) / 58.00;
  8.   delay(10);
  9.   return distance;
  10. }
  11. void setup(){
  12.   pinMode(7, OUTPUT);
  13.   pinMode(8, INPUT);
  14.   Serial.begin(9600);
  15. }
复制代码

分享至 : QQ空间
收藏

0 个回复

您需要登录后才可以回帖 登录 | 立即注册