-
目前,由中国科学院近代物理研究所(下文简称近物所)设计、承建和运维了多台离子加速器装置,包括:已建成运行的兰州重离子冷却储存环(HIRFL-CSR),正在建设的强流重离子加速器装置(High-intensity Heavy Ion Accelerator Facility,HIAF)、哈尔滨工业大学空间环境地面模拟装置(Space Environment Simulation and Research Infrastructure,SESRI)和中国科学院新疆理化技术所质子位移损伤效应模拟试验装置(Proton Radiaton Effects Facility,PREF)。HIRFL-CSR是一个集束流累积、冷却、加速于一体的多功能重离子研究平台,由重离子冷却储存环-主环(CSRm)和实验环(CSRe)组成。其中CSRm注入束能量范围为
$8 \thicksim 30$ MeV/u,束流注入和累积总时间约为10 s,在脉冲模式下(周期约30 s)可将束流加速到$100 \thicksim 900$ MeV/u(238U72+,400 MeV/u;12C6+,900 MeV/u)。CSRm也可以运行在直流模式下,进行能量要求恒定的束流实验研究。CSRe运行在直流模式,接收由CSRm快引出并在放射性次级束线打靶后的束流,束流的最高能量为400 MeV/u(238U90+)和600 MeV/u(12C6+)[1]。HIAF是强流重离子加速器装置,可以实现将238U35+加速到830 MeV/u,束流流强达到$ 1.0\times10^{11} $ 。SESRI设计提供$100 \thicksim 300$ MeV的质子束和$7 \thicksim 80$ MeV的重离子束。PREF设计提供$10 \thicksim 60$ MeV的稳定、连续的质子束。由于目前国际上并没有一个成熟的、可移植到离子加速器装置的物理控制系统,所以迫切需要自行开发一个适用于离子加速器装置的物理控制系统。PACS(Physics-oriented Accelerator Control System)是由近物所自主设计研发的面向物理的加速器控制系统,旨在为不同物理过程、不同规模、不同硬件系统、不同底层控制的加速器装置快速生成统一、可靠、高性能、智能化的加速器物理控制软件。PACS整体框架包括应用层、物理层和控制层三层。在控制层中封装了EPICS系统接口、MySQL数据库接口,对底层控制系统和数据库进行了隔离,并提供统一、简洁、易用的高层接口,减小需要链接到底层控制系统的物理应用的开发难度及工作量[2]。所有的物理控制过程软件都是通过统一的接口嵌入系统,虚拟加速器会智能化地调度这些软件按序执行,并将计算得到的结果发送到对应的硬件,从而实现对加速器装置的操作。
PACS设计框架的合理性、可行性,关系着整个系统的成败,所以在PACS设计开发之初,先行验证其设计框架的合理性和可靠性十分必要,为此开发了基于PACS的直流/脉冲双模式工作点调节软件。本文将介绍基于PACS的直流/脉冲双模式工作点调节软件(下文简称工作点调节软件或该软件)的设计思想、数据流程和功能实现,其次开展对该软件的功能测试。在进行功能测试时,首先搭建HIRFL-CSRe的EPICS虚拟测试环境和MySQL测试数据库,对该软件的工作点调节功能在虚拟环境进行测试;然后在HIRFL-CSR真实环境对该软件在直流和脉冲模式下的工作点调节情况进行测试。通过得到的测试结果来验证工作点调节软件设计的正确性,更重要的是验证PACS设计框架的可靠性和可行性。
-
Python是非常灵活的计算机程序语言,提供了许多现成可用的第三方软件包,PACS设计框架采用面向对象技术(Object-oriented Programming,OOP)和Python语言编程实现,该工作点调节软件也采用了Python语言和面向对象的技术进行编程实现[3]。
工作点调节软件开发和测试工作是在兰州重离子加速器冷却储存环(HIRFL-CSR)上完成。由于PACS具有良好的封装性,开发人员通过PACS提供的接口将物理软件嵌入系统中,然后通过虚拟加速器的调度实现不同的物理功能,而不必关心软件与EPICS和数据库以及系统的其他模块之间的交互细节。PACS的核心关键是虚拟加速器,其能够汇聚、分析所有设备IOC(Input-Output Controller)发布的PV 变量(Process Variables),针对这些PV变量进行自动操作,也能够通过其发布的PV响应用户操作、进行物理计算并将数据下发到设备IOC。
光学参数是同步加速器最重要的物理参数,所以工作点调节和光学参数的计算、设定是加速器物理控制系统需要具备的最基本的物理功能。MADX是由CERN开发的用于带电粒子光学设计及交变梯度加速器和束线研究的计算软件[4],是国际上通用的光学计算软件,结果稳定、可靠。经过调研,决定采用在程序里封装MADX的方式,为该软件提供工作点计算的功能。工作点调节软件通过PACS提供的接口嵌入系统后,再通过点击该软件界面的按钮实现对软件的操作,继而完成对相应PV变量的操作,实现对装置的模式切换、工作点的调节,从而达到对装置束流调节的目的。在该工作点调节软件中,根据用户的输入,读取不同模式下的光学文件,作为MADX的输入文件,再对MADX的计算结果进行加工和提取,将结果发送到虚拟加速器,由虚拟加速器进行后续操作,并完成与EPICS系统和数据库的数据交换,将最终得到的包含电流值的PV变量发送到对应的电源,完成对电源的电流调节。
-
工作点调节软件数据流程如图1所示。首先,软件通过与界面的通信,读取用户选择的运行模式和输入的目标工作点、束流种类和能量等参数,将这些参数写入到各模式对应的MADX输入文件中;其次,软件调用MADX进行物理计算,将计算得到的twiss参数和磁铁强度
$ K_1 $ 值返回到虚拟加速器进行下一步的工作,并在界面进行Beta函数和工作点的显示;然后将$ K_1 $ 值发送到对应的磁铁,并与数据库进行通信,读取该磁铁的测磁曲线,将$ K_1 $ 值转换成电流值,并对该电流值添加一个固定的偏移量(零漂);最后,通过与EPICS系统的通信,将包含此电流值的PV发送到磁铁对应的电源,修改电源的电流值,完成对电源的控制。该软件实现了通过改变工作点实现对电源电流的修改,最终实现对束流的控制。 -
PACS的界面层与中下层完全隔离,通过统一的接口进行通信。PACS将系统所有的参数和操作以PV变量的形式提供给界面端,界面端的软件只需操作PV变量就能实现与中下层的交互。开发人员对界面端的任何修改不会影响到中下层的模块,而对中下层的修改不会影响到界面端的使用。工作点调节软件的测试界面(图2)采用Python语言的第三方软件包PyQt和Matplotlib编程实现[3, 5-6],包括菜单区、用户操作区、工作点显示区和光学显示区。用户通过单击菜单区的Setting按钮实现登陆与注销功能。在用户操作区,用户可以在操作区域中输入注入束流相关的参数,包括注入时的粒子种类、能量,以及水平工作点和垂直工作点,然后单击Cal按钮计算工作点,就会在工作点显示区的共振图上绘制出通过软件计算得到的工作点,在光学显示区中绘制出软件计算得到的Beta函数。通过单击按钮区的Send按钮就会将计算得到的光学参数发送到虚拟加速器中进行系统下一步的操作。用户操作区的引出参数区可设置束流的引出能量、水平工作点和垂直工作点,该功能仅在脉冲模式下可用。用户可以通过单击按钮区的Op.Mode按钮来实现直流模式和脉冲模式之间的切换,还可以在运行模式及工作点检测区的Op.Mode框中确认当前的运行模式。该界面支持局部放大、平移和抓图功能。
工作点调节软件编写完成后,将其添加到PACS的物理过程模块中。图3所示为将PACS布署在CSR上的光学界面,用户通过在该光学界面的工作点软件作用区域输入工作点来实现对工作点和光学参数的调节。用户点击界面上的波形查看按钮和光学查看按钮来查看当前状态下的工作点和光学参数。
-
为了测试工作点调节软件的可用性和PACS设计框架的可行性,首先搭建了测试用的MySQL数据库[7],该测试数据库包括12个表,记录了CSRe包含的磁铁和电源设备的参数以及磁铁和电源的对应关系(CSRe上共有22块四极磁铁和22块电源)、磁铁的测磁曲线、物理量与控制量的映射关系、束流参数等数据;其次,在EPICS系统中搭建了软IOC,用于模拟CSRe上的磁铁和电源设备[8];最后,将CSRe的lattice文件作为工作点调节软件的输入文件,进行直流模式下的工作点匹配和光学参数计算。依次将工作点设置为(2.54, 2.56)、(2.53, 2.58)、(2.52, 2.57)、(2.52, 2.56)、(2.53, 2.57)等多组数据来进行该软件在直流模式下工作点调节功能的测试,图2所示为将工作点设置为(2.53, 2.57)之后的匹配结果,从图中可以看出该软件在直流模式下运行正常,达到了设计预期的效果。值得一提的是,该虚拟测试环境的提出和搭建,为全系统的虚拟测试环境搭建提供了宝贵的经验;测试数据库的搭建也为系统正式版本的数据库搭建提供了参考。
为了测试该软件在真实环境中的运行情况,在HIRFL-CSR上对该软件进行测试。该实验是在CSRe的直流模式和CSRm的脉冲模式下开展的。在实验1中,对CSRe的工作点进行调节,测试得到的结果如图4所示,结果表明将工作点从(2.530, 2.570)调整到(2.535, 2.575)时,以磁铁41Q01为例,磁铁电源的电流会从267.856 A变到267.935 A。在实验2中对CSRm脉冲模式下的注入段工作点进行了调整,测试得到的结果如图5所示,由图5可知,将CSRm的注入工作点从(2.610, 2.610)调到(2.615, 2.615)时,以磁铁21Q01为例,其注入平台的电流值从24.296 104 A变到28.975 3 A。由实验结果可知该软件能够实现直流模式和脉冲模式下的工作点调节,为PACS系统提供光学计算的功能。
-
基于PACS的直流/脉冲双模式工作点调节软件是以近物所设计和承建的大科学装置为对象进行开发的,目的是为了实现一个可以嵌入PACS框架的工作点和光学参数计算和设定的软件,并且提供一个可调节工作点、显示工作点和光学参数的图形界面。对该软件在HIRFL-CSR的虚拟环境和真实环境进行功能测试,结果表明:该软件能够很好地完成直流/脉冲双模式下工作点和光学参数的设置、计算。充分验证了PACS设计框架的可行性,特别是验证了嵌入任意加速器物理计算软件的可行性,为PACS在CSR上的正式部署打下了坚实基础。同时,研究中搭建的虚拟测试环境和MySQL测试数据库也为PACS的全系统测试环境的搭建和正式数据库的搭建提供了宝贵经验。
Development and Validation of Lattice Adjustment Application Based on PACS under DC/Pulse Dual-mode
doi: 10.11804/NuclPhysRev.37.2019057
- Received Date: 2019-11-01
- Rev Recd Date: 2020-12-15
- Available Online: 2021-11-22
- Publish Date: 2020-12-20
-
Key words:
- PACS /
- accelerator physics control system /
- lattice adjustment /
- OOP
Abstract: To reduce the amount of duplication efforts of physical and program developers, a portable, extensible and maintainable PACS (Physics-oriented Accelerator Control System) is proposed and implemented for heavy ion accelerator facilities by IMP (Institute of Modern Physics, Chinese Academy of Sciences). For testing the feasibility of the PACS, a lattice adjustment application and its new GUI for both DC and pulse modes is programmed by Python language. The DC mode, built with the SQL database and soft IOC of the EPICS, is performed in the HIRFL-CSRe. In addition, the pulse mode is tested in the HIRFL-CSRm. The testing results show that the tune adjustment and optics calculation in the two modes are implemented successfully, and the PACS can provide the interfaces between the modules and layers. Therefore, the framework of the PACS is feasible.
Citation: | Guimei MA, Jie LIU, Jiancheng YANG, Weiping CHAI, Yunpeng ZHU, shuang RUAN. Development and Validation of Lattice Adjustment Application Based on PACS under DC/Pulse Dual-mode[J]. Nuclear Physics Review, 2020, 37(4): 842-847. doi: 10.11804/NuclPhysRev.37.2019057 |