基于stm32f4的农舍先知系统

1,思维导图和流程图

1.1思维导图

1.2流程图

2,项目介绍

2.1写在前面

        本项目旨在设计和实现一个基于 STM32F407为主控芯片的农舍先知系统,用于实现促进农业精细化、高效化管理,为现代农舍农业提供一种可行性的解决方案。通过使用不同的传感器和控制设备,系统能够实时采集与农作物生长环境相关的温度、湿度光照强度等环境参数,并作出一定的自动控制。

        项目将使用 C
语言和
C++
语言进行开发,同时采用
Qt
框架设计友好的用户界面,通过

sqlite3
数据库实现数据存储和管理,设备保存掉电状态,开机恢复,内置看门狗检查,定时

长传环境数据。

2.2相关硬件

1,ESP8266:用于实现远程控制

主控制器:
STM32F407

传感器:温度传感器(DH11)、湿度传感器(DH11,单总线)、光照传感器(ADC)

         

农舍设备:
LED
灯(三个)、蜂鸣器、风扇
PWM
调档、舵机

数据存储:
EEPROM 

数据交互:
OLED
显示屏和
KEY
按键(4个)

数据传输:
WIFI
模块,RS232

2.3相关软件

平台:
Windows ,FreeRTOS,keil5

开发语言:
C
语言、
C++
语言、
Qt 

技术栈:串口通信,WIFI
通信,
TCP
网络通信,
IIC,SPI
,单总线,PWM,低功耗。

3,有哪些功能

3.1数据的采集

温度传感器:实时监测农舍温度

湿度传感器:实时监测农舍湿度

光照传感器:实时监测农舍光照强度

3.2控制农舍设备

提供手动控制功能,如:开关设备,OLED显示,待机模式,和唤醒等。

提供远程手机控制功能,如:开关设备,OLED显示,待机模式,和唤醒等。

提供自动控制功能,如:当温度大于30度,自动打开2档风扇降温,当温度降到26度风扇自动关闭,当温度降低到植物生长最低温度时打开加热灯(呼吸灯进行模拟)等。

提供 QT界面控制。

4,项目的总结

这次项目给我的启发很大,也让我更加熟悉和了解F4这款芯片的特性以及外设。在做项目的过程中也并不是一帆风顺的,在编写oled和e2prom所需要的底层iic协议代码时需要协调确保他们两个的时序协调性,我发现当我调好了oled显示屏的时序了,e2prom的又不行,调好e2prom了,oled又不能显示。这使我难免会有些沮丧和却退的心里,但是我很快又想到了做任何有挑战的事情都不可能很轻松的就完成,于是我耐下心来,在一次次的更改延时时间,最终把问题解决了,还有各种小困难在这就不多说了。整个项目对我来说是有挑战性的,也给我以后提供了宝贵的经验,最后谢谢观看!