电子科学与技术毕业论文 基于光敏电阻的照明灯控制系统的设计.docx
《电子科学与技术毕业论文 基于光敏电阻的照明灯控制系统的设计.docx》由会员分享,可在线阅读,更多相关《电子科学与技术毕业论文 基于光敏电阻的照明灯控制系统的设计.docx(42页珍藏版)》请在冰豆网上搜索。
电子科学与技术毕业论文基于光敏电阻的照明灯控制系统的设计
基于光敏电阻的照明灯控制系统的设计
摘要
随着信息技术的飞速发展和社会的不断进步,人们都市生活的迅速发展,新型半导体材料LED照明应用得到普及,人们对LED照明的高效控制和功能多样化的要求也不断提高。
灯饰除了有普遍的照明作用之外,还有广泛的工业用途。
针对普通的LED光源存在光谱不全这个问题,本文介绍了一套小型智能灯,它是基于光敏电阻的照明系统,主要的功能是用光照强度来调节LED灯的亮度,就是通过光敏电阻接收到的外界不同的照度来控制LED灯不同的亮度,也就是说,本设计通过环境光照度的强弱对LED灯进行控制,而且可以自动变换,使生活和工业生产更加现代化和节能环保。
这个设计的核心在于单片机控制模块,光敏电阻通过外界照度的不同产生不同大小的电信号,本设计先根据电信号的大小规定好对应的数字信号,这样单片机就可以根据输入的数值信号发出红绿黄三路通路/截止的命令,达到辨色的目的,判断光强度做好防护,并且可从液晶屏上读出光照强度,调控LED光强,这样的设备在温棚、禽舍、晒相、电路板生产等方面都得到广泛的应用。
关键词:
LED(发光二极管)光敏电阻单片机液晶显示屏
LIGHTINGCONTROLSYSTEMDESIGNBASEDONPHOTORESISTOR
ABSTRACT
Withtherapiddevelopmentofinformationtechnologyandsocialprogressaswellastherapiddevelopmentofurbanlife,newapplicationsofsemiconductormaterialsarepopularLEDlightingproducts.EfficientLEDlightingandfunctionaldiversificationoftherequirementsisalsorising.Lightingnotonlyhavelightingeffect,butalsohaveextensivefunctionofindustry.Thispaperintroducesasetofsmallsmartlights,thelightingsystemwhichisbasedonphotosensitiveresistance,tosolveLEDlightsourceforgeneralspectruminsufficiencyproblem.Itsmainfunctionistoautomaticallyselectthelightcolor.PhotoresistorreceivesdifferentilluminationofthelightoutsidetocontrolthethreeRGY-LEDworkornot.Inotherwords,alampcanautomaticallytransformseveralcolorslight.Itwillsavetheenergysourcesmakeourlifemoremodern.TheSCM( SingleChipMicyoco)moduleisthecoreofthisdesign.Photoresistorgenerateddifferentsignalsbydifferentexternalillumination.Thedesignfirstturnanalogsignalsintodigitalsignals.Accrodingthedigitalsignals,SCMwillreleasetheorderstocontrolRGY-LEDworkornot.Inthisway,thepurposeisabletochoosecolorsofthelightintellectuality.AtthesametimeitcanreadthelightintensityOntheLCDpaneltoregulattheintensityofLightingsystem.SuchequipmentHaveextensiveapplicationonGreenhouse,birdhouse,baskinphase,circuitboardproduction.朗读
Keywords:
LED(LightEmittingDiode)PhotoresistorSCMLCD显示对应的拉丁字符的拼音
1前言
1.1选题的目的意义
照明灯的应用一直以来都是相当的广泛和重要。
随着人们都市生活的发展,灯饰不仅有普遍的照明作用,还可以为家居营造梦幻般的气氛。
本课题为基于光敏电阻的照明灯控制系统,就是通过CDS光敏电阻(LXD5537)接收到的外界不同的照度来控制照明灯不同颜色的亮灭,也就是说,一盏灯能有几种颜色,而且可以自动变换,使生活更加现代化。
这个设计的核心在于单片机控制模块,光敏电阻通过外界照度的不同产生不同大小的电信号,我先根据电信号的大小规定好对应的数字信号,这样单片机就可以根据输入的数值信号发出GRB三路通路/截止的命令,从而达到选色的目的。
本课题的照明灯是当今的新型半导体光源——LED,这种器件具有寿命长、启动时间短、色彩丰富饱满、可做全彩变化、低压安全等特点,除了节约能源、绿色环保、健康安全之外,还可以做出布线灵活、控制方便、安全可靠的产品。
由此可见,这种智能的照明系统在日常照明、景观照明、舞台灯光控制、城市建筑物、餐厅及家居美化等方面都具有广阔的发展前景!
1.2国内外研究综述
基于光敏电阻的照明系统除具灵敏度高,反应速度快,光谱特性等特点外,在高温,多湿的恶劣环境下,还能保持高度的稳定性和可靠性,可广泛应用于照相机,太阳能庭院灯,路灯,验钞机,迷你小夜灯,光声控开关,自动开关以及各种光控玩具,光控灯饰等光自动开关控制领域。
之后,光敏电阻在照明系统上的应用也就不限制于日常照明,还推动了我国的生态农业,光控捕虫灯就是一个典型的例子。
在气体发光取代钨丝发光成为主流后,LED(发光二极管)又被喻为新一代技术。
2009年,飞利浦公司就推出了LivingColors系列的产品这是智能感应照明系统的佳作之一。
它是一款小巧的圆形灯具,内置红、蓝、绿四件LED光源,可随意配置出1600万种色调,具有自动变色、手动遥控变色、控制色彩强弱等功能,只要轻触“感应式调色环”,就能选择你想要的灯光颜色,还可切换自动变色模式。
而我的灵感则是来源于LivingColorsMINI,我的照明灯控制系统则是把光敏电阻和LED联系在一起,首先给光敏电阻连接一个电源,再用一个AD采集光敏电阻的电压,因为阻值的不同,光敏电阻的电压发生变化,然后利用单片机得到这些参数,经过单片机的运算通过PWM再去控制一个LED驱动器,这个LED驱动器就是用来控制LED的亮度的。
1.3研究目标
本设计主要采用光敏电阻来完成照明灯控制系统的设计。
要求通过光敏电阻接收到的外界不同的照度,通过显示照度来自动调控来或模拟调控与自动调控相结合控制照明灯的亮度。
1.4研究内容
(1)采集信号部分——光敏电阻光电转化电路
(2)控制电路部分——单片机
(3)照明电路部分——大功率LED
(3)指示电路部分——红绿黄指示灯被选择亮,LCD液晶显示屏显示读数,
1.5关键问题
通过单片机实现LED选色控制模块。
根据外界光源的光照度的变化,控制模块的CDS光敏电阻(LXD5537)会产生不同的电信号,这些信号就会输进单片机里。
单片机是控制模块的核心,它用来完成模数转换,选色显示,PWM调控等功能。
PWM调光亮度的程序是本设计的关键。
我初步设想,首先先确定出光敏电阻在光源为最亮和最暗两种环境下的输出电流信号或者电压信号,并发给LCD显示,并按规定数字信号里的“0”或是“1”到底是针对你的模拟信号的多少安培的电流值或是多少伏特的电压值,接着经过单片机编程(大多使用while、if、break等语句)发出GRB三路通路/截止的命令以便于知道现在的光偏于那种颜色,来调节LED的亮度来适合蔬菜或花儿生长或对光色要求高的地方。
1.6基本思路
基于光敏电阻的照明系统包括电源电路、A/D转换电路控制电路、负载LED发光电路、PWM调光电路。
主电路部分主要是LED驱动电路和PWM调光,里边包括降压的分立元件电路,我打算用CL6808LED驱动芯片来驱动大功率LED:
在编程前,我确定了照度的算法,自动控制的PID算法,我测试光敏电阻在强光、弱光、无光三种明显状态下所产生的电流值,待模数转换后,我再界定它们分别对应的数字信号,通过单片机,控制LED的RGB三路各自的通与断。
1.7研究方法
我的毕业论文研究方法主要是信息研究法和实验法。
信息研究法就是通过对信息的收集、传递、加工和整理获得知识,并应用于实践,以实现新的目标。
而实验法则是通过主支变革、控制研究对象来发现与确认事物间的因果联系的一种科研方法。
在实际操作中,我首先收集资料,从资料中分析、提取、总结自己需要的信息,然后通过软件的仿真、编程来证实信息的对错,再在硬件的设计和制作中反复试验,最后得到一种较为完善设计方案。
2基于光敏电阻的照明灯控制系统的设计和论证
2.1设计要求
晴天的中午太阳光照射在照明系统的光明电阻上时,光敏电阻的阻值最小,此时,红灯亮;夜晚时,光敏电阻不受阳光影响,阻值最大,此时,黄灯亮;除了以上这两种外,照明灯发出路灯亮。
2.2设计方案
方案一:
采用宏晶STC12C5A60S2单片机和点接触直插型LED,直接从P1.0输入光敏电阻的模拟信号,通过单片机内部的A\D转换并选择,从而达到在不同光照度下选择不同颜色灯亮的目的。
1硬件图如下:
图2-1采用STC12C5A60S2的光敏电阻选色灯硬件电路图
②宏晶STC12C5A60S2单片机编写程序
③评价:
优点:
本设计电路和程序都简单,材料普通,程序成本低;
缺点:
成品工作不稳定,光敏电阻会由于光照角度的不同而无法正常选择灯光颜色。
方案二:
使用飞思卡尔的HCS12XS128、红绿蓝三色一体大功率LED、LED恒流驱动芯片PT4115和M2L587T-ADJ开关电源稳压ic构成整体电路。
由于红绿蓝三色一体大功率LED是高功率容电器,如果直接把它直接接在单片机的输出端,单片机无法驱动LED正常工作,因此,我需要用到高功率LED驱动芯片PT4115来做驱动,另外,要是LED长时间稳定工作,还需要LED升压变压器芯片LM2587T-ADJ来供给恒流源。
①硬件电路图
电源模块:
M2L587T-ADJ开关电源稳压ic构成整体电路如图2-2所示;
图2-2LM2587T-ADJ开关电源稳压ic构成整体电路
驱动模块:
LED恒流驱动芯片PT4115如图2-3所示;
图2-3LED恒流驱动芯片PT4115
控制模块:
MC9S12XS128(飞思卡尔单片机)如图2-4所示;
图2-4飞思卡尔引脚图
驱动模块:
LED恒流驱动芯片PT4115如图2-4所示;
图2-5驱动芯片PT4115图
②用飞思卡尔单片机HCS12XS128编写程序
③评价:
优点:
飞思卡尔的HCS12XS128是一款高新能单片机,加上LED升压变压器芯片LM2587T-ADJ有利于LED的长时工作。
缺点:
材料太高级,成本较高。
方案三:
依然使用宏晶STC12C5A60S2单片机和点接触直插型LED,但增添PWM(脉宽调制功能)和液晶输出,随着照度的不同,不但有不同颜色的LED发光,而且亮度能够自动调节,还会显示当前照度值,并有锁存功能。
评价:
优点:
材料普通,成本底,功能完善,有较广泛的工业用途。
缺点:
点接触直插型LED的发光功率低,在照明方面亮度可能不够
2.3方案选取
从总体方案上来说,方案一比方案二成本要低,但方案二比方案一电路比较稳定;在元器件上,飞思卡尔的HCS12XS128的工作频率比宏晶STC12C5A60S2要高,这就使灯变色的反应要快多了;另外,红绿蓝三色一体大功率LED的亮度要比点接触直插型LED(圆帽型,一般作指示灯用)高得多,更适合于照明。
而虽然方案三与方案二相比,功能完善了不少,还针对方案一工作不稳定的缺点进行了补救,就是使用PWM脉冲调制来固定LED的工作电信号,这样就不会因为外界照度的不均匀而造成LED工作混乱的现象;而与方案二相比,方案三的材料比较普遍,容易购买到器件,而且成本低,虽然在照明方效果上并没有方案二那么出众,从成品的实用性和扩展性来说,方案三的更符合未来照明系统智能化、工业生产监测自动化的趋势。
因此最后决定按方案三进行本次毕业设计。
3基于光敏电阻的照明灯控制系统的设计
3.1基于光敏电阻的照明灯控制系统的整体电路原理方框
图3-1基于光敏电阻的照明灯控制系统原理框图
3.2电源设计
本次设计我选用的降压稳压部分由三端稳压管7805、电解电容和普通电容组成,将9V-6V转换成稳定的5V。
升压稳压部分是将6V-9V转为稳定的12V给LED驱动器供电,为电灯控制电路提供了工作电压。
电路图3-1所示:
图3-2电源电路
3.3控制电路
控制电路主要由STC12C5A60S2单片机来完成,就硬件而言,分成单片机的输入、输出两大部分,而输入部分主要是信号采集电路,经过单片机内部的数模转换,见能把信号输出,输出部分主要包括红、绿、黄指示灯选择开启、液晶屏显示照度,脉宽调制(PWM)控制照明灯的亮度,如图3-2所示,也可见附录1整体电路设计图。
图3-2控制电路线路图
3.3.1STC12C5A60S2
STC12C5A60S2/AD/PWM系列单片机是宏晶技术生产的单时钟/机器周期的单片机,是高速/低功耗/超强抗干扰的新一代8051单片机,指令代码完全兼容传统8051,但速度快8-12倍。
内部集成MAX810专用的复位电路,2路PWM,8路高速10位A/D转换,针对电机控制,强干扰场合。
图3-2STC12C5A60S2单片机的引脚图
VCC:
电源正端输入,接+5V。
GND:
电源地端。
XTAL1:
单芯片系统时钟的反相放大器输入端。
反向振荡放大器的输入及内部时钟工作电路的输入。
XTAL2:
系统时钟的反相放大器输出端,一般在设计上只要在XTAL1和XTAL2上接上一只石英振荡晶体系统就可以动作了,此外可以在两引脚与地之间加入一20PF的小电容,可以使系统更稳定,避免噪声干扰而死机。
RST:
复位输入。
当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。
NA:
为0时,表示此脚为弱上拉,无任何功能;为1时,表示此脚为I/O口。
ALE:
为0时表示复位后只有在用MOVX指令访问片外扩展器件时才有信号输出;为1时表示通过将此脚设置为I/O口。
EX_LVD:
为0时,复位后此脚是外部低压检测脚,可使用查询方式后设置成中断来检测1;当为1时,此脚设置为I/O口。
P0.0~P0.7:
端口0是一个8位宽的开路汲极(OpenDrain)双向输出入端口,共有8个位,P0.0表示位0,P0.1表示位1,依此类推。
其他三个I/O端口(P1、P2、P3)则不具有此电路组态,而是内部有一提升电路,P0在当做I/O用时可以推动8个LS的TTL负载。
如果当EA引脚为低电平时(即取用外部程序代码或数据存储器),P0就以多工方式提供地址总线(A0~A7)及数据总线(D0~D7)。
设计者必须外加一锁存器将端口0送出的地址栓锁住成为A0~A7,再配合端口2所送出的A8~A15合成一完整的16位地址总线,而定址到64K的外部存储器空间。
P2.0~P2.7:
端口2是具有内部提升电路的双向I/O端口,每一个引脚可以推动4个LS的TTL负载,若将端口2的输出设为高电平时,此端口便能当成输入端口来使用。
P2除了当做一般I/O端口使用外,若是在AT89S52扩充外接程序存储器或数据存储器时,也提供地址总线的高字节A8~A15,这个时候P2便不能当做I/O来使用了。
P1.0~P1.7:
端口1也是具有内部提升电路的双向I/O端口,其输出缓冲器可以推动4个LSTTL负载,同样地若将端口1的输出设为高电平,便是由此端口来输入数据。
如果是使用8052或是8032的话,P1.0又当做定时器2的外部脉冲输入脚,而P1.1可以有T2EX功能,可以做外部中断输入的触发脚位。
P3.0~P3.7:
端口3也具有内部提升电路的双向I/O端口,其输出缓冲器可以推动4个TTL负载,同时还多工具有其他的额外特殊功能,包括串行通信、外部中断控制、计时计数控制及外部数据存储器内容的读取或写入控制等功能。
其引脚分配如下:
P3.0:
RXD,串行通信输入。
P3.1:
TXD,串行通信输出。
P3.2:
INT0,外部中断0输入。
P3.3:
INT1,外部中断1输入。
P3.4:
T0,计时计数器0输入。
P3.5:
T1,计时计数器1输入。
P3.6:
WR:
外部数据存储器的写入信号。
P3.7:
RD,外部数据存储器的读取信号。
图3-3STC12C5A60S2单片机最小系统线路图
要让单片机工作起来,就得满足单片机最小硬件电路组成:
(1)电源电路:
向单片机供电(第40脚接Vcc,第20脚接GND)。
(2)时钟电路:
单片机工作的时间基准,决定单片机工作速度(第18、19脚接晶振)。
(3)复位电路:
确定单片机的起始状态,完成单片机的启动过程(第9脚RST/VPD)。
另外,第31脚EX-LVD作下载程序只用。
3.3.2信号采集电路
在信号采集方面,我选用了光敏电阻和电位器来大构成信号采集电路,如图3-4所示。
由于光敏电阻在黑夜里阻值无限大,在灯亮处阻值较小,所以,在电位器的阻值固定下来的时候,根据光敏电阻的阻值随着外界光源照度的提高而减小,P1.1出的电压就会改变,这样就能得到变化的输入信号了。
图3-4信号采集电路
3.3.3LCD显示电路
我用的是LCD1602液晶,LCD1602一共有16个脚,如图3-5所示。
其主要技术参数:
显示容量:
16×2个字符;
芯片工作电压:
4.5—5.5V;
工作电流:
2.0mA(5.0V);
模块最佳工作电压:
5.0V;
字符尺寸:
2.95×4.35(W×H)mm。
图3-5LCD1602字符型液晶显示器引脚图
LCD1602的实际电路连线如图3-6所示。
在单片机的输出端P01-P07均用于连接LCD1602显示屏,为了避免电流太大,烧坏显示屏,我串上排阻,已达到分压降流的目的。
排阻之后还有一块芯片,是拿来锁存数据之用的。
图3-6LCD1602的线路连接图
3.3.4驱动调光电路
1.BUCK电路、BOOST电路、BUCK-BOOST电路的原理。
(1)Buck变换器:
也称降压式变换器,是一种输出电压小于输入电压的单管不隔离直流变换器,如图3-11所示。
图3-11BUCK电路
Q为开关管,其驱动电压一般为PWM(Pulsewidthmodulation脉宽调制)信号,信号周期为Ts,则信号频率为f=1/Ts,导通时间为Ton,关断时间为Toff,则周期Ts=Ton+Toff,占空比Dy=Ton/Ts。
(2)Boost变换器:
也称升压式变换器,是一种输出电压高于输入电压的单管不隔离直流变换器,如图3-12所示。
图3-12BOOST电路
开关管Q也为PWM控制方式,但最大占空比Dy必须限制,不允许在Dy=1的状态下工作。
电感Lf在输入侧,称为升压电感。
Boost变换器也有CCM和DCM两种工作方式
(3)Buck-Boost变换器:
也称升降压式变换器,是一种输出电压既可低于也可高于输入电压的单管不隔离直流变换器,但其输出电压的极性与输入电压相反。
Buck-Boost变换器可看做是Buck变换器和Boost变换器串联而成,合并了开关管。
如图3-13所示。
图3-13Buck-Boost电路
而本设计在LED驱动电路上就采用了Buck变换器,它被集成在CL6808驱动模块上。
2.PWM调光
PWM调节是指通过一个周期内脉宽占空比的形式来驱动LED的方式,LED的平均驱动电流取决于脉冲波形的占空比和LED额定驱动电流,在驱动电流固定时,通过改变PWM占空比可以调节驱动电流大小。
为了避克闪烁,故PWM调节的频率选择在500Hz左右。
PWM占空比从0至100%。
从图中可以清楚的看到,通过改变不同的PWM占空比可以调节额定电流,如图3-13所示。
图3-13外加PWM脉冲驱动信号和输出驱动电流的测量结果
这里我用的是CL6808大功率LED驱动芯片,它是一款高侧电流感应的高亮度LED驱动控制器,设计运用于高效驱动由高于LED正向导通,具体电路如图3-13所示。
电压的电源供电的单个或多个串联LED。
该装置的运作是在8V到40V之间,提供了一个外部可调的高达1.5A的输出电流。
根据电力供应的电压和外部元件,可以提供高达32瓦的输出功率。
图3-11PWM调光电路
CL6808包括输出开关和一个高侧的输出电流传感电路,可利用外部电阻器来设定的平均输出电流或由精心设计的直流电压或PWM信号来加载AD脚来调节输出电流。
4单片机编程
4.1程序流程框图
图4-1程序流程框图
4.2信号采集程序
4.2.1AD初始化程序
voidADC_P11_inti()
{
unsignedchara,b;//定义变量a,b
P1ASF=P11ASF;//AD相关寄存器初始化
ADC_CONTR=ADC_POWER;
for(b=1;b>0;b--)//等待AD初始化完成
for(a=47;a>0;a--);
}
4.2.2AD转换程序
unsignedcharADC_P11()
{
unsignedcharAD;//AD初值
ADC_CONTR=ADC_POWER|ADC_SPEEDHH|ADC_START|ADC_CHS0;//AD控制模块设定
_nop_();//等待设定完成
_nop_();
_nop_();
_nop_();
while(!
(ADC_CONTR&ADC_FLAG));//如果AD设定完成
AD=ADC_RES<<2;//AD结果获取
returnAD;//返回AD值
}
4.3显示屏程序
4.3.1写指令函数
voidwrite_com(unsignedcharcom)
{
lcdrs=0;//写指令选择
P0=com;//位选
lcden=1;//标志位
delay_ms(20);
lcden=0;
}
4.3.2写数据函数
voidwrite_data(unsignedchardate)
{
lcdrs=1;//写数据选择
P0=date;//写数据
lcden=1;
delay_ms(20);
lcden=0;
}
4.3.3