基于单片机的照明系统控制.doc
课 程 设 计课 程 单片机课程设计 题 目 基于单片机的照明控制系统 院 系 电气信息工程学院测控系 专业班级 学生姓名 学生学号 指导教师 2012年 7 月 8日东北石油大学课程设计任务书课程 单片机课程设计 题目 基于单片机的照明控制系统 专业 姓名 学号 一、任务设计一款基于AT89C51单片机室内照明系统,实现八盏等一次点亮,即每按下一次开关就点亮一盏灯,八盏灯全亮后,重复操作。先用单片机直接驱动八盏LED灯点亮,再通过继电器驱动大功率的照明灯点亮。二、设计要求1 用单片机实现八盏LED灯开关控制点亮。2 用继电器将小功率控制转化为大功率控制,驱动照明灯按开关控制点亮。3 写出详细的设计报告。4 给出全部电路和源程序。三、参考资料1 吴金戎,沈庆阳. 8051单片机实践与应用M. 北京:清华大学出版社,2002.2 朱清慧. Proteus教程电子线路设计、制版与仿真M. 北京:清华大学出版社; 2008.3 孙涵芳,徐爱卿. 单片机原理及应用M. 北京:航空航天大学出版社,1996.4 胡耀斌,蒋彦,朱慧玲. 室内大面积照明的节能控制研究 J . 电测与仪表,2007( 11) : 32- 35. 5 张庆双. 经典实用电路大全M. 北京:机械工业出版社,2008.完成期限 2012.6.29 至 2012.7.8 指导教师 专业负责人 2012年 6月 29 日目 录第1章 绪论11.1 LED灯介绍11.2 单片机的应用11.3 本设计任务2第2 章 总体方案论证与设计32.1 LED显示电路32.2 继电器控制电路32.3 总体硬件组成框图3第3章 系统硬件设计53.1 LED灯电路硬件设计53.2 照明电路设计6第4章 系统的软件设计84.1 程序设计8第5章 系统调试与测试结果分析95.1 使用的仪器仪表95.2 系统调试95.3 测试结果9结 论11参考文献12附录1 程序13附录2 仿真效果图13第1章 绪论随着电子技术的飞速发展,以单片机为基础的控制系统已经广泛应用于工业,农业,交通,楼宇等领域,微型计算机作为控制系统的主体和核心已经逐步代替了传统控制系统的常规电路。单片机技术的发展与成熟,也为基于单片机的照明控制系统的普及与应用奠定了基础。1.1 LED灯介绍LED(Light Emitting Diode),发光二极管,是一种固态的半导体器件,它可以直接把电转化为光。LED的心脏是一个半导体的晶片,晶片的一端附在一个支架上,一端是负极,另一端连接电源的正极,使整个晶片被环氧树脂封装起来。半导体晶片由两部分组成,一部分是P型半导体,在它里面空穴占主导地位,另一端是N型半导体,在这边主要是电子。但这两种半导体连接起来的时候,它们之间就形成一个P-N结。当电流通过导线作用于这个晶片的时候,电子就会被推向P区,在P区里电子跟空穴复合,然后就会以光子的形式发出能量,这就是LED发光的原理。而光的波长也就是光的颜色,是由形成P-N结的材料决定的。本次课程设计使用的是小功率的发光二级管。1.2 单片机的应用由于单片机技术的不断发展,目前单片机渗透到我们生活的各个领域,小到居民生活大到国家生产几乎很难找到哪个领域没有单片机的踪迹。导弹的导航装置,飞机上各种仪表的控制,计算机的网络通讯与数据传输,工业自动化过程的实时控制和数据处理,广泛使用的各种智能IC卡,民用豪华轿车的安全保障系统,录像机、摄像机、全自动洗衣机的控制,以及程控玩具、电子宠物等等,这些都是利用开单片机电路进行控制实现的。本次课程设计只用单片机驱动照明电路。1.2.1 单片机驱动点亮LED灯通过上述对LED等的介绍,LED灯属于小功率的器件,所以其用的驱动电压小、功率低,故能用单片机接小电压直接驱动点亮。因此这里没有复杂的驱动电路。1.2.2 驱动点亮照明电路作为照明灯,必须使用功率较大的器件,才能达到照明的目的,但单片机出的功率小故不能直接驱动电路照明灯泡,所以必须加继电器作为开关、12V交流电源以及三极管放大电流。用单片机将三极管导通,三极管产生的大电流用来驱动继电器,继电器工作使照明电路导通,从而达到点亮灯泡的作用。1.3 本设计任务本设计任务为实现开关控制八盏LED等依次点亮,进而控制八盏照明灯依次点亮。次任务虽然简单明了、操作方便、以实现,但其不失为居家照明用灯的一种照明电路。当然现行市场节能环保,功能全面的照明电路举不胜举,但简单的小电路照明系统任占有它的一席之地。不及如此,通过此次对任务的设计,不仅从中学到了一些知识,也充分把理论与实践结合起来,做到学以致用。本研究即以AT89C51单片机为核心,采用单片机直接控制小功率的LED灯,用继电器作为开关控制大功率的照明灯泡。第2 章 总体方案论证与设计本系统采用单片机AT89C51为照明电路控制中心,系统主要包括LED显示电路、继电器控制电路、按键电路等。下面对各模块的设计逐一进行论证比较。2.1 LED显示电路由于二极管只能从正向导通,所以可以采用单片机输出高电平点或单片机输出低电平点亮。方案一:单片机输出高电平点亮,将每一个LED发光管的正端接至单片机的一个I/O口,另一端通过电阻接地。这种方法可以直接驱动LED,原理简单,驱动能力强,LED的亮度也可以通过限流电阻调节,非常方便,虽然此种方法太浪费单片机的I/O口,但在本设计可以使用。方案二:单片机输出低电平点亮,将每一个LED发光管的正端通过电阻接一个5V的电源,LED发光管的另一脚接I/O口,当I/O口为低电平时,点亮LED灯。该方法占用单片机的资源与方案一相同。比较以上两种方案,由于单片机上电后各个口都处于高电平,这样不利于单片机输出高电平点亮,故选取方案二。2.2 继电器控制电路继电器控制照明电路与LED灯的点亮方式相同,故采用与LED现实电路相同的控制方式,这里不再论述。2.3 总体硬件组成框图LED灯控制电路AT89C51开关控制电路照明电路继电器控制电路图2-1 总体硬件组成框图 系统框图如图2-1所示,系统主要由三大模块组成即LED灯控制电路、继电器控制照明电路、开关控制电路。第3章 系统硬件设计为使该模块化LED显示屏控制系统具有更加方便和灵活性,我们对系统的硬件做了精心设计。硬件电路包括LED灯电路、照明电路、开关控制电路等三大模块。3.1 LED灯电路硬件设计LED灯电路模块是实现照明电路的基础部分,LED灯的工作方式直接关系到照明电路的工作方式、功能实现程度等。本次设计中LED的驱动是采用单片机直接设置各个口的高低电平来控制LED灯的亮灭。3.1.1 各口输出电平方式开关前九次依次按下后输出电平结果,其真值表如表3-1所示。表3-1 LED灯驱动电平开关按下次数电平输出方式P2.7P2.0亮灯个数11 1 1 1 1 1 1 0121 1 1 1 1 1 0 0231 1 1 1 1 0 0 0341 1 1 1 0 0 0 0451 1 1 0 0 0 0 0561 1 0 0 0 0 0 0671 0 0 0 0 0 0 0780 0 0 0 0 0 0 0891 1 1 1 1 1 1 013.1.2 LED驱动电路的设计LED灯接小电压采用单片机直接驱动,原理图如图3-1所示。图3-1 LED驱动电路原理图如图3-1 8盏LED依次接到单片机89C51的P2口上,正向端通过1K电阻接到5V电压上。通过P2口输出的高低电平,使LED发光。3.2照明电路设计单片机不能直接驱动功率较大的照明电路,这里必须采用继电器控制电路来实现小电路向大电流的转换。3.2.1 继电器工作原理继电器是一种电控制器件。它具有控制系统(又称输入回路)和被控制系统(又称输出回路)之间的互动关系。通常应用于自动化的控制电路中,它实际上是用小电流去控制大电流运作的一种“自动开关”。故在电路中起着自动调节、安全保护、转换电路等作用。其电路图和Proteus中的图如图3-2所示。 图3-2 继电器电路图3.2.2照明电路工作电路图照明灯泡使用继电器作为开关驱动照明电路。三极管为使继电器工作股接在继电器的控制端。由于单片机输出的是低电平信号有效股选用PNP型三极管,当单片机输出低电平是三极管导通,电流流入继电器,使继电器工作,从而控制照明电路的亮灭,其电路连接图如图3-3所示:图3-3 照明电路连接图第4章 系统的软件设计软件是该照明电路控制系统按要求工作的重要组成部分,故程序的正确度直接决定功能的可实现性。这里用Keilc遍写C程序,运行后生产hex文件,将hex文件拷入模拟单片机中,使单片机工作。4.1 程序设计本系统中单片机89C51的主要功能就是实现八盏LED灯和照明灯的按键点亮控制功能。程序为了实现同时点亮LED灯和照明灯,将猜用P0口和P2口同步执行相同的程序,再加以判断开关程序,即先判断开关是否闭合,若闭合执行5ms延时后再判断,若任处于闭合这说明开关闭合。其主程序流程如图4-1所示。开始系统初始化否判断开关是否闭合?点亮LED灯(照明灯)是图4-1 主程序流程图结束第5章 系统调试与测试结果分析5.1 使用的仪器仪表 数字万用表DT9203单片机仿真器WAVE6000烧写器 GF2100微机 联想Y4505.2 系统调试根据系统设计方案,本系统的调试共分为三大部分:硬件调试,软件调试和软硬件联调。由于在系统设计中存在驱动LED灯和照明灯两种电路,所以分别对两种电路逐级测试:LED驱动点亮的调试,照明电路的驱动调试,最后将这两个模块组合后进行整体测试。5.2.1硬件调试对各个模块的功能进行调试,主要调试各模块能否实现指定的功能。5.2.2软件调试软件调试采用keil c软件及微机,将编好的程序进行调试,主要是检查语法错误和生产hex文件。5.2.3硬件软件联调将调试好的硬件和软件进行联调,把生成的hex文件拷入硬件电路的单片机中,主要调试系统的实现预期功能。5.3 测试结果此次系统设计结果较好,八盏LED灯和照明灯能实现根据开关按键每按一下依次亮一盏的预期功能。LDE灯和照明灯由于采用相同的程序,故其也能达到同步电路的目的。因此基本实现了要求的功能。结 论针对传统照明电路一个开关控制一盏灯的模式,本设计用单片机为核心实现一个开关对多盏灯的控制,即实现了资源的充分利用,也一改传统,实现了照明电路的灵活控制。系统是以AT89C52单片机为核心,采用串口直接驱动LED灯,用继电器作模拟开关间接驱动照明电路技术,实现了八盏灯的开关控制连续点亮。通过对课题的研究与操作,不仅实现了课题任务要求,实现了预期的功能,更重要的是在完成设计时,我们充分利用了proteus软件和keil c软件,使我们对这两款软件有了初步的认识和学习,也使我们大体了解了模拟电路的设计流程,这将会对今后的学习大有帮助。通过软硬件的仿真调试,实现了本次设计的基本功能:八盏照明灯和LED灯都由开关控制,每按一下开关便亮一盏灯,当八盏等全亮后继续重复点亮。当然如果将系统电路及软件稍加修改,其功能不仅如此,那将会实现更多的功能,在实际中也将会更加有利用价值。参考文献1 吴金戎,沈庆阳. 8051单片机实践与应用M. 北京:清华大学出版社,2002.2 朱清慧. Proteus教程电子线路设计、制版与仿真M. 北京:清华大学出版社,2008.3 孙涵芳,徐爱卿. 单片机原理及应用M. 北京:航空航天大学出版社,1996.4 胡耀斌,蒋彦,朱慧玲. 室内大面积照明的节能控制研究 J . 电测与仪表,2007( 11) : 32- 35. 5 张庆双. 经典实用电路大全M. 北京:机械工业出版社,2008. 6 张毅刚.单片机原理及应用M. 北京:高等教育出版社,2003:160-190. 7 马忠梅.单片机的C 语言应用程序设计M.北京:北京航空航天大学出版社,2008.附录1 程序#include<reg51.h>#define uchar unsigned charsbit key=P10;uchar flag;void delay(uchar dly) uchar i,j;for(i=255;i>0;i-);for(j=dly;j>0;j-);void main()while(1)if(key=0)delay(5);if(key=0)while(!key);flag+;if(flag=0) P2=0xff;P3=0xff;if(flag=1) P2=0xfe;P3=0xfe;if(flag=2) P2=0xfc;P3=0xfc;if(flag=3) P2=0xf8;P3=0xf8;if(flag=4) P2=0xf0;P3=0xf0;if(flag=5) P2=0xe0;P3=0xe0;if(flag=6) P2=0xc0;P3=0xc0;if(flag=7) P2=0x80;P3=0x80;if(flag=8) P2=0x00;P3=0x00;if(flag=9) P2=0xfe;P3=0xfe;flag=1;附录2 仿真效果图东北石油大学课程设计成绩评价表课程名称单片机课程设计题目名称基于单片机的照明系统控制学生姓名学号指导教师姓名职称序号评价项目指 标满分评分1工作量、工作态度和出勤率按期圆满的完成了规定的任务,难易程度和工作量符合教学要求,工作努力,遵守纪律,出勤率高,工作作风严谨,善于与他人合作。202课程设计质量课程设计选题合理,计算过程简练准确,分析问题思路清晰,结构严谨,文理通顺,撰写规范,图表完备正确。453创新工作中有创新意识,对前人工作有一些改进或有一定应用价值。54答辩能正确回答指导教师所提出的问题。30总分评语:指导教师: 年 月 日