Ich mache oft Roboter oder Spielzeug basierend auf Arduino oder ähnliche Boards. Als Option zur Steuerung solcher Geräte verwende ich den Infrarotbereich. In Bezug auf den Empfänger gibt es keine Probleme, es ist leicht zu finden und anzuschließen, aber im Fall der Fernbedienung ist es schwieriger.
Und hier sind zwei Möglichkeiten:
1. Verwenden Sie die Fernbedienung des Fernsehgeräts oder eines anderen Geräts. Dann gibt es viel Aufhebens, Probleme und es braucht viel Zeit. Zuerst müssen Sie die Tastencodes von der Fernbedienung lesen und dann in Ihre Firmware schreiben. Ein weiteres Problem besteht darin, dass die Fernbedienung ein Signal sendet, wenn die Tasten einmal gedrückt werden, es nicht wiederholt (wenn sich das Gerät bewegt oder weit entfernt ist, liest der Empfänger es möglicherweise nicht gleichzeitig) und nichts sendet, wenn die Taste losgelassen wird, was sehr unpraktisch ist, wenn es ist notwendig, bewegliche Maschinen zu steuern. Nun, ich möchte nicht gleichzeitig den Fernseher und die Maschine steuern.
2. Machen Sie Ihre eigene Fernbedienung.
Dies ist der zweite Weg, den ich gehen werde. Für die Grundlagen habe ich den alten Joystick von der Sega-Konsole verwendet. Dort gibt es alles was Sie brauchen. Vier Pfeile (praktisch zur Steuerung von Autos) und 8 Tasten.
Also was wir brauchen:
- Joystick von Sega
- Arduino Pro Mini 3.3V 8MHz
- USB-TTL
- 2 Ni-Mn-Batterien 1,2 V 1000 mA
- IR-LED
- Rote LED
- Blaue LED
- Widerstand 2x75Om, 2x5Om, 1x2Om
Draht
- PLSx5-Anschluss "Mutter"
- Heißkleber
- Drähte
- Batteriefach 4xAAA
- mehrfarbige Drähte
- Lötkolben, Lötmittel, Kolophonium
- gerade Arme
Schritt 1 Löten
Wir zerlegen unseren Joystick, entfernen die Platine und löten alle Drähte daraus. Als nächstes müssen Sie ein Schreibmesser oder nur ein scharfes Messer nehmen und alle Spuren vom Controller auf dem Board abschneiden, damit es uns nicht stört und nicht mit Arduino in Konflikt steht. In der Nähe jedes Knopfes befindet sich ein kleiner Kreis mit einer bloßen Spur. Nachdem Sie einen Lötkolben genommen haben, müssen Sie an jedem Becher entlang des Drahtes anlöten und einen gemeinsamen Lötdraht und einen Draht (gemeinsam, schwarz) finden. Das Zurückwickeln der Drähte sollte ungefähr so aussehen:
Auf der Rückseite kleben wir unser Arduino auf ein doppelseitiges Klebeband. Ein kleiner Exkurs über die Wahl von Arduino. Grundsätzlich können Sie jedes Board verwenden. Hauptsache, es passt in den Joystick.
Löten Sie unsere Motive nach folgendem Schema
Joystick Arduino
Pfeil nach oben 2
Abwärtspfeil 4
Linker Pfeil 5
Pfeil nach rechts 6
Taste A 8
B-Taste 10
C-Taste 7
X-Taste 12
Y-Taste 11
Z-Taste 9
Start 14 Taste (A0)
RST-Taste zurücksetzen
IR LED + 3
Generisches GND
Blaue LED
durch einen 75 Ohm Rohwiderstand
Rote LED
durch den Widerstand 75 Om + 5 Anschlüsse
Lassen Sie mich erklären: Ich habe alle Knöpfe gelötet, da es bequem per Draht war. Wenn es verwechselt wird, müssen Sie es nur beim Nähen befestigen. Der Haupt-IR-Pluskontakt muss auf 3 gelötet werden! Denken Sie daran, minus IR an GND zu löten. Die Reset-Taste wird benötigt, um das Arduino mit Firmware neu zu starten.
Schritt 2 Fallmodus
Es ist notwendig, über eine Schlussfolgerung der Drähte für den Anschluss von USB-TTL nachzudenken. Ich habe den Stecker an 5 PLS "Mutter" verwendet. Er machte einen Schlitz geeigneter Größe auf der rechten Seite des Joysticks, steckte den Stecker ein und füllte alles mit Heißkleber. + 5V von diesem Anschluss für den Moment, geben Sie einfach den Draht aus. TX zu RX Arduino, RX zu TX. + 3,3 V bis 3,3 Arduino, GND bis GND Arduino. Er machte einen geeigneten Schlitz in der rechten Seite des Joysticks.
Um die Einbeziehung der Fernbedienung und der Batterieladung anzuzeigen, müssen Sie zwei Löcher mit einem Durchmesser von 5 mm vor dem Joystick bohren und dort die LEDs einsetzen. Und auch ein Loch für den Schalter schneiden.
Füllen Sie innen die Dioden und Schalter mit Heißkleber.
Schritt 3 Ernährung
Es gibt also zwei Möglichkeiten für die Ernährung. Ich habe beides getan, aber Sie können das passende auswählen und eines verwenden.
Die erste batteriebetriebene. Löten Sie dazu zwei NI-MN-Batterien in Reihe, über den Schalter an die Profis, löten Sie die nächste 5Om + 5Om + 2Om + Diode und nacheinander an +5 unseres Steckers. Dies dient zum Laden über USB-TTL. Wir wickeln die resultierende Spitze von der Diode und den Widerständen mit Klebeband um und legen die obere rechte Ecke. Löten Sie parallel dazu unsere rote LED durch einen 75-Om-Widerstand, um eine Ladung anzuzeigen. Die zweite Position des Schalters ist das Arbeitskabel von diesem zum RAW Arduino und wieder parallel, diesmal eine blaue LED, durch einen 75-Om-Widerstand. Minus direkt zum GND Arduino.
Die Batterien befinden sich oben am Joystick und müssen geklebt werden
Als nächstes folgen die Manipulationen mit dem Arduino. Tatsache ist, dass die Spannung von 2,4 Volt klein ist und um unseren Controller zu starten, müssen Sie die Sicherungsbits des Arduino austauschen. Detaillierte Anweisungen zur Firmware des Bootloaders und der Sicherungsbits gehen über den Rahmen dieses Themas hinaus, und das Internet ist voll von Schemata und Optionen. Das Hauptergebnis hier ist das Deaktivieren der Arduino-Leistungssteuerung. Hier ist das Pinbelegungsdiagramm des ICSP Arduino Pro Mini.
Die zweite Option ist einfacher und erfordert keine zusätzlichen Manipulationen mit Arduino. Löten Sie das Pluskabel von unserem Batteriefach abzüglich des GND Arduino an den Schalter. Wir führen die Drähte heraus, indem wir einen kleinen Schnitt in das Gehäuse machen und das Fach mit einem doppelseitigen Klebeband auf die hintere Abdeckung des Joysticks kleben. Es wird so:
Es sieht nicht sehr schön aus, ist aber schneller und hat weniger Probleme.
Schritt 4 Montage
Also haben wir folgende Konstruktion bekommen:
Bei der Montage müssen die Drähte so verlegt werden, dass sie nicht von den Innenteilen des Joysticks gebissen werden. Es ist mir nicht sofort gelungen, aber nach fünf Versuchen wird alles klappen. Hier ist meine Fernbedienung.
Schritt 5 Firmware
Unsere Fernbedienung blinkt über einen an USB-TTL angeschlossenen Anschluss, der Ladevorgang erfolgt ebenfalls über diesen. Vergessen Sie nicht, Reset zu drücken, wenn Sie den Kratzer einfüllen.
Beim Schreiben der Firmware habe ich für jeden Befehl (Schaltfläche) einen zufälligen Satz von Zahlen (Codes) notiert. Ich verwende diese Codes beim Schreiben der Firmware eines verwalteten Geräts. Codes werden dreimal gesendet, wodurch die Möglichkeit ausgeschlossen wird, einen Befehl zu überspringen. Wenn Sie die Schaltfläche loslassen, wird auch ein Code gesendet, mit dem das verwaltete Gerät gestoppt wird.