| Regensensor mit Raspberry Pi
Regensensor(VMP 501/SP1 von Velleman) Regensensor mit Leiterbahnen Für die Auswertung des Sensors wird bei diesem Versuch ein fertiges Modul mit dem Operationsverstärker LM358 eingesetzt.
Auch solche Module sind leicht zu erwerben und weisen meist die gleichen Eigenschaften auf. Sie arbeiten im Bereich von 3,3 V bis 5 V und
stellen zwei Ausgänge, einen analogen und einen digitalen, zur Verfügung. Die kleine Platine, die eine Größe von ca. 2x3 cm hat, enthält
darüber hinaus einen Trimmer, mit dem die Schaltschwelle eingestellt werden kann. Eine Leuchtdiode signalisiert den aktuellen Zustand
des Schaltausgangs. Regensensormodul Der SchaltplanDie Schaltung gestalten wir ganz einfach. Der digitale Ausgang des Moduls wird an Pin 16 des Raspberry Pi angeschlossen.
Mit zwei Leuchtdioden, die an Pin 18 und Pin 22 angeschlossen werden, wird signalisiert, ob es regnet oder nicht. Um es einfach zu
gestalten: Die gelbe Leuchtdiode (Pin 22) steht für die Sonne, die blaue Leuchtdiode (Pin 18) für den Regen.
Schaltplan Die dazugehörige aufgebaute Testschaltung. Raspberry Pi & Regensensor: Testschaltung Das Programm, ähnlich wie die gesamte Schaltung, ist äußerst simpel. Über den digitalen Eingang (Pin 16) erfährt das Programm, ob es regnet oder nicht. Daraufhin wird entsprechend der Ausgang für den Regen (Pin 18, LED blau) oder für den Sonnenschein (Pin 22, LED Gelb) eingeschaltet. Zusätzlich, um eine gewisse Trägheit in das System einzuführen, wird nach dem Wegfallen des "Regen"-Signals eine Zeitverzögerung gestartet. Die gewünschte Schaltschwelle kann mit dem Poti auf dem Regensensor-Modul eingestellt werden. # ------------------------------------------------------------ # Regensensor # Sensor-Modul mit LM358 # Raspberry Pi 3B, Python 3 # ------------------------------------------------------------
import time
import RPi.GPIO as GPIO
LED_Regen = 18
LED_kein_Regen = 22
Eingang_Regensensor = 16
GPIO.setmode(GPIO.BOARD)
GPIO.setwarnings(False)
GPIO.setup(LED_Regen, GPIO.OUT)
GPIO.setup(LED_kein_Regen, GPIO.OUT)
GPIO.setup(Eingang_Regensensor, GPIO.IN, pull_up_down=GPIO.PUD_UP)
while True:
if GPIO.input(Eingang_Regensensor) == GPIO.HIGH: # Regen
GPIO.output (LED_Regen, GPIO.HIGH)
GPIO.output (LED_kein_Regen, GPIO.LOW)
time.sleep(5)
if GPIO.input(Eingang_Regensensor) == GPIO.LOW: # Kein Regen
GPIO.output (LED_Regen, GPIO.LOW)
GPIO.output (LED_kein_Regen, GPIO.HIGH)
# ------------------------------------------------------------------
KurzvideoKurzvideo Weitere Themen:
|