Kazalo:

Neurobots Battle Royale: Boj proti heksbugom z mišicami: 7 korakov
Neurobots Battle Royale: Boj proti heksbugom z mišicami: 7 korakov

Video: Neurobots Battle Royale: Boj proti heksbugom z mišicami: 7 korakov

Video: Neurobots Battle Royale: Boj proti heksbugom z mišicami: 7 korakov
Video: OpenBCI EEG/EMG Controlled Hexbug 2024, November
Anonim
Neurobots Battle Royale: Boj proti heksbugom z mišicami
Neurobots Battle Royale: Boj proti heksbugom z mišicami

Ta vadnica prikazuje, kako uporabljati podatke EMG, pretočne skozi strojno opremo OpenBCI in grafični vmesnik OpenBCI, za nadzor dejanj Hexbuga. Bojne zmogljivosti teh hexbugov lahko nato nadzirate z lastnimi mišicami in sami se boste lahko vključili v borbe Hexbug!

Koristne spretnosti v ozadju:

  • Poznavanje programiranja na osnovi Arduina ali C.

    Osnove Arduina

  • Kako nastaviti komplet OpenBCI naglavnih trakov s Cytonom ali Ganglionom

    To vam bo pomagalo pri nastavitvi in delu z deskami OpenBCI

  • Pretakanje podatkov EMG z OpenBCI

Nekaj osnovnega znanja o podatkih EMG

Zaloge

  • Strojna oprema
    • Računalnik, ki ustreza sistemskim zahtevam grafičnega vmesnika
    • Hexbug 2.0 dvojni paket
    • EMG/EKG penaste trdne gelne elektrode (30/paket)
    • EMG/EKG kabli za zaskočne elektrode
    • OpenBCI Cyton Board (500 USD) ali Ganglion Board (200 USD)
    • 20 moških moških mostičnih kablov
    • Ogledna plošča
    • 10 x 10 kΩ upori
    • Arduino Genuino Uno
    • Izbirno 5 LED (za povezavo za odpravljanje napak)
  • Programska oprema
    • OpenBCI GUI
    • Arduino IDE
    • Priložena koda
  • OpenBCI Vodniki za začetek

    • OpenBCI GUI
    • Ganglion ali Cyton

Korak 1: Spajkajte kable mostička do krmilnika

Spajkalne kable za spajkanje do krmilnika
Spajkalne kable za spajkanje do krmilnika
Spajkalni kabli za spajkanje do krmilnika
Spajkalni kabli za spajkanje do krmilnika
Spajkalne kable za spajkanje do krmilnika
Spajkalne kable za spajkanje do krmilnika

1.1 Odstranite pokrov krmilnika

Odstranite prozorno plastično ohišje z zagozditvijo ploščatega izvijača ali drugega orodja v štirih zaklepnih jezičkih krmilnika. Držite se drsnega preklopnika kanalov in samega ohišja. Vse druge gumbe lahko zavržete.

Odstranite pritrjene gumbe in jih zavrzite. Prav tako odstranite spajkanje gumba »Požar« in zavrzite.

1.2 Spajkanje na skakalnih kablih

Nato vsak spajkalni kabel moški-moški spajkajte na majhne notranje kroge, kjer so bili gumbi naprej, nazaj, levo in desno. Prav tako spajkajte priključke na odstranjeni požarni kabel in ozemljitveni zatič levo.

1.3 Zamenjajte pokrov krmilnika

S škarjami ali pomožnim nožem odrežite koščke prozornega plastičnega pokrova, ki bi ovirali položaj vaših mostičnih kablov, in jih znova namestite na krmilnik, pri čemer stikalo za kanale držite v položaju.

Ponovno uporabimo pokrov, tako da drsni preklopnik kanalov ostane učinkovito v stiku s prevodnimi zaplatami na plošči.

2. korak: Ustvarite Breadboard Setup in Connect Controller

Ustvarite Breadboard Setup in Connect Controller
Ustvarite Breadboard Setup in Connect Controller
Ustvarite Breadboard Setup in Connect Controller
Ustvarite Breadboard Setup in Connect Controller
Ustvarite Breadboard Setup in Connect Controller
Ustvarite Breadboard Setup in Connect Controller

Ponovno ustvarite nastavitev, kot je prikazano zgoraj.

Pojasnilo:

2.1 Zatiče krmilnika postavite v tablico

Vsak ukaz bo postavljen v svojo vrstico. Vsak zatič postavite v svojo vrsto v notranji del plošče. Od zgoraj navzdol naj bo vrstni red levo, desno, naprej, ogenj.

2.2 Dodajte upore

Ko vstavite te zatiče, dodajte 10KΩ upor, ki premošča obe strani plošče. To popravi količino toka, ki teče na vsak pin, kar omogoča pravilno delovanje hrošča.

2.3 Dodajte LED za preverjanje napak

Za vizualizacijo lahko na tej točki dodamo tudi LED. Anoda LED mora biti v skladu s krmilnim zatičem in uporom, katoda pa na ločeni vrstici plošče. Priključite drug upor s katode na ozemljitveno ploščo. Upoštevajte, da je ta korak neobvezen, lahko pa pomaga pri odpravljanju napak v vezju.

2.4 Povežite nastavitve z Arduinom

Na koncu dodajte še en mostični kabel za povezavo vsake vrstice z zatičem Arduino. Pomembno je, da ustrezajo naslednjemu:

3 - Požar 4 - Naprej 5 - Levo 6 - Desno

3. korak: Preizkusite s pretakanjem sintetičnih podatkov

Preizkusite s pretakanjem sintetičnih podatkov
Preizkusite s pretakanjem sintetičnih podatkov
Preizkusite s pretakanjem sintetičnih podatkov
Preizkusite s pretakanjem sintetičnih podatkov

3.1 Naložite vzorčno kodo na tablo

Ko prenesete našo kodo, jo odprite v Arduinu. Ploščo priključite na prenosni računalnik in jo izberite kot vrata v spustnem meniju Orodja. Nato naložite svojo kodo na ploščo Arduino.

3.2 Odprite Synthetic Streaming

V tem primeru bo 8 kanalov dobro delovalo. Za nadaljevanje kliknite »Začni sistem«.

Ko odprete grafični vmesnik, izklopite kanale 6-8.

3.3 Nastavitev pripomočka za omrežje

Odprite in nastavite omrežni pripomoček, kot je prikazano na sliki, v serijskem načinu. Želimo, da je podatkovni tip "EMG".

Upoštevajte tudi, da je hitrost prenosa v naši skici Arduino 57600, zato iz spustnega menija Baud izberemo 57600.

Prepričajte se, da ste izbrali prava vrata za Arduino. To so ista vrata, ki smo jih uporabili za nalaganje skice v Arduino. Če uporabljate Mac/Linux, mora biti označen kot "usbmodem"-za razliko od plošče OpenBCI, ki bo označena kot "usbserial".

Ko potrdite, da so vse informacije pravilne, pritisnite start!

3.4 Teki

Ker je sintetične podatke veliko težje nadzorovati, prilagajajte nastavitve v pripomočku EMG, dokler kvadrati niso dovolj nestanovitni, da prenesejo mejno vrednost, našteto v kodi. Če to ni dovolj, je morda v vašem interesu, da spremenite mejno vrednost kode in jo znova naložite na tablo.

Prav tako lahko pomaga izklopiti vse kanale razen enega in preizkusiti vsak ukaz enega za drugim, da se prepriča, ali vsi počnejo tisto, kar naj bi počeli. Ko potrdite, da vse dobro deluje, lahko preidete na resnične podatke.

4. korak: Namestite OpenBCI ploščo in elektrode

Namestite svojo OpenBCI ploščo in elektrode
Namestite svojo OpenBCI ploščo in elektrode
Namestite svojo OpenBCI ploščo in elektrode
Namestite svojo OpenBCI ploščo in elektrode

To lahko poteka v dveh smereh: ena oseba, ki nadzoruje vseh 5 ukazov, ali več ljudi, ki nadzorujejo različne ukaze. To bo razlikovalo način, kako se to naredi.

Možnost A: Ena oseba, ki nadzoruje vseh pet ukazov

Preprosto sledite navodilom v tem priročniku za namestitev EMG v dokumentaciji OpenBCI tukaj.

Možnost B: Več ljudi, ki nadzorujejo različne ukaze

Sledite navodilom za namestitev EMG na spletnem mestu OpenBCI, vendar z eno spremembo: več razlogov je treba združiti skupaj.

Če želite to narediti, odrežite približno 3 centimetre moških žic za pin in konec ene žice za ženski pin in odstranite centimeter gume s koncev, da izpostavite žice v notranjosti. To ponovite za toliko moških žic, kolikor je potrebno, da vsaka oseba dobi individualno podlago. Spojite te izpostavljene konce skupaj in jih shranite v kosu toplotno skrčljive cevi.

5. korak: Povežite se z resničnimi podatki

Povežite se z resničnimi podatki
Povežite se z resničnimi podatki
Povežite se z resničnimi podatki
Povežite se z resničnimi podatki

Zdaj se vrnite na dom grafičnega vmesnika in izberite V ŽIVO (iz Cytona) ali V ŽIVO (iz Gangliona) - odvisno od plošče, ki jo uporabljate - kot vir podatkov.

Od tu odprite pripomoček EMG in pripomoček za mreženje ter začnite pretakati tako, kot smo imeli prej. Zdaj bi morali podatki pretakati iz vašega vnosa v živo!

6. korak: Bitka

Ko je vse nastavljeno, ste pripravljeni na boj. Če sta bili ustvarjeni dve nastavitvi, lahko uporabite kontrolnike za boj.

Upoštevajte, da je treba robote vklopiti enega za drugim, da zagotovite zbiranje signalov iz dveh edinstvenih virov.

Vsak hexbug ima tri življenja, in potem, ko so vsi minili, preprosto pritisnite gumb za vklop, da ponastavite rezultate.

Zabavajte se in se borite!

7. korak: Odpravljanje težav - nadzorna koda tipkovnice

Če imate težave z nastavitvijo plošče in jo želite nadzirati samo s tipkovnico, prenesite to kodo, če želite uporabiti vgrajen serijski monitor Arduino za nadzor vezja. Tako boste lahko ločili vsako dejanje in ugotovili, ali težava, ki jo imate, prihaja iz fizične nastavitve Arduina ali iz podatkov.

Priporočena: