User Reference:SignalGeneratorADC: Difference between revisions
No edit summary |
|||
| (12 intermediate revisions by the same user not shown) | |||
| Line 1: | Line 1: | ||
==Function== | ==Function== | ||
The '' | The ''SignalGeneratorADC'' filter generates a test signal suited for BCI purposes. | ||
The test signal is a sine wave overlayed with white noise and a DC component. | The test signal is a sine wave overlayed with white noise and a DC component. | ||
Test signal amplitude may be controlled using the system's pointing device, which is useful in testing SMR type BCI setups. | Test signal amplitude may be controlled using the system's pointing device, which is useful in testing SMR type BCI setups. | ||
The signal's DC component may | The signal's DC component may reflect the value of a state variable, which is useful in testing ERP type BCI setups. | ||
==Parameters== | ==Parameters== | ||
| Line 23: | Line 23: | ||
===SineFrequency=== | ===SineFrequency=== | ||
Test signal frequency. When | Test signal frequency. When specified as a raw number, the frequency is given in terms of the sampling rate. Absolute frequencies may be given as decimal numbers or fractions when directly followed with ''Hz''. | ||
Examples: | Examples: | ||
* ''0.25'' (half the Nyquist frequency), | * ''0.25'' (half the Nyquist frequency), | ||
| Line 44: | Line 44: | ||
===OffsetMultiplier=== | ===OffsetMultiplier=== | ||
An [[User Reference:Expression Syntax|arithmetic expression]] that evaluates to a multiplication factor applied to the DC offset as given by the ''DCOffset'' parameter. | An [[User Reference:Expression Syntax|arithmetic expression]] that evaluates to a multiplication factor applied to the DC offset as given by the ''DCOffset'' parameter. | ||
This allows to create a test signal that depends on the value of [[BCI2000 Glossary#State|state variables]]. | |||
E.g., to create a simulated evoked response in the [[User Reference:P3SpellerTask|P300 Speller's]] copy spelling mode, enter ''StimulusType'' as the multiplier expression, and a nonzero value into the ''DCOffset'' parameter. | |||
=== | ===AmplitudeMultiplier=== | ||
An | An [[User Reference:Expression Syntax|arithmetic expression]] that evaluates to a multiplication factor applied to signal amplitude. | ||
===NaNChannels=== | |||
List of channels to set to a NaN value when space bar is pressed. Useful for testing filters. This parameter is only available on Windows. | |||
===SourceProperties=== | |||
A matrix that defines any number of additional virtual brain signal sources by their amplitudes, frequencies, and time offset. May be empty for no additional sources. | |||
===Mixing matrix=== | |||
A source-to-sensor projection matrix that defines how the signal is formed from the additional virtual brain signal sources. | |||
May be empty if no additional sources are defined. | |||
===Variate Timing=== | |||
A nonzero value will introduce random variation into the block duration generated by the source module. The value of this parameter represents the probability for a millisecond sleep before the module returns from its ''Process()'' function. | |||
===SignalType=== | ===SignalType=== | ||
| Line 57: | Line 70: | ||
==States== | ==States== | ||
Any state may occur in the | Any state may occur in the expressions given in the ''OffsetMultiplier'' and ''AmplitudeMultiplier'' parameter. | ||
==See also== | ==See also== | ||
[[User Reference:Filters]] | [[User Reference:DataIOFilter]], [[Programming Reference:GenericADC Class]] | ||
[[Category:Filters]][[Category:Data Acquisition]] | |||
Latest revision as of 15:05, 19 December 2025
Function
The SignalGeneratorADC filter generates a test signal suited for BCI purposes. The test signal is a sine wave overlayed with white noise and a DC component. Test signal amplitude may be controlled using the system's pointing device, which is useful in testing SMR type BCI setups. The signal's DC component may reflect the value of a state variable, which is useful in testing ERP type BCI setups.
Parameters
Parameters common to all source modules are described under User Reference:DataIOFilter.
ModulateAmplitude
Controls whether signal amplitude follows pointer (mouse, trackball, or similar) movement.
SineChannelX
Index of a channel that receives a test signal controlled by the pointer's horizontal position.
SineChannelY
Index of a channel that receives a test signal controlled by the pointer's vertical position. If the index is zero, then the test signal is given on all channels.
SineChannelZ
Index of a channel that receives a test signal controlled by mouse keys. For mouse key control, the pattern of pressed keys is translated into its corresponding 2-bit number. Signal amplitude is then proportional to this number.
SineFrequency
Test signal frequency. When specified as a raw number, the frequency is given in terms of the sampling rate. Absolute frequencies may be given as decimal numbers or fractions when directly followed with Hz. Examples:
- 0.25 (half the Nyquist frequency),
- 10.5Hz,
- 20/3Hz.
SineAmplitude
The test signal's maximum amplitude. Modulation will be linear in the range between zero and this maximum amplitude. A raw number refers to AD units; when immediately followed with a voltage unit (such as muV, mV, or kV), the number is interpreted according to the SourceChOffset and SourceChGain parameters.
NoiseAmplitude
White noise amplitude for all channels, given in raw or calibrated units. The noise itself is independent among channels.
DCOffset
An offset value common to all channels. May be positive or negative, and given in raw or calibrated units.
OffsetMultiplier
An arithmetic expression that evaluates to a multiplication factor applied to the DC offset as given by the DCOffset parameter. This allows to create a test signal that depends on the value of state variables. E.g., to create a simulated evoked response in the P300 Speller's copy spelling mode, enter StimulusType as the multiplier expression, and a nonzero value into the DCOffset parameter.
AmplitudeMultiplier
An arithmetic expression that evaluates to a multiplication factor applied to signal amplitude.
NaNChannels
List of channels to set to a NaN value when space bar is pressed. Useful for testing filters. This parameter is only available on Windows.
SourceProperties
A matrix that defines any number of additional virtual brain signal sources by their amplitudes, frequencies, and time offset. May be empty for no additional sources.
Mixing matrix
A source-to-sensor projection matrix that defines how the signal is formed from the additional virtual brain signal sources. May be empty if no additional sources are defined.
Variate Timing
A nonzero value will introduce random variation into the block duration generated by the source module. The value of this parameter represents the probability for a millisecond sleep before the module returns from its Process() function.
SignalType
Selects the output signal's numeric type. The following options are provided:
- 0: 16-bit signed integer (int16),
- 1: 32-bit IEEE floating point (float32),
- 2: 32-bit signed integer (int32).
States
Any state may occur in the expressions given in the OffsetMultiplier and AmplitudeMultiplier parameter.
See also
User Reference:DataIOFilter, Programming Reference:GenericADC Class