物联网AI MicroPython传感器学习 之 HCSR04超声波测距传感器

学物联网,来万物简单IoT物联网!!在这里插入图片描述

一、产品简介

HC-SR04超声波传感器使用声纳来确定物体的距离,其工作原理类似与蝙蝠。测量范围从2厘米到450厘米, HC-SR04超声波传感器上配有超声波发射器和接收器两个模块。
超声波测距传感器是数字接口类型,其基本工作过程如下:

  • 发射器(触发引脚-Trig),发送信号 一段高频声音
  • 当信号遇到一个物体时,它会被反射
  • 然后发射器(回声引脚-Echo)接收该信号

image.png
引脚定义

  • VCC:DC-5V
  • Trig:触发(输入)
  • Echo:回声(输出)
  • GND:地

二、技术参数

  • 电源:+ 5V DC
  • 静态电流:<2mA
  • 工作电流:15mA
  • 有效角度:<15°
  • 测距:2厘米 - 450厘米
  • 分辨率:0.3厘米
  • 测量角度:30度
  • 触发输入脉冲宽度:10uS
  • 尺寸:45mm x 20mm x 15mm

三、软件接口

HCSR04(trigObj,echoObj) - 创建HCSR04超声波传感器对象

  • 函数原型

hcsr04Obj = HCSR04(trigObj,echoObj)

  • 参数说明
参数类型必选参数?说明
trigObjGPIOGPIO配置输出,触发引脚,传入GPIO对象
echoObjGPIOGPIO配置输入,测量引脚,传入GPIO对象
  • 返回值

HCSR04对象成功,返回HCSR04对象;HCSR04对象创建失败,抛出Exception

  • 示例代码
import hcsr04
from machine import Pin

echoObj = Pin(2, Pin.IN, Pin.PULL_UP)
trigObj = Pin(3, Pin.OUT)
hcsr04Obj = hcsr04.HCSR04(trigObj,echoObj)
print("Testing HCSR04 ...")
  • 输出
Testing HCSR04 ...

measureDistance() - 获取超声波测量的距离

  • 函数功能:

获取超声波测量的距离

  • 函数原型:

HCSR04.measureDistance()

  • 参数说明:

  • 返回值:

返回值为cm单位的距离值

  • 示例:
import hcsr04
from machine import Pin
import utime

echoObj = Pin(2, Pin.IN, Pin.PULL_UP)
trigObj = Pin(3, Pin.OUT)
hcsr04Obj = hcsr04.HCSR04(trigObj,echoObj)
print("Testing HCSR04 ...")
while True:             # 无限循环
    distance = hcsr04Obj.measureDistance()
    print(str(distance)+' CM')
    utime.sleep(1)      # 打印完之后休眠1秒
  • 输出
Testing HCSR04 ...
34 CM
492 CM

四、接口案例

  • 案例代码
import hcsr04
from machine import Pin
import utime

echoObj = Pin(2, Pin.IN, Pin.PULL_UP)
trigObj = Pin(3, Pin.OUT)
hcsr04Obj = hcsr04.HCSR04(trigObj,echoObj)
print("Testing HCSR04 ...")
while True:             # 无限循环
    distance = hcsr04Obj.measureDistance()
    print(str(distance)+' CM')
    utime.sleep(1)      # 打印完之后休眠1秒
  • 输出
Testing HCSR04 ...
34 CM
492 CM

五、工作原理

超声波工作示意图

image.png

基本原理

  • 采用IO口Trig触发测距,对Trig口输出至少10us的高电平
  • 模块自动发送8个40Khz的方波,自动检测是否有信号返回
  • 有信号返回,通过IO口Echo输出一个高电平,高电平持续的时间就是超声波从发送到返回的时间
  • 测试距离 = (高电平持续的时间/声速340m/s)/2

时序原理

image.png

参考文献及购买链接

[1] 购买链接

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值