APP下载

基于MDSplus的NBI数据采集系统①

2017-06-07杨振汉胡纯栋赵远哲崔庆龙

计算机系统应用 2017年5期
关键词:子网脉冲远程

杨振汉,胡纯栋,盛 鹏,赵远哲,张 睿,崔庆龙

1(中国科学院 等离子体物理研究所,合肥 230031)

2(中国科学技术大学 研究生院科学岛分院,合肥 230026)

基于MDSplus的NBI数据采集系统①

杨振汉1,2,胡纯栋1,盛 鹏1,赵远哲1,张 睿1,2,崔庆龙1

1(中国科学院 等离子体物理研究所,合肥 230031)

2(中国科学技术大学 研究生院科学岛分院,合肥 230026)

为了中性束注入(Neutral Beam Injection,NBI)系统的数据格式与东方超环(EAST)兼容,方便实验结果共享和国际学术交流,设计了基于MDSplus(Model Drive System plus)的NBI数据采集系统.数据采集模块采用双缓冲技术和多线程机制,解决了NBI连续长脉冲数据采集问题.数据存储模块采用MDSplus数据存储格式,通过MDSplus软件开发包的jScope软件访问实验数据,解决了NBI数据格式不统一和实验数据共享问题.该系统在测试台中满足了实验运行需求,为投入应用到下一轮EAST-NBI长脉冲注入实验中奠定了良好的基础.

中性束注入;东方超环;模型驱动系统;数据采集系统;双缓冲;多线程

东方超环(EAST)是中国科学院等离子体物理研究所自行研制的国际首个全超导非圆截面托卡马克装置,中性束注入加热是托卡马克上对等离子体的外部加热和维持的主要手段之一,是EAST装置实现高参数稳态运行必备的加热手段[1].

NBI数据采集系统是获取NBI实验数据的主要途径,为NBI实验研究与分析提供重要的数据资源. LZO是目前NBI数据采集系统提供的主要数据格式,LZO算法是一种高压缩比和解压速度极快的压缩算法,但LZO支持的语言版本较少,在核聚变领域不通用,给国际交流造成了不变.MDSplus是 MIT专门为核聚变脉冲放电试验设计的通用、可移植的软件系统,数据访问方式统一,已成为磁约束核聚变研究领域通用的数据存储格式.在国外, MDSplus已成功应用在美国GA的DIII-D、PPPL的NSTX、MIT的CMOD、欧共体的JET、意大利IGI的RFX和韩国NFRC的KSTAR等聚变实验装置上;在国内,MDSplus作为实验数据系统的一部分,也成功的应用于EAST聚变实验中.为了使NBI实验数据格式与EAST兼容,方便国际交流和结果共享,本文设计了基于MDSplus的NBI数据采集系统.

1 系统需求分析与系统设计

1.1 系统需求分析

NBI数据采集系统是为NBI长脉冲等离子体放电实验提供一套包括现场信号的采集、存储和访问的系统.基于软件工程设计思想,NBI数据采集系统需满足功能、性能、可靠性和接口等方面的要求:

(1)功能需求:在采集前端,要尽可能屏蔽电磁干扰,减少采集信号的误差;在存储后端要确保采集到的信号不发生丢失;在数据访问时要保证数据平滑绘制.

(2)性能需求:网络的响应时间应在1s以内,否则提示出错;灵活性强,运行环境的改变不影响该系统的运行效率.

(3)可靠性需求:因放电实验成本高,所以要确保系统出故障的概率尽可能低,以及故障后迅速恢复;保持良好的日志记录,既要记录系统的正常日志,也要记录系统的错误日志.

(4)接口需求:用户界面友好,易操作;提供软硬件接口,以便接收信号和反馈信息.

1.2 系统设计

系统设计的合理与否直接关系到整个系统的性能以及将来的系统扩展.根据系统的需求分析,NBI数据采集系统主要包括三个部分:数据采集模块、数据存储模块、数据服务模块.

2 系统的实现

2.1 数据采集

NBI数据采集系统是一个分布式的数据采集系统,由现场采集设备、服务器和远程终端等组成[2],NBI数据采集系统的结构图如图1所示.现场采集设备分别连接到三个现场子网:现场诊断子网、现场数据子网和现场控制子网.现场诊断子网通过1Gbps光纤直接连接到远程诊断子网;控制服务器把控制网分为现场控制子网和远程控制子网两个字网,并与这两个子网通过1Gbps光纤进行通信;数据服务器把数据网分成远程数据子网和现场数据子网两个子网,通过1Gbps光纤和这两个子网进行通信,诊断分析终端通过远程诊断子网访问数据服务器上的历史数据.Web服务器通过远程控制子网和远程数据子网连接到数据服务器,远程用户通过浏览Web服务器网页来访问NBI实验数据.

图1 NBI数据采集系统结构

2.1.1 硬件设计

NBI现场测控层所处位置的电磁干扰较强,现场信号较多,采集时间较长,为了满足NBI实验高速稳定的采集和准确快速的传输的要求,数据采集模块采用凌华公司生产的工业控制计算机cPCIS-2632.

1)机箱

cPCIS-2632R机箱配置3U、8槽、32位CompactPCI背板,2个最大功率为500W的电源,支持带P2接头的后走线I/O.

2)控制器

cPCI-HL3965D控制器配置双核Intel(R)Core(TM) Duo T7500 2.20GHz处理器,4GB DDR2 667MHz内存, 500GB硬盘,2个千兆以太网端口,一块用于和数据服务器通信,实现数据存储,另一块用于提供原始数据访问.

3)采集卡

cPCI-9116采集板卡支持64路单端或32路差分模拟输入,最高采样率250KHz,16位分辨率,24MHz内部时钟源,支持外部数字触发和模拟触发.

2.1.2 软件实现

数据采集软件开发于Fedora14 Linux操作环境下,用C++语言编程,基于多线程任务处理技术和TCP C/S(Client/Server)通信模式完成,并运行于采集设备的上位机[3].

图2 数据采集软件设计流程图

如图2所示,数据采集模块首先要向MCS进行网络注册,并对采集板卡进行注册,然后等待MCS的 GetReady网络命令[4].在实验操作人员按下GETREADY命令按钮后,数据采集模块会收到MCS发来的本次放电的相关配置参数,主要包括采集卡的时钟源、触发模式、数据读取方式、模拟输入电压范围等,数据采集模块按照配置参数对采集板卡进行相关的配置.完成配置后,数据采集子系统等待MCS的网络Start命令,实验操作人员按下START命令按钮后,并且在外部TS硬件发出触发信号后,数据采集模块创建一个线程来采集现场模拟信号[5].

cPCI-9116采集卡输出数据时有单缓冲和双缓冲模式.单缓冲输出模式下,用户可根据预采点数为采集板卡开辟一个缓冲区,在采集完成预先设定的采集点数时,将数据传输到该用户缓冲区.而在双缓冲输出模式下,用户可交替使用两个数据缓冲区,实现连续稳定的数据采集,能够大大提高系统性能,因此采集板卡选择双缓冲输出模式[6].

2.2 数据存储

MDSplus以树为区分单位,所有试验数据都以树型层次结构保存,这种树型结构能够清楚地表明各个节点之间的逻辑关系.MDSplus树有两种树型结构:模型树和脉冲树,模型树和脉冲树的关系如图3所示.模型树存储MDSplus树的层次结构和常数数据,如树的节点信息.脉冲树是具有真实数据的模型树,脉冲树保存实验数据和实验配置信息.脉冲树的创建以当前模型树作为本脉冲树的逻辑结构,但脉冲树创建成功后,脉冲树的逻辑结构不再随着模型树逻辑结构的改变而发生变化[7].

2.2.1 创建模型树

中性束注入系统是一个稳定的系统,采集系统中需要采集的现场信号不会频繁变化,因此选择执行效率高的TCL命令方式来创建NBI模型树.但是采集系统需要采集的现场信号多达32个,模型树比较复杂,需要的TCL命令比较多,利用Linux Shell特殊重定向Here Document技术把所有的TCL命令写成Shell脚本形式.NBI模型树只包含所有分支节点的结构信息,并没有实际数据.模型树的炮号默认为-1,创建的EAST_NBI模型树的逻辑结构如图4所示.整个模型树包含四个分支:原始数据,时间,参数和处理后的信号.原始数据分支用来保存从采集设备采集到的32个现场信号的原始实验数据;时间分支用来存储采集设备的触发时间、采集时间和采集频率;参数分支用来保存MCS发给采集设备的配置信息;处理后的信号分支下的32路信号通过TDI表达式建立,信号的数据轴来源于原始数据分支下对应信号的原始数据,信号的时间轴来源于时间分支下的时间信息[8].

图3 模型树和脉冲树的关系示意图

图4 EAST_NBI模型树逻辑结构图

2.2.2 创建脉冲树

NBI脉冲树是基于NBI模型树拓展而来,NBI脉冲树复制了NBI模型树的结构并在相应节点中赋值了数据信息,并根据文件类型保存在.characteristics、.tree和.datafile三个文件中.其中,.characteristics文件保存数据库每个节点的NCI记录;.datafile文件用于存储数据库节点上的大量实际数据,当数据被存储在某个节点时,它被附加在.datafile文件的末尾并且此数据的偏址被记录在该节点的NCI记录中;.tree文件用来保存树的结构信息[9],该文件只有在编辑状态下才能被修改.

MDSplus将NBI采集系统采集到的实际数据和数据的存储信息分开保存,MDSplus将.tree文件整个映射到内存,大量的实际数据保留在硬盘上,只有在访问时候才调入内存,减少了数据访问所占用的内存,提高了数据的访问效率.创建脉冲树的流程图如图5所示,首先连接MDSplus服务器,然后调用创建脉冲树的Shell文件,根据炮号创建具体的脉冲树,最后把采集设备采集到的实验数据写入到对应的脉冲树中.

图5 创建脉冲树流程图

2.3数据服务

NBI数据采集系统利用MDSPlus自身提供的图形工具jScope浏览脉冲树上节点的信号波形[10]. jScope可运行在服务器端也可运行在远程客户端, NBI数据采集系统利用jScope实现本地访问和远程访问.本地访问时,jScope运行在服务器端,直接访问MDSPlus服务器本地存储的数据;客户端运行XShell和Xmanager实现在XShell中显示远程服务器的图形界面.远程访问时,jScope运行在客户端,MDSPlus服务器端只需要启用基于TCP/IP协议的mdsip服务,运行在客户端的jScope就可以通过java通信直接与远程数据交互,实现访问远程数据.

3 系统测试

为检测NBI采集系统的可靠性,在NBI测试台上对该系统进行测试.将测试台NBI现场信号中的灯丝电压和弧电压分别接入接入cPCI-9116采集卡的0通道和1通道,将外部模拟触发信号接入cPCI-9116采集卡的2通道.在定时系统触发后,采集设备cPCIS-2632用100kHz的采样率和24M的内部时钟对通道0和通道1的现场信号进行采集,并将采集到的数据上传到MDSPlus数据服务器,存储到炮号为14532的脉冲树中.图6为使用jScope看到的炮号为14532脉冲树中灯丝电压和弧电压的波形,经过和NBWAVE上的结果比较和验证,采集结果可靠.经过多次测试,系统均能稳定、可靠的运行,达到了设计的要求.

图6 jScope显示采集的信号波形图

4 结语

本文设计了一套基于MDSplus的NBI数据采集系统.该套系统利用双缓冲技术来实现连续数据采集,采用多线程机制来提高系统效率,使用MDSplus数据库来统一数据格式.系统测试表明,本方案切实可行.该系统将在下一轮EAST-NBI长脉冲等离子体放电实验中投入应用,为兼容EAST数据格式、方便国际交流和共享实验结果奠定良好的基础.

1 Hu CD,et al.Conceptual design of neutral beam injection system for EAST.Plasma Science and Technology,2012, 14(6):567–572.

2 Sheng P,Hu CD,Zhang XD,Cui QL,Zhao YZ,Wu DY, Song SH,Yu L,Liang LZ,Zhang R,Lin Y.Data acquisition system of neutral beam injector on EAST.Journal of Fusion Energy,2014,33(5):544–548.

3 ZhangXD,HuCD,ShengP,LiuZM,ZhaoYZ. Development of a data acquisition control system for the first NBI on EAST.Plasma Science and Technology,2013,5(12): 1254–1258.

4 Sheng P,Hu CD,Song SH,Zhao YZ,Zhang XD,Wu DY, Cui QL,Zhang R,Lin YL.The NBI control system for the EAST.Journal of Fusion Energy,2014,33(5):529–534.

5 Zhao YZ,Hu CD,Sheng P,Zhang XD,Wu DY,Cui QL. Design of timing system software on EAST-NBI.Journal of Fusion Energy,2013,32(5):523–594.

6黄文君,王华忠,杨飞,李实,肖炳甲.MDSplus实时数据采集系统.测控技术,2014,33(22):16–19.

7杨飞,肖炳甲,刘连忠,朱应飞.基于MDSplus的EAST工程数据获取及显示.微计算机信息,2010,26(3):20–22.

8 Hu CD,Xie YH,Xie YL,Liu S,Xu YJ,Liang LZ,Jiang CC, Sheng P,Gu YM,Li J,Liu Z.Overview of development status for EAST-NBI system. Plasma Science and Technology,2015,10(17):817–825.

9林冬涛,肖炳甲,袁旗平.MDSplus数据存储应用.微计算机信息,2010,26(34):111–113.

10 Anonym.Reading MDSplus data using jScope.http:// www.mdsplus.org/index.php?title=Documentation:Tutorial: UsingScope&open=60817762359885604847601&page=Do cumentation%2FThe+MDSplus+tutorial%2FReading+MDS plus+data+using+jScope.[2016-05-25].

DataAcquisition System of NBI Based on MDSplus

YANG Zhen-Han1,2,HU Chun-Dong1,SHENG Peng1,ZHAO Yuan-Zhe1,ZHANG Rui1,2,CUI Qing-Long1

1(Institute of Plasma Physics,ChineseAcademy of Sciences,Hefei 230031,China)

2(Science Island Branch of Graduate School,University of Science and Technology of China,Hefei 230026,China)

In order to make the data format of NBI(Neutral Beam Injection)system compatible with EAST data and to make international exchange of experimental results effectively,an NBI data acquisition system based on MDSplus (Model Drive System plus)is developed.Double buffer technology and multi-thread mechanism are adopted in data acquisition module to achieve continuous and long-pulse data acquisition.Data storage module selects MDSplus and jScope which can access the experimental data and is packaged in MDSplus’s program developing tools to resolve the problem of unifying NBI data format and sharing NBI experimental data.The system has met the requirements of the experiment in the test and lays a good foundation for the next round EAST-NBI long-pulse injection experiments.

NBI;EAST;MDSplus;data acquisition system;double buffer;multi-thread

国家国际科技合作专项(2014DFG61950)

2016-08-11;收到修改稿时间:2016-09-08

10.15888/j.cnki.csa.005720

猜你喜欢

子网脉冲远程
远程求助
远程工作狂综合征
脉冲工况氧气缓冲罐裂纹修复实践
基于自适应学习率优化的AdaNet改进
子网划分问题研究及应用
远程诈骗
航天器多子网时间同步系统设计与验证
基于Petri网的L企业产品设计变更执行流程优化研究
小型化Ka波段65W脉冲功放模块
超音频复合脉冲GMAW电源设计