毕业设计题目:基于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 主程序流程
  1. 初始化

    • ADC(温度采集)、PWM(风扇控制)、定时器、显示屏。

  2. 主循环

    • 读取温度传感器数据(滤波处理,如滑动平均)。

    • 判断当前模式(自动/手动):

      • 自动模式:根据温度-转速映射表调整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]

运行结果展示:

Logo

北京人形旗下天工造物具身智能开源社区,聚焦具身天工与慧思开物两大平台

更多推荐