Nr. 31 – Lichtschranke

Inhaltsverzeichnis

Eine Lichtschranke an einem Arduino Mikrocontroller anschließen

Übersicht

In dieser Anleitung werden wir lernen, wie wir die Lichtschranke für Arduino Mikrocontroller in Betrieb nehmen.

Eine Lichtschranke besteht aus einer Lichtstrahlenquelle und einem Sensor für diese Strahlung. Dabei geht von der Lichtstrahlenquelle ein permanentes Licht (entweder Infrarot- oder Rotlicht) aus, welches von dem Sensor empfangen und anschließend in ein digitales Signal gewandelt wird.

Wenn dieses Signal frei von Störungen ist, kann der digitale Wert „0“ im seriellen Monitor ausgegeben werden. Zudem leuchtet die LED der Lichtschranke rot auf.

Sollte eine Störung, also ein Objekt im optischen Bereich der Lichtschranke, auftreten, kann der digitale Wert „1“ im seriellen Monitor ausgegeben werden.  Zeitgleich erlischt die LED der Lichtschranke.

Diese Störung wird in der Ausgabe des seriellen Monitors wie folgt angezeigt:

Ausgabe des seriellen Monitors

Pinbelegung

Die Lichtschranke verfügt über drei Pins:

  • VCC = Pin für die Spannungsversorgung, anzuschließen an den 5V Pin des Mikrocontrollers
  • GND = Ground-Pin, anzuschließen an den GND Pin des Mikrocontrollers#
  • OUT = Ausgang des digitalen Signals, hier anzuschließen an den D8-Pin des Mikrocontrollers

Die Lichtschranke im Live-Aufbau

LED der Lichtschranke leuchtet - Keine Störung
LED der Lichtschranke leuchtet - Keine Störung
LED der Lichtschranke ist erloschen - Störung!
LED der Lichtschranke ist erloschen - Störung!

Beispielsketch

int messwert=0; //Unter der Variablen "messwert" wird später der Messwert der Lichtschranke gespeichert.

void setup() 

{ //Hier beginnt das Setup.
Serial.begin(9600); //Die Kommunikation mit dem seriellen Port wird gestartet. Das benötigt man, um sich den ausgelesenen Wert im serial monitor anzeigen zu lassen.
}

void loop()
{ //Hier beginnt der Hauptteil  
messwert=digitalRead(8); //Die Signalausgabe der Lichtschranke wird ausgelesen und unter der Variable „messwert“ gespeichert. Wenn die Lichtschranke unterbrochen wird, speichert der Mikrocontroller den Wert "1", ansonsten "0".
Serial.print("Lichtschrankensignal="); //Ausgabe am Seriellen Monitor: „Lichtschrankensignal:"
Serial.println(messwert); //...und im Anschluss der Messwert "1" bei unterbrochener Schranke, ansonsten "0.
}

Funduino - Dein Onlineshop für Mikroelektronik

  • Dauerhaft 10% Rabatt für Schüler, Studenten und Lehrkräfte
  • Mehr als 3.500 Artikel sofort verfügbar!
  • Über 8 Jahre Erfahrung mit Arduino, 3D-Druck und co.
SALE