资源描述
*****学院
课 程 设 计
课程名称: 智能仪器
题目: 电风扇模拟控制系统设计
专业班次:
姓 名:
学 号:
指导教师:
学 期: 2011-2012学年 第一学期
日 期: 2011。12
11
目 录
引言 Ⅰ
第一章 电风扇控制系统原理 1
1。1 系统总体设计主要内容 1
1.2 主要内容 1
1。3 控制装置的原理 1
1。4 设计方案特点 1
第二章 系统主要硬件设计 2
2。1 AT89C51单片机简介 2
2。2 系统硬件设计电路图 3
2.3 单片机复位电路、显示模块和时钟电路 3
2.3。1 复位电路 3
2.3.2 时钟电路 3
2.3.3 显示模块 4
第三章 系统软件设计 5
3。1 PWM控制方法 5
3.2 占空比 5
3.3 电风扇控制设计主程序流程图 6
3.4 电机控制模块与定时器T1中断流程图 7
第四章 调试与仿真 8
4。1 软件仿真 8
4.2 仿真运行 8
第五章 结论 9
参考文献 10
附 录 11
引 言
许多边缘、交叉学科的发展促进了现代科学技术的进步,尤其是对机电一体化、自动控制、计算机技术以及光电通信技术等科学领域的意义更是非同一般.本文设计的智能电风扇正是以上交叉学科的有机结合体。它的独特之处在于巧妙的采用了红外遥控技术、单片机控制技术,把智能控制技术用于家用电器的控制中,通过主控单片机AT89C51对电风扇实施智能控制.
本次设计用到了微电子技术、电子计算机技术、现代通讯技术、光电子技术,新技术的成群崛起,将促进不同原理、不同性能、不同结构和用途的电子产品。作为一种老式家电,电风扇具有价格便宜、摆放方便、体积轻巧等特点.由于大部分家庭消费水平的限制,电风扇作为一个成熟的家电行业的一员,尤其在中小城市,以及乡村将来一段时间内仍然会占有市场的大部分份额。面临庞大的市场需要的同时,也要提高电风扇的市场竞争力。使之在技术含量上有所提高,应使风扇不仅功能多样,操作简便,而且更加安全可靠。
为此,在现有市场多功能电风扇的基础上,我们提出了一种新型的智能电风扇。该风扇功能更多,添加了很多人性化的设计,如安全保护,倾倒保护,智能照明等,使电风扇更加人性化.可实现:多级调速功能,即提供更多的风力级别和风型,提高用户的舒适度;定时工作功能,即该定时功能可以让用户自己定制风扇工作时间的长短,以提供更人性化的服务。
第一章 电风扇控制系统原理
1.1 系统总体设计主要内容
键盘功能输入
AT89C51
控制电机
输出显示
图2.1 电风扇系统总体设计
1。2 主要内容
本设计以AT89C51单片机为核心,从而建立一个控制系统,本设计内容:实现弱风、中风、强风(1、2、3、4档)然后显示数字1,2,3,4.
2.2 控制装置的原理
传统电风扇供电采用是200V交流电,电机转速分为几个档位,通过人工手动调整电机转速达到改变风速的目的,每改变一次风力,必然有人参与操作,这样就会带来诸多的不便。
本设计介绍了一种AT89C51单片机的智能电风扇调速器的设计,该设计巧妙利用了单片机控制技术、调速技术,把智能控制技术应用于家用电器的控制中,将电风扇变成智能化.初始加电时,电风扇不加电,一位数码显示器显示0,只有按下按钮电路就将按系统默认控制负载定时工作的时间方式自动开始运行。在进行风速调节过程中,系统采用一位数码管显示,显示直观、准确。
1。3 设计方案特点
初始加电时,电风扇不加电,一位数码显示器显示0,只有按下按钮电路就将按系统默认控制负载定时工作的时间方式自动开始运行。在进行风速调节过程中,系统采用一位数码管显示,显示直观、准确。
第二章 系统主要硬件设计
2.1 AT89C51单片机简介
AT89C51是一个低功耗,高性能CMOS8位单片机,片内含4kBytes ISP(In-system programmable)的可反复擦写1000次的Flash只读程序存储器,器件采用ATMEL公司的高密度、非易失性存储技术制造,兼容标准MCS-51指令系统及89C51引脚结构,芯片内集成了通用8位中央处理器和ISP Flash存储单元,功能强大的微型计算机的AT89C51可为许多嵌入式控制应用系统提供高性价比的解决方案。AT89C51具有如下特点:40个引脚,4k Bytes Flash片内程序存储器,128 bytes的随机存取数据存储器,32个外部双向输入/输出(I/O)口,5个中断优先级2层中断嵌套中断,2个16位可编程定时计数器,2个全双工串行通信口,片内时钟振荡器。
此外,AT89C51设计和配置了振荡频率可为0Hz并可通过软件设置省电模式。空闲模式下,CPU暂停工作,而RAM定时计数器,串行口,外中断系统可继续工作,掉电模式冻结振荡器而保存RAM的数据,停止芯片其它功能直至外中断激活或硬件复位.同时该芯片还具有PDIP、TQFP和PLCC等三种封装形式,以适应不同产品的需求。AT89C51单片机的基本结构和外部引脚如图2.1所示 .
图3。1 AT89C51单片机
2.2 系统硬件设计电路图
电风扇设计系统以AT89C51单片机为核心,由时钟电路,复位电路,显示电路,键盘,电机组成,如图2.2所示。
图2.2 电风扇设计总电路图
2.3 单片机复位电路、显示模块和时钟电路
2.3。1 复位电路
首先形成单片机最小系统,在89C51单片机芯片 XTAL1、XTAL2 加入时钟电路,RST加入复位电路,EA,加入高电平.89C51的复位是由外部的复位电路来实现的。复位电路分为上电复位和手动复位,我们采用的是上电+手动复位,正常工作时按下 S1 键,9 脚变成高电平,单片机复位,按键松开,通过电容放电,9 脚回到低电平。采用的是12MHZ 晶振,所以 C=10uf,R1=8。2K,R2=2OOΩ。如图2.3所示。
图2.3 复位电路
2。3。2 时钟电路
89C51单片机的时钟信号通常有两种方式产生:一是内部时钟方式,二是外部时钟方式。采用内部时钟方式:89C51 单片机各功能的运行都是时钟控制信号为基准,有条不紊的工作。因此,时钟频率直接影响单片机的速度,始终电路的质量也直接影响单片机系统的稳定性.89C51内部有一个用于构成振荡器的高增益反相放大器,该高增益反相放大器的输入端为芯片引进 XTAL1,输出端为引脚 XTAL2.这两个引脚跨接石英晶体振荡器(简称晶振)和微调电容,就构成一个稳定的自激振荡器,如图 2。4时钟电路所示,是89C51内部时钟方式的振荡器电路。电路中的电容 C1、C2 典型值通常选择30pF,对外接电容虽然没有严格要求,但电容的大小会影响振荡器频率的高低。振荡器稳定性和起振的快速性.晶振的频率越高,则系统的时钟频率也就越高,单片机的运行速度也越快,此次实验我们选择的晶振是12MHZ晶振。如图2.4所示。
图2。4 时钟电路
2。3.3 显示模块
显示模块采用数码管,在显示模块中与以往的不同之处在与加入了指示灯模块,将指示灯加在断码所在的I/O口上了,将指示灯进行编码进行显示,在显示模块中考虑到电路最优化问题,位选口所需的电流较大些,而P2口所承受的电流较大一些,所以位选选择为P0口,而断码选在P2口上,如图2.5所示.
图2.5 显示模块
第三章 系统软件设计
3.1 PWM控制方法
SPWM(Sinusoidal PWM)法是一种比较成熟的、目前使用较广泛的PWM法。前面提到的采样控制理论中的一个重要结论:冲量相等而形状不同的窄脉冲加在具有惯性的环节上时, 其效果基本相同。SPWM法就是以该结论为理论基础,用脉冲宽度按正弦规律变化而和正弦波等效的PWM波形即SPWM波形控制逆变电路中开关器件的通断, 使其输出的脉冲电压的面积与所希望输出的正弦波在相应区间内的面积相等,通过改变调制波的频率和幅值则可调节逆变电路输出电压的频率和幅值。
PWM 调速系统具有以下特点:
1.主电路简单,所用功率元件少,且工作于开关状态,因此电路的导通损耗小,装置效率比较高;
2。开关频率高,可避开机床的共振区,工作平稳;
3。采用功率较小的低惯量电机时,具有高的定位速度和精度;
4.低速性能好,稳速精度高,调速范围宽;
5。系统频带宽,动态响应好,抗干扰能力强。
3。2 占空比
在一串理想的脉冲序列中(如方波),正脉冲的持续时间与脉冲总周期的比值。例如:脉冲宽度1μs,信号周期4μs 的脉冲序列占空比为0。25.在一段连续工作时间内脉冲占用的时间与总时间的比值.在 CVSD 调制中,比特“1"的平均比例。在周期型的现象中,现象发生的时间与总时间的比。占空比是高电平所占周期时间与整个周期时间的比值,如图3。1所示。
图3。1 占空比
3.3 电风扇控制设计主程序流程图
初始化
显示
按键是否有按下
置占空比1:3
按键是否有按下
Y
置占空比1:6
N
Y
N
按键是否有按下
置占空比1:9
N
Y
结束
开始
图3.2 主程序流程图
3。4 电机控制模块与定时器T1中断流程图
PWM调制
Y
按键是否有按下
开始
N
PWM输出
速度显示
结束
图3.3 电机控制模块图
关中断程序
电机是否高电平
标志位为1
标志位为1
置标志位
占空比达到
电机输出
置定时器T1初值
清标志位
电机输出
清标志位
中断返回
开中断
置定时器T1初值
占空比达到
置标志位
N
N
N
Y
Y
Y
图3.4 定时器T1中断图
第四章 调试与仿真
4。1 软件仿真
1、把程序在Keil uVision3中调试,成功无错误后生成Hex文件。
2、根据电路图在proteus软件中回去电路图,检查无错误。
3、双击89C51导入生成Hex文件。
4、点击proteus软件左下方的开始键,进行仿真,观察高低电平情况.
4.2 仿真运行
开关按下时,单片机输出一定的占空比,电机的转速也发生变化,同时数码管显示数字。通过示波器可以看到占空比的波形,如图4.1所示。
图4。1 波形及其仿真图
第五章 结论
通过本次设计,使我学到了许多书本上无法学到的知识,也使我深刻体会到单片机技术应用领域的广泛。不仅让我对学过的单片机知识有了很多的巩固,同时也对单片机这一门课程产生更大的兴趣。在本次设计过程中,我学会了在网络上查找有关设计的个硬件的资源,其中包括:直流电机PWM调速·AT89C51的脚图的资料。本系统是以单片机AT89C51芯片为核心部件,实现了电风扇系统控制功能,在软件上是花费时间最多的,我们上网找资料,上图书馆,尽可能的了解有关于电风扇的知识.通过这次设计,使我得到了一次用专业知识、专业技能分析和解决问题全面系统的锻炼。使我在单片机的基本原理、单片机应用系统开发过程,以及在常用编程设计思路技巧的掌握方面都能向前迈了一大步。
在设计的过程中,不断的学习,思考和同学间的相互讨论,运用科学的分析问题的方法解决遇到的困难,掌握单片机系统一般的开发流程,学会对常见问题的处理方法,积累设计系统的经验,充分发挥教学与实践的结合。全能提高个人系统开发的综合能力,开拓了思维,为今后能在相应工作岗位上的工作打下了坚实的基础。不但加深我对在课程上所学到的单片机理论知识的认识和理解,重新让自己认识到了这门学科的在应用方面的广阔前景,并且通过知识与应用于实践的结合更加丰富了自己的知识。扩展了知识面,不但掌握了本专业的相关知识,而且对其他专业的知识也有所了解,而且较系统的掌握单片机应用系统的开发过程,因而自身的综合素质有了全面的提高。经过这次一个较完整的产品设计和制作过程,对于认识到自己在知识方面存在的不足,明确今后的学习方向是非常有益的,为将来的的就业提前打了下坚实的基础。的初期阶段,难度很大,没有头绪。通过求助老师,理清思路。同时,在图书馆里、网上查阅资料,攻克设计中的道道难题。在克服困难的过程中,我学到了许多,特别是在课堂上学不到的东西。总的感受有以下几方面:
1、通过本次设计,我不但对单片机有了更深的了解,对一个课题如何画流程图,编程序等有了一定的认识。
2、进一步加强了我的动手能力和运用专业知识的奴隶,从学习到如何去思考和解决问题,以及如何灵活地改变方法实现设计方案。
3、让我了解到单片机技术对当今人们生活的重要性。同时这次设计的经历也使我受益匪浅,让我知道做任何事情都应脚踏实地,刻苦努力地去做,只有这样,才能做好。
参考文献
[1] 余锡存,曹国华.单片机原理及接口技术[M].西安:西安电子科技大学出版社,2000:174—178.
[2] 邹振春.MCS—51系列单片机原理及接口技术[M].北京:机械工业出版社,2006:186-187,191.
[3] 饶庆和,任德齐.MCS—51系列单片机实用技术[M].北京:电子工业出版社,2003:23-36,73—75.
[4] 张凯.MCS—51单片机综合系统及其设计开发[M].北京:科学出版社,1996.
[5] 朱宇光.单片机应用新技术教程[M].北京:电子工业出版社,2000.
[6] 楼然苗,李光飞.51系列单片机设计实例[M].北京:北京航空航天大学出版社,2003.
[7] 刘守义,杨宏丽,王静霞.单片机应用技术[M].西安电子科技大学出版社,2000.
[8] 何立民.单片机高级教程[M] .北京:北京航空航天大学出版社,2000.
[9] 马忠梅,藉顺心,张凯.单片机的C语言应用程序设计[M] .北京:北京航空航天大学出版社,2003.
[10] 何立民.MCS51系列单片机应用系统设计[M].北京:北京航空航天大学出版社,1992.
[11] 吴金戍,沈庆阳,郭庭吉.8051单片机实践与应用[M] .北京:清华大学出版社,2002.
附 录
#include 〈AT89X51。H>
#define Key P1_1
#define motor P3_2
unsigned char code tab[5]={0xc0,0xf9,0xa4,0xb0,0x99}; //数码管编码
unsigned char code set[4]={0,3,6,9}; //PWM 占空比90%,60%,30%
unsigned char code zy[9]={2,4,6,8,9,8,6,4,2}; //自然风
unsigned char tt=0; //档位
unsigned char jj=0;
void delay( unsigned int ms);
void main( void)
{ bit kk=0; //按键
motor = 0;
TMOD = 0x01; //定时器T0,工作方式1
TH0 = -1000/256;
TL0 = -1000%256; //定时1ms
ET0 = 1;
EA = 1;
TR0 = 1;
while(1)
{ P2 = tab[tt] ;
Key =1;
if( Key == 0)
{ delay(10);
Key =1;
if(Key == 0 && kk ==0)
{ tt++;
if(tt>4) tt=0;
P2 = tab[tt] ;
kk =1;
}
}
Key = 1;
if( Key == 1) kk= 0;
}
}
void IT( void ) interrupt 1
{ static unsigned char i = 0;
TH0 = -1000/256;
TL0 = —1000%256; //定时1ms
if(tt<4)
{if( i < set[tt] ) motor =1;
else motor = 0;
i++;
if(i〉=10) i=0;}
else if(tt=4)
{ static unsigned char j = 0;
if(j<zy[jj]) motor=1;
else motor=0;
j++;
if (j>=30)
{ j=0;
jj++;}
if(jj>9)
jj=0; }
}
时间
设计任务
完成情况
教师签名
12月12日—
13日
查找相关设计资料,学习原理
完成
12月14日
辅导解答相关疑问
基本完成
12月15日-
16日
构想设计方案
完成
12月17日—
18日
搭建仿真电路,编写程序
完成
12月19日—
20日
完成课程设计初稿
完成
12月21日
调试仿真电路,修改初稿,初稿上交
完成
12月22日
检查并修稿初稿
基本完成
12月23日
定稿,上交
完成
指导教师意见及成绩评定
对学生设计过程、设计质量的评分依据
总评成绩
指导教师(签名):
年 月 日
教研室及系审定意见
教研室主任(签名):
年 月 日
(系公章)
展开阅读全文