全国 【切换城市】欢迎您来到装修百科!
关注我们
我要装修

还在用卷尺测量距离吗?自制一个超声波测距仪,简单易学超实用

发布:2024-07-02 浏览:59

核心提示:大家好,我是机器侠!旨在用最简单的语言,让大家学习更多的知识!前两天要去测量一套毛胚房的相关数据,发现卷尺使用起来很是不方便。便找了一块arduino和超声波传感器设计了超声波测距仪,用于测量距离,考虑到将arduino连接电脑显示数据显然很不可就靠。为了不用电脑就可显示测量出来的数据,所以此次设计的测距仪通过LCD1602显示器对测量数据进行实时显示,以便使用者直接从显示屏上观察数据。超声波传感器简单介绍下超声波测距的原理:超声波顾名思义,它是一种超过人耳听力范围的一种声波,所以我们人耳是无法听到的,是

大家好,我是机器侠!旨在用最简单的语言,让大家学习更多的知识!前两天要去测量一套毛胚房的相关数据,发现卷尺使用起来很是不方便。
便找了一块arduino和超声波传感器设计了超声波测距仪,用于测量距离,考虑到将arduino连接电脑显示数据显然很不可就靠。
为了不用电脑就可显示测量出来的数据,所以此次设计的测距仪通过LCD1602显示器对测量数据进行实时显示,以便使用者直接从显示屏上观察数据。
超声波传感器简单介绍下超声波测距的原理:超声波顾名思义,它是一种超过人耳听力范围的一种声波,所以我们人耳是无法听到的,是一种频率高于20000赫兹的声波,它的特性是方向性好,穿透能力强,如今已经超声波已经广泛应用于测距、测速等方面。
超声波也是属于声音,所以它在空气中传播的速度为340m/s,可以利用时间差测距法进行距离测算,所以超声波传感器可以根据计时器记录的时间t,就可以计算出发射点距障碍物的距离s,即:s=340m/s× t / 2 。
超声波测距原理需要准备以下相关材料:arduino一块(此次实验我用的arduino uno,也可以使用其它型号的arduino,当然体 积越小越好,推荐用arduino por mini,价格便宜体积小,自带的端口也基本够用)USB 2.0数据线(用于arduino与电脑连接,进行程序下载和调试)超声波传感器一个(此次实验我用的型号是HC-SR04)显示屏一块(此次实验我用的型号是lcd1602)杜邦线若干9V的电池一块(包含与arduino连接的DC端口)arduino uno如下图所示,首先将arduino uno与超声波传感器相连接。
连接方法:传感器电源正极VCC——5v正极传感器触发控制端Trig——D7数字口传感器接收端Echo——D6数字口传感器电源地GND——5v负极 arduino与超声波传感器连接图对于电子爱好者来说,基本上对液晶显示模块都不陌生。
常见的液晶显示屏幕有LCD1602和LCD12864等,它们都是由若干个字符点阵位组成的,一个点阵位可以显示一个字母、数字或文字。
接下来就是将LCD1602连接到arduino uno上,LCD1602上有16个引脚,其中在于arduino uno链接时,是不需要全部接入的,如下图为LCD1602的引脚说明图。
lcd1602引脚说明连接方法:LCD1602 RS端口——D12数字口LCD1602 E端口——D11数字口LCD1602 D4端口——D5数字口LCD1602 D5端口——D4数字口LCD1602 D6端口——D3数字口LCD1602 D7端口——D2数字口LCD1602 BLA(背光电源正极)端口和VDD电源正极——5V正极LCD1602 BLA(背光电源正极)端口和GND电源负极——5V负极其它引脚滞空连接图最后就是程序的设计,打开arduino IDE,将代码下载到arduino中,就可以实现相应的测距功能了。
其中本程序加载了<LiquidCrystal.h>库函数,附上全部代码:#include <LiquidCrystal.h> //库函数LiquidCrystal lcd(12, 11, 5, 4, 3, 2);const int TrigPin = 7;const int EchoPin = 6;float cm;void setup() {lcd. begin(16, 2);pinMode(TrigPin, OUTPUT);pinMode(EchoPin, INPUT) ;}void loop(){digitalWrite(TrigPin, LOW); //低高低电平发一个短时间脉冲去TrigPindelayMicroseconds(2);digitalWrite(TrigPin, HIGH);delayMicroseconds(10);digitalWrite (TrigPin, LOW);int timer=-500;cm=pulseIn(EchoPin, HIGH)/58.0; //将回波时间换算成cmcm=(int (cm*100.0))/100.0; //保留两位小数delay(500);if(millis()>timer +500){lcd. print ("Dist:");lcd. setCursor(6,1);lcd. print (cm);lcd. print ("cm ");lcd. home();timer=millis()+500;}}附上实物图:测距实物图到此为止,一个超声波测试仪就大功告成啦,其中部分内容只是简单说明,有些新手朋友看着肯定有点吃力,不过没关系。
后面会对相应的一些模块进行分开详细解释和说明。

  • 收藏

分享给我的朋友们:

上一篇:[监测传感设备] 超声测距仪 下一篇:天燃气热水器选购注意什么 天燃气热水器的禁忌是什么

一键免费领取报价清单 专享六大服务礼包

装修全程保障

免费户型设计+免费装修报价

已有312290人领取

关键字: 装修报价 装修网 装修风格

发布招标得免费设计

申请装修立省30%

更多装修专区

点击排行