单片机电风扇控制系统的设计毕业设计.docx
- 文档编号:3833673
- 上传时间:2022-11-25
- 格式:DOCX
- 页数:31
- 大小:843.39KB
单片机电风扇控制系统的设计毕业设计.docx
《单片机电风扇控制系统的设计毕业设计.docx》由会员分享,可在线阅读,更多相关《单片机电风扇控制系统的设计毕业设计.docx(31页珍藏版)》请在冰豆网上搜索。
单片机电风扇控制系统的设计毕业设计
摘要1
1绪论2
课题背景2
课题研究的目的和意义3
系统的设计要求及内容3
2电风扇系统的方案论证3
保护电路的选择3
@
控制核心的选择4
显示电路的选择5
3系统的主要硬件电路设计5
总体硬件设计5
过热检测模块的设计8
电机调速与控制模块设计9
显示与控制模块设计10
键盘模块设计11
。
4系统程序设计及仿真12
主程序流程图设计12
定时器T0中断程序流程图设计13
A/D转换测量子程序流程图设计14
系统仿真结果14
源程序15
结论15
致谢15
—
参考文献15
附录A:
单片机电风扇控制系统的设计原理图16
附录B:
仿真结果图17
附录C:
参考程序22
单片机电风扇控制系统的设计
电子信息科学与技术专业学生:
指导老师:
摘要:
本论文设计了一个单片机电风扇控制系统。
系统采用MCS-52单片机为控制核心,设计了按键电路、显示电路和过热保护电路,并采用C语言进行编程、调试和仿真,实现了电风扇的几项基本功能:
电机的正反转功能,0-990秒的定时功能,以及自然、正常、睡眠三种风类的选择功能。
经过多次的测试与电路的调整、系统的各项功能均能正常实现。
关键词:
MCS-52,电风扇,保护电路,定时
DesignoftheelectricfancontrollersystembasedonMCU
ElectronicsandInformationScienceandTechnology
Candidate:
CAOQiwen
Advisor:
PENGJianying
Abstract:
Inthispaper,itdesignedanelectricfancontrollersystembasedonsystemusedMCS-52microcontrollerasthecoreofcontrol,designedthekeycircuit,displaycircuitandoverheatingprotectioncircuitwhichusedClanguagetocompletetheprogramm,testandsimulation,ithasrealizedafewbasicfunctionofelectricfan:
reversingfunction,fixedtimeof0-990secondsandthreekindsofwindselectingwhicharenatural,normalandmanytestsandimprovement,allofthefunctionscanworknatually.
Keywords:
MCU,Electricfan,Protectioncircuit,Fixedtime
1绪论
课题背景
电风扇在我国,是80年代开始兴起的一种小型的家用电器,刚开始它的功能单一,而且耗电量大,随着技术的不断更新,它的功能更加强大,更加趋于人性化。
作为一种老式的家电,电风扇具有价格便宜,摆放方便,体积轻巧等特点,由于大部分家庭消费水平的限制,电风扇作为一个成熟家电行业的一员,尤其是在中小城市,以及乡村将来一段时间内依然占有市场大部分份额。
面临庞大的市场需要的同时,也要提高电风扇的市场竞争力。
使之在技术含量上有所提高,使风速不仅功能多样,操作简便,而且更加安全可靠。
本设计采用了单片机作为该电风扇系统的控制核心。
在国际市场上,单片机产品的类型很多。
其中Intel公司的产品比较领先占有较大销售份额。
在我国Intel公司的MCS-48系列,MCS-51系列,MCS-96系列的各种机型用得最多,占主流地位。
随着大规模集成电路技术的演进,单片机的性能在快速提高。
其生产工艺经历了MOS,NMOS,HMOS,CMOS等各个阶段,正朝着CHMOS(高速型CMOS)工艺的方向发展并继续提高集成度;增大RAM,ROM容量,增多功能模,提高速度,降低功耗。
人类社会已经进入信息时代,人民的社会活动主要依靠对信息资源的开发及获取,传输与处理。
传感器处于研究对象与测试系统的接口位置,即检测与控制系统之首。
因此,传感器成为感知,获取与检测信息的窗口,一切科学研究与自动化生产过程要获取的信息,都要通过获取并通过它转换为容易传输与处理的电信号。
所以传感器的作用与地位就特别重要了。
若将计算机比喻为人的大脑,那么传感器就可以比喻为人的感觉器官了。
可以设想,没有功能正常而完美的感觉器官,不能迅速而准确的采集与转换欲获得的外界信息,纵有再好的大脑也无法发挥其应有的作用。
科学越发达,自动化程度越高,对传感器的依赖性就越大。
所以,20世纪80年代以来,世界各国都将传感器技术列为重点发展的高技术,备受重视。
课题研究的目的和意义
面临庞大的市场需要,需要提高电风扇的市场竞争力。
使之在技术含量上有所提高,应使风速不仅功能多样,操作简便,而且更加安全可靠,为此,在将要走出大学校门,撰写毕业论文之计,我选择《电风扇控制系统设计》作为我的毕业设计研究课题。
大学期间,分别学习了《单片机原理及其应用》,《传感器检测及应用技术》等课程,对单片机的一些应用也略知一二。
所以在设计课题的时候,给电风扇赋予了人性化的设计,如过热保护功能。
相信其人性化的设计将大大提高电风扇的市场竞争力。
而且最主要的是通过传感器的控制使得科技的应用深入生活中,让广大人民能享受到科技带来的方便。
系统的设计要求及内容
本设计以MCS-52单片机为核心,通过按键扫描电路和显示电路建立一个控制系统,使电风扇人为的变换档位,能够满足人们的需求。
另外,通过过热保护电路可以很好的保护电机,当电机发热时,电路报警并且电机停转,当电机温度恢复正常时,电机又正常工作。
本设计主要内容如下:
1、用4位数码管实时显示电风扇的工作状态,最高位显示风类:
“自然风”显示“1”、“正常风”显示“2”、“睡眠风”显示“3”。
后3位显示定时时间:
动态倒计时显示剩余的定时时间,无定时显示“000”。
2、设计“自然风”,“正常风”和“睡眠风”三个风类键用于设置风类;设计一个“定时”键,用于定时时间长短设置;设计一个“摇头”键用于控制电机摇头。
在整个定时状态下,电路具有允许用户随时自行选择使用“自然风”状态,也可选择使用“常风”和“睡眠风”状态。
设计过热检测与保护电路,若电风扇电机过热,则电机停止转动,电机冷却后电机又恢复转动。
2电风扇系统的方案论证
保护电路的选择
保护电路可由以下几种方案可供选择:
方案一:
选用热敏电阻作为感测温度的核心元件,通过运算放大器放大于是温度变化引起热敏电阻的变化,进而导致输出微弱的电压变化信号,再用A/D转换芯ADC0809将模拟信号转化为数字信号输入单片机处理。
方案二:
采用热电偶作为感测温度的核心元件,配合桥式电路,运算放大电路和A/D转换电路,将电机温度变化信号送入单片机处理。
方案三:
选用ADC0809作为过热保护电路的核心部件,假设先设定一个标准电压值,通过0-5V模拟电压输入进行模数转换,如果数据超过标准值则单片机对电机进行相应操作,使电机启停。
对于方案一,采用热敏电阻有价格便宜、元件易购的优点,但热敏电阻对温度的细微变化不敏感,在信号采集、放大、转换过程还会产生失真和误差,并且由于热敏电阻的R-T关系的非线性,其本身电阻对温度的变化存在较大的误差,虽然可以通过一定的电路给以纠正,将使电路复杂稳定性降低,故该方案不适合本系统。
对于方案二,采用热电偶和桥式测量电路相对于热敏电阻和其对温度的敏感性和器件的非线性误差都有较大的提高,其测量范围也非常高,从-50摄氏度到1600摄氏度均可测量,但是依然存在电路复杂,对过热检测达不到本系统要求的标准,故不采用此方案。
对于方案三,取代了传感器检测电路,大大降低了外接放大转换等电路的误差因素,通过运用电压值来模拟电机温度值,使得其分辨率很高,可以满足系统要求,故采用方案三。
控制核心的选择
方案一:
采用电压比较电路作为控制部件。
温度传感器采用热敏电阻或热电偶等,温度信号转为电信号并放大,集成运放组成的比较电路判决控制风扇的转速。
当高于或低于某值时将风扇切换到相应档位。
方案二:
采用单片机作为控制核心,以软件编程的方式进行风速判断,并在端口输出控制信号。
对于方案一,采用电压比较电路具有电路简单、易于实现,以及无需编写软件程序的特点,但控制方式过于单一,不能自由设置上下限动作及定时时间,无法满足不同用户以及不同环境下的要求,故不采用此方案。
对于方案二,以单片机作为控制器,通过编写程序不但能将传感器检测到的模拟温度值通过A/D转换传给单片机进行处理,而且用户能通过键盘接口,自由设置上下限定时时间,满足全方位的需求,并且通过检测电路判断电机温度是否过高,能精确把握电机温度的微小变化。
故本系统采用方案二。
显示电路的选择
方案一:
采用液晶显示屏LCD显示电机状态。
方案二:
采用八位共阴数码管显示电机状态,动态扫描显示方式。
对于方案一,液晶显示屏具有显示字符优美,不但能显示数字还能显示字符甚至图形的优点,这是LED数码管无法比拟的,但是液晶显示模块价格昂贵,驱动程序复杂,因为一个字符由6×8或8×8点阵组成,既要找到和显示屏上某几个位置对应的显示RAM的8字节,还要使每字节的不同位有的为“1”,有的为“0”,为“1”点亮,为“0”的不亮。
从硬件电路复杂性原则考虑,故不采用。
对于方案二,该方案成本低廉,显示温度明确醒目,在夜间也能看见,功耗极低,显示驱动程序的编写也相对简单,这种显示方式得到广泛应用。
不足的地方是扫描方式是循环使四个LED依次点亮,因此会有闪烁,但是人眼的视觉暂留时间为20M,当数码管扫描周期小于这个时间时人眼看不到闪烁,故采用本方案。
3系统的主要硬件电路设计
总体硬件设计
本系统由五个模块组成,分别是输入模块、显示模块、电机控制模块、过热保护模块以及单片机控制系统。
其中单片机控制系统是核心,由AT89C52、晶振和复位电路组成。
它通过处理输入的各种数据信息来对其它模块发出指令,进行相应的操作。
输入模块由5个按键组成,分别控制电机的风速、正反转和定时时间。
显示模块由8位共阴数码管组成,显示定时时间和风速。
过热保护模块由ADC0809和外围电路组成,通过设定电压初始值使电机超值停转并且相应二极管发光报警。
电机控制模块由L298和其它的元器件组成,它主要是放大输入信号的倍数,用来驱动电机。
系统总体设计框图如图所示:
图系统原理框图
对于单片机中央处理系统的方案设计,根据要求,我们可以选择AT89C52单片机作为中央处理器,作为整个控制系统的核心,AT89C52内部包含了定时器,程序存储器、数据存储器等硬件,其硬件能符合整个控制系统的要求,不需要外接其它存储器和定时器件、方便,整个系统结构紧凑,抗干扰能力强,性价比高,是比较适合的方案。
AT89C52单片机的性能及应用
单片机是早期SingleChipMicrocomputer的直译,它反映了早期单片机的形态和本质。
然后,按照面向对象,突出控制功能,在片内集成了许多外围电路及外设接口,突破了传统意义上的计算机结构,发展成microcontroller的体系结构,目前国外已普遍称之为微控制器MCU(MicrocontrollerUnit)。
鉴于它完全作嵌入应用,故又称为嵌入式微控制器(EmbeddedMicrocontroller)[1]。
单片机的主要特征
由于AT89C52单片机的设计时间有限其精度不是很高,它的测温范围在0~100℃之间,可以直接应用在对温度精度要求不高的各种现场。
单片机多通道温度采集测控系统采用数字温度传感器满足温度测量,并将温度采集信号转换成数字信号经单片机处理并经输出驱动电路显示于共阴极数码管。
该测量仪可实现多点(4点)不同区域测量,单通道,循环测量。
除此之外,考虑到测控会用于工业生产当中,增加了超温报警功能,可以设置温度的上下限,可靠性要求比较高,软件编程比较难[2]。
AT89C52单片机温度测控仪采用ATMEL公司的AT89C52单片机,采用双列直插(DIP),有40个引脚。
该单片机采用ATMEL公司的高密度非易失性存储技术制造,与美国INTEL公司生产的MCS-51系列单片机的指令和引脚设置兼容。
其主要特征如下:
1、8位CPU
2、内置8K字节可重复编程Flash,可重复擦写1000次
3、完全定态操作:
0Hz~24Hz,可输出时钟信号
4、256字节的片内数据存储器
5、32根可编程I/O线
6、2个16位定时/计数器
7、中断系统有6个中断源,可编为两个优先级
8、一个全双工可编程串行通道
9、具有两种节能模式:
闲置模式和掉电模式
值得注意的是,P0、P1、P2、P3口作为普通I/O口使用时都是准双向口结构,其输入操作和输出操作本质不同,输入操作是读引脚状态,输出是对锁存器的写入操作。
当内部总线给口锁存器置0或1时,锁存器中的0、1状态立即反映到引脚上。
但在输入操作时,如果锁存器状态为0引脚被钳位0状态,导致无法读出引脚的高电平输入。
因此,准双向口作为输入口时,应先使锁存器置1(称之为置输入方式)。
另外,I/O口的端口自动识别功能,保证了无论是P1口(低8位地址)P2口(高8位地址)的总线复用,还是P3口的功能复用,内部资源自动选择不需要用指令进行状态选择。
随着计算机技术的发展,单片机的功能越来越强大,寿命长、速度快、低功耗、低噪声、可靠性高的特点及16位、32位单片机的出现,在工业领域仍具有很大的发展潜力。
硬件系统的设计
单片机应用系统的设计可划分为两部分:
一部分是与单片机直接接口的数字电路范围内电路芯片的设计。
如存储器和并行接口的扩展、定时系统、中断系统扩展,一般的外部设备的接口,甚至于A/D、D/A芯片的接口。
另一部分是与模拟电路相关的电路设计包括信号整形、变换、隔离和选用传感器,输出通道中的隔离和驱动以及执行元件的选用。
(1)从应用系统的总线观念出发,各局部系统和通道接口设计与单片机要做到全局一盘棋。
例如,芯片间的时间是否匹配,电平是否兼容,能否实现总线隔离缓冲等,避免“拼盘”战术。
(2)尽可能选用符合单片机用法的典型电路。
(3)尽可能采用新技术,选用新的元件及芯片。
(4)抗干扰设计是硬件设计的重要内容,如看门狗电路、去耦滤波、通道隔离、合理的印制板布线等。
(5)当系统扩展的各类接口芯片较多时,要充分考虑到总线驱动能力。
当负载超过允许范围时,为了保证系统可靠工作,必须加总线驱动器。
过热检测模块的设计
ADC0809简介
ADC0809是美国国家半导体公司生产的CMOS工艺8通道,8位逐次逼近式A/D模数转换器。
其内部有一个8通道多路开关,它可以根据地址码锁存译码后的信号,只选通8路模拟输入信号中的一个进行A/D转换[3]。
是目前国内应用最广泛的8位通用A/D芯片。
ADC0809的工作原理
ADC0809的工作原理是:
首先输入3位地址,并使ALE=1,将地址存入地址锁存器中。
此地址经译码选通8路模拟输入之一到比较器。
START上升沿将逐次逼近寄存器复位。
下降沿启动A/D转换,之后EOC输出信号变低,指示转换正在进行。
直到A/D转换完成,EOC变为高电平,指示A/D转换结束,结果数据已存入锁存器,这个信号可用作中断申请。
当OE输入高电平时,输出三态门打开。
转换数据的传送A/D转换后得到的数据应及时传送给单片机进行处理。
数据传送的关键问题是如何确认A/D转换的完成,因为只有确认完成后,才能进行传送。
为此可采用下述三种方式[4]。
(1)定时传送方式
对于一种A/D转换器来说,转换时间作为一项技术指标是已知的和固定的。
例如ADC0809转换时间为128μs,相当于6MHz的MCS-51单片机共64个机器周期。
可据此设计一个延时子程序,A/D转换启动后即调用此子程序,延迟时间一到,转换已经完成了,接着就可进行数据传送。
(2)查询方式
A/D转换芯片由表明转换完成的状态信号,例如ADC0809的EOC端。
因此可以用查询方式,测试EOC的状态,即可确认转换是否完成,并接着进行数据传送。
(3)中断方式
把表明转换完成的状态信号(EOC)作为中断请求信号,以中断方式进行数据传送。
电机调速与控制模块设计
电机调速是整个控制系统中的一个重要的方面,通过L298来调节PWM的输出,使输出端电压发生变化,从而使施加在电风扇的输入电压发生改变,以调节电风扇的转速,实现各档位的风速的切换。
L298芯片介绍
L298驱动芯片是SGS公司的产品,内部包含4通道逻辑驱动电路。
是一种二相和四相的专用驱动器,即内部包含二个H桥的高压六双桥式驱动器接收标准TTL逻辑电平信号,可驱动46V、2A以下的电机。
L298有两路电源分别为逻辑电源6V和动力电源12V,ENA、ENB直接接5V电源使电机进入使能状态,IN1和IN2用来控制电路的逻辑功能状态。
由于使用的电机是线圈式,在从运行状态突然转到停止状态和从顺时针状态突然转到逆时针状态时会形成很大的方向电流,在电路中加入二极管就是在产生方向电流的时候进行泄流,保护芯片的安全,表为L298的逻辑功能表[5]。
表L298逻辑功能表
IN1
IN2
ENA
电机状态
X
X
0
停止
1
0
1
顺时针
0
1
1
逆时针
0
0
0
停止
1
1
0
停止
电机调速原理
我们采用的PWM来实现直流电动机的调速,由于直流电机的转速与加在其两端的平均电压成正比,所以在对直流电动机电枢电压的控制和驱动中,目前经常使用的是通过改变电机电枢电压接通时间与通电周期的比值来控制转速,其优点:
控制原理简单输出波动小,线性好,对邻近电路干扰小,缺点是:
功率低,散热问题严重。
占空比示意图如图所示。
图占空比示意图
电动机的电驱绕组两端的电压平均值U为:
式中D为占空比,
。
占空比表示了在一个周期T里开关管导通的时间与周期的比值,D的变化范围为0<=D<=1。
当电源电压UB不变的情况下,输出电压的平均值U取决于与占空比D的大小,改变D值也就改变了输出电压的平均值,从而达到控制电动机转速的目的,即实现了PWM调速。
电机调速模块设计
根据硬件原理图连接好电路,A/D接入单片机上通过程序来控制L298输出控制直流电机的转动。
通过不同按键输出不同的占空比,使直流电机转动。
当自然风键按下时,输出占空比为1:
3的方波;当常风键按下时,输出占空比为3:
1的方波;当睡眠风键按下时,输出占空比为1:
5的方波;当摇头键按下时,电机反转,同时保持原先的风速[6]。
显示与控制模块设计
LED数码管有共阳和共阴两种,都把这些LED发光二极管的负极接到一块(一般是拼成一个8字加一个小数点而作为一个引脚,为共阴管)。
本系统设计采用4位共阴数码管显示电路,在设计4位LED显示时,为了简化电路,降低成本,采用动态显示的方式,4个LED显示共用一个8位的I/O,4个LED数码管的位选线分别由相应的控制,而将其相应的段选线并联在一起,由一个8位的I/O口控制,即P0口。
译码显示电路将档位和定时时间的输出状态经显示译码器译码,通过4位LED七段显示器显示出来。
到达定时时间电机停止转动同时定时时间变为0。
口接一个发光二极管,当电压值超压时二极管灯亮实现报警,此状态下,无论定时时间和风速键是否按下,电机都处于停止状态[7]。
键盘模块设计
键盘方式选择
常用的键盘识别方法有:
行扫描法、线翻转法和利用8270键盘接口的中断法,在本系统中,完全可以不运用中断法完成键盘接口,这是由系统的特殊性决定的。
首先,对于本系统而言,要实现便携式的设计,硬件电路使用的越少越好。
其次,被测信号由外中断引脚输入,未占用单片机4个并行I/O口中的任何一个,系统有足够的资源利用自身I/O完成接口。
最后,只有当传感器输出信号频率为空载频率,系统处于空闲待测的状态下,才允许键盘输入,因此键盘识别占用的CPU时间不会对系统正常工作造成影响,因此直接利用单片机并行接口完成键盘的接口,采用线翻转法进行键盘识别[8]。
实现方案
本系统使用简单的键盘和数码显示器件来完成输入\输出操作的人机界面。
键盘输入信息的主要过程是:
1、CPU判断是否有键按下。
2、确定哪一个键被按下。
3、把此键代表的信息翻译成计算机所识别的代码,如ASCII或者其他代码。
键盘上有很多键,每一个键对应一个键码,以便根据键码转到相应的子程序,进一步实现数据输入和命令处理的功能。
键盘识别的流程如图所示:
图键盘识别流程图
按键消抖可分为硬件消抖和软件消抖两种,在键数较少时可用硬件消除抖动,一种是采用在I/O口上并接合适的电容来解决;另一种是采用RS触发器消抖。
4系统程序设计及仿真
系统软件设计包括主程序设计,A/D转换子程序设计和定时器T0中断程序设计。
主程序流程图设计
软件所要实现的功能有:
按键响应,对ADC0809的控制,对数据的处理和传送显示的数据。
主程序包含初始化、调用A/D转换子程序和调用显示程序,其流程图如图所示:
图主程序流程图
主程序经初始化后,开始四位数码管显示的是“0000”电机停转。
然后进入按键扫描程序,依次对自然风、常风、睡眠风进行扫描,单片机I/O口输出相应的占空比方波,当为自然风时,数码管最高位显示“1”,当为常风时,数码管最高位显示“2”,当为睡眠风时,数码管最高位显示为“3”。
当有定时键按下时,转到定时器T0中断程序进行。
当有摇头键按下时,高低电平翻转,电机开始反转。
定时器T0中断程序流程图设计
定时器T0是用来对定时时间进行控制的,结合数码管动态显示,首先给T0设置工作方式和初始值,由于它不可重装,所以在主程序中必须再次定义它的初始值。
其流程图如图所示。
图定时器T0中断程序流程图
A/D转换测量子程序流程图设计
由于ADC0809在进行A/D转换时要用到CLK信号,而此时的ADC0809的CLK是接在AT89C52单片机的端口上,也就是要求从输出CLK信号供ADC0809使用。
因此产生CLK信号的方法就的使用软件来产生了;由于ADC0809的参考电压VREF=VCC,所以转换之后的数据要经过数据处理。
然后和设定的参考值比较,而实际显示的电压值的关系为
。
其流程图如图所示。
图A/D转换测量子程序流程图
在主程序中,ADC0809的转换程序也是无限循环的,它主要是检测电机是否过热。
本系统中,运用定时器T1作为CLOCK的脉冲信号,由于它的工作方式为2,且初始值216,足以满足ADC0809所转换一次所需要的时间。
设定电机过热电压初始值为,当模拟电压输入量超过这个值时,发光二极管点亮,表示电机过热此时L298使能端变低电平,电机停转。
系统仿真结果
系统仿真结果见附录B。
源程序
源程序见附录C。
结论
在写毕业论文时我深深体会到搞设计的艰辛与困难,电风扇我们都熟悉,但要想把单片机技术运用到电风扇上是不简单的事情。
这次毕业设计让我学到了许多课本上没有的知识,使我受益匪浅,让我认识到无论做任何事情,都要认真对待,要知道自己要做什么,怎么样才能做到,是否能够做好,因此,
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 单片机 电风扇 控制系统 设计 毕业设计