Inhaltsverzeichnis:
- Schritt 1: Komponenten, die für die Einrichtung des Knopfes zum Vibrationsmotor benötigt werden
- Schritt 2: Schaltpläne für die Einrichtung des Knopfes zum Vibrationsmotor
- Schritt 3: Die Einrichtung des Knopfes zum Vibrationsmotor-Setup
- Schritt 4: Der Code
- Schritt 5: Video der Einrichtung des Knopfes zum Vibrationsmotor
- Schritt 6: Prototyp des ausziehbaren Handschuhs
- Schritt 7: Code für mehrere Tasten mit einzigartiger Vibrationsleistung
Video: Eine Anwendung einer ausziehbaren Taste mit Vibrationsfeedback - Gunook
2024 Autor: John Day | [email protected]. Zuletzt bearbeitet: 2024-01-30 07:17
In diesem Tutorial zeigen wir Ihnen zunächst, wie Sie mit einem Arduino Uno einen Vibrationsmotor über eine erweiterte Taste steuern. Die meisten Tutorials zu Drucktasten beinhalten die Taste auf dem physischen Steckbrett, während in diesem Tutorial die Taste geändert wurde, um stattdessen über Jumperkabel mit dem Steckbrett verbunden zu werden. Mit dieser Taste können Sie die Stärke und das Vibrationsmuster des Motors steuern. Anschließend zeigen wir einen möglichen Prototyp einer tragbaren Technologie, die dieses Setup nutzt. Dieses Wearable ist ein Handschuh mit ausziehbaren Fingerspitzen mit Knöpfen am Ende, die so programmiert sind, dass sie dem Träger ein einzigartiges Vibrationsfeedback basierend auf dem jeweiligen gedrückten Knopf geben.
Schritt 1: Komponenten, die für die Einrichtung des Knopfes zum Vibrationsmotor benötigt werden
- Arduino Uno
- Steckbrett
- Münzvibrator Vibrationsmotor
- Grove-Taste
- Stecker-zu-Stecker-Überbrückungsdrähte (x10)
- Überbrückungsdraht 4 Pin
- Haptischer Motortreiber
- Stecker-zu-Buchse Kantenverbinder
- Lötkolben
Schritt 2: Schaltpläne für die Einrichtung des Knopfes zum Vibrationsmotor
Das obige Diagramm wurde mit Fritzing.org erstellt.
Schritt 3: Die Einrichtung des Knopfes zum Vibrationsmotor-Setup
Schritt 1: Löten Sie den Randstecker an den Vibrationsmotortreiber. Löten Sie die Drähte des Münzvibrators in die Anschlüsse des Vibrationsmotortreibers.
Schritt 2: Verbinden Sie das 4-polige Überbrückungskabel mit dem Tastenausbruch.
Schritt 3: Verbinden Sie mit einem der Überbrückungsdrähte den GRD-Pin des Arduino mit einer Reihe auf dem Steckbrett.
Schritt 4: Verbinden Sie mit einem anderen Überbrückungsdraht den Volt 3.3-Pin des Arduino mit einer anderen Reihe auf dem Steckbrett.
Schritt 5: Jetzt verbinden wir den Vibrationsmotortreiber mit dem Arduino. Verbinden Sie mit einem dritten Überbrückungskabel den GND-Pin des Vibrationsmotortreibers mit der gleichen Reihe auf dem Steckbrett wie den GRD-Pin des Arduino. Machen Sie dasselbe mit einem anderen Draht für VCC (Volt) am Vibrationsmotortreiber zur Voltreihe des Steckbretts.
Schritt 6: Verwenden Sie ein weiteres Kabel, um den SDA-Pin des Vibrationsmotortreibers mit dem SDA-Pin direkt am Arduino zu verbinden. Wiederholen Sie dasselbe mit den SCL-Pins an beiden. Befolgen Sie alternativ einen ähnlichen Ansatz wie in Schritt 5 und verbinden Sie die SDA- und SCL-Pins des Arduino über Steckbrücken mit ihren eigenen Reihen auf dem Steckbrett. Führen Sie dann einen Draht aus der Reihe, in der der SDA-Pin auf dem Steckbrett mit dem SDA-Pin des Motortreibers verbunden ist. Machen Sie dasselbe für die SCL-Reihe auf dem Steckbrett zum SCL-Pin am Motortreiber.
Schritt 7: Jetzt schließen wir ab, indem wir die Taste mit dem Vibrationsmotortreiber und Arduino verbinden. Verwenden Sie ein anderes Überbrückungskabel, um das GRD von dem 4-poligen Überbrückungskabel, das mit dem Knopfausbruch verbunden ist, mit der gleichen Reihe wie die anderen GRD-Drähte auf dem Steckbrett zu verbinden. Machen Sie dasselbe mit Volt noch einmal (VCC).
Schritt 8: Verbinden Sie einen letzten Schreibvorgang von SIG auf dem Button-Breakout mit einem Pin auf dem Arduino (für die Zwecke unseres Codes haben wir Pin 7 verwendet).
Schritt 9: Schließen Sie das Arduino an und laden Sie den Code hoch und sehen Sie zu, wie es funktioniert!
Schritt 4: Der Code
Knopf-Vibrations-Motor.c
/* Code angepasst von https://learn.sparkfun.com/tutorials/haptic-motor-driver-hook-up-guide?_ga=2.227031901.1514248658.1513372975-1149214600.1512613196 */ |
#enthalten |
#enthalten |
SFE_HMD_DRV2605L HMD; // Erstellen Sie ein haptisches Motortreiberobjekt |
int-Taste = 7; // Wählen Sie den Eingangspin 7 für die Drucktaste |
int button_val = 0; // Variable zum Lesen des Pin-Status |
voidsetup() |
{ |
/* Haptisches Motortreiberobjekt initialisieren */ |
HMD.begin(); |
Serial.begin (9600); |
HMD. Modus(0); // Interner Trigger-Eingangsmodus -- Muss die GO ()-Funktion verwenden, um die Wiedergabe auszulösen. |
HMD. MotorSelect(0x36); // ERM-Motor, 4x Bremsen, mittlere Schleifenverstärkung, 1.365x Gegen-EMK-Verstärkung |
HMD. Bibliothek(2); //1-5 & 7 für ERM-Motoren, 6 für LRA-Motoren |
} |
Leerschleife() |
{ |
/* Vibrationsmotor starten */ |
HMD.go(); |
button_val = digitalRead (Taste); |
if(button_val== HIGH) { |
/* Dies wird ausgegeben, um zu protokollieren, dass die Schaltfläche gedrückt wurde, zum Debuggen verwenden*/ |
Serial.println ("Taste gedrückt."); |
/* Die Wellenformbibliothek enthält 0-122 verschiedene Wellentypen */ |
HMD. Wellenform(0, 69);} |
anders{ |
/* Wenn die Taste nicht gedrückt wird, stoppen Sie den Vibrationsmotor */ |
HMD.stop(); |
} |
} |
rawButton-Vibration-Motor.c anzeigen, gehostet mit ❤ von GitHub
Schritt 5: Video der Einrichtung des Knopfes zum Vibrationsmotor
Schritt 6: Prototyp des ausziehbaren Handschuhs
Eine mögliche Anwendung des Knopfes am Vibrationsmotor ist der oben gezeigte Handschuh. Wir haben billig zugängliche Materialien wie Spritzen modifiziert, um ausziehbare "Fingerspitzen" zu machen. Wir haben die Groove-Knöpfe mit Klettverschluss am Ende der modifizierten Spritzen befestigt, Löcher in die Fingerkuppen eines Handschuhs geschnitten und jede Spritze durch die Löcher gesteckt. Die 4-poligen Überbrückungsdrähte der Tasten werden durch die Spritzen gefädelt und sind lang genug, um die Spritzen auf ihre volle Länge ausfahren zu können. Das Arduino und das Steckbrett werden per Klettverschluss an der Oberseite des Handschuhs befestigt, wodurch die Drähte der Tasten einfach durch einen kleinen Schlitz an der Unterseite jeder Fingerspitze verbunden werden können. Der Motortreiber wird durch die Öffnung an der Unterseite des Handschuhs befestigt, um den Vibrationsmotor an der Innenseite des Handschuhs zu kleben. Wenn der Träger den Handschuh trägt, sitzt der Vibrationsmotor an der Unterseite des Handgelenks des Trägers. Wenn der Träger eine Oberfläche berührt und einen der Knöpfe drückt, wird durch den Motor eine einzigartige Feedback-Vibration abgegeben.
Der Denkprozess hinter einem solchen Handschuh wäre, jemandem, der ihn trägt, zu erlauben, Dinge zu "berühren", die über die Reichweite seiner normalen Fingerspitzen hinausgehen, und eine Rückmeldung zu erhalten, dass er diese Oberflächen berührt. Die Vibrationsrückmeldung ändert sich abhängig davon, welcher Finger die Oberfläche berührt, so dass es dem Benutzer möglich ist, anhand des Vibrationsmusters zu erkennen, welcher Finger die Oberfläche berührt.
Es gibt viele Möglichkeiten, den Prototyp weiterzuentwickeln, z. B. die Finger dehnbarer zu machen oder das Feedback basierend auf der Art der berührten Oberfläche zu ändern. Idealerweise würden ausziehbare Finger per 3D-Druck erstellt, um bessere Teleskopiermöglichkeiten zu bieten. Anstelle der Tasten könnte ein Temperatursensor verwendet werden, um eine Rückmeldung darüber zu ermöglichen, wie heiß die Oberfläche ist, die der Benutzer berührt, oder ein Feuchtigkeitssensor für ähnliche Zwecke. Eine Möglichkeit zu erfassen, wie weit der "Finger" ausgestreckt wurde, könnte implementiert werden, damit der Benutzer weiß, wie weit das Objekt, das er berührt, entfernt ist. Dies sind nur einige mögliche Optionen, um diesen Prototypen weiterzuentwickeln.
Dieser Handschuh kann aus gängigen Materialien hergestellt werden, um Ihre Sinne zu erweitern und Feedback zu geben, das der Benutzer fühlen und verstehen kann.
Schritt 7: Code für mehrere Tasten mit einzigartiger Vibrationsleistung
mutliple_buttons_to_vibmotor.ino
/* Code von SparkFun angepasst https://learn.sparkfun.com/tutorials/haptic-motor-driver-hook-up-guide */ |
#enthalten |
#enthalten |
SFE_HMD_DRV2605L HMD; // Erstellen Sie ein haptisches Motortreiberobjekt |
int button_middle = 7; |
int button_index = 5; // wähle den Eingangspin für die Drucktaste |
int button_ring = 9; |
int button_pinky = 3; |
voidsetup() |
{ |
HMD.begin(); |
Serial.begin (9600); |
HMD. Modus(0); // Interner Trigger-Eingangsmodus -- Muss die GO ()-Funktion verwenden, um die Wiedergabe auszulösen. |
HMD. MotorSelect(0x36); // ERM-Motor, 4x Bremsen, mittlere Schleifenverstärkung, 1.365x Gegen-EMK-Verstärkung |
HMD. Bibliothek(2); //1-5 & 7 für ERM-Motoren, 6 für LRA-Motoren |
} |
Leerschleife() |
{ |
HMD.go(); // Vibrationsmotor starten |
/* Überprüfen Sie, welche Taste gedrückt wird und geben Sie die Wellenform 0-122 aus */ |
if(digitalRead(button_middle)== HIGH) { |
Serial.println ("Taste gedrückt."); |
HMD. Wellenform(0, 112);} |
elseif (digitalRead (button_index) == HIGH) { |
HMD. Wellenform(0, 20); |
} |
elseif (digitalRead (button_ring) == HIGH) { |
HMD. Wellenform(0, 80); |
} |
elseif (digitalRead (button_pinky) == HIGH) { |
HMD. Wellenform(0, 100); |
} |
/* Wenn keine Taste gedrückt wird, dann stoppen */ |
anders{ |
HMD.stop(); |
} |
} |
rawmutliple_buttons_to_vibmotor.ino anzeigen, gehostet mit ❤ von GitHub
Empfohlen:
So erstellen Sie eine Android-App mit Android Studio: 8 Schritte (mit Bildern)
So erstellen Sie eine Android-App mit Android Studio: In diesem Tutorial lernen Sie die Grundlagen zum Erstellen einer Android-App mit der Android Studio-Entwicklungsumgebung. Da Android-Geräte immer häufiger werden, wird die Nachfrage nach neuen Apps nur zunehmen. Android Studio ist ein einfach zu bedienendes (ein
Iterator (Python-GUI-Anwendung): 5 Schritte
Iterator (Python GUI-Anwendung): Hallo Leute, ich bin zurück mit einem anderen tollen instructable. Dieses Mal habe ich Python gelernt, und ich dachte, nach dem Erlernen einer Programmiersprache ist es besser, Software zu entwickeln. Also kam mir die Idee, warum nicht eine Software erstellen, die bei der mühsamen p
SCARA-Roboter: Lernen über Vorwärts- und inverse Kinematik !!! (Plot Twist Erfahren Sie, wie Sie mit PROCESSING eine Echtzeitschnittstelle in ARDUINO erstellen !!!!): 5 Schritte (mit Bildern)
SCARA-Roboter: Lernen über Vorwärts- und inverse Kinematik !!! (Plot Twist Learn How to Make a Real Time Interface in ARDUINO Using PROCESSING !!!!): Ein SCARA-Roboter ist eine sehr beliebte Maschine in der Industriewelt. Der Name steht sowohl für Selective Compliant Assembly Robot Arm als auch für Selective Compliant Articulated Robot Arm. Es ist im Grunde ein Roboter mit drei Freiheitsgraden, da er die ersten beiden Displ
So verbinden Sie die Android-Anwendung mit AWS IOT und verstehen die Spracherkennungs-API: 3 Schritte
So verbinden Sie die Android-Anwendung mit AWS IOT und verstehen die Spracherkennungs-API: In diesem Tutorial erfahren Sie, wie Sie die Android-Anwendung mit dem AWS IOT-Server verbinden und die Spracherkennungs-API verstehen, die eine Kaffeemaschine steuert. Die Anwendung steuert die Kaffeemaschine über Alexa Sprachdienst, die c
Eine USB-stromgesteuerte Steckerleiste. Mit Isolierung.: 4 Schritte (mit Bildern)
Eine USB-stromgesteuerte Steckerleiste. Mit Isolation.: Der springende Punkt dieses Instructable war es, mir zu ermöglichen, alle Zubehörteile für meinen Computer einzuschalten, ohne darüber nachzudenken. Und dann nicht all die kleinen Power-Vampir-Wandwarzen mit Strom versorgen, wenn ich den Computer nicht benutze. Die Idee ist einfach, Sie p