您好,欢迎访问三七文档
当前位置:首页 > 中学教育 > 初中教育 > Presentation简明教程1.0(朱晨与卢剑刚翻译)
Presentation简明教程version1.0By:浙江大学心理与行为科学系04朱晨(PCL语法),卢剑刚(一般特性介绍及SDL语法)目录:1.Presentation介绍1.1Presentation有什么用?1.2Presentation的时间特性1.3Presentation如何工作?1.4Presentation的一般组成1.5创建一个Presentation实验程序的基本步骤2.场景(Scenario)的编制——SDL语法2.1Scenario中的声明及空格使用(commentandspacing)2.2Scenario的标题(header)2.3Scenario元件(Objects)2.4Scenario中的参数设置2.5Scenario中的内嵌函数–自动操作特征(AutomationFeatures)2.5.1SDL变量(SDLVariables)2.5.2模板(Templates)2.5.3数学运算(MathematicalExpression)2.5.4循环(LOOPs)2.5.5条件语句(IFs)3.PCL语法3.1PCL工作原理3.2Scenario元件操作3.3PCL基本数值类型3.4PCL中的特殊数值类型3.5嵌套语句3.6PCL循环3.7PCL条件语句3.8PCL数组3.9PCL中的字函数3.10表达式4.参考种类4.1位图bitmap4.2矩形box4.3图片picture4.4文本Text4.5键盘输入keyboard4.6trial4.7系统反应管理program_response_manager4.8反应数据response_data4.9系统刺激管理program_stimulus_manager4.10刺激事件stimulus_event4.11刺激数据stimulus_data4.12输入文件input_file4.13输出文件output_file4.14场景日志scenario_logfile1Presentation一般特性介绍1.1Presentation有什么用?Presentation是一个用于刺激呈现和实验控制的软件系统。与fMRI、ERP、MEG、反应时和单电极记录等都可以良好兼容,被广泛应用于行为、生理学实验。并且,presentation操作灵活且应用性极强,尤其是具有很高的时间精度。1.2presentation的时间特性影响实验中时间精确性的有两个因素。一是刺激要在准确的特定时间呈现,二是每个刺激及反应事件时间的准确记录。而在计算机模拟上,则主要有三个影响因素:硬件设备的灵敏度软件系统的精度控制系统的精度在一般计算机上,由于显示器存在固定的扫描频率,如75Hz,这会影响到软件的计时,另外,液晶显示器的反应延迟普遍在18-20ms,所以其时间精度要差于CRT显示器。再者,在实验程序运行时,计算机的处理器本身运行频率是不稳定的,这就造成了软件在计时上也是不稳定的。但在绝大多数情况下,这一时间精度在1ms以下。因此,在实验程序运行时,后台尽量不要运行其它程序。1.3presentation如何工作一般来说,presentation实验可以分为以下三步:1)将刺激存储在本地计算机上2)编制如何呈现刺激3)确定硬件配置及运行选项形如下图刺激(Stimuli)Presentation目前可以呈现2-D图像、压缩视频及音频。另外,presentation可以自己组织文本刺激,但更复杂的刺激则无能为力。实验属性(ExperimentSpecification)Presentation实用普通文本代码编辑器,可用于描述实验中所要呈现的刺激以及呈现的顺序、形式。硬件配置(Hardwareconfiguration)Presentation主面板提供了实验选项的设置,大多数涉及硬件。例如被试的反应键设置、屏幕分辨率等。1.4presentation的一般组成介绍场景(Scenario)Presentation实验可以分成多个场景,一个场景即presentation运行实验过程中,不受计算机支配而只受presentation自身支配的过程。实验可以由一个或多个场景组成。通常,我们用两个文件来分别描述刺激自身的性质及刺激呈现的形式。在presentation中,分别用两种编程语法上述两个文件。同时,两种语法形成了两种不同的文件类型,外加一个模板文件。之后将对SDL语法和PCL语法进行更细致的说明。1.5创建一个完整的Presentation基本步骤1.新建实验主程序打开Presentation程序,左上角选择experimentnew,然后在experiment选项卡中填入实验相关信息,如实验名称,再选择实验程序所在的目录。2.新建Sce文件点击help下方A4纸状的白色按钮,然后在左上角选择experimentsaveas。注意:将存储格式选为sce。3.新建Pcl文件同2操作。注意:将存储格式选为pcl。4.程序文件关联为exp、sce、pcl文件建立关联,使其构成一个完整的实验程序。具体操作为,在experiment选项卡的右下角将sce文件和pcl文件加入到中间下端的ScenarioFiles中。5.其他设置在Directories标签卡下,选择默认的刺激文件存放目录(DefaultstimuliDirectory)。在InputDevices标签卡下,选择该实验所包括的Scenario,以及输入设备,如键盘、鼠标等。若有必要,还可以对其他选项卡进行设定,此处不做细致说明。2编写Scenario2.1Scenario中的声明及空格(CommentsandSpacing)2.2Scenario的文件头2.3Scenario元件(ScenarioObjects)2.4Scenario中的参数值2.5自动操作特征--内嵌函数(AutomationFeatures)2.5.1SDL变量(SDLVariables)2.5.2模板(Templates)2.5.3数学公式(MathematicalExpression)2.5.4循环(LOOPs)2.5.5条件语句(IFs)2.1Scenario中的声明及空格Presentation中标注的文字前需加“#”,以区别于代码。并且“#”后的所有文字都将被计算机认为与代码无关。例如:鉴于“#”的特殊用途,最好不要用它来命名刺激、图片等。例如:只有当“#”位于双引号之间,作为普通字符时,它的命名才是有效的。例如:在presentation中,空格的使用与C语言类似,并无特别的间隔作用。因而下面的两段代码实际上等效的。2.2Scenario的文件头Sce的文件头中的各种系统变量active_buttons(默认值:0)用以声明实验中所采用的反应键的数目。变量的值必须与“InputDevice”中所选择的反应键数目相一致,否则系统将报错。buttons_codes(active_button0时必需)用以给每个反应键分配一个代码,以便在程序中可以引用。每个按键可以分配0-256的任意数字。注意,分配代码的顺序与active_button中设置按键的顺序相一致。例如:下图中声明了3个反应键,其代码分别是1、10、20。default_background_color(默认值:0,0,0)用以声明实验中背景屏幕的颜色,采用的是RGB代码。默认值为黑色“0,0,0”。default_font(默认值:TimesnewRoman)用以声明实验中所呈现文字的字体,变量值需要是windows系统所能识别的字体代码。另外,若实验中有特定部分需要运用其他字体,也可以在正式实验代码中加以声明。default_font_size(默认值:12)用以声明实验中所呈现字体的大小。default_text_color(默认值:255,255,255)用以声明实验中所呈现字体的颜色。默认值为白色“255,255,255”。当然,具体刺激的字体颜色可以在刺激声明中加以定义default_trial_duration(默认值:stimuli_length)用以声明那些自身没有定义持续时间的trial的持续时间,可精确到ms级。但一般由于实验中存在不同性质的各种trial,所以对trial_duration的定义一般放在具体trial的定义中。default_trial_start_delay(默认值:0)用以声明自身没有定义延迟呈现时间的trial的延迟呈现时间。pcl_file必需用以关联实验中Sce所对应的控制文件,即pcl文件。例如:response_matching(默认值:legacy_matching)用以声明刺激与反应的关联方式。变量值可以是“simple_matching”或者“legacy_matching”,两者的主要区别在于,legacy_matching需要正确反应,一旦反应错误,刺激会一直呈现,直至正确反应作出。所以在信号检测论等实验中,我们一般采用simple_matching。scenario必需用以声明Sce文件的文件名。2.3Scenario元件SDL包含一系列声明,用以定义各种在Scenario中所使用的刺激元件。所谓Scenario元件,是指刺激呈现时的多个方面的特征提取,包括“图片(picture)”、“位图(bitmap)”、“声音(sound)”、“文本(text)”、“trial”和“刺激事件(stimulus_event)”。Scenario元件包含具体的参数,同时一些Scenario元件可以包含其它的Scenario元件。例如,一个图片刺激元件,代表了一张全屏的图形,它可以包含一个或多个如“位图元件”、“文本元件”之类的图片部分。SDL语法可以指定特定的Scenario元件。Scenario元件的定义以该元件的类型开头。每个元件都有唯一的名字。例如:在类型名称之后,元件定义通常需要一个大括号“{}”,大括号的内部用来对该元件的特性进行声明,如背景颜色、图片坐标等。最后需要给该元件分配一个名字。切记,在所有SDL声明中,结尾都是分号。总结一下,完整的元件命名是:元件内部的声明基本是通过给元件参数的赋值来对元件特性进行定义。具体参数等将在后面具体的元件介绍中进一步论述。前面提到,一些元件可以包含其它元件。有两种方法来指定子元件。一种方法是先定义一个完整的子元件,然后在元件中对其进行声明(引用)。例如:第二种方法是直接在元件中定义并声明一个子元件。例如:2.3.1位图元件引用(bitmapreference)指从本地计算机的刺激文件夹内将图片放入内存,即给图片编码,以便让presentation识别。例如:上图即把刺激文件夹内a.bmp文件放入内存,并给其命名为test。2.3.2图片元件引用(picturereference)指从内存中加载指定的图片到实验程序,即把图片放入presentation程序中。例如:上图即把test位图分配给图片formal,并且test呈现的坐标为(0,0)。2.3.3文本元件引用(textreference)与图片引用类似。例如:上图即建立“实验已经结束,谢谢你的参与!”文本,其字体大小为20号,呈现的坐标为(0,0)。2.3.4刺激事件元件引用(stimulus_eventreference)2.3.5Trial元件引用(trialreference)trial{trial参数定义(trial延迟时间、持续时间等)刺激声明(采用picture引用等)刺激参数定义(刺激呈现的坐标等)…刺激事件声明…}name;例如:上图即定义名为target的trial。trial类型为first_response,即记录trial呈现后的第一次反应;trial延迟100ms呈现,持续时间2000ms,即被试若2000ms不做反应,则直接进入下一个trial。同时,trial中内嵌一刺激事件,可以在pcl控件中用于记录刺激反应。2.4SDL中的参数值数值类型取决于特定的
本文标题:Presentation简明教程1.0(朱晨与卢剑刚翻译)
链接地址:https://www.777doc.com/doc-1509673 .html