| |
| |
| 8.
Direct Brain–Computer Communication |
| |
8.3.
Components of graz BCI
| |
8.3.2.
Hardware–Software Requirements |
|
The Graz BCI consists of an IBM-compatible
Pentium II PC operating at 233 MHz and an RTI800a data acquisition
board, with 32 single ended analog input channels, eight digital
inputs, and eight digital outputs.
The system has three ISA slots; a maximum of 96 analog channels
can be used. The analog to digital converter (ADC) has a resolution
of 12 bits.
The PC, is equipped with a real-time Kernel expansion. Simulink
is used for the calculation of different parameters, which describe
the current state of the EEG in real-time, while Matlab
handles the data acquisition, timing, and presentation of the
experimental paradigm.
A protocol for "rapid prototyping"
was introduced consisting of seven steps:
| |
1)
Selection of parameter estimation and classification algorithm |
| |
|
| |
2)
Implementation of the parameter estimation and classification
algorithms
Algorithms can be programmed in Matlab or a block diagram
can be developed using Simulink
(an example is given in the picture
below). Simulink’s graphical user interface
enables the user to build block diagrams using drag-and-drop
techniques and provides the ability to write special blocks
for online analysis, called S-functions (system-functions). |
| |
|
| |
3)
Offline simulations and tests of the Simulink block diagrams |
| |
|
| |
4)
Connection of the Simulink model to the real world
Real-time programs communicate with external input–output
(I/O) devices via a device driver that contains the necessary
code to interface Simulink to the RTI800a DAQ board. |
| |
|
| |
5)
Real-time code generation
Once the desired results are achieved with Simulink offline
tests (Step 3), the real-time C code is directly generated,
compiled, linked, and downloaded to a real-time kernel
with the real-time workshop (RTW). |
| |
|
| |
6)
Communication with the real-time program
Simulink in the external mode can be used as a graphical
front end to the corresponding model. When the model is
downloaded to the kernel, it can be started from Simulink
and runs in real-time under Windows. An interprocess communication
channel connects the real-time process to the Simulink
block diagram. With the Matlab Application Program Interface
(Matlab API) and the Simulink External Interface, it is
possible to interact with the real-time program without
stopping the execution. |
| |
|
| |
7)
Real-time tests
It might be necessary to go back to Step 1 to adjust the
algorithm. |
| |
|
 |
| |
Picture:
Simulink model for the real-time analysis of the EEG.
A device driver for the RTI800a (DAQ board of Analog Devices)
makes the connection to the real world. In this case,
the input block represents analog input channels 1 to
28 (EEG#1 to EEG#27, Trigger). Channels 1 to 27 are bandpass
filtered between 8 and 30 Hz. The output signal is then
passed to the two most (Spatial Filter 1 and Spatial Filter
27) and two second most (Spatial Filter 2 and Spatial
Filter 26) discriminating common spatial filters. After
temporal and spatial filtering, the variances of the resulting
four time series were calculated for a one second window,
normalized and also log-transformed. The resulting features
were classified with the weight vector (WV). This result
was used to control the feedback bar on the monitor. |
Source:
Motor Imagery and Direct Brain–Computer Communication, Gert Pfurtscheller and Christa Neuper |
|
|