对MCU温控智能风扇系统的设计

2018-05-14 01:50郑锦红
学校教育研究 2018年29期
关键词:时序自动控制

郑锦红

摘 要:本文介绍一种基于单片机温控风扇的控制系统设计方案。巧妙地利用单片机技术,可控硅技术,温度传感器技术,软件技术, 达成设计目标。硬件系统采用台湾松翰科技生产的SN8P2722作为微处理器,利用高精度热敏传感器对室内温度的探测并适时显示当前温度值,通过控制可控硅的导通,从而实现对电风扇进行温度调速控制。软件系统则采用模块设计即主程序,定时程序,温度显示程序,电机调速等程序。着重讨论温控相关程序的设计并给出流程图和相关程序,该系统把智能自动调节技术用于家用电器的控制中,系统利用软件技术实现了风速调级和关机控制,从而提高了系统的抗干扰性能和稳定性。

关键词:SN8P2722 时序 自动控制

一、 课题设计意义

目前也有温控风扇,但普遍地风扇的温控优点依然没有,甚至其控制效果不明显,仍仅限于关掉风扇电机,所以没有得到足够的市场反映,这是因为其产品大多直接采用普通热敏电阻作为温控元件,电路温控范围窄、风扇启动频繁。不能由人自由设定温度上下限,不能从容地自动控制电扇电机的起停或转速的快慢。本设计则采用高精度热敏传感器对温度采样并进行A/D转换,强大的八位单片机作为数据处理装置,用相应的驱动电路控制电机的转速或起停,从而实现电扇的智能化温控。

二、系统

(一)系统功能概述

本设计以精简指令集单片机SN8P2722为核心,通过高精度NTC传感器对室内环境温度进行数据采集,用单片机处理,从而建立一个完整的控制系统。使电风扇随温度的变化而自动变换档位,实现“温度较低,风力较弱,温度较高,风力较大”的功能。另外,用户也可以通过键盘控制面板,设定电风扇在一定范围内的最低工作温度,当温度低于所设置最低温度时,电风扇将自动关闭,当高于此温度上限时电风扇又将重新启动。

(二)系统原理

硬件系统采用模块设计思想,该电路由温度传感电路、电机控制电电路、电源时钟、显示电路、看门狗电路等组成。而软件系统则先进行系统功能分析,后采用结构化设计,采取模块设计。

三、总体硬件设计

(一)总体硬件设计

根据要求,选用台湾SONIX(松翰)公司的SN8P2722作为中央处理器,具有2K*16bits程序ROM、128*8bits内存RAM、内部包含有16MHz RC振荡电路和复位电路、WDT看门狗定时器、8bits时钟定时器、5通道12bits ADC,18个双向可编程I/O,输入I/O可编程设置弱上拉电阻。其硬件能符合整个控制系统的要求,不需要外接其他存储器芯片复位电路和定时器件,整个系统结构紧凑,抗干扰能力强,性价比高。

该硬件电路由阻容降压电源电路、红外遥控接收电路、温度传感电路、数码显示和键盘扫描电路,电机控制与驱动电路等组成。

1.阻容降压电路设计

由于本系统是小电流控制系统,另外出于成本考虑,选用阻容降压式电源给系统供电(如右图所示)。由于阻容降压式电源是浮地的,全波整流虽然可以获得稍大的电流,但是稳定性和安全性要比半波整流更差。

2.红处遥控接收电路设计

红外遥控器是利用红外线发射一连串的二进制脉冲码进行传递信息,是一种无线、非接触控制技术,具有抗干扰能力强,编码及解码容易,信息传输可靠,对环境影响小,成本低优点,本系统选用NEC协议的遥控器。

3.温度传感器电路设计

风扇使用环境温度一般在16℃~45℃ ,温度范围窄,选用高精度的热敏传感器,并经过SN8P2722内部进行ADC转换,得到12位分辨率的二进制数值,再由MCU计算处理,得到精度达到0.1℃的温度值。

4.温度显示与控制模块设计

显示面板选用3位8段共阴极LED数码管,为节省MCU的有限资源,与键盘组成矩阵形式共享IO端口,通过动态扫描输出显示内容和动态扫描输入读取键盘的键值。

(二)系统工作原理

本系统利用高精度NTC传感器感应到室内环境温度变化转换成电压信号,滤波后直接输入到MCU单片机IO端口,经过MCU内部ADC模数转换为数字信号,单片机处理温度数字信号,显示在LED数碼管面板上,在温控模式下通过实时环境温度对风扇进行自动控制。

当扫描到有按键按下或接收遥控信号,则对按键或遥控做出响度应和处理,可以开启或关闭电风扇;开启或关闭导风轮;工作模式设置,可选择正常模式、自然风模式、睡眠模式和温控自动模式;定时关机设置,可定时0~9小时;风速档位设置,正常模式下有高、中、低三档风速调节。

温控模式下,风扇的三档物理调速通过软件设计实现0~7档调速。当设定为温控模式时进入温度自动控制,MCU集到当前实时环境温度与预设的档位温度值比较,并选择相对应档位,单片机自动控制系统开始工作。

四、主程序摸块

根据风扇系统各种功能相对独立的特点,采用结构化设计软件设计的总体思想由于整个系统要求实时性很高,因此系统必须快速响应输入,执行相应功能。整个系统采用模块化设计,按其功能分为不同级别的程序模块,采用中断方式和分时扫描方式,满足快速响应的要求。

(一)系统软件主程序汇编代码如下

Startup:

call SystemInitialize // 调用系统初始化程序

call ClearRam // 调用内存清空程序

call TimeDelay200 // 调用延时200ms程序

MainLoop:

call KeypadScan // 调用按键扫描程序

call RemoterScan // 调用遥控扫描程序

call TemperatrueCheck // 调用温度转换程序

call WorkRoutine // 调用工作模式程序

jmp MainLoop

(二)温度控制程序设计

温度控制程序是在温控自动模式下执行的工作程序。依据采集到环境温度的高低,控制风扇的自动运行、暂停、关机和转速调整,来改变风量的有无或强度,以适合人的生理需求。

(三)温度转换和处理程序设计

温度测量通过硬件电路把温度信号转变为直流电压信号,由MCU内置ADC电路采样、量化和编码,转换成12-bits的二进制数据,通过温度传感器温度与电阻的关系列表,查表获得当前温度。程序由温度转换处理程序和温度查表程序组成,通过连续读取32次温度采样数值,求和后计算平均值,通过平均值的软件滤波方法,减少采样过程中的瞬时干扰,影响温度采集的准确性。

(四)温度比较

风扇控制由采集到的实时环境温度值,与预设的温度值比较,处于相应温度区间,速度索引设置相应的档位值。

五、结束语

本系统硬件电路比较简单,很多功能都是由软件完成,抗干扰性较强,只是温控程序处理模块在处理温度输入时,由于SN8P2722单片机内存资源有限,没有对32组数据进行排序并去掉最大值和最小值后,再进行平均值计算,导致不能滤掉尖峰脉冲对温度检测的干扰,对温度检测的准确性有一定的影响。但是因为在温度检测电路加入了∏型滤波硬件电路,所以尖峰脉冲对温度检测的准确性影响可以忽略。

[参考文献]

[1] 胡汉文. 微型计算机原理与系统设计[M].清华大学出版社,2004.

[2] 梁宗裕,等.新潮小家电电路图册[M].机械工业出版社,2002.

[3] 何小艇.电子系统设计 [M]浙江大学出版社,2004.

[4] 陈明荧,单片机课程设计实训教材[M]清华大学出版社,2004.

猜你喜欢
时序自动控制
刘国辉
清明
你不能把整个春天都搬到冬天来
川滇地区数字化水位孔隙度和渗透系数时序特征分析
实现自动控制电阻类型分析之气敏电阻
基于PLC的自动售货机控制系统的设计
智能感应晾衣架的设计原理与可行性分析
油气集输系统信息化发展形势展望
光威4GB DDR4 2133
十铨4GB DDR4 2133