首页 分享 基于ESP8266的物联网养花系统

基于ESP8266的物联网养花系统

来源:花匠小妙招 时间:2024-11-30 05:31

#define BLINKER_WIFI #define BLINKER_MIOT_SENSOR //引入小爱同学 #define soilPin A0 //土壤传感器脚针 DO #define CS 2 //定义继电器脚针为D4 #include <Blinker.h> #include <DHT.h> //DHT11传感器的头文件 #define DHTPIN 4 //定义DHT11模块连接管脚io4(D2脚) #define DHTTYPE DHT11 // 使用DHT11温度湿度模块,当然也可以换其他DHT //存储土壤的值 int soilValue; //定义土壤湿度 int soilMoisture; char auth[] = "1c2ce3eef946"; //点灯app的密钥key char ssid[] = "PDCN"; //所需连接的WiFi名 char pswd[] = "1234567890"; //WiFi的密码 BlinkerNumber HUMI("humi"); //定义湿度数据键名 BlinkerNumber TEMP("temp"); //定义温度数据键名 BlinkerNumber TEMP2("temp2"); //定义土壤湿度数据键名 DHT dht(DHTPIN, DHTTYPE); //定义dht float humi_read = 0, temp_read = 0; //初始化读取的数据 //仪表盘组件 void heartbeat() { HUMI.print(humi_read); //给blinkerapp回传湿度数据 TEMP.print(temp_read); //给blinkerapp回传温度数据 TEMP2.print(soilMoisture); if(soilMoisture <=50) //土壤湿度低于50 { digitalWrite(CS, !digitalRead(CS)); //运行继电器 } else { digitalWrite(CS, HIGH); } } //实时曲线图组件 void dataStorage() { Blinker.dataStorage("temp", temp_read); Blinker.dataStorage("humi", humi_read); Blinker.dataStorage("humi2", soilMoisture); } //数据返回至小爱同学 void miotQuery(int32_t queryCode) { BLINKER_LOG("MIOT Query codes: ", queryCode); int humi_read_int=humi_read; //将float转成int类型,整数 BlinkerMIOT.humi(humi_read_int); //小爱接收湿度 BlinkerMIOT.temp(temp_read); //小爱接收温度 BlinkerMIOT.print(); } void setup() { //初始化串口Serial,开启调试输出 Serial.begin(9600);//波特率 BLINKER_DEBUG.stream(Serial); BLINKER_DEBUG.debugAll(); Blinker.begin(auth, ssid, pswd);//WIFI初始化设置 Blinker.attachHeartbeat(heartbeat);//注册仪表盘 dht.begin(); BlinkerMIOT.attachQuery(miotQuery);//注册小爱 Blinker.attachDataStorage(dataStorage);//注册实时曲线 pinMode(LED_BUILTIN, OUTPUT); digitalWrite(LED_BUILTIN, 1); pinMode(CS, OUTPUT);// 初始化继电器脚针 digitalWrite(CS, HIGH); //初始化继电器脚针 } void loop() { Blinker.run();//负责处理blinker收到的数据,每次运行都会将设备收到的数据进行一次解析。(这个很重要) float h = dht.readHumidity();//读取DHT11采集的湿度数据 float t = dht.readTemperature();//读取DHT11采集的温度数据 if (isnan(h) || isnan(t))//判断温湿度值是否为空 { BLINKER_LOG("读取传感器数据失败"); } else { BLINKER_LOG("Humidity: ", h, " %");//打印输出调试信息 BLINKER_LOG("Temperature: ", t, " *C"); humi_read = h; temp_read = t; } soilValue = analogRead(soilPin); //获取土壤的值0-1024 soilMoisture = map(soilValue,0,1023,100,0);//将0-1024转为100%-0 空气中土壤湿度为1024 Blinker.delay(200); //延时函数, 在延时过程中仍保持设备间连接及数据接收处理 }

相关知识

Arduino Esp8266 Nodemcu Blinker 物联网浇花系统 EspTouch配网使用方法
基于WiFi的环境信息物联网云平台监测系统设计
基于机智云物联网的智能花卉栽培系统
基于物联网的智能浇水系统(STM32+华为云IOT)
基于物联网的智能花卉栽培系统设计研究.pdf
使用土壤湿度传感器和esp8266 nodemcu的基于物联网的智能灌溉系统
一种基于物联网的智能养花系统的制作方法
基于物联网的智能浇花系统
基于物联网的农业虫害智能监控系统
【IoT开发】基于机智云物联网的智能浇花教程

网址: 基于ESP8266的物联网养花系统 https://www.huajiangbk.com/newsview782990.html

所属分类:花卉
上一篇: 基于ZigBee的花卉温室温度监
下一篇: 植物生物发光成像系统,植物表型系

推荐分享