查看: 640|回复: 1

【零知ESP8266】Blynk手机APP教程:监控室内温湿度

[复制链接]
  • TA的每日心情

    2019-7-27 17:15
  • 签到天数: 14 天

    [LV.3]偶尔看看II

    发表于 2019-6-13 15:20 | 显示全部楼层 |阅读模式
    本帖最后由 lz-esp-link 于 2019-6-19 10:59 编辑

    本次将使用blynk app+服务器(本地) + 零知ESP8266开发板的组合方式,通过手机APP来观察由ESP8266获取的温湿度情况。
    1、准备
    (1)零知ESP8266开发板
    (2)SHT30温湿度模块
    (3)零知开源开发工具
    开发工具.png
    2、电路连接
    线路很简单:
    电路连接.jpg
    实物连接:
    实物连接.jpg
    3、手机APP端
    设置手机端Blynk可参考:http://www.lingzhilab.com/bbs/index/showonepostz?pid=356
    我们需要两个组件分别显示温度和湿度信息,做好后界面如下:
    手机端.jpg
    页面组件可扫描下方二维码复制我共享的demo:
    二维码demo.png
    4、ESP8266端
    核心代码如下:

    kittenblock中小学创客名师推荐的图形化编程软件

    /* Comment this out to disable prints and save space */
    #define BLYNK_PRINT Serial
     
     
    #include <ESP8266WiFi.h>
    #include <BlynkSimpleEsp8266.h>
     
    // You should get Auth Token in the Blynk App.
    // Go to the Project Settings (nut icon).
    char auth[] = "xx";
     
    // Your WiFi credentials.
    // Set password to "" for open networks.
    char ssid[] = "xx";
    char pass[] = "xx";
     
    char local_domain[] = "192.168.0.111";
     
    /*SHT3X 传感器
    *   使用软I2C接口
    */
    #define SHT3X_SDA D5
    #define SHT3X_SCL D6
     
    #include "SHT3X.h"
    SlowSoftWire shtWire(SHT3X_SDA,SHT3X_SCL,true);
     
    HTU3X myHumidity;
     
    BlynkTimer timer;
    void myTimerEvent()
    {
     
        float humd, temp;
        myHumidity.readTempAndHumi(&temp, &humd);
         
        Serial.print("时间:");
        Serial.print(millis());
        Serial.print(" 温度:");
        Serial.print(temp, 1);
        Serial.print(" °C");
        Serial.print(" 湿度:");
        Serial.print(humd, 1);
        Serial.print("%");
        Serial.println();
         
        Blynk.virtualWrite(V0, temp);
        Blynk.virtualWrite(V1, humd);
    }
     
    void setup()
    {
      // Debug console
      Serial.begin(9600);
     
      Blynk.begin(auth, ssid, pass, local_domain,8080);
         
        myHumidity.begin(shtWire);
         
        timer.setInterval(1000L, myTimerEvent);
    }
     
    void loop()
    {
      Blynk.run();
        timer.run(); // Initiates BlynkTimer
    }
    把代码验证并上传到零知-ESP8266开发板板上即可。
    5、验证测试
    在手机blynk app上可以观察到如下结果:
    结果.jpg
    可以很直观的看到温湿度的曲线分布,可用于实时监测。
    更多详细资料可到零知实验室官网免费获取。




  • TA的每日心情
    擦汗
    2019-8-1 08:12
  • 签到天数: 37 天

    [LV.5]常住居民I

    发表于 2019-6-13 17:29 | 显示全部楼层
    可以的!不错
    您需要登录后才可以回帖 登录 | 立即注册  

    本版积分规则

    热门推荐

    arduino首次编译通过第二次编译必报错
    arduino首次编译通过第二
    如题: 刚打开ide 首次编译 上传都没问题 不管你改不改代码 直接进行 编译 或者上传
    【Arduino】108种传感器系列实验(06)---声音传感器模块
    【Arduino】108种传感器系
    37款传感器与模块的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是
    旧版本ide中 ino文件名不能以数字开头,不能有中文?
    旧版本ide中 ino文件名不
    最近下载了站长编著的ARDUINO程序设计基础一书的配套例程。发现用arduino ide打开 里
    用Blinker获取天气信息并用ArduinoJson6分析数据(arduino D1)
    用Blinker获取天气信息并
    在Blinker最新版本的库中我们看到它用了ArduinoJson6,图中的两个类是ArduinoJson6的类
    一波三折,分享我的esp32编译环境搭建arduino
    一波三折,分享我的esp32
    买了个esp-wroom32开发板,想用熟悉的arduino敲代码。 但是上网查遍了所有办法,要么
    Copyright   ©2015-2016  Arduino中文社区  Powered by©Discuz!   ( 蜀ICP备14017632号-3 )
    快速回复 返回顶部 返回列表