一种基于时间源的团队仿真时间同步方法

文档序号:8430934阅读:444来源:国知局
一种基于时间源的团队仿真时间同步方法
【技术领域】
[0001]本发明属于分布式时间同步技术领域,具体涉及一种基于时间源的团队仿真时间同步方法。
【背景技术】
[0002]在团队仿真训练系统中,需要时间同步功能保证每个实体都按照同一个时钟推进时间,否则会导致实体之间对时间和空间的观测和理解上的不一致。同时,团队仿真训练系统要求在时间同步时可以更改时间步长,这主要是因为参训人员往往只对仿真中的某几个部分感兴趣,但是那几个部分仅持续短暂的时间,并且在它们之间是乏味漫长的等待,这就要求在等待时尽快推进仿真时间。
[0003]同步点本身是为分布式应用程序之间的同步操作而设置的,但同步点技术的用途比较广泛,HLA提供了有关同步点的相关功能,因此,可以应用同步点的方法进行时间同步。具体方式是某一个仿真实体加入联邦后或准备更改步长时登记一个同步点,其它仿真实体在加入联邦后或者在完成了所需要的更改步长操作后到达此同步点,当所有仿真实体都到达同步点以后,时间同步过程完成。
[0004]然而,对于团队仿真训练系统,基于同步点的时间同步方法还有以下两个问题无法解决:
[0005]第一,基于同步点的时间同步方法要在所有仿真实体都到达同步点以后才完成同步,因此要求仿真实体的总数目是固定的。所以基于同步点的时间同步方法无法完成仿真实体自由加入和退出联邦的需求。在仿真程序运行的过程中,如果有实体发生掉线等情况也会影响联邦的同步,基于同步点的时间同步方法也无法避免这个问题。
[0006]第二,改变时间推进步长时,如果是由较大的时间推进步长调整为较小的时间推进步长,采用基于同步点的时间同步方法效率则会较低。如果推进步长相差太大,等待的时间则会将是难以忍受的。
[0007]综上所述,现有的团队仿真训练系统的时间同步方法,显然存在不便和缺陷,所以有必要加以改进。

【发明内容】

[0008]针对现有技术的缺陷,本发明提供一种基于时间源的团队仿真时间同步方法,普通仿真实体可以在任何时刻加入与退出联邦,并且不影响时间推进,更加灵活;所需要的同步时间消耗较少,受网络延迟的影响较少,时间同步的误差较小,比较精确。
[0009]一种团队仿真时间同步方法,具体为:
[0010]管理者实体加入联邦,其首先初始化仿真起始时间、时间推进步长和仿真起始步数,然后开始推进时间;
[0011]普通仿真实体加入联邦,其从管理者实体接收时间同步参数,时间同步参数包括仿真起始时间、时间推进步长和仿真起始步数,依据时间同步参数计算自己的当前仿真时间,然后开始推进时间;
[0012]管理者实体更改时间推进步长,按照更改后的时间推进步长进行时间推进,更新时间同步参数即将仿真起始步数更新为更改时间推进步长时对应的仿真步数,以及将仿真起始时间更新为管理者实体的当前仿真时间;同时,将更新后的时间同步参数群发给普通仿真实体,普通仿真实体依据时间同步参数进行当前时间计算和时间推进。
[0013]进一步地,所述普通仿真实体可在任何时候退出联邦,管理者实体在联邦内不再存在普通仿真实体时才能退出联邦。
[0014]进一步地,所述管理者实体加入联邦的具体实现过程为:
[0015]11)判断联邦是否已经建立,如果是,则说明此时已经存在管理者实体,结束,否贝IJ,由管理者实体建立联邦;
[0016]12)管理者实体初始化时间同步参数,时间同步参数包括仿真起始时间、推进步长和仿真起始步数;
[0017]13)管理者实体启动监视其它实体的加入情况;
[0018]14) 一旦有普通仿真实体加入联邦,则依据时间同步参数进行当前仿真时间的计算以及启动定时器推进时间,并将时间同步参数传送给普通仿真实体。
[0019]进一步地,所述普通仿真实体加入联邦的具体实现过程为:
[0020]21)判断联邦是否已经建立,如果联邦没有建立,结束,否则,进入步骤22);
[0021]22)普通仿真实体加入联邦,其从管理者实体接收时间同步参数;
[0022]23)普通仿真实体依据时间同步参数计算自己的当前仿真时间以及启动定时器推进时间。
[0023]本发明的技术效果体现在:
[0024]本发明在管理者实体加入联邦之后就开始推进时间,这时其它实体的加入和退出联邦完全不影响这个时间的推进,因此更加灵活。本发明采用交互的方式进行时间同步而不是同步点的方式,并且每个实体的当前仿真时间是根据时间参数直接计算得来,因此所需要的同步时间消耗较少,受网络延迟的影响较少,而且时间同步的误差较小,比较精确。
【附图说明】
[0025]图1是本发明时间同步方法流程图;
[0026]图2是本发明的管理者实体初始化状态图;
[0027]图3是本发明的普通仿真实体登陆状态图;
[0028]图4为调节仿真时间步长后的同步流程。
【具体实施方式】
[0029]为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅是用以解释本发明,并不用于限定本发明。
[0030]本发明提供了一种基于时间源的团队仿真时间同步方法,将团队仿真训练的仿真实体分为管理者实体和普通仿真实体。
[0031]管理者实体:每个团队仿真训练中应当有并且只有一个管理者实体,主要负责联邦管理的一些操作,同时还是整个仿真中的时间源实体,需要在仿真中第一个加入联邦,通过群发时间管理消息使整个联邦的时间同步,以及调节整个仿真系统中的推进时间步长。
[0032]普通仿真实体:团队仿真训练系统中的普通参训实体都属于普通仿真实体,完成团队训练功能。
[0033]图1是本发明的实体关系图,本发明基于时间源的时间同步方法的是以管理者实体为标准的时间源进行时间同步,管理者实体通过发送时间同步参数的方法来控制普通仿真实体的时间。
[0034]图2为本发明时间同步流程图,具体过程如下:
[0035]管理者实体加入联邦,初始化仿真起始时间、时间推进步长和仿真起始步数,然后开始推进时间;
[0036]普通仿真实体加入联邦,其从管理者实体接收时间同步参数,时间同步参数包括仿真起始时间、时间推进步长和仿真起始步数,依据时间同步参数计算自己的当前仿真时间,然后开始推进时间;
[0037]管理者实体更改时间推进步长,按照更改后的时间推进步长进行时间推进,更新时间同步参数即将仿真起始步数更新为更改时间推进步长时对应的仿真步数,以及将仿真起始时间更新为管理者实体的当前仿真时间;同时,将更新后的时间同步参数群发给其它普通仿真实体,其它普通仿真实体依据时间同步参数进行当前时间计算和时间推进;
[0038]普通仿真实体可在任何时候退出联邦,管理者实体在联邦内不再存在普通仿真实体时才能退出联邦。
[0039]图2为管理者实体加入联邦流程图,在本发明中,管理者实体负责建立联邦,并且要保证每个联邦只有一个管理者实体。具体步骤如下:
[0040]11)判断联邦是否已经建立,如果是,则说明此时已经存在管理者实体,结束,否贝IJ,由管理者实体建立联邦;
[0041]12)管理者实体初始化时间同步参数,时间同步参数包括仿真起始时间、推进步长和仿真起始步数;推进步长可以设置为时、分、秒中的一个,对应数值为3600,60,1,仿真起始时间根据仿真的需要设置为一个具体的时间
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1