首页 > 分享 > 电科毕设 远程智能浇花灌溉系统

电科毕设 远程智能浇花灌溉系统

0 前言

这两年开始毕业设计和毕业答辩的要求和难度不断提升,传统的毕设题目缺少创新和亮点,往往达不到毕业答辩的要求,这两年不断有学弟学妹告诉学长自己做的项目系统达不到老师的要求。

为了大家能够顺利以及最少的精力通过毕设,学长分享优质毕业设计项目,今天要分享的是

基于stm32的远程智控制浇花灌溉系统

学长这里给一个题目综合评分(每项满分5分)

难度系数:3分工作量:3分创新点:4分

毕设项目分享:见文末!


1 简介

通过wifi模块,结合云服务,实现远程控制浇花。这对于经常需要出差,但有偏爱花草的人来说,比较便利。

2 主要器件

STM32RBT6WiFi模块温湿度传感器电机驱动

3 实现效果

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

4 设计原理

系统框架
在这里插入图片描述

实现原理

本系统硬件主要部件由STM32单片机,WiFi模块,传感器,电机驱动四部分组成。
其中STM32是整套系统的主控制器,负责整个系统的工作。
WiFi模块内部烧录好能够连接云端的SDK,这样能够保证系统正常的连接到云端,顺利的将数据上传到云,并且WiFi模块能够接受远程设备推送来的消息,然后将其传给STM32,从而使整套系统可以与云端对话。
传感器是本套系统的触觉系统,能够感知花瓶土壤表面的温湿度信息。
电机驱动是本套系统的执行部分,负责完成远程的控制命令。
将这几部分结合到一起就实现了一个简单的智能系统。
在这里插入图片描述

工作过程

系统定时3S上传一次温度和湿度信息到云端,通过远程手机客户端便可以查看花瓶当前的温湿度情况。系统可以随时接手远程(手机客户端)发送来的控制命令,并且执行相应的命令。结合云端的阈值报警功能,可以设置湿度低于某一值之后通过邮件或者短信等形式告知用户,然后用户在决策要不要浇花,如果需要就可以打开手机客户端,立刻给心爱的花草浇水了。

主要原理图

在这里插入图片描述

5 部分关键代码

void HAL_TIM_PeriodElapsedCallback(TIM_HandleTypeDef *htim) { static uint32_t eventTimeCount; //定时事件计数器 static uint32_t motorTimeCount;//监控事件计数器 static char ledState; //LED灯状态翻转 //tim1负责定时上传事件 if(htim->Instance == htim1.Instance) { eventTimeCount++; if(eventTimeCount >3000) { eventTimeCount = 0; eventIsRun = 1; //开始执行相应任务 } } //tim2负责浇水时间管理和液晶屏时间显示 if(htim->Instance == htim2.Instance) { motorTimeCount++; if(motorTimeCount >1000) { motorTimeCount =0; //翻转LED灯状态 ledState = ~ledState; if(ledState) HAL_GPIO_WritePin(GPIOC, GPIO_PIN_9, GPIO_PIN_SET); else HAL_GPIO_WritePin(GPIOC, GPIO_PIN_9, GPIO_PIN_RESET); if(flowerFlag)//是否有浇水命令,若有命令,启动浇水 { start_flower(); flowerCnt++; } if(flowerCnt > 4)//浇水时间到 { stop_flower(); flowerCnt = 0; flowerFlag = 0; } updateTimeCnt++; if(updateTimeCnt>10)//超时,则更新液晶屏时间 { updateLcdIsRun = 1; updateTimeCnt=0; } } } }

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051

#include "led.h" #include "delay.h" #include "sys.h" #include "usart.h" #include "lcd.h" #include "key.h" #include "spi.h" #include "malloc.h" #include "DCConfig.h" #include "text.h" #if (COMMUNICATION_MODE==0) #include "common.h" #elif (COMMUNICATION_MODE==1) #include "bc26.h" #endif #include "usart2.h" #if (CODE_TYPE==2) #include "dht11.h" #include "soil.h" #include "light.h" #endif #if (CODE_TYPE==3) #include "fire.h" //Fire #include "mq_25.h" //MQ25 #include "mq_135.h" #include "pm25.h" #endif int main(void) { //u8 key,fontok=0;delay_init(); //延时函数初始化NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2); //设置NVIC中断分组2:2位抢占优先级,2位响应优先级uart_init(115200);//串口初始化为9600USART2_Init(115200); //初始化串口2波特率为115200 ,WIFI模块SPI2_Init();//初始化SPILCD_Init();//初始化液晶LED_Init();//LED初始化KEY_Init();//按键初始化#if (CODE_TYPE==2)DHT11_GPIO_Config(); Adc_Init_Light(); Adc_Init_Soil();#elif (CODE_TYPE==3) Adc_Init_Fire(); Adc_Init_MQ25(); Adc_Init_MQ135(); Adc_Init_PM25();#elif (CODE_TYPE==4)#endif //初始化空气质量检测传感器mem_init();//初始化内存池Lcd_Clear(WHITE);LCD_ShowString(5,20,128,16,16,"System Success!");delay_ms(1500);Lcd_Clear(WHITE);//清屏#if (COMMUNICATION_MODE==0)atk_8266_test();//进入ATK_ESP8266测试#elif (COMMUNICATION_MODE==1)Set_up_NBiot();#endif }

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172

毕设项目分享:见文末!


5 最后

相关知识

电科毕设 远程智能浇花灌溉系统
什么是节水灌溉?远程自动化灌溉系统远程智能浇水
【51毕业设计案例】【015】智能浇花灌溉系统
智能花卉灌溉控制系统解决方案,定时浇花
基于51单片机的智能浇花系统(可做毕设)
花园智能灌溉系统方案
智能灌溉系统
智能花卉灌溉控制系统解决方案
基于STM32单片机远程浇花花盆GSM短信浇水补光灌溉系统
花园智能灌溉系统方案应用优点

网址: 电科毕设 远程智能浇花灌溉系统 https://m.huajiangbk.com/newsview241733.html

所属分类:花卉
上一篇: 大棚滴灌系统设计.doc
下一篇: 你可能不知道的花生浇水秘诀:如何