CN116010039B - 用于智能汽车多实体联合仿真的消息中间件集成方法 - Google Patents
用于智能汽车多实体联合仿真的消息中间件集成方法 Download PDFInfo
- Publication number
- CN116010039B CN116010039B CN202310308792.8A CN202310308792A CN116010039B CN 116010039 B CN116010039 B CN 116010039B CN 202310308792 A CN202310308792 A CN 202310308792A CN 116010039 B CN116010039 B CN 116010039B
- Authority
- CN
- China
- Prior art keywords
- simulation
- message middleware
- entity
- interface unit
- platforms
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000004088 simulation Methods 0.000 title claims abstract description 253
- 238000000034 method Methods 0.000 title claims abstract description 42
- 230000010354 integration Effects 0.000 title claims abstract description 17
- 239000008186 active pharmaceutical agent Substances 0.000 claims description 34
- 230000006870 function Effects 0.000 claims description 28
- 238000004891 communication Methods 0.000 claims description 17
- 238000004806 packaging method and process Methods 0.000 claims description 13
- 238000004364 calculation method Methods 0.000 claims description 8
- 238000004458 analytical method Methods 0.000 claims description 2
- 230000003993 interaction Effects 0.000 description 9
- 230000008569 process Effects 0.000 description 9
- 238000010586 diagram Methods 0.000 description 7
- 238000012858 packaging process Methods 0.000 description 6
- 230000004927 fusion Effects 0.000 description 5
- 230000007246 mechanism Effects 0.000 description 5
- 238000010276 construction Methods 0.000 description 4
- 238000011161 development Methods 0.000 description 4
- 238000005192 partition Methods 0.000 description 4
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 230000001360 synchronised effect Effects 0.000 description 3
- 230000006978 adaptation Effects 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 210000003462 vein Anatomy 0.000 description 2
- 230000003044 adaptive effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005538 encapsulation Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000001771 impaired effect Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000013486 operation strategy Methods 0.000 description 1
- 230000000149 penetrating effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000010998 test method Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
Images
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02T—CLIMATE CHANGE MITIGATION TECHNOLOGIES RELATED TO TRANSPORTATION
- Y02T10/00—Road transport of goods or passengers
- Y02T10/10—Internal combustion engine [ICE] based vehicles
- Y02T10/40—Engine management systems
Landscapes
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明实施例涉及智能交通仿真领域,公开了一种用于智能汽车多实体联合仿真的消息中间件集成方法,包括:获取待仿真的交通场景下的多个实体,所述多个实体包括车辆、路侧基础设施、云平台中的至少之一;根据各实体在联合仿真中需交互的信息,搭建消息中间件,所述消息中间件用于存储并交互各实体的仿真数据;根据仿真平台的接口特点,对所述多个实体的仿真平台进行分类;为各类仿真平台封装与接口特点适配的、通用的消息中间件接口单元,供同类型的仿真平台调用,其中,消息中间件接口单元用于在消息中间件和仿真平台之间交互数据。本实施例采用消息中间件进行智能汽车多实体联合仿真。
Description
技术领域
本发明实施例涉及智能交通仿真领域,尤其涉及一种用于智能汽车多实体联合仿真的消息中间件集成方法。
背景技术
智能汽车信息物理系统是利用新一代信息与通信技术,将人、车、路、云连为一体,进行融合感知、决策与控制的一种信息物理系统。该系统包括多个实体,如智能汽车与其他交通参与者、路侧基础设施、云控基础平台、云控应用平台、保证系统发挥作用的相关支撑平台以及贯穿整个系统各个部分的通信网络等,所涉及的学科、领域非常广泛,往往要利用多个领域的专业平台分别进行建模和仿真,即分布式联合仿真。
传统分布式联合仿真中,节点间的采用TCP/IP协议进行通信完成数据的转发与计算,撑异构仿真平台的分布式集成仿真与时钟同步,提升联合仿真效率。该方式一般用于单实体中不同学科异构仿真平台间的模型机理融合,各类仿真平台需要协商通信步长满足时钟同步,完成一个步长的单实体仿真。图1展示了一个智能汽车动力学和运动学利用传统TCP/IP实现分布式联合仿真的例子,可以看出,由于车辆的动力学和运动学模型存在机理融合关系,所以动力学模型需等到运动学模型计算结束并通信完毕后,二者同时开启下一步仿真。
然而在涉及到多个实体的联合仿真中,参与仿真的实体众多,如果在每个实体之间同步仿真步长,会严重影仿真效率。CN113746683A公开了一种跨域环境下的互连、互通和互操作仿真方法,CN115525397A公开了一种支持多用户的联合仿真试验鉴定系统及其仿真试验方法,但二者并没有针对智能汽车信息物理系统的特点,给出一种详细可操作性的多实体仿真系统构建方法。
发明内容
本发明实施例提供一种用于智能汽车多实体联合仿真的消息中间件集成方法,采用消息中间件进行智能汽车多实体联合仿真,无需实体间的仿真同步。
第一方面,本发明实施例提供了一种用于智能汽车多实体联合仿真的消息中间件集成方法,用于构建智能汽车多实体联合仿真系统,所述系统包括:参与联合仿真各实体的仿真平台和消息中间件接口单元,消息中间件和联合仿真工具;
所述方法包括:
获取待仿真的交通场景下的多个实体,所述多个实体包括车辆、路侧基础设施、云平台中的至少之一;
根据各实体在联合仿真中需交互的信息,搭建消息中间件,所述消息中间件用于存储并交互各实体的仿真数据;
根据仿真平台的接口特点,对所述多个实体的仿真平台进行分类;
为各类仿真平台封装与接口特点适配的、通用的消息中间件接口单元,供同类型的仿真平台调用,其中,消息中间件接口单元用于在消息中间件和仿真平台之间交互数据。
第二方面,本发明实施例提供一种用于智能汽车多实体联合仿真系统,包括:参与联合仿真的多个实体中各实体的仿真平台和消息中间件接口单元,消息中间件和联合仿真工具;其中,
所述多个实体包括待仿真的交通场景下的车辆、路侧基础设施、云平台中的至少之一;
各实体的仿真平台用于完成各实体的仿真计算;
消息中间件用于存储并交互仿真数据;
联合仿真工具用于获取仿真模型的输入参数并支撑服务端集成与调度;
消息中间件接口单元用于在消息中间件和仿真平台之间交互数据;
其中,所述消息中间件通过上述方法集成在所述系统中。
本发明实施例针对传统联合仿真中仿真平台之间高耦合的问题,提供了一种基于消息中间件的多实体联合仿真系统,并根据各实体仿真平台的接口特点封装了不同的通用型消息中间件接口单元,实现仿真平台与消息中间件之间的数据交互。具体的,每一种封装类型的消息中间件接口单元可以复用到同一类型的所有平台中,最大限度地减少同类型不同仿真平台上的接口适配工作,降低了消息中间件在多实体联合仿真系统中的集成难度,有利于实现多实体的分布式仿真,提高多实体仿真效率。
附图说明
为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的传统的分布式联合仿真的时序图;
图2是本发明实施例提供的一种智能汽车多实体联合仿真系统的结构示意图;
图3是本发明实施例提供的一种用于智能汽车多实体联合仿真的消息中间件集成方法的流程图;
图4是本发明实施例提供的一种分布式多实体仿真系统中消息中间件的示意图;
图5是本发明实施例提供的第一类仿真平台的消息中间件接口单元的封装过程示意图;
图6是本发明实施例提供的第二类仿真平台的消息中间件接口单元的封装过程示意图;
图7是本发明实施例提供的第三类仿真平台的消息中间件接口单元的封装过程示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将对本发明的技术方案进行清楚、完整的描述。显然,所描述的实施例仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所得到的所有其它实施例,都属于本发明所保护的范围。
在本发明的描述中,需要说明的是,术语“中心”、“上”、“下”、“左”、“右”、“竖直”、“水平”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。此外,术语“第一”、“第二”、“第三”仅用于描述目的,而不能理解为指示或暗示相对重要性。
在本发明的描述中,还需要说明的是,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本发明中的具体含义。
如背景技术所述,在涉及到多个实体的联合仿真中,如果在每个实体之间同步仿真步长,会严重影仿真效率。事实上,智能汽车信息物理系统的发部分仿真实体之间,并不存在机理融合,大部分实体完成自身步长的仿真任务之后不需要等待云控系统的反馈即可进入下一个仿真步长的计算,不需要在多个仿真平台协商通信步长。例如,智能驾驶道路RSU(Road Side Unit,路侧单元)通过无线电波发送交通标志信息给OBU(On Board Unit,车载单元),RSU与OBU在不同的仿真平台上实现建模与仿真,RSU与OBU设备在物理架构上并不存在机理融合,RSU设备不需要收到OBU设备的反馈即可进入下一次发送任务环节,同理,车载OBU给感知设备发送数据时也不会等待反馈。基于此,本发明实施例提供一种用于智能汽车多实体联合仿真的消息中间件集成方法,采用分布式消息中间件来实现各实体仿真数据的交互。
为了说明该方法,优先介绍利用该方法构建起来的仿真系统。图2是本发明实施例提供的一种智能汽车多实体联合仿真系统的结构示意图,如图2所示,该系统包括:参与联合仿真的多个实体中各实体的仿真平台和消息中间件接口单元,消息中间件和联合仿真工具。该系统采用分布式联合仿真方式,实现特定交通场景下的车路仿真或多车仿真等。
其中,所述多个实体包括特定交通场景下的车辆、路侧基础设施、云平台中的至少之一,各实体的仿真平台用于完成各实体的仿真计算,消息中间件用于存储并交互仿真数据,联合仿真工具用于获取仿真模型的输入参数并支撑服务端集成与调度,消息中间件接口单元用于通过消息中间件在仿真平台和联合仿真工具之间交互数据。
在联合仿真过程中,一方面,消息中间件接口单元接收仿真平台的输出数据,通过消息中间件转发给联合仿真工具,支撑服务端后续集成与调度。各仿真平台通过消息中间件接口单元,订阅消息中间件的不同主题进行连接,并发送仿真模型模型输出数据给消息中间件指定主题。
另一方面,消息中间件接口单元通过消息中间件,接收来自联合仿真工具的仿真模型输入参数,转发给各仿真平台用于支撑后续计算。各仿真平台通过消息中间件接口单元,订阅消息中间件不同主题进行连接,从消息中间件接收指定主题的模型输入数据。
本系统根据智能汽车多实体联合仿真中各实体间的模型机理,将消息中间件应用在智能汽车多实体联合仿真中,构建了一个模型同步求解且高效交互、分发数据的中转枢纽,由各仿真平台的求解器执行各实体的仿真计算,由该中转枢纽进行仿真数据转发,可以并列执行、互不干扰,无需各系统间的通信同步,既提高了联合仿真效率,又有利于实现大规模复杂系统的集成仿真。
图3是本实施例提供的一种用于智能汽车多实体联合仿真的消息中间件集成方法的流程图。该方法用于实现上述消息中间件和消息中间件接口单元,与各仿真平台和联合仿真工具共同构成图2中的仿真系统。该方法可以由电子设备执行,如图3所示,具体包括如下步骤。
S110、获取待仿真的交通场景下的多个实体,所述多个实体包括车辆、路侧基础设施、云平台中的至少之一。
S120、根据各实体在联合仿真中需交互的信息,搭建消息中间件,所述消息中间件用于存储并交互各实体的仿真数据。
如图4所示,分布式消息中间件是支持在分布式系统中发送和接收消息的基础软件,各系统之间需要的交互数据都存储在消息中间件中,消息中间件通过提供消息传递和消息排队模型进行与各系统内部运行无关的数据交流,在分布式架构下扩展进程之间的通信,降低了多系统之间的耦合程度。
具体到智能汽车的交通场景,以kafka消息中间件为例,其搭建过程包括如下步骤:
步骤一、配置主题订阅形式的消息中间件,即kafka消息中间件。同时配置消息中间件的节点信息,配置信息包括地址和端口,可以配置多个节点实现集群,集群主要用于分布式存储消息,起到消息备份作用,假设配置的节点数为n,n为自然数。
步骤二、根据所述交通场景下各实体的交通逻辑关系,确定各实体在联合仿真中需要交互的信息。假设有m辆车、路侧限速标志和十字路口红绿灯这些实体参与到某一路段的多实体联合仿真中(其中,m为自然数),则各实体之间的交通逻辑关系包括:每辆车根据路侧限速标志调整自身车速,根据红绿灯信息调整自身车速,根据其他车的车速、行驶方向、转向角等调整自身车速。由此可以确定路侧限速标志需要向每辆车发送限速信息,红绿灯需要需要向每辆车发送红绿灯信息,车辆之间需要交互自身的车速、方向和转向角信息。
步骤三、根据所述需要交互的信息,在所述消息中间件中创建各实体对应的主题和消费者。在上面的假设中,创建的主题包括“限速标志”、“红绿灯”和“车辆”。其中,“限速标志”主题用于存储路侧限速标志模型仿真平台发送的限速消息,消费者为参与联合仿真的m辆车所在的仿真平台,供车辆获取限速信息实现V2I反馈调整车行速度。“红绿灯”主题用于存储十字路口红绿灯模型仿真平台发送的控制信号灯消息,消费者为参与联合仿真的m辆车所在的仿真平台,供车辆获取控制信号灯信息实现V2I反馈调整车行速度。“车辆”主题用于存储m辆车的实时运行数据,包括车速、位置、转向角等,消费者为参与联合仿真的m辆车所在的仿真平台,供车辆车辆获取其他车辆的相关信息实现V2V反馈调整自身的运行策略。
特别的,消息中间件的每一条消息只能被一个消费组中的一个消费者接收,如果任一实体的任一信息需要提供给多个其它实体,为所述信息创建一个主题,为所述主题创建多个消费组,每个消费组对应一个其它实体。例如,“限速标志”、“红绿灯”等路侧设备向车辆发送控制消息时,需要让该条路段上行驶的所有车辆都接收到消息,此事需要利用消息中间件的多播模式,让一条消息需要被多个消费者接收。在此实例中,多个消费者指的是在该路段上行驶的m辆车,此时需要创建m个消费组,每一辆车对应一个消费组为消息消费者创建不同消费组,让路侧设备发送的消息被m辆车同时接收,其中,m为自然数。
进一步的,消息中间件中可以创建分区和副本。当一个主题消息量非常大时,可以在主题下创建多个分区来保存这些消息,如参与联合仿真的m辆车在行驶过程中会不断向节点的“车辆”主题发送实时运行数据,在集群模式下节点数量为n,可以为“车辆”主题创建n个分区和n个副本,副本是对分区的备份,不同的副本会被部署在不同的节点上。
S130、根据仿真平台的接口特点,对所述多个实体的仿真平台进行分类。
对交通场景的多实体仿真中,需要用到汽车领域的仿真软件Adams和Carsim、总线仿真工具CANoe,支持车路协同和车车通信的仿真软件SystemVue、Veins和CANoe.Car2X,支持城市公共交通微观建模的仿真软件包括Vissim,以及其它使用各类代码自主开发的独立模型模块等。为了使本实施例的中间消息建集成方法适用于尽可能多的仿真平台,本步骤对汽车领域、车路协同领域、车车通信领域和交通建模领域的仿真软件的接口特点进行分析,从各软件的接口标准中识别出应用率最高的FMI标准;然后将仿真平台是否支持FMI标准和是否已定义固定API作为依据,将所述多个实体的仿真平台划分为三类:
第一类,支持FMI标准且已定义了固定API的仿真平台,典型代表为支持FMI标准导入FMU模块的、成熟的仿真软件,包括:Dymola、SimulationX、OpenModelica、MATLAB/simulink、AMESim、MWorks、Adams、Carsim、CANoe等;
第二类,不支持FMI标准且已定义了固定API的仿真平台,典型代表为不支持FMI标准的、成熟的仿真软件,包括:SystemVue、Veins等;
第三类,未定义固定API的仿真平台,典型代表为使用各类代码自主编写的独立模型模块。
以上三类仿真平台,由于其接口协议的不同,决定了后续开发适配的接口单元时需要采用不同的策略。进一步的,仿真平台是否支持FMI协议和是否已定义固定API,既可以通过先验经验直接获取,也可以通过电子设备自动判断。在一具体实施方式中,可以通过识别仿真平台的功能模块来判断一仿真平台是否支持FMI协议,如果平台中识别到FMU模块封装功能,则该平台支持FMI协议;也可以通过解析仿真平台的数据包来判断一仿真平台是否定义了固定API,并解析出固定API的具体内容。
S140、为各类仿真平台封装与接口特点适配的、通用的消息中间件接口单元,供同类型的仿真平台调用,其中,消息中间件接口单元用于在消息中间件和仿真平台之间交互数据。
本步骤根据每类仿真平台的特点,封装一个通用性消息中间件接口单元,封装完毕后可以同同一类型的所有仿真平台调用。具体的,封装过程包括以下三种可选实施方式:
第一种可选实施方式,对于第一类支持FMI标准且已定义了固定API的仿真平台,其API已定义且都遵循FMI标准,如果在消息中间件接口单元中约定好使用FMI标准,即可实现消息中间件接口单元与仿真平台的互通互认。在一具体实施方式中,接口单元的封装过程如图5所示:首先在该类型的任一仿真平台下构建消息中间件接口单元的基本功能,然后将具备基本功能的消息中间件接口单元封装为FMU模块,即得到了一个FMU形式的消息中间件接口单元,最后将所述FMU模块导入同类型的其它仿真平台,这些仿真平台既可以调用该接口单元。
第一类仿真平台大多为于支持FMI标准的成熟建模软件,对于这些软件而言,其建模语言大部分都支持调用开发语言(如C++、Java等)的消息中间件sdk库文件,因此可以在该软件下调用C++、Java等开发语言构建消息中间件接口单元的基本功能。又由于FMI标准的成熟软件支持导入FMU功能,将具备基本功能的消息中间件接口单元封装为FMU模块后,其接口默认遵循FMI协议,可实现与第一类仿真平台的相互识别,从而使接口单元的基本功能得以执行,实现此类仿真平台与消息中间件之间的数据快速交互。
具体来说,接口单元基本功能的构建主要包括以下两个方面:一方面,建立消息中间件接口单元与仿真模型的连接接口,同时,建立消息中间件接口单元与消息中间件的通信接口,并在两个接口之间设定数据转发规则,使消息中间件接口单元具备在仿真模型和消息中间件之间进行数据转发的功能。需要说明的是,为了提高模块的通用性,这里仅提供接口,并不限定具体连接的模型和所要访问的消息中间件,在真正的模型仿真中可以通过在仿真平台中对接口单元的简单配置,实现具体的模型连接和消息中间件配置。
另一方面,建立仿真模型参数的动态配置接口,并设定该接口的参数解析规则,使在各仿真平台作为模型与联合仿真工具参与仿真工作时,能够通过该接口解析出系统分配的连接参数与交互参数。其中,连接参数用于支撑消息中间件订阅配置,包括消息中间件服务地址和对应主题等;交互参数用于指定智能汽车各实体模型交互时不同数据源标识,支撑联合仿真工具的任务调度、数据交互与同步。动态配置是指,只提供参数配置接口,不配置具体参数(包括类型或数值),在实际仿真中可以根据仿真平台、仿真模型和消息中间件的不同灵活配置或获取参数,实现在不同仿真平台和消息中间件下的即插即用,避免在每次仿真中都进行二次开发。
第二种可选实施方式,对于不支持FMI标准且已定义固定API的仿真平台,由于脱离了FMI标准,这些平台的接口协议互不相同,需在接口单元中明确已定义好的API才能实现互相调用。在一具体实施方式中,接口单元的封装过程如图6所示:首先在通用编程语言IDE(Integrated Development Environment,集成开发环境)下构建消息中间件接口单元的基本功能,然后在具备基本功能的消息中间件接口单元中添加所述仿真软件的固定API,再将添加固定API后的消息中间件接口单元封装为动态链接库,即得到一个.dll形式的消息中间件接口单元,供同类型的仿真平台调用。其中,接口单元基本功能的构建过程与第一种可选实施方式相同,区别在于第一种可选实施方式中,该构建过程是在仿真平台的环境下实现的;而第二种可选实施方式中,该构建过程是在IDE环境下实现的。
进一步的,当第二类仿真平台有多个时,消息中间件的基本功能构建完毕后,后续的封装过程可以包括以下两种方法:
第一种方法,复制多个具备基本功能的消息中间件接口单元,在各具备基本功能的消息中间件接口单元中分别添加一个同类型的仿真平台的固定API;将各添加API后的消息中间件接口单元封装为动态链接库,供对应的仿真平台调用,即供所添加的固定API的仿真平台调用。该方式适用于仿真平台数量较少的情况,优点是无需对仿真平台进行改造,仿真平台可以直接调用。
第二种方法,在具备基本功能的消息中间件接口单元中,一次性添加多个同类型的仿真平台的固定API;将添加API后的消息中间件接口单元封装为动态链接库,供所述多个同类型的仿真平台自动匹配并调用。该方式适用于仿真平台数量较多的情况,优点是接口单元的通用性高,但需要在仿真平台和接口单元中部署自动匹配API的算法,使双方具备自动匹配功能。实际应用中,可以针对平台数量和部署的难易程度,灵活选取合适的方式。
第三种可选实施方式,对于未定义固定API的仿真平台,该类平台通常为自主开发的仿真模型或仿真模块,自定义空间较大,接口形式灵活,为了提高接口单元的通用性,可以在接口单元中规定了统一的对外接口,同时与自主开发的仿真模型或模块约定好采用一致的接口协议。在一具体实施方式中,接口单元的封装过程如图7所示:首先在IDE下构建消息中间件接口单元的基本功能,然后在已具备基本功能的消息中间件接口单元中自定义统一的对外接口,用于约束所述仿真平台中定义与所述对外接口匹配的API;将自定义后的消息中间件接口单元封装为动态链接库,这样就得到了一个.dll格式的接口单元,供同类型的仿真平台调用。
一方面,该.dll中间件自身就是一个消息中间件接口单元,能够通过调用消息中间件sdk库文件实现仿真软件与消息中间件之间的数据快速交互;另一方面,该/>.dll中间件提供了固定格式的可调用接口,这就确保所有能够支持dll文件调用的编程语言(C/C++、Python、Java、C#、R、Fortran等)都可以调用此文件并开展集成仿真。
本实施例针对传统联合仿真中仿真平台之间高耦合的问题,提供了一种基于消息中间件的多实体联合仿真系统,并根据各实体仿真平台的接口特点封装了不同的通用型消息中间件接口单元,实现仿真平台与消息中间件之间的数据交互。具体的,通过对各仿真平台的有限分类概括平台接口的本质特点,巧妙利用FMI协议和固定API开发出不同类型的封装方式,使每一种封装类型的消息中间件接口单元可以复用到同一类型的所有平台中,最大限度地减少同类型不同仿真平台上的接口适配工作;同时每一种消息中间件接口单元中设置了模型连接接口、消息中间件通信接口、参数动态配置接口,可以在实际仿真中自动解析参数并交互数据,通过简单的配置即可达到异构平台的标准化即插即用效果,降低了消息中间件在多实体联合仿真系统中的集成难度,有利于实现多实体的分布式仿真,提高多实体仿真效率。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案。
Claims (8)
1.一种用于智能汽车多实体联合仿真的消息中间件集成方法,其特征在于,用于构建智能汽车多实体联合仿真系统,所述系统包括:参与联合仿真各实体的仿真平台和消息中间件接口单元,消息中间件和联合仿真工具;
所述方法包括:
获取待仿真的交通场景下的多个实体,所述多个实体包括车辆、路侧基础设施、云平台中的至少之一;
根据各实体在联合仿真中需交互的信息,搭建消息中间件,所述消息中间件用于存储并交互各实体的仿真数据;
根据仿真平台的接口特点,对所述多个实体的仿真平台进行分类;
为各类仿真平台封装与接口特点适配的、通用的消息中间件接口单元,供同类型的仿真平台调用,其中,消息中间件接口单元用于在消息中间件和仿真平台之间交互数据;具体的,对于不支持FMI标准且已定义固定API的仿真平台,在该类仿真平台有多个的情况下,在IDE下构建消息中间件接口单元的基本功能;复制多个具备基本功能的消息中间件接口单元,在各具备基本功能的消息中间件接口单元中分别添加一个同类型的仿真平台的固定API;将各添加API后的消息中间件接口单元封装为动态链接库,供对应的仿真平台调用;或者,在具备基本功能的消息中间件接口单元中,添加多个同类型的仿真平台的固定API;将添加API后的消息中间件接口单元封装为动态链接库,供所述多个同类型的仿真平台自动匹配并调用。
2.根据权利要求1所述的方法,其特征在于,所述根据各实体在联合仿真中需交互的信息,搭建消息中间件,包括:
配置主题订阅形式的消息中间件;
根据所述交通场景下各实体的交通逻辑关系,确定各实体在联合仿真中需要交互的信息;
根据所述需要交互的信息,在所述消息中间件中创建各实体对应的主题和消费者。
3.根据权利要求2所述的方法,其特征在于,所述根据所述需要交互的信息,在所述消息中间件中创建各实体对应的主题和消费者,包括:
如果任一实体的任一信息需要提供给多个其它实体,为所述信息创建一个主题,为所述主题创建多个消费组,每个消费组对应一个其它实体。
4.根据权利要求1所述的方法,其特征在于,所述根据仿真平台的接口特点,对所述多个实体的仿真平台进行分类,包括:
从汽车领域、车路协同、车车通信和交通建模领域仿真软件的接口标准中,识别出应用率最高的FMI标准;
根据仿真平台是否支持FMI标准和是否已定义固定API,将所述多个实体的仿真平台划分为三类:支持FMI标准且已定义固定API的仿真平台,不支持FMI标准且已定义固定API的仿真平台,以及未定义固定API的仿真平台。
5.根据权利要求1所述的方法,其特征在于,所述为各类仿真平台封装与接口特点适配的、通用的消息中间件接口单元,供同类型的仿真平台调用,包括:
对于支持FMI标准且已定义固定API的仿真平台,在同类型的任一仿真平台下构建消息中间件接口单元的基本功能;
将具备基本功能的消息中间件接口单元封装为FMU模块;
将所述FMU模块导入同类型的其它仿真平台供调用。
6.根据权利要求1所述的方法,其特征在于,所述为各类仿真平台封装与接口特点适配的、通用的消息中间件接口单元,供同类型的仿真平台调用,包括:
对于未定义固定API的仿真平台,在IDE下构建消息中间件接口单元的基本功能;
在已具备基本功能的消息中间件接口单元中自定义统一的对外接口,用于约束同类型的仿真平台中定义与所述对外接口匹配的API;
将自定义后的消息中间件接口单元封装为动态链接库,供同类型的仿真平台调用。
7.根据权利要求5或6所述的方法,其特征在于,所述构建消息中间件接口单元的基本功能,包括:
建立消息中间件接口单元与仿真模型的连接接口,以及消息中间件接口单元与消息中间件的通信接口,并设置所述连接接口与通信接口之间的数据转发规则;
建立仿真模型参数的动态配置接口,并设置所述动态配置接口的参数解析规则。
8.一种用于智能汽车多实体联合仿真系统,其特征在于,包括:参与联合仿真的多个实体中各实体的仿真平台和消息中间件接口单元,消息中间件和联合仿真工具;其中,
所述多个实体包括待仿真的交通场景下的车辆、路侧基础设施、云平台中的至少之一;
各实体的仿真平台用于完成各实体的仿真计算;
消息中间件用于存储并交互仿真数据;
联合仿真工具用于获取仿真模型的输入参数并支撑服务端集成与调度;
消息中间件接口单元用于在消息中间件和仿真平台之间交互数据;
其中,所述消息中间件通过如权利要求1-7中任一所述的方法集成在所述系统中。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310308792.8A CN116010039B (zh) | 2023-03-28 | 2023-03-28 | 用于智能汽车多实体联合仿真的消息中间件集成方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310308792.8A CN116010039B (zh) | 2023-03-28 | 2023-03-28 | 用于智能汽车多实体联合仿真的消息中间件集成方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116010039A CN116010039A (zh) | 2023-04-25 |
CN116010039B true CN116010039B (zh) | 2023-06-27 |
Family
ID=86025245
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310308792.8A Active CN116010039B (zh) | 2023-03-28 | 2023-03-28 | 用于智能汽车多实体联合仿真的消息中间件集成方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116010039B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116455972B (zh) * | 2023-06-16 | 2023-08-29 | 中国人民解放军国防科技大学 | 基于消息中心通信的仿真中间件的实现方法及系统 |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108427776A (zh) * | 2017-02-13 | 2018-08-21 | 中国科学院沈阳计算技术研究所有限公司 | 分布式全数字联合仿真系统与方法 |
CN108197370A (zh) * | 2017-12-28 | 2018-06-22 | 南瑞集团有限公司 | 一种灵活的分布式电网和通信网联合仿真平台及仿真方法 |
DE102019003851A1 (de) * | 2018-06-01 | 2019-12-05 | The Mathworks, Inc. | Systeme und Verfahren zum automatischen Realisieren von Modellen zu Co-Simulation |
CN110674588A (zh) * | 2019-09-30 | 2020-01-10 | 北京航空航天大学 | 一种基于mbse的弹上电气系统建模仿真方法 |
CN113256976B (zh) * | 2021-05-12 | 2022-08-05 | 中移智行网络科技有限公司 | 一种车路协同系统、模拟仿真方法、车载设备和路侧设备 |
CN113568705B (zh) * | 2021-07-23 | 2024-03-22 | 西安中锐创联科技有限公司 | 一种分布式架构下的代码集成仿真方法 |
CN113746683B (zh) * | 2021-09-15 | 2022-09-06 | 北京航空航天大学 | 跨域环境下的互连、互通和互操作仿真方法 |
CN115238456A (zh) * | 2022-06-14 | 2022-10-25 | 武汉光庭信息技术股份有限公司 | 一种车联网场景仿真方法及系统 |
CN115292774A (zh) * | 2022-08-02 | 2022-11-04 | 苏州登城智能科技有限公司 | 一种多模数据融合的联合仿真控制方法 |
CN115587467A (zh) * | 2022-08-25 | 2023-01-10 | 武汉光庭信息技术股份有限公司 | 一种无控制十字路口行车方案仿真方法及仿真系统 |
CN115344503B (zh) * | 2022-10-18 | 2023-04-07 | 深圳市城市交通规划设计研究中心股份有限公司 | 面向自动驾驶规划控制测试的交通流仿真系统与仿真方法 |
CN115843059A (zh) * | 2022-11-02 | 2023-03-24 | 长沙汽车创新研究院 | 一种v2x硬件在环数字物理融合测试系统 |
-
2023
- 2023-03-28 CN CN202310308792.8A patent/CN116010039B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN116010039A (zh) | 2023-04-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109542457B (zh) | 一种边缘计算网络的分布式应用分发部署的系统及方法 | |
CN116010039B (zh) | 用于智能汽车多实体联合仿真的消息中间件集成方法 | |
CN112688815B (zh) | 一种车载网络仿真系统及方法 | |
CN112115589B (zh) | 基于VR-Force和OPNET的联合仿真系统及方法 | |
CN105577773B (zh) | 基于分布式节点及虚拟总线模型的智能车数据平台架构 | |
CN114500144A (zh) | 通用软件通信总线 | |
CN112838940B (zh) | 一种网络控制器框架和数据处理方法 | |
CN106453465A (zh) | 用于车辆控制器与外部资源之间交互工作的系统和方法 | |
US9237196B2 (en) | Method and apparatus for setting up gateway for AUTOSAR-based vehicle network | |
CN115344503B (zh) | 面向自动驾驶规划控制测试的交通流仿真系统与仿真方法 | |
CN114422010B (zh) | 一种基于网络虚拟化的卫星通信仿真平台的协议测试方法 | |
CN111818156A (zh) | 一种边缘计算装置和共享方法 | |
KR101491296B1 (ko) | 차량의 텔레매틱스 서비스 시스템 및 방법 | |
Frohn et al. | Distributed simulation of cooperatively interacting vehicles | |
CN114063468A (zh) | 一种适用于无线自组网半实物仿真系统的数据交互方法 | |
CN110955412B (zh) | 面向服务的智能座舱系统及其设计方法和设计系统 | |
Wagner et al. | SODA: Service-oriented architecture for runtime adaptive driver assistance systems | |
Bonomi et al. | The role of fog computing in the future of the automobile | |
KR101660028B1 (ko) | Hla-dds간 연결 컴포넌트 생성 방법 및 장치 | |
Hong et al. | Autonomous Driving System Architecture with Integrated ROS2 and Adaptive AUTOSAR | |
CN114205842A (zh) | 设备协作同步方法、系统、装置、终端设备以及存储介质 | |
CN114327556A (zh) | 基于物联网边云协同的应用配置热更新的实现装置及方法 | |
CN115047782B (zh) | 联合仿真系统 | |
CN118646773B (zh) | 一种面向有/无人编队的智能机系统及其计算资源调用方法 | |
CN116828000B (zh) | 基于确定性网络与sdn网络的乘车订单处理系统及方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |