Maixduino轻松学系列课程:
1、Maixduino轻松学系列 —— (1)初识Maixduino
2、Maixduino轻松学系列 —— (2)Mind+带你畅玩经典红白机游戏
3、Maixduino轻松学系列 —— (3)基于Mind+的简易NTP网络时钟
4、Maixduino轻松学系列 —— (4)基于Mind+的图像识别:人脸检测
5、Maixduino轻松学系列 —— (5)有屏幕的地方就有BAD APPLE
6、Maixduino轻松学系列 —— (6)基于ASR语音识别控制红绿灯
7、Maixduino轻松学系列 —— (7)超声波传感器的认识与使用
前导
超声波技术在我们生活中扮演者重要角色,被广泛应用于各个领域。例如:超声波探伤、超声波清洗、超声波焊接、医生超声检查、超声波加湿器等等。
超声波探伤
超声波清洗
超声医学检查
超声波加湿器
二、设计思路
我们通过4根杜邦线将超声波传感器连接至Maixdunio主控板上,利用LCD屏实时显示超声波传感器返回的测量的距离的数据。
三、结构搭建
(一)所需的原件
序号
所需原件
数量
购买链接
1
超声波传感器模块HC-SR04
1
2
Maixduino AI 开发套件
1
https://www.dfrobot.com.cn/goods-2591.html
3
Type C数据线
1
https://www.dfrobot.com.cn/goods-2977.html
(1)超声波传感器模块
HC-SR04超声波传感器模块
HC-SR04超声波传感器模块性能稳定,测度距离精确,模块高精度,盲区小。产品应用领域:机器人避障、物体测距 、液位检测、公共安防、停车场检测。
产品参数
工作电源:+5V工作电流:15mA工作频率:40KHz有效测距量程:2cm~400cm输入触发信号:10us TTL脉冲输出回响信号:输出TTL电平精度:0.2cm模块尺寸:45*20*12㎜模块引脚
超声波模块有4个引脚,分别为Vcc、 Trig(控制端)、 Echo(接收端)、 GND;其中VCC、GND接上5V电源, Trig(控制端)控制发出的超声波信号,Echo(接收端)接收反射回来的超声波信号。
工作原理
(1)采用IO口TRIG触发测距,给至少10us的高电平信号;
(2)模块自动发送8个40khz的方波,自动检测是否有信号返回;
(3)有信号返回,通过IO口ECHO输出一个高电平,高电平持续的时间就是超声波从发射到返回的时间。测试距离=(高电平时间*声速(340M/S))/2;
(4)本模块使用方法简单,一个控制口发一个10US以上的高电平,就可以在接收口等待高电平输出。一有输出就可以开定时器计时,当此口变为低电平时就可以读定时器的值,此时就为此次测距的时间,方可算出距离。
计算公式:测试距离=(高电平时间*声速(340M/S))/2;
控制时序图:
(2)线路连接
按下图所示,使用四根杜邦线将超声波传感器HC-SR04的4个引脚分别与Maixduino连接。
Maixduino引脚 HC-SR04
2 —— TTrig
3 —— Echo
Vcc —— Vcc
GND —— GND
三、程序实现
通过Mind+完成如下图所示程序编写:
上传,下载运行。
from board import board_info
from sonar import Sonar
import lcd,image
import image
import time
lcd.init()
img = image.Image()
hcsr23 = Sonar(board_info.PIN2, board_info.PIN3)
size = 10
while True:
img.clear()
distance = hcsr23.read('cm')
x = (((5 - len((str(distance)))) * 20) + 20)
img.draw_string(x, 60, (str(distance)), scale=size,color = 0xFFFFFF)
lcd.display(img)
print(distance)
time.sleep(0.5)
总结与改进
1、本课学习了超神波传感器模块工作原理,掌握了超声波传感的使用方法。
2、在此基础上,如果增加电机、舵机、LED灯等元件,可以扩展出超声波避障小车、超声波感应自动开盖垃圾桶、超声波感应自动开盖马桶、超声波感应书写坐姿提醒器、超神波感应智能小夜灯等等。
评论