【问题标题】:How to insert EEG triggers from one PsychoPy script into another?如何将脑电图触发器从一个 PsychoPy 脚本插入另一个?
【发布时间】:2019-06-02 13:59:14
【问题描述】:

我正在努力将 EEG 触发器添加到 PsychoPy 中的此脚本中,因为我是编码新手,所以我是通过 PsychoPy 中的构建器模式编写的。该实验是一系列句子词干和视觉词尾的录音——录音和词是通过电子表格调用的。我们对参与者在查看词尾时的反应感兴趣。

下面是我当前没有 EEG 触发器的脚本,下面是来自其他人的脚本,该脚本与他们用来插入 EEG 触发器的系统相同。我希望从“句子”刺激结束时开始记录,包括在“目标”和“响应”期间的时间,并在他们做出响应后结束。

非常感谢您的帮助!

这是我已有的脚本:

------Prepare to start Routine “trial1”-------

t = 0

trial1Clock.reset()  # clock

frameN = -1

continueRoutine = True

**# update component parameters for each repeat**

target.setColor([1.000,1.000,1.000], colorSpace='rgb')

target.setText(word)

response = event.BuilderKeyResponse()

Sentences.setSound(sounds, secs=6)

**# keep track of which components have finished**

trial1Components = [target, response, Sentences, text_2]

for thisComponent in trial1Components:

if hasattr(thisComponent, 'status'):

    thisComponent.status = NOT_STARTED

这里是插入 EEG 触发器的代码,我正在尝试集成:

# Send event marker to NetStation
if mode=='eeg' and stage=='expt':
    code = 'item'
    ns.sync()
    ns.send_event(code, label='item', timestamp=egi.ms_localtime(), table = { 'item' : curr_item })

【问题讨论】:

    标签: python psychopy


    【解决方案1】:

    您说您“使用 Builder 编写代码”。你在 Builder 之后改变了代码吗?如果没有,那么最好从 Builder 本身工作,以允许您在保留触发器的同时更改实验的其他方面。假设您可以在 Builder 中工作:

    如果您通过并行端口发送触发器,则在 I/O --> 并行端口下有一个组件。

    否则,您可以插入代码组件以在所需时间运行您的代码:

    1. 在“开始实验”选项卡中,添加 import xxxx as ns 或您创建的 ns 对象。
    2. 在“开始例行程序”选项卡中,添加触发代码以标记刺激开始。
    3. 要标记刺激偏移,请转到“每一帧”选项卡,然后 (a) 侦听刺激状态,如 if stim.status == FINISHED: 或 (b) 在“开始例程”处以预测的偏移设置 trigger_sent = False 发送触发器,然后if t > 2 and not trigger_sent:(如果你的刺激是 2 秒长)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-09-30
      • 2020-10-12
      • 1970-01-01
      • 2021-04-26
      • 1970-01-01
      • 2019-01-31
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多