High-Speed Online Processing under Simulink: Specs & Features
High-speed/real-time data acquisition, processing and analysis under SIMULINK for g.tec amplifiers
The Highspeed Online Processing blockset is available for g.MOBIlab+, g.HIamp, g.USBamp and g.Nautilus. The blockset lets you collect biosignal data like EEG, ECoG, EMG, EOG and ECG within a Simulink model for further real-time processing. Therefore, the device driver blocks, g.MOBIlab+, g.HIamp, g.USBamp or g.Nautilus, are copied into the Simulink model and are connected to other blocks that do the signal analysis. Then, the model is started, and the device driver guarantees real-time processing.
This Rapid Prototyping environment speeds up the development cycle dramatically, and your first real-time experiments are possible within a few hours. The Highspeed Online Processing blockset allows you to use all standard Simulink blocks in your model and to write your own blocks in MATLAB code or C code.
The device driver block gives you access to all amplifier specific settings like sampling frequency, digital I/O lines, bandpass and notch filtering. Just double-click the g.MOBIlab+, g.HIamp, g.USBamp or g.Nautilus block to perform the settings. Then, click on Play in the Simulink model to start the biosignal acquisition. Additionally g.HIsys comes with many useful blocks for pre-processing, transformation, analysis and storage.
Data can be visualized with Scope blocks and stored on the hard disk in MATLAB format. The model works with double precision accuracy. g.MOBIlab+ can store the data during acquisition on an SD card inside the unit.
The g.tec blockset g.RTanalyze supports the Rapid Prototyping of biosignal applications by ready-to-use algorithms. Tutorials are provided for brain-computer interface experiments, evoked potentials, ECG analysis and respiration analysis. The Simulink models contained in the Highspeed Online Processing blockset can be used as templates for your own applications.
With the Highspeed Online Processing blockset, we offer the g.EYEtrackingInterface and g.UDPinterface. The packages provide Simulink blocks that can be easily copied into every model to capture the eye-movements of the subject or to send/receive data to/from other systems.
A plugin of g.HIsys is a data import for EEGLAB , which allows directly access recorded data from g.tec devices.
g.DISTRIBUTEDeeg allows you to record biosignal data using the g.tec amplifier g.USBamp from different distributed PCs in the network!
g.CAMERAcapture: capture video in MATLAB Simulink synchronized with biosignal
NEW! g.THRESHOLDscope: generate level trigger information in biosignal visualization
- Acquire and process EEG, ECoG, ECG, EMG, EOG and spike data directly within Simulink
- Wireless biosignal data acquisition with g.MOBIlab+ and g.Nautilus
- Add your own sophisticated data processing algorithms graphically
- Benefit from the Rapid Prototyping environment for developing, testing and releasing your biosignal applications
- No compilation of the Simulink model is necessary for real-time analysis
- Use standard Simulink blocks for online analysis
- Add your own algorithms, such as MATLAB S-Functions or C S-Functions
- Store data to the MATLAB workspace or to a MATLAB file
- Display Evoked Potentials in real-time
- Acquire eye-movement data together with biosignals
"The g.tec brain-computer interface environment allows my lab to rapidly realize new applications."
- Prof. Nima Mesgarani, Columbia University, USA
"It is an inspiring tool for researchers who want to go several steps further in BCI studies."
- Asst. Prof. N. Firat Özkan,
Eskisehir Osmangazi Univ., TR
"Thanks to the easy integration of g.tec amplifieres into Simulink we are able to analyse users physiological signals without additional implementation efforts."
- Augusto Garcia MSc,
Technical University of Darmstadt
More Product Details
Acquire biosignal data with g.MOBIlab+
The Simulink model contains the device driver block g.MOBIlab+. This block reads the biosignal data at 256 Hz into the model over a serial port on the computer. A demultiplexer block is then used to split the 2 acquired channels. The standard Simulink Scope block is used to visualize the data online. The To File block is used to store the biosignal data on-line on the computer's hard disk. By double-clicking the block, the filename session1.mat can be entered. Therefore, the data are stored in MATLAB format and can easily be processed after recording. The Bandpower is used to calculate the power distribution of the EEG signal on-line. The paradigm block is used to show the current EEG bandpower to the subject.
Please note that the signal analysis, storage and visualization are all done with standard Simulink blocks, which can be accessed by drag-and-drop from the Library Browser . The Bandpower blocks are from the g.RTanalyze blockset. This allows easy and fast setup of custom analysis models. The g.MOBIlab+ block guarantees that the processing is done in real-time.
The Scope block is used to visualize two EEG channels. The EEG signal has an amplitude of ± 15 µV because it is recorded with a bipolar derivation.
Remote Control of g.MOBIlab+
The g.tec remote control unit allows users to read biosignal data over a network connection (TCP/IP) into Simulink. Simulink is used as front-end and all functions of g.MOBIlab+ can be used. Therefore, the acquisition of biosignals is possible under difficult conditions, like in a vacuum chamber or cold chamber.
Bluetooth transmission and SD card logging
g.MOBIlab+ can also transmit the data over a Bluetooth connection. Therefore, a Bluetooth dongle is inserted into the PC/notebook computer. Then, from multiple g.MOBIlab+ setups, a specific one can be identified based on the serial number, and a connection can be established. The following Simulink model is configured to read in all analog input and digital input channels.
By double-clicking on the g.MOBIlab+ block, the following dialog opens:
Check each channel that should be transmitted from the amplifier g.MOBIlab+. Typically, channels 1 and 2 are used for EEG recordings, channels 3 and 4 are used for DC recordings (respiration, EEG, pulse), channels 5 and 6 for ECG or EMG and channels 7 and 8 for external sensors (GSR, temperature). The 8 digital channels can be used as input (channel 1 - 8) or output channels (channel 4 - 7), or can be disabled. The COM Port identifies the Bluetooth communication channel from the PC/notebook to the g.MOBIlab+. Check the Testmode box to enable a sawtooth signal generation on the g.MOBIlab+.
Start the Simulink model by pressing on Start Simulation . The Scope shows the sawtooth signals with different frequencies on the different analog channels. The digital inputs show rectangular signals with different frequencies.
g.MOBIlab+ can also stream data onto a mini SD card. The SD card is inserted into the water-protected battery compartment first.
Check the Enable writing to SD card checkbox in the configuration dialog, enter GMOBILAB as the filename and start the acquisition. g.MOBIlab+ is now streaming the data onto the SD card and is simultaneously sending the signals to the PC/notebook for visualization. After checking the signal quality of the biosignals, press the Stop button. A dialog window appears that asks if you want to stop the data acquisition or if you want to disconnect the Bluetooth connection.
Click on Disconnect to continue streaming the data onto the SD card while closing the signal transmission over Bluetooth. Now the subject can move freely around for 36 hours for home observation, sports activities or other physiological experiments.
When the subject returns from the experiment, startup the Simulink model again and click on Start again. The Bluetooth connection will be established again and the biosignal data can be visualized.
Finally, stop the acquisition with Stop Simulation in the Simulink model. Now the SD card can be removed from g.MOBIlab+ and inserted into a card reader on the PC to analyze the physiological data. With a 1 GB SD card, about 70 hours of data can be recorded.
High-resolution biosignal acquisition with g.USBamp
The g.USBamp Highspeed Online Processing block provides a graphical interface to the g.USBamp hardware, which can be used under Simulink to specify the amplifier properties and to acquire the data.
The g.USBamp block output signal provides the biosignal data. The data format is single (float32) and it is scaled in µV. If all analog input channels (16) and the trigger signal (1) are acquired, the line width is 17. Use a Demux block to de-multiplex the channels.
Double click on the g.USBamp block to access the configuration window. The configuration window allows you to specify the sampling frequency of the amplifier and to select the channels that should be acquired. Additionally, the bandpass and notch filters can be selected for each channel. Bipolar derivations can also be defined. The amplitude, frequency and the offset of the test-signal can also be adjusted.
After performing the configuration, click on the Play button of the Simulink model to start the biosignal acquisition and visualization. The Simulink model is updated in real-time because of the hardware interrupt driven g.USBamp block.
This Simulink Scope shows an acquired ECG signal with a sampling frequency of 1200 Hz.
Impedance measurement and calibration with g.USBamp
The g.USBamp blockset also contains blocks for calibrating the amplifier and measuring the electrode impedance of passive electrodes. Hence, copy the blocks into the Simulink model.
Double-click on the Impedance Check window to measure the electrode impedance of each electrode. The window shows the 16 input channels and the 4 reference electrodes. The electrodes are marked in green, yellow, red and blue according to their impedance values.
Double-click the Calibration block to adjust the offset and the gain of each channel of the amplifier.
g.HISYS BLOCK LIBRARY
g.HIsys comes with specialized blocks for biosignal analysis that are needed in many real-time experiments. The library contains blocks for plotting data, pre-processing (source derivation, Notch filter, bandpass filter), transformation (pre-post trigger, cut samples, select channels), feature extraction (on-line averaging, ERD online, online FFT, Pre/Post PSD, spectrogram, significance analysis), output signals through muscle activity (spasticity control, EOG selection, EMG selection) and a binary decoder. The Real Time clock allows you to run the Simulink model without an amplifier connected.
The g.FROMfile and g.TOfile blocks are highly optimized blocks for quickly streaming data, which is especially important for a high number of channels or high sampling rates. The blocks also allow you to define a maximum file size to avoid too big data-sets. The g.Mouse block allows you courser movements of the computer mouse out of Simulink.
The Paradigm block can be used for audio, picture, video and text paradigms.
The g.AudioStream block stereo CD quality sound output to the standard speakers from Simulink.
The AudioStimulation block presents a set of pre-recorded sound files via a low-latency sound driver.
The Select Events block selects event codes from the incoming events. For each change of the incoming event code (from zero to a non-zero value), the event codes are compared to specified event codes for selection.
The g.SENSORadaption block is for converting input data from a g.tec sensor (such as a temperature sensor, G sensor, GSR sensor and SpO2 sensor) into meaningful outputs according to the sensor.
The Marker block is for keyboard and mouse markers in Simulink.
The signal quality block controls the incoming biosignal in real-time and outputs a green color if the quality is high and a red color if the quality is low. This makes it easy to quickly scan many EEG channels.
RAW DATA, EP, VECTOR & THRESHOLD SCOPES
g.HIsys comes with a raw data scope that is highly optimized for biosignal data. It has special scaling and rendering options especially developed for biosignals to visualize high quality data as fast as possible. The scope works for very high sampling frequencies with minimal processor load, even for many channels. It can just be copied into a Simulink model to be connected to one of the biosignal amplifiers. Additionally it is possible to define channel states, e.g. channel quality, for each channel.
g.HIsys comes also with an evoked potential scope that allows you to visualize triggered data in real-time. The EP scope allows you to compare e.g. target and non-target stimuli of a P300 experiment and can also visualize significant differences between the classes. The EP Scope allows you to arrange channels according a defined montage file. This is a very useful tool for effectively running ERP experiments.
The VECTOR Scope provides a convenient way to display frame-based data. Beside that it can also display a channel state value.
The THRESHOLD Scope block provides a convenient way to display biosignal data and generate trigger information for the Trigger block. The block output port holds a threshold value for each channel. If the threshold is activated, a threshold value corresponding to the horizontal bar location is generated.
g.DISTRIBUTEDeeg allows you to record biosignal data using the g.tec amplifier g.USBamp from different distributed PCs (DataPCs) in the network and transmit the recorded data to a central evaluation / data storage PC (EvalPC). Data acquired from the DataPCs is synchronized using the OSC protocol for distributed systems, and the data is transmitted to the EvalPC using the UDP network interface.
While all DataPCs are clients of the OSC protocol, the EvalPC is the OSC master, creating the synchronization signal for all DataPCs. The OSC protocol is using the UDP network interface and is capable of synchronizing all DataPCs with a synchronicity of ± 2 samples at a sampling rate of 256 Hz. This synchronicity allows you to record evoked potentials in a distributed system.
The scheme below shows the network layout of a distributed system used for biosignal data acquisition.
- EEG / biosignal recording in distributed system
- Synchronicity of ± 2 samples at 256 Hz
- Synchronicity allows measurement of evoked potentials
- Data reduction at distributed PCs
- Feature extraction at distributed PCs
The g.CAMERAcapture block allows you to record a video from a webcam and synchronize the video with biosignal data.
The synchronization is done using the video frame number, which is output from the g.CAMERAcapture block. Save this output along with the biosignal data for synchronization.