单片机毕业设计模板|毕设答辩|毕业设计项目|毕设设计|单片机物联网毕业设计|基于stm32的智能温控风扇

毕业设计题目:基于stm32的智能温控风扇
1. 系统功能概述
-
核心功能:根据环境温度自动调节风扇转速,支持手动控制模式。
-
附加功能:温度显示、报警提示、低功耗待机。
2. 硬件层设计
2.1 主控芯片
-
STM32型号:STM32F103C8T6(资源适中,成本低)或STM32F407(性能更强)。
-
关键外设:
-
ADC:采集温度传感器模拟信号。
-
PWM:控制风扇电机转速(通过MOS管驱动电路)。
-
GPIO:连接按键、LED指示灯、蜂鸣器。
-
2.2 传感器模块
-
温度传感器:
-
模拟输出:LM35(直接接ADC引脚)。
-
数字输出:DS18B20(单总线协议,抗干扰强)。
-
-
可选传感器:
-
湿度传感器(DHT11):用于环境综合调节。
-
红外人体感应(HC-SR501):检测是否有人自动启停。
-
2.3 执行机构
-
风扇驱动电路:
-
MOSFET管(如IRF540N)驱动直流风扇。
-
或直接使用PWM调速风扇模块(简化设计)。
-
2.4 人机交互
-
输入:
-
按键:切换自动/手动模式,调节转速阈值。
-
旋转编码器:手动调节转速(可选)。
-
-
输出:
-
OLED/LCD屏:显示实时温度、风扇转速档位。
-
LED指示灯:模式状态(如绿色=自动,红色=手动)。
-
蜂鸣器:高温报警(>50℃)。
-
2.5 通信模块(可选)
-
蓝牙(HC-05):手机APP调节参数。
-
Wi-Fi(ESP8266):远程监控温度数据。
3. 软件层设计
3.1 主程序流程
-
初始化:
-
ADC(温度采集)、PWM(风扇控制)、定时器、显示屏。
-
-
主循环:
-
读取温度传感器数据(滤波处理,如滑动平均)。
-
判断当前模式(自动/手动):
-
自动模式:根据温度-转速映射表调整PWM占空比。
-
手动模式:根据按键/编码器输入设置固定转速。
-
-
刷新显示屏,检测报警条件。
-
3.2 控制策略
-
温度-转速曲线(示例):
-
温度 < 25℃:风扇关闭(PWM=0%)。
-
25℃ ≤ 温度 < 35℃:低速(PWM=30%)。
-
35℃ ≤ 温度 < 45℃:中速(PWM=60%)。
-
温度 ≥ 45℃:全速(PWM=100%)+蜂鸣器报警。
-
3.3 低功耗处理(可选)
-
进入Stop模式,通过按键中断唤醒(无人时节省电量)。
4. 关键算法
-
ADC滤波:采用中值平均法消除传感器噪声。
-
PWM平滑调节:避免转速突变(如每次调整步进5%占空比)。
-
温度校准:存储偏移值到Flash,补偿传感器误差。
5. 扩展功能(可选)
-
历史数据记录:通过EEPROM/Flash存储温度日志。
-
语音播报:加入SYN6288模块播报实时温度。
-
云平台对接:通过ESP8266上传数据到云端(如ThingsBoard)。
6. 安全与稳定性
-
硬件看门狗:防止程序跑飞。
-
过流保护:在风扇驱动电路加入保险丝或电流检测。
-
温度冗余检测:双传感器校验(防单点故障)。
系统框图示例
text
[温度传感器] → [STM32 ADC]
|
[按键/编码器] → [STM32 GPIO] → [PWM] → [风扇驱动电路]
|
[OLED显示] ← [I2C/SPI] [蜂鸣器/LED]
运行结果展示:





















更多推荐
所有评论(0)