eVTOL航空器的仿真系统的数据控制方法、装置及设备与流程

专利2024-04-18  97


evtol航空器的仿真系统的数据控制方法、装置及设备
技术领域
1.本技术实施例涉及电动垂直起降(evtol,electric vertical take-off and landing,evtol)航空器技术领域,尤其涉及一种evtol航空器的仿真系统的数据控制方法、装置、设备及存储介质。


背景技术:

2.evtol航空器作为一种安全、可持续、负担得起且和当地区域内任务的无障碍航空形式,随着电力推进(电机、电池、燃料电池、电子控制器)的重大进步以及城市空中交通(空中出租车)对新型车辆的需求不断增长,在不远的将来,使用evtol航空器旅行将会是一种实用且具有成本效益的大众出行方式,evtol航空器有可能彻底改变城市交通网络并在未来的智慧城市中发挥不可或缺的作用,evtol航空器的开发工作正在稳步推进。
3.从evtol航空器的设计阶段到最终落地应用会涉及诸多关键角色,例如,原始设备制造商、运营商、基础设施提供商、空中航行服务提供商、监管机构、设备维护方、培训中心等,这些关键角色之间相互制约、相互影响,构成了evtol航空器的生态系统。随着科学技术的发展,生态系统中的不同关键角色可能的需要引入不同的新概念或新技术,例如,非常规气动布局的航空器外型、降低专业知识和培训要求的驾驶舱设计理念、与天气和风有关的城市运营场景等,基于数学建模的仿真技术的应用使新概念或新技术的引入提供了高效的验证环境,保证了evtol航空器生态系统的良性运转。
4.然而,由于不同关键角色的仿真技术研发团队彼此独立,而每个团队涉及的工业公司和软件供应商不同,且每个团队在长期的研发过程中也已经逐步开发和测试了一组业务对象和用于捕获建模和仿真的上下游数据。构建一个能够供所有关键角色使用的仿真系统势在必行,如何保证仿真系统中数据的一致性和完整性是现有技术中亟需解决的技术问题。


技术实现要素:

5.本技术实施例提供一种evtol航空器的仿真系统的数据控制方法、装置、设备及存储介质,保证了仿真系统中不同仿真组件之间数据的一致性和完整性。
6.第一方面,本技术实施例提供一种evtol航空器的仿真系统的数据控制方法,包括:
7.接收第一仿真组件发送的仿真结果;
8.根据所述仿真结果和数据库中的接口控制参数,对数据库中的变量缓冲区进行更新;
9.接收第二仿真组件发送的参数获取请求;
10.根据所述第二仿真组件与所述第一仿真组件之间的关联关系,将所述变量缓冲区中的数据发送给所述第二仿真组件。
11.第二方面,本技术实施例提供一种evtol航空器的仿真系统的数据控制装置,包
括:
12.数据写入模块,用于接收第一仿真组件发送的仿真结果;根据所述仿真结果和数据库中的接口控制参数,对数据库中的变量缓冲区进行更新;
13.数据分发模块,用于接收第二仿真组件发送的参数获取请求;根据所述第二仿真组件与所述第一仿真组件之间的关联关系,将所述变量缓冲区中的数据发送给所述第二仿真组件。
14.第三方面,本技术实施例提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上述第一方面所述的evtol航空器的仿真系统的数据控制方法。
15.第四方面,本技术实施例提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如上述第一方面所述的evtol航空器的仿真系统的数据控制方法。
16.本技术实施例提供的evtol航空器的仿真系统的数据控制方法、装置、设备及存储介质,通过接收第一仿真组件发送的仿真结果,根据接口控制参数和仿真结果,对数据库中的变量缓冲区进行更新,接收第二仿真组件发送的参数获取请求,根据第二仿真组件与第一仿真组件之间的关联关系,将变量缓冲区中的数据发送给第二仿真组件,在保证数据一致性和完整性的前提下,实现了仿真系统中不同仿真组件之间的数据共享,提高了仿真系统的运行效率。
附图说明
17.图1为本技术实施例提供的一种evtol航空器生态系统的仿真系统的结构示意图;
18.图2为本技术实施例提供的另一种evtol航空器生态系统的仿真系统的结构示意图;
19.图3为本技术实施例提供的一种数据库的结构示意图;
20.图4为本技术实施例一提供的一种evtol航空器的仿真系统的数据控制方法的流程示意图;
21.图5为本技术实施例一提供的另一种evtol航空器的仿真系统的数据控制方法的流程示意图;
22.图6为本技术实施例二提供的evtol航空器的仿真系统的数据控制装置的结构示意图;
23.图7为本技术实施例三提供的一种电子设备的结构示意图。
具体实施方式
24.下面结合附图和实施例对本技术作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本技术,而非对本技术的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本技术相关的部分而非全部结构。
25.本技术技术方案的主要思路:基于现有技术中存在的技术问题,本技术实施例提供一种应用于该evtol航空器的仿真系统的数据控制方案,通过预先构建动态数据库,通过该动态数据库对不同仿真组件的输入参数及输出参数进行存储和管理,并根据不同的仿真
组件之间的关联关系进行数据的控制和分发,从而保证不同仿真组件之间数据的一致性和完整性。
26.其中,数据一致性,能够确保不同的仿真组件都能使用正确的输入数据;数据完整性,可以防止多个仿真组件同时写入同一个变量而导致的无法正确为这个变量的赋值的情况发生。
27.示例性地,图1为本技术实施例提供的一种evtol航空器生态系统的仿真系统的结构示意图,如图1所示,本实施例的仿真系统100包括:数据控制模块110和仿真组件模块120,仿真组件模块120中包含多个仿真组件,数据控制模块110与多个仿真组件分别连接。数据控制模块110用于根据预设的数据控制逻辑,对不同仿真组件的输入变量和输出变量进行控制,从而保证不同仿真组件之间数据的一致性和完整性。
28.在一种可能的实施方式中,数据控制模块110中包含一个接口控制单元和多个线程控制单元,每个仿真组件通过一个线程控制单元与接口控制单元连接。
29.其中,仿真组件,由模拟evtol航空器的飞机和/或系统模型组成,这些模型可以是在本软件架构下编写的代码文件、封装后的软件程序和/或真实的机载设备。不同的仿真组件是可能由不同的团队或公司开发得到的。
30.接口控制单元,用于通过多个线程控制单元在不同仿真组件之间分配数据,用于保证不同仿真组件之间数据的一致性和完整性。另外,接口控制单元可以保护数据不被非法用户访问,保证生态仿真系统中数据的安全。
31.线程控制单元,作为仿真组件与接口控制单元通信的桥梁,不同的线程控制单元与特定的仿真组件进行通信和数据交互,可以支持特定仿真组件的自动调度、冻结等操作,并采用特定的方式与对应的仿真组件进行通信。不同的线程控制单元与不同的仿真组件之间的通信方式可能不同,但所有的线程控制单元与接口控制单元的通信方式是相同的。
32.另外,本实施例中,由于不同仿真组件中数据的格式可能相同,也可能不同,因为,本实施例中,设置线程控制单元具有数据转换功能,具体地,将不同仿真组件发送到接口控制单元的数据,转换为接口控制单元所需要的数据格式,将接口控制单元发送给仿真组件的数据,转换成对应仿真组件所需要的数据格式。
33.本实施例中,数据控制模块能够以固定的基频运行,同时也支持事件驱动。
34.可选地,如图1所示,本实施例中的仿真软件系统还包括:航空总线130。
35.航空总线130,主要涉及用于进行evtol航空器不同机载设备之间的通信总线的仿真。在仿真系统中仿真这些总线时,将通过软件模拟保证精准的时序。
36.可选地,如图1所示,本实施例中的仿真软件系统还包括:外围设备140。外围设备140,是evtol航空器机载系统仿真之外的飞行模拟器上的设备,如教员台、视景系统、声音系统等。示例性地,如图1所示,外围设备140也可以通过相应的线程控制单元与接口控制单元连接,与接口控制单元进行数据交互。
37.可选地,如图1所示,本实施例中的仿真软件系统还包括:故障监测工具150。示例性地,如图1所示,故障监测工具与接口控制单元连接,用于实时监测数据控制模块、仿真组件的运行状态,当出现异常时及时报警。
38.本实施例中,仿真系统中的仿真组件不直接与彼此进行通信,它们的数据必须发送到接口控制单元,通过接口控制单元将数据传递到正确的仿真组件。示例性地,图2为本
申请实施例提供的另一种evtol航空器生态系统的仿真系统的结构示意图,如图2所示,为了保证数据的正确定位和传递,本实施例的仿真系统中还包括:数据库。
39.该数据库用于动态存储所有仿真组件的信息,该数据库在生态仿真系统启动的时候由数据控制模块构建,并且该数据库与接口控制单元连接,只有接口控制单元可以访问。图2中以三个仿真组件为例示出,示例性,各仿真组件的仿真结果均经由对应的线程控制单元发送给接口控制单元,由接口控制单元将其存储到数据库中,当其中的某个仿真组件需要数据时,例如,当仿真组件f1需要数据时,仿真组件f1通过线程控制单元x1向接口控制单元发送数据请求(例如请求仿真组件f2的数据d),由接口控制单元从数据库中提取数据d,并将数据d发送到线程控制单元x2,线程控制单元x1将数据d进行格式转换后(转换为仿真组件f1能够识别的数据格式),得到数据d',并将数据d'发送给仿真组件f1。
40.示例性地,图3为本技术实施例提供的一种数据库的结构示意图,如图3所示,本实施例中数据库300中可以包括一些数据存储区域,如属性参数区310、状态参数区320和变量缓冲区330等,还可以包括一些进行数据处理所需要的数据(即接口控制参数)的数据表,如输入变量名称表340、输出变量名称表350和变量位置索引表360。
41.其中,属性参数区310用于存储不同仿真组件的属性参数,示例性地,属性参数区310中可以为每个仿真组件单独划分一个属性参数存储区,即每个属性参数存储区与属性参数区310中的一个存储位置对应,以存储该仿真组件的属性参数,例如,属性参数存储区s1用于储存仿真组件f1的属性参数,属性参数存储区s2用于储存仿真组件f2的属性参数,依此类推。
42.状态参数区320用于存储不同仿真组件的初始状态参数,每个仿真组件的初始状态参数包括该仿真组件所有输入变量和输出变量的初始值,即输入变量初始值和输出变量初始值。示例性地,状态参数区320中也可以为每个仿真组件单独划分一个状态参数存储区,即每个状态参数存储区与一个状态参数区320中的存储位置对应,以存储该仿真组件的输入变量初始值和输出变量初始值,例如,状态参数存储区z1用于储存仿真组件f1的输入变量初始值和输出变量初始值,状态参数存储区z2用于储存仿真组件f2的输入变量初始值和输出变量初始值,依此类推。
43.变量缓冲区330用于存储仿真过程中不同仿真组件的仿真结果,即输出变量值,示例性地,变量缓冲区330中也可以为每个仿真组件单独划分一个缓冲数据存储区,即每个缓冲数据存储区与一个变量缓冲区330中的存储位置对应,以存储该仿真组件的仿真结果,例如,缓冲数据存储区h1用于储存仿真组件f1的仿真结果,缓冲数据存储区h2用于储存仿真组件f2的仿真结果,依此类推。
44.可选地,每个缓冲数据存储区中包括两个子缓冲区,记为第一子缓冲区和第二子缓冲区,其中,第一子缓冲区用于存储当前周期目标仿真组件的仿真结果(即最新仿真结果),第二缓冲区用于存储上一周期目标仿真组件的仿真结果(即历史仿真结果)。
45.输入变量名称表340用于存储不同仿真组件的输入变量的名称,示例性地,输入变量名称表340中的每一列用于存储一个仿真组件的输入变量的名称,例如,输入变量名称表340的第一列用于存储仿真组件f1的各输入变量的名称,输入变量名称表340的第二列用于存储仿真组件f2的各输入变量的名称,依此类推。
46.输出变量名称表350用于存储不同仿真组件的输出变量的名称,示例性地,输出变
量名称表350中的每一列用于存储一个仿真组件的输出变量的名称,例如,输出变量名称表350的第一列用于存储仿真组件f1的各输出变量的名称,输出变量名称表350的第二列用于存储仿真组件f2的各输出变量的名称,依此类推。
47.变量位置索引表360用于存储所有仿真组件的输出变量名称与输出变量值在变量缓冲区330中的存储位置之间的对应关系,变量位置索引表360中可以不区分仿真组件,示例性地,变量位置索引表格式可以如表1所示。
48.可选地,数据库中还可以包括内部序列表,用于存储不同仿真组件的中间变量的名称,示例性地,内部序列表中的每一列用于存储一个仿真组件的中间变量的名称,例如,内部序列表的第一列用于存储仿真组件f1的各中间变量的名称,内部序列表的第二列用于存储仿真组件f2的各中间变量的名称,依此类推。
49.表1
50.输出变量名称输出变量值的存储位置name_v1location_name_v1name_v2location_name_v2
…………
51.可以理解的是,仿真系统中各仿真组件的输入变量及输出变量的种类、数量是确定的,仿真得到的不同输出变量的输出值在仿真结果中的先后顺序也是确定的,并且各仿真组件之间的关联关系如运行频率、上下游关系、数据依赖关系等也是确定的,该关联关系也可以通过相应的数据表,如仿真组件关系表存储到数据库中。
52.实施例一
53.在上述仿真系统及数据库的基础上,示例性地,图4为本技术实施例一提供的一种evtol航空器的仿真系统的数据控制方法的流程示意图,本实施例的方法可以由本技术实施例所提供的evtol航空器的仿真系统的数据控制装置(可对应图1中的接口控制单元)执行,该装置可以由软件和/或硬件的方式来实现,并可集成于服务器或计算机等电子设备中。如图4所示,本实施例的evtol航空器的仿真系统的数据控制方法,包括:
54.s401、接收第一仿真组件发送的仿真结果。
55.其中,仿真结果是由第一仿真组件运行得到的至少一个输出变量的值,当第一仿真组件的输出变量有多个时,仿真结果为输出变量值序列,如{y
value_1
,y
value_2

……
,y
value_n
},其中,n为第一仿真组件的输出变量个数,y
value_n
为第n个输出变量的值。
56.在一种可能的实施方式中,仿真结果由第一仿真组件通过第一线程控制单元发送的,具体地,第一仿真组件先将仿真结果发送给第一线程控制单元,由第一线程控制单元将仿真结果转换成接口控制单元所需的格式之后,再发送给接口控制单元,其中,第一线程控制单元是指与第一仿真组件连接的线程控制单元。
57.s402、根据仿真结果和数据库中的接口控制参数,对数据库中的变量缓冲区进行更新。
58.本步骤中,根据数据库中预先存储的接口控制参数,确定仿真结果在数据库的变量缓冲区中的存储位置,进而,采用仿真结果对变量缓冲区中该位置的数据进行更新。
59.在一种可通过的实施方式中,可通过如下步骤完成对变量缓冲区的数据更新(也即仿真结果的存储):
60.(1)根据第一仿真组件的标识和输出变量名称表,确定仿真结果对应的目标变量名称。
61.其中,第一仿真组件的标识可以为第一仿真组件的名称或编号等,用于确定输出变量名称表中存储第一仿真组件的输出变量名称的位置。
62.在一种可能的实施方式中,根据第一仿真组件的标识,确定输出变量名称表的列编号,进而根据列编号,提取出输出变量名称表中该中所有的名称数据,得到目标变量名称,当第一仿真组件的输出变量有多个时,目标变量名称为输出变量名称序列,如{y
name_1
,y
name_2

……
,y
name_n
},其中,n为第一仿真组件的输出变量个数,y
name_n
为第n个输出变量的名称。
63.(2)根据变量位置索引表和目标变量名称,确定仿真结果在变量缓冲区中的目标存储位置。
64.由于变量位置索引表中存储的输出变量名称与输出变量值在变量缓冲区中的存储位置之间的对应关系,因此,在得到目标变量名称之后,通过查询变量位置索引表就可以确定出目标变量在变量缓冲区的目标存储位置。可以理解的是,这里的存储位置指的是数据的存储地址。
65.当目标变量名称为输出变量名称序列时,则本步骤中,可以按照上述方法分别确定出各输出变量在变量缓冲区的存储位置,相应的,目标存储位置就为一个存储位置序列,如{l1,l2,
……
,ln},其中,n为第一仿真组件的输出变量个数,ln为第n个输出变量在变量缓冲区中的存储位置。
66.(3)采用仿真结果,对变量缓冲区中目标存储位置的数据进行更新。
67.本步骤中,定位到变量缓冲区中目标存储位置,并刷新目标存储位置的数据,以供具有关联关系的仿真组件使用。
68.在一种可能的实施方式中,将仿真结果存储到第一子缓冲区中,并在存储完成之后,交换第一子缓冲区与第二子缓冲区中的数据,从而保证第二子缓冲区中存储的数据为第一仿真组件的最新仿真结果,第一子缓冲区中存储的数据为第一仿真组件的历史仿真结果。需要说明的是,这里将仿真结果存储到第一子缓冲区中指的是用仿真结果的数据覆盖第一子缓冲区中原有的数据。
69.本实施方式中,通过同时存储第一仿真组件的最新仿真结果和历史仿真结果,从而满足不同场景或具有关联关系的不同仿真组件的使用需求。
70.需要说明的是,本实施例中,由于不同仿真组件运行频率的可能相同,也可能不同,因此,本实施例中,按照不同仿真组件的运行频率,对变量缓冲区中对应位置的数据进行更新。例如,假设图2中,仿真组件f1、f2、f3的运行频率分别为p1、p2、p3,仿真组件f1、f2、f3的仿真结果在变量缓冲区中存储位置分别为l1、l2、l3(以每个仿真组件的仿真结果中包括一个输出变量为例),则本实施例中,以p1的频率对l1中存储的数据进行更新,以p2的频率对l2中存储的数据进行更新,以p3的频率对l3中存储的数据进行更新。
71.本实施例中,通过设置接口控制单元和变量缓冲区,并由接口控制单元按照对应仿真组件的运行频率对变量缓冲区中相应位置的数据进行更新,从而防止了多个仿真组件同时写入同一个变量而导致的无法正确为这个变量的赋值的情况发生,保证了数据的完整性。同时,通过该设置也可以防止变量缓冲区中的数据被非法篡改,从而保证数据的安全
性。
72.s403、接收第二仿真组件发送的参数获取请求。
73.其中,第二仿真组件是指与第一仿真组件具有关联关系的上/下游仿真组件。参数获取请求用于请求第二仿真组件的输入参数,即输入变量值。
74.在一种可能的实施方式中,参数获取请求由第二仿真组件通过第二线程控制单元发送的,具体地,第二仿真组件先将仿真结果发送给第二线程控制单元,由第二线程控制单元将参数获取请求转换成接口控制单元所需的格式之后,再发送给接口控制单元,其中,第二线程控制单元是指与第二仿真组件连接的线程控制单元。
75.s404、根据第二仿真组件与第一仿真组件之间的关联关系,将变量缓冲区中的数据发送给第二仿真组件。
76.本步骤中,可以先确定第二仿真组件与第一仿真组件之间的关联关系,再确定的关联关系,确定要求发送给第二仿真组件的目标数据,最后,再将目标数据发送给第二仿真组件。
77.在一种可能的实施方式中,通过第二线程控制单元将变量缓冲区中的目标数据发送给第二仿真组件,具体地,接口控制单元先将目标数据发送给第二线程控制单元,由第二线程控制单元将目标数据的格式转换成第二仿真组件所需的格式之后,再发送给第二仿真组件。
78.本实施例中,根据第二仿真组件与第一仿真组件之间上下游关系、运行频率等关联关系的不同,发送给第二仿真组件的数据可以不同的情况,主要可分为以下四种情况:
79.(1)若第二仿真组件与第一仿真组件的运行频率相同,且第二仿真组件与第一仿真组件之间为周期内的数据闭环依赖关系,则将第二子缓冲区中的数据发送给第二仿真组件。
80.其中,数据闭环依赖关系是指第二仿真组件与第一仿真组件之间的输出与输入形成闭循环,即第一仿真组件的输出作为第二仿真组件的输入,第二仿真组件的输出又作为第一仿真组件的输入。
81.而周期内的数据闭环依赖关系,是指第二仿真组件需要使用第一仿真组件的最新仿真结果的情况。因此,需要将第二子缓冲区中的数据发送给第二仿真组件,从而保证第二仿真组件能够使用第一仿真组件最新的仿真结果进行运算,保证第二仿真组件仿真的有效性。
82.对于数据闭环依赖关系下,运行频率相同且需要共享当前周期数据的情况,通过上述设置,保证符合该情况的所有下游仿真组件都能读取到最新的数据,即得到正确的输入数据,从而保证数据的一致性。
83.(2)若第二仿真组件与第一仿真组件的运行频率相同,且第二仿真组件与第一仿真组件之间为周期间的数据闭环依赖关系,则将第一子缓冲区中的数据发送给第二仿真组件。
84.周期间的数据闭环依赖关系,是指第二仿真组件需要使用第一仿真组件的历史仿真结果的情况,因此,需要将第一子缓冲区中的数据发送给第二仿真组件,从而保证第二仿真组件能够使用第一仿真组件上一周期的仿真结果进行运算,保证第二仿真组件仿真的有效性。
85.对于数据闭环依赖关系下,运行频率相同但需要共享上一周期数据的情况,通过上述设置,保证符合该情况的所有下游仿真组件都能读取到上一周期的数据,即得到正确的输入数据,从而保证数据的一致性。
86.(3)若第二仿真组件与第一仿真组件的运行频率不相同,且第二仿真组件与第一仿真组件之间为数据闭环依赖关系,则将第二子缓冲区中的数据发送给第二仿真组件。
87.对于数据闭环依赖关系下,但运行频率不同的情况,这种情况下,第二仿真组件只需要第一仿真组件最新的仿真结果,而不关注第一仿真组件的历史仿真结果,因此,需要将第二子缓冲区中的数据发送给第二仿真组件。所以,通过上述设置,可以保证符合该情况的所有下游仿真组件都只能读取到最新写入的数据,即得到正确的输入数据,从而保证数据的一致性。
88.(4)若第二仿真组件与第一仿真组件之间为数据开环依赖关系,则将第二子缓冲区中的数据发送给第二仿真组件。
89.其中,数据开环依赖关系是指第二仿真组件与第一仿真组件之间的意向数据依赖关系,即第二仿真组件需要以第一仿真组件的输出作为输入,但第一仿真组件的输入与第二仿真组件的输出无关。这种情况下,第二仿真组件只需要第一仿真组件最新的仿真结果,而不关注第一仿真组件的历史仿真结果。所以,通过上述设置,可以保证符合该情况的所有下游仿真组件都只能读取到最新写入的数据,即得到正确的输入数据,从而保证数据的一致性。
90.需要说明的是,本实施例,接口控制单元对数据的写入和读取是可以并行执行的,即s401-s402与s403-s404之间是并行关系。另外,接口控制单元也可以同时执行多个仿真组件的数据写入操作或数据读取操作,即当第一仿真组件有多个时,接口控制单元可以按照s401-s402,同时将多个第一仿真组件的仿真结果对变量缓冲区中对应位置的数据进行更新;当第二仿真组件有多个时,接口控制单元可以按照s403-s404,同时从变量缓冲区中获取多个第二仿真组件所需的数据,并发送给相应的第二仿真组件。
91.本实施例中,通过接收第一仿真组件发送的仿真结果,根据接口控制参数和仿真结果,对数据库中的变量缓冲区进行更新,接收第二仿真组件发送的参数获取请求,根据第二仿真组件与第一仿真组件之间的关联关系,将变量缓冲区中的数据发送给第二仿真组件,在保证数据一致性和完整性的前提下,实现了仿真系统中不同仿真组件之间的数据共享,提高了仿真系统的运行效率。
92.可选地,在s401之前,本实施例的方法还可以包括对仿真系统中参与本次仿真的目标仿真组件的初始化过程,使目标仿真组件进入激活状态,从而保证后续仿真过程得以展开和实施。
93.示例性地,图5为本技术实施例一提供的另一种evtol航空器的仿真系统的数据控制方法的流程示意图,如图5所示,本实施例的evtol航空器的仿真系统的数据控制方法包括:
94.s501、确定参与本次仿真的目标仿真组件。
95.目标仿真组件中包括多个仿真组件,目标仿真组件中包括上述提到的第一仿真组件和第二仿真组件,还包括除第一仿真组件和第二仿真组件之外的其他仿真组件。
96.s502、构建数据库目标仿真组件的目标数据库。
97.为提高数据处理速度,本实施例中,可以在确定出目标仿真组件之后,单独为目标仿真组件构建一下目标数据库,该数据库中包括参与本次仿真的所有仿真组件的数据。
98.在一种可能的实施方式中,根据目标仿真组件的标识,从图3所示的数据库中抽取目标仿真组件的数据,得到的目标数据库。目标数据库的配置与图3所示的数据库类似,区别在于,目标数据库的属性参数区、状态参数区和变量缓冲区、输入变量名称表、输出变量名称表和变量位置索引表均用于存储的目标仿真组件的数据。
99.s503、对目标仿真组件进行初始化。
100.对目标仿真组件的初始化包括如下步骤:
101.(1)将目标仿真组件的属性参数和输入变量初始值发送给目标仿真组件。
102.即分别提取参数本次仿真的各仿真组件的属性参数和输入变量初始值,并分别发送到对应的仿真组件,例如,将第一仿真组件的属性参数和输入变量初始值发送给第一仿真组件,将第二仿真组件的属性参数和输入变量初始值发送给第二仿真组件。
103.目标仿真组件在接收到属性参数和输入变量初始值之后,先加载属性参数,再以输入变量初始值作为输入开始运行,完成一次运算,得到结果,并将结果反馈给接口控制单元。
104.(2)接收目标仿真组件发送的反馈结果,并对目标反馈结果进行校验。
105.在接收到目标仿真组件发送的反馈结果之后,通过将反馈结果与数据库中的输出变量初始值比对,从而确定目标仿真组件是否完成初始化。在比对时,将同一仿真组件的反馈结果与输出变量初始值进行比对,以确定该仿真组件是否已完成初始化,若反馈结果与输出变量初始值,说明该仿真组件已完成初始化,否则,说明该仿真组件存在问题,需要开发人员进行故障排除。
106.示例性,将第一仿真组件的反馈结果与第一仿真组件的输出变量初始值进行比对,若反馈结果与输出变量初始值一致,则确定第一仿真组件已完成初始化;将第二仿真组件的反馈结果与第二仿真组件的输出变量初始值进行比对,若反馈结果与输出变量初始值一致,则确定第二仿真组件已完成初始化。
107.本步骤,当目标仿真组件完成初始化时,即确定参与仿真的所有仿真组件的初始化均已完成时,进入s504。
108.可选地,若某一仿真组件没有时,通过故障监测工具对开发人员进行提示,通过开发人员进行故障排除。
109.s504、当确定目标仿真组件完成初始化时,进入数据更新模式。
110.在参与本次仿真的所有仿真组件均已完成初始化之后,接口控制单元进行数据更新模式,即按照各仿真组件的运行频率和不同仿真组件之间的关联关系,执行s401-s404,实现各仿真组件的数据更新。
111.本实施例中,通过进入更新模式之前,基于目标仿真组件的数据构建目标数据库,并对目标仿真组件进行初始化,有利于更新模式的顺利开展,并有利于提高更新模式下的数据处理速度,有利于进一步加快整个仿真系统的数据处理效率。
112.实施例二
113.图6为本技术实施例二提供的evtol航空器的仿真系统的数据控制装置的结构示意图,如图6所示,本实施例中evtol航空器的仿真系统的数据控制装置600包括:
114.数据写入模块610和数据分发模块620。
115.数据写入模块610,用于接收第一仿真组件发送的仿真结果;根据仿真结果和数据库中的接口控制参数,对数据库中的变量缓冲区进行更新;
116.数据分发模块620,用于接收第二仿真组件发送的参数获取请求;根据第二仿真组件与第一仿真组件之间的关联关系,将变量缓冲区中的数据发送给第二仿真组件。
117.可选地,接口控制参数中包括输出变量名称表和变量位置索引表,数据写入模块610具体用于:
118.根据第一仿真组件的标识和输出变量名称表,确定仿真结果对应的目标变量名称;
119.根据变量位置索引表和目标变量名称,确定仿真结果在变量缓冲区中的目标存储位置;
120.采用仿真结果,对变量缓冲区中目标存储位置的数据进行更新。
121.可选地,目标存储位置处设置有目标变量的第一子缓冲区和第二子缓冲区;数据写入模块610具体用于:
122.将仿真结果存储到第一子缓冲区中;
123.交换第一子缓冲区与第二子缓冲区中的数据。
124.可选地,数据分发模块620具体用于:
125.确定第二仿真组件与第一仿真组件之间的关联关系;
126.根据关联关系,将第一子缓冲区或第二子缓冲区中的数据发送给第二仿真组件。
127.可选地,数据分发模块620具体用于:
128.若第二仿真组件与第一仿真组件的运行频率相同,且第二仿真组件与第一仿真组件之间为周期内的数据闭环依赖关系,则将第二子缓冲区中的数据发送给第二仿真组件;
129.若第二仿真组件与第一仿真组件的运行频率相同,且第二仿真组件与第一仿真组件之间为周期间的数据闭环依赖关系,则将第一子缓冲区中的数据发送给第二仿真组件;
130.若第二仿真组件与第一仿真组件的运行频率不相同,且第二仿真组件与第一仿真组件之间为数据闭环依赖关系,则将第二子缓冲区中的数据发送给第二仿真组件;
131.若第二仿真组件与第一仿真组件之间为数据开环依赖关系,则将第二子缓冲区中的数据发送给第二仿真组件。
132.可选地,数据库中还包括不同仿真组件的属性参数和状态参数;本实施例提供的evtol航空器的仿真系统的数据控制装置中还包括:数据初始化模块,用于确定参与本次仿真的目标仿真组件,目标仿真组件中包括第一仿真组件和第二仿真组件;根据目标仿真组件的属性参数和状态参数,对目标仿真组件进行初始化。
133.可选地,状态参数中包括不同仿真组件的输入变量初始值和输出变量初始值,数据初始化模块具体用于:
134.将目标仿真组件的属性参数和输入变量初始值发送给目标仿真组件;接收目标仿真组件发送的反馈结果;根据反馈结果和目标仿真组件的输出变量初始值,确定目标仿真组件是否完成初始化。
135.本实施例所提供的evtol航空器的仿真系统的数据控制装置可执行上述方法实施例所提供的evtol航空器的仿真系统的数据控制方法,具备执行方法相应的功能模块和有
益效果。本实施例的实现原理和技术效果与上述方法实施例类似,此处不再一一赘述。
136.实施例三
137.图7为本技术实施例三提供的一种电子设备的结构示意图,如图7所示,该电子设备700包括存储器710、处理器720及存储在存储器上并可在处理器上运行的计算机程序;电子设备700处理器720的数量可以是一个或多个,图7中以一个处理器720为例;电子设备700中的处理器720、存储器710可以通过总线或其他方式连接,图7中以通过总线连接为例。
138.存储器710作为一种计算机可读存储介质,可用于存储软件程序、计算机可执行程序以及模块,如本技术实施例中的数据写入模块610和数据分发模块620对应的程序指令/模块。处理器720通过运行存储在存储器710中的软件程序、指令以及模块,从而执行电子设备的各种功能应用以及数据处理,即实现上述的evtol航空器的仿真系统的数据控制方法。
139.存储器710可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序;存储数据区可存储根据终端的使用所创建的数据等。此外,存储器710可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实例中,存储器710可进一步包括相对于处理器720远程设置的存储器,这些远程存储器可以通过网格连接至电子设备。上述网格的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
140.实施例四
141.本技术实施例四还提供一种计算机可读存储介质,其上存储有计算机程序,计算机程序在由计算机处理器执行时用于执行一种evtol航空器的仿真系统的数据控制方法,该方法包括:
142.接收第一仿真组件发送的仿真结果;
143.根据仿真结果和数据库中的接口控制参数,对数据库中的变量缓冲区进行更新;
144.接收第二仿真组件发送的参数获取请求;
145.根据第二仿真组件与第一仿真组件之间的关联关系,将变量缓冲区中的数据发送给第二仿真组件。
146.当然,本技术实施例所提供的一种包计算机可读存储介质,其计算机程序不限于如上所述的方法操作,还可以执行本技术任意实施例所提供的evtol航空器的仿真系统的数据控制方法中的相关操作。
147.通过以上关于实施方式的描述,所属领域的技术人员可以清楚地了解到,本技术可借助软件及必需的通用硬件来实现,当然也可以通过硬件实现,但很多情况下前者是更佳的实施方式。基于这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如计算机的软盘、只读存储器(read-only memory,rom)、随机存取存储器(random access memory,ram)、闪存(flash)、硬盘或光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网格设备等)执行本技术各个实施例所述的方法。
148.值得注意的是,上述evtol航空器的仿真系统的数据控制装置的实施例中,所包括的各个单元和模块只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本技术的保护范围。
149.注意,上述仅为本技术的较佳实施例及所运用技术原理。本领域技术人员会理解,本技术不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本技术的保护范围。因此,虽然通过以上实施例对本技术进行了较为详细的说明,但是本技术不仅仅限于以上实施例,在不脱离本技术构思的情况下,还可以包括更多其他等效实施例,而本技术的范围由所附的权利要求范围决定。

技术特征:
1.一种evtol航空器的仿真系统的数据控制方法,其特征在于,包括:接收第一仿真组件发送的仿真结果;根据所述仿真结果和数据库中的接口控制参数,对数据库中的变量缓冲区进行更新;接收第二仿真组件发送的参数获取请求;根据所述第二仿真组件与所述第一仿真组件之间的关联关系,将所述变量缓冲区中的数据发送给所述第二仿真组件。2.根据权利要求1所述的方法,其特征在于,所述接口控制参数中包括输出变量名称表和变量位置索引表,所述根据所述仿真结果和数据库中的接口控制参数,对数据库中的变量缓冲区进行更新,包括:根据所述第一仿真组件的标识和输出变量名称表,确定所述仿真结果对应的目标变量名称;根据所述变量位置索引表和所述目标变量名称,确定所述仿真结果在所述变量缓冲区中的目标存储位置;采用所述仿真结果,对所述变量缓冲区中所述目标存储位置的数据进行更新。3.根据权利要求2所述的方法,其特征在于,所述目标存储位置处设置有目标变量的第一子缓冲区和第二子缓冲区;所述采用所述仿真结果,对所述变量缓冲区中所述目标存储位置的数据进行更新,包括:将所述仿真结果存储到所述第一子缓冲区中;交换所述第一子缓冲区与所述第二子缓冲区中的数据。4.根据权利要求3所述的方法,其特征在于,所述根据所述第二仿真组件与所述第一仿真组件之间的关联关系,将所述变量缓冲区中的数据发送给所述第二仿真组件,包括:确定所述第二仿真组件与所述第一仿真组件之间的关联关系;根据所述关联关系,将所述第一子缓冲区或所述第二子缓冲区中的数据发送给所述第二仿真组件。5.根据权利要求4所述的方法,其特征在于,所述根据所述关联关系,将所述第一子缓冲区或所述第二子缓冲区中的数据发送给所述第二仿真组件,包括:若所述第二仿真组件与所述第一仿真组件的运行频率相同,且所述第二仿真组件与所述第一仿真组件之间为周期内的数据闭环依赖关系,则将所述第二子缓冲区中的数据发送给所述第二仿真组件;若所述第二仿真组件与所述第一仿真组件的运行频率相同,且所述第二仿真组件与所述第一仿真组件之间为周期间的数据闭环依赖关系,则将所述第一子缓冲区中的数据发送给所述第二仿真组件;若所述第二仿真组件与所述第一仿真组件的运行频率不相同,且所述第二仿真组件与所述第一仿真组件之间为数据闭环依赖关系,则将所述第二子缓冲区中的数据发送给所述第二仿真组件;若所述第二仿真组件与所述第一仿真组件之间为数据开环依赖关系,则将所述第二子缓冲区中的数据发送给所述第二仿真组件。6.根据权利要求1-5中任一项所述的方法,其特征在于,所述数据库中还包括不同仿真组件的属性参数和状态参数;所述接收第一仿真组件发送的仿真结果之前,所述方法还包
括:确定参与本次仿真的目标仿真组件,所述目标仿真组件中包括所述第一仿真组件和所述第二仿真组件;根据所述目标仿真组件的属性参数和状态参数,对所述目标仿真组件进行初始化。7.根据权利要求6所述的方法,其特征在于,所述状态参数中包括不同仿真组件的输入变量初始值和输出变量初始值,所述根据所述目标仿真组件的属性参数和状态参数,对所述目标仿真组件进行初始化,包括:将所述目标仿真组件的属性参数和输入变量初始值发送给所述目标仿真组件;接收所述目标仿真组件发送的反馈结果;根据所述反馈结果和所述目标仿真组件的输出变量初始值,确定所述目标仿真组件是否完成初始化。8.一种evtol航空器的仿真系统的数据控制装置,其特征在于,包括:数据写入模块,用于接收第一仿真组件发送的仿真结果;根据所述仿真结果和数据库中的接口控制参数,对数据库中的变量缓冲区进行更新;数据分发模块,用于接收第二仿真组件发送的参数获取请求;根据所述第二仿真组件与所述第一仿真组件之间的关联关系,将所述变量缓冲区中的数据发送给所述第二仿真组件。9.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1-7中任一所述的evtol航空器的仿真系统的数据控制方法。10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1-7中任一所述的evtol航空器的仿真系统的数据控制方法。

技术总结
本申请实施例提供一种eVTOL航空器的仿真系统的数据控制方法、装置、设备及存储介质,通过接收第一仿真组件发送的仿真结果,根据接口控制参数和仿真结果,对数据库中的变量缓冲区进行更新,接收第二仿真组件发送的参数获取请求,根据第二仿真组件与第一仿真组件之间的关联关系,将变量缓冲区中的数据发送给第二仿真组件,在保证数据一致性和完整性的前提下,实现了仿真系统中不同仿真组件之间的数据共享,提高了仿真系统的运行效率。提高了仿真系统的运行效率。提高了仿真系统的运行效率。


技术研发人员:沈硕 史俊杰 刘胜南 郝妮娜 宋斌斌 马骥 丁元沅
受保护的技术使用者:安胜(天津)飞行模拟系统有限公司
技术研发日:2022.06.22
技术公布日:2022/11/1
转载请注明原文地址: https://tieba.8miu.com/read-7843.html

最新回复(0)