ESP12E Shield+Arduino UNO R3开发板+DHT11温湿度模块+双色LED灯+有源蜂鸣器+光敏电阻模块+I2CLCD1602液晶显示器所构成的室内检测系统

室内检测系统由ESP12E Shield+Arduino UNO R3开发板+DHT11温湿度模块+双色LED灯+有源蜂鸣器+光敏电阻模块+I2CLCD1602液晶显示器所构成。DHT11温湿度模块获取室内温湿度数据通过I2CLCD1602液晶显示器进行显示,另一方面通过ESP12E Shield将数据上传至云平台。光敏电阻进行捕获室内光照强度,若光照强度过弱,即日光过弱,周围环境太黑暗低于设定的阈值,则有源蜂鸣器警报,双色LED灯变红,正常情况下LED灯为绿色。

一、设备准备

Arduino UNO R3
在这里插入图片描述
I2CLCD1602液晶显示器
在这里插入图片描述
ESP12E Shield
在这里插入图片描述
DHT11温湿度模块
在这里插入图片描述
有源蜂鸣器
在这里插入图片描述
光敏电阻模块
在这里插入图片描述
双色LED灯
在这里插入图片描述

二、设备连接

ESP12E Shield直接覆盖Arduino UNO R3开发板
在这里插入图片描述
DHT11模块

DHT11模块Arduino UNO R3
+5V
-GND
OUTP2

I2CLCD1602液晶显示器

I2CLCD1602液晶显示器Arduino UNO R3
GDNGND
VCC5V
SDAA4
SCLA5

光敏电阻模块

光敏电阻模块Arduino UNO R3
VCC5V
GNDGND
AOA0

有源蜂鸣器

有源蜂鸣器Arduino UNO R3
GNDGND
I/OP7
VCC5V

双色LED灯

双色LED灯Arduino UNO R3
GNDGND
RP11
GP10

三、云平台设置

联网上传至服务器的配置可参考该篇博文
一、Arduino UNO R3将数据上传至云平台
需要添加俩个设备名称分别为humi和temp用于存放温湿度信息
在这里插入图片描述
在这里插入图片描述

四、完整代码

#include <dht.h>
#include <LiquidCrystal_I2C.h>
#include <Wire.h> 
LiquidCrystal_I2C lcd(0x27,16,2);  // set the LCD address to 0x27 and 0x3F for a 16 chars and 2 line display

dht DHT;//create a variable type of dht

const int DHT11_PIN= 2;//Humiture sensor attach to pin2

const int greenPin = 11;  // R petal on RGB LED module connected to digital pin 11 
const int redPin= 10;  // G petal on RGB LED module connected to digital pin 10 

const int photocellPin = A0; //photoresistor module attach to A0
int outputValue = 0;
const int buzzerPin=7;  //buzzer attach to digital 7
int val = 0; 
int wendu=0;
int shidu=0;
void setup()
{
  Serial.begin(9600);
  randomSeed(analogRead(0));
  pinMode(buzzerPin,OUTPUT);
  pinMode(redPin, OUTPUT); //set redPin as OUTPUT
  pinMode(greenPin, OUTPUT);//set greenPin as OUTPUT
  lcd.init();  //initialize the lcd
  lcd.backlight();  //open the backlight 
}

void loop()
{
  // READ DATA
  //Serial.println("DHT11:");
  
D: int chk = DHT.read11(DHT11_PIN);//read the value returned from sensor
  switch (chk)
  {
  case DHTLIB_OK:  
    //Serial.println("OK!"); 
    break;
  case DHTLIB_ERROR_CHECKSUM: 
    //goto D;
    //Serial.print("Checksum error,\t"); 
    break;
  case DHTLIB_ERROR_TIMEOUT: 
    //goto D;
    //Serial.print("Time out error,\t"); 
    break;
  default: 
    // goto D;
    //Serial.print("Unknown error,\t"); 
    break;
  }
  // DISPLAY DATA
  lcd.setCursor(0, 0);
  lcd.print("Tem:");
  //Serial.print("Tem:");
  lcd.print(DHT.temperature,1); //print the temperature on lcd 
  
  wendu = DHT.temperature;
/*
  Serial.print("wendu:");
  Serial.print(wendu);
  Serial.print("\n");
*/
  Serial.print("cmd=upload&device_name=temp&data=");
  Serial.print(wendu);//send a random number
  Serial.println("&uid=beyondyy&key=6d2cc6e3e19efa259a302fcf4166e2ce");


  
  lcd.print(char(223));//print the unit" ℃ "
  lcd.print("C");
  // Serial.println(" C");
  lcd.setCursor(0, 1);
  lcd.print("Hum:");
  //Serial.print("Hum:");
  lcd.print(DHT.humidity,1); //print the humidity on lcd

  shidu = DHT.humidity;
  /*
  Serial.print("shidu:");
  Serial.print(shidu);
  Serial.print("\n");
  */
  Serial.print("cmd=upload&device_name=humi&data=");
  Serial.print(shidu);//send a random number
  Serial.println("&uid=beyondyy&key=6d2cc6e3e19efa259a302fcf4166e2ce");

  lcd.print(" %"); 
  //Serial.println(" %");
  delay(200); //wait a while 

  outputValue = analogRead(photocellPin);//read the value of photoresistor
  //Serial.println(outputValue); //print it in serial monitor
  
  if(outputValue >= 500) //else
  {
    
    digitalWrite(buzzerPin,LOW);
    analogWrite(redPin, 255); //red value decrease
    analogWrite(greenPin, 0); //green value decrease
    delay(100);
    //Serial.println(val, DEC);

  }
  else
  {
    digitalWrite(buzzerPin,HIGH);
    analogWrite(greenPin, 255); //green value decrease
    analogWrite(redPin, 0); //red value decrease
    delay(100);
  }
  delay(1000); //delay 1s

}

所需库下载连接
将下载好的压缩包解压,把文件Dht复制到你的编译器Arduino的libraries文件夹下
在这里插入图片描述

五、视频效果演示

基于Arduino UNO R3开发板的安全检测系统的实现---DHT11数据采集上云

视频链接CSDN
视频链接B站

ESP12E是一款采用乐鑫ESP8266芯片封装的模块,它与ESP-12F(WT8266-S5)具有相似的特性,只是命名上稍有不同。 ESP12E模块是一种Wi-Fi模块,具有连接互联网的能力,可以用于物联网应用。在这个模块上,你提到了i2c,这是一种串行通信协议,用于连接微控制器和外部设备,如传感器和显示屏。关于ESP12Ei2c连接方式,我需要更多的具体信息才能回答你的问题。你可以提供更多关于ESP12E i2c连接方面的细节吗?<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* [启明云端分享:产品应用上,怎么选型ESP-12F\ESP-12E\ESP-12S\ESP-07S这四个模块](https://blog.csdn.net/ami82/article/details/118495127)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *3* [ESP12E Shield+Arduino UNO R3开发板+DHT11温湿度模块+双色LED+有源蜂鸣器+光敏电阻模块+I2CLCD1602液晶...](https://blog.csdn.net/qq_41264055/article/details/124485138)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

beyond谚语

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值