一种基于主从结构的实时控制软件框架构建方法

文档序号:10724589阅读:342来源:国知局
一种基于主从结构的实时控制软件框架构建方法
【专利摘要】本发明公开了一种基于主从结构的实时控制软件框架构建方法,构建了主控管理模块(主)、控制执行模块(从)、共享内存区构成。本发明利用了多线程和多进程技术,实现模块在线的加载和卸载,使得功能部署更加方便。同时,更加内聚的程序模块提高了控制策略的执行效率,从而达到更好的实时运行效果。本发明可以将实时控制策略刷新频率提高到1kHz,同时以超过10kHz的频率执行该控制策略并取得反馈控制结果。本发明所采用的器件均选用工业级货架产品,具备很好的通用性和可继承性。
【专利说明】
一种基于主从结构的实时控制软件框架构建方法
技术领域
[0001]本发明涉及托卡马克极向场电源控制方法领域,具体是一种基于主从结构的实时控制软件框架构建方法。
【背景技术】
[0002]现代人类社会对能源的需求量越来越大,而传统的煤炭、石油、天然气等化石能源即将开采殆尽,在不久的将来人类社会必将面临能源短缺、枯竭的困境。核聚变能源作为解决人类能源问题的重要途径正变得越来越重要。托卡马克是实现聚变发电的有效途径之一,极向场系统是热核聚变装置托卡马克的重要子系统。
[0003]极向场电源控制系统属于分布式实时控制系统,其中数据交换、存储、分析部分采用的是x86架构服务器或工控机运行基于EPICS的组态控制软件,而底层的本地控制器采用的是嵌入式实时系统。各个控制器和计算机之间通过网络交换机进行连接,相互传递控制和采集数据,从而实现分布式的实时控制功能。
[0004]传统的本地控制器软件采用集中式设计方法控制极向场电源变流器的输出,由上位机通过分布式网络传递控制参数,通过本地控制器计算并直接实施控制策略从而得到相应的控制结果。每个周期的控制结束后,本地控制器再将采集的数据通过分布式网络传递给上位机做在线或离线的存储和分析。本地控制器的外部接口多种多样,包括UDP、TCP/IP、PC1、PX1、反射内存等等。具备如此之多外部接口和如此之高要求实时性的本地控制器集中式控制方式在应用过程中,有两个问题尤为突出:
1.软件设计以控制流程为导向,数据采集、管理、分发和控制策略的计算、实施具有强耦合的特征。各个功能之间通过强耦合实现快速响应和实时处理。该特征虽然通过强耦合提高了程序的效率,但同时也降低了程序的可扩展性和可维护性。这个问题在增减外部硬件设备时尤为突出。
[0005]2.另一方面,程序各个功能之间的强耦合造成了数据采集、管理、分发与控制策略的计算、实施必须绑定同步执行,无法实现对于不同类型实时性要求的数据分别管理和提高控制实时性的目的。
[0006]
【发明内容】
本发明的目的是提供一种基于主从结构的实时控制软件框架构建方法,以解决现有技术托卡马克装置中极向场电源控制程序存在的问题。
[0007]为了达到上述目的,本发明所采用的技术方案为:
一种基于主从结构的实时控制软件框架构建方法,其特征在于:构建作为主程序部分的主控管理模块,作为从程序部分的若干个控制执行模块,以及若干个双通道的共享内存,共享内存数量对应于控制执行模块数量,所述主控管理模块与控制执行模块构成主从结构,主控管理模块与控制执行模块之间通过共享内存同步交换数据,其中:
主控管理模块有且仅有一个,主控管理模块按照实际任务需要,控制控制执行模块的数量和状态的在线加载和卸载;主控管理模块分为若干个子模块,多个子模块以进程或线程方式存在,且多个子模块之间通过共享内存同步交换数据,其中至少一个子模块设定为具备定时功能的定时子模块,至少一个子模块设定为管理共享内存数据的数据管理子模块,至少一个子模块设定为具备访问外部硬件设备功能的子模块;
控制执行模块由主控管理模块中对实时性要求特别严格的关键功能子模块进行剥离,由剥离出的部分构成控制执行模块;多个控制执行模块程序功能相同且彼此相互独立,控制执行模块由可实现动态调整定义的定时器子模块,以及实现硬件信号控制与采集的功能子模块构成,主控管理模块通过共享内存同步参数控制控制执行模块中定时器子模块的定时周期,继而实现对控制执行模块运行周期的动态调整。
[0008]所述的一种基于主从结构的实时控制软件框架构建方法,其特征在于:主控管理模块的运行周期为I毫秒,控制执行模块的运行周期不低于0.1毫秒
所述的一种基于主从结构的实时控制软件框架构建方法,其特征在于:控制执行模块和共享内存的数量取决于需要控制的极向场电源的数量。
[0009]所述的一种基于主从结构的实时控制软件框架构建方法,其特征在于:主控管理模块中,定时子模块提供一个Ims的定时器,是保障程序实时运行的关键;该定时子模块以最高优先级进程的方式运行,以保证Ims定时的可靠性;该定时子模块采用时分策略调度其他子模块分时执行,以保证所有子模块分时访问共享内存。
[0010]所述的一种基于主从结构的实时控制软件框架构建方法,其特征在于:主控管理模块下的所有子模块统一访问共享内存中的数据,但子模块本身不实现对数据的复制和管理,共享数据的管理由数据管理子模块实现,即数据统一集中管理而非分散在各个子模块中。
[0011 ]所述的一种基于主从结构的实时控制软件框架构建方法,其特征在于:主控管理模块中,对所有具备访问外部硬件设备功能的子模块进行分类,区别所访问数据的实时性要求,按照周期的长短和数据量大小以不同的周期进行访问和处理。
[0012]本发明能够将数据管理与控制执行分离以提高程序的可扩展性与可维护性,同时分类管理数据并提高控制策略的执行周期。
【附图说明】
[0013]图1为为本发明具体实施方案示意图。
【具体实施方式】
[0014]—种基于主从结构的实时控制软件框架构建方法,构建作为主程序部分的主控管理模块,作为从程序部分的若干个控制执行模块,以及若干个双通道的共享内存,共享内存数量对应于控制执行模块数量,所述主控管理模块与控制执行模块构成主从结构,主控管理模块与控制执行模块之间通过共享内存同步交换数据,其中:
主控管理模块有且仅有一个,主控管理模块按照实际任务需要,控制控制执行模块的数量和状态的在线加载和卸载;主控管理模块分为若干个子模块,多个子模块以进程或线程方式存在,且多个子模块之间通过共享内存同步交换数据,其中至少一个子模块设定为具备定时功能的定时子模块,至少一个子模块设定为管理共享内存数据的数据管理子模块,至少一个子模块设定为具备访问外部硬件设备功能的子模块;
控制执行模块由主控管理模块中对实时性要求特别严格的关键功能子模块进行剥离,由剥离出的部分构成控制执行模块;多个控制执行模块程序功能相同且彼此相互独立,控制执行模块由可实现动态调整定义的定时器子模块,以及实现硬件信号控制与采集的功能子模块构成,主控管理模块通过共享内存同步参数控制控制执行模块中定时器子模块的定时周期,继而实现对控制执行模块运行周期的动态调整。
[0015]主控管理模块的运行周期为I毫秒,控制执行模块的运行周期不低于0.1毫秒控制执行模块和共享内存的数量取决于需要控制的极向场电源的数量。
[0016]主控管理模块中,定时子模块提供一个Ims的定时器,是保障程序实时运行的关键;该定时子模块以最高优先级进程的方式运行,以保证I ms定时的可靠性;该定时子模块采用时分策略调度其他子模块分时执行,以保证所有子模块分时访问共享内存。
[0017]主控管理模块下的所有子模块统一访问共享内存中的数据,但子模块本身不实现对数据的复制和管理,共享数据的管理由数据管理子模块实现,即数据统一集中管理而非分散在各个子模块中。
[0018]主控管理模块中,对所有具备访问外部硬件设备功能的子模块进行分类,区别所访问数据的实时性要求,按照周期的长短和数据量大小以不同的周期进行访问和处理。
[0019]具体实施例:
如图1所示,主控管理模块包含数据管理和数据计算子模块,对应不同的硬件接口设计UDP通信子模块、数字信号处理子模块、模拟信号处理子模块、现场总线处理子模块等若干个子模块。有三个重复功能的控制执行模块,分别控制12块alpha板卡(电源相位控制卡)。控制执行模块与主控管理模块之间通过一个双通道的共享内存同步数据。
[0020]图1中按照功能和外部接口设备的不同将整个程序划分为若干个子模块。具体包括以下步骤:子模块有各个硬件接口子模块、通信接口子模块、故障处理子模块和控制策略管理子模块。
[0021]其中相位控制alpha卡控制子模块为本地控制器的核心子模块,对实时性要求较高且需要三个相同的子模块分别控制多块alpha板卡,符合控制执行模块的特征。故,将alpha板卡控制子模块划归为控制执行模块,其他子模块划归为主控管理模块。
[0022]主控管理模块:
I)主控管理模块中应包含除alpha板卡控制子模块之外的其他所有功能子模块,包括Udp通信子模块、现场总线子模块、模拟数据采集子模块、数字信号采集子模块、故障处理子模块和控制策略管理子模块。
[0023]2)首先构建定时子模块和数据管理子模块。定时子模块的定时周期选取极向场电源相位控制的一半周期时间,即lms。而数据管理子模块的规模取决于所管理数据的总量,有数据管理子模块的规模可以确定本地共享内存的大小;
3)以事先确定的功能子模块生成各个子模块进程,每个子模块受定时器定时调用执行数据采集、处理、分发和存储的功能;
4)各个子模块本身不保存数据和管理数据,而是将所获取的数据统一通过共享内存区传递到数据管理子模块中进行管理;
5)对主控管理模块中的子模块按照实时性进行分类,现场总线子模块由于受制于硬件特征和信号的类型而划分为慢信号;模拟数据采集子模块和数字信号采集子模块所采集的数据更新速度较快,所以划分为快信号。
[0024]控制执行模块:
I)控制执行模块中包含alpha板卡控制子模块、定时器模块、故障处理模块。
[0025]2)控制执行模块对实时性要求较高,故定时器的定时间隔时间也较短。选取0.1ms?Ims之间动态调整。
[0026]控制执行模块与主控管理模块之间通过双通道共享内存进行通信。
【主权项】
1.一种基于主从结构的实时控制软件框架构建方法,其特征在于:构建作为主程序部分的主控管理模块,作为从程序部分的若干个控制执行模块,以及若干个双通道的共享内存,共享内存数量对应于控制执行模块数量,所述主控管理模块与控制执行模块构成主从结构,主控管理模块与控制执行模块之间通过共享内存同步交换数据,其中: 主控管理模块有且仅有一个,主控管理模块按照实际任务需要,控制控制执行模块的数量和状态的在线加载和卸载;主控管理模块分为若干个子模块,多个子模块以进程或线程方式存在,且多个子模块之间通过共享内存同步交换数据,其中至少一个子模块设定为具备定时功能的定时子模块,至少一个子模块设定为管理共享内存数据的数据管理子模块,至少一个子模块设定为具备访问外部硬件设备功能的子模块; 控制执行模块由主控管理模块中对实时性要求特别严格的关键功能子模块进行剥离,由剥离出的部分构成控制执行模块;多个控制执行模块程序功能相同且彼此相互独立,控制执行模块由可实现动态调整定义的定时器子模块,以及实现硬件信号控制与采集的功能子模块构成,主控管理模块通过共享内存同步参数控制控制执行模块中定时器子模块的定时周期,继而实现对控制执行模块运行周期的动态调整。2.根据权利要求1所述的一种基于主从结构的实时控制软件框架构建方法,其特征在于:主控管理模块的运行周期为I毫秒,控制执行模块的运行周期不低于0.1毫秒。3.根据权利要求1所述的一种基于主从结构的实时控制软件框架构建方法,其特征在于:控制执行模块和共享内存的数量取决于需要控制的极向场电源的数量。4.根据权利要求1所述的一种基于主从结构的实时控制软件框架构建方法,其特征在于:主控管理模块中,定时子模块提供一个Ims的定时器,是保障程序实时运行的关键;该定时子模块以最高优先级进程的方式运行,以保证Ims定时的可靠性;该定时子模块采用时分策略调度其他子模块分时执行,以保证所有子模块分时访问共享内存。5.根据权利要求1所述的一种基于主从结构的实时控制软件框架构建方法,其特征在于:主控管理模块下的所有子模块统一访问共享内存中的数据,但子模块本身不实现对数据的复制和管理,共享数据的管理由数据管理子模块实现,即数据统一集中管理而非分散在各个子模块中。6.根据权利要求1所述的一种基于主从结构的实时控制软件框架构建方法,其特征在于:主控管理模块中,对所有具备访问外部硬件设备功能的子模块进行分类,区别所访问数据的实时性要求,按照周期的长短和数据量大小以不同的周期进行访问和处理。
【文档编号】G06F9/44GK106095451SQ201610424948
【公开日】2016年11月9日
【申请日】2016年6月13日
【发明人】傅鹏, 沈君, 黄连生, 何诗英, 王泽京, 李令鹏, 王广红, 朱黎黎, 陈晓娇
【申请人】中国科学院等离子体物理研究所
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1