Sisällysluettelo:
- Vaihe 1: Materiaalit
- Vaihe 2: Fysiologinen tausta ja piirin tarve
- Vaihe 3: Signaalin käsittely: miksi ja miten?
- Vaihe 4: Kuinka piiri toimii
- Vaihe 5: Komponenttien ja arvojen valitseminen
- Vaihe 6: Piirin rakentaminen
- Vaihe 7: Piirin testaaminen ihmisen kanssa
- Vaihe 8: Arduino -koodi
- Vaihe 9: Tulevat vaiheet
Video: Valojen säätäminen silmillä: 9 vaihetta (kuvilla)
2024 Kirjoittaja: John Day | [email protected]. Viimeksi muokattu: 2024-01-30 09:00
Tällä lukukaudella yliopistossa kävin luokan Instrumentation in Biomedicine, jossa opin perusasiat signaalinkäsittelystä lääketieteellisiin sovelluksiin. Luokan viimeisessä projektissa tiimini työskenteli EOG (elektrookulografia) -tekniikan parissa. Pohjimmiltaan jonkun temppeleihin kiinnitetyt elektrodit lähettävät jännite-eron (sarveiskalvon verkkokalvon dipolin perusteella) piiriin, joka on suunniteltu suodattamaan ja vahvistamaan signaalia. Signaali syötetään ADC: hen (analogia-digitaalimuunnin-minun tapauksessani Arduino Unon ADC) ja sitä käytetään muuttamaan neopikselikorun värejä.
Tämä opetusohjelma on tapa, jolla voin tallentaa oppimani ja kertoa myös tavalliselle lukijalle, kuinka signaalit eristetään ihmiskehosta (joten varoitan: se on täynnä ylimääräisiä yksityiskohtia!). Tätä piiriä voidaan itse asiassa käyttää pienin muutoksin moottorin sydämen sähköimpulsseihin EKG -aaltomuodossa ja paljon muuta! Vaikka se ei todellakaan ole läheskään niin kehittynyt ja viimeistelty kuin koneet, joita löydät sairaalasta, tämä silmäasentoinen lamppu on loistava alku ymmärtämiseen ja vilkaisuun.
Huomautus: En ole signaalinkäsittelyn asiantuntija, joten jos havaitset virheitä tai sinulla on parannusehdotuksia, kerro siitä minulle! Minulla on vielä paljon opittavaa, joten kommentteja arvostetaan. Lisäksi monet artikkelit, joihin viittaan tämän opetusohjelman linkeissä, edellyttävät akateemista pääsyä yliopistolleni; pahoittelut etukäteen niille, joilla ei ole pääsyä.
Vaihe 1: Materiaalit
- protoboard
- vastukset (100, 1k, 10k, 33k, 1M + 0,5M)
- kondensaattori (0.1uF)
- instrumentointivahvistin (INA111 minun tapauksessani, mutta on pari, jonka pitäisi toimia suhteellisen hyvin)
- op -vahvistin (mikä tahansa - minulla oli LM324N)
- neopixel (kaikki toimii, mutta käytin jalokiveä)
- 9V paristot x2
- 9V paristokotelot x2
- kiinteät geelielektrodit (elektrodien valintaa käsitellään vaiheessa 5)
- potentiometri
- eristetty johto
- langanpoistimet
- juotin + juote
- alligaattoripidikkeet (johdot kiinnitettynä - juota tarvittaessa päälle)
- kuuma liima (edestakaisin taipuneiden johtojen vakauttamiseksi)
- Arduino (melkein kaikki mahdolliset teokset, mutta käytin Arduino Unoa)
SUOSITTELEN: oskilloskooppi, yleismittari ja toimintogeneraattori. Koettele ulostulosi sen sijaan, että luottaisit vain vastusarvoihini!
Vaihe 2: Fysiologinen tausta ja piirin tarve
Nopea vastuuvapauslauseke: En ole missään nimessä lääketieteen asiantuntija tällä alalla, mutta olen koonnut ja yksinkertaistanut sen, mitä olen oppinut luokassa/Googlingista alla. Linkit lisäluettavaksi, jos haluat. Lisäksi tämä linkki on ylivoimaisesti paras katsaus aiheeseen, jonka löysin - sisältää vaihtoehtoisia tekniikoita.
EOG (elektro-okulografia) toimii sarveiskalvon verkkokalvon dipolilla. Sarveiskalvo (silmän etuosa) on hieman positiivisesti varautunut ja verkkokalvo (silmän takaosa) on hieman negatiivisesti varautunut. Kun kiinnität elektrodeja temppeleihin ja maadoitat piirisi otsaasi (auttaa vakauttamaan lukemiasi ja pääsemään eroon joistakin 60 Hz: n häiriöistä), voit mitata noin 1-10 mV jännite-eroja vaakasuorille silmien liikkeille (katso yllä oleva kuva). Pystysuuntaisia silmien liikkeitä varten aseta elektrodit silmäsi ylä- ja alapuolelle. Tässä artikkelissa on hyvä lukea kehon vuorovaikutuksesta sähkön kanssa - paljon tietoa ihon impedanssista jne. EOG: itä käytetään yleisesti silmäsairauksien, kuten kaihien, taittovirheiden tai silmänpohjan rappeuman, diagnosointiin. Silmäohjatussa robotiikassa on myös sovelluksia, joissa yksinkertaiset tehtävät voidaan suorittaa silmänräpäyksellä.
Näiden signaalien lukemiseksi, eli elektrodien välisen jännite -eron laskemiseksi, sisällytetään piiriin tärkeä siru, jota kutsutaan instrumentointivahvistimeksi. Tämä instrumenttivahvistin koostuu jännitteenseurannoista, invertoimattomasta vahvistimesta ja differentiaalivahvistimesta. Jos et tiedä paljon op -vahvistimista, lue tämä törmäyskurssille - pohjimmiltaan he ottavat syöttöjännitteen, skaalaavat sen ja antavat tuloksena olevan jännitteen sen virtakiskojen avulla. Kaikkien vastuksien yhdistäminen kunkin vaiheen väliin auttaa toleranssivirheissä: normaalisti vastuksilla on 5-10%: n toleranssi arvoissa, ja tavallinen piiri (ei täysin integroitu instrumentaatiovahvistimeen) luottaisi suuresti CMMR: n tarkkuuteen (katso seuraava vaihe)). Jänniteseurantalaitteet ovat tarkoitettu korkealle tuloimpedanssille (käsitelty yllä olevassa kappaleessa - tärkein potilaan vahingoittumisen estämiseksi), ei -invertoiva vahvistin varmistaa signaalin suuren vahvistuksen (lisää vahvistuksesta seuraavassa vaiheessa) ja differentiaalivahvistin ottaa eron tulojen välillä (vähentää arvot elektrodeista). Nämä on suunniteltu murskaamaan mahdollisimman paljon tavallista kohinaa/häiriötä (lisätietoja signaalinkäsittelystä, katso seuraava vaihe) biolääketieteellisille signaaleille, jotka ovat täynnä vieraita esineitä.
Elektrodit kohtaavat jonkin verran ihon impedanssia, koska ihosi kudokset ja rasva estävät jännitteiden suoran mittaamisen, mikä johtaa signaalin vahvistamiseen ja suodattamiseen. Tässä, tässä ja tässä on joitain artikkeleita, joissa tutkijat ovat yrittäneet mitata tämän impedanssin. Tämä fysiologinen määrä mallinnetaan yleisesti 51 kOhm: n vastukseksi rinnakkain 47 nF: n kondensaattorin kanssa, vaikkakin on monia muunnelmia ja yhdistelmiä. Ihon eri paikoissa voi olla erilaisia impedansseja, varsinkin kun otetaan huomioon viereisen lihaksen eri paksuudet ja määrät. Impedanssi muuttuu myös sen mukaan, kuinka hyvin iho on valmistettu elektrodeille: yleensä suositellaan perusteellista puhdistusta saippualla ja vedellä erinomaisen tarttuvuuden ja sakeuden varmistamiseksi, ja elektrodit ovat jopa erikoisgeelejä, jos todella haluat täydellisyyttä. Yksi keskeinen huomautus on, että impedanssi muuttuu taajuuden mukaan (kondensaattoreiden ominaisuus), joten sinun on tiedettävä signaalin kaistanleveys impedanssin ennustamiseksi. Ja kyllä, impedanssin arvioiminen on tärkeää kohinan sovittamisessa - katso lisätietoja tästä vaiheesta.
Vaihe 3: Signaalin käsittely: miksi ja miten?
Miksi et voi vain käyttää 1-10 mV jännite-eroa välittömänä ulostulona ohjaamaan LED-valoja? Signaalien suodattamiseen ja vahvistamiseen on monia syitä:
-
Monet ADC-laitteet (analogia-digitaalimuuntimet-ota analoginen tulosi ja digitoi ne tietojen lukemista ja tallentamista varten) eivät yksinkertaisesti pysty havaitsemaan niin pieniä muutoksia. Esimerkiksi Arduino Unon ADC on nimenomaan 10-bittinen ADC, jossa on 5 V: n lähtö, mikä tarkoittaa, että se kartoittaa 0-5 V: n tulojännitteitä (alueen ulkopuolella olevat arvot "kiskoivat", mikä tarkoittaa, että alemmat arvot luetaan 0 V: ksi ja suuret arvot luetaan 10 mV on niin pieni tällä 5 V: n alueella, joten jos voit vahvistaa signaalin koko 5 V: n alueelle, pienet muutokset ovat helpommin havaittavissa, koska ne heijastuvat suurempiin määrällisiin muutoksiin (5 mV muutos 10 mV: ksi, toisin kuin 2 V vaihto 4 V: ksi). Ajattele sitä kuin pientä kuvaa tietokoneellasi: pikselit voivat määrittää yksityiskohdat täydellisesti, mutta et voi erottaa muotoja, ellet laajenna kuvaa.
Huomaa, että enemmän bittejä ADC: lle on parempi, koska voit minimoida kvantisointikohinan jatkuvan signaalin muuttamisesta erillisiksi, digitoiduiksi arvoiksi. Jos haluat laskea kuinka monta bittiä tarvitset tulon SNR: n säilyttämiseen ~ 96%, käytä N = SNR (dB)/6 peukalosääntönä. Haluat myös pitää lompakkosi mielessä: jos haluat enemmän paloja, sinun on oltava valmis maksamaan enemmän rahaa
-
Melu ja häiriöt (kohina = satunnaisia esineitä, jotka tekevät signaalistasi rosoisia tasaisen vs. häiriön sijaan = satunnainen, sinimuotoiset artefaktit radioaaltojen viereisistä signaaleista jne.) Vaivaavat kaikkia jokapäiväisestä elämästä mitattuja signaaleja.
- Tunnetuin niistä on 60 Hz: n häiriöt (50 Hz, jos olet Euroopassa ja ei Venäjällä, koska ne käyttävät tasavirtaa, ei vaihtovirtaa pistorasiaan …), jota kutsutaan pistorasioiden sähkömagneettisten kenttien hyötytaajuudeksi. Voimajohdot kuljettavat vaihtovirtajännitettä sähkögeneraattoreista asuinalueille, joissa muuntajat laskevat jännitteen standardiin ~ 120 V amerikkalaisissa pistorasioissa. Vaihtojännite johtaa tähän jatkuvaan 60 Hz: n häiriöhauteeseen ympäristössämme, mikä häiritsee kaikenlaisia signaaleja ja on suodatettava pois.
-
60 Hz: n häiriötä kutsutaan yleisesti yleistilahäiriöksi, koska se näkyy molemmissa tuloissa (+ ja -) käyttövahvistimissa. Nyt operaatiovahvistimissa on yhteisen tilan hylkäyssuhde (CMRR), joka vähentää tavallisen tilan artefakteja, mutta (korjatkaa, jos olen väärässä!) Tämä sopii lähinnä yleistilan meluihin (satunnainen: kohina satunnaisen sijaan: häiriö). Jos haluat päästä eroon 60 Hz: stä, kaistanestosuodattimilla voidaan poistaa selektiivisesti taajuusspektri, mutta silloin olet myös vaarassa poistaa todelliset tiedot. Parhaassa tapauksessa voit käyttää alipäästösuodatinta pitääksesi vain alle 60 Hz: n taajuusalueen, joten kaikki korkeammat taajuudet suodatetaan pois. Näin tein EOG: lle: signaalin odotettu kaistanleveys oli 0-10 Hz (laiminlyömällä nopeat silmänliikkeet-ei halunnut käsitellä sitä yksinkertaistetussa versiossa), joten poistin yli 10 Hz: n taajuudet alipäästösuodattimella.
- 60 Hz voi vioittaa signaalimme kapasitiivisen ja induktiivisen kytkennän kautta. Kapasitiivinen kytkentä (lue kondensaattorit täältä) tapahtuu, kun ilma toimii dielektrisenä verkkovirtasignaalien johtamiseksi viereisten piirien välillä. Induktiivinen kytkentä tulee Faradayn laista, kun käytät virtaa magneettikentässä. Kytkennän voittamiseen on monia temppuja: voit käyttää esimerkiksi maadoitettua kilpiä eräänlaisena Faradayn häkkinä. Johtimien kiertäminen/punominen mahdollisuuksien mukaan pienentää induktiivisen kytkennän tilaa häiritä. Johtojen lyhentämisellä ja piirin kokonaiskoon pienentämisellä on myös sama vaikutus samasta syystä. Akkuvirran turvaaminen op -vahvistinkiskoihin verrattuna pistorasiaan kytkemiseen auttaa myös, koska paristot tarjoavat tasavirtalähteen ilman sinimuotoisia värähtelyjä. Lue paljon lisää täältä!
-
Alipäästösuodattimet poistavat myös paljon melua, koska satunnaista kohinaa edustavat korkeat taajuudet. Monet melut ovat valkoista kohinaa, mikä tarkoittaa, että kohinaa esiintyy kaikilla taajuuksilla, joten signaalin kaistanleveyden rajoittaminen mahdollisimman paljon auttaa rajoittamaan signaalissa olevan kohinan määrää.
Joitakin alipäästösuodattimia kutsutaan vaimentaviksi suodattimiksi, koska ne estävät aliasoinnin: kun sinimuotoiset näytteet otetaan alle, ne voidaan havaita eri taajuudella kuin ne todellisuudessa ovat. Muista aina noudattaa Nyquistin näytteenottoteoriaa (näytesignaalit 2x korkeammalla taajuudella: tarvitset näytteenottotaajuuden> 2 Hz odotetulle 1 Hz: n siniaallolle jne.). Tässä EOG -tapauksessa minun ei tarvinnut huolehtia Nyquistista, koska signaalin odotettiin olevan pääasiassa 10 Hz: n alueella ja Arduino ADC -näytteeni 10 kHz: llä - enemmän kuin tarpeeksi nopeasti kaiken saamiseksi
- On myös pieniä temppuja melun poistamiseksi. Yksi on käyttää tähtimaata, jotta piiriesi kaikilla osilla on täsmälleen sama viite. Muussa tapauksessa se, mitä yksi osa kutsuu "maadoitukseksi", voi poiketa toisesta osasta johtimien vähäisen vastuksen vuoksi, mikä lisää epäjohdonmukaisuuksia. Juottaminen protoboardiin sen sijaan, että kiinnitettäisiin leipälevyihin, vähentää myös melua ja luo turvallisia yhteyksiä, joihin voit luottaa toisin kuin puristussovitus.
On paljon muita tapoja vaimentaa kohinaa ja häiriöitä (katso täältä ja täältä), mutta voit ottaa oppitunnin siitä tai Googlesta saadaksesi lisätietoja: siirrymme todelliseen piiriin!
Vaihe 4: Kuinka piiri toimii
Älä pelkää piirikaaviota: tässä on karkea erittely siitä, miten kaikki toimii: (katso myös edelliseen vaiheeseen selityksiä)
- Vasemmassa reunassa on elektrodit. Yksi on kiinnitetty vasempaan temppeliin, toinen oikeaan temppeliin, ja kolmas elektrodi on maadoitettu otsaan. Tämä maadoitus vakauttaa signaalin, joten ajelehtiminen on vähäisempää ja se myös poistaa osan 60 Hz: n häiriöistä.
- Seuraava on instrumenttivahvistin. Palaa kahteen vaiheeseen taaksepäin selittääksesi, mitä se tekee jännite -eron synnyttämiseksi. Yhtälö vahvistimen vahvistuksen muuttamiseksi on tietolomakkeen sivulla 7 [G = 1+ (50 kOhm/Rg), jossa Rg on kytketty vahvistimen nastoihin 1 ja 8]. Piirilleni säädin 500: n vahvistukseen käyttämällä Rg = 100Ohm.
- Kun instrumenttivahvistin antaa 500-kertaisen vahvistetun jännite-eron, on ensimmäisen asteen RC-alipäästösuodatin, joka koostuu vastuksesta R_filter ja kondensaattorista C_filter. Alipäästösuodatin estää vaimentamisen (ei kuitenkaan minua huolestuta, koska Nyquistin mukaan minun on näytettävä vähintään 20 Hz odotetulla 10 Hz: n kaistanleveydellä, ja Arduino ADC -näytteet 10 kHz: llä-enemmän kuin tarpeeksi) ja vähentää myös melua kaikilla taajuuksilla, joita en tarvitse. RC -järjestelmä toimii, koska kondensaattorit sallivat korkeat taajuudet helposti läpi, mutta estävät alemmat taajuudet (impedanssi Z = 1/(2*pi*f)), ja jännitteenjakajan luominen kondensaattorin poikki tulevalla jännitteellä johtaa suodattimeen, joka sallii vain alemmat taajuudet kautta [3dB -voimakkuuden raja -arvoa säätelee kaava f_c = 1/(2*pi*RC)]. Säätin suodattimen R- ja C -arvot katkaisemaan yli ~ 10 Hz: n signaalit, koska EOG: iden biologista signaalia odotetaan tällä alueella. Alun perin katkaisin 20 Hz: n jälkeen, mutta kokeilun jälkeen 10 Hz toimi yhtä hyvin, joten valitsin pienemmän kaistanleveyden (pienempi kaistanleveys on parempi leikata pois kaikki tarpeeton, joka tapauksessa).
- Tällä suodatetulla signaalilla mittasin lähdön oskilloskoopilla nähdäkseni arvoalueeni vasemmalta ja oikealta (alueeni kaksi ääripäätä). Se sai minut noin 2-4 V: ksi (koska instrumenttivahvistimen vahvistus oli 500x alueella ~ 4-8 mV), kun tavoitteeni on 5 V (Arduino ADC: n koko alue). Tämä alue vaihteli paljon (perustuen siihen, kuinka hyvin henkilö pesi ihon etukäteen jne.), Joten en halunnut saada niin paljon voittoa toisella ei-invertoivalla vahvistimellani. Päädyin säätämään sitä niin, että se olisi vain noin 1,3 (säädä R1 ja R2 piirissä, koska vahvistin on vahvistettu = 1+R2/R1). Sinun täytyy laajentaa omaa ulostuloa ja säätää sieltä, jotta et ylitä 5V! Älä käytä vain vastusarvojani.
- Tämä signaali voidaan nyt syöttää Arduino -analogiseen nastaan lukemiseen, MUTTA Arduino ADC ei hyväksy negatiivisia tuloja! Sinun on siirrettävä signaalia ylöspäin niin, että alue on 0-5 V, kun se on -2,5 -2,5 V. Yksi tapa korjata tämä on liittää piirilevyn maadoitus Arduinon 3,3 V: n nastaan: tämä siirtää signaalia 3,3 V (optimaalisesti yli 2,5 V, mutta se toimii). Alueeni oli todella hankala, joten suunnittelin muuttuvan offset-jännitteen: tällä tavalla voisin pyörittää potentiometriä keskittääksesi alueen 0-5 V: iin. Se on pohjimmiltaan muuttuva jännitteenjakaja, joka käyttää +/- 9V virtakiskoja, jotta voisin liittää piirin maadoituksen mihin tahansa arvoon -9 -9V ja siirtää signaalia ylös tai alas 9V.
Vaihe 5: Komponenttien ja arvojen valitseminen
Kun piiri on selitetty, miten valitsemme kumman (elektrodin, op -vahvistimen) käyttää?
-
Anturina kiinteillä geelielektrodeilla on korkea tuloimpedanssi ja alhainen lähtöimpedanssi: mitä tämä tarkoittaa käytännössä, on se, että virta voi helposti kulkea alavirtaan muuhun piiriin (alhainen lähtöimpedanssi), mutta se olisi huolestuttavaa kulkea ylävirtaan takaisin temppeleihisi (korkea tuloimpedanssi). Tämä estää käyttäjää loukkaantumasta suurista virroista tai jännitteistä muussa piirissä; itse asiassa monissa järjestelmissä on jotain, jota kutsutaan potilaan suojavastukseksi lisäsuojaksi, joka tapauksessa.
-
On olemassa monia erilaisia elektrodityyppejä. Useimmat ihmiset ehdottavat Ag/AgCl -kiinteitä geelielektrodeja käytettäväksi EKG/EOG/jne. Tässä mielessä sinun on etsittävä näiden elektrodien lähderesistanssi (siirry kaksi askelta taaksepäin saadaksesi huomautukseni ihon impedanssista) ja sovittaa se melunkestävyyteen (kohinajännite V/sqrt (Hz) jaettuna kohinavirralla A/sqrt (Hz) - katso op -vahvistimien käyttöohjeet) - näin valitset laitteellesi sopivan instrumentointivahvistimen. Tätä kutsutaan kohinan sovittamiseksi, ja selitykset siitä, miksi lähteen vastus Rs ja melunkestävyys Rn toimivat, löytyvät verkossa kuten täältä. Valitsemaani INA111 -laitteeseen Rn voidaan laskea käyttämällä datalehden kohinajännitettä ja kohinavirtaa (kuvakaappaus yllä).
-
Elektrodin suorituskykyä arvioidaan lukuisissa artikkeleissa, eikä kukaan elektrodi ole paras kaikkiin tarkoituksiin: kokeile esimerkiksi täällä. Impedanssi muuttuu myös eri kaistanleveyksille, kuten op -vahvistimen tietolomakkeissa näkyy (joillakin tietolomakkeilla on käyrät tai taulukot eri taajuuksilla). Tee tutkimus, mutta muista pitää lompakkosi mielessä. On mukava tietää, mitkä elektrodit/op -vahvistimet ovat parhaita, mutta siitä ei ole hyötyä, jos sinulla ei ole siihen varaa. Tarvitset ~ 50 elektrodia ainakin testaukseen, ei vain 3 kertakäyttöön.
-
Optimaalisen kohinan vastaavuuden varmistamiseksi Rn ~ = Rs: haluat myös, että kohinajännite * kohinavirta (Pn) on mahdollisimman pieni. Tätä pidetään tärkeämpänä kuin Rn ~ = Rs: n tekemistä, koska voit säätää Rs ja Rn tarvittaessa käyttämällä muuntajia.
Varoituksia muuntajilla (korjatkaa jos olen väärässä): ne voivat olla hieman tilaa vieviä eivätkä siksi optimaalisia pienille laitteille. Ne myös keräävät lämpöä, joten jäähdytyselementit tai erinomainen ilmanvaihto ovat tarpeen
- Kohinat vastaavat vain ensimmäistä ensimmäistä vahvistinta; toinen vahvistin ei vaikuta niin paljon, joten kaikki op -vahvistimet tekevät.
-
-
-
Vaihe 6: Piirin rakentaminen
Käytä piiriä yllä olevan fritsointikaavion avulla (toinen kappale hahmottaa, mihin kukin osa viittaa edellisen vaiheen piirikaaviossa). Jos tarvitset apua kaavion merkkivalojen tunnistamiseen, käytä tätä vastuksen värikoodin laskinta, mutta mittarivahvistimen Rg on 100 ohmia, R_suodatin on 1,5 millimoimia, C_suodatin on 0,1 uF, ei -invertoivan vahvistimen R1 on 10 kOhm, R2 on 33 kOhm, ja potentiometrin vastus on 1 kOhm (potentiometri vaihtelee välillä 0 - 20 kOhm). Muista muuttaa vastusarvoja tarpeen mukaan voittojen säätämiseksi!
Edit: offset -maa -osassa on virhe. Poista vasen musta johto. Vastus tulee liittää punaisella johdolla virtakiskoon kuvan mukaisesti, mutta myös potentiometrin toiseen nastaan, ei ensimmäiseen. Potentiometrin ensimmäinen nasta on kytkettävä Arduinon 5 V: n napaan. Oranssi johto, joka on offset -maa, on kytkettävä toiseen nastaan, ei ensimmäiseen.
Olen keskustellut paljon offset -maasta. Kaaviosta näet, että Arduinon maa näkyy yhdistettynä leipälevyn maahan. Siinä tilanteessa sinun ei tarvitse muuttaa maata. Jos signaalisi on kantaman ulkopuolella ja sinun on siirrettävä maastoa, yritä ensin kytkeä Arduino -maadoitus Arduinon 3,3 V: n napaan ja katso signaalia. Muussa tapauksessa yritä kytkeä oranssi johto potentiometrissä (offset -maa) Arduinon GND -nastaan.
TURVALLISUUSHUOMAUTUS: ÄLÄ pidä paristoja juotettaessa äläkä laita tai juota paristoja taaksepäin. Piirisi alkaa tupakoida, kondensaattorit räjähtää ja myös leipälauta voi vaurioitua. Käytä peukalosääntönä vain paristoja, kun haluat käyttää piiriä; Muussa tapauksessa poista ne (myös kääntökytkimen lisääminen paristojen irrottamiseksi helposti olisi hyvä idea).
Huomaa, että sinun tulee rakentaa piiri pala kerrallaan (tarkista jokainen vaihe!) Ja leipälevylle ennen juottamista protoboardiin. Ensimmäinen vaihe, joka on tarkistettava, on instrumenttivahvistin: kiinnitä kaikki kiskot (juotos paristopidikkeisiin), Rg jne. Ja käytä oskilloskooppia ulostulonapissa. Käytä aluksi funktiogeneraattoria, jossa on 1 Hz: n siniaalto ja 5 mV: n amplitudi (tai alin generaattorisi). Tämä on vain tarkistaa, että instrumenttivahvistin toimii oikein ja että Rg tarjoaa tavoitevahvistuksen.
Tarkista seuraavaksi alipäästösuodatin. Lisää piirin osa ja tarkista aaltomuodosi: sen pitäisi näyttää täsmälleen samalta, mutta vähemmän kohinaa (rosoinen - katso kaksi viimeistä kuvaa yllä). Mittaamme lopputuloksesi oskilloskoopilla elektrodillasi funktiogeneraattorin sijaan…
Vaihe 7: Piirin testaaminen ihmisen kanssa
Aseta elektrodit jälleen vasempaan ja oikeaan temppeliin ja kiinnitä maadoitusjohto otsaasi olevaan elektrodiin. Vasta sen jälkeen lisää paristot - jos pistelyä ilmenee, poista HETI ja tarkista liitännät! Tarkista nyt arvoalueesi, kun katsot vasemmalle ja oikealle, ja säädä ei-invertoivan vahvistimen R1/R2, kuten kaksi askelta sitten selitettiin-muista, että tavoite on 5 V: n alue! Katso yllä olevista kuvista muistiinpanoja siitä, mitä kannattaa varoa.
Kun olet tyytyväinen kaikkiin vastuksen arvoihin, juota kaikki protoboardiin. Juotos ei ole ehdottoman välttämätöntä, mutta se tarjoaa enemmän vakautta yksinkertaisiin puristusliitoksiin verrattuna ja poistaa epävarmuuden siitä, että piiri ei toimi yksinkertaisesti siksi, ettet painanut niitä leipälautaan tarpeeksi kovaa.
Vaihe 8: Arduino -koodi
Kaikki koodit on liitetty tämän vaiheen loppuun!
Nyt kun sinulla on 5 V: n alue, sinun on varmistettava, että se on 0–5 V: n sisällä -1–4 V: n sijasta. Joko kiinnitä maadoitus Arduinon 3,3 V: n nastaan tai liitä offset -maadoitusjännite (oranssi johto yllä) maadoituskiskoon ja kytke sitten johdin maadoituskiskosta Arduinon GND-nastaan (tämä siirtää signaalia ylös tai alas niin, että olet 0–5 V: n alueella). Sinun täytyy leikkiä: älä unohda laajentaa tuotostasi aina, kun olet epävarma!
Nyt kalibrointiin: haluat valon muuttavan värejä eri silmien asentoihin (katse vasemmalle vs. ei niin pitkälle vasemmalle..). Tätä varten tarvitset arvoja ja alueita: suorita EOG-kalibrointiluvut.ino Arduinolle, kun kaikki on kytketty oikein (viimeistele liitännät Arduinoon ja neopikseliin fritrauskaavioni mukaisesti). Ei ole välttämätöntä, mutta suorita myös minulla oleva bioe.py -koodi - tämä lähettää tekstitiedoston työpöydällesi, jotta voit tallentaa kaikki arvot vasemmalle tai oikealle (python -koodi on mukautettu tästä esimerkistä). Näin tein katsomalla vasemmalle 8 lyöntiä, sitten oikealle, sitten ylös, sitten alas ja toistamalla myöhemmin keskimäärin (katso output_2.pdf yhdestä säilyttämästäni lokista). Paina ctrl+C pakottaaksesi lopettamaan, kun olet tyytyväinen. Näitä arvoja käyttämällä voit sitten säätää animaatioiden alueita BioE101_EOG-neopixel.ino -koodissani. Minulla oli sateenkaari -animaatio, kun katsoin suoraan eteenpäin, sininen vasemmalle, vihreä lievälle vasemmalle, violetti lievälle oikealle ja punainen oikealle.
Vaihe 9: Tulevat vaiheet
Voila; jotain, jota voit hallita vain silmilläsi. On paljon optimoitavaa ennen kuin se pääsee sairaalaan, mutta se on toinen päivä: peruskäsitteet ovat ainakin nyt helpompi ymmärtää. Yksi asia, jonka haluaisin palata ja muuttaa, on säätää vahvistukseni 500: een instrumenttivahvistimelle: taaksepäin katsottuna se oli luultavasti 0 paljon, koska signaalini jälkeenpäin oli jo 2-4 V ja minulla oli vaikeuksia käyttää ei-invertoivaa vahvistin säätääkseni kantamaani täydellisesti …
On vaikea saada johdonmukaisuutta, koska signaali muuttuu PALJON eri olosuhteissa:
- eri henkilö
- valaistusolosuhteet
- ihon valmistelu (geelit, pesu jne.)
mutta siitä huolimatta olen varsin tyytyväinen viimeiseen videotodistukseeni suorituskyvystä (otettu kello 3, koska silloin kaikki alkaa maagisesti toimia).
Tiedän, että suuri osa tästä opetusohjelmasta voi tuntua hämmentävältä (kyllä, oppimiskäyrä oli myös minulle vaikea), joten kysy rohkeasti alla olevia kysymyksiä, niin yritän parhaani mukaan vastata. Nauttia!
Toinen sija koskemattomassa haasteessa
Suositeltava:
Attiny85 samanaikainen ohjelmointi tai kurpitsa monivärisillä silmillä: 7 vaihetta
Attiny85 samanaikainen ohjelmointi tai kurpitsa, jossa on moniväriset silmät: Tämä projekti näyttää, kuinka ohjataan kahta 10 mm: n kolmiväristä yhteistä anodi-LEDiä (Pumpkin Halloween Glitterin moniväriset silmät) Attiny85-sirulla. Hankkeen tavoitteena on esitellä lukija samanaikaisen ohjelmoinnin taiteeseen ja Adam D
King Kong -maski animatronisilla silmillä: 4 vaihetta (kuvilla)
King Kong Mask Animatronic Eyes: Tässä ohjeessa näytetään kuinka tehdä maski realistisilla liikkuvilla silmillä.Tämä projekti vaatii seuraavat taidot, joita ei käsitellä yksityiskohtaisesti: - Arduino -asennus, ohjelmointi ja luonnosten lataaminen - Juotos - 3D -tulostus
Luuranko himmeillä punaisilla silmillä: 16 vaihetta (kuvilla)
Luuranko himmeillä punaisilla silmillä: Kuka ei rakasta hyvää luurankoa Halloweenille? Tämä opas näyttää, kuinka koota pari hehkuvaa punaista silmää luurankoasi (tai vain kalloa) varten, jotka himmentävät ja kirkastavat ja tarjoavat kammottavan vaikutuksen temppusi tai hoitajillesi ja muille
EL Wire Fish LED -silmillä: 13 vaihetta (kuvilla)
EL -lankakalat LED -silmillä: Tervetuloa Hei ja kiitos ensimmäisestä Instructable -ohjelmasta. Olen innoissani voidessani jakaa vihdoin yhden lempiprojektistani, hehkuvan kalan luuranon, jossa on väriä vaihtavat silmät ja silinterin. Tässä projektissa yhdistyvät EL -lanka ja osoitettavat LEDit
Animatronic -naamio liikkuvilla silmillä: 13 vaihetta (kuvilla)
Animatronic -naamio liikkuvilla silmillä: Hei! Koulutehtävässä meidän oli löydettävä Arduino. Joten päätin tehdä animatronic -naamion. Se on enemmän kuin seinäkoriste. Sen koko tehtävä on tehdä ihmiset hieman epämukaviksi, koska silmät liikkuvat. Se on saanut inspiraationsa