神州普惠

基于属性预报的HLA半实物仿真方法研究

  摘要:目前,对基于HLA的半实物仿真的研究较少,原因是HLA的实时性较差。本文从实时性和仿真效率两个方面出发,研究了HLA半实物仿真的关键条件。基于此,本文提出了“实体属性插值预报法”,该方法使得基于HLA的半实物仿真成为可能。

  关键词:HLA;实时仿真;半实物仿真

  Research of HLA Based Hardware-in-the-Loop Simulation Based on Attribute Interpolative Forecasting

  Hengyuan Zhang Zhi Li

  (Academy of Equipment Command&Technology,Huairou,Beijing,101416)

  Abstract:For the reason that HLA lacks the capability of performing real-time simulation,researches of HLA based hardware-in-the-loop simulation is few.Considering aspects of real-time and simulation efficiency,this paper investigates the pivotal qualifications of hardware-in-the-loop simulation using HLA.Based on the investigation,this paper puts forward a method called“Entity Attribute Interpolative Forecasting”,which makes HLA based hardware-in-the-loop simulation possible.

  Keywords:HLA;Real-Time Simulation;Hardware-in-the-Loop Simulation

  1引言

  半实物仿真的一个显著特点是硬件在回路(Hardware-In-The-Loop)。在对系统进行仿真时,若有实物介入整个仿真系统,必须要求仿真时间标尺与实际系统时间标尺相同,这种仿真称为实时仿真。

  HLA力图解决建模与仿真(Modeling and Simulation,M&S)领域存在的互操作和重用问题,并按照面向对象的思想和方法来构建仿真系统。为了保证仿真系统的协调运作、维护虚拟世界中正常的因果逻辑顺序,HLA需要对联邦进行严格的时间管理。但HLA复杂的时间管理算法却不利于实时仿真,给半实物仿真造成了一定的困难。

  2 HLA实时性分析

  联邦成员进行一次仿真时间推进的耗时Tadvc一般主要由3部分组成。(1)、帧计算时间Treck,指成员在一个仿真步长中所有计算的耗时,包括模型计算和交互响应等;(2)、帧信息获取时间Tinfo,指成员在时间推进的过程中通过tick()函数获得时戳事件(属性值更新和交互发送)的耗时;(3)、帧同步时间Tsync,指成员在调用timeAdvanceRequest()服务提出时间推进请求后,等待成员大使回调timeAdvanceGrant()的耗时。故Tadvc=Treck+Tinfo+Tsync。假设成员每次时间推进的仿真步长Tstep为仿真模型的积分步长,若要实现实时仿真,则应有Tadvc=Tstep。HLA实时仿真能力的不足体现在以下两个方面。

  (1)Tadvc不易同Tstep保持一致首先,每个仿真步长内计算量的不同造成了Treck的不定;其次,在复杂的网络数据环境下,随机的网络传输延时造成了无参数tick()函数的执行时间即Tinfo的不定;最后,随着在仿真的运行过程中联邦成员数量的改变,成员LBTS算法的计算量将发生变化,这造成了Tsync的不定。因此,Tadvc是不定且难以预测的,使其不易同Tstep保持一致。

  (2)一次时间推进的耗时过长为了实现联邦中各个成员之间的严格同步,确保仿真世界中因果逻辑的正确性,需要将每个成员设置为既时间控制又时间约束,这将使整个联邦的推进速度取决于计算负荷最大的成员。另外,联邦中还存在可观的网络传输延迟,以及繁琐的成员间同步过程。因此,每个成员进行一次时间推进的耗时过长,仿真效率(单位时间内时间推进的次数)过低。

  3基于插值预报的半实物仿真方法

  3.1半实物仿真的根本要求

  将半实物仿真系统分为数字部分(计算机)和实物部分(硬件),与实物部分相关的数据按流向可分为输入和输出两种,对数字部分的实时性和仿真效率要求较高的是实物部分的输入数据。

  实物部分典型的输入数据是来自数字部分的控制信号。首先,由于实物存在于自然时空中,所以控制信号必须是实时的;另外,实物的状态大多是连续变化的(如伺服系统),需要将来自数字部分的数字信号转化为模拟信号,数据输出频率foutput越小、跳变越大则数模(D/A)转换失真就越大。所以半实物仿真的根本要求有2点:

  (1)、仿真系统数字部分是实时的;(2)、仿真系统数字部分的数据输出频率要足够大。

  3.2 HLA联邦的实时化

  对于Tadvc不定且难以预测、不易同Tstep保持一致的问题,可以通过在每个成员的仿真步长内加入等待时间的方法来解决。如图1所示,每个仿真步长之间Tadvc的差异通过Twait进行补偿,经补偿后的时间推进耗时T’advc=Tadvc+Twait将成为定值。Twait要有足够的冗余量,以克服Tadvc正常的随机起伏变化。

  

 

 

  在固定了成员一次时间推进的耗时之后,按照实时仿真的要求,令Tstep=T’advc(仿真时间和自然时间保持一致),即可使HLA联邦的运行达到实时要求。