Turinys:

Rašymas naudojant EMG naudojant „MyoWare“: 8 žingsniai
Rašymas naudojant EMG naudojant „MyoWare“: 8 žingsniai

Video: Rašymas naudojant EMG naudojant „MyoWare“: 8 žingsniai

Video: Rašymas naudojant EMG naudojant „MyoWare“: 8 žingsniai
Video: Pavardės rašymas originalo kalba naudojant raides W, Q, X | Teisinėkonsultacija.lt 2024, Lapkritis
Anonim
Rašymas naudojant EMG naudojant „MyoWare“
Rašymas naudojant EMG naudojant „MyoWare“

Autoriai:

L. Elizabeth Crawford & Dylan T. Vavra

Įvadas:

Šioje pamokoje mes jums parodysime, kaip sukurti paprastą namuose elektromiografijos (EMG) sistemą, kainuojančią apie 100 USD, kuri pajus raumenų aktyvavimą nuo odos paviršiaus ir panaudos ją klavišo paspaudimui. kompiuterį, apeinant klaviatūrą. Norėdami tai padaryti, naudojome klasikinį „MaKey MaKey“ir „MyoWare“jutiklį kartu su šiek tiek kodavimo. Šiam projektui taip pat reikia šiek tiek lituoti. Naudingus litavimo technikos ir saugos patarimus rasite čia.

Pirmiausia parodysime, kaip tai padaryti naudojant vieną „MyoWare“jutiklį. Tada parodysime, kaip prie sistemos pridėti antrą (mūsų tikslams naudojome du).

Tikimės, kad kiti galės pamėgdžioti šią „pasidaryk pats“EMG technologiją, pritaikyti ją pagal savo poreikius ir panaudoti bet kokiai įdomiai programai. Mes jį panaudojome savo eksperimentinės psichologijos laboratorijoje Ričmondo universitete, norėdami pakartoti tyrimus, rodančius, kad žmonės imituoja kitų veido išraiškas.

1 žingsnis: surinkite savo medžiagas

Surinkite savo medžiagas
Surinkite savo medžiagas

Medžiagos:

  • Kompiuteris
  • „MaKey MaKey“su pridedamu USB kabeliu (taip pat turėtumėte tai padaryti naudodami „Arduino Leonardo“, bet mes to neišbandėme)
  • USB maitinimo izoliatorius (nebent išsijungia nešiojamas kompiuteris su baterijomis), pvz., „Adafruit“USB izoliatorius - 100 mA izoliuotas žemo/pilno greičio USB (nerodomas nuotraukoje)
  • „MyoWare“jutiklis (-iai)
  • Elektrodai (x3 kiekvienam „MyoWare“jutikliui) - naudojome „Covidien Kendall“vienkartinio paviršiaus EMG/EKG/EKG 1 colio (24 mm) elektrodus
  • Atsiskyrusios antraštės (naudojome L formos antraštes)
  • Laidai, kurių viename gale yra kištukinė jungtis, kitame - patelė
  • Lituoklis
  • Izoliacinė juosta

Įrankiai:

  • Lituoklis
  • Vielos pjaustytuvas
  • Vielos skirstytuvas

Programinė įranga:

„Arduino IDE“su „MaKey MaKey“priedu

2 žingsnis: Paruoškite „MyoWare“jutiklį

Paruoškite „MyoWare“jutiklį
Paruoškite „MyoWare“jutiklį

1. Sulaužykite trijų atskirtų antraščių rinkinį, skirtą litavimui prie „MyoWare“.

2. Laikydami „MyoWare“jutiklį bicepsu aukštyn, trumpesnį trijų antraščių galą iš apačios įkiškite į skyles, kuriose yra „+“(pliuso ženklas, „-“(neigiamas ženklas) ir „SIG“) šalia jų. (Žiūrėkite paveikslėlį aukščiau.)

3. Lituokite antraštes vietoje.

3 veiksmas: prijunkite „MyoWare“jutiklį prie „MaKey MaKey“

1. Pasirinkite tris laidus (idealiu atveju skirtingų spalvų), viename gale vyrišką, kitame - moterišką. Jums reikalingų laidų ilgis priklauso nuo to, kiek norite, kad „MyoWare“būtų nuo „MaKey MaKey“. Kad „MyoWare“būtų ant veido ir „MaKey MaKey“būtų ant stalo, jums reikės apie 18 colių.

2. Nuspręskite, kokią funkciją atliks kiekvienos spalvos viela. Vienas bus naudojamas maitinimui (prijungimas prie „MyoWare“jutiklio + jungties), kitas - įžeminimui (prijungimas prie „MyoWare“jutiklio - jungties), o trečiasis bus naudojamas kaip signalinis laidas (prijungimas prie SIG jungtis „MyoWare“). Šioje instrukcijoje parodytose nuotraukose mes naudojame žalią energiją, rudą - žemę, o pilką - signalą.

4 veiksmas: įkelkite eskizą į „MaKey MaKey“

Įkelkite eskizą į „MaKey MaKey“
Įkelkite eskizą į „MaKey MaKey“
Įkelkite eskizą į „MaKey MaKey“
Įkelkite eskizą į „MaKey MaKey“
Įkelkite eskizą į „MaKey MaKey“
Įkelkite eskizą į „MaKey MaKey“

1. Įdiekite „Arduino IDE“savo kompiuteryje (pamoka čia).

2. Įdiekite „MaKey MaKey“priedą, skirtą „Arduino“(pamoka čia), atidarę „Arduino“nuostatas (Failas> Nuostatos), eidami į teksto laukelį Papildomi valdytojo URL ir įklijuodami:

raw.githubusercontent.com/sparkfun/Arduino_Boards/master/IDE_Board_Manager/package_sparkfun_index.json

3. „Arduino IDE“spustelėkite failą, patraukite žemyn, kad sukurtumėte naują eskizą. Nukopijuokite ir įklijuokite šį kodą į teksto langą:

/*slenksčiai registruojant klavišą*/const int thresh1 = 1000;/*įvesties priskyrimas „MaKey MaKey“*/const int sensor1Pin = A3; #include "Keyboard.h" int LED (9); void setup () { pinMode (LED, OUTPUT); Serial.begin (9600);}/*Žemiau pateiktas kodas ima „MyoWare“kas 50 ms, siunčia jo vertę į nuoseklųjį prievadą, o jei vertė yra didesnė už slenkstį, - paspaudžiamas klavišas. Galite imti mėginius dažniau, sumažindami delsą. Dėl to reikšmes bus sunkiau skaityti serijos lange.*/Void loop () {int sensor1Val = analogRead (sensor1Pin); Serial.println (sensor1Val); if (sensor1Val> = thresh1) {Keyboard.begin ();/ /Siunčia „c“raidės klavišų paspaudimą. Klaviatūra.write ('c'); // palaukite 50 ms, kol imsite atrinkti againdelay (50);} else // palaukite 50 ms prieš atrinkdami againdelay (50);}

4. Prijunkite „MaKey MaKey“prie kompiuterio. Patraukite įrankių meniu ir įsitikinkite, kad pasirinkta lenta yra „Arduino Leonardo“arba „MaKey MaKey“. Patraukite įrankių meniu į uostą ir įsitikinkite, kad pasirinktas prievadas turi jūsų pasirinktos plokštės pavadinimą. Įkelkite eskizą į lentą spustelėdami rodyklę į dešinę, esančią „Arduino IDE“viršuje.

5 veiksmas: prijunkite visus komponentus kartu

1. Prijunkite „MyoWare“jutiklio laidus prie „MaKey MaKey“taip:

  • „+“„MyoWare“eina į 5 V lizdą „MaKey MaKey“.
  • „-“„MyoWare“eina į žemę („žemę“) „MaKey MaKey“.
  • „SIG“„MyoWare“eina į „MaKey MaKey“A3 lizdą.

2. Prijunkite tris elektrodus prie „MyoWare“.

3. Prijunkite „MaKey MaKey“. Jei naudojate kompiuterį, prijungtą prie maitinimo lizdo, prijunkite „MaKey MaKey“prie USB maitinimo izoliatoriaus ir tada prijunkite jį prie kompiuterio USB prievado. (Tai yra atsargumo priemonė, kad jei kažkas negerai su jūsų kompiuterio maitinimo šaltiniu, dėvėtojas nebūtų tiesiogiai prijungtas prie elektros tinklo. Mažai tikėtina, kad tokia problema atsirastų, tačiau norime, kad būtumėte saugūs.) Jei naudojate nešiojamąjį kompiuterį, kurio akumuliatorius išsikrauna (ty NĖRA ĮKYTAS Į SISTEMĄ), esate saugūs be izoliatoriaus.

4. Patikrinkite, ar viskas įjungta. Tiek „MaKey MaKey“raudonas šviesos diodas, tiek žalias „MyoWare“šviesos diodas turi užsidegti.

5. Nuvalykite odą, prie kurios norite pritvirtinti „MyoWare“, patrinkite alkoholiu, kad pašalintumėte nešvarumus ir aliejus.

6. Nulupkite lipnią elektrodų pagrindą ir pritvirtinkite „MyoWare“prie odos. Norite, kad du „MyoWare“esantys elektrodai būtų ant raumens, iš kurio norite įrašyti. Elektrodas, pritvirtintas prie vielos, yra palyginimas ir turėtų būti dedamas nuo raumenų toje vietoje, kuri nebus aktyvi, kai susitraukia tikslinis raumuo.

7. Patikrinkite klijus ant elektrodų ir įsitikinkite, kad gerai užsandarinate odą. Jums gali tekti prispausti lipnių žiedų kraštus į odą, kad gerai užsandarintumėte.

6 veiksmas: slenksčių nustatymas „Arduino IDE“

Slenksčių nustatymas „Arduino IDE“
Slenksčių nustatymas „Arduino IDE“

1. Kai viskas prijungta ir įjungta, atidarykite „Arduino IDE“serijinį monitorių spustelėdami didinamojo stiklo įrankį viršutiniame dešiniajame kampe.

2. Serijinis monitorius dabar turėtų rodyti „MyoWare“signalo reikšmes. Kai lankstote ir atpalaiduojate raumenis, turėtumėte matyti, kaip atitinkamai keičiasi vertės. Taip pat turėtumėte pamatyti raudoną „MyoWare“šviesos diodą, kai užsidega raumenys pakankamai stipriai.

3. Žiūrėdami serijinį monitorių, susitraukite skirtingo intensyvumo raumenis, būtinai atsipalaiduokite tarp susitraukimų, kad grįžtumėte į pradinę padėtį. Nustatykite slenkstinę vertę, kurią viršijus norite, kad susitraukimas sukeltų klavišų paspaudimą. Didesnėms reikšmėms reikės stipresnio susitraukimo, kad būtų užregistruotas klavišo paspaudimas; dėl mažesnių verčių jis bus jautresnis mažiems susitraukimams, bet ir labiau linkęs į klaidingus pavojaus signalus.

4. „Arduino“eskize pakeiskite slenksčio vertę (const int thresh1) iš 1000 į pasirinktą slenkstį.

5. Uždarykite serijinį monitorių, iš naujo įkelkite eskizą ir pradėkite rašyti naudodami EMG. Galite pastebėti, kad reikia koreguoti slenkstį, kad jautrumas būtų ten, kur norite. Taip pat galite eksperimentuoti su uždelsimu, kad jis imtų mėginius dažniau ar rečiau.

7 veiksmas: mėgaukitės savo naujos naminės EMG sistemos naudojimu

Mėgaukitės savo naujos naminės EMG sistemos naudojimu!
Mėgaukitės savo naujos naminės EMG sistemos naudojimu!

Elektrodus galite įdėti į daugybę kūno vietų (pavyzdžiui, ant veido, kaip aukščiau vaizduoja mūsų laboratorijos kiborgas Kyle'as Lee).

Eksperimentuokite su vietomis, kur įdėsite elektrodus, ir su daugybe galimybių, kurias galėtumėte naudoti paspausdami klavišus.

Taip pat toliau skaitykite, kad sužinotumėte, kaip prie šios sistemos pridėti dar vieną „MyoWare“jutiklį.

8 veiksmas: pridėkite antrą jutiklį prie savo EMG sistemos

Pridėkite antrą jutiklį prie savo EMG sistemos
Pridėkite antrą jutiklį prie savo EMG sistemos

1. Pakartokite 2 veiksmą antram „MyoWare“jutikliui.

2. Norėdami prie vieno „MaKey MaKey“prijungti kelis jutiklius, jums reikės būdo, kaip kiekvienam iš jų gauti energijos. Mes šiek tiek ištraukėme laidus, lituodami ir priklijuodami, kad sukurtume Y formos jungtį (žr. Paveikslėlį aukščiau), atskirdami vieną išvestį iš „MaKey MaKey“maitinimo šaltinio į du laidus, jungiančius prie „+“maitinimo įvesties kiekviename iš dviejų „MyoWares“.

3. Prijunkite „SIG“lizdus „MyoWare“jutikliuose prie skirtingų A-angų dešinėje „MaKey MaKey“pusėje (toliau pateiktas kodas reiškia, kad naudojate A3 ir A4).

4. Įkelkite dviejų jutiklių eskizą:

/* šis eskizas skaito du „MyoWare“jutiklių signalus ir siunčia klavišų paspaudimą „b“, kai vienas viršija slenkstį, ir „c“, kai kitas viršija slenkstį.* //* nustatykite slenksčius*/const int thresh1 = 1000; const int thresh2 = 1000;/*įvesties priskyrimas MaKey MaKey*/const int sensor1Pin = A3; const int sensor2Pin = A4; #include "Keyboard.h" int LED (9); void setup () {pinMode (LED, OUTPUT); Serial.begin (9600);} void loop () {int sensor1Val = analogRead (sensor1Pin); int sensor2Val = analogRead (sensor2Pin); Serial.print (sensor1Val); Serial.print (","); Serial.println (sensor2Val); if (sensor1Val> = thresh1) {Keyboard.begin (); // Siųsti klavišų paspaudimą cKeyboard.write ('c'); delay (50);} if (sensor2Val> = thresh2) {Keyboard.begin (); // Siųsti klavišų paspaudimą bKeyboard.write ('b'); uždelsimas (50);} else // palaukite 50 ms prieš imdami mėginius iš naujo (50);}

5. Dabar abu raumenų rodmenys turėtų būti matomi nuosekliajame monitoriuje. „Arduino“eskize nustatykite kiekvieną slenkstį atskirai, kaip ir 6 veiksme, tada iš naujo įkelkite eskizą.

Dabar jūsų EMG sistema turės du atskirus įėjimus

Jei jaučiatės šiek tiek laukiniai, galite atlikti panašias procedūras ir pridėti daugiau „MyoWare“jutiklių prie sistemos. Jei jaučiatės TIKRAI laukinis, galite net pridėti prie sistemos dar vieną „MaKey MaKey“. Rekomenduojame eksperimentuoti su šiuo dizainu.

Rekomenduojamas: