温湿度传感器——室内温湿度检测环境系统

目的:
1.编写温湿度传感器 DHT11 程序,实时读取环境温湿度并显示于 PC 串行端口监控窗口。并由监控窗口输入温度值, 当温度超限时,启动面包板上的风扇转动。
2.理解温湿度传感器的原理,并学会灵活运用温湿度传感器,结合其它传感器做一系列的探究。
原理图:
在这里插入图片描述实验中接入了电机作为判定温湿度传感器的灵敏性
如图:
在这里插入图片描述串口显示
在这里插入图片描述

在这里插入图片描述流程图:
在这里插入图片描述
代码:
#include “DHT.h”
#define dhtPin 8 //讀取DHT11 Data
#define dhtType DHT11 //選用DHT11
#define FUN_D 2
DHT dht(dhtPin, dhtType); // Initialize DHT sensor
int data=9999;

void setup() {
Serial.begin(9600);//設定鮑率9600
dht.begin();//啟動DHT
pinMode(FUN_D,OUTPUT);
}

void loop() {
float h = dht.readHumidity();//讀取濕度
float t = dht.readTemperature();//讀取攝氏溫度
float f = dht.readTemperature(true);//讀取華氏溫度
if(Serial.available()>0){
data=Serial.parseInt();
Serial.println(data);
while(Serial.read()>= 0){}
}
if(t>data){
digitalWrite(FUN_D, HIGH);
}
else{
digitalWrite(FUN_D, LOW);
}

if (isnan(h) || isnan(t) || isnan(f)) {
Serial.println(“無法從DHT傳感器讀取!”);
return;
}
Serial.print(“当前设定转动温度: “);
Serial.print(data);
Serial.print(” 濕度: “);
Serial.print(h);
Serial.print(”%\t”);
Serial.print(“攝氏溫度: “);
Serial.print(t);
Serial.print(”*C\t”);
Serial.print(“華氏溫度: “);
Serial.print(f);
Serial.print(”*F\n”);
delay(5000);//延時5秒
}

这个小实验还可以用来设计一个小风扇,写着作业,吹着自己设计的小风扇也是很美的呀