光敏传感器
图1 光敏传感器
1. 基础知识
光敏传感器又叫光敏电阻器或者光感电阻,其工作原理是基于内光电效应。光敏传感器是利用光电元件作为检测元件的传感器。它首先把被测量的变化转化成光信号的变化,然后借助光电元件进一步将光信号转化成电信号。光电传感器一般由光源、光学通路和光电元件三部分组成。
光敏传感器的敏感波长在可见光波长附近,包括红外线波长和紫外线波长。光敏传感器不只是局限于对光的探测,它还可以作为探测元件组成其他类型的传感器,可以对许多非电量因素进行检测,只要将这些非电量因素转化为光信号的变化即可。光敏传感器如图1所示。
2. 硬件连接
光敏传感器可同时输出高/低电平数值(即通过DO引脚输出0或1)以及亮度模拟数值(即通过AO引脚输出0-32767)。如果我们只需要简单的判断所处环境是否明亮,我们可以只连接光敏传感器获得其电平数值,如若所处环境明亮,则电平数值为1,反之,则电平竖直为0;但是如果我们需要进一步获取所处环境的亮度值,那么仅有光敏传感器就不够,还需要再接入A/D转换器,将得到的模拟数值转换成数字数值并输出至LOG。
光敏传感器在连接的时候应遵循接口一一对应的原则,可以直接插入古德微扩展板24号接口(如图2所示),如若接口顺序不一致,也可以借助杜邦线来进行连接。光敏传感器正确插入扩展板后,一盏小灯亮起,当光敏传感器检测到所处环境的亮度较大时,则两盏小灯同时亮起,并且此时的电平数值为1。
图2 光敏传感器连线
3. 基础应用(图形化)
- 点击参考光敏传感器积木块
1.传感器测试:
- 永远运行程序(重复值为真)直到强行中断程序或切断电源,每隔0.5秒,通过获取光敏传感器输出的高/低电平数值,输出到LOG中。如图3所示。
图3 光敏传感器测试
2.光控小灯程序:
- 永远运行程序(重复值为真)直到强行中断程序或切断电源,每隔0.5秒获取光敏传感器的数值来控制小灯的亮灭,如果光敏传感器的值为0,即所处环境较暗时,小灯亮起;反之,如果光敏传感器的值为1,即所处环境亮度较高,则小灯熄灭。如图4所示。
图4 光控小灯程序
3.此处为程序下载链接:
4.光线传感器控制小灯亮灭效果演示视频:
4. 基础应用(Python)
- 光控小灯程序在Python环境下的具体程序如下:
import RPi.GPIO as GPIO
import time
LIGHT=24 # 光敏传感器GPIO引脚
LED=6 # 小灯GPIO号
GPIO.setwarnings(Flase)
GPIO.setmode(GPIO.BCM) # 指定BCM引脚编号模式
GPIO.setup(LIGHT, GPIO.IN) # 设置光敏传感器的GPIO为接收信号
GPIO.setup(LED,GPIO.OUT) # 设置小灯的GPIO为输出信号
while True:
if GPIO.input(LIGHT)==1: # 判断所处环境是否明亮
print('LIGHT=1')
GPIO.output(LED,GPIO.HIGH) # 设置小灯GPIO为高电平
else:
print('LIGHT=0')
GPIO.output(LED,GPIO.LOW) # 设置小灯GPIO为低电平
time.sleep(0.5) # 等待0.5秒