Sisukord:
- Samm: tarvikud
- Samm: seadistage Raspberry Pi
- Samm: ühendage Neurosky peakomplekt
- Samm: ühendage USB -veebikaamera W/avage CV
- Samm: ühendage Arduino
- 6. samm: pange see kõik kokku
- 7. samm: täiustamine ja arendamine
Video: Biofeedback Cinema: 7 sammu
2024 Autor: John Day | [email protected]. Viimati modifitseeritud: 2024-01-30 08:49
Projekti autor
Jessica Ann
Kaasautorid
- Gregory Hough
- Salud Lopez
- Pedro Peira
Umbes
Eksperimentaalne videosalvestussüsteem, mis ühendab osaleja aju kaamera funktsioonidega Neurosky Mindwave EEG lugeja peakomplekti kaudu. Biofeedback Cinema süsteem töötab traditsioonilise operaatori asemel, andes kompositsiooni vahendamise osalejale endale kohandatud BRAIN to CAMERA liidese kaudu. Projekt töötati välja koostöös seminaril osalejate Gregory Hough, Salud Lopezi ja Pedro Peiraga. Töötoa tulemustega saate tutvuda aadressil:
Prototüübi konfiguratsioon
Biofeedback Cinema süsteem sobib paljudele potentsiaalsetele rakendustele. Selle juhise jaoks oleme koostanud süsteemi demo, mis vaatab osaleja fookuse/tähelepanu taset (üks täisarv) ja teisendab selle kaamera asendisse (panoraami ja kallutamise kaudu) ja kaamera fookusesse (sisemiselt OpenCV kaudu). Seda kõike võimaldab bluetooth -ühendus Neurosky EEG lugeja peakomplekti ja Raspberry Pi vahel.
Raspberry Pi on väike arvuti, mis on varustatud veebikaamera ja skriptidega (saadaval allpool), mis ühendavad osaleja ajutegevuse kaamera seadete ja kaamera asukohaga. Kaamera dünaamiline asukoht on võimalik tänu Arduino mikrokontrollerile, mis võtab vastu Raspberry Pi signaale. Ootame edasist arengut, kuna eesmärk on kaasata täiendavad ajulainete parameetrid (pilgutamisega seotud sagedused jne) ja kaamera funktsioonid (nt toon, küllastus, heledus jne).
Allpool on juhised oma Biofeedback Cinema süsteemi loomiseks.
Head katsetamist
Samm: tarvikud
Kõik, mida vajate oma Biofeedback Cinema prototüübi loomiseks, on loetletud allpool.
- Neurosky Mindwave Mobile EEG peakomplekt
-
Vaarika Pi B+ (b+ on parem, rohkem USB -porte, kuid ka B -mudel sobib hästi, kui teil on USB -jaotur).
- Raspberry Pi toiteadapter või aku
- Wifi -dongle või Ethernet -ühendus (vajalik ainult seadistamise ajal)
- Bluetooth -dongle vt ühilduvate donglite kohta wikist
- SD -kaart (vähemalt 8 GB) koos NOOBS -iga.
-
Arduino Iga plaat sobib, kasutades selles juhendis Unot. Samuti pange tähele, et saate lihtsalt kasutada Pi sisendit/väljundit.
- Arduino toiteadapter või aku
- A-B USB-kaabel
- USB veebikaamera
- Mini Pan-Tilt komplekt
-
Monitor koos HDMI -sisendiga Või kasutage VNC -d, et oma arvutit oma arvutist kaugjuhtida [õpetus siin]
HDMI kaabel
- USB -klaviatuur ja -hiir soovitavad kasutada USB -portide minimeerimiseks Bluetoothi klaviatuuri ja hiirt.
Samm: seadistage Raspberry Pi
1. Riistvara seadistamine
Ühendage oma Raspberry Pi -ga klaviatuur, hiir, bluetooth -dongle, wifi -dongle (või Ethernet), veebikaamera, monitor HDMI -kaabli kaudu ja toide
2. Seadistage operatsioonisüsteem
- Lülitage toide sisse ja teie Pi peaks käivituma. Installige Rasbpian OS, juhised siit:
- Kui käivitatud ja Raspian on õigesti installitud, peaksite nägema kodust töölauda [Pilt ülal].
VIHJED:
- Kui töölaua kuvasuhe on välja lülitatud, proovige oma Raspberry Pi taaskäivitada. Kui see on endiselt välja lülitatud, vaadake siit kuvasuhte käsitsi värskendamiseks.
- Kui avate tekstiredaktori ja klaviatuuri erimärgid on valesti kaardistatud, vaadake klaviatuuri konfiguratsiooni värskendamiseks siit.
- Testige oma Interneti -ühendust (seda vajate teekide installimiseks seadistamise ajal). Siit leiate abi WiFi seadistamiseks.
Samm: ühendage Neurosky peakomplekt
1. Bluetoothi seadistamine
Enne kui Pi saab Neuroskyga ühenduse luua, peame Bluetoothi seadistama:
Avage töölaual "LXTerminal" (edaspidi nimetatakse seda terminaliks). Puuduste kõrvaldamiseks ja värskendamiseks käivitage see käsk:
$ sudo apt-get update
Installige bluetooth selle käsuga:
$ sudo apt-get install bluetooth
Installige mugav töölaua tööriistariba Bluetoothi utiliit:
$ sudo apt-get install -y bluetooth bluez-utils blueman
Taaskäivitage Pi terminalist:
$ sudo taaskäivitamine
2. Testige Bluetooth -ühendust
- Lülitage Neurosky peakomplekt sisse
- Seadmete seadmete otsimisel tehke järgmist.
hcitooli skannimine
Mindwave peakomplekt tuleks loetleda, võtke arvesse peakomplekti MAC -aadressi [pilt ülal]
3. Installige Neurosky teegid
Nüüd oleme valmis installima Neurosky Pythoni teegid ja alustama selle andmevoo valimist raamatukogu testiskripti abil:
Installige terminalist utiliit github:
sudo apt-get install git-core
Kloonige githubi hoidla Neurosky Pythoni raamatukoguga:
sudo git kloon
Peame värskendama faili MindwaveMobileRawReader.py teie peakomplekti MAC -aadressiga. Teadmiseks: failinimed on tõstutundlikud
sudo nano /home/pi/python-mindwave-mobile/MindwaveMobileRawReader.py
- Värskendage failis loetletud MAC -aadressi. Lõpetamiseks Ctrl-X, salvestamiseks Y, väljumiseks Enter.
- Siduge Neurosky ja Pi sidumiseks ja lubage automaatühenduse funktsioon, kui teil palutakse PIN -koodi kasutada "0000":
$ sudo bluez-simple-agent hci0 XX: XX: XX: XX: XX: XX
$ sudo bluez-test-device usaldusväärne XX: XX: XX: XX: XX: XX jah
Pythoni Bluetoothi teegi installimine:
sudo apt-get install python-bluez
Käivitage raamatukogu testiskript, et Pi saaks andmevoogu eelvaate vaadata. Te peaksite nägema andmete voogesitust [pilt ülal]:
$ sudo python /home/pi/python-mindwave-mobile/read_mindwave_mobile.py
Samm: ühendage USB -veebikaamera W/avage CV
1. Installige OpenCV
Terminalist:
$ sudo apt-get install libopencv-dev python-opencv
Kui olete lõpetanud, jätkake:
$ sudo apt -get -f install
Hea mõõtmiseks:
$ sudo apt-get install libopencv-dev python-opencv
Testige installimist, proovides importida kogu:
$ python
> import cv2
2. Testige OpenCV -d Pythonis USB -veebikaamera abil
- Avage töölaual "IDLE" (ärge avage IDLE3!)
- Valige menüüst Fail Uus aken. Kopeerige meie Cv-Blur-Test skript uude aknasse ja salvestage. Skript on saadaval siin:
- Valige menüüst Käivita Käivita moodul (või vajutage klahvi F5). Alustamiseks võib kuluda mõni sekund, kuid veebikaamera reaalajas vooga peaks ilmuma väike kaader ja video peaks olema udune. Palju õnne, OpenCV installiti ja töötab teie veebikaameraga edukalt [Pilt ülal].
Samm: ühendage Arduino
1. Laadige alla Arduino IDE
Terminalist:
sudo apt-get install arduino
2. Ühendage Arduino & Load Sketch
- Ühendage arduino A-B USB-kaabli abil Pi-ga.
- Minge töölaua käivitusmenüüst elektroonikale ja avage Arduino IDE. Kopeerige meie arduino-serial-pi visand IDE-sse [link allpool]. See on väga lihtne eskiis, mis liigutab servomootoreid jada kaudu tuleva sisendi põhjal. Saadame andmed jada kaudu ajulainete väljundi põhjal, kasutades Pythoni visandit viimases etapis, kui kõik kokku paneme.
Arduino-serial-pi visand võrgus siin:
Minge Arduino IDE -s menüüsse Tööriistad, valige jadaport ja valige loendist Arduino port, tõenäoliselt midagi sellist /dev /ttyACM0. Märkige sadam üles
3. Keelake jadakonsool
Laadige alla ja käivitage skript jadakonsooli keelamiseks, et USB -jadaühendus saaks sujuvalt toimida:
$ wget
/alamode-setup.tar.gz?raw=true -O alamode-setup.tar.gz
$ tar -xvzf alamode -setup.tar.gz
$ cd alamode seadistamine
$ sudo./setup
$ sudo taaskäivitamine
FYI:
Kui kasutate B+, võib servode toetamiseks olla piisavalt sisend-/väljundvõimalusi (vaadake siin GPIO seadistamiseks ja kasutamiseks). Siiski olen huvitatud lisakomponentide lisamisest tulevaste aju-elektroonika katsetuste jaoks. Seega tagab esialgse prototüübi seadistamine arduino abil palju elektroonilisi võimalusi.
6. samm: pange see kõik kokku
1. Lõplik Pythoni skript
Enne lõpliku pythoni skripti lisamist kausta "python-mindwave-mobile" peame muutma kausta õigusi. Terminalist:
$ chmod a = rwx/home/pi/python-mindwave-mobile
- Avage IDLE ja käivitage meie viimane Pythoni skript, mis on saadaval veebis siin: https://github.com/PrivateHQ/biofeedback-cinema/ Veenduge, et see asub kaustas python-mindwave-mobile. FYI: Peate värskendama meie Pythoni skripti oma tegeliku Arduino pordi aadressiga.
- Selle skripti käivitamisel peaksite juhtuma kolm asja: 1) teie tähelepanu tase kuvatakse Python Shellis, 2) ilmub väike raam, mis näitab veebikaamera otseülekannet ja hägusus muutub vastavalt tähelepanu tasemele, 3) mootor (s) liikuda, kui tähelepanu tase edastatakse arduinole seeria kaudu [Video ülal].
7. samm: täiustamine ja arendamine
Raspberry Pi -l on piiratud töötlemisvõimsus ja ta ei suuda OpenCV funktsioone sujuvalt käivitada. See on asi, mida edasi arendan ja täiustan. Lisaks kavatsen lisada tulevastesse iteratsioonidesse täiendavad ajulainete parameetrid (silmade pilgutamisega seotud sagedused jne) ja kaamera funktsioonid (st toon, küllastus, heledus jne).
Soovitan:
Atari punkkonsool beebiga 8 sammu järjestus: 7 sammu (piltidega)
Atari punkkonsool koos beebi 8-astmelise sekveneerijaga: see vaheehitus on kõik-ühes Atari punk-konsool ja beebi 8-astmeline järjestus, mida saate freesida Bantam Tools töölaua PCB-freespingis. See koosneb kahest trükkplaadist: üks on kasutajaliidese (UI) plaat ja teine on utiliit
Akustiline levitatsioon Arduino Unoga samm-sammult (8 sammu): 8 sammu
Akustiline levitatsioon Arduino Uno abil samm-sammult (8 sammu): ultraheliheli muundurid L298N DC-naissoost adapteri toiteallikas isase alalisvoolupistikuga Arduino UNOBreadboard ja analoogpordid koodi teisendamiseks (C ++)
4G/5G HD -video otseülekanne DJI droonilt madala latentsusega [3 sammu]: 3 sammu
4G/5G HD-video otseülekanne DJI droonilt madala latentsusega [3 sammu]: Järgnev juhend aitab teil saada HD-kvaliteediga otseülekandeid peaaegu igalt DJI droonilt. FlytOSi mobiilirakenduse ja veebirakenduse FlytNow abil saate alustada drooni video voogesitust
Polt - DIY juhtmeta laadimise öökell (6 sammu): 6 sammu (piltidega)
Bolt - DIY juhtmeta laadimise öökell (6 sammu): Induktiivsed laadimised (tuntud ka kui juhtmeta laadimine või juhtmeta laadimine) on traadita jõuülekande tüüp. See kasutab kaasaskantavatele seadmetele elektrit pakkumiseks elektromagnetilist induktsiooni. Kõige tavalisem rakendus on Qi traadita laadimisst
4 sammu aku sisemise takistuse mõõtmiseks: 4 sammu
4 sammu aku sisemise takistuse mõõtmiseks: Siin on 4 lihtsat sammu, mis aitavad mõõta taigna sisemist takistust