Inhaltsverzeichnis:
- Schritt 1: Löten Sie die Header an
- Schritt 2: Verbinden Sie die Boards
- Schritt 3: Installieren Sie die erforderliche Software
- Schritt 4: Finden Sie den richtigen seriellen Port
- Schritt 5: Flashen Sie die Firmware
- Schritt 6: Bestätigen Sie, dass alles richtig installiert wurde
- Schritt 7: Befestigen Sie die EMG-Elektroden
- Schritt 8: Spielen Sie Flappy Bird 2.0 (diesmal ernsthaft)
- Schritt 9: Viel Spaß
Video: Muskelbetriebener Flappy Bird - Gunook
2024 Autor: John Day | [email protected]. Zuletzt bearbeitet: 2024-01-30 07:15
Sie erinnern sich vielleicht, als Flappy Bird die Welt im Sturm eroberte und schließlich so beliebt wurde, dass der Schöpfer es aus den App-Stores entfernte, um unerwünschte Werbung zu vermeiden. Das ist Flappy Bird, wie Sie es noch nie zuvor gesehen haben; Durch die Kombination einiger handelsüblicher Komponenten können Sie den namensgebenden Flappy Bird mit der Kraft der Elektromyographie (EMG) direkt von Ihren Muskeln aus steuern.
Wenn Sie daran interessiert sind, mit EMG zu flattern, treten Sie bitte unserem Discord und unserem Forum bei. Wir freuen uns, von Ihnen zu hören und sind immer für Sie da, wenn Sie auf Probleme stoßen.
Lieferungen:
Hier ist alles, was Sie brauchen:
- 1 Sparkfun nrf52840 Breakout-Board mini
- 1 MyoWare
- ~ 3 Fuß Draht, ein paar Farben zu haben hilft immer
- 1 Abisolierzange
- 1 Steckbrett
- 1 Digitalmultimeter
- 1 Packung Gelelektroden
Der nächste Punkt ist optional. Die MyoWare warnt davor, direkt über eine Steckdose mit Strom versorgt zu werden, daher haben Sie zwei Möglichkeiten: Erstens können Sie das Spiel auf einem Laptop ausführen und das Ladegerät trennen oder Sie können es mit einem Akku betreiben. Der Akkuanschluss des nrf52840 ist nach hinten verdrahtet, sodass Sie auch die Pole Ihres Akkus umlöten müssen, was schwierig sein kann, wenn Sie nicht viel Erfahrung mit dem Löten haben.
Schritt 1: Löten Sie die Header an
Lassen Sie uns zuerst diese Header anhängen. Auch wenn wir nicht alle Pins auf der Breakout-Platine nrf52840 verwenden, ist es immer noch am einfachsten, den Header in jeden Pin einzulöten. Sehen Sie sich die Bilder an, wenn die Beschreibung nicht klar genug ist, was wohin gehört.
Befestigen Sie auf einer Seite der Platine einen Header von VIN bis zu Pin 2 und auf der anderen Seite einen 2-Pin-Header an 17 und 15 und einen weiteren Header von Pin 19 bis 10.
Als nächstes möchten wir Ihrer MyoWare einen Header hinzufügen. Setzen Sie einen 3-poligen Header auf die +, - und Sig-Pins.
Bevor Sie Ihren Lötkolben ausschalten, ist es eine gute Idee, alle gelöteten Stifte, die so aussehen, als ob sie zu nahe beieinander liegen, noch einmal zu überprüfen (sowie Masse und Strom). Sie können dies tun, indem Sie die Durchgangsprüfungsoption auf Ihrem Digitalmultimeter verwenden, und wenn Sie sich nicht sicher sind, welche Option dies ist, überprüfen Sie einfach das beschriftete Foto oben in diesem Schritt. Stecken Sie eine Elektrode auf jeden Pin, den Sie testen möchten, und wenn Sie keinen Piepton hören, müssen Sie sich keine Sorgen machen. Wenn Sie einen Piepton hören, sollten Sie diese Verbindung nachbessern, um sicherzustellen, dass die Pins nicht mehr überbrückt sind, bevor Sie mit dem nächsten Schritt fortfahren.
Wenn Sie fertig sind, können Sie Ihren Lötkolben ausschalten.
Schritt 2: Verbinden Sie die Boards
Verbinden Sie Ihre Komponenten gemäß dem Schaltplan und den Bildern miteinander. Sie sollten drei Anschlüsse haben: + zu VCC (Strom), - zu GND (Masse) und SIG zu Pin 4 (AIN2). Das nrf52840 sollte auf einem Steckbrett leben, und die MyoWare kann einfach frei schwebend gelassen werden. Stellen Sie sicher, dass MyoWare eine ausreichende Menge Draht enthält, damit Sie es leicht bewegen können. Schließlich wird es bald auf deinem Arm leben.
Schritt 3: Installieren Sie die erforderliche Software
Sie werden ein paar verschiedene Softwarepakete benötigen, damit alles funktioniert. Möglicherweise haben Sie bereits einige davon installiert, laden Sie also einfach herunter, was Sie benötigen.
- Python 3, (3.6-3.8 wird alles funktionieren, 3.9 wird nicht unterstützt) - Stellen Sie sicher, dass Sie auch pip, den Paketmanager von Python, installieren
- Adafruits nrfutil - pip3 install --user adafruit-nrfutil
- Bleak- pip3 install --user bleak
- Pygame- pip3 install -U pygame --user
- Flappy Bird- git-Klon
Schritt 4: Finden Sie den richtigen seriellen Port
Schließen Sie zuerst Ihr Board an Ihren Computer an. Um Software auf das nrf52840 zu installieren, müssen Sie die RST-Taste in der Nähe des Micro-USB-Anschlusses zweimal antippen. Wenn das blaue Licht schnell blinkt, können Sie loslegen. Sie sollten auch ein Popup-Fenster auf Ihrem Computer erhalten haben, das anzeigt, dass Sie ein USB-Gerät angeschlossen haben.
Bevor wir Firmware auf dem Gerät installieren, müssen wir feststellen, welcher Port Ihrem Breakout-Board zugewiesen wurde, und die Art und Weise, wie wir dies tun, ist plattformabhängig. Möglicherweise haben Sie bereits einen bevorzugten Weg, dies zu tun, und wenn dies der Fall ist, können Sie gerne zum nächsten Schritt übergehen.
Fenster
Öffnen Sie den Gerätemanager und suchen Sie unter Ports nach USB Serial Device. Auf dem angehängten Foto befindet sich das Gerät beispielsweise an COM3.
Mac
Öffnen Sie das Terminal und führen Sie `ls /dev/tty.*` aus und Sie sollten das Gerät als eine der Optionen sehen. Wenn Sie nicht sagen können, was es ist, versuchen Sie, Ihr Board zu trennen. Führen Sie dann den Befehl erneut aus und notieren Sie, welches Gerät nicht mehr aufgeführt ist, dies sollte das Breakout-Board sein.
Ubuntu/Debian
Öffnen Sie das Terminal und führen Sie `ls /dev/tty*` aus. Eines dieser Geräte ist das, was Sie brauchen, und es wird wahrscheinlich einer von zwei Namenskonventionen folgen: /dev/ttyS# oder /dev/ttyACM#. Wenn Ihr Gerät nicht eindeutig ist, trennen Sie es und führen Sie den Befehl erneut aus, um den Unterschied zu erkennen.
Schritt 5: Flashen Sie die Firmware
Navigieren Sie in den Ordner mit der Firmware-Binärdatei (wahrscheinlich mit dem Namen flappy-bird-demo) und führen Sie `adafruit-nrfutil --verbose dfu serial --package dfu-package.zip -p SERIAL_PORT -b 115200 --singlebank --touch 1200. aus `. Stellen Sie sicher, dass Sie SERIAL_PORT durch den Port ersetzen, den Sie im vorherigen Schritt entdeckt haben. Wenn dies erfolgreich ist, sollten Sie etwas Ähnliches wie im obigen Bild sehen und das Blinken sollte aufhören.
Schritt 6: Bestätigen Sie, dass alles richtig installiert wurde
Wenn bis jetzt alles funktioniert hat, sollte dieser Schritt im Handumdrehen vorbei sein! Stellen Sie sicher, dass Sie sich im Verzeichnis flappy-bird-demo befinden und führen Sie `python3 flappy.py` aus. Nach einem kurzen Bluetooth-Low-Energy-Verbindungsvorgang sollten Sie mit einer Welle der Nostalgie begrüßt werden.
Flattervogel! Wir haben das Kontrollsystem jedoch noch nicht vollständig eingerichtet, sodass Sie selbst beim Starten des Spiels keine Kontrolle über das Flattern haben. Schließe das Spiel vorerst und ziehe das Stromkabel von deinem Board ab.
Schritt 7: Befestigen Sie die EMG-Elektroden
Jetzt kommt der Teil, der diese Version von Flappy Bird einzigartig macht: die Muskelkontrolle. Im Moment sind Gelelektroden die einzige erschwingliche Option, also sammle 3 davon. Im Beispiel hier sind die 3M-Elektroden etwas groß, daher schneiden wir eine davon über die lange Kante, damit sie zum Foto passt. Das Ausrichten des Schnitts mit dem Etikett sollte die richtige Größe ergeben.
Sobald sie die richtige Größe haben, legen Sie zwei von ihnen in einer Linie auf die Innenseite Ihres Arms über dem Ellbogen (wie abgebildet). Befestigen Sie dann die MyoWare an Ihrem Arm, befestigen Sie eine Elektrode an dem schwarzen baumelnden Anschluss und drücken Sie diese auf einen knöchernen Bereich an Ihrem Arm (ebenfalls wie abgebildet).
Schritt 8: Spielen Sie Flappy Bird 2.0 (diesmal ernsthaft)
Zeit, Flappy zu bekommen! Nachdem sich die MyoWare nun an Ihrem Arm befindet, stellen Sie sicher, dass Sie Zugang zu einer Stromquelle ohne Steckdose haben (entweder trennen Sie Ihren Laptop oder machen Sie Ihren Akku bereit) und schalten Sie Ihr Breakout-Board nrf52840 ein. Wenn Ihr MyoWare nicht aufleuchtet, vergewissern Sie sich, dass es auch mit dem im Bild angezeigten Schalter eingeschaltet ist.
Jetzt können Sie Flappy Bird wie zuvor `python3 flappy.py` neu starten und nach einem Verbindungsvorgang sehen Sie wieder den Startbildschirm von Flappy Bird. Sie müssen einmal auf den Bildschirm klicken, um das Spiel zu starten, aber Sie sollten jetzt in der Lage sein, Ihre Faust zu drücken, um zu flattern, und dann weiter Ihre Faust zu drücken, um zu springen und den Rohren auszuweichen.
Sobald es funktioniert, würden wir uns freuen, wenn Sie einige Highscores (oder Feedback) in unserem Forum oder Discord veröffentlichen. Wir sind für Sie da, falls Sie Hilfe brauchen, um Dinge zum Laufen zu bringen.
Schritt 9: Viel Spaß
Hoffentlich hat Ihnen dieses Tutorial gefallen und Sie konnten alles erfolgreich zum Laufen bringen. Wir arbeiten hart daran, mit dieser Technologie noch coolere Projekte und hoffentlich noch coolere Instructables zu bauen! Erfahren Sie mehr auf unserer Website.
Wenn Sie in Schwierigkeiten oder Frustration geraten, keine Sorge! Auch bei der Herstellung sind viele Probleme aufgetreten. Zögern Sie also nicht, uns zu kontaktieren, und wir nehmen uns gerne Zeit, um Ihre Muskeln an Ihren Computer anzuschließen. Sie können entweder einen Kommentar zum instructable posten, sich uns bei Discord anschließen, in unserem Forum posten oder uns direkt eine E-Mail an [email protected] senden.
Vielen Dank!