简易照度计的设计.docx
《简易照度计的设计.docx》由会员分享,可在线阅读,更多相关《简易照度计的设计.docx(22页珍藏版)》请在冰点文库上搜索。
简易照度计的设计
~
本科毕业设计(论文)
(2015届)
题目:
简易照度计的设计
专业:
电子信息工程
<
班级:
电工本一
姓名:
学号:
指导教师:
职称:
副教授
完成日期:
2015年4月20日
摘要
在科技技术极速发展的现在,自然界所存在的一些物理特性,我们总能找到测量他们的方法,如温度、湿度、力度、速度或者声音甚至是光亮度,曾经的我们只能用手、耳朵、鼻子或者是眼睛这些器官去感受,去观察,去研究他们的规律以及生活中的功能,但这些方法总是笼统的,而现在,通过对应的传感器,我们就能将这些物理特性具体化,数据化,信息化,为我们的研究带来科学化的指导。
就如照度计的诞生,就能把看得到却摸不到的光数据化,让我们不再是用某个形容词去概括光的亮度,而是用数据更加形象化的体现。
本设计采用光敏电阻作为光传感元件,依据光敏电阻特性:
其阻值随着光照强度的变化而变化(入射光强度增大,电阻减小;入射光强度减小,电阻增大),结合光敏电阻的光照特性,简易的完成对光的大小测量。
本设计电路结构简单,成本低,操作简单,能够简单的对光强度进行测量。
关键词:
传感器;光敏电阻;光强度;
Abstract
Speedevelopmentoftechnologyinsciencenow,someofthephysicalcharacteristicsthatexistinnature,wecanalwaysfindtheirwaytomeasure,suchastemperature,humidity,intensity,speedorsoundevenbrightness,oncewecanonlyhands,ears,noseoreyes,theseorganstofeel,toobserve,tostudylawandtheirlifefunctions,butthesemethodsarealwaysvague,Andnow,throughthecorrespondingsensor,wewillbeabletothesespecificphysicalcharacteristics,data,information,guidanceforustobringscientificresearch.Asthebirthofilluminancemeter,willbeabletoseebutnottouch-basedopticaldata,sowearenolongeranadjectiveusedtosummarizethebrightnessoflight,butwiththedatamorefigurativeexpression.
Thedesignusesaphotosensitiveresistanceasthelightsensor,basedonaphotosensitiveresistancecharacteristics:
itsresistancewithchangesinlightintensitychanges(incidentlightintensityincreases,theresistancedecreases;theincidentlightintensitydecreases,theresistanceincreases),combinedphotoresistorilluminationcharacteristics,lightandeasytocompletesizing.Thedesignofthecircuitstructureissimple,lowcost,simpleoperation,thelightintensitycanbeeasilymeasured.
Keywords:
correspondingsensor;photoresistor;lightintensity;
1绪论
前言
光存在于宇宙的各个角落,与人们的日常生活息息相关。
从古至今,光就存在于那里,看得见,而却摸不着,感觉得到,但却触摸不到。
曾经的我们只能用眼睛去看,感受这它亮暗的的变化,从暗淡到刺眼,我们只能用生活中的感觉来体会它的大小,直到现在我们对它才有了数据化的研究,这代表着我们现在科学技术的进步,时代的进步。
照度计研究的意义及应用
古往今来,人们日出而作,日落而息,光照无不时刻影响着人们的生活。
充足的光照,可以为人们照亮周边的实物,为人们指引正确的道路,避免着危险的发生,为人们带来足够的视野,保护着人们远离危险。
而过暗的光照,则会引起人们眼睛的疲劳,导致事故的诞生,各种危害的降临。
因此,在一个合适的光强度下工作或者学习,则成为了人们生活必不可少的要求。
在人们的日常生活中,为了保护人们身体的健康,很多室内的公共场所都有对亮度的要求,学校教室、医院病房、工厂办公室等等,国家制定着一系列对这些地方的光强度要求。
室内光强度指标俨然已经成为了建筑设计时必不可少的一项考虑因素。
除了公共场所意外,光强度还能被用于摄影的需求,舞台的布置,好的摄影艺术就是光与影的结合。
既然光照的大小都有了规定,测量光照的工具如照度计也就成了不可缺少的一样东西。
指标伴随着好坏,因此,对于照度计来说,此项技术不可能停滞不前,更准确的读数,更方便的操作必定成为它开发研究的重点。
总而言之,好的照度计为我们带来更精确的数据,也为人们生活提供更优质的保障,给人们的身体健康带来更好的服务。
因此,对于照度计的研究,有着极其重要的意义。
任务目标
针对日常对工作现场光照度测量的要求,设计制作一个能够测量现场光照度的装置。
本系统主要是利用光敏电阻的光敏特性,通过模电转换采集对应的数据,结合单片机的数据处理,最终在数码管上显示对应光照强度的数值。
设计的主要工作
本系统主要是通过单片机的控制光敏电阻读取来达到测量光照强度的目的,为了实现这个功能做出以下设计:
(1)了解光敏电阻对于光照的变化,并依此选择可以利用的范围,要求测量范围是10Lux~1000Lux。
(2)根据所要求的测量范围设计正确的显示系统,达到显示功能,要求三位半显示,先是最大读书1999。
(3)依据要求的采样率,在设计的程序中加入刷新目的,达到时时检测,要求取样率为次/秒。
本文的主要内容
本文对所设计的系统进行的介绍和总结,具体安排如下:
第1章绪论,主要介绍本系统的背景,研究的意义以及主要工作内容;
第2章本设计的硬件部分,对此模块进行描述;
第3章本设计的软件部分,对软件程序进行阐述;
第4章本设计的系统调试和硬件检查,以及最终结果分析;
第5章本次设计的总结,说明自己的感想;
最后就是致谢以及参考文献和附录
2简易照度计的硬件设计
本设计是依据光敏电阻的特性(入射光强,电阻小;入射光弱,电阻大)采集它所在电路中电压随光线变化而产生的变化,通过ADC0832采集所得到的电压数值并将之传送给单片机STC98C52,经由单片机STC89C52对数据进行处理,并且将处理后的数值显示在四位数码管上。
此系统涉及的语言是C语言。
本设计主要功能的实现通过几个功能模块构成:
单片机控制处理器STC89C52、信号采集模块(包括光敏电阻以及ADC0832)、显示模块(四位数码管)、电源模块。
本系统设计的框图如2-1图所示。
单片机控制处理器
光敏电阻
ADC0832
四位数码管显示
图2-1简易照度计系统框图
中央处理器STC89C52
一般单片机的最小系统就是由一个复位电路和外接一个时钟电路构成。
STC89C52的最小系统如下图2-2所示。
图2-2STC89C52最小系统
光线采集模块
本系统利用光敏电阻的特性对光强度进行采集,再利用模数转换器ADC0832对采集的数据进行转换。
因此,可以将此模块分为两部分来阐述。
2.2.1光敏电阻
光敏电阻作为光敏传感器的一种,是可以将光信号转换为电信号的元件。
光敏电阻的工作原理是内光点效应,它是利用光电效应制作的一类特殊电阻,它的阻值会随着光照强度的变化而变化:
光照强度强,电阻变小;光照强度弱,电阻大。
在没有光照的情况下,光敏电阻的阻值很高,一般在1MΩ以上;在有光照的情况下,当光子的能量大于半导体材料的导通能量,则半导体材料中的电子吸收一个光子的能量变为导体,光照强度越大,则进入的光子数量越多,因此半导体材料中的电子变成可导体的数量越多,带电能力越强,即光敏电阻的阻值越来越小。
而光照消失后,因为光子激发的空穴又会逐渐复合,光敏电阻也恢复不可导状态,阻值急剧增大。
光电特性就是在光敏电阻两极电压不变的情况下,测量光照强度与电阻及电流的关系。
下面图2-3就是光电特性曲线图。
图2-3光电特性曲线图
光敏电阻在室温和全暗条件下测的的稳定电阻值被称为暗电阻,此时的电流被称为暗电流。
同样光敏电阻在室温和一定光照条件下测的的稳定电阻值被称为亮电阻,此时的电流被称为亮电流。
光敏电阻各型号间因为暗电阻和亮电阻的不同,其灵敏度也就各有差异,主要是,暗电阻越大,亮电阻越小,这样的光敏电阻的灵敏度越高。
本次设计结合以上理论和实验室实际情况选择GL5516型号光敏电阻作为光敏传感器。
2.2.2模数转换器ADC0832芯片
本设计利用光敏电阻特性使电路中分配在光敏电阻两端的电压随着光照变化而变化,而后利用ADC0832的端口CH0采集这变化的电压,通过ADC0832芯片本身的特点将变化的电压转化为具体数值。
由于设计思路一开始将光照的范围设定在0-255之间,因此,选择ADC0832芯片刚好符合设计的要求。
ADC0832芯片具有8位辨率、双通道A/D转换,输入输出电平与TTL/CMOS相兼容等特点。
2.2.2.1接口说明
本设计中,只需要对光敏电阻电路中电阻一端的电压进行采集,因此,芯片ADC0832只需要1个通道用来采集信号,即2脚。
芯片ADC0832的1脚、5脚、6脚、7脚分别接着单片机的、、、端口。
ADC0832芯片接口图如2-4所示。
图2-4ADC0832芯片接口图
2.2.2.2电源引脚
ADC0832芯片的供电电压是0~5V之间,芯片的转换时间仅为32us。
ADC0832芯片未工作时,CS口保持高电平,即1脚的电压处于高电平,此时芯片功能禁用;ADC0832芯片工作时,CS口保持低电平,即1脚保持低电平,芯片此时工作。
显示模块
本系统的目的是对光线强度进行数值测量,因此,在经过数据采集处理之后,显示部分的好坏极为重要。
一般来说,显示模块可选择的器件可为数码管和液晶两种,首先是七段数码管,它的优点是价格便宜,购买简单,而且在过去学习过程中,接触的最多;第二液晶显示,功能多,显示效果好,但相对价格较高,而且还未使用过。
综上所述结合设计具体要求,选择四位的数码管较为方便快捷,价格也相对便宜,替换方便,作为设计一部分,也对它比较熟悉。
选用4位7段数码管作为显示工具,P0口作为段选,P3口的、、、作为位选端口。
其具体接线图如图2-5所示。
图位2-5四数码管接图线
3简易照度计的软件设计
STC89C52RC单片机是可以用汇编编程也可以是用C语言编程。
汇编语言效率高,对硬件的可操控性强,体积小,但不易维护,可移植性差。
而C语言效率较低,硬件可操控性差,目标代码体积大,但容易维护,可移植性强,并且可读性高于汇编,更容易理解。
因此,本次设计采用C语言进行编程。
主程序的设计
主程序如下:
main()
{
uchart;
while
(1)
{
dat_g=get_0832_ch0();
//dat_g=218;
//显示
for(t=0;t<10;t++)
disp_dat(dat_g);
//delay_1ms(1000);
}
本程序是调用ADC0832子程序,再将调用得到的数据放入数据处理子程序中,简单的实现了对光强度的采集再到处理显示的部分。
本次设计的目的是,当打开电源,系统初始化,程序开始运行。
光敏电阻吃时开始工作,因为有一定的光线照射到它,它的阻值开始出现改变,因此与它串连在同一电路中的电阻所分配到的电压也会改变,同时,ADC0832的采集端口检测到电压的变化,并将其输入ADC0832内,ADC0832对输入进来的模拟电压进行数字化,再输出传送给单片机,当单片机接收到这些数据,通过内部的程序对其进行判断整理,再将最后的数据显示在数码管上。
从而我们可以得到单片机依次调用的ADC0832数据采集子程序、数据处理显示子程序,在经过延时程序,不停地采集读取显示,时刻显示这最新数值。
子程序设计
3.2.1ADC0832芯片子程序
作为本次设计的核心部分,A/D转换模块以ADC0832作为转换芯片,将光敏电阻与一定阻值的电阻串联进电路,当检测的光照照射到光敏电阻引起光敏电阻阻值的变化,从而引发电路中分压的改变。
转换芯片ADC0832通过检测接入点电压的变化,转化光照的变化情况。
其程序如下:
ucharget_0832_ch0()//通道0读取AD值
{
uchari,dat1=0,dat2=0;
//起始控制位
CS=0;
CLK=0;
DI=1;_nop_();_nop_();
CLK=1;_nop_();_nop_();
//第一个下降沿之前,设DI=1/0
//选择单端/差分模式中的单端输入模式
CLK=0;
DI=1;_nop_();_nop_();
CLK=1;_nop_();_nop_();
//第二个下降沿之前,设DI=0/1,选择CH0/CH1
CLK=0;
DI=0;_nop_();_nop_();
CLK=1;_nop_();_nop_();
//第三个下降沿之前设DI=1
CLK=0;
//DIO=1;_nop_();_nop_();
//第4~11共八个下降沿读数据(MSB->LSB)
for(i=0;i<8;i++)
{
CLK=1;_nop_();_nop_();
CLK=0;_nop_();_nop_();
dat1=dat1<<1|DO;
}
//第12~19共8个下降沿读数据(LSB->MSB)
for(i=0;i<8;i++)
{
dat2=dat2|((uchar)(DO)<
CLK=1;_nop_();_nop_();
CLK=0;_nop_();_nop_();
}
CS=1;
//如果MSB->LSB和LSB->MSB读取的结果相同,返回读取值,否则返回0
return(dat1==dat2)dat1:
0;
}
本程序是根据ADC0832的工作原理编写的C语言程序,此程序的效果是:
首先给予CS使能端低电平并一直保持到A/D转换结束;当CS处于低电平时,芯片的转换工作正式开始,此时处理器就会向芯片时钟输入端CLK输入时钟脉冲,DO/DI端则使用DI端的输入通道功能选择数据信号;第1个下降沿到来之前,就得将DI设置为高电平,即DI=1;在第2个和第3个脉冲下降沿之前,则利用DI=0/1,选择通道CH0作为输入端。
然后,在第3个脉冲下降沿之后,DI端输入电压不再起到输入作用,而数据输出DO端则还是根据DO/DI端开始数据的读取功能。
从第4个脉冲下降开始,数据输出DO端就转换输出最高位DATA7,而后每一个脉冲下降数据输出DO端就输出下一位数据,直至第11个脉冲下降输出最低位DATA0,从第4个到第11个下降沿输出就构成了dat1,即1个字节的数据输出完成。
同样,从第12个下降沿开始输出反向字节,即从第12个下降沿输出DATD0,同正向直至第19个脉冲输出DATD7,构成反向输出1个字节,即dat2。
最终,通过比较dat1与dat2结果完成一个完整的A/D转换。
3.2.2数据显示处理子程序
显示作为本次设计的最后一步,显得格外的重要。
本次设计采用4位共阳数码管,通过控制单片机引脚来讲结果数据显示。
其中,通过引脚控制四位数码管的位,通过引脚控制数码管具体的段。
下面是对显示数据具体处理的子程序:
voiddisp_dat(uchardat)
{
uchari,temp=0x7f;
l_dat[0]=0;
l_dat[1]=dat/100;
l_dat[2]=dat%100/10;
l_dat[3]=dat%10;
for(i=0;i<4;i++)
{
P2=temp;
P0=LED[l_dat[i]];
delay_1ms(5);
temp=temp>>1|0x80;
P0=0xff;
}
4硬件检查、仿真调试、结果分析
软件调试
软件调试部分主要就是在电路设计和程序设计完成后,现在软件上模拟运行测试整个系统能否达到实验的目的。
经过测试,通过调节软件中灯光元件的亮度,在数码管上会显示相应的数值0-255之间变化。
按照设计的程序原理,这是符合程序所达到的功能。
硬件检查
本次设计硬件部分较为简单,三大模块相互之间的关系比较清楚,焊接时注意各个引脚对应的点,不要造成虚焊,而且此次连线多采用插针连线,只要在插线时注意引脚编号及对应串口即可。
当然,有利也有弊,由于多数连线使用插针,插线两端可能损坏后不易被发现。
设计实际使用中发现的一些问题:
(1)在实物刚做出来,连接电源时,数码管全暗,但电源显示灯亮着,经过一遍遍对硬件进行检查,在单片机最小系统中损坏导致,替换一个晶振就解决问题。
(2)测量时,电源总是通过电脑得到,因此,局限了测量的范围,达不到实用的效果。
因此,在本系统中外加一个外接移动电源。
实物图如图4-1所示。
图4-1可移动电源实物图
结果分析
本次设计以光敏电阻为传感器,通过采集电压的方法,得到数据,因此显示的数据属于非线性的数据,所以,对于最终测量结果的分析,有以下几种方法:
4.3.1“查表法”
本设计中,显示的数值范围是0~255,因此通过以一个显示数值对应一个标准光强度的形式,制订了一张光强度对应数值表。
如图4-2所示。
图4-2测量数值比对表
从图中可看出,当测量的数值在100以下时,标准光度计数值接近0,在测量数值100~150范围内,光照数值的精确度还在可控制范围内,误差在±3Lux,然而在测量数值150以上,光照强度的精确率就很低了,“1”个变化点的误差就十分的严重,其误差超过了10Lux甚至是100Lux,因此通过“查表法”只能很粗略的判断光照强度的范围,这种处理数据的方式被放弃。
4.3.2线性拟合法
本次设计可测量数值变化集中在100~255之间,因此,对它们采用曲线拟合,首先,尝试使用线性拟合。
利用excel软件对测试数据进行拟合曲线处理,得到如下图4-3所示的拟合线性图。
图4-3数据拟合线性图
通过此线性拟合方式得到的线性公式,很明显无法体现整体数据趋势,存在着很大的误差值,也代表着这个变化不是线性变化,因此,这种拟合方式被放弃。
4.3.3非线性分段拟合
通过以上两种方法,可以发现,本次设计的试验数据可以看作是多个变化的集合,是由多段变化组合而成,因此,就可以尝试多段拟合处理数据。
由图4-2可知,在100~150之间的变化属于误差较小的数值,而在整体的变化趋势上,接近线性变化,因此,先将这一段用线性处理的方式分段。
如图4-4分段处理(a)所示
图4-4分段处理(a)
此时可以看出拟合的数值R与“1”接近,根据excel拟合规则,当R越接近1时,说明拟合度越高,曲线的公式越接近真是数值,因此,这部分数据误差较小,可保留使用公式。
接下来要对150~200这段数据进行分段处理,先观察图可得到数据趋势接近指数函数,因此采用指数函数拟合,如下图4-5分段处理(b)所示。
图4-5分段处理(b)
从图中可以看出,所得到的公式拟合度较高,即R很接近“1”,所以,在此段数据中,公式的可靠性较高,可以选择使用此公式。
下面还剩下一段数据未处理,同样,对它进行拟合处理。
如图4-6分段处理(c)。
图4-6分段处理(c)
此段函数的拟合度也相对较高,但是,可以看出数值在230之后变化的曲线与拟合的曲线存在着明显的偏差,说明在读数230之后,公式的准确性出现了严重的偏差,不再适用,但是在201~230这一段,公式依旧可靠,准确性较高。
综上所述,当采用拟合曲线分段处理的形式下,对数据进行了多段处理:
当数值处在0~99时,判定它为0;当数值处于100~150时,选择公式Y=;当数值处于151~200时,选择公式Y=*;当数值处于201~230时,选择公式Y=*。
第三种方法对比之前两种,计算产生的误差较小,比较符合实际测量情况,因此,测量时选择第三种方法作为数据处理方法。
以上处理数据的方法也适合直接在程序中使用,在编写程序时,可采用判断方式,分别将公式代入其中,直接计算最终数值。
5结论
本次实验,作为大学最后一次的毕业设计,确实让我对于电子这一门知识有了更深的认识。
通过这次试验,曾经在课堂中学习过的单片机知识完整的应用到了实际,通过实践,更清晰的了解了曾经学过的一些知识点。
当然通过本次独立的实验,我在单片机只是反面掌握的欠缺也完完整整的暴露了出来,对于电路的设计以及程序编写的经验不足,对于后续问题产生时解决的不明智等等。
实践出真知,实践也是检验真理的最好办法,通过亲自动手,完完整整投入一个实验中,收获的远远不只是表面。
照度计作为目前市场上的一款测量光强度的产品,它的实际应用非常的广泛。
这也证明了当前社会科学技术发展,带来的科技产品的普及和应用,也证明着现代文明日益发展的今天,人们对于生活健康的关注。
良好的光线不仅仅带来眼部的健康,也是能够愉悦人们的心情。
本次设计虽然硬件比较的简单,但是由于光敏电阻存在着它自己的光敏特性,我很难将其简单归纳为直线变化的存在,因此,我只能做到在某一阶段时,测量数值与真是数值在幅度变化上相符合。
再加上编程能力有限,最终的实验结果,只能简易的测量出光线强度变化的幅度。
致谢
本次试验是在老师的指导建议下完成,十分的感谢。
自从选了这个课题,我一直担忧的就是如何处理光敏电阻这种非线性元件,幸好指导老师从一开始就给了我如何处理的方法。
还要感谢管理器件器材的老师不厌其烦的为我开门,此次设计因为元件清单提交较晚,很多元件都是从零散的从器材老师那领取来的。
还要感谢帮我修改电路,帮我解决程序问题的同学,单单靠我自己的知识,还没有考虑到这么全面。
从选择了这个课题到成品的诞生历经三个月,电路图的修修改改,硬件的焊接的失误,软件程序编写的烦恼,在这段时间里,大学所学得到了合理的应用,也让我对自己有了更多的了解。
当然,还有对身边同学的更加熟悉,是他们帮助了我解决困扰我好几天的问题,是他们给了我很好的灵感和建议。
最后,作为大学生涯最后一次实验总