Inhaltsverzeichnis:

Kabelloser PC-Joystick / Radtasten - Gunook
Kabelloser PC-Joystick / Radtasten - Gunook

Video: Kabelloser PC-Joystick / Radtasten - Gunook

Video: Kabelloser PC-Joystick / Radtasten - Gunook
Video: Bester kabelloser Controller PC 2023-Kabellos Gaming-Bestes Gamepad für PC kaufen-Test-Vergleich 2024, Juli
Anonim
Kabelloser PC-Joystick/Radtasten
Kabelloser PC-Joystick/Radtasten

Ich habe in den letzten Jahren eine neue Rennsimulation aufgebaut und mich für ein DIY Direct Drive Lenkrad entschieden. Während dieses Projekt allein mehrere instructables an sich sein könnte, ist dies eine Anleitung, um alle Tasten auf dem Rad drahtlos zu machen.

Wieso den?

  • Das DD-Rad hat unbegrenzte Umdrehungen, daher wäre es ärgerlich, Kabel daran zu führen.
  • Keine Möglichkeit, Kabel wie bei handelsüblichen Rädern über die Radwelle zu führen
  • Ich wollte Räder mit verschiedenen Tastenkonfigurationen einfach austauschen können
  • Weil ich könnte:)

Um das Ziel der drahtlosen Tasten zu erreichen, müssen wir Folgendes berücksichtigen:

  • Leistungsabgabe
  • Kabellose Verbindung
  • Reaktionszeit/Verzögerung
  • Zuverlässigkeit

Die folgenden Komponenten wurden ausgewählt, um diese Kriterien zu erfüllen: Tx - Arduino Nano mit integriertem NRF24-Modul hier oder verwenden Sie einen Generic Nano oder Pro Mini + NRF24 ModuleRx - Arduino Pro Micro / Leonardo / Beetle (Atmega32u4) + NRF24-ModulUSB 'Battery Bank' - Any generische einzelne 18650 Batteriebank sollte funktionieren. Dies dauert ca. 20 Stunden! Vielleicht möchten Sie jedoch überprüfen, ob es gleichzeitig laden und Strom liefern kann. Dies ist praktisch, wenn es flach läuft und Sie gleichzeitig laden und verwenden möchten.

Zusätzlich benötigen Sie die Tasten und einen Netzschalter Ihrer Wahl, etwas Anschlusskabel und möglicherweise einen Schrumpfschlauch.

Dies kann auch in einer "Knopfbox" anstelle eines Rades verwendet werden, aber ich dachte, dass die Nachfrage dafür geringer wäre, da es nicht viel Vorteil bringt, wenn es sich nicht bewegt.

Werkzeuge benötigt:

Lötkolben und LötzinnEine Heißklebepistole ist praktisch, um die Teile zu montieren. Arduino IDE auf Ihrem Computer installiert.

Schritt 1: Die Senderverkabelung

Die Senderverkabelung
Die Senderverkabelung
Die Senderverkabelung
Die Senderverkabelung
Die Senderverkabelung
Die Senderverkabelung

Beginnen Sie damit, so viele Schalter wie Sie benötigen an Ihrem Rad zu montieren und die Position des Arduino zu berücksichtigen. Schließen Sie alle Drähte gemäß dem Diagramm an die Schalter an. Jede Taste wird mit einer Seite mit GND und der anderen mit dem zugehörigen Arduino-Pin verbunden. Der Code ermöglicht 14 Schalter/Tasten, die für die meisten Räder ausreichen sollten.

Wenn Sie den Nano mit dem eingebetteten NRF-Modul verwenden, müssen Sie die zugehörige Verkabelung dafür natürlich nicht hinzufügen, sondern nur die Tasten.

Die Tasten sind in dieser Reihenfolge (1-14):RX, TX, D2, D3, D4, D5, D6, D7, A0, A1, A2, A3, A4, A5

Aber warum nur 14 Tasten? Der Grund dafür ist, dass wir eine ganze Bank von Pins schnell lesen können und nur die Übertragung von 2 Bytes Daten nicht lange dauert - Obwohl dies also geändert werden könnte, um mehr Tasten (über eine Matrix) und / oder analoge Eingänge, das würde die Sache etwas verlangsamen. Matrix-Lesen und analoges Lesen/Umwandeln nehmen Prozessorzeit in Anspruch. Ich brauchte nur 12 Tasten an meinem Rad, also habe ich mich damit entschieden, würde aber in Betracht ziehen, mehr hinzuzufügen.

LeistungFür die Leistung haben Sie zwei Möglichkeiten - Sie können entweder die Batteriebank intakt lassen und sie einfach irgendwie am Rad befestigen. Dies gibt Ihnen den zusätzlichen Bonus, die Stromversorgung vom Arduino trennen zu können, ohne einen eingebauten Schalter und einige Kabel zu haben.

Wenn Sie eine individuellere Lösung bevorzugen, ist es möglicherweise erforderlich, die Batteriebank aufzubrechen und die Interna in Ihrer benutzerdefinierten Konfiguration wiederzuverwenden.

Ich hatte nicht den Platz in meinem Rad, um es intakt zu lassen, also wurde es ausgezogen. Ich entfernte den Standard-USB-Stecker von der Ladeplatine und lötete die +5- und Gnd-Drähte von den USB-Port-Pads über einen Schalter an den Arduino. Dies ist aufgrund der vielen verfügbaren Optionen etwas schwer zu beschreiben…

Die Schaltung wurde dann im Rad montiert, wodurch der Micro-USB-Ladeanschluss freigelegt wurde.

Die Ladeplatine verfügt über eine oder mehrere LEDs, um den Ladestatus anzuzeigen - Es ist praktisch, diese irgendwie sichtbar zu machen oder etwas Plastik zu verwenden, um sie an einen sichtbaren Ort zu "portieren", damit Sie wissen, wann der Ladevorgang abgeschlossen ist.

Was ist das für ein Rad? Für Interessierte ist mein Raddesign von Amstudio - Einige tolle DIY-Rennsimulationsteile-Designs sind zu vernünftigen Preisen bei ihnen erhältlich.

Schritt 2: Der Empfänger

Der Empfänger
Der Empfänger
Der Empfänger
Der Empfänger
Der Empfänger
Der Empfänger

Folgen Sie einfach dem beiliegenden Schaltplan. Wenn Sie keinen Leonardo verwenden, benötigen Sie einen externen 3,3-V-Regler wie den AMS1117. Der Pro Micro Regler kann nicht genug Strom für das NRF24 Modul liefern und der Käfer hat gar keinen.

Ich habe die Anschlüsse zum NRF-Modul für das Pro Micro und den Käfer gleich farbcodiert.

Der Arduino 'Käfer', der an den üblichen Orten ziemlich leicht zu finden ist, aber auch hier muss ein 3,3-V-Regler verwendet werden, da er überhaupt keinen hat. Ich habe das getestet und es funktioniert auch gut. Die Anschlüsse sind gleich

Schritt 3: Programmieren der Geräte

Programmierung der Geräte
Programmierung der Geräte
Programmierung der Geräte
Programmierung der Geräte
Programmierung der Geräte
Programmierung der Geräte

Wenn Sie die Arduino IDE noch nicht installiert haben, gehen Sie zu https://www.arduino.cc und laden Sie die für Ihr Betriebssystem geeignete Version für dieses Beispiel I am on windows herunter.

Nach der Einrichtung benötigen Sie zwei verschiedene Bibliotheken - Die erste ist einfach über Skizze -> Bibliothek einschließen -> Bibliotheken verwalten (oder STRG+UMSCHALT+I)

NRFLite von Dave Parson (Version 2.2.2 ab Veröffentlichung)

Der zweite muss manuell von https://github.com/MHeironimus/ArduinoJoystickLibr installiert werden.

Klicken Sie auf „Klonen oder Herunterladen“und dann auf „ZIP herunterladen“und öffnen Sie die heruntergeladene Datei. Sie müssen dann zu den Ordnern klicken, bis Sie einen 'Joystick'-Ordner sehen - Kopieren Sie diesen in Ihren Arduino-Bibliotheken-Ordner (unter Windows befindet sich dies normalerweise unter Dokumente -> Arduino -> Bibliotheken.

Starten Sie die Arduino-IDE neu

Wenn Sie das Pro Micro für den Empfänger verwenden, müssen Sie dieses Board auch zur IDE. File -> Preferences -> Additional Boards Manager URLs hinzufügen:

Geben Sie ein:

Gehen Sie dann zu Tools -> Boards Manager, suchen Sie Sparkfun und installieren Sie 'Sparkfun AVR Boards'

Jetzt sind wir bereit! Beginnen wir mit dem Sender - Verbinden Sie ihn mit Ihrem PC

Wählen Sie unter Tools -> Board "Arduino Nano" (oder eine beliebige Variante, für die Sie sich entschieden haben). Überprüfen Sie auch den COM-Port im Tools-Menü.

Öffnen Sie die angehängte Wireless_Wheel_Tx-Datei.

Es gibt nur eine Zeile, die Sie in diesem Code möglicherweise ändern möchten, und zwar:

int nrfChannel = 22;

Sie haben bis zu 126 Kanäle, die Sie über das 2,4-GHz-Spektrum verwenden können. Es sollte in Ordnung sein, so zu belassen, wie es ist, aber wenn Sie Probleme mit der Zuverlässigkeit haben, ändern Sie diese Nummer möglicherweise in eine andere Nummer.

Klicken Sie dann einfach auf die Schaltfläche "Hochladen" und warten Sie, bis der Vorgang abgeschlossen ist.

Das gleiche gilt für den Leonardo/Pro Micro/Beetle - Wählen Sie das gewünschte Board aus - Wählen Sie für Leonardo und Beetle das Arduino leonardo Board aus. Wählen Sie das für das Pro Micro aus und wählen Sie auch die Variante / den Prozessor Atmega32u4 (5v, 16Mhz) aus, öffnen Sie die Datei Wireless_Wheel_Rx, ändern Sie die nrfChannel-Einstellung (wenn Sie sie am Tx geändert haben) und programmieren Sie weg.

Sobald das Gerät beim Programmieren neu gestartet wird, sollte Ihr Computer ein Joystick-Gerät erkennen. Wenn Sie auch Ihren Sender einschalten, sollten Sie die Tasten drücken können und im Gerätestatus angezeigt werden!

Eine coole Nebensache ist, dass Sie am Leonardo und Pro Micro eine Statusanzeige erhalten - Die USB-TX-LED leuchtet auf, wenn sie mit den Tasten verbunden ist. Dies ist beim Käfer jedoch nicht vorhanden.

AKTUALISIERT 13.02.2021

Ich habe dem instructable hier 2 zusätzliche Dateien (Tx und Rx) für eine Version mit 4 analogen Eingängen sowie einer 3X8-Tastenmatrix hinzugefügt. Meist ungetestet, kann zu Verzögerungen führen. Bitte versuchen Sie es und kommentieren Sie.

Schritt 4: Verbesserungen

Verbesserungen
Verbesserungen

Power LEDNachdem ich diese Lösung eine Weile verwendet hatte, hatte ich die Angewohnheit, das Rad versehentlich eingeschaltet zu lassen. Um dem entgegenzuwirken, habe ich vorne eine LED hinzugefügt, damit ich sehen konnte, dass das Rad eingeschaltet war. Dies ist nur ein einfacher 3 mm-LED-Lauf von den 5 V auf dem Arduino über einen Widerstand. Die Oberseite ist abgeschliffen, um das Licht etwas zu streuen und Blendungen zu vermeiden.

BatteriestandsmesserIch habe einige Batteriestandsmesser von BG oder Ali gekauft, aber als sie ankamen, waren sie viel größer als ich erwartet hatte, aber das möchte ich noch hinzufügen. Dafür gibt es viele Möglichkeiten, aber da der Akku so lange hält, neige ich dazu, ihn nach ein paar Stunden Nutzung einfach wieder aufzuladen.

Zusätzliche Tasten/Encoder/analoge Eingänge Denke immer noch darüber nach. Für mich ist es nicht so wichtig für die Rennen, die ich betreibe, aber für Dinge wie die F1 ist es wahrscheinlich nützlicher. Ich werde zwei Versionen in Betracht ziehen oder diese hinzufügen, wenn genügend Nachfrage besteht, aber dies kann sich auf die Reaktionszeit der Schaltflächen auswirken.