ESP8266 - Joystick - Servomotor
Ein Joystick ist mit zwei Potentiometern ausgestattet, die zueinander senkrecht stehen (bekannt als X-Achse und Y-Achse). Diese Potentiometer geben analoge Werte (X-Wert und Y-Wert) an den Pins VRX und VRY aus. Wir verwenden diese analogen Werte, um zwei Servomotoren unabhängig voneinander zu steuern: Der X-Wert steuert Servomotor Nr. 1 und der Y-Wert steuert Servomotor Nr. 2. Bei Verwendung eines Pan-Tilt-Kits erzeugt die Kombination der beiden Servomotoren eine dreidimensionale Bewegung.
Es gibt zwei Anwendungsfälle:
- Anwendungsfall 1: Die Servomotoren drehen sich entsprechend der Bewegung des Joystick-Daumensticks:
- Die Winkel der Servomotoren stehen im Verhältnis zu den X- und Y-Werten des Joysticks.
- Wenn der Joystick-Daumenstick losgelassen wird, kehren alle Werte zu ihren Mittelpunktwerten zurück und die Servomotoren gehen automatisch in die Mittelstellung.
- Anwendungsfall 2: Verwenden Sie den Joystick, um Servomotoren zu steuern (Auf-/Ab-/Links-/Rechtsbefehle)
- Wenn der Joystick-Daumenstick nach links gedrückt wird, dreht sich der Servomotor Nr. 1 im Uhrzeigersinn.
- Wenn der Joystick-Daumenstick nach rechts gedrückt wird, dreht sich der Servomotor Nr. 1 gegen den Uhrzeigersinn.
- Wenn der Joystick-Daumenstick nach oben gedrückt wird, dreht sich der Servomotor Nr. 2 im Uhrzeigersinn.
- Wenn der Joystick-Daumenstick nach unten gedrückt wird, dreht sich der Servomotor Nr. 2 gegen den Uhrzeigersinn.
- Wenn der Joystick-Daumenstick losgelassen wird, kehren die Servomotoren nicht in die Mittelstellung zurück.
- Wenn der Joystick gedrückt wird (Druckknopf), kehren die Servomotoren in die Mittelstellung zurück.
- Analog-Digital-Modul:
- Sie können ein externes Analog-Digital-Wandler-Modul (ADC) verwenden, z. B. das beliebte ADS1115 ADC-Modul.
- Dieses Modul ermöglicht es Ihnen, mehrere analoge Geräte anzuschließen und die verfügbaren analogen Eingangspins zu erweitern.
- Multiplexing-Lösung:
- Eine weitere Option ist die Implementierung einer Multiplexing-Lösung. Dabei wird zwischen dem Auslesen der X- und Y-Achsen des Joysticks mit dem einzigen verfügbaren analogen Eingangspin gewechselt.
- Im Wesentlichen wechseln Sie zwischen X- und Y-Messungen hin und her und erreichen die gewünschte Funktionalität durch Zeitmultiplexing.
Erforderliche Hardware
Oder Sie können die folgenden Kits kaufen:
1 | × | DIYables Sensor-Kit (30 Sensoren/Displays) | |
1 | × | DIYables Sensor-Kit (18 Sensoren/Displays) |
Über Joystick und Servomotor
Wenn Sie mit Joysticks und Servomotoren (einschließlich Pinbelegung, Funktionsweise, Programmierung usw.) nicht vertraut sind, können Ihnen die folgenden Tutorials helfen:
Da der ESP8266 nur einen analogen Eingangspin hat und der Joystick zwei benötigt, gibt es zwei Möglichkeiten, dies zu lösen:
Allerdings können beide Lösungen etwas kostspielig und kompliziert sein. Für einen einfacheren Ansatz empfehlen wir dringend die Verwendung des ESP32 statt des ESP8266. Werfen Sie einen Blick auf das Tutorial ESP8266 - Joystick für eine benutzerfreundlichere Implementierung.