“Ultrasonic Distance Sensor”的版本间的差异

来自丢石头百科
 
(未显示同一用户的27个中间版本)
第27行: 第27行:
  
 
== 工作原理==
 
== 工作原理==
=== 超声波工作原理 ===
 
 
超声波测距原理是在超声波发射装置发出超声波,它的根据是接收器接到超声波时的时间差,与雷达测距原理相似。 超声波发射器向某一方向发射超声波,在发射时刻的同时开始计时,超声波在空气中传播,途中碰到障碍物就立即返回来,超声波接收器收到反射波就立即停止计时。(超声波在空气中的传播速度为340m/s,根据计时器记录的时间t,就可以计算出发射点距障碍物的距离(s),即:s=340t/200)
 
超声波测距原理是在超声波发射装置发出超声波,它的根据是接收器接到超声波时的时间差,与雷达测距原理相似。 超声波发射器向某一方向发射超声波,在发射时刻的同时开始计时,超声波在空气中传播,途中碰到障碍物就立即返回来,超声波接收器收到反射波就立即停止计时。(超声波在空气中的传播速度为340m/s,根据计时器记录的时间t,就可以计算出发射点距障碍物的距离(s),即:s=340t/200)
*[[File:Ultrasonic Distance Sensor_原理.png|600px]]
+
**[[File:Ultrasonic Distance Sensor_原理.png|600px]]
=== HC-SR04 ===
 
 
 
=== HY-SRF05 ===
 
 
 
=== US-100 ===
 
  
 
== 参数说明 ==
 
== 参数说明 ==
 +
*[[File:Ultrasonic Distance Sensor_参数说明.png|800px]]
  
[[File:Ultrasonic Distance Sensor_参数说明.png|800px]]
+
== 使用说明 ==
 
 
== 产品说明 ==
 
 
=== HC-SR04 ===
 
=== HC-SR04 ===
 +
==== 引脚说明 ====
 
*[[File:Ultrasonic Distance Sensor _HC-SR04.jpg|600px]]
 
*[[File:Ultrasonic Distance Sensor _HC-SR04.jpg|600px]]
 
*'''引脚说明'''
 
*'''引脚说明'''
 
**1、VCC:电源正极,接电压3V-5.5V
 
**1、VCC:电源正极,接电压3V-5.5V
 
**2、Trig/Rx/SCL/ I/O:接收MCU发送的控制脉冲
 
**2、Trig/Rx/SCL/ I/O:接收MCU发送的控制脉冲
***GPIO模式:Trig 触发信号
+
***GPIO模式:Trig 触发信号,接外部电路的Trig端
***UART模式:Rx 接收信号
+
***UART模式:Rx 接收信号,接外部电路的Tx端
***IIC模式:SCL 时钟信号
+
***IIC模式:SCL 时钟信号,接外部电路的SCL端
 
***1-Wire模式:I/O 接收/发送信号
 
***1-Wire模式:I/O 接收/发送信号
 
**3、Echo/Tx/SDA:向MCU发送数据脉冲
 
**3、Echo/Tx/SDA:向MCU发送数据脉冲
***GPIO模式:Echo 反馈信号
+
***GPIO模式:Echo 反馈信号,接外部电路的Echo端
***UART模式:Tx 发射信号
+
***UART模式:Tx 发射信号,接外部电路的Rx端
***IIC模式:SDA 数据信号
+
***IIC模式:SDA 数据信号,接外部电路的SDA端
 
**4、GND:电源负极,接地
 
**4、GND:电源负极,接地
 
*'''功能选择端说明'''
 
*'''功能选择端说明'''
 +
**[[File:Ultrasonic Distance Sensor (HC-SR04)_引脚说明.png|800px]]
 +
 +
==== 操作说明 ====
 +
*实际应用,如果需要精确距离值,必需要考虑温度影响,做温度补偿
 +
*'''GPIO模式'''
 +
**[[File:Ultrasonic Distance Sensor (HC-SR04)_GPIO.png|800px]]
 +
**工作模式同老版本HC-SR04。外部MCU给模块Trig脚一个大于10uS的高电平脉冲;模块会给出一个与距离等比的高电平脉冲信号,
 +
**可根据脉宽时间“T”算出:距离=T*C/2 (C为声速)
 +
**声速温度公式:c=(331.45+0.61t/℃)m•s-1 (其中330.45是在0℃) 其中:
 +
***0℃声速:  330.45M/S
 +
***20℃声速:  342.62M/S
 +
***40℃声速:  354.85M/S
 +
***0℃-40℃声速误差7%左右。
 +
 +
*'''UART模式'''
 +
**UART模式:波特率9600,起始位1位,停止位1位,数据位8位,无奇偶校验位,无流控制
 +
**连接串口。外部MCU或PC发命令0XA0,模块完成测距后发3个返回距离数据,BYTE_H,BYTE_M与BYTE_L。
 +
**距离计算方式如下(单位mm):
 +
***距离=((BYTE_H<<16)+(BYTE_M<<8)+ BYTE_L)/1000
 +
 +
*'''IIC模式'''
 +
**IIC地址: 0X57
 +
**IIC传输格式:
 +
***写数据:[[File:Ultrasonic Distance Sensor (HC-SR04)_IIC_1.png|600px]]
 +
***读数据:[[File:Ultrasonic Distance Sensor (HC-SR04)_IIC_2.png|600px]]
 +
**命令格式:[[File:Ultrasonic Distance Sensor (HC-SR04)_IIC.jpg|600px]]
 +
**向模块写入0X01,模块开始测距;等待200mS(模块最大测距时间)以上。直接读出3个距离数据。BYTE_H,BYTE_M与BYTE_L。
 +
**距离计算方式如下(单位mm):距离=((BYTE_H<<16)+(BYTE_M<<8)+ BYTE_L)/1000
  
 
=== HY-SRF05 ===
 
=== HY-SRF05 ===
 +
==== 引脚说明 ====
 
*[[File:Ultrasonic Distance Sensor _HY-SRF05.jpg|600px]]
 
*[[File:Ultrasonic Distance Sensor _HY-SRF05.jpg|600px]]
 
*'''引脚说明'''
 
*'''引脚说明'''
**1、VCC:
+
**1、VCC:电源正极,接电压5V DC
**2、
+
**2、Trig:触发信号,接收MCU发送的控制脉冲
**3、
+
**3、Echo:反馈信号,向MCU发送数据脉冲
**4、
+
**4、OUT:开关量输出端
**5、
+
**5、GND:电源负极,接地
 +
 
 +
==== 操作说明 ====
 +
*[[File:Ultrasonic Distance Sensor (HC-SR04)_GPIO.png|800px]]
 +
*MCU通过Trig端口向模块提供一个10uS 以上脉冲触发信号。
 +
*模块内部自动发出8个40kHz周期的方波信号,检测是否有信号返回。
 +
*检测到有回波信号则通过Echo端口输出回响信号。回响信号的脉冲宽度与所测的距离成正比。
 +
*发射信号到收到的回响信号时间间隔可以计算得到距离。
 +
*公式:uS/58=厘米 或 uS/148=英寸 或 距离=高电平时间*声速(340M/S)12:
 +
*建议测量周期为60ms 以上,以防止发射信号对回响信号的影响。
 +
 
 
=== US-100 ===
 
=== US-100 ===
 +
==== 引脚说明 ====
 
*[[File:Ultrasonic Distance Sensor _US-100.jpg|600px]]
 
*[[File:Ultrasonic Distance Sensor _US-100.jpg|600px]]
*'''引脚说明'''
+
**1、VCC:电源正极,接电压2.4V-5.5V
**1、VCC:
+
**2、Trig/Tx:接收MCU发送的控制脉冲
**2、
+
***GPIO模式:Trig 触发信号,接外部电路的Trig端
**3、
+
***UART模式:Tx 接收信号,接外部电路的Tx端
**4、
+
**3、Echo/Rx:向MCU发送数据脉冲
 +
***GPIO模式:Echo 反馈信号,接外部电路的Echo端
 +
***UART模式:Rx 发射信号,接外部电路的Rx端
 +
**4、GND:电源负极,接地
 +
**5、GND:电源负极,接地
 
*'''功能选择端说明'''
 
*'''功能选择端说明'''
 +
**插上跳线帽时,为UART模式
 +
**拔掉跳线帽时,为GPIO模式
 +
 +
==== 操作说明 ====
 +
*'''GPIO测距模式'''
 +
**[[File:Ultrasonic Distance Sensor (US-100)_1.png|600px]]
 +
**在模块上电前,应先去掉模式选择跳线上的跳线帽,使模块处于电平触发模式。
 +
**在 Trig/TX 管脚输入一个10US以上的高电平,系统便可发出8个40KHZ的超声波脉冲,然后检测回波信号。
 +
**当检测到回波信号后,模块还要进行温度值的测量,然后根据当前温度对测距结果进行校正,将校正后的结果通过Echo/RX 管脚输出。
 +
**在此模式下,模块将距离值转化为340m/s时的时间值的2倍,通过 Echo 端输出一高电平,可根据此高电平的持续时间来计算距离值。
 +
**即距离值为:(高电平时间*340m/s)/2。
 +
**注:因为距离值已经经过温度校正,此时无需再根据环境温度对超声波声速进行校正,即不管温度多少,声速选择340m/s 即可。
 +
 +
*'''UART测距模式'''
 +
**[[File:Ultrasonic Distance Sensor (US-100)_2.png|600px]]
 +
**在模块上电前,应先插上模式选择跳线上的跳线帽,使模块处于串口触发模式。
 +
**在 Trig/TX 管脚输入 0X55 (波特率 9600),系统便可发出8个40KHZ的超声波脉冲,然后检测回波信号。
 +
**当检测到回波信号后,模块还要进行温度值的测量,然后根据当前温度对测距结果进行校正,将校正后的结果通过 Echo/RX管脚输出。
 +
**输出的距离值共两个字节,第一个字节是距离的高 8 位(HDate),第二个字节为距离的低 8 位(LData),单位为毫米。
 +
**即距离值为 (HData*256 +LData)mm。
 +
 +
*'''UART测温模式'''
 +
**[[File:Ultrasonic Distance Sensor (US-100)_3.png|600px]]
 +
**在模块上电前,应先插上模式选择跳线上的跳线帽,使模块处于串口触发模式。
 +
**在 Trig/TX 管脚输入 0X50 (波特率 9600),系统便启动温度传感器对当前温度进行测量,然后将温度值通过 Echo/RX 管脚输出。
 +
**测量完成温度后,本模块会返回一个字节的温度值(TData),实际的温度值为 TData-45。
 +
**例如通过 TX 发送完0X50 后,在 RX 端收到 0X45,则此时的温度值为69(0X45的10进制值)- 45 = 24度。
  
 
== 原理图 ==
 
== 原理图 ==
第78行: 第143行:
 
*[[:File:Ultrasonic Distance Sensor (HY-SRF05)_原理图.pdf|HY-SRF05]]
 
*[[:File:Ultrasonic Distance Sensor (HY-SRF05)_原理图.pdf|HY-SRF05]]
 
*[[:File:Ultrasonic Distance Sensor (US-100)_原理图.pdf|US-100]]
 
*[[:File:Ultrasonic Distance Sensor (US-100)_原理图.pdf|US-100]]
 +
 +
== 使用手册 ==
 +
*[[:File:HC-SR04(2020款).pdf|HC-SR04]]
 +
*[[:File:HY-SRF05 使用手册明书.pdf|HY-SRF05]]
 +
*[[:File:US100产品介绍V2.01.pdf|US-100]]
  
 
== 参考例程 ==
 
== 参考例程 ==

2023年5月6日 (六) 16:44的最新版本

Ultrasonic Distance Sensor
Ultrasonic Distance Sensor (HC-SR04).jpg

Ultrasonic Distance Sensor (HC-SR04)


Ultrasonic Distance Sensor (HY-SRF05).jpg

Ultrasonic Distance Sensor (HY-SRF05)


Ultrasonic Distance Sensor (US-100).jpg

Ultrasonic Distance Sensor (US-100)

基本信息

分类: 传感器

品牌: 丢石头

功能简介
特性
  • 超声波传感器

接口

UART接口 IIC接口 I/O口

相关产品

{{{related}}}

产品概述

超声波模块主要是由两个通用的压电陶瓷超声传感器,并加外围信号处理电路构成的。具体为:两个压电陶瓷超声传感器一个用于发出超声波信号,一个用于接收反射回来的超声波信号。由于发出信号和接收信号都比较微弱,所以需要通过外围信号放大器提高发出信号的功率,和将反射回来信号进行放大,以能更稳定地将信号传输给单片机。超声波模块常用于机器人避障、物体测距、液位检测、公共安防、停车场检测等场所。

工作原理

超声波测距原理是在超声波发射装置发出超声波,它的根据是接收器接到超声波时的时间差,与雷达测距原理相似。 超声波发射器向某一方向发射超声波,在发射时刻的同时开始计时,超声波在空气中传播,途中碰到障碍物就立即返回来,超声波接收器收到反射波就立即停止计时。(超声波在空气中的传播速度为340m/s,根据计时器记录的时间t,就可以计算出发射点距障碍物的距离(s),即:s=340t/200)

    • Ultrasonic Distance Sensor 原理.png

参数说明

  • Ultrasonic Distance Sensor 参数说明.png

使用说明

HC-SR04

引脚说明

  • Ultrasonic Distance Sensor HC-SR04.jpg
  • 引脚说明
    • 1、VCC:电源正极,接电压3V-5.5V
    • 2、Trig/Rx/SCL/ I/O:接收MCU发送的控制脉冲
      • GPIO模式:Trig 触发信号,接外部电路的Trig端
      • UART模式:Rx 接收信号,接外部电路的Tx端
      • IIC模式:SCL 时钟信号,接外部电路的SCL端
      • 1-Wire模式:I/O 接收/发送信号
    • 3、Echo/Tx/SDA:向MCU发送数据脉冲
      • GPIO模式:Echo 反馈信号,接外部电路的Echo端
      • UART模式:Tx 发射信号,接外部电路的Rx端
      • IIC模式:SDA 数据信号,接外部电路的SDA端
    • 4、GND:电源负极,接地
  • 功能选择端说明
    • Ultrasonic Distance Sensor (HC-SR04) 引脚说明.png

操作说明

  • 实际应用,如果需要精确距离值,必需要考虑温度影响,做温度补偿
  • GPIO模式
    • Ultrasonic Distance Sensor (HC-SR04) GPIO.png
    • 工作模式同老版本HC-SR04。外部MCU给模块Trig脚一个大于10uS的高电平脉冲;模块会给出一个与距离等比的高电平脉冲信号,
    • 可根据脉宽时间“T”算出:距离=T*C/2 (C为声速)
    • 声速温度公式:c=(331.45+0.61t/℃)m•s-1 (其中330.45是在0℃) 其中:
      • 0℃声速: 330.45M/S
      • 20℃声速: 342.62M/S
      • 40℃声速: 354.85M/S
      • 0℃-40℃声速误差7%左右。
  • UART模式
    • UART模式:波特率9600,起始位1位,停止位1位,数据位8位,无奇偶校验位,无流控制
    • 连接串口。外部MCU或PC发命令0XA0,模块完成测距后发3个返回距离数据,BYTE_H,BYTE_M与BYTE_L。
    • 距离计算方式如下(单位mm):
      • 距离=((BYTE_H<<16)+(BYTE_M<<8)+ BYTE_L)/1000
  • IIC模式
    • IIC地址: 0X57
    • IIC传输格式:
      • 写数据:Ultrasonic Distance Sensor (HC-SR04) IIC 1.png
      • 读数据:Ultrasonic Distance Sensor (HC-SR04) IIC 2.png
    • 命令格式:Ultrasonic Distance Sensor (HC-SR04) IIC.jpg
    • 向模块写入0X01,模块开始测距;等待200mS(模块最大测距时间)以上。直接读出3个距离数据。BYTE_H,BYTE_M与BYTE_L。
    • 距离计算方式如下(单位mm):距离=((BYTE_H<<16)+(BYTE_M<<8)+ BYTE_L)/1000

HY-SRF05

引脚说明

  • Ultrasonic Distance Sensor HY-SRF05.jpg
  • 引脚说明
    • 1、VCC:电源正极,接电压5V DC
    • 2、Trig:触发信号,接收MCU发送的控制脉冲
    • 3、Echo:反馈信号,向MCU发送数据脉冲
    • 4、OUT:开关量输出端
    • 5、GND:电源负极,接地

操作说明

  • Ultrasonic Distance Sensor (HC-SR04) GPIO.png
  • MCU通过Trig端口向模块提供一个10uS 以上脉冲触发信号。
  • 模块内部自动发出8个40kHz周期的方波信号,检测是否有信号返回。
  • 检测到有回波信号则通过Echo端口输出回响信号。回响信号的脉冲宽度与所测的距离成正比。
  • 发射信号到收到的回响信号时间间隔可以计算得到距离。
  • 公式:uS/58=厘米 或 uS/148=英寸 或 距离=高电平时间*声速(340M/S)12:
  • 建议测量周期为60ms 以上,以防止发射信号对回响信号的影响。

US-100

引脚说明

  • Ultrasonic Distance Sensor US-100.jpg
    • 1、VCC:电源正极,接电压2.4V-5.5V
    • 2、Trig/Tx:接收MCU发送的控制脉冲
      • GPIO模式:Trig 触发信号,接外部电路的Trig端
      • UART模式:Tx 接收信号,接外部电路的Tx端
    • 3、Echo/Rx:向MCU发送数据脉冲
      • GPIO模式:Echo 反馈信号,接外部电路的Echo端
      • UART模式:Rx 发射信号,接外部电路的Rx端
    • 4、GND:电源负极,接地
    • 5、GND:电源负极,接地
  • 功能选择端说明
    • 插上跳线帽时,为UART模式
    • 拔掉跳线帽时,为GPIO模式

操作说明

  • GPIO测距模式
    • Ultrasonic Distance Sensor (US-100) 1.png
    • 在模块上电前,应先去掉模式选择跳线上的跳线帽,使模块处于电平触发模式。
    • 在 Trig/TX 管脚输入一个10US以上的高电平,系统便可发出8个40KHZ的超声波脉冲,然后检测回波信号。
    • 当检测到回波信号后,模块还要进行温度值的测量,然后根据当前温度对测距结果进行校正,将校正后的结果通过Echo/RX 管脚输出。
    • 在此模式下,模块将距离值转化为340m/s时的时间值的2倍,通过 Echo 端输出一高电平,可根据此高电平的持续时间来计算距离值。
    • 即距离值为:(高电平时间*340m/s)/2。
    • 注:因为距离值已经经过温度校正,此时无需再根据环境温度对超声波声速进行校正,即不管温度多少,声速选择340m/s 即可。
  • UART测距模式
    • Ultrasonic Distance Sensor (US-100) 2.png
    • 在模块上电前,应先插上模式选择跳线上的跳线帽,使模块处于串口触发模式。
    • 在 Trig/TX 管脚输入 0X55 (波特率 9600),系统便可发出8个40KHZ的超声波脉冲,然后检测回波信号。
    • 当检测到回波信号后,模块还要进行温度值的测量,然后根据当前温度对测距结果进行校正,将校正后的结果通过 Echo/RX管脚输出。
    • 输出的距离值共两个字节,第一个字节是距离的高 8 位(HDate),第二个字节为距离的低 8 位(LData),单位为毫米。
    • 即距离值为 (HData*256 +LData)mm。
  • UART测温模式
    • Ultrasonic Distance Sensor (US-100) 3.png
    • 在模块上电前,应先插上模式选择跳线上的跳线帽,使模块处于串口触发模式。
    • 在 Trig/TX 管脚输入 0X50 (波特率 9600),系统便启动温度传感器对当前温度进行测量,然后将温度值通过 Echo/RX 管脚输出。
    • 测量完成温度后,本模块会返回一个字节的温度值(TData),实际的温度值为 TData-45。
    • 例如通过 TX 发送完0X50 后,在 RX 端收到 0X45,则此时的温度值为69(0X45的10进制值)- 45 = 24度。

原理图

使用手册

参考例程

注意事项

  • 此模块不宜带电连接,如果要带电连接,则先连接模块的GND。
  • 如果测试面不是很规则或测试远距离物体时,可采用多次测量的方法来校正。
  • 两次测试间隔要不小于200ms。

FAQ

Icon-mail.png 联系 丢石头

我们的工作时间是: 09:00-18:00 (UTC+8 周一到周六)