37款传感器与执行器的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是不止这37种的。鉴于本人手头积累了一些传感器和执行器模块,依照实践出真知(一定要动手做)的理念,以学习和交流为目的,这里准备逐一动手尝试系列实验,不管成功(程序走通)与否,都会记录下来—小小的进步或是搞不掂的问题,希望能够抛砖引玉。
(资料图)
【Arduino】168种传感器模块系列实验(资料代码+仿真编程+图形编程)实验二:光敏电阻传感器模块
光敏电阻(photoresistor )(1)光敏电阻的概念——光敏电阻是用硫化镉或硒化镉等半导体材料制成的特殊电阻器,其工作原理是基于内光电效应(光电导效应)。光照愈强,阻值就愈低,随着光照强度的升高,电阻值迅速降低,亮电阻值可小至1KΩ以下。光敏电阻对光线十分敏感,其在无光照时,呈高阻状态,暗电阻一般可达1.5MΩ。光敏电阻器是利用半导体的光电导效应制成的一种电阻值随入射光的强弱而改变的电阻器,又称为光电导探测器;入射光强,电阻减小,入射光弱,电阻增大。还有另一种入射光弱,电阻减小,入射光强,电阻增大。光敏电阻器一般用于光的测量、光的控制和光电转换(将光的变化转换为电的变化)。光敏电阻器对光的敏感性(即光谱特性)与人眼对可见光(0.4~0.76)μm的响应很接近,只要人眼可感受的光,都会引起它的阻值变化。设计光控电路时,都用白炽灯泡(小电珠)光线或自然光线作控制光源,使设计大为简化。光敏电阻的特殊性能,随着科技的发展将得到极其广泛应用。
(2)光敏电阻的结构——在顶部有两片呈梳状的金属电极,一般分为九线跟七线,且两片金属电极的梳齿是互相交错的,从波纹状的梳齿间隙里露出来的物质即为半导体光敏层,从金属电极的上面还可以看到两只金属引脚的顶部。管芯中光导电体的膜越长,面积越大,受光后,其电阻值变化也越大。因此,一般都把光导电体膜做成弓字形(蛇形状),使两电极成为交叉的梳状。目前,用量最大的光导电体材料是硫化镉(CdS),且掺有少量铜、银等杂质,以有效提高光敏电阻的光灵敏度。结构示意图如图所示。光敏电阻器通常由光敏层、玻璃基片(或树脂防潮膜)和电极等组成。
(3)光敏电阻的工作原理——是基于内光电效应(光电导效应)。在半导体光敏材料两端装上电极引线,将其封装在带有透明窗的管壳里就构成光敏电阻,为了增加灵敏度,两电极常做成梳状。用于制造光敏电阻的材料主要是金属的硫化物、硒化物和碲化物等半导体。通常采用涂敷、喷涂、烧结等方法在绝缘衬底上制作很薄的光敏电阻体及梳状欧姆电极,接出引线,封装在具有透光镜的密封壳体内,以免受潮影响其灵敏度。入射光消失后,由光子激发产生的电子—空穴对将复合,光敏电阻的阻值也就恢复原值。在光敏电阻两端的金属电极加上电压,其中便有电流通过,受到一定波长的光线照射时,电流就会随光强的增大而变大,从而实现光电转换。光敏电阻没有极性,纯粹是一个电阻器件,使用时既可加直流电压,也加交流电压。半导体的导电能力取决于半导体导带内载流子数目的多少。当光照射到光电导体上时,若光电导体为本征半导体材料,而且光辐射能量又足够强,光导材料价带上的电子将激发到导带上去,从而使导带的电子和价带的空穴增加,致使光导体的电导率变大。为实现能级的跃迁,入射光的能量必须大于光导体材料的禁带宽度Eg,即式中ν和λ—入射光的频率和波长。在黑暗的环境下,它的阻值很高;当受到光照并且光辐射能量足够大时,光导材料禁带中的电子受到能量大于其禁带宽度ΔEg 的光子激发,由价带越过禁带而跃迁到导带,使其导带的电子和价带的空穴增加,电阻率变小。光敏电阻器通常由光敏层、玻璃基片(或树脂防潮膜)和电极等组成。光敏电阻器在电路中用字母“R”或“RL”、“RG”表示。
光敏电阻主要用途:光线亮度检测,光线亮度传感器,智能小车寻光模块等,如下是常规应用的示意电路。
模块参数:工作电压:DC3.3-5V光敏电阻型号:5516模块针脚:3针或4针(4针的多出一个模拟输出端AO)
光敏电阻传感器模块的电原理图
模块接线图:1、VCC 接电源正极 3.3-5V2、GND 接电源负极3、DO TTL 开关信号输出4、AO 模拟信号输出
模块特色:1、工作电压3.3V-5V2、使用宽电压LM393比较器3、设有固定螺栓孔,方便安装4、采用灵敏型光敏电阻传感器5、小板PCB尺寸:3.2cm x 1.4cm6、配可调电位器可调节检测光线亮度7、输出形式,DO数字开关量输出(0和1)和AO模拟电压输出8、比较器输出,信号干净,波形好,驱动能力强,超过15mA。
模块实验说明:1、光敏电阻模块对环境光线最敏感,一般用来检测周围环境的光线的亮度,触发Arduino或继电器模块等;2、模块在环境光线亮度达不到设定阈值时,DO端输出高电平,当外界环境光线亮度超过设定阈值时,DO端输出低电平;3、DO输出端可以与Arduino直接相连,通过Arduino来检测高低电平,由此来检测环境的光线亮度改变;4、DO输出端也能直接驱动继电器模块,由此可以组成一个光控开关;5、光敏电阻模块小板模拟量输出AO可以和AD模块相连,通过AD转换,可以获得环境光强更精准的数值。6、光敏传感器控制的LED为你Arduino上接的13脚LED灯(也可以理解为负载),并非模块上的D0-LED+指示灯。7、模块上的蓝色电位器旋钮最好不要顺时针和逆时针到底,保持在中间即可控制。微调进行灵敏度调节。8、本实验只使用3针模块,当达到设定光线强度阙值时,LED亮灯3秒。
实验接线示意图
Arduino实验开源代码
Arduino实验开源代码之二
打开Arduino IDE上的串口监视器(红点处),读取A0模拟端口输入的实验数值
打开Arduino IDE——工具——串口绘图器,查看凌晨室内光线变化的波形
尝试测量极限情况下的光敏电阻的变化——
(1)先用遮光罩盖住光敏电阻(全黑暗),串口数值变大,波形向上,最大录得1023;
(2)再用手机电筒直接照射光敏电阻(全亮),串口数值变小,波形向下,最小录得为1;
(3)这情况超出了我原来的想象,极限情况居然能超过1000倍!实际应用光电的控制,亮阻与暗阻的差距能有几十倍的变化就足够了,看起来这款挺普通的GL5516光敏电阻还真不错的。极限测量情况见下图。
实验开源仿真编程(Linkboy V4.2)以及串口输出
实验一开源图形编程(Mind+、编玩边学)
上午9点钟,晴天的窗口,使用图形编程来测试,串口输出的数值如下:
实验一的光线检测实验场景图
实验开源图形编程(Mind+、编玩边学)以及实验串口输出截图
Copyright 2015-2022 亚洲日报网 版权所有 备案号:京ICP备2021034106号-51 联系邮箱:5 516 538 @qq.com