按钮控制的直流风扇(DC FAN)系统设计与实现

【小组成员】

五组:王韵淇 冯怡 吴瑶 褚冉 王澍 宋格格


一、实验目的 

本实验旨在设计并实现一个基于按钮控制的直流风扇系统,通过物理按键调节风扇转速与旋转方向,验证其在实际应用中的可行性与稳定性。实验目标包括: 

1. 实现按钮按压次数与风扇转速的映射关系(如1次低速、3次高速、4次停止)。 

2. 通过硬件电路与软件逻辑结合,确保风扇在不同模式下的稳定运行。 

3. 验证系统对按钮抖动的抗干扰能力,提升用户体验。 


二、硬件设计 

1. 硬件组件 

主控模块:采用Arduino开发板(如ESP32或UNO),负责读取按钮状态并控制电机驱动。 

电机驱动:使用H桥驱动电路(如L298N)或PWM控制模块(如PCA9685),通过引脚9、10控制电机正反转。 

按钮模块:单键按钮(引脚2)用于输入信号,配合LED指示灯(引脚13)反馈状态。 

直流电机:支持PWM调速的风扇电机(如D60SH-12),内部集成霍尔效应传感器以检测转速。 

2. 电路连接 

按钮连接至Arduino的数字输入引脚(如2),LED连接至输出引脚(如13)。 

电机驱动引脚(9、10)连接至电机,电源通过稳压模块(如5V稳压)供电。 



三、软件实现 

1. 核心逻辑 

按钮去抖处理:通过`millis()`函数记录按钮状态变化时间,确保单次按压仅触发一次逻辑切换。 

转速控制:定义状态变量`stat`,根据按钮按压次数(1~4次)映射至不同转速模式: 

- `stat=1`:低速(`rank1=150`) 

- `stat=2`:中速(`rank2=200`) 

- `stat=3`:高速(`rank3=258`) 

- `stat=4`:停止(`rank=0`)。 

PWM调速:通过`analogWrite()`函数动态调整电机占空比,实现速度连续调节。 

2. 代码示例 


四、实验结果与分析 

1. 功能验证

转速调节:通过单次按钮按压实现低速切换,三次按压达到高速,四次按压停止,符合预期。 

方向控制:通过H桥驱动电路实现正反转切换,需进一步验证电机驱动逻辑。 

稳定性测试:连续按压按钮时,系统未出现误触发,表明去抖处理有效。 

2. 问题与改进

转速精度:当前PWM调速依赖预设值,可引入传感器反馈(如霍尔传感器)实现闭环控制。 

扩展性:增加旋钮模块(如micro:bit项目)可实现更精细的转速调节。 


五、结论 

本实验成功实现了基于按钮控制的直流风扇系统,通过硬件电路与软件逻辑的结合,验证了其在转速调节与抗干扰方面的可行性。未来可进一步优化PWM控制算法,并集成传感器反馈以提升系统智能化水平。 

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容