Arduino-Code und Video für den E18-D80NK Infrarot-Hindernisvermeidungssensor

Arduino-Code und Video für den E18-D80NK Infrarot-Hindernisvermeidungssensor

In diesem Tutorial lernen wir, wie man den E18-D80NK Infrarot-Hindernisvermeidungssensor mit dem Arduino verwendet, um Hindernisse zu erkennen und Aktionen auszulösen, wie z. B. das Einschalten einer LED oder das Aktivieren eines Relais. Das Projekt zeigt, wie man das Ausgangssignal des Sensors ausliest und entsprechend reagiert. Am Ende dieses Tutorials haben Sie einen funktionierenden Aufbau, der Hindernisse erkennen und basierend auf dieser Erkennung Ausgänge aktivieren kann.

Sehen Sie sich unbedingt das zugehörige Video an, um die Verkabelung und die Code-Implementierung besser zu verstehen (im Video bei 00:00).

Hardware erklärt

Der E18-D80NK-Infrarot-Hindernisvermeidungssensor ist dafür ausgelegt, mithilfe von Infrarotlicht nahe Objekte zu erkennen. Er sendet Infrarotstrahlen aus und erfasst die von Hindernissen zurückgeworfene Reflexion. Wenn ein Objekt in einem bestimmten Bereich erkannt wird, gibt der Sensor ein Low-Signal aus, das von einem Arduino gelesen werden kann.

Dieser Sensor hat drei Hauptpins: einen Versorgungspin (meist braun), Masse (blau) und einen Signalpin (schwarz). Der Signalpin wird mit einem digitalen Eingang des Arduino verbunden, um den Status der Hinderniserkennung auszulesen. Die Ausgabe kann dann verschiedene Geräte wie Motoren oder Relais anhand der Messwerte des Sensors steuern.

Details zum Datenblatt

HerstellerShenzhen Achtzehn Elektronik
TeilenummerE18-D80NK
Logik-/I/O-Spannung3,3 V bis 5 V
Versorgungsspannung5 V
Ausgangsstrom (pro Kanal)20 mA
Spitzenstrom (pro Kanal)200 mA
Erfassungsreichweite2 cm bis 30 cm
Ausgabetypdigital
PaketModul

  • Stellen Sie die korrekte Verkabelung sicher, um Schäden am Modul zu vermeiden.
  • Verwenden Sie einen Pull-up-Widerstand an der Signalleitung für stabile Messwerte.
  • Halten Sie den Sensor sauber und frei von Hindernissen, um eine genaue Erkennung zu gewährleisten.
  • Testen Sie die Reichweite des Sensors in Ihrer spezifischen Umgebung.
  • Achten Sie auf die Leistungsangaben, wenn Sie Relais oder Motoren anschließen.

Verdrahtungsanleitung

E18-D80NK Infrared Sensor: Wiring with a resistor
E18-D80NK Infrared Sensor: Wiring with resistor — E18-D80NK Infrared Sensor: Wiring with a resistor

Um den E18-D80NK-Sensor mit dem Arduino zu verdrahten, verbinden Sie zuerst das braune Kabel mit dem 5V-Pin des Arduino für die Stromversorgung. Als Nächstes verbinden Sie das blaue Kabel mit dem GND-Pin, um den Stromkreis zu schließen. Anschließend verbinden Sie das schwarze Kabel mit dem digitalen Pin 2 des Arduino für den Signaleingang.

E18-D80NK infrared sensor: sensitivity screw

Wenn Sie ein Relais verwenden, verbinden Sie den Steuerpin des Relais (in der Regel Pin 9) mit dem Arduino, um den Ausgang basierend auf den Messwerten des Sensors zu steuern. Stellen Sie sicher, dass das Relais ordnungsgemäß mit Strom versorgt ist und mit dem Wechselstromgerät verbunden ist, das Sie steuern möchten. Es ist entscheidend, beim Arbeiten mit Wechselstrom Sicherheitsvorkehrungen zu beachten.

Codebeispiele und Schritt-für-Schritt-Anleitung

Der folgende Code zeigt, wie man die Ausgabe des Sensors ausliest und eine Aktion basierend auf der Erkennung eines Hindernisses steuert. Die Ausgabe des Sensors wird mit demSENSORDer Identifikator ist als Pin 2 definiert, und der Aktions-Pin ist als Pin 9 definiert.

#define SENSOR 2 // define pin 2 for sensor
#define ACTION 9 // define pin 9 as for ACTION

void setup() {
  Serial.begin(9600); // setup Serial Monitor to display information
  pinMode(SENSOR, INPUT_PULLUP); // define pin as Input sensor
  pinMode(ACTION, OUTPUT); // define pin as OUTPUT for ACTION
}

In diesem Auszug richten wir die serielle Kommunikation ein und konfigurieren den Sensor-Pin als Eingang mit einem Pull-up-Widerstand, während der Aktions-Pin als Ausgang gesetzt wird. Diese Konfiguration ist unerlässlich für das Auslesen des Sensors und die Steuerung des Relais oder anderer Geräte.

void loop() {
  int L = digitalRead(SENSOR); // read the sensor
  if (L == 0) {
    Serial.println("Obstacle detected");
    digitalWrite(ACTION, HIGH); // send signal
  } else {
    Serial.println("=== All clear");
    digitalWrite(ACTION, LOW); // turn the relay OFF
  }
  delay(500);
}

Dieser Teil des Codes überprüft kontinuierlich die Ausgabe des Sensors. Wenn ein Hindernis erkannt wird (wennList 0), sendet es ein HIGH-Signal an den Aktions-Pin, das ein Relais oder andere Komponenten aktivieren kann. Wenn kein Hindernis erkannt wird, sendet es ein LOW-Signal und schaltet das Gerät aus.

Demonstration / Was Sie erwartet

Wenn Sie die Schaltung aufgebaut und den Code hochgeladen haben, wird der Sensor kontinuierlich nach Hindernissen suchen. Wenn ein Objekt in den Erfassungsbereich gelangt, sollten Sie im seriellen Monitor eine Meldung sehen, die anzeigt, dass ein Hindernis erkannt wurde, und das angeschlossene Gerät wird aktiviert. Ist der Weg frei, wird die Meldung "All clear" ausgegeben. Achten Sie darauf, die Verzögerung in der Schleife anzupassen, wenn Sie verpasste Erkennungen oder unerwünschte Auslösungen bemerken (im Video bei 00:00).

Video-Zeitstempel

  • 00:00- Einführung in das Projekt
  • 01:30- Hardware-Übersicht
  • 03:15- Verdrahtungsanleitung
  • 05:00- Code-Durchsprache
  • 06:45- Vorführung des Aufbaus

Bilder

E18-D80NK infrared sensor: connected to Arduino and buzzer
E18-D80NK Infrared Sensor: Connected to Arduino and buzzer
E18-D80NK Infrared Sensor
E18-D80NK Infrared Sensor: Sensor
E18-D80NK Infrared Sensor: TX RX lenses
E18-D80NK Infrared Sensor: TX RX leses
E18-D80NK infrared sensor: sensitivity screw
E18-D80NK Infrared Sensor: Sensitivity screw
E18-D80NK Infrared Sensor: Wiring colors
E18-D80NK Infrared Sensor: Wiring color
E18-D80NK Infrared Sensor: Wiring with a resistor
E18-D80NK Infrared Sensor: Wiring with resistor
E18-D80NK Infrared Sensor: Setting Sensitivity
E18-D80NK Infrared Sensor: Setting Sensitivity
E18-D80NK Infrared Sensor: Demonstration using Arduino
E18-D80NK Infrared Sensor:Demonstration using Arduino
e18-d80nk-infrared-sensor-without-connector-3-80cm
e18-d80nk-infrared-sensor-without-connector-3-80cm
78-Arduino code for the LE18-D80NK infrared obstacle avoidance sensor
Sprache: C++
Kopiert!

Dinge, die Sie vielleicht brauchen

Ressourcen & Referenzen

Dateien📁

Keine Dateien verfügbar.