树莓派+震动传感器+光线亮度传感器+红绿灯LED(2020-09

2020-09-02  本文已影响0人  我开心0536
震动及亮光设备.jpg

震动传感器工作原理如下:
一旦传感器检测到震动,弹簧就会震动并与触发针接触,从而产生触发信号。可通过调节电位计用于设定触发起始程度。

亮度传感器工作原理如下:
一旦传感器检测到达到一定亮度,从而产生触发信号。可通过调节电位计用于设定触发起始程度。

#!/usr/bin/env python3
#-*- coding: utf-8 -*-

#上述两行指定运行环境以及编码方式

#导入GPIO模块
import RPi.GPIO as GPIO
#导入time模块并起名tm
import time as tm

GPIO.setmode(GPIO.BCM) 
led_list = [14,15,18]    # 红绿灯接口如下:18Green  15Yellow 14RED
GPIO.setup(led_list, GPIO.OUT)

GPIO.setup( 2, GPIO.IN)  #震动传感器的DO线接2口
GPIO.setup(10, GPIO.IN)  #光线亮度传感器的DO线接10口

try:
    while True:
        if GPIO.input(2) == GPIO.HIGH:   #如果检测到震动电平为高
            print('有震动!有震动!有震动!有震动!')
            for led in led_list:       #让红黄绿三个灯轮流闪烁
                GPIO.output(led, GPIO.HIGH)
                tm.sleep(0.05)
                GPIO.output(led, GPIO.LOW)
                tm.sleep(0.05)
                
        elif  GPIO.input(10) == GPIO.LOW:   #如果检测到光线亮度为高
            print('有亮光!有亮光!有亮光!有亮光!')
            for led in led_list:   #让红黄绿三个灯轮流闪烁
                GPIO.output(led, GPIO.HIGH)
                tm.sleep(0.05)
                GPIO.output(led, GPIO.LOW)
                tm.sleep(0.05)
        else:            
            print('无亮光!无震动!')
            GPIO.output(15, GPIO.HIGH)     #只闪黄灯
            tm.sleep(0.05)
            GPIO.output(15, GPIO.LOW)
        tm.sleep(1)#等待,让CPU能处理其他事务                

except KeyboardInterrupt:
    print('KeyboardInterrupt')
finally:
    GPIO.cleanup()
    print('Exit')
亮光及震动.jpg
上一篇下一篇

猜你喜欢

热点阅读