摘 要 : 本次设计是基于单片机的智能温控风扇 。 以 STC89C52 单片机为核心 , 可以实现对风扇的有效控制 。 可以根据需要设置不同的温度 ,如果温度在设定值最大值和最小值之间时则启动风扇弱风档, 如果温度超过设定的数值时将会变到大风档 , 如果温度低于最小值时风扇停止转动, 启动什么风挡由外部温度决定 。 测得的温度值保存在温度传感器 DS18B20 内部 ROM 中 , 断电后保存的数值不变 。 基于单片机的智能温控风扇可以满足人们的不同需要, 具有一定的实用意义 。
关键词 : 单片机 ; 温度传感器 ; 智能控制
0 引 言
21 世纪是电子信息化的时代 , 温度控制器在各个领域都获得了广泛的应用, 其最大的优势就是可以实时监测温度变化并进行自动控制, 能够智能全面地满足人们的实际需要 。基于单片机的智能温控风扇是应用单片机系统设计研发的一个小型控制系统。 温控风扇能够随着温度的改变 , 自行调整 档位高低, 继而控制风速的大小 , 用户也可以根据自己的具体需要来手动设定档位值, 呈现出实用性和个性化的十足优势 ,可应用于家庭、 宾馆等各类对温度经常提出高端要求的真实场所。 系统的效率高 、 成本低 , 而且其使用寿命长 , 能够带来可观的经济效益, 因而具有广阔的发展前景和市场潜力 。本文即针对这一课题展开完整详尽论述。
1 系统整体设计
系统设计框图如图 1 所示 。 由图 1 可知 , 整个系统包括5 个模块 , 分别是键盘输入模块 、 数字温度传感模块 、 电机控制模块、 温度的测量和显示模块以及单片机最小系统 。 具体来说, 系统应用温度传感器 DS18B20 测量环境温度 , 转化成数字信号后输入给 STC89C52 单片机 , 并在 LED 数码管上显示相应的温度。 也可以通过键盘按键来进行最大 、 最小值的设定, 再由单片机控制完成指定设置功能 。
2 硬件电路设计
2.1 单片机最小系统电路设计
STC89C52 是 STC 公司生产的一种 CMOS 的 8 位微控制器。 STC89C52 不但使用了 MCS-51 系列单片机的经典内核 ,而且加入了众多的改进, 使求获得更为强大的应用拓展实用功能。 STC89C52 在拥有灵活的 8 位处理器的同时 , 更可以实现在系统可编程 Flash , 因此该单片机已然成为当下常规嵌入式系统开发的主流首选。主控制最小系统电路如图 2 所示 。
2.2 温度采集电路
除主控电路外 , 本文还重点设计了温度采集电路 。 电路中, 选用了 DS18B20 温度传感器 , 可以做到一根总线上挂多个 DS18B20 , DS18B20 温度传感器是通过内部的时钟电路发挥作用, 最终实现温度的测量 。 单片机 I /O 口和 DS18B20温度传感器的连接如图 3 所示 。
2.3 独立按键连接电路
本次研发中 , 特征设计方面还有 3 个独立按键 , 分别连接单片机的 P2.0 口 、 P2.1 口和 P2.2 口 , 另一端接地 , 如图 4 所示。 按下 P22 键可以自行设置温度 , 而按下 P21 键可以使设置的温度上限值升高, 按下 P20 键则可使设置的温度下限值减小。 而且 , 用户还可以根据自己的实际需要设置调控温度 ,简单方便。
3 系统软件设计
软件设计中 , 程序实现流程如图 5 所示 。 解析图 5 , 可知 : 程序初始化函数可实现对 DS18B20 的初始化处理 , 与此同时温度读取函数将提供对数据的读取和转化功能, 而键盘扫描函数则是根据用户的需求来设定温度可控的上限、 下限值 。 此后, 温度处理函数还将对采集得到的温度数据进行分析整理 ,其结果数据即可成为风扇控制函数发出指令来操纵对风扇电机的启停及转速调节等行为动作的实施依据。
4 仿真与分析
本次研究中 , 针对上述软硬件的关键主题设计 , 选用了Proteus 进行仿真 。 仿真系统结构设计如图 6 所示 。
由仿真实验结果可以表明 , 系统在先期设定了温度后 , 风扇电机可以根据温度的升高降低而相应地控制电机风速的变化。 当温度低于下限值时 , 风扇停止转动 ; 当超过上限值时 ,风扇转速提高, 风速达到最大 。
5 结合语
基于单片机的智能温控风扇采用 DS18B20 传感器 , 将检测到的温度转化为数字信号, 单片机对输入的数字信号进行分 析处理,当温度高于上限值时,风扇全速旋转; 当温度低于 下限时, 风扇停转 ; 当温度处于上限值与下限之间时 , 风扇开始平稳转动。 系统以单片机和 DS18B20 传感器为核心 , 具有温度显示和控制风扇转速的功能。