Inhoudsopgave:

Muscle Powered Flappy Bird - Ajarnpa
Muscle Powered Flappy Bird - Ajarnpa

Video: Muscle Powered Flappy Bird - Ajarnpa

Video: Muscle Powered Flappy Bird - Ajarnpa
Video: 3300th Rebirths on Roblox Strongman Simulator 2024, Juli-
Anonim
Spieraangedreven Flappy Bird
Spieraangedreven Flappy Bird
Spieraangedreven Flappy Bird
Spieraangedreven Flappy Bird
Spieraangedreven Flappy Bird
Spieraangedreven Flappy Bird

Je herinnert je misschien nog dat Flappy Bird de wereld stormenderhand veroverde en uiteindelijk zo populair werd dat de maker het uit app-winkels verwijderde om ongewenste publiciteit te voorkomen. Dit is Flappy Bird zoals je nog nooit eerder hebt gezien; door een paar kant-en-klare componenten te combineren, kunt u de gelijknamige Flappy Bird rechtstreeks vanuit uw spieren besturen met de kracht van elektromyografie (EMG).

Als je geïnteresseerd bent om met EMG te fladderen, word dan lid van onze Discord en ons Forum. We horen graag van u en we zijn altijd in de buurt om u te helpen als u problemen ondervindt.

Benodigdheden:

Hier is alles wat je nodig hebt:

  • 1 Sparkfun nrf52840 breakout board mini
  • 1 MyoWare
  • ~ 3 voet draad, een paar kleuren hebben helpt altijd
  • 1 draadstripper
  • 1 breadboard
  • 1 digitale multimeter
  • 1 pakje gelelektroden

Het volgende item is optioneel. De MyoWare waarschuwt voor rechtstreekse voeding via een stopcontact, dus je hebt twee opties: ten eerste kun je het spel op een laptop spelen en de oplader loskoppelen of je kunt het op een batterij laten werken. De batterijconnector van de nrf52840 is achterstevoren bedraad, dus je zult ook de polen van je batterij opnieuw moeten solderen, wat moeilijk kan zijn als je niet veel ervaring hebt met solderen.

Stap 1: Soldeer op de headers

Soldeer op de headers
Soldeer op de headers
Soldeer op de headers
Soldeer op de headers
Soldeer op de headers
Soldeer op de headers

Laten we eerst die headers bijvoegen. Ook al gebruiken we niet alle pinnen op het nrf52840 breakout board, het is nog steeds het gemakkelijkst om de header in elke pin te solderen. Raadpleeg de foto's als de beschrijving niet duidelijk genoeg is over wat waar hoort.

Bevestig aan de ene kant van het bord een header van VIN naar pin 2 en aan de andere kant bevestig je een 2-pins header op 17 en 15 en een andere header van pin 19 naar 10.

Vervolgens willen we een header aan uw MyoWare koppelen. Plaats een 3-pins header op de +, - en sig-pinnen.

Voordat u uw soldeerbout uitschakelt, is het een goed idee om alle gesoldeerde pinnen die eruit zien alsof ze te dicht bij elkaar staan dubbel te controleren (en ook om de aarde en de voeding dubbel te controleren). U kunt dit doen door de continuïteitscontroleoptie op uw digitale multimeter te gebruiken, en als u niet zeker weet welke optie dat is, controleert u gewoon de gelabelde foto bovenaan deze stap. Plaats één draad op elke pin die u wilt testen, en als u geen piep hoort, hoeft u zich geen zorgen te maken. Als u een pieptoon hoort, moet u die verbinding bijwerken om ervoor te zorgen dat de pinnen niet langer overbrugd zijn voordat u doorgaat naar de volgende stap.

Als je klaar bent, kun je je soldeerbout gerust uitzetten.

Stap 2: Verbind de borden

Verbind de borden
Verbind de borden
Verbind de borden
Verbind de borden
Verbind de borden
Verbind de borden
Verbind de borden
Verbind de borden

Volg het schema en de afbeeldingen en verbind uw componenten met elkaar. U moet drie aansluitingen hebben: + naar VCC (voeding), - naar GND (aarde) en SIG naar pin 4 (AIN2). De nrf52840 zou op een breadboard moeten leven en de MyoWare kan gewoon vrij zwevend worden gelaten. Zorg ervoor dat u de MyoWare een gezonde hoeveelheid draad geeft, zodat u hem gemakkelijk kunt verplaatsen. Het zal tenslotte binnenkort op je arm leven.

Stap 3: Installeer de benodigde software

Installeer de benodigde software
Installeer de benodigde software
Installeer de benodigde software
Installeer de benodigde software

Je hebt een aantal verschillende softwarepakketten nodig om alles te laten werken. Misschien heb je er al een paar geïnstalleerd, dus download gewoon wat je nodig hebt.

  • Python 3, (3.6-3.8 zal allemaal werken, 3.9 wordt niet ondersteund) - Zorg ervoor dat u ook pip installeert, de pakketbeheerder van python
  • Adafruit's nrfutil - pip3 install --user adafruit-nrfutil
  • Bleak- pip3 install --user bleak
  • Pygame- pip3 install -U pygame --user
  • Flappy Bird-git-kloon

Stap 4: Vind de juiste seriële poort

Vind de juiste seriële poort
Vind de juiste seriële poort
Vind de juiste seriële poort
Vind de juiste seriële poort

Sluit eerst je board aan op je computer. Om software op de nrf52840 te plaatsen, moet u dubbeltikken op de RST-knop in de buurt van de micro-USB-poort. Als het blauwe lampje snel knippert, ben je klaar om te gaan. U zou ook een pop-up op uw computer moeten hebben gekregen die aangeeft dat u een USB-apparaat hebt aangesloten.

Voordat we firmware op het apparaat plaatsen, moeten we bepalen aan welke poort je breakoutboard is toegewezen, en de manier waarop we dit doen is platformafhankelijk. Misschien heb je al een voorkeursmanier om dit te doen, en als dat het geval is, ga dan gerust naar de volgende stap.

ramen

Open apparaatbeheer en zoek naar USB-serieel apparaat onder poorten. Op de bijgevoegde foto staat het toestel bijvoorbeeld op COM3.

Mac

Open de terminal en voer `ls /dev/tty.*` uit en je zou het apparaat als een van de opties moeten zien. Als je niet kunt zien welke het is, probeer dan de stekker uit het stopcontact te halen. Voer vervolgens de opdracht opnieuw uit en noteer welk apparaat niet langer wordt vermeld, dit zou het breakout-bord moeten zijn.

Ubuntu/Debian

Open de terminal en voer `ls /dev/tty*` uit. Een van deze apparaten is wat je nodig hebt, en het zal waarschijnlijk een van de twee naamconventies volgen: /dev/ttyS# of /dev/ttyACM#. Als het onduidelijk is welk apparaat uw apparaat is, kunt u proberen het los te koppelen en de opdracht opnieuw uit te voeren om het verschil te zien.

Stap 5: Flash de firmware

Flash de firmware
Flash de firmware

Navigeer naar de map met het binaire firmwarebestand (waarschijnlijk flappy-bird-demo genoemd), en voer `adafruit-nrfutil --verbose dfu serial --package dfu-package.zip -p SERIAL_PORT -b 115200 --singlebank --touch 1200 uit `. Zorg ervoor dat u SERIAL_PORT vervangt door de poort die u in de vorige stap hebt ontdekt. Als dit lukt, zou u iets moeten zien dat lijkt op de afbeelding hierboven en zou het knipperen moeten stoppen.

Stap 6: Bevestig dat alles correct is geïnstalleerd

Bevestig dat alles correct is geïnstalleerd
Bevestig dat alles correct is geïnstalleerd

Als alles tot nu toe heeft gewerkt, zou deze stap voorbij moeten zijn! Zorg ervoor dat u zich in de map flappy-bird-demo bevindt en voer `python3 flappy.py` uit. Na een kort Bluetooth Low Energy-verbindingsproces zou je met een golf van nostalgie moeten worden begroet.

Flauwe vogel! We hebben het besturingssysteem echter nog niet volledig ingesteld, dus zelfs als je het spel start, heb je geen controle over het fladderen. Sluit het spel voor nu en haal de stroomkabel uit je bord.

Stap 7: Bevestig de EMG-elektroden

Bevestig de EMG-elektroden
Bevestig de EMG-elektroden
Bevestig de EMG-elektroden
Bevestig de EMG-elektroden
Bevestig de EMG-elektroden
Bevestig de EMG-elektroden
Bevestig de EMG-elektroden
Bevestig de EMG-elektroden

Nu is het tijd voor het onderdeel dat deze versie van Flappy Bird uniek maakt: de spiercontrole. Op dit moment is de enige betaalbare optie gelelektroden, dus verzamel er drie. In het voorbeeld hier zijn de 3M-elektroden een beetje groot, dus we snijden er een over de lange rand zodat deze overeenkomt met de foto. Het uitlijnen van de snede met het label zou de juiste maat moeten opleveren.

Zodra ze de juiste maat hebben, plaats je er twee in lijn aan de binnenkant van je arm boven de elleboog (zoals afgebeeld). Bevestig vervolgens de MyoWare aan uw arm, bevestig een elektrode aan de zwarte bungelende connector en druk die op een benig gebied op uw arm (ook zoals afgebeeld).

Stap 8: speel Flappy Bird 2.0 (serieus deze keer)

Speel Flappy Bird 2.0 (serieus deze keer)
Speel Flappy Bird 2.0 (serieus deze keer)
Speel Flappy Bird 2.0 (serieus deze keer)
Speel Flappy Bird 2.0 (serieus deze keer)

Tijd om Flappy te krijgen! Nu de MyoWare op uw arm zit, moet u ervoor zorgen dat u toegang hebt tot een stroombron zonder stopcontact (ofwel uw laptop loskoppelen of uw batterij gereedmaken), en zet u uw nrf52840 breakout-bord aan. Als uw MyoWare niet oplicht, zorg er dan voor dat deze ook is ingeschakeld met de schakelaar die in de afbeelding wordt aangegeven.

Nu kun je Flappy Bird opnieuw starten zoals je eerder deed, `python3 flappy.py` en na een verbindingsproces zul je opnieuw het startscherm van Flappy Bird zien. Je moet één keer op het scherm klikken om het spel te starten, maar je zou nu in staat moeten zijn om in je vuist te knijpen om te flapperen, en dan in je vuist blijven knijpen om te springen en de pijpen te ontwijken.

Als het eenmaal werkt, zouden we het geweldig vinden als je wat hoge scores (of feedback) op ons forum of Discord zou plaatsen. We zijn in de buurt voor het geval je hulp nodig hebt om dingen werkend te krijgen.

Stap 9: Geniet

Genieten van!
Genieten van!

Hopelijk heb je genoten van deze tutorial en heb je alles met succes kunnen laten werken. We werken er hard aan om nog coolere projecten te bouwen met deze technologie, en hopelijk nog coolere Instructables! Lees meer op onze website.

Als je problemen of frustraties tegenkomt, geen zorgen! We zijn ook behoorlijk wat problemen tegengekomen tijdens het maken, dus aarzel niet om contact met ons op te nemen en we besteden graag wat tijd aan het helpen van uw spieren om uw computer aan te sluiten. Je kunt een opmerking plaatsen op de instructable, lid worden van Discord, posten op ons forum of ons rechtstreeks e-mailen op [email protected].

Bedankt!

Aanbevolen: