一种对单机运行的连续控制系统进行分布式仿真的方法技术方案

技术编号:11399162 阅读:65 留言:0更新日期:2015-05-03 12:13
本发明专利技术提出了一种对单机运行的连续控制系统进行分布式仿真的方法,属于计算机仿真技术领域。本方法首先将组成初始系统的子模型分为直通型模型与非直通型模型两类,然后将初始系统进行拆分,将拆分的每一部分部署在单独的仿真节点上运行,形成分布式仿真结构,在拆分时避免出现在单独的仿真节点上部署直通模型;最后根据计算的最大仿真周期设置分布式环境下的仿真周期。本发明专利技术方法不需要对初始系统进行任何修改,通过前两步骤减小将单机运行、连续控制系统转换为分布式运行时因并行计算的特性而产生的数据延迟,确定最大仿真周期是为了使转换后的分布式系统保留初始系统的稳定性特征,同时最大程度减小各分布式仿真节点之间的数据交换频率。

【技术实现步骤摘要】
一种对单机运行的连续控制系统进行分布式仿真的方法
本专利技术属于计算机仿真
,具体涉及一种对单机运行的连续控制系统进行分布式仿真的方法。
技术介绍
传统开发的连续控制系统一般是单机运行的。但是,在某些特定场合下,需要把这些系统运行在分布式环境中。一个典型的例子是具有分布式结构的飞行模型器,其姿态控制器运行在一个仿真节点上,而被控对象(飞机)模型运行在另一个仿真节点上。为了叙述方便,将单机运行的连续控制系统记为CS,或初始系统;经转变后、运行在分布式环境下的控制系统称为DS,或目标系统。若按照一般“控制器-被控对象”的形式,则CS可表示如下:各参数的含义为:●xc:控制器的状态变量;●uc:控制器的输入,即被控对象的输出;●yc:控制器的输出;●fc(*):控制器的状态方程;●gc(*):控制器的输出方程;●xp:被控对象的状态变量;●up:被控对象的输入,即控制器的输出;●yp:被控对象的输出;●fp(*):被控对象的状态方程;●gp(*):被控对象的输出方程。该系统转换为分布式系统(即DS),其状态方程表达为:其中,●(*)q:离散化函数,表示通过采样对信号*进行离散化。当单机运行的连续系统被拆分成多个部分并部署到分布式环境中运行时,各部分的输出会被离散化。这是由分布式仿真并行计算的特性引起的,不可避免;●?(t-T):表示信号?延迟了T时刻。CS到DS的转换,可通过并行编程等方式完成,但需要花费大量的时间和费用对模型代码进行修改。但另一方面,若不加任何处理直接转换,如方程(1a)、(1b)和方程(2a)、(2b)所示,会因为引入了离散化和延迟因素,从而导致初始系统与目标系统的状态轨迹之间存在误差。
技术实现思路
本专利技术的目的是对传统单机运行的连续控制系统进行分布式改造,在变动很小的情况下实现单机系统的分布式运行,同时保证系统性能。为了达到这个目的,本专利技术提供了一种对单机运行的连续控制系统进行分布式仿真的方法。本专利技术的一种对单机运行的连续控制系统进行分布式仿真的方法,包括以下步骤:步骤1、将组成初始系统的子模型进行分类,分为直通型模型与非直通型模型两类;判断子模型的输出是否直接由输入决定,若是,该子模型为直通型模型,否则该子模型为非直通型模型;步骤2、将初始系统进行拆分,将拆分的每一部分部署在单独的仿真节点上运行,形成分布式仿真结构;拆分规则是:任意选择一个非直通模型,记为mstart,将该模型的输出端断开,并沿着该模型的所有输入路径回溯在该模型之前的直通模型,直到遇到另一个非直通模型,记为mend;mstart到mend之间的部分作为一个独立的拆分单元;拆分的每一部分由拆分单元单独组成或者组合组成;步骤3、确定分布式仿真的步长Tf,要求Tf小于等于最大仿真周期Tmax。所述的步骤3中最大仿真周期Tmax的获取方法是:步骤3.1:寻找初始系统的一个李雅普诺夫函数V;步骤3.2:计算以下α(*)函数:其中:x表示步骤2得到的控制系统的系统变量;由分布式运行产生的输出延迟导致的误差包括:控制器状态变量在单机运行与分布式运行时的误差Δxc,被控对象状态变量在单机运行与分布式运行时的误差Δxp,被控对象的输出在单机运行与分布式运行时的误差Δyp;由分布式运行时强制离散化导致的误差包括:控制器输出在单机运行与分布式运行时的误差Δycq,被控对象的输出在单机运行与分布式运行时的误差Δypq;xp是被控对象的状态变量;xc是控制器的状态变量;fp(*)是被控对象的状态方程;fc(*)是控制器的状态方程;gc(*)是控制器的输出方程;gp(*)是被控对象的输出方程。步骤3.3:选择参数s和s1,满足以下方程(2)~(4):β(0,0,0,0,0)<-s(3)β(Δxc,Δxp,Δyp,Δycq,Δypq)<-s1(4)其中,函数β(*)定义为:步骤3.4:根据方程(4),可以找到一个实数ρ,满足:||(Δxc,Δxp,Δyp,Δycq,Δypq)||<ρ(6)||*||表示求模;根据方程(4)和方程(6),评估ρ可能取得的最大值。步骤3.5:确定系统动态参数Mfc,Mfp,Mgc,Mgp,其中:是控制器状态方程的上界;是被控对象状态方程的上界;是控制器输出函数的李普希茨常量;是被控对象输出函数的李普希茨常量。步骤3.6:根据以下方程计算最大仿真周期Tmax:相对于现有技术,本专利技术的优点和积极效果在于:(1)本专利技术所提出的方法在不修改任何模型代码的前提下,通过特定的规则和操作,实现了将初始系统CS转换为分布式系统DS,且保证仿真结果与初始系统之间的误差有界、稳定性特征一致;(2)根据本专利技术提出的拆分规则进行的系统拆分,使分布式环境下并行计算特性引起的子模型输出延迟最小,使得仿真延迟问题得到了缓解;(3)本专利技术方法确定的分布式仿真步长,保证了初始系统在分布式运行时保留原来的稳定性特征,同时使分布式仿真节点之间的数据交换频率最小。附图说明图1是本专利技术的对单机运行的连续控制系统进行分布式仿真的方法的流程示意图;图2是本专利技术实施例的倒立摆控制系统示意图;图3是未按照本专利技术的方法进行操作的运行结果示意图,其中(a)为车位置随时间变换示意图,(b)为摆动角度随时间变换示意图;图4是根据步骤2的拆分规则对图2所示系统进行拆分的结果示意图;图5是按照本专利技术的方法进行操作的运行结果示意图,其中(a)为车位置随时间变换示意图,(b)为摆动角度随时间变换示意图。具体实施方式本专利技术提出的一种对单机运行的连续控制系统进行分布式仿真的方法,如图1所示,包括三大步骤:模型分类、系统拆分、以及计算最大仿真步长。下面将结合一个具体的实例和附图对本专利技术的实施过程作进一步说明。该实例为倒立摆控制系统,系统结构如图2所示。步骤1:模型分类。联系控制系统一般由多个子模型组成,具有带反馈或不带反馈的子模型串联或并联结构。这些子模型按照其输入、输出之间的关系,可分为以下两类:●直通模型:直通模型是指具有直通端口的模型。直通端口定义为<输入端口,输出端口>对,其中,输出端口的值由输入端口直接决定。若为每个模型定义3个变量集合:输入变量集合X,内部状态变量集合S,以及输出变量集合Y,则直通模型可描述为:其中,函数I(*)为输入函数,T(*)为状态转移函数,O(*)为输出函数。Xn+1、Sn+1和Yn+1分别表示n+1时刻的输入向量、内部状态向量和输出向量;Sn表示n时刻的内部状态向量;h表示模型积分步长。可以看出,当前时刻的输出Yn+1与当前时刻的输入Xn+1有直接关系。S=Φ是直通模型的一个特例,其中Φ为空集合,表示该模型没有内部状态,是无记忆的。常见的直通模型包括增益、代数运算(加减乘除)、微分等模型。●非直通模型:非直通模型没有直通端口。非直通模型可描述为:当前时刻的输出Yn+1只与当前的内部状态Sn+1有关,与当前输入Xn+1无关。这意味着非直通模型不用等待最新的输入到达即可产生最新的输出。常见的非直通模型包括积分、纯输入信号、记忆等。对模型进行分类后,可以计算单机运行时各个子模型的计算顺序,原则如下:对于直通模型,应该首先计算那些驱动它的直通端口的模型;对于非直通模型,可以按照任意顺序计算,只要位于它所驱动的直通模型之前。这里,模型a驱动模型b本文档来自技高网
...
一种对单机运行的连续控制系统进行分布式仿真的方法

【技术保护点】
一种对单机运行的连续控制系统进行分布式仿真的方法,其特征在于,包括如下步骤:步骤1、将组成初始系统的子模型进行分类,分为直通型模型与非直通型模型两类;判断子模型的输出是否直接由输入决定,若是,该子模型为直通型模型,否则该子模型为非直通型模型;步骤2、将初始系统进行拆分,将拆分的每一部分部署在单独的仿真节点上运行,形成分布式仿真结构;拆分规则是:任意选择一个非直通模型,记为mstart,将该模型的输出端断开,并沿着该模型的所有输入路径回溯在该模型之前的直通模型,直到遇到另一个非直通模型,记为mend;mstart到mend之间的部分作为一个独立的拆分单元;拆分的每一部分由拆分单元单独组成或者组合组成;步骤3、确定分布式仿真周期Tf,要求Tf小于等于最大仿真周期Tmax。

【技术特征摘要】
2014.09.03 CN 20141044594921.一种对单机运行的连续控制系统进行分布式仿真的方法,其特征在于,包括如下步骤:步骤1、将组成初始系统的子模型进行分类,分为直通型模型与非直通型模型两类;判断子模型的输出是否直接由输入决定,若是,该子模型为直通型模型,否则该子模型为非直通型模型;步骤2、将初始系统进行拆分,将拆分的每一部分部署在单独的仿真节点上运行,形成分布式仿真结构;拆分规则是:任意选择一个非直通模型,记为mstart,将该模型的输出端断开,并沿着该模型的所有输入路径回溯在该模型之前的直通模型,直到遇到另一个非直通模型,记为mend;mstart到mend之间的部分作为一个独立的拆分单元;拆分的每一部分由拆分单元单独组成或者组合组成;步骤3、确定分布式仿真周期Tf,要求Tf小于等于最大仿真周期Tmax;最大仿真周期Tmax的获取方法是:步骤3.1:寻找初始系统的一个李雅普诺夫函数V;步骤3.2:计算以下α(*)函数:其中:x表示系统变量;由分布式运行产生的输出延迟导致的误差包括:控制器状态变量在单机运行与分布式运行时的误差Δxc,被控对象状态变量在单机运行与分布式运行时的误差Δxp,被控对象的输出在单机运行与分布式运行时的误差Δyp;由分布式运行时强制离散化导致的误差包括:控制器输出在单机运行与分布...

【专利技术属性】
技术研发人员:马耀飞宋晓马小乐龚光红
申请(专利权)人:北京航空航天大学
类型:发明
国别省市:北京;11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1