Arduino Nano ESP32 Web-Schieberegler mit DIYables ESP32 WebApps Bibliothek
Übersicht
Dieses Tutorial behandelt die DIYablesWebSliderPage-Klasse aus der DIYables ESP32 WebApps Bibliothek. Die Seite zeigt zwei unabhängige Schieberegler im Browser mit jeweils einem Bereich von 0 bis 255. Der Arduino Nano ESP32 empfängt Schiebereglerwerte über WebSocket durch einen Callback. Die Werte können direkt mit analogWrite() für PWM-basierte Steuerung von LEDs, Motoren oder beliebigen 8-Bit-Ausgängen verwendet werden.

Was dieses Tutorial abdeckt
- Empfang von Schiebereglerwerten in einem Sketch-Callback
- Anwendung von Schieberegler 1 und Schieberegler 2 Werten auf analogWrite()-Ausgänge
- Bereitstellung der aktuellen Schiebereglerposition für neu verbundene Browser
- Festlegung von Standard-Ausgangsschieberegelpositionen
Erforderliche Hardware
Oder Sie können die folgenden Kits kaufen:
| 1 | × | DIYables Sensor-Kit (18 Sensoren/Displays) |
Schritte
Folgen Sie diesen Anweisungen Schritt für Schritt:
- Wenn Sie den Arduino Nano ESP32 zum ersten Mal verwenden, lesen Sie das Tutorial zum Einrichten der Arduino Nano ESP32 Entwicklungsumgebung.
- Verbinden Sie das Arduino Nano ESP32 Board mit Ihrem Computer über ein USB-Kabel.
- Starten Sie die Arduino IDE auf Ihrem Computer.
- Wählen Sie das entsprechende Board (z. B. Arduino Nano ESP32) und den COM-Port.
- Navigieren Sie zum Symbol Bibliotheken in der linken Leiste der Arduino IDE.
- Suchen Sie nach "DIYables ESP32 WebApps", dann finden Sie die DIYables ESP32 WebApps Bibliothek von DIYables
- Klicken Sie auf die Schaltfläche Installieren, um die Bibliothek zu installieren.
- Search for DIYables ESP32 WebApps created by DIYables and click the Install button.
- Sie werden aufgefordert, einige andere Bibliotheksabhängigkeiten zu installieren
- Klicken Sie auf die Schaltfläche Alles installieren, um alle Bibliotheksabhängigkeiten zu installieren.
- In der Arduino IDE gehen Sie zu Datei Beispiele DIYables ESP32 WebApps WebSlider Beispiel, oder kopieren Sie den obigen Code und fügen Sie ihn in den Editor der Arduino IDE ein
- Aktualisieren Sie die WiFi-Anmeldedaten im Sketch:
- Klicken Sie auf die Schaltfläche Hochladen in der Arduino IDE, um den Code auf den Arduino Nano ESP32 hochzuladen
- Öffnen Sie den Serial Monitor
- Die Serial Monitor Ausgabe sollte wie folgt aussehen:
- Wenn nichts angezeigt wird, drücken Sie die Reset-Taste auf dem Board.
- Geben Sie die IP-Adresse aus dem Serial Monitor in einen Browser im selben Netzwerk ein.
- Beispiel: http://192.168.0.2
- Die Startseite zeigt eine Karte für die Schieberegler-Anwendung:

- Wählen Sie die Web-Schieberegler-Karte, um die Seite zur Schiebereglersteuerung zu öffnen:

- Die Seite ist auch direkt unter http://192.168.0.2/web-slider erreichbar.
- Verschieben Sie die Schieberegler und beobachten Sie die im Serial Monitor ausgegebenen Werte.
Standard-Schiebereglerposition
Verfolgen Sie die aktuellen Schieberegelpositionen in Zustandsvariablen und legen Sie Standard fest, bevor Sie Callbacks registrieren:
Callbacks
Empfangen von Schieberegleränderungen
Wird jedes Mal aufgerufen, wenn der Benutzer einen der Schieberegler bewegt:
Bereitstellung von Werten für den Browser
Wird aufgerufen, wenn ein Browser eine Verbindung herstellt und die aktuellen Positionen anfordert:
Typische Anwendungsfälle
LED-Helligkeit: Verbinden Sie Schieberegler 1 mit einem PWM-fähigen Pin mit einer LED. Der Bereich 0–255 entspricht direkt 0–100% Helligkeit über analogWrite().
Motorgeschwindigkeit: Senden Sie Schiebereglerwerte an die Geschwindigkeitssteueringabe eines Motortreibers. Skalieren Sie den erforderlichen Bereich innerhalb des Callbacks.
Dual-Kanal-Steuerung: Schieberegler 1 und Schieberegler 2 sind vollständig unabhängig. Verwenden Sie einen für Geschwindigkeit und einen für Richtung oder einen pro Motor in einem Dual-Drive-System.
Fehlerbehebung
Schiebereglerwerte nicht empfangen
- Stellen Sie sicher, dass onSliderValueFromWeb vor webAppsServer.begin() registriert ist
- Überprüfen Sie den Serial Monitor auf eingehende Werte
- Überprüfen Sie, ob der Browser die WebSocket-Verbindung als aktiv anzeigt
Browser-Schieberegler setzen sich bei Wiederverbindung zurück
- Implementieren Sie onSliderValueToWeb und rufen Sie sendToWebSlider() darin auf, damit der Browser beim Verbinden die letzten Positionen wiederherstellt
Keine PWM-Ausgabe
- Bestätigen Sie, dass der Pin analogWrite() auf Arduino Nano ESP32 unterstützt
- Überprüfen Sie, dass pinMode(pin, OUTPUT) vor analogWrite() gesetzt ist