Tripwire met behulp van laser en lichtsensor

Met behulp van een Raspberry Pi, laser en lichtsensor is het redelijk eenvoudig om een ’tripwire’ te maken. Door een laser op een lichtsensor te laten schijnen kun je detecteren wanneer de laser onderbroken wordt. Als de laser wordt onderbroken betekent dit dat er een object aanwezig is tussen de laser en lichtsensor.

Je kunt dus een tripwire inzetten voor beveiligingsdoeleinden of bijvoorbeeld gebruiken om te controleren of er post in je brievenbus zit. Het aansluiten is vrij simpel en met het bijhorende Python script kun je de status van je tripwire uitlezen.

Gebruikte componenten

Lichtsensor module
KY-008 Laser Transmitter Module
5x Dupont verbindingskabel (female/female)

Raspberry Pi Zero, Raspberry Pi 2, Raspberry Pi 3
Raspbian Jessie (2016-05-27 kernel 4.4.13)

Aansluitschema

Sluit de lichtsensor en laser module aan volgens het onderstaande schema:

Laser module Raspberry Pi Pin Raspberry Pi Functie
S 11 GPIO 17
GND 6 GND
Lichtsensor Raspberry Pi Pin Raspberry Pi Functie
GND 39 GND
VCC 1 3.3v
SIGNAL D0 16 GPIO 23
WAARSCHUWING! Kijk niet in de laser om oogletsel te voorkomen, richt de laser dus ook niet op huisdieren.

Python tripwire script

Nadat de twee modules zijn aangesloten op de Raspberry Pi kunnen we de werking gaan testen, hiervoor kun je gebruikmaken van het onderstaande script:

#!/usr/bin/env python
# Tripwire met laser module en lichtsensor
# https://raspberrytips.nl/tripwire-laser
from datetime import datetime
import RPi.GPIO as GPIO
import os, time
SensorGPIO = 23
LaserGPIO = 17
def callback_func(channel):
if GPIO.input(channel):
print("Laser onderbroken -> "+str(datetime.now()))
if __name__ == '__main__':
GPIO.setmode(GPIO.BCM)
GPIO.setwarnings(False)
# activeer laser
GPIO.setup(LaserGPIO, GPIO.OUT)
GPIO.output(LaserGPIO, GPIO.HIGH)
#setup de lichtsensor
GPIO.setup(SensorGPIO, GPIO.IN)
GPIO.add_event_detect(SensorGPIO, GPIO.RISING, callback=callback_func, bouncetime=200)
try:
while True:
time.sleep(0.5)
except:
GPIO.remove_event_detect(SensorGPIO)
GPIO.output(LaserGPIO, GPIO.LOW)
GPIO.cleanup()
view raw tripwire.py hosted with ❤ by GitHub

Kopieer het bovenstaande script of download deze op je Raspberry Pi met:

wget https://raspberrytips.nl/tripwire.py

Activeer het script:

python tripwire.py

Het script zal de laser module activeren, zorg ervoor dat de laser is gericht op de lichtsensor. Wanneer hierna de laser wordt onderbroken wordt er een melding in het terminal venster weergegeven met het tijdstip dat dit plaatsvond.

tripwire python raspberry pi

Plaats een reactie

%d bloggers liken dit: