电子发烧友App

硬声App

0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示
电子发烧友网>电子资料下载>电子资料>使用Arduino IDE的ESP8266温度湿度监控网络应用程序

使用Arduino IDE的ESP8266温度湿度监控网络应用程序

2022-12-22 | zip | 0.03 MB | 次下载 | 免费

资料介绍

描述

 
 
poYBAGOjtqCAfPm1AAHHB9JmxDM909.jpg
 
1 / 3ESP8266 天气监测
 

上周我收到了一个 ESP8266(adafruit)。新的 ESP8266 具有 arduino 引导加载程序,因此可以将 arduino 代码直接编程到 ESP8266 中。这个 ESP8266 带有 UARTI2C 和 GPIO。有了这个新的 wifi 模块,你不需要任何 arduino 板,你可以直接用它做任何事情。该模块上没有任何 USB 端口,因此有两种方法可以解决此问题。您可以购买 USB 转串口电缆,也可以自己制作带有 USB 转串口转换器的适配器,然后将 ESP8266 直接插入其中。我的 ESP8266 程序r smiler 可以在这里找到。

第 1 步:硬件

 
 
 
 
pYYBAGOjtquAcmMYAAGcd_WMcO8305.jpg
 
1 / 3ESP8266 温度湿度
 

您将需要以下硬件

1.ESP8266 _

2.湿度传感器HIH6130

3. ESP8266 USB编程器

4.连接电缆

第 2 步:接线和原理图

 
 
 
 
poYBAGOjtq2ATqwjAABp4HMK2Cg340.jpg
 
1 / 4ESP8266 I2C 引出线
 

在这个项目中,我使用的是即插即用硬件,所以您只需将 I2C 电缆插入传感器和 ESP8266 适配器即可。

对于 I2C,我使用的是引脚 2,14。

第 3 步:硬件设置

 
 
 
 
pYYBAGOjtrmAVh1HAAGpWW38B9M532.jpg
 
1 / 3ESP8266 编程扩展板
 

使用 USB 编程器非常容易对 ESP8266 进行编程。要连接传感器,您只需将传感器插入 I2C 适配器即可。我更喜欢使用这些适配器,因为它们很容易连接硬件,没有这些即插即用适配器,连接错误的风险很大。接线不良会损坏您的 wifi 和传感器。

HIH6130是霍尼韦尔的相对湿度和温度传感器

精度 ±4.0% 相对湿度

温度补偿

Honeywell HumidIcon 数字湿度/温度传感器是组合在同一封装中的数字输出型相对湿度和温度传感器。这些传感器提供 ±4% RH 的精度水平。具有行业领先的长期稳定性、真正的温度补偿数字 I2C、行业领先的可靠性、能效以及超小封装尺寸和选项。其他可用精度:±1.7% RH(HIH9000 系列)、±2.0% RH(HIH8000 系列)、±3.0% RH(HIH7000 系列)和±4.0% RH(HIH6100 系列)。

第 4 步:软件设置

 
 
 
 
pYYBAGOjtr-AXzvnAAB7iZbu3is624.jpg
 
1 / 2ESP8266 arduino ide
 

这个 ESP8266 可以使用 arduino ide 编程。

确保安装 ESP8266 库。要安装库,请按照这些说明进行操作。

安装库后,选择 ESP8266 板并选择端口并上传代码。

第 5 步:代码

 
 
 
 
poYBAGOjtsmAcZ2NAAFlMda8o5Y386.jpg
 
1 / 2esp8266 arduino 网络应用程序
 

为了在网页上显示传感器 o/p,我编写了一个非常基本的脚本,它将读取传感器数据并显示在浏览器中。

ESP8266 网络应用程序代码示例

#include 
#include
#include 
#include
#include 
// HIH6130 I2C address is 0x27(39)
#define Addr 0x27
const char* ssid     = "NETGEAR34";
const char* password = "sillyviolet195";
ESP8266WebServer server ( 80 );
////////////////////////////////////////////////////////////////
void handleRoot() {
 char temp[400];
 unsigned int data[4];
  Wire.beginTransmission(Addr);
 // Select data register
 Wire.write(0x00);
 // Stop I2C Transmission
 Wire.endTransmission();  // Request 4 bytes of data
 Wire.requestFrom(Addr, 4);  // Read 4 bytes of data
 // humidity msb, humidity lsb, temp msb, temp lsb
 if (Wire.available() == 4)
 {
   data[0] = Wire.read();
   data[1] = Wire.read();
   data[2] = Wire.read();
   data[3] = Wire.read();
 }  // Convert the data to 14-bits
 int humidity = ((((data[0] & 0x3F) * 256) + data[1]) * 100.0) / 16383.0;
 int temp1 = ((data[2] * 256) + (data[3] & 0xFC)) / 4;
 int cTemp = (temp1 / 16384.0) * 165.0 - 40.0;
 int fTemp = cTemp * 1.8 + 32;  // Output data to serial monitor
 Serial.print("Relative Humidity :");
 Serial.print(humidity);
 Serial.println(" %RH");
 Serial.print("Temperature in Celsius :");
 Serial.print(cTemp);
 Serial.println(" C");
 Serial.print("Temperature in Fahrenheit :");
 Serial.print(fTemp);
 Serial.println(" F");
 delay(500); snprintf ( temp, 400,"
\
 
\
   
\
   
\
   
\
 \
 
\
   
Weather Monitoring using ESP8266\
   
HIH6130 I2C sensor mini Module\
   
fTemp_cTemp_Humidity: %02d:%02d:%02d\
   \
",    fTemp, cTemp, humidity
 );
 
 server.send ( 200, "text/html", temp );
 }
/////////////////////////////////////////////////////////////////
void handleNotFound() {
 String message = "File Not Found\n\n";
 message += "URI: ";
 message += server.uri();
 message += "\nMethod: ";
 message += ( server.method() == HTTP_GET ) ? "GET" : "POST";
 message += "\nArguments: ";
 message += server.args();
 message += "\n";  for ( uint8_t i = 0; i < server.args(); i++ ) {
   message += " " + server.argName ( i ) + ": " + server.arg ( i ) + "\n";
 }  server.send ( 404, "text/plain", message );
}void setup ( void ) {
 Wire.begin(2,14);
 Serial.begin ( 115200 );
 WiFi.begin ( ssid, password );
 Serial.println ( "" );  // Wait for connection
 while ( WiFi.status() != WL_CONNECTED ) {
   delay ( 500 );
   Serial.print ( "." );
 }  Serial.println ( "" );
 Serial.print ( "Connected to " );
 Serial.println ( ssid );
 Serial.print ( "IP address: " );
 Serial.println ( WiFi.localIP() );  if ( MDNS.begin ( "esp8266" ) ) {
   Serial.println ( "MDNS responder started" );
 }  server.on ( "/", handleRoot ); 
 server.onNotFound ( handleNotFound );
 server.begin();
 Serial.println ( "HTTP server started" );
}void loop ( void ) {
 server.handleClient();
}

第 6 步:ESP8266 网络应用

 
 
 
 
pYYBAGOjts2AP607AAA7toQYm0w046.jpg
 
1 / 4ESP8266 网络应用
 

我没有太多 exp 与 html。所以我只是写了一个简单的示例应用程序,说明如何将传感器数据从 ESP8266 显示到网页。

此代码将使用传感器 HIH6130 读取温度和湿度,并将数据显示在本地网页上。

读取传感器数据真的很容易。请检查此代码以读取温度和湿度。

第 7 步:传感器输出

 
poYBAGOjttKAAwGHAAC9PKDqo7c632.jpg
ESP8266 HTML
 

我在 arduino 串行监视器以及本地网页上显示了传感器数据。

如您所见,它们显示相同的输出。

如果您有任何问题,请告诉我。


下载该资料的人也在下载 下载该资料的人还在阅读
更多 >

评论

查看更多

下载排行

本周

  1. 1山景DSP芯片AP8248A2数据手册
  2. 1.06 MB  |  532次下载  |  免费
  3. 2RK3399完整板原理图(支持平板,盒子VR)
  4. 3.28 MB  |  339次下载  |  免费
  5. 3TC358743XBG评估板参考手册
  6. 1.36 MB  |  330次下载  |  免费
  7. 4DFM软件使用教程
  8. 0.84 MB  |  295次下载  |  免费
  9. 5元宇宙深度解析—未来的未来-风口还是泡沫
  10. 6.40 MB  |  227次下载  |  免费
  11. 6迪文DGUS开发指南
  12. 31.67 MB  |  194次下载  |  免费
  13. 7元宇宙底层硬件系列报告
  14. 13.42 MB  |  182次下载  |  免费
  15. 8FP5207XR-G1中文应用手册
  16. 1.09 MB  |  178次下载  |  免费

本月

  1. 1OrCAD10.5下载OrCAD10.5中文版软件
  2. 0.00 MB  |  234315次下载  |  免费
  3. 2555集成电路应用800例(新编版)
  4. 0.00 MB  |  33566次下载  |  免费
  5. 3接口电路图大全
  6. 未知  |  30323次下载  |  免费
  7. 4开关电源设计实例指南
  8. 未知  |  21549次下载  |  免费
  9. 5电气工程师手册免费下载(新编第二版pdf电子书)
  10. 0.00 MB  |  15349次下载  |  免费
  11. 6数字电路基础pdf(下载)
  12. 未知  |  13750次下载  |  免费
  13. 7电子制作实例集锦 下载
  14. 未知  |  8113次下载  |  免费
  15. 8《LED驱动电路设计》 温德尔著
  16. 0.00 MB  |  6656次下载  |  免费

总榜

  1. 1matlab软件下载入口
  2. 未知  |  935054次下载  |  免费
  3. 2protel99se软件下载(可英文版转中文版)
  4. 78.1 MB  |  537798次下载  |  免费
  5. 3MATLAB 7.1 下载 (含软件介绍)
  6. 未知  |  420027次下载  |  免费
  7. 4OrCAD10.5下载OrCAD10.5中文版软件
  8. 0.00 MB  |  234315次下载  |  免费
  9. 5Altium DXP2002下载入口
  10. 未知  |  233046次下载  |  免费
  11. 6电路仿真软件multisim 10.0免费下载
  12. 340992  |  191187次下载  |  免费
  13. 7十天学会AVR单片机与C语言视频教程 下载
  14. 158M  |  183279次下载  |  免费
  15. 8proe5.0野火版下载(中文版免费下载)
  16. 未知  |  138040次下载  |  免费