超声波模块HC-SR04简介以及编程

2024-04-29 12:38

本文主要是介绍超声波模块HC-SR04简介以及编程,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!


1、本模块性能稳定,测度距离精确,模块高精度,盲区小。 产品应用领域:    机器人避障  物体测距  液位检测  公共安防 停车场检测 

2 主要技术参数:

 1:使用电压:DC---5V   

2:静态电流:小于2mA       

3:电平输出:高5V     

4:电平输出:底0V         

5:感应角度:不大于15    

6:探测距离:2cm-450cm 

7:高精度 可达0.2cm    

超声波模块HC-SR04简介以及编程

      

接线方式:VCCtrig(控制端)、  echo(接收端)、 GND

 

基本工作原理: (1)采用IOTRIG触发测距,给至少10us的高电平信号; (2)模块自动发送840khz的方波,自动检测是否有信号返回; (3)有信号返回,通过IOECHO输出一个高电平,高电平持续的时间就是超声波从发射到返回的时间。测试距离=(高电平时间*声速(340M/S))/2;     本模块使用方法简单,一个控制口发一个10US以上的高电平,就可以在接收口等待高电平输出.一有输出就可以开定时器计时,当此口变为低电平时就可以读定时器的值,此时就为此次测距的时间,方可算出距离.如此不断的周期测,即可以达到你移动测量的值

 

超声波模块HC-SR04简介以及编程

超声波模块HC-SR04简介以及编程

5、 操作:初始化时将trigecho端口都置低,首先向给 trig    发送至少10 us的高电平脉冲(模块自动向外发送840K的方波),然后等待,捕捉 echo 端输出上升沿,捕捉到上升沿的同时,打开定时器开始计时,再次等待捕捉echo的下降沿,当捕捉到下降沿,读出计时器的时间,这就是超声波在空气中运行的时间,按照   测试距离=(高电平时间*声速(340M/S))/2   就可以算出超声波到障碍物的距离。


====================================================================================

本帖最后由 海神 于 2013-6-15 18:07 编辑

超声波发射器向某一方向发射超声波,在发射的同时开始计时,超声波在空气中传播,途中碰到障碍物就立即返回来,超声波接收器收到反射波就立即停止计时。声波在空气中的传播速度为 340m/s ,根据计时器记录的时间 t ,就可以计算出发射点距障碍物的距离 s ,即: s=340m/s ×  t / 2  。这就是所谓的时间差测距法。本实验利用超声波测得的距离从串口中显示。
元器件清单:
Zduino UNO × 1
OJ传感器扩展板× 1
USB 数据线 × 1 
1p 杜邦线 × 4 
超声波传感器 × 1

知识要点:
pulseIn() :用于检测引脚输出的高低电平的脉冲宽度。
pulseIn(pin, value)
pulseIn(pin, value, timeout)
Pin--- 需要读取脉冲的引脚
Value ---需要读取的脉冲类型, HIGH LOW
Timeout ---超时时间,单位微秒,数据类型为无符号长整型。

使用方法及时序图:

 
 
 
1 、使用 Arduino 采用数字引脚给 SR04 Trig 引脚至少 10 μ s 的高电平信号,触发 SR04 模块测距功能;
2 、触发后,模块会自动发送 8 40KHz 的超声波脉冲,并自动检测是否有信号返回。这步会由模块内部自动完成。
3 、如有信号返回, Echo 引脚会输出高电平,高电平持续的时间就是超声波从发射到返回的时间。此时,我们能使用 pulseIn() 函数获取到测距的结果,并计算出距被测物的实际距离。
SR04与Arduino接线示意图:


这篇关于超声波模块HC-SR04简介以及编程的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/946106

相关文章

Python的time模块一些常用功能(各种与时间相关的函数)

《Python的time模块一些常用功能(各种与时间相关的函数)》Python的time模块提供了各种与时间相关的函数,包括获取当前时间、处理时间间隔、执行时间测量等,:本文主要介绍Python的... 目录1. 获取当前时间2. 时间格式化3. 延时执行4. 时间戳运算5. 计算代码执行时间6. 转换为指

Python正则表达式语法及re模块中的常用函数详解

《Python正则表达式语法及re模块中的常用函数详解》这篇文章主要给大家介绍了关于Python正则表达式语法及re模块中常用函数的相关资料,正则表达式是一种强大的字符串处理工具,可以用于匹配、切分、... 目录概念、作用和步骤语法re模块中的常用函数总结 概念、作用和步骤概念: 本身也是一个字符串,其中

Python中的getopt模块用法小结

《Python中的getopt模块用法小结》getopt.getopt()函数是Python中用于解析命令行参数的标准库函数,该函数可以从命令行中提取选项和参数,并对它们进行处理,本文详细介绍了Pyt... 目录getopt模块介绍getopt.getopt函数的介绍getopt模块的常用用法getopt模

Android Mainline基础简介

《AndroidMainline基础简介》AndroidMainline是通过模块化更新Android核心组件的框架,可能提高安全性,本文给大家介绍AndroidMainline基础简介,感兴趣的朋... 目录关键要点什么是 android Mainline?Android Mainline 的工作原理关键

python logging模块详解及其日志定时清理方式

《pythonlogging模块详解及其日志定时清理方式》:本文主要介绍pythonlogging模块详解及其日志定时清理方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地... 目录python logging模块及日志定时清理1.创建logger对象2.logging.basicCo

shell编程之函数与数组的使用详解

《shell编程之函数与数组的使用详解》:本文主要介绍shell编程之函数与数组的使用,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录shell函数函数的用法俩个数求和系统资源监控并报警函数函数变量的作用范围函数的参数递归函数shell数组获取数组的长度读取某下的

Qt spdlog日志模块的使用详解

《Qtspdlog日志模块的使用详解》在Qt应用程序开发中,良好的日志系统至关重要,本文将介绍如何使用spdlog1.5.0创建满足以下要求的日志系统,感兴趣的朋友一起看看吧... 目录版本摘要例子logmanager.cpp文件main.cpp文件版本spdlog版本:1.5.0采用1.5.0版本主要

揭秘Python Socket网络编程的7种硬核用法

《揭秘PythonSocket网络编程的7种硬核用法》Socket不仅能做聊天室,还能干一大堆硬核操作,这篇文章就带大家看看Python网络编程的7种超实用玩法,感兴趣的小伙伴可以跟随小编一起... 目录1.端口扫描器:探测开放端口2.简易 HTTP 服务器:10 秒搭个网页3.局域网游戏:多人联机对战4.

Java并发编程必备之Synchronized关键字深入解析

《Java并发编程必备之Synchronized关键字深入解析》本文我们深入探索了Java中的Synchronized关键字,包括其互斥性和可重入性的特性,文章详细介绍了Synchronized的三种... 目录一、前言二、Synchronized关键字2.1 Synchronized的特性1. 互斥2.

Python使用date模块进行日期处理的终极指南

《Python使用date模块进行日期处理的终极指南》在处理与时间相关的数据时,Python的date模块是开发者最趁手的工具之一,本文将用通俗的语言,结合真实案例,带您掌握date模块的六大核心功能... 目录引言一、date模块的核心功能1.1 日期表示1.2 日期计算1.3 日期比较二、六大常用方法详