基于单片机的电风扇摸拟控制系统设计.docx
《基于单片机的电风扇摸拟控制系统设计.docx》由会员分享,可在线阅读,更多相关《基于单片机的电风扇摸拟控制系统设计.docx(11页珍藏版)》请在冰豆网上搜索。
![基于单片机的电风扇摸拟控制系统设计.docx](https://file1.bdocx.com/fileroot1/2023-2/1/406b050a-6b19-4071-86ee-29e5bf25feb9/406b050a-6b19-4071-86ee-29e5bf25feb91.gif)
基于单片机的电风扇摸拟控制系统设计
中原工学院
《单片机》课程设计
题目基于单片机的电风扇模拟控制系统设计
学生姓名
专业班级电气自动化技术
学号
院(系)电气工程学院
指导教师
完成时间2018年11月16日
总评成绩
1课程设计的目的
电风扇曾一度被认为是空调产品冲击下的淘汰品,其实并非如此,市场人士称,家用电风扇并没有随着空调的普及而淡出市场,近两年反而出现了市场销售复苏的态势。
其主要原因:
一是风扇和空调的降温效果不同——空调有强大的制冷功能,可以快速有效地降低环境温度,但电风扇的风更温和,更加适合老人儿童和体质较弱的人使用;二是电风扇有价格优势,价格低廉而且相对省电,安装和使用都非常简单。
尽管电风扇有其市场优势,但传统电风扇还是有许多地方应当进行改良的,最突出的缺点是它不能根据温度的变化适时调节风力大小,对于夜间温差大的地区,人们在夏夜使用电风扇时可能遇到这样的问题:
当凌晨降温的时候电风扇依然在工作,可是人们因为熟睡而无法察觉,既浪费电资源又容易引起感冒,传统的机械定时器虽然能够控制电风扇在工作一定后关闭,但定时范围有限,且无法对温度变化灵活处理。
鉴于以上方面的考虑,我们需要设计一种智能电风扇控制系统来解决这些问题。
传统电风扇是220V交流电供电,电机转速分为几个档位,通过人为调整电机转速达到改变风力大小的目的,亦即,每次风力改变,必然有人参与操作,这样势必带来诸多不便。
本设计中的智能电风扇控制系统,是指将电风扇的电机转速作为被控制量,由单片机分析采集到的数字温度信号,再通过可控硅对风扇电机进行调速。
从而达到无须人为控制便可自动调整风力大小的效果。
2课程设计任务和内容
本设计以MCS51单片机为核心,通过温度传感器对环境温度进行数据采集,从而建立一个控制系统,使电风扇随温度的变化而自动变换档位,实现“温度高,风力大,温度低,风力弱”的性能。
另外,通过键盘控制面板,用户可以在一定范围内设置电风扇的最低工作温度,当温度低于所设置温度时,电风扇将自动关闭,当高于此温度时电风扇又将重新启动。
本设计主要内容如下:
①风速设从高到低4个档位,可由用户通过键盘手动设定。
②当温度每降低2℃则电风扇风速自动下降一个档位。
③当温度每升高2℃则电风扇风速自动上升一个档位。
④用户可设定电风扇最低工作温度,当低于该温度时,电风扇自动停转。
3系统主要硬件电路设计
3.1总体硬件设计
图3-1系统总体设计框图
对于单片机中央处理系统的方案设计,根据要求,我们可以选用具有4KB片内E2PROM的AT89C51单片机作为中央处理器。
作为整个控制系统的核心,AT89C51内部已包含了定时器、程序存储器、数据存储器等硬件,其硬件能符合整个控制系统的要求,不需要外接其他存储器芯片和定时器件,方便地构成一个最小系统。
整个系统结构紧凑,抗干扰能力强,性价比高。
3.2数字温度传感器模块设计
温度传感器可以选用LM324A的运算放大器,将其设计成比例控制调节器,输出电压与热敏电阻的阻值成正比,但这种方案需要多次检测后方可使采样精确,过于烦琐。
所以我采用更为优秀的DS18B20数字温度传感器,它可以直接将模拟温度信号转化为数字信号,降低了电路的复杂程度,提高了电路的运行质量。
模块以DS18B20作为温度传感器,AT89C51作为处理器,配以温度显示作为温度控制输出单元。
整个系统力求结构简单,功能完善。
系统工作原理如下:
DS18B20进行现场温度测量,将测量数据送入AT89C51的P3.7口,经过单片机处理后显示温度值,并与设定温度值的上下限值比较,若高于设定上限值或低于设定下限值则控制电机转速进行调整。
图3-2DS18B20温度计原理图
DS18B20直接将测量温度值转化为数字量提交给单片机,工作时必须严格遵守单总线器件的工作时序。
温度值/℃数字输出(二进制)数字输出(十六进制)
+85℃00000101010100000550H
+25.625℃00000001100100010191H
+10.125℃000000001010001000A2H
+0.5℃00000000000010000008H
0℃00000000000000000000H
-0.5℃1111111111111000FFF8H
-10.125℃1111111101101110FF5EH
-25.625℃1111111101101111FF6FH
-55℃1111110010010000FC90H
部分温度值与DS18B20输出的数字量对照表
3.3电机调速与控制模块设计
电机调速是整个控制系统中的一个重要的方面。
通过控制双向可控硅的导通角,使输出端电压发生改变,从而使施加在电风扇的输入电压发生改变,以调节风扇的转速,实现各档位风速的无级调速。
电机调速原理可控硅的导通条件如下:
1)阳-阴极间加正向电压;
2)控制极-阴极间加正向触发电压;
3)阳极电流IA大于可控硅的最小维持电流IH。
电风扇的风速设为从高到低5、4、3、2、1档,各档风速都有一个限定值。
在额定电压、额定功率下,以最高转速运转时,要求风叶最大圆周上的线速度不大于2150m/min。
4系统软件设计
4.1数字温度传感器程序设计
本系统的运行程序采用汇编语言编写,采用模块化设计,整体程序由主程序和子程序构成。
4-1数字温度传感器模块程序流程图
如图4-1所示,主机控制DS18B20完成温度转换工作必须经过三个步骤:
初始化、ROM操作指令、存储器操作指令。
单片机所用的系统频率为12MHz。
根据DS18B20初始化时序、读时序和写时序分别可编写4个子程序:
初始化子程序、写子程序、读子程序、显示子程序。
DS18B20芯片功能命令表如下:
DS18B20功能命令表命令功能描述命令代码
CONVERT开始温度转换44H
READSCRATCHPAD读温度寄存器BEH
READROM读DS18B20序列号33H
WRITESCRATCHPAD将警报温度值写如暂存器4EH
MATCHROM匹配ROM55H
SEARCHROM搜索ROMF0H
ALARMSEARCH警报搜索ECH
SKIPROM跳过读序列号的操作CCH
READPOWERSUPPLY读电源供电方式B4H
主要程序如下:
…
MAIN:
;初始化
LCALLRST_DS18B20
LCALLGET_TEMPER
MOVA,20H
MOVC,08H
RRCA
MOVC,09H
RRCA
MOV20H,A
LCALLDISPLAY
AJMPMAIN
RST_DS18B20:
SETBP3.7
DJNZR1,RST1
SETBP3.7
NOP
NOP
MOVR0,#25H
RST2:
JNBP3.7,RST3
DJNZR0,RST2
LJMPRST4
RST3:
SETBFLAG
LJMPRST5
RST5:
MOVR0,#115
RST6:
DJNZR0,$
RET
WR_DS18B20:
;写数据子程序
MOVR2,#8
CLRC
MOVR3,#6
DJNZR3,$
RRCA
MOVR3,#25
DJNZR3,$
NOP
DJNZR2,WR1
RET
RD_DS18B20:
;读数据子程序
MOVR4,#2
MOVR1,#20H
READ1:
MOVR2,#8
READ2:
CLRC
NOP
MOVR3,#9
READ3:
DJNZR3,READ3
MOVR3,#23
READ4:
DJNZR3,READ4
RRCA
DJNZR2,READ2
MOV@R1,A
INCR1
DJNZR4,READ1
RET
4.2电机调速原理与控制模块程序流程
采用双向可控硅过零触发方式,由单片机控制双向可控硅的通断,通过改变每个控制周期内可控硅导通和关断交流完整全波信号的个数来调节负载功率,进而达到调速的目的。
由于INT0信号反映工频电压过零时刻,因此只要在外中断0的中断服务程序中完成控制门的开启与关闭,并利用中断服务次数对控制量n进行计数和判断,即每中断一次,对n进行减1计数,如果n不等于0,保持控制电平为“1”,继续打开控制门;如n=0,则使控制电平复位为“0”,关闭控制门,使可控硅过零触发脉冲不再通过。
这样就可以按照控制处理得到的控制量的要求,实现可控硅的过零控制,从而达到按控制量控制的效果,实现速度可调。
1)回路控制执行程序。
主回路控制执行程序的任务是初始化数据存储单元,确定电机工作参数/,并将其换算成“有效过零脉冲”的个数;确定中断优先级、开中断,为了保证正弦波的完整,工频过零同步中断INT0确定为高一级的中断源。
2)断服务程序,执行中断服务程序时,首先保护现场,INT0中断标志置位,禁止主程序修改工作参数,然后开始减1计数,判断是否关断可控硅,最后INT0中断标志位清零,还原初始化数据,恢复现场,中断返回。
(设1秒钟通过波形数N=100)
4.3主要程序
外中断INT0的部分中断响应程序如下:
ORG0003H
INTD0:
PUSHACC
PUSHPSW
PUSHDPH
PUSHDPL
SETB24H.0
MOVA,5FH
JZTING1
DECA
MOV5FH,A
LJMPFAN2
TING1:
…
FAN2:
MOVA,5BH
JZTING2
DECA
MOV5BH,A
LJMPZONG
TING2:
…
ZONG:
MOVA,59H
JZKAI
DECA
MOV59H,A
LJMPEXIT
KAI:
CLR24H.0
JB26H.0,KAI2
KAI2:
MOVA,66H
JZEXIT1
EXIT1:
MOV5FH,5AH
MOV5BH,66H
MOV59H,#100
EXIT:
POPDPL
POPDPH
POPPSW
POPACC
RETI
5总结
首先,通过这次应用系统设计,在很大程度上提高了自己的独立思考能力和单片机的专业知识,也深刻了解写一篇应用系统的步骤和格式,有过这样的一次训练,相信在接下来的日子我们都会了,而且会做得更好。
我所写的系统主要根据目前节智能化电风扇技术的发展趋势和国内实际的应用特点和要求,采用了自动化的结构形式,实现对电风扇转速的自动控制。
系统以单片机AT89C51为核心部件,单片机系统完成对环境温度信号的采集、处理、显示等功能;用Protel软件绘制电路原理图和PCB电路印刷板图,由Protues软件进行访真测试,利用MCS51汇编语言编制,运行程序该系统的主要特点是:
1)适用性强,用户只需对界面参数进行设置并启动系统正常运行便可满足不同用户对最适合温度的要求,实现对最适温度的实时监控。
2)系统成本低廉,操作非常简单,随时可以根据软件编写新的功能加入产品。
操作界面可扩展性强,只要稍加改变,即可增加其他按键的使用功能。
本系统在当今提倡人性化设计和健康产品的环境下具有非常好的市场前景。
本设计在模拟检测中运行较好,但采样据不太稳定。
功能上的缺憾是对于两个档之间的临界温度处理不好,并且档位太少。
还有待改进。
参考文献
[1]明德刚.DS18B20在单片机温控系统中的应用.贵州大学学报,2008,2
[2]黄朝民,肖明清,吴志强.单片机原理与应用.现代电子技术,2016,12
[3]刘进山.基于MCS-51电风扇智能调速器的设计.电子质量,2014,10
[4]靳达单片机应用系统开发实例导航.北京:
人民邮电出版社,2015.10
[5]张俊谟.单片机中级教程.原理与应用.北京:
北京航空航天大学出版社,2010.6
[6]何立民.MCS-51系列单片机应用系统设计(系统配置与接口技术)
[7]贾更新.电子技术实验与课程设计,西北工业大学出版社,2017
附录1:
总体电路原理图
附录2:
实物图
附录3:
元器件清单
序号
名称
型号规格
数量
1
单片机
STC89C52
1
2
数码管
5010AS
1
3
三极管
9012
4
5
电阻
1K
15
6
电阻
10K
3
7
按键开关
5
9
温度传感器
DS18B20
1
10
电解电容
10Uf/10v
1
11
晶振
12MHZ
1
12
电容
27PF
2
13
排阻
10K
1
14
导线
若干