基于光敏二极管的光探测器及亮度控制器_第1页
基于光敏二极管的光探测器及亮度控制器_第2页
基于光敏二极管的光探测器及亮度控制器_第3页
基于光敏二极管的光探测器及亮度控制器_第4页
基于光敏二极管的光探测器及亮度控制器_第5页
已阅读5页,还剩21页未读, 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、编号:传感器技术原理与应用(实训)题 目: 基于光敏二极管的光探测器院 (系): 应用科技学院专 业: 电子信息工程学生姓名:学 号:指导教师:2010年 06 月 23日摘 要针对时下人们对灯具亮度实现智能化的要求,本文完成了一种基于光敏二极管的光探测器及亮度控制器。首先使用光敏二极管驱动电路产生在ADC0809检测范围的亮度电压,然后通过51单片机读取亮度信号,亮度信号的等级送入数码管显示。再根据亮度信号产生PWM信号,最后将调制后的PWM送入数码管和高亮度LED驱动电路而完成亮度控制的功能,也可以将PWM转换成所需调节亮度的灯具能接受的电量信号而完成亮度控制。亮度控制等级由A/D转换的位

2、数确定,共有8级,最高可以达到16级。 关键词:智能化;光探测器;PWM;亮度控制;引言 .1 1 光敏二极管的简介.21.1 光敏二极管简介.21.2 光敏二极管与光敏电阻的比较.21.3 光敏二极管的驱动电路.21.3.1 晶体管连接方式.31.3.2 运放连接方式.31.3.3 直接连接方式.4 2 ADC0809的驱动电路.42.1 ADC0809简介.42.2 ADC0809的内部逻辑结构.52.3 各引脚的功能及连接.52.3.1 ADC0809各引脚功能.52.3.2 地址输入和控制线.62.3.3 数字量输出及控制线.7 3 数码管显示驱动电路.83.1 74HC245简介.8

3、3.2 位选驱动电路.93.3 脉冲宽度调制(PWM)简介.103.4 PWM控制数码管亮度原理.113.5 PWM控制高亮度发光二极管亮度的驱动电路.12 45单片机最小系统.13 系统整体框图.6 软件的设计.146.1 软件设计的思路.146.2 根据思路制作程序流程图.146.3 根据流程图编写程序.15 78 系统的扩展.15 总结.15谢 辞.17参考文献.18附 录.19引言在哥本哈根世界气候大会中国承诺2020年国内单位国内GDP二氧化碳排放比2005年下降4045,作为约束性指标纳入国民经济和社会发展中长期规划,为了实现这一宏伟目标,我们需要从身边的事情做起。值得一提的是我们

4、平常接触到的灯具一般都是只有两种状态,要么黑要么最亮,也即是说灯具的亮度是不可调的,而且一般都需要人工操作,那么有没有一种能够智能地根据实时的光照情况调节灯具亮度的系统,以达到智能化以及节能环保的功能呢?本文正是基于这样的思路设计了一种光探测器及亮度控制,实时地根据外部的亮度信号输出脉冲宽度调制(PWM)后的PWM信号去控制数码管和LED的亮度;文中给出了生成PWM及调制原理和方法,通过数码管和高亮度LED的实际验证,只要灯具可以接受PWM信号均可以控制其亮度,即使不能接受也可以将PWM信号转换成模拟信号进行控制。除些之外,文中对系统做出了扩展规划,可以根据实际要求将该系统设计成高精度的照度计

5、。11.1 光敏二极管的简介 光敏二极管简介光敏二极管也叫光电二极管。光敏二极管与半导体二极管在结构上是类似的,其管芯是一个具有光敏特征的PN结,具有单向导电性,因此工作时需加上反向电压。无光照时,有很小的饱和反向漏电流,即暗电流,此时光敏二极管截止。当受到光照时,饱和反向漏电流大大增加,形成光电流,它随入射光强度的变化而变化。当光线照射PN结时,可以使PN结中产生电子一空穴对,使少数载流子的密度增加。这些载流子在反向电压下漂移,使反向电流增加。因此可以利用光照强弱来改变电路中的电流。常见的有2CU、2DU等系列。本系统采用的是2CU系列的光敏二极管。1.2 光敏二极管与光敏电阻的比较 1,与

6、光敏电阻相比,光敏二极管具有更宽的光谱响应。2,光敏二极管是PN结的结构,由于结构上的不同,使得它具有更短的响应时间,通常情况下比光敏电阻快三个数量级。并且特殊处理过的光敏二极管,如PIN结光电二极管和雪崩式光电二极管,响应速度极短,已经广泛应用于光通信和光信号检测当中。3,当所加的电源电压大于9V后,光敏二极管伏安特性近似平行于X轴(X轴为电压),也即是说再增大电源电压它的光电流也不会再增加。而光敏电阻的伏安特性是光电流随着电源电压的增大而增大,而且也没有饱和的迹象。当供电出现波动后,输出电压也会出现相应的波动,所以光敏电阻的精度得不到保证。4,虽然光敏二极管有相比光敏电阻有许多优点,但是前

7、者是基于PN结的结构,从而使得它的光电流受到温度的影响较大。1.31.3.1 光敏二极管的驱动电路 晶体管连接方式图1-1是光敏二极管与晶体管组合应用电路的实例。图1-1(a)为典型的集电极输出电路形式,而图4-4(b)为典型的发射极输出电路形式。号一般较大。而发射极输出电路适用于模拟信号电路,电阻RB信号与输入信号的相位相同,这使得输出信号一般较小。图1-11.3.2 运放连接方式图1-2是光敏二极管VD与运放A组合应用实例团4-5(a)为无偏置方式,图4-5(b)为反向偏置方式。图1-2无偏置电路可以用于测量宽范围的入射光,例如照度计等,但响应特性比不上反向偏置的电路,可用反馈电阻Rf调整

8、输出电压,反向偏置电路的响应速度快输出信号与输入信号同相位。1.3.3 直接连接方式图1-3是直接连接方式的实例。光敏二极管加反向偏置,响应速度可提高几倍以上。图1-3(a)是接有较大负载电阻的电路图1-3(b)是接有较小负载电阻的电路。图1-3(a)所示电路的输出电压比图1-3(b)所示电路大,但响应特性不如图1-3(b)。图1-3(b)所示电路的输出电压比图1-3(a)小,但响应速度比图1-3(a)快。它们的响应特性都比无偏置电路好,但暗电流比无偏置电路大,如果要想提高精度可以使用运放的连接方式,并且在运放的反相输入端接上一个与同相输入相同的反向偏置的光敏二极管,并且要将它的透光窗口遮住,

9、让它输出的只有暗电流,这样就可以补偿温度对输出的影响。但是如果要这样做就需要使用专业的照度计进行标定,鉴于设备的因素,并且这次设计的精度没有这个要求,直接连接方式已经能够满足所要求的技术指标,所以就显示没有必要,显然直接方式在设计当中是最佳的性价比。图1-322.1 ADC0809的驱动电路 ADC0809简介ADC0809是带有8位A/D转换器、8路多路开关以及微处理机兼容的控制逻辑的CMOS组件。它是逐次逼近式A/D转换器,可以和单片机直接接口。2.2 ADC0809的内部逻辑结构由图2-1可知,ADC0809由一个8路模拟开关、一个地址锁存与译码器、一个转换器和一个三态输出锁存器组成。多

10、路开关可选通8个模拟通道,允许8路模拟量分时输入,共用A/D转换器进行转换。三态输出锁器用于锁存A/D转换完的数字量,当OE端为高电平时,才可以从三态输出锁存器取走转换完的数据。图2-12.32.3.1 各引脚的功能及连接 ADC0809各引脚功能D0-D7:8位数字量输出引脚。IN0-IN7:8位模拟量输入引脚。VCC、GND:5V工作电压。REF(+):参考电压正端。REF(-):参考电压负端。START:A/D转换启动信号输入端。ALE:地址锁存允许信号输入端。EOC:转换结束信号输出引脚,开始转换时为低电平,当转换结束时为高电平。 OE:输出允许控制端,用以打开三态数据输出锁存器。CL

11、K:时钟信号输入端(一般为500KHz)。A、B、C:地址输入线。图2-2ADC0809对输入模拟量要求为:输入信号单极性,电压范围是05V。 2.3.2地址输入和控制线ALE为地址锁存允许输入线,高电平有效。当ALE线为高电平时,地址锁存与译码器将A、B、C三条地址线的地址信号进行锁存,经译码后被选中的通道的模拟量进入转换器进行转换。A、B和C为地址输入线,用于选通IN0IN7上的一路模拟量输入。通道选择如表2-1所示。表2-1由于设计中只需要检测一路光敏二极管的电压,所以将A、B、C用IN0通道即可。2.3.3 数字量输出及控制线START为转换启动信号。当START上升沿时,所有内部寄存

12、器清零;下降沿时,开始进行A/D转换;在转换期间,START应保持低电平。EOC为转换结束信号。当EOC为高电平时,表明转换结束;否则,表明正在进行A/D转换。OE为输出允许信号,用于控制三条输出锁存器向单片机输出转换得到的数据。OE1,输出转换得到的数据;OE0,输出数据线呈高阻状态。D0D7为数字量输出线。CLK为时钟输入信号线,由于ADC0809的内部没有时钟电路,所需时钟信号必须由外界提供,通常使用频率为500KHZ,在设计当中使用两个触发器对单片机ALE端口的12/6MHz=2MHz进行两次二分频得到500K。实际电路如图2-3。图2-3VREF(),VREF()为参考电压输入,在设

13、计当中直接将参考电压接到5V和地。ADC0809的时序图如图2-4所示图2-433.1 数码管显示驱动电路 74HC245简介74HC245是总线驱动器,典型的TTL型三态缓冲门电路。 由于单片机的数据地址控制总线端口都有一定的负载能力,如果负载超过其负载能力,一般应加驱动器。在实验当中发现如果将数码管的段选直接加到单片机中,虽然也能显示,但是由于单片机吸入的电流过大,单片机的温度明显增加,加74HC245可以起到保护单片机的作用。图3-1是数码管采用74HC245的段选电路。图3-13.2 位选驱动电路图3-2如图3-2所示是数码管位选的驱动电路,PWM输入为高电平时位选接通电源,当相应的S

14、EL为高电平时数码管接通电源,相应的段选为低则点亮;PWM输入为低电平时关断电源,无论SEL和段选为何值均不亮。3.3 脉冲宽度调制(PWM)简介图3-3脉宽调制(PWM:(Pulse Width Modulation)是利用单片机的数字输出来对模拟电路进行控制的一种非常有效的技术,广泛应用在从测量、通信到功率控制与变换的许多领域中。简而言之,PWM是一种对模拟信号电平进行数字编码的方法。通过高分辨率计数器的使用,方波的占空比被调制用来对一个具体模拟信号的电平进行编码。PWM信号仍然是数字的,因为在给定的任何时刻,满幅值的直流供电要么完全有(ON),要么完全无(OFF)。电压或电流源是以一种通

15、(ON)或断(OFF)的重复脉冲序列被加到模拟负载上去的。通的时候即是直流供电被加到负载上的时候,断的时候即是供电被断开的时候。只要带宽足够,任何模拟值都可以使用PWM进行编码。如果要控制LED的亮度可以采用改变供电电压来改变,但是LED的亮度与电压的关系是非线性的,所以很难精确控制LED的亮度,如果采用来PWM控制那将会变得非常容易,因为LED的亮度与导通时间是成线性关系,所以只要根据光敏二极管采样回来的亮度信号去改变LED的导通时间就可以实现线性的亮度调节。 在实际中PWM广泛应用于LED显示屏的灰度控制,正是由于LED双色灰度LED显示屏和全彩LED3.4 PWM控制数码管亮度原理如3.

16、3所述,数码管和LED灯的导通时间与亮度成线性关系,那么只要能控制导通时间就可以控制亮度,根据这一原理,做出如下设计。如图3-4所示,脉冲周期=256us,刚好与ADC0809采样的256个电压等级相对应,只要使得光敏二极管驱动部分的输出电压在0-5V的范围,就可以根据采样回来的电压值直接去改变高电平持续的时间。即是,当ADC0809采样回来的电压值为1则输出的时图2-8的PWM信号,当采样回来的是128时输出的是图3-5的PWM信号。其余依此类推,这样就可以实现256级的亮度调节,如果增加AD的位数到16位,那么数码管和LED的亮度等级也可以做到216=65536级。但是只是要完成亮度等级那

17、就没有这个必要,并且也没有做成照度计的要求,所以256级的亮度已经完全满足,在后期可以根据要求轻松地将本设计改成智能化的照度计或者将此亮度调节技术嵌入到其它的设计当中。图3-4图3-53.5 PWM控制高亮度发光二极管亮度的驱动电路只要将3.4产生的PWM信号输入到Q1的基极,那么LED的亮度就会与PWM的高电平时间成线性关系。图3-64 单片机最小系统单片机最小系统如图4-1所示图4-15 系统整体框图图5-1整体系统框图如图5-1所示,光敏二极管实际所测最大的光电流为50uA,为了使其输出最大5V的电压,那么所接的负载电阻应为100KADC0809进行AD转换,单片机再根据电压值来修改PW

18、M的高电平持续时间,制数码管和高亮度发光二极管的亮度,同时将转换后的电压处理后送到数码管显示。 66.1 软件的设计 软件设计的思路单片机利用ADC0809读取光敏二极管输出的亮度信号,将这个信号值送入数码管显示,并且根据这个值产生相应脉冲宽度的PWM信号,再将这个信号送入到数码管和高亮度光敏二极管的亮度控制电路来控制它们的亮度。在产生PWM信号时需要用到两个定时器,一个定时器用于产生周期T=256us的脉冲,另外一个定时器用于控制PWM的脉冲宽度,这样经调制后的PWM信号就会包含有亮度信息,用于控制数码管和高亮度发光二极管的亮度。6.2 根据思路制作程序流程图图6-1图6-1是根据6.1的软

19、件设计思想设计的程序流程图。6.3 根据流程图编写程序根据程序流程图编写程序,关键部分程序如附图所示。7 系统的扩展如果有专业的照度计进行测量及标定,可以将本系统扩展为照度计,但是由于AD的精度只有8位,作为照度计使用的话需要增加AD的位数,这需要根据技术的要求选择相应精度的AD。除此之外,要作为照度计的话需要增加光敏二极管驱动电路的频率响应,使得光敏二极管所能检测到的光频率范围更宽,那么就需要减小光敏二极管的负载电阻,但是输出电压会随着负载电阻的减小而减小,所以需要对输出的电压进行放大,以达到AD转换的电压范围。并且,由于光敏二极管的温度漂移比较严重,需要做出相应的处理;为了防止温漂的影响,

20、在实际应用中我们可以采用差动的方式来获得精确的亮度信息,做法是多加一个与图1-3(a)元件特性参数相同的光敏二极管驱动电路,但是这个光敏二极管的需要特殊处理,使用它无法吸收光线,也即是只需要它的暗电流,然后输入到运算放大器的反相端,运放输出的是两个光敏二极管的差值,如果温度变化,那么两个管的暗电流都会跟着增大,但是只要亮度不发生变化,它们两个之间的差值就不会发生改变,这样整个系统的精度就会得到较大的提高。除些之外该系统可以根据用户的设定,当外部光源达到用户所设定的值后输出一个控制信号作为开关,控制楼宇及道路的灯光。如果灯具可以直接接受PWM信号那么就可以控制灯具的亮度,例如大功率发光二极管,如

21、果不可以,也可以将PWM信号转换成模拟量,通过调节这个模拟量来调节灯具的亮度,由此而完成智能化。也因此使得系统起到环保的作用。8 总结集结号,但仍克服重重困难,最终还是完满地完成了实训所做出的要求,出于时间的要求,有些地方做得还不是非常完美,软件和硬件都有些许缺陷,也只有先完成功能,再在完成功能的基础上让硬件和软件更完美。实训的要求是要采用光敏二极管作为传感器,能检测100级的亮度等级,100个等级的线性度要良好,并且根据这个亮度等级对灯的亮度进行调节;根据这个功能要求,光敏二极管的亮度信号采集采用ADC0809来完成。除些之外,灯则采用LED,这是因为LED可以在常压下点亮,只要在LED上调

22、试成功,那么移植到其它的灯具上也会比较容易,只要增加相应的驱动电路即可。但是由于发光二极管亮度与电压的关系呈非线性,所以用模拟电路来实现线性的亮度调节较为困难。虽然LED的供电电压与亮度的关系为非线性,但是导通时间与亮度呈较好的线性关系,所以采用了已经得到广泛应用的脉冲宽度调制(PWM)技术来控制LED的亮度。要实现PWM的调制可以采用专用的PWM调制器,也可以采用单片机生成,前者虽然可以实现较高的精度,但是会使得系统变得复杂,并且成本会大大增加,为了降低成本和达到系统的要求,所以该系统采用了单片机来实现PWM的调制;PWM的实现方法是使单片机的定时器T1生成固定的周期为256us的脉冲波,定

23、时器T0则根据采样回来的亮度信号对PWM的高电平宽度进行调制。如果采样回来的亮度信号越大,则使高电平持续的时间更长些,这样数码管和LED导通的时间就跟着增加,数码管和LED的亮度就更亮些,如果采样回来的亮度信号小了,就减小PWM的高电平持续时间,则数码管和LED的亮度的就会暗些。基于这样一个思路,设计了该系统的亮度调节功能;开始是使用PROTEUS和EWB先对电路功能进行仿真,仿真结果都能够满足系统的要求。但是实际中的会出现许多问题,比如在调试光敏二极管的时候发现实际的最大光电流只有50uA,这是需要实际测量出来才准确。还有调试ADC0809时发现仿真已经通过了,但是实际上并不行,调到最后才发

24、现ADC0809的地址锁存端(ALE)接到高电平了。后来根据官方PDF提供的资料,将ALE与START接在一起后才可以正常实现AD转换。除些之外,在调试亮度调节的时发现LED的亮度会出现闪烁的现象,通过示波器观察到LED的导通受到数码管的导通影响,因为两个PWM同时送到数码管和发光二极管的输入端。所以为减小两路之间的相互影响,增加了一个三极管隔离PWM信号,最终LED的亮度根据线性的亮度信号实现线性的亮度调节。到此就完成了整个系统的功能要求。谢 辞实训快要结束了,在此过程中很多同学和老师都在努力工作、努力学习。衷心感谢老师的悉心指导和热情帮助,在我实训过程中提供了许多宝贵意见,让我学到了许多知

25、识,开阔了眼界,增强了我的动手和动脑能力。同时,感激所有我们班的同学和科协的同学们,正是他们的努力和对我的帮助,我才能完成这次实训,并从中学到了更多的知识。我水平有限,所以本设计存在许多不尽如人意的地方,欢迎老师和同学批评指正。此外,感谢我们学院为我们提供这个机会。参考文献1传感器应用设计300例(上册)M.张供润编,北京航空航天大学出版社,20082传感器原理与应用(第二版)M.黄贤武、郑筱霞编著,电大科技大学出版社,19993电子器件与电路(第六版)M. Theodore F.Bogart Jr.编著,清华大学出版社,20064传感器和信号调节M.Romon Pallas-Areny编,清

26、华大学出版社,2003附 录#include <reg51.h>sbit LED= P24; /PWM输出sbit ST =P30; /AD0809的START控制端sbit OE=P31; /AD0809的使能控制端sbit EOC=P32; /AD0809的转换完成标志sbit SEG1=P20; /数码管1sbit SEG2=P21; /数码管2sbit SEG3=P22; /数码管3sbit SEG4=P23; /数码管4uchar Disp_Buf4; /显示缓存uint Adc_Data; /AD缓存uint temp_adc_data; /用于防止亮度等级范围漂动uc

27、har counter_ad ,test_data = 0x80; /用于限定亮度等级的变化快慢/起始脉冲宽度uchar code Seg_Dig=0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90;/数码管段码void delay(Delay_Ms); /延时1msvoid display(); /显示子程序uint Conver_ADC0809();/AD转换子程序void main()LED = 0; /初始化为0TMOD = 0x22; /使用工作方式2TH0 = test_data; /初始化脉冲宽度TL0 = test_data;TH

28、1 = 0x00; TL1 = 0x00; /256us = 0.2ms f=5KhzEA = 1; /开总中断ET1 = 1; /开定时器1使能ET0 = 1; /开定时器0使能TR1 = 1; /启动定时器1,生成周期为256us的PWM波形while(1)display(); /调用显示子程序void display() /显示程序uchar i,temp_light,light;uint temp,Adc_temp,temp_data;counter_ad+;if(counter_ad>=100) /显示100次后再读取ADC数据temp_data = Conver_ADC080

29、9(); /调用AD转换counter_ad = 0; /清计数if(temp_data>temp_adc_data) /如果AD转换值大于缓存值if(temp_adc_data=0xff)temp_adc_data=0xff;else temp_adc_data += 1; /缓存加1 elseif(temp_data=temp_adc_data)temp_data=temp_adc_data; /如果AD转换值等于缓存值,则不变elseif(temp_adc_data=0x00)temp_adc_data=0x00;else temp_adc_data -= 1; /如果小于则减1if(temp_adc_data=

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论