Indholdsfortegnelse:
- Trin 1: Design trådløst modul
- Trin 2: Emballage og skitse
- Trin 3: Basestation
- Trin 4: Skitse
- Trin 5: Konklusioner
Video: EEG AD8232 fase 2: 5 trin (med billeder)
2024 Forfatter: John Day | [email protected]. Sidst ændret: 2024-01-30 08:25
Så denne Lazy Old Geek (L. O. G.) byggede et EEG:
www.instructables.com/id/EEG-AD8232-Phase-…
Det ser ud til at fungere okay, men en af de ting, jeg ikke kan lide ved det, er at være bundet til en computer. Jeg bruger det som en undskyldning for ikke at lave nogen test. En anden bekymring, jeg har, er, at det ser ud til, at jeg får noget støj fra netledningen i mit signal.
Under nogle tidligere tests så jeg en mystisk 40Hz stigning, der ser ud til at gå væk, når jeg afbryder USB'en og kører den på batteri. Se billeder.
Anyway, jeg testede med HC05 og HC06 Bluetooth -moduler og kunne få dem til at fungere:
www.instructables.com/id/OldMan-and-Blueto…
Som nævnt frigav lingib sin instruktør, Eib Monitor:
www.instructables.com/id/Mind-Control-3-EE…
Han skriver meget bedre kode end jeg og udviklede også en behandlingskode, så dette projekt er baseret på hans EEG Monitor. I fase 2 vil jeg lave en batteridrevet EEG-skærm. (Vil prøve at deltage i en batteridrevet konkurrence)
Trin 1: Design trådløst modul
Til mikrokontrolleren vil jeg bruge en 3.3V Micro Pro. Denne Arduino er en 3.3V enhed, så den er kompatibel med AD8232. Sparkfun -versionen bruger en 3.3V MIC5219 spændingsregulator.
For et batteri bruger jeg et gammelt genopladeligt batteri, jeg tilfældigvis har. Dette er et genopladeligt litiumbatteri, der sandsynligvis er designet til en smartphone.
Som diskuteret senere fandt jeg ud af, at AliExpress Micro Pro bruger en XC6204 spændingsregulator i stedet for MIC5219.
Så mit design er lidt grænseoverskridende. Litiumbatterier er typisk 3,5 til 4,2V afhængigt af opladningen. XC6204 hævder et typisk frafald på 200mV med en belastning på op til 100mA. Så værst tænkelige scenarie ved fuld belastning med 3,5V batteri, regulatoren ville output ville være omkring 3,3V. Dette burde være fint, men vær bare opmærksom på mulige problemer.
Andre komponenter er den modificerede AD8232 fra fase 1 og et HC05 modificeret til 3.3V Bluetooth -modul som diskuteret i:
www.instructables.com/id/OldMan-and-Blueto…
For nemheds skyld brugte jeg Eagle Cadsoft og lavede et PCB ved hjælp af denne metode:
www.instructables.com/id/Vinyl-Sticker-PCB…
Skematiske og Eagle -filer er vedhæftet.
Jeg målte strømforbruget: det var 58mA. På et tidspunkt havde jeg testet dette batteri for en kapacitet på 1750mA timer, hvilket giver en driftstid på omkring 30 timer på en opladning.
Til batteristikket brugte jeg et JST2.0 2pin stik, så det passede med min Adafruit M4 Express. Mange af disse batterier har tre kontakter, men måler bare med et multimeter til cirka 4V og lod ledningerne til batteriet. Jeg brugte varm lim til at forsegle og understøtte forbindelsen.
ADVARSEL: Nogle JST2.0 -stik har de røde og sorte ledninger vendt fra Adafruit.
Jeg tilføjede også et JST2.0 -stik til en litiumbatterioplader. Se billede.
Trin 2: Emballage og skitse
For at være nyttig for mig skal min EEG være bærbar. Jeg havde en lille pose til et andet projekt. Jeg syede lidt velcro på bagsiden. Jeg syede en armbåndsrem med den anden velcro og noget elastik, målt til at passe til min arm. EEG går ind i lommen og fastgøres til armbåndet. Se billeder.
For at gøre pandebåndet lettere at bruge (i stedet for lodning) tog jeg en 3,5 mm audiokabelforlænger, skar den ene ende af og sluttede den til hovedbåndssensorerne og øret. Dette tilsluttes AD8232 -modulet.
TIP: Jeg antog, at stikket ville være som standard lydkabler med venstre på spidsen, højre i midten og bunden. Det er ikke korrekt for AD8232, så jeg var nødt til at tilslutte det igen, se billede.
Den originale HC05 har stifter, der kommer parallelt med printkortet. For at gøre det fladere rettede jeg dem, så de var i vinkel på printet, se billede. Selvom de ujævne stifter ikke er tilsigtet, skaber det en bedre elektrisk forbindelse.
Det næste billede viser den samlede trådløse EEG, derefter hvordan den vil gå ind i lommen, som vil velcro til armbåndet.
Et par billeder viser, hvordan det hele hænger sammen.
Arduino -skitse er vedhæftet, fix_FFT_EEG_wireless.ino
Dette er baseret på lingib -kode med et par linjer tilføjet til HC05 -kommunikation.
Trin 3: Basestation
Så denne EEG Wireless fungerer med en af mine CP2102-HC06-adaptere for at vise data i realtid på en pc ved hjælp af Processing from:
www.instructables.com/id/Mind-Control-3-EE…
Mine tanker: så hjernebølger repræsenterer, hvad din hjerne gør. Så hvis jeg ser på, hvad mine hjernebølger laver på computerskærmen, vil processen med at se på skærmen og tænke over det påvirke min EEG. Så jeg ønskede muligheden for at optage min EEG uden at skulle se dem. Jeg besluttede at registrere tidsstemplede data til et micro SD -kort, så jeg kan foretage offlineanalyse.
Konceptet er f.eks., At hvis jeg tester, hvordan nogle binaural beats påvirker mine hjernebølger, kan jeg skrive ned, hvornår og hvilke beats jeg lytter til og senere se på mine EEG -data for at se, om der er nogle effekter under og efter den periode.
Dette vil bruge en basestation, dybest set en anden Micro Pro med en HC06 til at modtage data fra den trådløse EEG, en DS3231 RTC til at registrere tiden og en microSD-kortadapter til at gemme de tidsstemplede data til et microSD-kort. Dette er stort set ligesom mit IR -termometer:
www.instructables.com/id/IR-Thermometer-fo…
Faktisk vil jeg forlade muligheden for at bruge et IR -termometer og DHT22 (temp og fugtighed) på printkortet.
Her er de vigtigste komponenter:
3.3V Micro Pro Arduino
DS3231 RTC (ændret)
(fremtidig tilføjelse DHT22 temperatur/RH)
HC06
(fremtidig tilføjelse MLX90614 IR Temp Sensor)
5V microSD -kortadapter
Strømforbrug:
Da der er knyttet mange sensorer til denne Micro Pro, vil jeg være lidt opmærksom på strømmen.
Spændingsregulatoren på Micro Pro driver alle sensorer.
(Sparkfun Micro Pro har en MIC5219 3.3v regulator på den, der kan levere 500mA strøm.)
Aliexpress 3.3v Micro Pro, jeg købte, har tilsyneladende en Torex XC6204B -regulator. Dette antydes af markeringen, jeg kan næsten ikke læse, men det ligner 4B2X.
4B står for XC6204B, de 2 betyder 3.3V output.
Så vidt jeg kan se afgiver XC6204B maksimalt 150mA (meget mindre end MIC5219 500mA). Alligevel.
Jeg kan ikke finde nogen data om inaktiv strømtrækning af 3.3V Micro Pro. Så jeg besluttede at måle nogle:
3.3V Pro Micro 11.2mA
3.3V L. O. G. Binaural slår 20mA
3.3V Trådløs EEG 58mA
DS3231 databladets maksimale strøm ved 3V er 200uA eller 0,2mA.
DHT22 databladets maksimale strøm er 2,5mA.
HC06 er 8,5mA i aktiv tilstand (40mA i parringstilstand)
MLX90614 databladet er jeg ikke sikker på at ligner maksimal strøm er 52mA.
Så at tilføje dem alle er omkring 85mA, hvilket ikke er meget mindre end 150mA. Men det burde være i orden.
MicroSD -kortadapteren drives af RAW pin 5V.
Jeg har vedhæftet en skematisk oversigt over basestationen. Protoboardet, jeg bruger, og skitsen, der skal følges, inkluderer ikke DHT22- eller IR -termometeret.
Trin 4: Skitse
Grundlæggende modtager skitsen de data, der sendes af den trådløse EEG HC05 via den bundne HC06, den sender dataene ud af USB -porten i samme format som den trådløse EEG, så den kan læses af EEG_Monitor_2 (Processing) og vises.
Det henter også tid og dato fra DS3231 RTC og tidsstempler dataene og skriver det til et microSD -kort i CSV -format (kommaadskilte værdier).
PROBLEM1: Den trådløse EEG sendte Bluetooth -data til min HC06 ved 115, 200 baud. Tilsyneladende kan min HC06 ikke kommunikere korrekt med den hastighed, da den så skrald. Nå, jeg legede med det, fik det endelig til at fungere ved at indstille både HC05 og HC06 til 19, 200 baud.
PROBLEM2: Sommertid har været et problem for mig. Jeg stødte på følgende af JChristensen:
forum.arduino.cc/index.php?topic=96891.0
github.com/JChristensen/Timezone
For at bruge dette skal du først indstille RTC til UTC (Coordinated Universal Time), det er tid i Greenwich, England. Nå, jeg vidste ikke, hvordan jeg skulle gøre det, men fandt denne artikel:
www.justavapor.com/archives/2482
Omskriv det til bjergtid (vedhæftet) UTCtoRTC.ino
Dette indstiller DS3231 til UTC -tid, 6 timer senere end bjergtid.
Derefter indarbejdede jeg tidszonen i min Skitse. For at være ærlig, har jeg ikke testet det, så jeg går ud fra, at det virker.
PROBLEM3: Et af problemerne med Bluetooth (og de fleste andre serielle kommunikationer) er, at det er asynkront. Det betyder, at du ikke rigtig ved, hvornår dataene startede, og du kiggede muligvis midt i en datastrøm.
Så det jeg gjorde var at starte hver pakke med data med et '$' og lede efter det i min basestation. En bedre måde at gøre dette på kaldes håndtryk, hvor afsenderen sender nogle data ud og derefter venter på, at modtageren sender en kvittering for modtagelse tilbage. Til dette formål er jeg ikke så bekymret, hvis jeg går glip af en pakke en gang imellem.
Skitse er vedhæftet, basecode.ino
Trin 5: Konklusioner
Desværre har jeg siden jeg startede dette projekt mistet min evne til virkelig at fokusere på projekter. Jeg ville foretage nogle egentlige test med denne EEG, især med binaural beats. Måske en dag.
Men jeg synes, jeg har givet nok information til andre til at bygge dette projekt.
Jeg var i gang med at udvikle nogle 5 båndskoder. Ideen var at vise de fem hjernebølgebånd, delta, theta, alfa, beta og gamma. Jeg tror, at basebåndskitsen fungerer, jeg tror ikke, at fix_FFT fungerer til behandling, men jeg har vedhæftet den til dem, der kunne være interesseret.
Anbefalede:
Sådan gør du: Installation af Raspberry PI 4 Headless (VNC) med Rpi-imager og billeder: 7 trin (med billeder)
Sådan gør du: Installation af Raspberry PI 4 Headless (VNC) med Rpi-imager og billeder: Jeg planlægger at bruge denne Rapsberry PI i en masse sjove projekter tilbage i min blog. Tjek det gerne ud. Jeg ville tilbage til at bruge min Raspberry PI, men jeg havde ikke et tastatur eller en mus på min nye placering. Det var et stykke tid siden jeg konfigurerede en hindbær
Sådan adskilles en computer med nemme trin og billeder: 13 trin (med billeder)
Sådan adskilles en computer med nemme trin og billeder: Dette er en instruktion om, hvordan du adskiller en pc. De fleste af de grundlæggende komponenter er modulopbyggede og nemme at fjerne. Det er dog vigtigt, at du er organiseret omkring det. Dette hjælper med at forhindre dig i at miste dele og også ved at lave genmonteringen til
Sådan styrer du husholdningsapparater med fjernsyn med fjernbetjening med timerfunktion: 7 trin (med billeder)
Sådan styrer du husholdningsapparater med fjernsyn med fjernbetjening med timerfunktion: Selv efter 25 års introduktion til forbrugermarkedet er infrarød kommunikation stadig meget relevant i de seneste dage. Uanset om det er dit 55 tommer 4K -fjernsyn eller dit billydsystem, har alt brug for en IR -fjernbetjening for at reagere på vores
Installation af et USB -tastatur i en OLPC XO -bærbar, fase I: 8 trin (med billeder)
Installation af et USB -tastatur i en OLPC XO -bærbar, fase I: Jeg ved ikke om dig, men jeg kan helt sikkert fortælle silikone fra den ægte vare. Sådan slipper du geléen og klemmer et normalt USB-tastatur med keycaps-and-springs ind i en OLPC XO-bærbar computer. Dette er " fase I " - få tastaturet ind i l
Afslutning af jobbet: Installation af et USB -tastatur i en OLPC XO -bærbar, fase II: 6 trin
Afslutning af jobbet: Installation af et USB-tastatur i en OLPC XO-bærbar, fase II: For en fyr, der har brugt det meste af sit liv med fingrene forbundet til hjemmrækken, har tilføjelse af dette USB-tastatur, som jeg virkelig kan trykke på, lavet en stor forskel på brugervenligheden af XO. Dette er " fase II " - sætte kablet i