基于单片机的定时开关插座设计.docx
- 文档编号:11017867
- 上传时间:2023-02-24
- 格式:DOCX
- 页数:62
- 大小:1.33MB
基于单片机的定时开关插座设计.docx
《基于单片机的定时开关插座设计.docx》由会员分享,可在线阅读,更多相关《基于单片机的定时开关插座设计.docx(62页珍藏版)》请在冰豆网上搜索。
基于单片机的定时开关插座设计
毕业设计(论文)
题目:
基于单片机的定时开关插座设计
学院:
电子与信息工程
专业:
电子信息工程
班级:
电子1103
某:
曹彬
指导老师:
褚御芝
起讫日期:
2015-3~2015-6
2015年06月
摘要
随着生活节奏的加快,生活水平的提高,节能、智能的观念深入人心,出于节能的目的设计出一款定时开关插座。
本次毕业设计设计出一款定时开关插座,插座可通过按键或遥控器进行定时开关。
本次设计由220vAC转5vDC电源模块,DS1302计时模块,STC89C52单片机模块,LCD1602显示模块,继电器模块,蜂鸣器模块,按键模块和红外遥控模块组成。
本次设计使用STC89C52单片机作为驱动芯片,使用DS1302计时模块提供精确的计时,通过LCD1602显示模块显示年月日时分秒和操作界面,使用继电器控制插座电流的通断,本设计还可以通过遥控器进行定时设置。
本文从硬件设计,软件流程的设计和电路的仿真与调试等方面介绍了定时开关插座的设计过程,实现了定时插座的功能。
最后介绍了设计过程中出现的问题和总结。
关键词:
STC89C52单片机;定时开关;红外遥控
Abstract
Theperceptionofenergyconservationandintelligentgoesdeepintofamilies,withthelifeincreasingandimprovingquickly,Andwedesigntimersocketforenergyconservation.Thedesignisthetimersocket,AndthemainfunctionoftimersocketisthatwetimebykeyorIRRemote.ThedesignconsistsofSTC89C52,DS1302,LCD1602,220VACto5VDCpowersupply,buzzer,key,relay.Thedesign’sdrivermicrochipisSTC89C52,ThedesignusestheDS1302tosupplymoreaccuratetime,AndthedesignusesLCD1602todisplaytheyear,themonth,theday,thehour,theminute,thesecond,andtheoperationinterface.Thedesignalsousestherelaytocontroltheonandoff,Andthetimersocketcantimebytheremotecontrol.Inthispaper,thedesignofthesystemwasintroducedthroughthreeaspectsincludingthehardwaremodules,softwareflowpatternandcircuitdesignanddebugging.Attheendofthispaper,theproblemshappenedduringtheprocessofdesigningthesystemwassummarized.
Keyword:
STC89C52;thetimersocket;IRRemote
第一章绪论
1.1背景
现如今,家用电器的普及给生活带来了巨大的变化,同时,能源的浪费越来越严重。
例如:
手机充电长时间充电,给电池带来损耗,减短电池寿命。
无线路由器不仅有辐射,而且耗电量高。
电视机待机耗电,还会带来线路老化,引发火灾等安全事故。
因而设计出定时开关插座,使生活更加方便。
随着生活水平的提高,家用电器越来越多,随之而来的能耗越来越大,本文介绍的定时开关插座可以实现定时开关的功能,对用电器的开关进行控制,节约不必要的能耗,且可以使用遥控器定时,更加智能化。
定时开关插座可以显示日历和精确的时间,可以充当万年历,同时可以设置24小时任意时间的定时开关。
当实现24小时内的定时时,可以实现两组定时,每组中有一个起始时间,一个结束时间。
定时插座还可以调节插座最初的状态,即初始状态是导通状态或断开状态。
家用电器插入定时开关插座后,即可通过定时插座的时间设置实现定时通断电,节约能耗。
本文介绍了定时开关插座的硬件软件设计流程,通过仿真及调试,最终完成了本次设计。
1.2设计目标
本次设计包括自主选题、查找资料、设计方案、调试系统和撰写报告等过程,需要完成以下目标:
1、了解单片机、LCD602显示屏、DS1302计时芯片等模块的功能和原理,了解各个模块的连接与使用,并能够设计程序实现各模块的相应的功能。
2、了解定时插座系统的产生背景和意义,分析定时插座系统的功能和原理。
3、学习模块化的设计方法,根据系统的功能和原理,分模块的实现系统的硬件电路设计和程序设计。
4、按照设计好的电路进行仿真并搭建实物电路,调试电路,观察结果,实现系统功能。
5、通过本次设计提高自己的动手实践能力,巩固并加深对学习过的知识的理解,积累项目设计的经验。
1.3论文结构
本论文包括摘要、目录、对正文、参考文献、致谢、附录等内容,正文主要包含绪论、硬件电路设计、程序设计、系统测试与结果、总结等五章内容。
第一章为绪论,介绍了定时插座的产生背景和课程设计的目标,并对论文的结构进行了概述。
第二章为硬件电路设计,首先分析了系统的功能,然后由系统功能得系统框图并对系统原理进行了简介,本章的重点是对系统框图中的各个模块的电路设计的介绍,在最后对本章进行了总结。
第三章为软件流程,先是介绍了程序设计的总体思路和根据系统功能和硬件电路设计的流程图,并对本章进行了小结。
第四章为系统测试与结果,先是介绍了系统的电路仿真及其结果,然后介绍了实物调试结果,最后总结了仿真和调试中遇到的问题。
第五章为总结,对毕业设计过程中遇到的问题,积累的经验和心得体会进行了总结。
第二章硬件电路设计
2.1系统功能
定时开关插座设计目的是实现对电器的控制,减少家用电器的耗电,从而方便了人们的生活。
定时开关插座应具备以下功能:
1)显示功能:
能够显示年月日,星期,时分秒。
提供准确的时间。
同时,也可以显示定时时间。
2)定时功能:
定时插座可以实现二种定时模式。
一种可以在24小时内,实现任意时间的设定,定时时间精确到分钟,此模式可以设置两组时间。
另一种实现一小时内,以十分钟为单位的定时设置。
3)提示功能:
当到达设定时间,蜂鸣器响一声提示。
4)遥控功能:
可以用遥控器设定时间。
5)独立电源供电功能:
将220V交流电转化为5V直流电,为继电器供电。
6)按键功能:
可以通过按键设定时间。
2.2系统原理
对系统的功能进行分析后,设计出系统框图,如图2-1所示。
图2-1系统框图
在本次设计中首先将定时插座分为八部分,220vAC转5vDC电源模块,DS1302计时模块,STC89C52单片机模块,LCD1602显示模块,继电器模块,蜂鸣器模块,按键模块,红外遥控模块。
220vAC转5vDC电源模块为继电器供电,无需干电池及其他外部电源,防止共用电源引起干扰,导致单片机紊乱。
DS1302计时模块,DS1302是专门的时钟芯片,不用单片机计时,计时会更加准确,同时可以显示年月日时分秒,使用较少的I/O口,使用方便,同时断电后,有外部电源继续为DS1302供电。
STC89C52单片机模块,STC89C52单片机完成时间的设定,到达设定时间分别,分别给继电器、蜂鸣器一脉冲信号,使得蜂鸣器响一声提示,继电器实现吸合或断开。
LCD1602显示模块,LCD602显示日历和精确的时间,并且可以显示设定时间。
继电器模块实现定时插座的通断。
蜂鸣器模块,当到达设定时间响一声提示。
按键模块,可以调节年月日时间,还可以设定定时时间,s1是确认键,s2、s3可加减时间,s4可以切换模式,s5移动光标。
红外遥控模块,对单片机进行遥控控制。
2.3.1STC89C52单片机模块
图2-2STC89C52单片机模块
如图2-2所示,STC89C52单片机模块,P0口为双向三态口,只有该口可对外部存贮器进行读写操作,与LCD1602显示屏连接,上拉电阻可将P0口输出信号电流拉高,再传输给LCD1602。
P1口是专门为用户使用的I/O口,其中P1.0、P1.2、P1.4、P1.7、P3.4与按钮连接P3.7与蜂鸣器连接,P1.1与继电器连接。
P2.0、P2.1、P2.2口与DS1302连接。
P3.2口与1838T红外接收器相连。
Vcc接5v直流稳压电源,vss接地,EA口接高电平。
Rst接复位电路,上电后实现复位,防止单片机计数溢出。
单片机工作前都需要复位,复位电路的作用就是为单片机提供一定时间的复位脉冲,使单片机的各个部件都处于初始状态,并从初始状态开始工作。
XTAL1,XTAL2为震荡部分,接12MHz晶振,以便单片机内部计时。
2.3.2220VAC转5VDC电源模块
图2-5220VAC转5VDC电源框图
220VAC转5VDC电源模块的设计,先将220VAC通过变压器,降压到9V,然后对交流电流,进行整流滤波,使用桥式整流将交流电变为直流电。
此时,电压还需要进行稳压的过程,最终,得到稳定的直流电源。
图2-6220VAC转5VDC电路
如图2-6,首先将220V、50Hz电源经过T2变压器进行降压,得到9V交流电后,经过D1、D2、D3、D4组成的桥式整流电路,把交流电变为直流电,然后通过C1进行滤波。
然后通过稳压,将电压变得稳定,且使电路能够承受负载,防止负载的改变导致电压发生改变。
Q1与Q2组成复合管,为NPN型,发大率得到提高,还可以降低输入电阻。
LED2有两种功能,一是可以做为信号灯,二是有稳压的作用。
LED1与R3形成的电路有两种功能,一是防止过载,而是防止短路。
R5与R4有分压的功能,流过R4的电压,再经过Q3反馈到复合管中。
最后电容C3稳压,使电路更加稳定。
2.3.3DS1302时钟模块
如下图2-11所示,DS1302具有计时的功能,可以提供精确的时间还可以对年月日进行计时。
图2-11DS1302时钟模块
1)1号管脚为VCC2,接5v外部电源,以便为DS1302供电。
2)2号、3号管脚为X1、X2,这部分为芯片的震荡电路,在芯片外围接入一个32.768k的晶振,为芯片内部提供稳定的震荡,用以稳定计时。
3)4号管脚为GND,是时钟芯片的地。
4)5号、6号、7号管脚分别为SCLK、I/O、RST,SCLK与STC89C52单片机的p20关联,为串行时钟。
I/O与单片机的p21口关联,进行数据交换。
RST与单片机的p22口关联,用来时钟芯片的复位。
再接入3个10k的上拉电阻,为管脚提供足够的电流。
5)8号管脚为VCC1,是备用电源,备用电源的额定电压为3.3V,VCC1必须小于VCC2的电压,当VCC2断电后,由VCC1提供电压,继续计时,防止芯片停止工作。
2.3.4LCD1602显示模块
图2-12LCD1602显示模块
如图2-12所示,液晶屏的1号管脚为电源地,2号管脚需提供5V电源,7号管脚到14号管脚与单片机P0.0到P0.7关联用于交换数据,同时外接上拉电阻,提供引脚足够的电流。
4号管脚与单片机的P2.7关联,当输入高电平时输入数据,当输入为低电平时输入指令。
5号管脚与单片机P2.6关联,当输入为低电平时向LCD写入数据或指令,当输入为高电平时从LCD读取信息。
6号管脚与单片机P2.5关联,当输入为高电平时读取信息,当电平阶跃成低电平时执行指令。
3号管脚可用来调节对比度,一般可直接接地,不需要调整。
15管引脚是LCD背光电源的正极,16号管脚是背光电源的负极。
2.3.5继电器模块
继电器用来控制电源,相当于电路中的开关,利用继电器的小电流控制大电流的特性,实现控制插座的通断,电路中将插座的火线断开,将继电器接入火线。
图2-14继电器模块
如图2-14所示,使用继电器实现插座的电源的通断,当到达设定时间后,单片机提供一电平,通过P11口流经三极管,三极管将电流进行放大,以便提供足够的电流,当p11口为高电平时,继电器吸合;p11口为低电平时,继电器断开。
2.3.6蜂鸣器模块
图2-15蜂鸣器模块
如图2-15所示,蜂鸣器模块具有提示的作用,当达到设定时间后蜂鸣器鸣一声进行提示,蜂鸣器与单片机的p37口相连,当p37口为高电平,蜂鸣器导通,鸣一声。
当p37口为低电平,则不叫。
2.3.7按键模块
图2-16按键模块
如图2-16所示,按键后产生一阶跃信号传送给STC89C52单片机,通过按键设置时间日期,以及定时时间和复位,其中S1连接单片机的P1.0口,可以用来切换显示界面。
S2连接单片机的P1.2口,进行数字的加;S3连接单片机的P1.4口,进行数字的减;S4连接单片机的P1.7口,用来调节插座当前的状态是通还是断;S5连接单片机的P3.4口,使光标移动。
2.3.8红外遥控模块
图2-181838T红外接收头模块
1838T三个管脚分别为VCC,GND,OUT
VCC,GND分别于电源和地相接。
如图2-18所示,OUT与单片机的P32口相接,当遥控器调节时,1838T接收到信号并向单片机输入低电平,单片机接收到信号后,执行相应遥控器按钮的操作。
2.4本章小结
本章首先分析了定时插座实现什么功能,并分布介绍实现功能所需要的各个模块。
具体介绍了各个模块的功能和结构图。
定时开关插座通过STC89C52单片机设置定时,但设定时间到达,改变继电器的状态,从而达到控制插座的效果。
本次设计共分8个模块,其中以STC89C52单片机为核心。
用以时间的显示和计时。
第三章程序设计
3.1程序的总体设计
软件设计包括主程序流程图、DS1302函数的设计、LCD显示显示函数的设计、、红外遥控函数的设计、主函数的设计等。
对各部分流程图进行介绍,程序按照软件流程图的执行过程进行设计。
主程序流程图介绍了软件设计的整个过程。
DS1302流程图介绍了时钟芯片的读写操作流程,按键流程介绍了按键的按下去抖。
LCD显示流程介绍了液晶的显示。
红外遥控流程介绍了红外线的发射和接收过程。
本程序使用C语言进行编写,设计出插座定时开关的流程。
系统应实现以下功能:
模式选择功能,有两种定时模式可供选择,按键定时模式和遥控器定时模式。
显示功能:
显示时间和定时时间。
计时功能:
提供精确的时间。
继电器执行功能:
继电器实现插座的导通或断开。
图3-1程序流程图
如图3-1所示,程序流程包括:
设置时间、模式选择、设置定时、到达定时时间和继电器执行动作。
其中最重要的函数包括:
设置时间函数voidSet_time()模式选择函数voidMode_choice(),中断函数voidInitTimer1(),红外解码函数voidIR_decode()等。
3.1.1设置时间函数的设计
图3-2设置定时函数流程图
设置定时函数流程图如图3-2所示,首先控制键有效,进入时间调整程序,然后等待按键程序,通过加键将数值加1,通过减键将数值减1,调节好年月日时分秒后,按键有效,跳出时间调整程序,进入主循环。
3.1.2模式选择函数的设计
图3-3模式选择函数流程图
模式选择函数流程图如图3-3所示,本次设计有两钟定时模式可供选择,一种为任意时间的定时,可实现24小时内的任意时间段的定时。
一种为六组时间定时,可将插座设定在10、20、30、40、50、60分钟后定时开。
3.1.3设定时间函数
图3-4设定时间函数流程图
设定时间函数流程图如图3-4所示,当选择任意时间定时时,需要设定起始时间和结束时间,设定完毕后,打开定时打开控制,函数结束。
当选择六组时间定时时,选择需要定时的时间,可供选择的时间为10、20、30、40、50、60分钟,选择好定时时间后,打开定时,打开控制,函数结束。
3.1.4中断函数的设计
中断函数流程图如图3-5所示,进入中断程序后,选择定时器的工作方式,为16位定时器。
然后给定初始值,打开定时器的总中断,然后将定时器1中断关闭,最后将定时器1关闭。
当打开定时器后,定时器开始计数,当计数溢出时,自动进入中断服务程序代码,执行中断程序。
图3-5中断函数流程图
3.1.5红外遥控流程
图3-6红外遥控流程
如图3-6所示,判断遥控器是否按下按钮,按下后红外线发射,为按下按键时,红外接收管会进行等待,如果有红外发出,则红外接收器将接收外部发出的红外,当接收端接收但红外信号,给单片机一电平,单片机进行程序处理,从而来控制继电器的导通,达到控制插座的效果。
3.1.6DS1302函数的设计
如图3-7所示,DS1302进行写操作,首先对DS1302进行初始化设置,然后写入控制指令,时钟发射脉冲,然后将控制指令右移,判断是否右移8次后,进写发送数据,时钟发射脉冲,发送数据右移判断是否右移8次后关闭DS1302。
如图3-8所示,DS1302进行读操作,首先对DS1302进行初始化设置,然后写入控制指令,时钟发射脉冲,然后将控制指令右移,判断是否右移8次后,读数据字节,时钟发射脉冲,发送数据右移判断是否右移8次后关闭DS1302。
3.1.7LCD1602显示函数的设计
图3-9LCD1602显示流程图
如图3-9所示,LCD1602显示过程中通过读取DS1302的数据,及按键调节数据显示相应的数值。
显示流程中首先显示时间和日历,判断是否调节时间,显示更新后的时间,,通过设置定时,显示相应的定时时间。
3.1.8主程序的流程图
图3-10主流程图
主流程图如图3-10所示,首先对系统的初始化设置,包括单片机初始化、DS1302初始化、LCD1602初始化、定时器初始化等。
然后设定时间,包括年月日的设定。
然后DS1302对数据进行读操作和写操作。
LCD1602对数据进行显示。
然后访问是否设定定时,一共有两种定时的模式可供选择,一种为任意时间定时,另一种为六组时间定时。
然后设定定时时间,当时间到达后,继电器执行动作,主流程结束。
3.2本章小结
第二章详尽介绍了系统硬件电路,本章主要介绍了系统的软件流程。
本章先对程序的总体流程图进行了介绍,根据系统功能和硬件电路,结合定时插座运行的流程,可以得到系统的程序设计方案。
在程序设计过程中,主程序通过对STC89C52单片机的控制,将按键按下后输入的数据进行计算,然后经过DS1302时钟芯片提供精确的时钟,然后将数据显示在LCD1602显示屏上,当到达设定时间后,提供电平改变继电器状态从而达到控制插座的效果。
在整个程序执行过程中,首先将STC89C52单片机初始化设置,初始化单片机管脚电平的方向,以及对变量进行初始化,将液晶屏进行初始化设置,对单片机的震荡模块的频率进行对准,将继电器衔铁释放。
单片机会将定时时间与时钟进行对比,定时时间到达后,继电器状态发生改变,从而达到定时开关的目的。
本章对系统各部分的流程进行了介绍,包括主流程图,DS1302流程,按键流程,显示流程,继电器流程以及红外遥控流程。
在软件流程过程中,系统的主流程对对单片机进行控制,将按键按下后输入的数据进行存储及分析,并且在LCD显示屏显示相应的数据,将设定的时间与时钟进行对比,当设定时间到达后,提供电平使继电器吸合或释放,从而达到控制插座的通、断电的目的。
第四章系统测试与结果
4.1测试与结果
程序编译和电路仿真
通过使用proteusprofessional软件进行仿真,首先按照电路图搭建仿真电路,然后给单片机搭载程序,仿真电路图如图4-1所示
图4-1仿真电路图
如图4-1搭建好电路后,按下开始键之后,对系统进行仿真。
仿真结果如下:
1)通过按S1切换界面
图4-2主界面图4-3副界面
主界面如图4-2所示,其中15-01-12代表年月日,OF代表当前插座状态(若为ON表示开),2T:
F代表2个任意定时设置,20:
01:
17代表时分秒,TUE代表星期,1:
F代表固定时间定时(可调节F为N即可完成定时,有1-6六个数字,分别设置10分钟至60分钟内的定时)。
按S1切换到副界面如图4-3,此界面为两组任意定时界面,当OFF调节为ON时即可开始计时。
2)按S2、S3可加减数字
图4-4加减设置
如图4-4所示,按S1对数据加,按S2对数据进行减1。
3)退出和移动光标
图4-5退出图4-6移动光标
如图4-5所示,按键S4可实现退出功能。
如图4-6所示,按键S5可实现光标移动的功能。
4)对时间进行设定
图4-6初始时间图4-7设定后的时间
如图4-6所示为初始时间,通过按键调整设定时间,将时间调整到当前时间,如图4-7所示为调整后的时间。
5)设置任意时间定时
图4-8设定任意时间定时
通过按键设定任意时间的定时,此模式下可设置两组时间的定时,如图4-8所示为设置的两组定时时间。
6)设置六组时间定时
图4-9设定六组时间定时
如图4-9所示,为另一种模式的定时,当前状态为20分钟后定时关。
4)如图4-10所示,当设定时间到达后,继电器吸合,通过二极管状态的改变可体现。
图4-10仿真结果
220VAC转5VDC电源模块,使用multisim仿真达到所需要的要求,如图4-11,DC5V,180mA。
按电路图焊接好电路后,用万用表测量,发现实际结果与仿真结果不符,电压值达到了6.3v,电流为500mA。
更换分压电阻后,达到所需要求。
图4-11电源模块仿真结果
按照设计好的仿真电路图搭建电路,电路图如图4-12所示,搭建好电路后,可先用万用表测试个模块的是否正常,确保各模块的正常,在测试电源及各元器件的电压,判断各元器件是否正常工作,确保各模块能够正常运行。
图4-12电路实物图
在将设计的系统程序烧入单片机之前,可先写一些小程序来测试各模块的功能能否正常实现,在本设计中可写一个包含按键信息采集,显示,语音输出功能的简单的程序,来判断各模块是否能正常工作。
在确保硬件电路没有问题之后,将设计的系统程序烧入单片机中,观察系统的运行果,以下为系统的实物运行的结果:
1)系统初始值:
图4-13测试结果1
如图4-13所示,其中05-02-12代表年月日;OF代表插座现在的状态(用s5调节,有ON和OFF两种状态);2T:
F代表两种任意时间设定(按s1可跳入界面2设置两种任意定时);23:
47:
10代表时分秒;WED代表星期;1:
F代表固定定时,有1f、2f、3f、4f、5f、6f状态代表10分钟,20,30,40,50,60定时设置。
2)按S1可切换界面,然后按下S5可移动光标,如图4-14。
图4-14测试结果2
3)按S2、S3可调节加、减,如图4-15。
图4-15测试结果3
4)设定好时间,按S4退出,如图4-16。
图4-16测试结果4
5)再按S1可切换任意时间设定界面,可设置两组时间,如图4-17。
图4-17测试结果5
4.2调试过程中遇到的问题
调试过程中,LCD显示屏起初显示的只有方格,继电器直接吸合。
进行电路检查,
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 单片机 定时 开关插座 设计