上海光源(Shanghai Synchrotron Radiation facility, SSRF)是第三代同步辐射装置,是世界上同能区正在建造或设计中性能指标最先进的第三代同步辐射光源之一[1-2]。目前已有13条光束线和16个实验站投入运行。生物X射线小角散射光束线站(Biological Small Angle X-Ray Scattering, BioSAXS)属于国家蛋白质研究上海设施第五系统——蛋白质动态系统研究中包含的两条基于上海光源建设的光束线站之一。BioSAXS实验站以蛋白质在自然状态下的结构、动态变化和相互作用为主要研究方向,重点开展以时间分辨为主的动态过程研究工作。
BioSAXS实验站控制和数据采集系统的难点在于如何实现运动控制和数据采集的集成化控制,并向用户提供更方便的操作界面。本文工作基于EPICS (Experimental Physics and Industrial Control System)软件平台,集成了运动控制、光强检测、探测器等功能,满足了生物小角散射实验的控制和数据采集方面的需求。
1 BioSAXS实验站控制和数据采集系统 1.1 控制和数据采集系统硬件简介BioSAXS实验站控制和数据采集系统包括实验站控制系统和实验站数据采集系统,它们起着实验站设备的运动控制和实验数据获取的功能。控制系统元件主要包括两个用于阻挡寄生散射和杂散光的单色光四刀狭缝、用于溶液样品蠕动装置实验的运动支撑台、用于阻挡直通光束的BeamStop和调节探测器位置的二维运动支撑台。数据采集系统主要设备有探测器系统、光强监测系统。实验站各种设备可进行各种组合和协调运动以满足不同的生物小角散射实验需求。
1.2 软件开发平台EPICS和控制系统工具箱上海光源整体控制系统使用EPICS分布式控制系统,是国际上实验通用的分布式控制系统。EPICS是由美国洛斯阿拉莫斯国家实验室(Los Alamos National Laboratory, LANL)和阿贡国家实验室(Argonne National Laboratory, ANL)等联合研制开发的实验物理和工业控制系统软件包,它是基于标准模型的客户机/服务器模式的分布式控制系统软件工具集,具有可移植性、可互操作性、可裁减性以及可重用性等特点。基于EPICS 的实验站运动控制系统由上层操作员界面(Operator Interface, OPI)、I/O控制机(Input/Output Controller, IOC)和连接OPI和IOC的局域网(Local Area Network, LAN)组成[3-4]。OPI位于运行Linux操作系统的计算机上,实验站采用控制系统工具箱(Control System Studio, CSS)来设计系统的控制和显示界面。
CSS是由美国SNS (Spallation Neutron Source)、BNL (Brookhaven National Laboratory)和德国DESY (Deutsches Elektronen Synchrotron)合作开发而成,采用了Eclipse RCP (Rich Client Platform)的框架结构,是一个集成多个应用程序插件的开发工具软件,可实现控制系统的界面制作、语音报警、数据存档等功能,用于监控和操作大型控制系统[5-7]。
2 BioSAXS实验站控制和数据采集系统设计与实现BioSAXS实验站控制和数据采集系统框图如图 1所示。
|
图 1 BioSAXS实验站控制和数据采集系统 Figure 1 Control and data acquisition system for BioSAXS beamline. |
BioSAXS实验站在进行实验过程中,需要调节狭缝的开口和位置、蠕动样品装置的调节、直通光阻挡器的位置等,这些都是采用运动控制实现相应调节功能。运动控制系统的主要硬件包括计算机、VME机箱、MVME5500 CPU卡、MaxV8000控制卡、电机驱动器、狭缝、蠕动样品装置及直通光阻挡器运动机构等,硬件框图如图 2所示。
|
图 2 运动控制系统硬件框图 Figure 2 Hardware connection diagram of motion control system. |
计算机运行在Linux系统下,使用EPICS和CSS设计及开发运动控制程序。BioSAXS实验站运动控制系统采用EPICS Base R3.14.12,与之对应的synApps版本为synApps 5.6,motor版本是Motor-6-7,使用的CSS版本为3.2.16。EPICS开发平台包含了许多常用电机驱动模块,直接调用编写即可。这种运动控制系统方案广泛应用于各大光源。
运动控制系统的主要任务是在EPICS软件环境下对实验站的运动元件中的步进电机进行控制。基于EPICS的BioSAXS实验站运动控制系统软件的核心是motor记录,其软件层次结构如图 3所示。
|
图 3 运动控制软件层次结构 Figure 3 Software hierarchy of motion control system. |
对开环步进电机的控制,主要的电机记录域是VELO(运行速度)、VBAS(最小速度)、ACCL(加速度)、MRES(电机步长)、SREV(电机每转步数)、DVAL(电机值)、RBV(电机读回值)和STOP(电机停止)。为保护设备,需要使空闲时SMD(发送控制命令)关闭对步进电机的驱动,这样就要用MAXv的“AF”命令使能(enable) SMD的各轴后,插在机箱中的驱动器才能接收MAXv的控制信号,驱动与之相连的步进电机[8-10]。
下列为狭缝电机的db实例:
record(motor, "X19U2:EH:Slit5:TRDOWN")
{field(DTYP, "OMS MAXv")
field(DESC, "X19U2:EH:Slit5:TRDOWN")
field(VBAS, "400.0")
field(VELO, "600.0")
field(OUT, "#C0S3@")
field(SREV, "400")
field(MRES, "0.5")
field(PREC, "3")
field(DHLM, "300000")
field(DLLM, "-300000")
field(RTRY, "0")
field(TWV, "1")
field(EGU, "um")
field(INIT, "AN")
field(PREM, "AF")
field(POST, "AN")}
2.2 数据采集系统设计与实现 2.2.1 硬件设计BioSAXS实验站数据采集系统包括光强检测和探测器数据采集系统。
光强检测数据采集采用计数器测量X射线通量,系统硬件包括微电流放大器、V/F转换器、计数器和计算机。X射线通过RIGI探测器或X射线光电二极管会产生电流,电流强度正比于入射X射线强度。此电流经过微电流放大器放大转换为相应的电压信号,随后经过V/F转换器和计数器,得到正比于入射X射线通量的计数,根据计数即可推算得到入射X射线通量。特别说明,为测量实验样品对X射线的吸收和减少对小角测量的影响,采用在Beamstop上安装X射线二级管来测量相对光强。光强检测系统硬件连接框图如图 4所示。
|
图 4 光强检测系统硬件连接框图 Figure 4 Connection diagram of light intensity detection system. |
探测器数据采集系统的作用在于采集出实验测量的小角散射信号,将实验数据和光强检测数据集成,并最后存储在一个文件系统下。系统硬件包括瑞士DECTRIS公司的Pilatus 1M探测器、探测器服务器、电源、连接线和控制电脑。Pilatus 1M探测器将单光子计数和CMOS混合像素技术这两项关键技术相结合,能够消除所有探测器噪声,并提供优质的实验数据,它应用于同步辐射和常规实验室光源等各个领域。探测器数据采集系统硬件连接方式如图 5所示。
|
图 5 探测器数据采集系统硬件连接图[11] Figure 5 Hardware connection diagram of the detector data acquisition system[11]. |
数据采集系统软件的编写方案要与探测器系统匹配。利用synApps中的areaDetector模块在EPICS平台下进行了数据采集软件的编译及改进。
数据采集系统采用网络通讯接口,软件框图如图 6所示。
|
图 6 数据采集系统控制软件框图 Figure 6 Software structure of data acquisition system. |
光强检测数据采集控制软件是基于EPICS下的StreamDevice模块进行开发。StreamDevice是基于数据流设备的通讯驱动软件模块,其接口方式有串口、IEEE-488和TCP/IP,它通过发送和接收字符串数据来实现对设备的远程控制。本控制程序将StreamDevice作为一种第三方外部模块,需要在新创建的EPICS softioc应用实例内的RELEASE文件中指定其安装路径,并修改相关的配置文件添加数据库定义文件和库文件,加入protocol协议文件来指定如何控制设备的输入/输出,添加数据库db文件,修改启动文件st.cmd,最后编译即可。当更新其他控制设备时,只需要改动protocol 协议文件内容,而不需要重新编译。下列为计数器的db实例:
record(ai, "X19U2:EH:counter:Measure")
{field(DESC, "Measure current") field(DTYP, "stream")
field(SCAN, "1 second")
field(INP, "@counter.proto measureCurrent1 Counter")
field(EGU, "A")
field(PREC, "5")
field(FLNK, "X19U2:EH:counter1:Measure")}
计数器的protocol文件实例如下:
Terminator = CR LF;
measureCurrent1
{out "CLAL";
wait 20;
out "ENTS";
wait 20;
out "STPR1000";
wait 20;
out "STRT";
wait 1020;
out "CTR?0203";
wait 20;
in %(X19U2:EH:counter1:Measure)10c%(X19U2:EH:counter2:Measure)10c";
ExtraInput = Ignore;}
Pilatus探测器控制界面采用EPICS开发平台开发。线站控制计算机通过网络连接探测器自带服务器以实现两者数据的通信,快门配合探测器进行散射实验。由于Pilatus探测器厂家自带控制软件不能被外接设备触发,为配合实验站其他设备能够自动触发探测器,需要设计人员自行开发运行在Linux系统下的基于EPICS的Pilatus控制软件。厂家自带探测器操作软件由TVX(数据分析软件和控制程序)和Camserver(探测器硬件的操作软件)两部分组成,其结构如图 7所示。
基于EPICS的面探测器软件驱动结构见图 8。
在实验站探测器控制软件设计中,Pilatus探测器与EPICS软件驱动的接口如图 9所示。
|
图 9 ilatus探测器与EPICS软件驱动的接口 Figure 9 Interface between Pilatus detector and EPICS driver. |
BioSAXS实验站数据采集系统软件人机界面友好,便于用户进行实验参数的设置和调节、实时观测实验状况和随时了解实验结果。测试结果表明,光强检测运行正常,数据采集软件实现了设计目标。
3 控制系统和数据采集系统测试基于EPICS的BioSAXS实验站运动控制系统已经过不断调试进入运行阶段。为方便用户的使用,需要把控制系统和数据采集系统集成在一个用户界面上。BioSAXS实验棚屋设备控制界面主要包括狭缝电机控制、样品架电机控制、beamstop电机控制、打开和关闭光强检测系统IOC按钮、探测器控制界面打开等。为便于整个实验站设备的控制操作,在此界面上也给出了控制组光学棚屋设备的控制按钮,例如单色器、镜子、狭缝、BPM等。BioSAXS实验站设备控制界面如图 10所示。
|
图 10 BioSAXS实验站设备控制界面 Figure 10 BioSAXS motor control panel. |
探测器数据采集界面如图 11所示,人工操作时点击Start/Stop按钮就可以进行散射谱的数据采集。
|
图 11 探测器数据采集界面 Figure 11 BioSAXS data acquisition panel. |
利用软件ALBULA查看数据采集所生成的图像文件,如图 12所示。探测器和电离室数据保存文件的格式如图 13所示。
综上所述,本文采用EPICS控制软件对各类电机、探测器和光强检测进行了实验参数设置和实验数据采集,研制完成了BioSAXS实验站的控制系统和数据采集系统。运行结果表明用户操作界面工作正常,实现了支撑小角散射实验的功能,并为用户提供了良好的交互平台。
|
图 12 探测器图像界面 Figure 12 Panel of detector image. |
|
图 13 探测器和光强检测系统数据保存文件 Figure 13 Data for the detector and light intensity detection system. |
BioSAXS实验站运动控制系统实现了狭缝、样品台和直通光阻挡器的灵活调节,极大地方便了实验站的调试和用户的使用。在不影响散射实验的情况下,光强检测系统实现了样品前后的光强测量,支持了实验数据的归一化处理。快门和探测器的同步控制,为实现快速时间分辨散射实验提供了条件。监控系统方便了样品姿态的调节,提高了实验效率。
BioSAXS已经于2015年4月正式通过验收,并正式对全国相关用户开放。实验站控制和数据采集系统正常,满足生物小角散射实验站对运动控制系统和数据采集系统的实验需求。
| [1] |
刘倩, 边风刚, 柳义, 等. 基于EPICS的SSRF-X射线小角散射实验站运动控制系统[J].
光学精密工程, 2009, 17 (8) : 1804 –1809.
LIU Qian, BIAN Fenggang, LIU Yi, et al. EPICS-based motion control system of SSRF-SAXS[J]. Optics and Precison Engineering, 2009, 17 (8) : 1804 –1809. ( 0)
|
| [2] |
Tian F, Li X H, Wang Y Z, et al. Small angle X-ray scattering beamline at SSRF[J].
Nuclear Science and Techniques, 2015, 26 (3) : 030101 .
DOI: 10.13538/j.1001-8042/nst.26.030101 ( 0)
|
| [3] |
米清茹, 郑丽芳, 刘松强. EPICS控制系统软件开发环境[J].
核技术, 2008, 30 (1) : 1 –4.
MI Qingru, ZHENG Lifang, LIU Songqiang. EPICS software development environment[J]. Nuclear Techniques, 2008, 30 (1) : 1 –4. ( 0)
|
| [4] |
洪春霞, 周平, 李怡雯, 等. 一种生物X射线小角散射光束线站自动换样溶液蠕动装置[J].
核技术, 2016, 39 (1) : 010102 .
DOI: 10.11889/j.0253-3219.2016.hjs.39.010102 HONG Chunxia, ZHOU Ping, LI Yiwen, et al. An automatic solution-sample-changing peristaltic device at biological small angle X-ray scattering beamline[J]. Nuclear Techniques, 2016, 39 (1) : 010102 . DOI: 10.11889/j.0253-3219.2016.hjs.39.010102 ( 0)
|
| [5] |
郭冰, 张宁, 徐海霞, 等. TMSR CSS集成开发工具软件的实现与应用[J].
核技术, 2013, 36 (11) : 110602 .
DOI: 10.11889/j.0253-3219.2013.hjs.36.110602 GUO Bing, ZHANG Ning, XU Haixia, et al. Research and implement of control system studio for TMSR[J]. Nuclear Techniques, 2013, 36 (11) : 110602 . DOI: 10.11889/j.0253-3219.2013.hjs.36.110602 ( 0)
|
| [6] |
Control System Studio (CSS) at KEK[OL].2013-08.http://www-linac.kek.jp/cont/epics/css
( 0)
|
| [7] |
CODAC core system overview[OL].2013-08.http://static.iter.org/codac/cs/CODAC_Core_System_Overview_34SDZ5_v4_1.pdf
( 0)
|
| [8] |
Motor Record and related software[OL].2015-01.http://www.aps.anl.gov/bcda/synApps/motor/R6-9/motorRecord.html
( 0)
|
| [9] |
EPICS R3.14 Channel Access Reference Manual[OL].2015-05.http://www.aps.anl.gov/epics/base/R3-14/12-docs/CAref.html
( 0)
|
| [10] |
EPICS 3-14 Record Reference Manual[OL].2014-12.https://wiki-ext.aps.anl.gov/epics/index.php/RRM_3-14
( 0)
|
| [11] |
PILATUS Detector Systems USER MANUAL[CD]
( 0)
|
| [12] |
areaDetector:EPICS Area Detector Support[OL].2015-09.http://cars.uchicago.edu/software/epics/areaDetectorDoc.html
( 0)
|


0)