实验目的
了解超声波模块的工作原理
学习使用超声波模块测量距离
实验器材
TPYBoard v202 1块
超声波模块(HC-SR04)1个
micro USB数据线 1条
杜邦线 若干
超声波模块的介绍
实物图
工作原理
(1) 采用IO口Trig触发测距,给最少10us的高电平信号。
(2) 模块自动发送 8 个 40khz 的方波,自动检测是否有信号返回。
(3) 有信号返回,通过 IO 口 Echo 输出一个高电平,高电平持续的时间就是超声波从发射到返回的时间。测试距离=(高电平时间*声速(340M/S))/2。
硬件连接
TPYBoard v002与超声波模块的接线图,如下:
TPYBoard v202 |
超声波模块(HC-SR04) |
+5V |
Vcc |
G5 |
Trig |
G4 |
Echo |
GND |
Gnd |
程序源码如下:
from machine import Pin import time
Trig = Pin(5,Pin.OUT) Echo = Pin(4,Pin.IN) while True: Trig.value(1) time.sleep_us(20) Trig.value(0) while(Echo.value()==0): Trig.value(1) time.sleep_us(20) Trig.value(0) if(Echo.value()==1): ts=time.ticks_us() while(Echo.value()==1): pass te=time.ticks_us() tc=te-ts distance=(tc*0.034)/2 print('Distance:',distance,'cm') time.sleep(2) |
经测试,发现存在一点误差,还请大家多多指正。