论文部分内容阅读
中子散射实验和同步辐射实验是用于探测物质微观结构的两种主要方法,由于两者作用机理不同,可以用于探测物质不同方面的特性。随着科学技术的不断发展,克量级小样品的测量需求越来越多,中子散射实验迫切需要高通量中子源的支持。目前高通量中子源主要有反应堆中子源和散裂中子源,其中散裂中子源具有通量更高、成本低、不使用核燃料、活化产物少等优点。 目前正在建设的中国散裂中子源(China Spallation Neutron Source,CSNS)是我国第一台散裂中子源,一期将建设三台谱仪。本课题的目标是为三台谱仪之一的小角散射谱仪(Small Angle Neutron Spectrometer,SANS)设计并实现数据获取系统软件。 本文根据中国散裂中子源小角散射谱仪的最新设计需求,对数据获取软件采用的操作系统、图形界面框架、编程语言、数据库管理系统和软硬件架构等方面进行了调研,最终在Linux操作系统下,采用C++语言及Qt和MySQL等开源技术,设计并研制了小角散射谱仪的数据获取系统软件。该软件实现了电子学配置、运行控制、数据网络读出、在线数据处理和存储、运行状态监测和错误报警等数据获取软件基本功能,以及图形用户操作界面、在线数据库、波形及直方图展示等附加功能。 为了提升数据获取软件数据读出和处理的整体速度,本课题设计并实现了加锁的环形缓冲区,通过多线程编程提升速度;此外,本课题还通过数据抽样处理及数据缓冲方法,从数据存储和CPU利用等方面进一步提升了性能。 本文主要介绍该数据获取系统软件的设计与实现,包括硬件架构与软件部署,并给出其性能、稳定性的测试结果。