本技术属于智能交通,尤其涉及一种联合仿真的方法、装置、设备和存储介质。
背景技术:
1、自动驾驶系统需要进行庞大数量测试场景的仿真测试,海量的数据存储、运算及处理能力已成为自动驾驶研发路上的障碍。联合仿真测试是未来自动驾驶仿真技术的一个重要研究领域,传统汽车和智能网联汽车混行将是一种常见的交通场景,需建立智能网联汽车在不同渗透率下的混合交通仿真模型。
2、现有技术中,不同仿真工具间的联合仿真存在兼容性问题,会出现工具间数据交互不畅、接口不统一、仿真效率低等问题,影响联合仿真的可靠性和精度。
3、因此,现有技术存在的问题是联合仿真的可靠性和精度不高。
技术实现思路
1、本技术实施例提供了一种联合仿真的方法、装置、设备和存储介质,解决了联合仿真的可靠性和精度不高的问题。
2、第一方面,本技术实施例提供的一种联合仿真的方法,该方法包括:
3、获取利用第一仿真软件建立的验证评价子模型、利用第二仿真软件建立的公路子模型和利用第三仿真软件建立的车辆子模型,其中,第一仿真软件、第二仿真软件和第三仿真软件采用不同的编程语言;
4、基于验证评价子模型、公路子模型、车辆子模型和每个子模型之间预设的联合仿真结构关系,使用统一编程语言建立联合仿真系统模型,其中,联合仿真系统模型中包括验证评价子模型、公路子模型和车辆子模型;
5、运行目标驱动脚本,基于目标驱动脚本中的初始化参数对联合仿真系统模型的参数进行初始化,得到目标联合仿真系统模型,其中,目标驱动脚本为基于第一仿真软件和第三仿真软件编写得到。
6、在一些可能的实现方式中,车辆子模型包括以下至少一项商用车辆模型、车辆编队行驶模型和车辆动力学模型。
7、在一些可能的实现方式中,第一仿真软件包括catia magic软件。
8、在一些可能的实现方式中,基于验证评价子模型、公路子模型、车辆子模型和每个子模型之间预设的联合仿真结构关系,使用统一编程语言建立联合仿真系统模型,包括:
9、基于第一仿真软件,根据每个子模型之间预设的联合仿真结构关系,使用统一编程语言对验证评价子模型、公路子模型和车辆子模型进行逻辑描述、对每个子模块的接口进行规范定义,得到联合仿真系统模型。
10、在一些可能的实现方式中,联合仿真系统模型包括启动模块、运行模块、结果输出模块和验证评价模块;在运行目标驱动脚本,基于目标驱动脚本中的初始化参数对联合仿真系统模型的参数进行初始化,得到目标联合仿真系统模型之前,该方法还包括:
11、基于第一仿真软件,编写启动模块的第一驱动脚本和验证评价模块的第二驱动脚本,其中第一驱动脚本中包括第一仿真软件、第二仿真软件和第三仿真软件的运行参数和验证评价子模型、公路子模型和车辆子模型的参数;
12、基于第三仿真软件,编写运行模块的第三驱动脚本和结果输出模块的第四驱动脚本;
13、目标驱动脚本包括第一驱动脚本、第二驱动脚本、第三驱动脚本和第四驱动脚本。
14、在一些可能的实现方式中,运行目标驱动脚本,基于目标驱动脚本中的初始化参数对联合仿真系统模型的参数进行初始化,得到目标联合仿真系统模型,包括:
15、运行第一驱动脚本,对联合仿真系统模型的参数进行初始化;
16、运行第二驱动脚本,对联合仿真结果进行验证和评价;
17、运行第三驱动脚本,驱动第二仿真软件和第三仿真软件进行联合仿真,第二仿真软件执行算法并通过结果输出模块将联合仿真结果输出给第一仿真软件;
18、运行第四驱动脚本,驱动结果输出模块将联合仿真结果输出给第一仿真软件。
19、第二方面,本技术实施例还提供了一种联合仿真的装置,该装置包括:
20、获取模块,用于获取利用第一仿真软件建立的验证评价子模型、利用第二仿真软件建立的公路子模型和利用第三仿真软件建立的车辆子模型,其中,第一仿真软件、第二仿真软件和第三仿真软件采用不同的编程语言;
21、建立模块,用于基于验证评价子模型、公路子模型、车辆子模型和每个子模型之间预设的联合仿真结构关系,使用统一编程语言建立联合仿真系统模型,其中,联合仿真系统模型中包括验证评价子模型、公路子模型和车辆子模型;
22、初始化模块,用于运行目标驱动脚本,基于目标驱动脚本中的初始化参数对联合仿真系统模型的参数进行初始化,得到目标联合仿真系统模型,其中,目标驱动脚本为基于第一仿真软件和第三仿真软件编写得到。
23、在一些可能的实现方式中,车辆子模型包括以下至少一项商用车辆模型、车辆编队行驶模型和车辆动力学模型。
24、在一些可能的实现中,第一仿真软件包括catia magic软件。
25、在一些可能的实现中,建立模块用于基于验证评价子模型、公路子模型、车辆子模型和每个子模型之间预设的联合仿真结构关系,使用统一编程语言建立联合仿真系统模型,包括:
26、规范化单元,用于基于第一仿真软件,根据每个子模型之间预设的联合仿真结构关系,使用统一编程语言对验证评价子模型、公路子模型和车辆子模型进行逻辑描述、对每个子模块的接口进行规范定义,得到联合仿真系统模型。
27、在一些可能的实现中,联合仿真系统模型包括启动模块、运行模块、结果输出模块和验证评价模块;在初始化模块用于运行目标驱动脚本,基于目标驱动脚本中的初始化参数对联合仿真系统模型的参数进行初始化,得到目标联合仿真系统模型之前,该装置还包括编写模块:
28、编写模块,用于基于第一仿真软件,编写启动模块的第一驱动脚本和验证评价模块的第二驱动脚本,其中第一驱动脚本中包括第一仿真软件、第二仿真软件和第三仿真软件的运行参数和验证评价子模型、公路子模型和车辆子模型的参数;
29、编写模块,还用于基于第三仿真软件,编写运行模块的第三驱动脚本和结果输出模块的第四驱动脚本;
30、目标驱动脚本包括第一驱动脚本、第二驱动脚本、第三驱动脚本和第四驱动脚本。
31、在一些可能的实现中,初始化模块用于运行目标驱动脚本,基于目标驱动脚本中的初始化参数对联合仿真系统模型的参数进行初始化,得到目标联合仿真系统模型,包括:
32、初始化单元,用于运行第一驱动脚本,对联合仿真系统模型的参数进行初始化;
33、验证评价单元,用于运行第二驱动脚本,对联合仿真结果进行验证和评价;
34、联合仿真单元,用于运行第三驱动脚本,驱动第二仿真软件和第三仿真软件进行联合仿真,第二仿真软件执行算法并通过结果输出模块将联合仿真结果输出给第一仿真软件;
35、结果输出单元,用于运行第四驱动脚本,驱动结果输出模块将联合仿真结果输出给第一仿真软件。
36、第三方面,本技术实施例还提供了一种设备,该设备包括处理器以及存储有计算机程序指令的存储器;处理器执行计算机程序指令时实现第一方面,或第一方面中的任一可能实现方式中的联合仿真的方法。
37、第四方面,本技术实施例还提供了一种计算机存储介质,计算机可读存储介质上存储有计算机程序指令,计算机程序指令被处理器执行时实现第一方面,或第一方面中的任一可能实现方式中的联合仿真的方法。
38、第五方面,本技术实施例提供了一种计算机程序产品,计算机程序产品中的指令由电子设备的处理器执行时,使得电子设备能够执行第一方面,或第一方面中的任一可能实现方式中的联合仿真的方法。
39、本技术实施例的联合仿真的方法、装置、设备和存储介质,通过获取利用第一仿真软件建立的验证评价子模型、利用第二仿真软件建立的公路子模型,利用第三仿真软件建立的车辆子模型,其中,三种仿真软件采用不同的编程语言,然后基于上述三个子模型和每个子模型之间预设的联合仿真结构关系,使用统一编程语言建立联合仿真系统模型(该模型中包括上述三个子模型),接下来运行目标驱动脚本(该脚本为基于第一仿真软件和第三仿真软件编写得到),基于目标驱动脚本中的初始化参数对联合仿真系统模型的参数进行初始化,得到目标联合仿真系统模型。该方法通过统一编程语言将三个不同编程语言建立的三个子模型进行规范定义,实现了在目标联合仿真系统模型中通过统一的编程语言就可以调用三个子模型的不同接口,解决了由于接口编程语言不统一导致的数据交互不畅问题,提高了联合仿真的可靠性和精准度。