Einfachen Hindernissensor mit Arduino bauen – IR-LED & Photodiode Tutorial
Benötigte Komponenten
| IR-Sender (IR-LED) | × | 1 |
| Photodiode | × | 1 |
| Arduino UNO | × | 1 |
| Widerstand 3 kΩ | × | 1 |
| Widerstand 150 Ω | × | 1 |
| Steckbrett | × | 1 |
| Jumper-Wires | × | 1 |
| LED (generic) | × | 2 |
Software
- Arduino IDE
Aufbau
- IR-LED Anode → 150 Ω → 5V
- IR-LED Kathode → GND
- Photodiode Anode → GND
- Photodiode Kathode → 3 kΩ → Digital Pin 2
- Photodiode Kathode → Analog Pin A0
- Grüne LED → Digital Pin 13
- Rote LED → Digital Pin 12
Die IR-LED sendet kontinuierlich Infrarotlicht. Wird ein Objekt davor platziert, wird Licht reflektiert und trifft auf die Photodiode. Diese leitet einen Strom proportional zur Lichtintensität. Der Spannungsabfall am 3 kΩ-Widerstand wird an A0 gemessen.
Code
int photoDiode = 2; // Digitaler Pin (nicht direkt genutzt, Pullup via 3k an A0)
int greenLed = 13;
int senRead = 0; // A0
int senseRate = 905; // Schwellwert (kalibrieren!)
void setup() {
pinMode(photoDiode, OUTPUT);
pinMode(greenLed, OUTPUT);
pinMode(12, OUTPUT);
digitalWrite(photoDiode, HIGH); // Photodiode Kathode auf HIGH (über 3k an A0)
digitalWrite(greenLed, LOW);
Serial.begin(9600);
}
void loop() {
int val = analogRead(senRead);
Serial.println(val);
if (val <= senseRate) {
// Objekt erkannt: reflektiertes Licht → höherer Strom → niedrigere Spannung an A0
digitalWrite(12, HIGH); // Rote LED an
digitalWrite(greenLed, LOW);
delay(20);
} else {
// Kein Objekt
digitalWrite(12, LOW);
digitalWrite(greenLed, HIGH);
delay(20);
}
}
Funktionsweise & Kalibrierung
- Ohne Objekt: Photodiode empfängt wenig Streulicht → hoher Widerstand → hohe Spannung an A0 (nahe 1023)
- Mit Objekt: Reflexion → mehr Licht → niedrigerer Widerstand → niedrigere Spannung an A0
- Schwellwert
senseRatemuss experimentell bestimmt werden! Im Serial Monitor Werte beobachten und Mitte wählen.
Schaltplan
Siehe Bild: IR-LED an 5V/150Ω, Photodiode mit 3kΩ an A0 und D2, zwei Anzeige-LEDs an D12/D13.
Anwendungen
Basis für Linienfolger, Hinderniserkennung, Drehzahlmessung, Lichtschranken. Kosten: wenige Cent.
Herstellungsprozess
- LED-Helligkeit per PWM und Taster am Arduino Mega steuern
- Präzise Druck- & Luftstrommessung mit analogem Sensor und Arduino
- Echtzeit-Gyroskop-Spiel mit Arduino Nano & MPU-6050
- DHT11 Temperatur- & Feuchtesensor mit LED-Anzeige & Piezo-Summer
- K30 CO₂-Sensor: Echtzeit-Luftqualitätsmessung mit Arduino
- Unopad: Nahtloser Arduino MIDI-Controller für Ableton Live
- River Health Monitor: Arduino-basiertes Wasserqualitäts-Messsystem
- DFRobot Kapazitiver Fingerabdrucksensor mit Arduino oder ESP8266 einbinden
- Find Me: Smarter Gegenstands-Finder mit Arduino und Bluetooth
- Zuverlässigen Wecker mit DS1302 RTC und Arduino UNO bauen