基于Arduino的测距仪和温湿度监视

本文介绍了如何利用Arduino Nano、SR-04超声波测距模块和DH11温湿度传感器制作测距仪和温湿度监视器。通过SR-04模块进行测距,并使用DH11传感器获取环境温湿度,配合OLED屏幕显示数据,文中还详细讲解了接线、代码实现和演示过程。
摘要由CSDN通过智能技术生成

引言

本文介绍了如何基于Arduino制作超声波测距仪和温湿度监视,使用的零部件如下:

  • Arduino Nano
  • SR-04超声波测距模块
  • I2C 0.91 OLED
  • DH11温湿度传感器

使用的Arduino库包括Adafruit_SSD1306,Adafruit-GFX-Library,DHTlibAdafruit_SSD1306Adafruit-GFX-Library用于OLED屏控制,DHTlib用于DH11温湿度传感器。

零部件简介

SR-04超声波测距模块

SR-04超声波测距模块测距精确,还很便宜,在各种DIY中广泛应用。模块的测距原理比较简单,首先在TRIG控制口发一个10US以上的高电平,然后在ECHO接收口等待高电平输出,一有输出就可以开定时器计时,当此口变为低电平时就可以读定时器的值,该值即为声音来回的时间,根据下面的公式就可计算出距离。

测试距离=(声音来回时间乘以声速)/2

声音在各介质中传播速度不同,正常使用SR-04超声波测距模块均在空气中,所以该处声速取 340 m/s 。

注意SR-04超声波测距模块最大测距为4.5米,精度0.2厘米。

DH11温湿度传感器

DHT11温湿度传感器包括一个电阻式感湿元件和一个NTC测温元件,可以检测周围环境的湿度和温度。如果想要更高的测量范围和测量精度,可以选择DHT22温湿度传感器。

  • DHT11参数
湿度测量范围 湿度测量误差 温度测量范围 温度测量误差
20%-80% ±5% 0度-50度 ±2度
  • DHT22参数
湿度测量范围 湿度测量误差 温度测量范围 温度测量误差
0%-100% ±2% -40度-125度 ±0.5度

超声波测距

接线

代码
#include <Adafruit_GFX.h>  
#include <Adafruit_SSD1306.h>  

Adafruit_SSD1306 display(128, 64);  

int trigPin = 6;   
int echoPin = 7; 
long aver[3];
long duration, distance;

void setup()  
{
                   
  delay(100);
  display.begin(SSD1306_SWITCHCAPVCC, 0x3C);  
  display.clearDisplay(); 
  display.setTextColor(WHIT
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值