基于89C52单片机的家用风扇控制器设计及实现
2011-05-14刘康玲隆金波陈学
刘康玲 隆金波 陈学
摘要:设计了一种基于89C52单片机的家用风扇控制器,该控制器涵盖有四个主要功能模块:风速设置、类型设置、停止设置、无极调速。而且不同功能模块中可以实现灵活自由的转换,通过延时函数实现防抖动技术。该控制器设计灵活,功能丰富,弥补了当前家庭广泛使用的电风扇存在的不足,实现了自动控制,具有深远的设计意义。
关键词:89C52单片机;家用风扇;自动控制
引言
家用电扇是一种利用电动机驱动扇叶旋转,来达到使空气加速流通的家用电器,主要用于清凉解暑和流通空气。广泛用于家庭、办公室、商店、医院和宾馆等场所。电扇主要由扇头、风叶、网罩和控制装置等部件组成。扇头包括电动机、前后端盖和摇头送风机构等。家用电扇是生活中常见普遍的系统,然而,传统的家用电扇不具备自动转速的功能,人们需要手动调节电风扇的转速,以达到舒适的风流量。因此,对家用风扇的功能不断进行改进和优化,本设计可以智能控制风速,有利于提高人们的生活水平,且有利于能源环保。
1 系统总体设计
本设计主要是用步进电机的控制来模拟家用风扇控制器,其原理结构如图1。其控制核心是89C52单片机,该控制器涵盖有四个主要功能模块:风速设置、类型设置、停止设置、无极调速。而且不同功能模块中可以实现灵活自由的转换。
上图的按键控制对应于四个按键,分别用来控制风速,风的类型,电机的运转,停止。按“风速”键,其状态由“弱”→“中”→“强” →“弱” ……往复循环改变,每按一下按钮改变一次;按“类型”键,其状态由“正常”→“睡眠”→“自然”→“正常” …… 往复循环改变;其中,风速的弱、中、强对应于电扇的转动由慢到快。其中驱动电路如图2,系统电路如图3。
2 核心芯片简介
本设计使用STC89C52芯片,配合实验室的实验板电路,11.0592MHz晶振,8个LED指示灯,P0与P1端口带有拉高电阻可作I/O接口。STC89C52芯片自身是一个最小系统,不需要任何扩展,比较适合于家电消费产品以及一个简单的控制系统中。它携带的RAM和ROM已满足本设计的使用,配合软硬件设计,可以实现家用电扇所需的功能。且由于其价格低廉,能够节约成本。
3 详细设计
本设计是使8253通道0输出定时信号申请中断, 8253的定时时间决定了电机在睡眠和自然状态时的停转时间。电机的停转则是通过单片机的端口输出高低电平来继续或暂停8253通道0的计数从而控制中断申请来实现的。芯片输出接驱动电路输入,通过控制输出PWM波的占空比调整风扇转速,控制高低电平的调整风扇的风类,即转与停。
控制系统分四个功能模块,分别是风速设置、类型设置、停止设置、无极调速键。设计思路如下。
3.1 防抖动功能
以循环扫描方式读键盘,通过延时函数防抖动,再用while循环等待按钮松开,通过设置判断改变标志变量。
3.2 调速功能
方法一:由于52单片机无法产生PWM波,所以需要软件模拟,本设计通过定时器实现一定占空比的PWM波模拟。为定时器设初值为一基本量,利用定义的其他变量循环计数倍增这一基本量,以改变输出电平的占空比。无级调速只是通过读按钮+延时对占空比进行缓慢改变。
方法二:根据赋给计数器的计数初值,我们可以计算出步进电机各相脉宽信号的频率和电机转速,也可以反过来根据对电机转速要求,计算并调整计算初值。本设计采用的是8253的0号计数器和方波产生方式,输入时钟为f=46875hz,设计数初值为n,要求转速为0.25转/秒,对四相步进电机而言即为5步/秒,则有:
n=f/5=46875/5=9375(1)
反过来,当计数器初值确定时,决定了电机的转速,如计数初值为625时,有电机转速为1步每秒(本设计中的慢风速);当计数初值为125时,电机转速为375步每秒(本设计中的快快速)。具体设置初值及风速见表1。
3.3 类型选择
主要是采用定时器来实现停转时间,当工作在自然状态和睡眠状态时,开启定时器开始计时,通过初始化定时器时设置初值,用来控制停转的时间,若计时结束则关闭定时器。
4 结束语
针对当前家庭广泛使用的家用电扇存在的不足,本文设计了简易可行,造价低廉,功能丰富的一款自动控制家用电扇,市场性很好。
参考文献
[1]周荷琴.微型计算机原理与接口技术.合肥:中国科学技术大学出版社,2004.12
[2]DVCC-DJ4电机控制机电一体化实验仪使用说明书.浙江:启东计算机厂有限公司,2006
[3]51单片机C语言教程.电子工业出版社,2009.1