其他账号登录: 注册 登录
航弈生物 | BCIduino脑机接口社区
新闻详情

EDUduino单通道可穿戴脑机设备使用说明书

发表时间:2021-11-17 16:27

一、产品简介


单通道可穿戴脑机设备是一款面向脑科学教育、专注度训练与康复训练的便携式脑电头戴设备。我们面向客户提供了专注度训练 Android APP,使用者可以通过 APP 解析脑电信号,进而控制机器人、玩具、航弈康复外骨骼科研设备等。不仅如此,面向科研工作者,我们还提供了 Python/Matlab 等 SDK 开发接口,科研工作者可以根据自己项目的需求对脑电数据进行解析处理、开发项目。

图 1 单通道脑电设备(仅供参考,以实物为准)

二、 性能参数

单通道脑电设备提供了脑电原始数据、专注度、放松度、alpha、beta、gamma波的能量等信息。

三、Android 软件

图 2 Android 神念 APP 界面

五、 产品组成

⚫ 单通道脑机设备*1

⚫ 头环*1

⚫ 耳夹*1

⚫ 前额电极*1

六、产品参数

1. 脑电信号通道数:1采集通道/前额+1参考通道/耳垂

2. 采样频率:512Hz

3. 供电方式:电池供电 1.2~1.5V DC

4. 通信方式:蓝牙

5. 兼容上位机系统:Windows/Linux/Android

6. 提供 Matlab/Python接收数据代码


七、Python 代码解释及下载地址


代码使用流程视频地址(Bilibili)

(1)、神念单通道设备连接电脑视频https://b23.tv/zjnchT

(2)、Python 获取专注度:https://b23.tv/8TCu2b

(3)、用专注度控制arduino舵机:https://b23.tv/G4tco0

代码下载地址https://pan.baidu.com/s/1CS1gTm_pdjeS02fWQyogTQ

(密码联系个人微信cheitech询问)


目前以下代码只能运行在 windows 电脑上。

#!/usr/bin/env python

import serial

import string

attention = 0

rawData = serial.Serial('COM5',4800)#这是神念蓝牙对应的接口,注意波特率要多

试几次,有的模块不是 4800 而是 9600,这个是不同的神念模块货源导致的。

controlDevice = True#如果要控制外部设备,这里就设置为 True

if(controlDevice == True):

ser2 = serial.Serial('COM6',9600)#这是外部设备的 COM 口。

i=1

from pylsl import StreamInfo, StreamOutlet

info = StreamInfo('Neurosky', 'EEG', 2, 400, 'float32', 'buaawyz')#可以将数据通过 lsl

流传输出去,具体应当根据自己的项目实际需求去改,此处仅供参考。

# next make an outlet

outlet = StreamOutlet(info)

attention = 1

#print("now sending data...")

#while True:

# make a new random 8-channel sample; this is converted into a

# pylsl.vectorf (the data type that is expected by push_sample)

#mysample = [random.random()]

# now send it and wait for a bit

#outlet.push_sample(mysample)

#time.sleep(0.002)


while(i==1):

#print(t.read())

if(rawData.read()==b'\xaa'):

if(rawData.read()==b'\xaa'):

#print("sss")

c = rawData.read()

if(c==b'\x04'):

if(rawData.read()==b'\x80'):

if(rawData.read()==b'\x02'):

rawdata1=ord(rawData.read())*256+ord(rawData.read())

if(rawdata1>32768):

rawdata1=rawdata1-65536

mysample = [attention,rawdata1/10]

outlet.push_sample(mysample)


elif(c==b' '):

#print("ssssssssss")

if(rawData.read()==b'\x02'):

#print("bbbbbbb")

rawData.read()

#if(t.read()==b'\xc8'):

#print("ssssssssss")

if(rawData.read()==b'\x83'):

if(rawData.read()==b'\x18'):

#print("ok")

ii=1

while(ii<=24):

rawData.read()

ii=ii+1

x=rawData.read()

if(x==b'\x04'):

#print ("1")

x=rawData.read()#zzd

#print(x)

#y = x and '0x0f'

attention = ord(x)#16 转 10 进制

#attention = y

#ssss.y = y

print("专注度为:")

print(attention)

mysample = [attention,rawdata1]

outlet.push_sample(mysample)

if(controlDevice == True):

if(attention >= 50):

ser2.write((chr(attention)).encode())

else:

ser2.write((chr(attention)).encode())

八、注意事项

使用前:

请先详阅使用说明书,以便充分了解如何安全正确有效的使用脑电设备;

为了确保使用者安全有效的使用脑电设备,使用者不得任意更换脑电帽指定搭配的附属配件,如电极、导联线,数据接口等;

检查各个电极片是否干净整洁。

使用中:

皮肤若有异常感觉,请先停止使用电极,并咨询医师;

使用时需保证脑电设备的干净清洁;

请勿拉扯扭结导联线;

使用过程中不要随意移动电极;