基于单片机的农村智能温控风扇系统设计*
2021-03-22田真子
田真子,李 浩,李 玲
(郑州航空工业管理学院,河南 郑州 450046)
党的十九大提出了实施乡村振兴战略,其中指出,加快推进农业农村现代化,在信息时代背景下,智慧农业、农村建设对于实施乡村振兴战略具有十分重要的现实意义[1]。在农村大部分家庭使用的是传统的风扇,这种风扇仅能够控制电机进行风速的调节,并且是通过用户手动操作才能改变档位,没有倒计时、指示灯、温控系统、节能等系列功能,没有更多考虑用户需求的实用设计,整体上存在缺少智能模块、用户体验感差的问题。
本论文积极响应国家乡村振兴战略号召,设计系统将传统的风扇与IAP15F2K61S2单片机进行配合更新,IAP15F2K61S2单片机作为微型控制器,在体积、价钱、品质上有着很大的优势,因此现在被广泛应用到各种智能化的产品上。本系统便是此单片机为底层硬件基础,结合单片机原理、传感器模块和PWM调速技术,设计出的智能温控风扇系统,根据周围温度的变化自动切换档位,真正实现了对风扇的智能控制,切实满足了用户的需求。
1 系统总体设计方案
1.1 系统总体概述
基于单片机的农村智能温控风扇系统为了实现按键控制和温度控制风扇档位双模式、环境温度值的采集、工作时间倒计时、数码管显示、LED指示灯多功能,系统的总体设计分为硬件和软件两部分。硬件部分系统采用高集成的防水型温度传感器DS18B20、3461BS数码管、LED模块、独立键盘与单片机进行电路设计;软件部分使用C语言在Keil uVision5软件下进行编写。本系统总体控制的设计框图,如图1所示。
图1 系统框图
1.2 调速方式的讨论与选择
方式1:PWM波调速。利用软件控制单片机某一个端口输出高低电平,在变化的时候使用延时程序循环扫描产生脉宽调制信号,一般搭配定时器函数使用,通过用定时器设置不同的延时时间就可以产生不同的占空比。其优势在于调速的效率高。
方式2:变压调速。通过变压器对风扇的电机电压进行控制。变压调速是调整电机的端电压,使电机在一定的调速范围内实现无级调速,经过控制晶闸管的导通模式改变输出电压,其优势主要在于通过电机运行使得其在整个调速范围内都平稳[2]。
在方式1中,整个智能控制过程中都是以数字形式来完成信号传达,从而实现信号传达过程中信号持续为数字形式且没有经过相应的形式变化,因此实现在这个过程中仅有极小的噪声影响,让用户能有更好的使用体验。综上所述,本系统最终选用PWM波调速进行设计。
2 系统硬件设计
2.1 独立按键模块
本系统通过跳线帽选择矩阵键盘中的S4-S7共四个独立按键实现按键控制的功能。S4按键为工作模式的选择键和档位选择键;S5按键为定时按键,实现定时关闭风扇的功能;S6按键为停止功能键,实现一键关闭的功能;S7按键为周围环境温度查看按键。
2.2 LED指示灯模块
本系统共使用L1-L5共五个LED灯组作为指示灯,通过选择不同的工作模式会点亮不同的LED指示灯,为用户带来更好的功能体验感。
2.3 数码管显示模块
本系统的数码管显示模块采用两组共阳极结构的数码管,共八位,可用于显示系统工作档位、倒计时时间和温度。电路设计通过74HC138译码器以及74HC573锁存器控制实现P0口控制段码、P2口控制位码。
2.4 温度采集模块
本系统选用的DS18B20温度传感器采用单总线的接口方式,单总线有着经济性好、抗干扰能力强、适合恶劣环境温度测量的优点[3]。其电路图的设计过程,如图2所示。由图2可以明显看出,它的数字信号输出/输入端DQ引脚与IAP单片机的P14引脚相连,当温度传感器在感应到周围温度的变化时,会及时将温度信息传输给单片机。其中R11是温度传感器I/O端口的上拉电阻,目的是当单片机读取数据结束时,可以重新将I/O端口重新拉到高电平[4]。
图2 DS18B20电路原理图
3 系统软件设计
3.1 主程序
本系统上电后,在系统完成相应的初始化后,DS18B20元件开始实时采集周围环境温度,用户通过按键选择手动或自动模式。在自动模式下,系统会将采集到的温度与用户设定的温度进行比较,根据比较的结果控制风扇调整到合适的档位,无论是温控还是人为设置档位的,数码管模块都会显示对应的档位,LED模块会亮起对应的指示灯。当用户选择定时模式时,数码管模块显示倒计时剩余秒数,倒计时一结束,程序将控制风扇停止运转。主程序流程图,如图3所示。
图3 主程序流程图
3.2 数码管显示函数
温度传感器采集到的温度、风扇所处的档位、倒计时秒数都可以显示在数码管上,本系统数码管显示采用循环动态扫描,在编写程序之前会先把所有能用到的共阳极字段码全部存到一个数组中。每显示完成一个数字之后延时一段时间,再进行扫描下一位。这样由于人眼的视觉惰性就会产生一种连续显示的动态效果。图4为工作模式和倒计时显示界面,图5为室温显示界面。
图4 工作模式和倒计时显示界面
图5 室温显示界面
3.3 按键扫描函数
通过选用矩阵键盘中S4-S7四个按键编写程序实现按键控制功能。按键S4每按一次实现自动模式-睡眠风-一档-二档-三档五种模式的切换。按键S5每按一次实现倒计时10分钟-倒计时20分钟-倒计时30分钟三种模式的切换。S6按键是系统的一键停止按钮。按下S6按键,系统将停止工作,直到用户通过S4按键重置工作模式或S5按键的时间被重置。按键S7是查看周围环境温度键,按下S7系统便会通过数码管显示当前环境的温度,直到用户再次按下S7系统会重新显示工作模式和倒计时界面。
3.4 LED函数
本系统共设置 L1、L2、L3、L4、L5 共五个 LED 灯组作为指示灯。自动模式L1点亮;睡眠风模式L2点亮;一档模式L3点亮;二档模式L4点亮;三档模式L5点亮;如果用户按下S6停止按键或当倒计时结束时,LED则会全部熄灭。
3.5 DS18B20读写操作函数
本系统选用DS18B20温度传感器进行温度采集,系统如要正常运行温度传感器功能则要对DS18B20温度传感器进行以下工作编写程序和调用:初始化、ROM的操作指令、读 RAM 操作、进行数据校验。因此,使用该芯片要严格按照芯片的通信协议与工作时序。具体的初始化、读操作和写操作的时序图分别如图6-图8所示。编写系统程序设置不同的温度区间自动调整不同的档位,可以实现自动模式下的智能温控,同时无论风扇是否处于停止状态,只要系统上电,用户都可以实时查看室温。
图6 初始化时序图
图7 读操作时序图
图8 写操作时序图
4 结束语
最终在Keil uVision5软件下将用C语言编写的代码编译链接生成hex文件,将其用STC烧录软件写入到实际电路板中,经过调试和运行,系统可以稳定执行。
本系统在设计研究过程中,通过基于传统的风扇设计以及现代用户的切实需求,最终选用了IAP15F2K61S2单片机为主控芯片完成了系统的方案设计以及功能实现,为用户提供了更高效、稳定、智能化的温控风扇。
本系统设计的优点:具备自动模式和手动模式双模式,可提供给客户更多的选择,自动模式也为用户带来更好的使用体验,切实解决传统风扇只能人为操作的痛点;风扇相比空调价格更低,给用户的反馈更及时,即用即有,在夏季是每家每户必不可少的电子产品,本系统在传统模式上有所更新,给用户带来更好的舒适感和实用性;温度实时查看、LED模式指示灯、定时关闭系统等功能多方面更人性化的从用户的需求出发进行设计,让用户满意。
当然,本系统也有不同的改进方向。后期迭代更新的时候可以引入模糊控制算法,设置对应隶属度区间,使得温控系统所调节的档位更符合人的体感而非仅仅根据室温调节;并且在后期迭代更新时,还可以在系统中引入人体红外感应模块,使得本系统实现无人时自动关闭风扇及人来时自动开始工作的功能。
综上所述,本系统切实满足了用户的需求,具备五档调速的智能温控风扇不仅让用户在炎热的天气里可以舒心地享受凉爽,还使得用户能够在夜晚无意识时享受到贴心的智能调节风速的服务。并且本智能温控风扇系统也满足国家所提倡的节能环保要求,让用户使用的更加放心。整个设计方案与传统的风扇相比,有了很大的更新。综合如今市场需求和智能控制的浪潮兴起,本系统的创新设计仍具有良好的产品经济市场和较好的发展前景。