ESP8266 - Ultraschallsensor - Servomotor

Dieses Tutorial erklärt dir, wie man den ESP8266 und einen Ultraschallsensor verwendet, um einen Servomotor zu steuern. Im Detail:

Erforderliche Hardware

1×ESP8266 NodeMCU
1×USB-Kabel Typ-A zu Typ-C (für USB-A PC)
1×USB-Kabel Typ-C zu Typ-C (für USB-C PC)
1×Ultraschallsensor
1×Servo-Motor
1×Verbindungskabel
1×(Empfohlen) Schraubklemmen-Erweiterungsboard für ESP8266
1×(Empfohlen) Stromverteiler für ESP8266 Typ-C

Oder Sie können die folgenden Kits kaufen:

1×DIYables Sensor-Kit (30 Sensoren/Displays)
1×DIYables Sensor-Kit (18 Sensoren/Displays)
Offenlegung: Einige der in diesem Abschnitt bereitgestellten Links sind Amazon-Affiliate-Links. Wir können eine Provision für Käufe erhalten, die über diese Links getätigt werden, ohne zusätzliche Kosten für Sie. Wir schätzen Ihre Unterstützung.

Über Servomotor und Ultraschallsensor

Wenn Sie mit Servomotoren und Ultraschallsensoren (einschließlich Pinbelegung, Funktionalität und Programmierung) nicht vertraut sind, können Ihnen die folgenden Tutorials eine Orientierung bieten:

Verdrahtungsdiagramm

ESP8266 NodeMCU Ultraschallsensor Servomotor Verdrahtungsdiagramm

Dieses Bild wurde mit Fritzing erstellt. Klicken Sie, um das Bild zu vergrößern.

Weitere Informationen finden Sie unter ESP8266-Pinbelegung und wie man ESP8266 und andere Komponenten mit Strom versorgt.

Bitte beachten Sie, dass das oben gezeigte Verdrahtungsdiagramm nur für einen Servomotor mit geringem Drehmoment geeignet ist. Falls der Motor vibriert statt sich zu drehen, muss eine externe Stromquelle verwendet werden, um dem Servomotor mehr Leistung zu liefern. Nachfolgend wird das Verdrahtungsdiagramm mit einer externen Stromquelle für den Servomotor gezeigt.

ESP8266 NodeMCU Ultraschallsensor Servomotor Stromversorgungsschaltplan

Dieses Bild wurde mit Fritzing erstellt. Klicken Sie, um das Bild zu vergrößern.

Bitte vergessen Sie nicht, den GND der externen Stromversorgung mit dem GND des ESP8266 zu verbinden.

ESP8266-Code - Ultraschallsensor steuert Servomotor

/* * Dieser ESP8266 NodeMCU Code wurde von newbiely.de entwickelt * Dieser ESP8266 NodeMCU Code wird der Öffentlichkeit ohne jegliche Einschränkung zur Verfügung gestellt. * Für vollständige Anleitungen und Schaltpläne besuchen Sie bitte: * https://newbiely.de/tutorials/esp8266/esp8266-ultrasonic-sensor-servo-motor */ #include <Servo.h> #define TRIG_PIN D1 // The ESP8266 pin connected to Ultrasonic Sensor's TRIG pin #define ECHO_PIN D2 // The ESP8266 pin connected to Ultrasonic Sensor's ECHO pin #define SERVO_PIN D7 // The ESP8266 pin connected to Servo Motor's pin #define DISTANCE_THRESHOLD 50 // centimeters Servo servo; // create servo object to control a servo float duration_us, distance_cm; void setup() { Serial.begin (9600); // Initialize the Serial to communicate with the Serial Monitor. pinMode(TRIG_PIN, OUTPUT); // Configure the ESP8266 pin to the output mode pinMode(ECHO_PIN, INPUT); // Configure the ESP8266 pin to the input mode servo.attach(SERVO_PIN); // attaches the servo on pin 9 to the servo object servo.write(0); } void loop() { // Produce a 10-microsecond pulse to the TRIG pin. digitalWrite(TRIG_PIN, HIGH); delayMicroseconds(10); digitalWrite(TRIG_PIN, LOW); // Measure the pulse duration from the ECHO pin duration_us = pulseIn(ECHO_PIN, HIGH); // calculate the distance distance_cm = 0.017 * duration_us; if (distance_cm < DISTANCE_THRESHOLD) servo.write(90); // rotate servo motor to 90 degree else servo.write(0); // rotate servo motor to 0 degree // print the value to Serial Monitor Serial.print("distance: "); Serial.print(distance_cm); Serial.println(" cm"); delay(500); }

Schnelle Schritte

Um mit dem ESP8266 in der Arduino-IDE zu beginnen, befolgen Sie diese Schritte:

  • Schau dir das Tutorial wie man die Umgebung für ESP8266 in der Arduino IDE einrichtet an, falls du ESP8266 zum ersten Mal verwendest.
  • Verbinde die Komponenten wie im Diagramm gezeigt.
  • Schließe das ESP8266-Board mit einem USB-Kabel an deinen Computer an.
  • Öffne die Arduino IDE auf deinem Computer.
  • Wähle das korrekte ESP8266-Board, z. B. NodeMCU 1.0 (ESP-12E Module), und den entsprechenden COM-Port.
  • Schließe ein USB-Kabel an das ESP8266-Board und den PC an.
  • Öffne die Arduino IDE und wähle das passende Board und den entsprechenden Port aus.
  • Kopiere den obigen Code und öffne ihn in der Arduino IDE.
  • Klicke auf die Upload-Schaltfläche in der Arduino IDE, um den Code zu kompilieren und auf den ESP8266 hochzuladen.
  • Bewege deine Hand vor den Sensor.
  • Beobachte die Reaktion des Servomotors.

※ Notiz:

Der obige Code dient Bildungszwecken. Der Ultraschallsensor ist sehr störanfällig gegenüber Rauschen. Wenn Sie ihn in einer realen Anwendung verwenden möchten, ist es notwendig, das Rauschen beim Ultraschallsensor zu filtern. Weitere Informationen dazu finden Sie unter wie man Rauschen beim Ultraschallsensor filtert.

Video Tutorial

Wir erwägen die Erstellung von Video-Tutorials. Wenn Sie Video-Tutorials für wichtig halten, abonnieren Sie bitte unseren YouTube-Kanal , um uns zu motivieren, die Videos zu erstellen.

※ UNSERE NACHRICHTEN

  • Sie können gerne den Link zu diesem Tutorial teilen. Bitte verwenden Sie jedoch unsere Inhalte nicht auf anderen Websites. Wir haben viel Mühe und Zeit in die Erstellung der Inhalte investiert, bitte respektieren Sie unsere Arbeit!