Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Beide Seiten der vorigen Revision Vorhergehende Überarbeitung Nächste Überarbeitung | Vorhergehende Überarbeitung Nächste ÜberarbeitungBeide Seiten der Revision | ||
faecher:nwt:arduino:arbeitsauftraege:aa_irsensor:start [07.10.2020 19:09] – sbel | faecher:nwt:arduino:arbeitsauftraege:aa_irsensor:start [07.10.2020 19:55] – [Analoger Modus] sbel | ||
---|---|---|---|
Zeile 1: | Zeile 1: | ||
====== Selbsterarbeitung IR Sensor ====== | ====== Selbsterarbeitung IR Sensor ====== | ||
+ | |||
+ | Mit einem Infrarot-Sensor-Modul ist es möglich, eine Entfernung zu bestimmen, einen Gegenstand zu detektieren, | ||
+ | |||
+ | {{ : | ||
+ | |||
+ | Am Sensor befindet sich eine Infrarotleuchtdiode, | ||
+ | |||
+ | Die Leuchtstärke des reflektierten Lichtes wird vom Sensormodul ausgewertet und dann je nach Bauart als analoges oder digitales Spannungssignal vom Sensor ausgegeben. | ||
+ | |||
+ | Die Stärke des reflektierten Lichts ist stark abhängig von der Beschaffenheit der Oberfläche des detektierten Gegenstandes. Ein heller Gegenstand reflektiert mehr Licht als ein dunkler. Die Bestimmung der Entfernung ist deswegen immer nur als relativer Wert zu betrachten - es ist nicht möglich - wie beim Ultraschallsensor - tatsächliche Entfernungen zu messen. | ||
+ | |||
+ | Ein angeschlossener Arduino Mikrocontroller kann den Wert einlesen und auf Änderungen des Wertes reagieren. | ||
+ | |||
+ | ===== Anschließen ===== | ||
+ | |||
+ | {{ : | ||
+ | Der Sensor hat vier Anschlüsse - im Bild zu sehen von rechts nach links: | ||
+ | |||
+ | ^Bezeichnung am Sensor ^ Funktion | ||
+ | |VCC | Spannungsversorgung | 5V | | ||
+ | |GND | Ground | GND | | ||
+ | |D0 | Digitaler Ausgang des Sensors | Digitaler Eingang | | ||
+ | |A0 | Analoger Ausgang des Sensors | Analoger Eingang | | ||
+ | |||
+ | ===== Analoger Modus ===== | ||
+ | |||
+ | Zunächst schließen wir den Sensor im analogen Modus an: Stromversorgung mit //VCC// und //GND//, als Ausgangspin verbinden wir //A0// des Sensors mit dem analogen Eingang //A0// des Arduino. | ||
+ | |||
+ | {{ : | ||
+ | |||
+ | Teste den Sensor mit folgendem Sketch. | ||
+ | |||
+ | <code c ir01.ino> | ||
+ | int SensorAnalog=A0; | ||
+ | int wert; // Erstellen einer Variablen mit dem Namen wert, unter dem die Messwerte gespeichert werden. | ||
+ | |||
+ | void setup() | ||
+ | { | ||
+ | Serial.begin(9600); | ||
+ | } | ||
+ | |||
+ | void loop() | ||
+ | { | ||
+ | wert=analogRead(SensorAnalog); | ||
+ | Serial.println(wert); | ||
+ | delay(50); | ||
+ | } | ||
+ | </ | ||
+ | |||
+ | Beobachte die Werte am Seriellen Monitor: | ||
+ | |||
+ | * Halte den Sensor mit der richtigen Seite in unterschiedliche Entfernung verschiedener Hindernisse. | ||
+ | * Halte den Sensor vor unterschiedliche helle Flächen. | ||
+ | * Verwende den Seriellen Plotter, um den Verlauf der Werte darzustellen. | ||
+ | |||
+ | {{ : | ||
+ | |||
+ | ---- | ||
+ | {{ : | ||
+ | === (A1) === | ||
+ | |||
+ | Schreibe ein Programm, das eine LEd immer an den dunklen Stellen des folgenden Dokuments blinken lässt, wenn man es unter dem Sensor hindurchzieht (oder den Sensor darüber hinweg bewegt). | ||
+ | |||
+ | {{ : | ||
+ | |||
+ | {{ : | ||