过程计算机系统 pcs,科学网-对PCS(等离子体控制系统)软件基本结构的理解-章勇的博文...

对PCS基本结构的理解

Outline

一、什么是PCS

二、PCS的系统组成(基础结构+安装、应用的定制代码)

三、PCS的相关软件技术(内存管理、进程调度、实时进程通讯)

四、PCS的硬件架构(主节点+计算节点)

五、PCS软件控制模块(主节点:时序、消息服务,用户界面,波形服务,主机实时进程;计算节点:实时控制进程)

六、等离子体控制要求(电磁、密度控制等)和反馈控制算法

七、PCS中的主要控制算法

八、如何在PCS中集成新的算法

九、PCS与模拟器闭环模拟运行

正文

一、什么是PCS

以带低通滤波PID反馈控制方法为主的等离子体实时控制系统,界面由IDL编写,控制代码由C编写,数据存储主要采用MDSPLUS

二、PCS的系统组成(基础结构;安装、应用的定制代码)

1、基础结构:提供常规和通用的功能,并可在此之上建立定制功能

2、定制代码:应用用户所需的控制算法

3、安装定制代码:定义输入输出信号、控制算法以及控制系统中实时节点计算机的安装

三、PCS的相关软件技术(内存管理、进程调度、实时进程通讯)

1、内存管理:采用了锁内存技术,提高了系统的实时性

2、进程调度:由PCS基础结构代码通过硬亲和性设置各项控任务在确定的物理CPU上运行,保证了任务执行的实时性

3、实时进程通讯:采用共享内存方式提高系统的实时性和安全性

四、PCS的硬件架构(主节点+计算节点)

1、主节点:用户管理,用户界面,为计算节点提供基本网络服务、任务分配管理、监控功能等

2、计算节点:实时控制计算

五、PCS软件控制模块(主节点:时序、消息服务,用户界面,波形服务,主机实时进程;计算节点:实时控制进程)

1、用户界面:用于操作人员指定PCS的输入参数,如某放电方案下等离子体参数随时间演化的波形,相应的控制参数等;由IDL编写,对于控制内容进行静态(界面中的Ctgy)和动态(Phase和Sequnence)的组织

2、波形服务:PCS的中心存储区,存放用户设置等等离子体参数和控制参数

3、主机实时进程:与实时节点计算机控制进程一一对应,将实时控制代码和数据下载到实时节点计算机上,为放电作准备

4、时序服务:协调PCS各部分的工作时序;一次放电周期中PCS的执行分为设置、执行、清除3个阶段

5、消息服务:从其他进程接受日志消息,并显示到用户界面上,并监视其他进程是否正常;通过记录文件和消息窗口2种方式与操作人员和编程人员交互

6、实时控制进程:计算节点上运行的程序,在放电过程中主要执行如等离子体电流、密度、位置位形等参数的反馈控制算法;涉及实时任务分配(可由PCS基础结构代码实现)、数据获取(来自界面设置、采集数据、计算结果)、实时进程间的通讯(节点内部主要采用锁存技术共享内存,节点间通过myrinet网络传输等方式)、实时控制进程的执行顺序

六、等离子体控制要求(电磁、密度控制等)和反馈控制算法

主要有电磁控制(等离子体电流、位置、位形控制)和密度控制,并广泛采用PID控制

七、PCS中的主要控制算法

PCS中主要有密度控制、线圈电流控制、等离子体电流位置、等磁通控制和实验结果分析、实时位形显示、系统保护等算法

八、如何在PCS中集成新的算法

PCS中用定制代码实现各种控制功能,针对不同的装置,所需的控制内容和方法不同。在PCS中增加新的控制内容,主要涉及目录、算法文件的而编写,确定分配的物理CPU及执行的顺序,数据存储三个方面。

1、目录、算法文件的而编写

PCS中各控制目录和算法存放在_master、< category >algorithms和_master命名形式的文件中。对应以下功能:

_master.h:定义在PCS界面上显示的目录名字,及目录下默认的Phase名字和主要的sequence定义,如“primary,secondary”等;

< category >algorithms.h:指定了改目录下所有可选算法对应的文件名;

_master.h:具体控制算法的实现,一般包括了各种目标向量,PID控制参数、输出控制命令、各种参数内存块、算法的主函数名的定义,其他全局或静态变量的定义,以及算法的初始化代码、主函数代码、清除代码等;

要向PCS添加新的控制算法,需要先编写合适的_master文件,并把文件名添加到算法文件列表< category >algorithms.h,同时在PCS的Makefile文件添加这些文件。当重新编译PCS时,新的应用会集成到PCS中去。

要添加新的控制目录,还需编写相应的_master.h文件,并将该文件和算法列表文件添加到总目录文件categories.h中

2、执行位置和顺序

确定执行该算法的物理CPU及先后执行的顺序

3、数据存储

算法中定义的一些向量,如存放界面预设各类目标向量(target vector),PID控制参数向量(P vector)、中间计算结果向量(shape vector)以及控制向量等,有些变量需要在放电后存入该次放电相应的Mdsplus中,以便后期数据分析和PCS历史炮的调用等。新实现的控制算法,有关变量只存在波形服务中,即计算机内存中,而没有在Mdsplus上自动创建相应节点,因此需要在PCS运行目录下手动调用函数实现新节点的添加。

九、PCS与模拟器闭环模拟运行

PCS有正常放电运行模、硬件测试、模拟等运行方式。模拟器分为数据模拟(data simserver)和模型模拟(simulation simserver)。PCS与模拟器的闭环运行可以充分验证算法的正确性和性能。2者间通过socket通讯实现数据交互。

参考文献:

1、《基于Linux集群架构的等离子体控制系统》袁旗平 博士论文

2、《Application Programmer’s Guide to the Plasma control system》美国通用原子能所 PCS系统应用程序员手册2008年版

转载本文请联系原作者获取授权,同时请注明本文来自章勇科学网博客。

收藏

分享

分享到:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值