一种控制模型开环仿真验证方法、装置、设备和介质
文献发布时间:2023-06-19 09:58:59
技术领域
本发明涉及汽车仿真技术领域,尤其涉及一种控制模型开环仿真验证方法、装置、设备和介质。
背景技术
随着能源危机和大气污染问题的日益严重,电动汽车能够降低汽车尾气污染和石油资源的优势越来越突出。电动汽车的核心部件包括电机、电池和电控。电控部件作为电动汽车的整车控制部件,需要参与电动汽车在运行过程中的全部动作,因此,电控部件的性能在电动汽车中显得尤为重要。
相关技术中,控制模型搭建工程师一般基于Simulink平台完成电控部件的控制模型的搭建。Simulink是一个模块图环境,用于多域仿真以及基于模型的设计。它支持系统设计、仿真、自动代码生成以及嵌入式系统的连续测试和验证。Simulink提供图形编辑器、可自定义的模块库以及求解器,能够进行动态系统建模和仿真。
但是,相关技术中,控制模型搭建工程师只能通过Simulink中的常数模块、曲线模块等作为控制模型的基本输入,以对控制模型进行简单验证。而相关技术中提供的这种验证方法只能验证控制模型中各个模块在有数据输入的情况下是否能够输出数据,而根据输入数据得到的输出数据是否正确,在相关技术的控制模型中无法验证。也就是说,相关技术无法验证搭建的控制模型中的控制算法的逻辑是否有错,即无法验证控制模型中各个模块的控制算法的合理性。相关技术中,由于在控制模型仿真阶段无法验证控制模型中控制算法的合理性,导致在后期通过整车参数化模型进行闭环联合仿真时,会增加闭环联合仿真中验证控制模型的正确性及控制算法合理性的调试压力和难度。
发明内容
本申请实施例通过提供一种控制模型开环仿真验证方法、装置、设备和介质,解决了现有技术中无法验证控制模型中各个模块的控制算法的合理性的技术问题,实现了验证控制模型中各个模块的控制算法的合理性的技术效果。
第一方面,本申请提供了一种控制模型开环仿真验证方法,方法包括:
根据待搭建控制模型的设计需求,确定构成待搭建控制模型的多个待搭建子模型;
从多个待搭建子模型中选择一个待搭建子模型作为第一目标搭建子模型,并对第一目标搭建子模型完成搭建操作;
向第一目标搭建子模型引入车辆测试输入数据,得到由第一目标搭建子模型根据车辆测试输入数据输出的待验证输出数据;
判断待验证输出数据与车辆测试输出数据之间的差异是否小于第一预设阈值;其中,车辆测试输出数据与车辆测试输入数据对应;
当待验证输出数据与车辆测试输出数据之间的差异小于第一预设阈值时,从多个待搭建子模型中选择一个待搭建子模型作为第二目标搭建子模型,对第二目标搭建子模型完成搭建操作;其中,第一目标搭建子模型与第二目标搭建子模型不相同。
进一步地,方法还包括:
当待验证输出数据与车辆测试输出数据之间的差异不小于第一预设阈值时,重新对第一目标搭建子模型执行搭建操作,以得到第一更新目标搭建子模型;
向第一更新目标搭建子模型引入车辆测试输入数据,得到由第一更新目标搭建子模型根据车辆测试输入数据输出的待验证更新输出数据;
判断待验证更新输出数据与车辆测试输出数据之间的差异是否小于第一预设阈值;
当待验证更新输出数据与车辆测试输出数据之间的差异小于第一预设阈值时,从多个待搭建子模型中选择一个待搭建子模型作为第三目标搭建子模型,对第三目标搭建子模型完成搭建操作;其中,第一目标搭建子模型与第三目标搭建子模型不相同。
进一步地,车辆测试输入数据和车辆测试输出数据是通过如下方法得到的:
接收合格车辆在目标工况路段运行的实际行车数据;
从实际行车数据中选择与第一目标搭建子模型相关的待处理实际行车数据;
对待处理实际行车数据进行有效段提取,获得有效测试数据;
对有效测试数据进行滤波处理,获得车辆测试输入数据和车辆测试输出数据。
进一步地,对有效测试数据进行滤波处理,具体包括:
对有效测试数据进行采样,获得多个采样数据;
按照多个采样数据在有效测试数据中的时间先后顺序进行排序,构成有序数据集;
从有序数据集中选择一个采样数据作为目标采样数据;
判断在有序数据集中目标采样数据之前的采样数据的变化速度是否超过第二预设阈值;
当变化速度超过第二预设阈值,提高目标采样数据的权重,得到目标采样数据的滤波输出值;
当变化速度未超过第二预设阈值时,将在有序数据集中目标采样数据的上一个采样数据的滤波输出值作为目标采样数据的滤波输出值;
当变化速度为0时,将目标采样数据直接作为目标采样数据的滤波输出值。
进一步地,向第一目标搭建子模型引入车辆测试输入数据,具体包括:
将车辆测试输入数据转换为具有预设格式的预设文件;
向第一目标搭建子模型引入预设文件。
第二方面,本申请提供了一种控制模型开环仿真验证装置,装置包括:
第一确定模块,用于根据待搭建控制模型的设计需求,确定构成待搭建控制模型的多个待搭建子模型;
第一选择模块,用于从多个待搭建子模型中选择一个待搭建子模型作为第一目标搭建子模型,并对第一目标搭建子模型完成搭建操作;
第一输入模块,用于向第一目标搭建子模型引入车辆测试输入数据,得到由第一目标搭建子模型根据车辆测试输入数据输出的待验证输出数据;
第一判断模块,用于判断待验证输出数据与车辆测试输出数据之间的差异是否小于第一预设阈值;其中,车辆测试输出数据与车辆测试输入数据对应;
第二选择模块,用于当待验证输出数据与车辆测试输出数据之间的差异小于第一预设阈值时,从多个待搭建子模型中选择一个待搭建子模型作为第二目标搭建子模型,对第二目标搭建子模型完成搭建操作;其中,第一目标搭建子模型与第二目标搭建子模型不相同。
进一步地,装置还包括:
第一搭建模块,用于当待验证输出数据与车辆测试输出数据之间的差异不小于第一预设阈值时,重新对第一目标搭建子模型执行搭建操作,以得到第一更新目标搭建子模型;
第二输入模块,用于向第一更新目标搭建子模型引入车辆测试输入数据,得到由第一更新目标搭建子模型根据车辆测试输入数据输出的待验证更新输出数据;
第二判断模块,用于判断待验证更新输出数据与车辆测试输出数据之间的差异是否小于第一预设阈值;
第三选择模块,用于当待验证更新输出数据与车辆测试输出数据之间的差异小于第一预设阈值时,从多个待搭建子模型中选择一个待搭建子模型作为第三目标搭建子模型,对第三目标搭建子模型完成搭建操作;其中,第一目标搭建子模型与第三目标搭建子模型不相同。
进一步地,第一输入模块包括:
接收子模块,用于接收合格车辆在目标工况路段运行的实际行车数据;
第一选择子模块,用于从实际行车数据中选择与第一目标搭建子模型相关的待处理实际行车数据;
有效段提取子模块,用于对待处理实际行车数据进行有效段提取,获得有效测试数据;
滤波处理子模块,用于对有效测试数据进行滤波处理,获得车辆测试输入数据和车辆测试输出数据。
第三方面,本申请提供了一种电子设备,包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,处理器被配置为执行以实现一种控制模型开环仿真验证方法。
第四方面,本申请提供了一种非临时性计算机可读存储介质,当存储介质中的指令由电子设备的处理器执行时,使得电子设备能够执行一种控制模型开环仿真验证方法。
本申请实施例中提供的一个或多个技术方案,至少具有如下技术效果或优点:
1、本申请在搭建控制模型的过程中,采用边搭建边验证的方式保证控制模型中各个模块的逻辑合理性,以减少后期的闭环联合仿真的控制模型的正确性及控制算法合理性的调试压力和难度,可以缩短验证周期。
2、本申请搭建的控制模型是基于真实的车辆测试数据搭建并验证的,可以保证逻辑合理性的准确度,因此,可以重复应用于所有车型的整车控制策略开发,无需再根据新车的设计需求而重新搭建控制模型,可以缩短验证周期和研发周期。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请提供的一种控制模型开环仿真验证方法的流程图;
图2为本申请提供的一种待搭建控制模型的结构示意图;
图3为本申请提供的一种控制模型开环仿真验证装置的结构示意图;
图4为本申请提供的一种电子设备结构示意图。
具体实施方式
本申请实施例通过提供一种控制模型开环仿真验证方法,解决了现有技术中无法验证控制模型中各个模块的控制算法的合理性的技术问题。
本申请实施例的技术方案为解决上述技术问题,总体思路如下:
一种控制模型开环仿真验证方法,方法包括:根据待搭建控制模型的设计需求,确定构成待搭建控制模型的多个待搭建子模型;从多个待搭建子模型中选择一个待搭建子模型作为第一目标搭建子模型,并对第一目标搭建子模型完成搭建操作;向第一目标搭建子模型引入车辆测试输入数据,得到由第一目标搭建子模型根据车辆测试输入数据输出的待验证输出数据;判断待验证输出数据与车辆测试输出数据之间的差异是否小于第一预设阈值;其中,车辆测试输出数据与车辆测试输入数据对应;当待验证输出数据与车辆测试输出数据之间的差异小于第一预设阈值时,从多个待搭建子模型中选择一个待搭建子模型作为第二目标搭建子模型,对第二目标搭建子模型完成搭建操作;其中,第一目标搭建子模型与第二目标搭建子模型不相同。
本申请在搭建控制模型的过程中,采用边搭建边验证的方式保证控制模型中各个模块的逻辑合理性,以减少后期的闭环联合仿真的控制模型的正确性及控制算法合理性的调试压力和难度,可以缩短验证周期。
为了更好的理解上述技术方案,下面将结合说明书附图以及具体的实施方式对上述技术方案进行详细的说明。
首先说明,本文中出现的术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。
本申请提供了如图1所示的一种控制模型开环仿真验证方法,方法包括:
步骤S11,根据待搭建控制模型的设计需求,确定构成待搭建控制模型的多个待搭建子模型。
步骤S11涉及的待搭建控制模型主要指根据电动汽车的整车控制器的设计需求进行仿真所要得到的控制模型。本申请的应用平台主要基于Simulink,当应用平台是Simulink时,待搭建控制模型即为待搭建Simulink控制模型。
待搭建控制模型的设计需求是基于电动车整车的控制逻辑确定的,电动车整车的控制逻辑可以包括整车上下电、驾驶意图解析、扭矩矢量控制、驱动防滑、制动能量回收,以及ABS(防抱死制动系统)、ESP(车身电子稳定系统)、EHB(电子液压制动系统)、EPB(电子驻车制动系统)等部件或控制模块的协调工作。
根据电动车整车的控制逻辑,可以将待搭建控制模型分解为多个待搭建子模型,而待搭建子模型可以是构成待搭建控制模型的最小功能单元,最小功能单元是指能够执行电动车某一控制信号的最末端执行单元所对应的虚拟模块。例如,踏板产生一个刹车信号,刹车信号用于改变电动车的轮毂电机的转速,那么这个刹车信号最末端执行单元是轮毂电机,则需要根据轮毂电机的各项参数,为轮毂电机搭建一个模块,该模块则是待搭建控制模型的最小功能单元。
待搭建子模型还可以是由多个最小功能单元集成的小规模功能单元,也可以是由多个小规模功能单元集成的中等规模功能单元。
因此,在将待搭建控制模型分解为多个待搭建子模型时,可以根据具体情况确定待搭建子模型的规模。当对待搭建控制模型的精确度要求较高时,可以将待搭建控制模型分解为多个规模较小的待搭建子模型;当对待搭建控制模型的精确度要求较低时,可以将待搭建控制模型分解为多个规模较大的待搭建子模型。
为了更好地对本申请进行说明,结合图2提供一个实例:
如图2所示,是根据电动汽车的设计需求得到的待搭建控制模型的结构示意图。“驾驶意图识别”接收油门踏板、制动踏板以及档位信息,进而向“RBS制动能回收策略”发送期望制动扭矩,同时还向“RBS驱动力矢量分配策略”发送期望驱动扭矩。“RBS制动能回收策略”根据期望制动扭矩输出4个轮子的实际制动力矩需求,并将其发送至“CA控制分配器”,“CA控制分配器”根据4个轮子的制动力矩需求以及4个轮子的差扭补偿力矩,进行初步的扭矩分配。“RBS驱动力矢量分配策略”以驾驶员驾驶意图解析需求、车辆稳态区域为输入,就可以计算出车辆行驶中的差扭补偿力矩。
“车速估计器”进行控制算法时所需的实时车速估计;“摩擦系数估计器”进行路面的实时摩擦系数估计;“在线轮胎模型”与“摩擦系数估计器”共同完成对路面摩擦系数的精准估计;“车辆稳定域识别”通过“车速估计器”、“摩擦系数估计器”以及“在线轮胎模型”,就能对车辆行驶的稳态区域进行辨识。“协调控制策略”考虑外部产品RBS、ABS、DYC、ESC等,进而进行相应的协调控制机制。
图2中的各个参数含义如下:
α
T
T
T
K
图2中的“驾驶意图识别”、“RBS制动能回收策略”、“CA控制分配器”、“车速估计器”、“摩擦系数估计器”、“车辆稳定域识别”、“在线轮胎模型”、“协调控制策略”等都可以作为待搭建控制模型的待搭建子模型。进一步地,当对待搭建控制模型的精确度要求较高时,可以进一步对图2中各个待搭建子模型进行细分,例如,将“驾驶意图识别”分为“驱动”、“制动”等规模更小的待搭建子模型。
步骤S12,从多个待搭建子模型中选择一个待搭建子模型作为第一目标搭建子模型,并对第一目标搭建子模型完成搭建操作。
将待搭建控制模型分解为多个待搭建子模型之后,可以根据多个待搭建子模型之间的关系,对多个待搭建子模型的级别划分。例如,现有五个待搭建子模型,分别是模块A、模块B、模块C、模块D和模块E,其中,模块A的输出信号为模块B的输入信号;模块B的输出信号为模块C的输入信号;模块D和模块E的输入信号和输出信号均与模块A、模块B、模块C无关。
因此,可以将模块A、模块B、模块C进行分级,将模块A定位第一级(第一级是需要最先进行模型搭建的模块),将模块B定位第二级(第二级是需要第一级中与其相关的模块搭建之后需要搭建的模块),将模块C定位第三级(第三级是需要第二级中与其相关的模块搭建之后需要搭建的模块)。由于模块D和模块E是相对独立的,因此,可以定位任意级别。
回到步骤S12,从多个待搭建子模型中选择一个待搭建子模型作为第一目标搭建子模型,第一目标搭建子模型可以是按照上述方式对待搭建子模型进行分级后选择的;也可以是随意选择的。在确定第一目标搭建子模型之后,在Simulink中完成第一目标搭建子模型的搭建。
为了更好地对本申请进行说明,结合图2提供一个实例:
依据图2中信号的流动方向,可以确定“驾驶意图识别”、“RBS制动能回收策略”、“CA控制分配器”之间的关系,进而确定“驾驶意图识别”、“RBS制动能回收策略”、“CA控制分配器”之间的等级,可以将“驾驶意图识别”作为第一目标搭建子模型,并完成搭建操作。在完成第一目标搭建子模型的模型搭建,以及第一目标搭建子模型的控制逻辑正确之后,可以将“RBS制动能回收策略”作为第二目标搭建子模型。
步骤S13,向第一目标搭建子模型引入车辆测试输入数据,得到由第一目标搭建子模型根据车辆测试输入数据输出的待验证输出数据。
在完成对第一目标搭建子模型之后,便对第一目标搭建子模型的逻辑合理性进行判断。
本申请通过向第一目标搭建子模型引入车辆测试输入数据,使得第一目标搭建子模型根据车辆测试输入数据输出对应的待验证输出数据。
向第一目标搭建子模型引入车辆测试输入数据,具体包括:
将车辆测试输入数据转换为具有预设格式的预设文件;预设格式是指搭建第一目标搭建子模型的平台所适用的格式。例如,当搭建第一目标搭建子模型的平台是Simulink时,预设格式的预设文件是指.m文件。
向第一目标搭建子模型引入预设文件。在将车辆测试输入数据转换为预设文件之后,在需要验证第一目标搭建子模型的逻辑合理性时,将预设文件导入第一目标搭建子模型中。
例如,将车辆测试输入数据编写为MATLAB的.m文件,车辆测试输入数据以不同的变量形式,读入第一目标搭建子模型的工作空间(workspace)中,再将变量调取到第一目标搭建子模型中,以实现对第一目标搭建子模型的数据输入。
更具体地,可以包括以下步骤:
步骤1,建立.m文件;
将车辆测试输入数据变量化,并通过.m文件导入Matlab的工作空间。
步骤2,定义文件路径及找开方式:
设置车辆测试输入数据的.m文件的路径及打开方式。
步骤3,变量定义;
根据车辆测试输入数据,定义不同的变量;
步骤4,变量赋值:
将车辆测试输入数据中对应的具体数值赋值给不同的变量;
步骤5,变量导入:
通过.m文件将车辆测试输入数据导入到Matlab的工作空间;
步骤6,控制模型引用:
通过workspace from模块将工作空间中的变量引入第一目标搭建模型中作为第一目标搭建模型的输入数据。
为了更好地对本申请进行说明,结合图2提供一个实例:
以图2中的“驾驶意图识别”作为第一目标搭建子模型,向“驾驶意图识别”中引入车辆测试输入数据(例如油门踏板开度、制动踏板开度以及档位中的一种数据或多种数据),得到由“驾驶意图识别”输出的待验证输出数据(例如,待验证期望制动扭矩和待验证期望驱动扭矩中的一种或多种)。
步骤S14,判断待验证输出数据与车辆测试输出数据之间的差异是否小于第一预设阈值;其中,车辆测试输出数据与车辆测试输入数据对应。
车辆测试输入数据和车辆测试输出数据是经过合格车辆试验之后得到的,也就是说,向第一目标搭建子模型引入车辆测试输入数据,如果第一目标搭建子模型输出的数据与车辆测试输出数据有很大的差异,则说明第一目标搭建子模型是有问题的,反之则可以说明第一目标搭建子模型是没有问题的。
为了更好地对本申请进行说明,结合图2提供一个实例:
判断待验证期望制动扭矩和待验证期望驱动扭矩,与对应的期望制动扭矩预设阈值和期望驱动扭矩预设阈值之间的关系,确定待验证期望制动扭矩是否小于对应的期望制动扭矩预设阈值,以及确定待验证期望驱动扭矩是否小于对应的期望驱动扭矩预设阈值。
步骤S14中涉及的车辆测试输入数据和车辆测试输出数据是通过如下方法得到的:
步骤S141,接收合格车辆在目标工况路段运行的实际行车数据。
当合格车辆运行在目标工况路段时,可以得到第一目标搭建子模型可以进行处理的测试数据。即目标工况路段是指能够得到与第一目标搭建子模型有关的测试数据的路段。
将车辆在目标工况路段运行的实际行车数据全部采集。一方面可以获得第一目标搭建子模型所需的测试数据,另一方面还可以同时获得其他待搭建子模型所需的测试数据,可以有效减少通过合格车辆进行试验的次数和时间。
其中,目标工况可以是角脉冲、双移线、蛇形、稳态回转、U_turn、J_turn、放大梯形等。
步骤S142,从实际行车数据中选择与第一目标搭建子模型相关的待处理实际行车数据。
步骤S141中得到的实际行车数据是车辆在目标工况路段运行时的全部原始数据,其中包含了与第一目标搭建子模型相关的待处理实际行车数据。在验证第一目标搭建子模型的逻辑合理性时,步骤S142只获取与第一目标搭建子模型相关的数据。
步骤S143,对待处理实际行车数据进行有效段提取,获得有效测试数据。
车辆在目标工况路段实际行驶时,由于需要保证车辆在目标工况路段行驶时的数据完整性,步骤S142中获取的待处理实际行车数据包括了车辆在进入目标工况前几秒的数据,还包括了车辆在离开目标工况后几秒的数据。而对于验证第一目标搭建子模型的逻辑合理性时,需要将车辆在进入目标工况前几秒以及车辆在离开目标工况后几秒的数据剔除,只有处于目标工况内的数据才是有效测试数据。
步骤S144,对有效测试数据进行滤波处理,获得车辆测试输入数据和车辆测试输出数据。
有效测试数据中包括了车辆测试输入数据和车辆测试输出数据,车辆测试输入数据与车辆测试输出数据是相互对应的。
有效测试数据是直接从车辆上采集的数据,由于采集设备等周围环境的影响,有效测试数据中往往会存在毛刺,毛刺的存在会降低验证第一目标搭建子模型的逻辑合理性的准确性,因此,需要对有效测试数据进行滤波处理。
本申请中对有效测试数据采用的是动态滤波,对有效测试数据进行滤波处理,具体包括以下几个步骤,为了更好的说明本申请所采用的滤波原理,以下步骤将结合公式(1)进行说明。
y(n)=a*x(n)+(1-a)*y(n-1) (1)
其中,a为滤波系数;x(n)为目标采样数据;y(n-1)为根据目标采样数据之前的采样数据得到的滤波输出值;y(n)为目标采样数据对应的滤波输出值。
步骤S1441,对有效测试数据进行采样,获得多个采样数据。
采样数据的选取可以是随机的,也可以是按照相同步长确定的。采样数据的个数可以根据具体情况进行设定。当对有效测试数据的质量要求较高时,采集数据的个数可以相对较多;当对有效测试数据的质量要求不高时,采样数据的个数可以相对较少。
步骤S1442,按照多个采样数据在有效测试数据中的时间先后顺序进行排序,构成有序数据集。
将多个采样数据按照在有效测试数据中的时间先后顺序进行排序,以方便后续对有效测试数据的处理。
步骤S1443,从有序数据集中选择一个采样数据作为目标采样数据。
按照有序数据集中采样数据的先后顺序,依次将有序数据集中的各个采样数据分别作为目标采样数据,分别执行步骤S1444-步骤S1447,以完成有效测试数据的滤波操作。
步骤S1444,判断在有序数据集中目标采样数据之前的采样数据的变化速度是否超过第二预设阈值。
针对步骤S1443中确定的目标采样数据x(n),判断目标采样数据x(n)之前的采样数据的变化速度是否超过第二预设阈值。
步骤S1445,当变化速度超过第二预设阈值,提高目标采样数据的权重,得到目标采样数据的滤波输出值。
当变化速度超过第二预设阈值时,意味着目标采样数据之前的采样数据的稳定性不高,受到外界的影响较大,需要提高滤波的灵敏度,因此需要提高目标采样数据的权重,即提高滤波系数a,当a越高,(1-a)会越小,结合公式(1)可知,提高了目标采样数据的权重,降低了目标采样数据之前的采样数据对应的滤波输出值的权重。
步骤S1446,当变化速度未超过第二预设阈值时,将在有序数据集中目标采样数据的上一个采样数据的滤波输出值作为目标采样数据的滤波输出值。
当变化速度未超过第二预设阈值时,意味着目标采样数据之前的采样数据已经趋于稳定,受到外界的影响较小,可以目标采样数据的权重降为0,即将滤波系数a置为0,进而可以忽略目标采样数据,直接以目标采样数据之前的采样数据确定的滤波输出值为目标采样数据的滤波输出值即可。
步骤S1447,当变化速度为0时,将目标采样数据直接作为目标采样数据的滤波输出值。
当变化速度为0,意味着目标采样数据之前的采样数据已经稳定了,可以说明目标采样数据之后的采样数据也是稳定的,因此,目标采样数据本身几乎没有受到外界影响,可以将目标采样数据本身直接作为目标采样数据的滤波输出值。
本申请通过动态滤波,可以有效优化从车辆采集的有效测试数据,在验证第一目标搭建子模型的逻辑合理性时,可以有效提高准确度和验证精度。
回到步骤S14,当待验证输出数据与车辆测试输出数据之间的差异小于第一预设阈值,执行步骤S15;当待验证输出数据与车辆测试输出数据之间的差异不小于第一预设阈值,执行步骤S16。
步骤S15,当待验证输出数据与车辆测试输出数据之间的差异小于第一预设阈值时,从多个待搭建子模型中选择一个待搭建子模型作为第二目标搭建子模型,对第二目标搭建子模型完成搭建操作;其中,第一目标搭建子模型与第二目标搭建子模型不相同。
当待验证输出数据与车辆测试输出数据之间的差异小于第一预设阈值时,说明搭建的第一目标搭建子模型能够对车辆测试输入数据进行正确处理,以得到与车辆测试输出数据差别不大的待验证输出数据,即搭建的第一目标搭建子模型的逻辑是正确的,具备逻辑合理性。
在验证第一目标搭建子模型具备逻辑合理性之后,再从除第一目标搭建子模型以外的多个待搭建子模型中选择一个待搭建子模型作为第二目标搭建子模型。
为了更好地对本申请进行说明,结合图2提供一个实例:当待验证期望制动扭矩小于对应的期望制动扭矩预设阈值,以及确定待验证期望驱动扭矩小于对应的期望驱动扭矩预设阈值时,则认为“驾驶意图识别”逻辑是正确的,具备逻辑合理性。反之则认为“驾驶意图识别”逻辑是错误的,不具备逻辑合理性,则需要重新构建“驾驶意图识别”,或者对“驾驶意图识别”进行调整,直至向“驾驶意图识别”输入的待验证输出数据,与输出的车辆测试输出数据之间的差异小于第一预设阈值为止。
针对搭建完成的第二目标搭建子模型,执行以下步骤:
步骤S151,向第二目标搭建子模型引入第二车辆测试输入数据,得到由第二目标搭建子模型根据第二车辆测试输入数据输出的第二待验证输出数据;
步骤S151与步骤S13类似,此处不再赘述。其中,不同的目标搭建子模型对应不同的车辆测试输入数据。
步骤S152,判断第二待验证输出数据与第二车辆测试输出数据之间的差异是否小于第三预设阈值;其中,第二车辆测试输出数据与第二车辆测试输入数据对应;
步骤S152与步骤S14类似,此处不再赘述。
步骤S153,当第二待验证输出数据与第二车辆测试输出数据之间的差异小于第三预设阈值时,从多个待搭建子模型中选择一个待搭建子模型作为第四目标搭建子模型,对第四目标搭建子模型完成搭建操作;其中,第二目标搭建子模型与第四目标搭建子模型不相同。
步骤S153与步骤S15类似,此处不再赘述。
步骤S16,当待验证输出数据与车辆测试输出数据之间的差异不小于第一预设阈值时,重新对第一目标搭建子模型执行搭建操作,以得到第一更新目标搭建子模型。
当待验证输出数据与车辆测试输出数据之间的差异不小于第一预设阈值时,说明搭建的第一目标搭建子模型无法正确处理车辆测试输入数据,即第一目标搭建子模型的逻辑存在问题,需要重新搭建,以得到新的第一目标搭建子模型,即第一更新目标搭建子模型。
步骤S17,向第一更新目标搭建子模型引入车辆测试输入数据,得到由第一更新目标搭建子模型根据车辆测试输入数据输出的待验证更新输出数据。
步骤S17与步骤S13类似,此处不再赘述。
步骤S18,判断待验证更新输出数据与车辆测试输出数据之间的差异是否小于第一预设阈值;
步骤S18与步骤S14类似,此处不再赘述。
步骤S19,当待验证更新输出数据与车辆测试输出数据之间的差异小于第一预设阈值时,从多个待搭建子模型中选择一个待搭建子模型作为第三目标搭建子模型,对第三目标搭建子模型完成搭建操作;其中,第一目标搭建子模型与第三目标搭建子模型不相同。
步骤S19与步骤S15类似,此处不再赘述。
综上,本申请在对待搭建控制模型进行搭建的过程中,每对一个待搭建子模型完成搭建,便对其进行逻辑合理性验证,以判断完成搭建的待搭建子模型是否存在错误。当完成搭建的待搭建子模型存在错误时,则对其执行重新搭建的动作,以保证每个待搭建子模型在完成搭建之后的逻辑合理性,进而保证控制模型的逻辑合理性。
也就是说,本申请在搭建控制模型的过程中,采用边搭建边验证的方式保证控制模型中各个模块的逻辑合理性,以减少后期的闭环联合仿真的控制模型的正确性及控制算法合理性的调试压力和难度,可以缩短验证周期。另外,本申请搭建的控制模型是基于真实的车辆测试数据搭建并验证的,可以保证逻辑合理性的准确度,因此,可以重复应用于所有车型的整车控制策略开发,无需再根据新车的设计需求而重新搭建控制模型,可以缩短验证周期和研发周期。
基于同一发明构思,本申请提供了如图3所示的一种控制模型开环仿真验证装置,装置包括:
第一确定模块31,用于根据待搭建控制模型的设计需求,确定构成待搭建控制模型的多个待搭建子模型;
第一选择模块32,用于从多个待搭建子模型中选择一个待搭建子模型作为第一目标搭建子模型,并对第一目标搭建子模型完成搭建操作;
第一输入模块33,用于向第一目标搭建子模型引入车辆测试输入数据,得到由第一目标搭建子模型根据车辆测试输入数据输出的待验证输出数据;
第一判断模块34,用于判断待验证输出数据与车辆测试输出数据之间的差异是否小于第一预设阈值;其中,车辆测试输出数据与车辆测试输入数据对应;
第二选择模块35,用于当待验证输出数据与车辆测试输出数据之间的差异小于第一预设阈值时,从多个待搭建子模型中选择一个待搭建子模型作为第二目标搭建子模型,对第二目标搭建子模型完成搭建操作;其中,第一目标搭建子模型与第二目标搭建子模型不相同。
进一步地,装置还包括:
第一搭建模块,用于当待验证输出数据与车辆测试输出数据之间的差异不小于第一预设阈值时,重新对第一目标搭建子模型执行搭建操作,以得到第一更新目标搭建子模型;
第二输入模块,用于向第一更新目标搭建子模型引入车辆测试输入数据,得到由第一更新目标搭建子模型根据车辆测试输入数据输出的待验证更新输出数据;
第二判断模块,用于判断待验证更新输出数据与车辆测试输出数据之间的差异是否小于第一预设阈值;
第三选择模块,用于当待验证更新输出数据与车辆测试输出数据之间的差异小于第一预设阈值时,从多个待搭建子模型中选择一个待搭建子模型作为第三目标搭建子模型,对第三目标搭建子模型完成搭建操作;其中,第一目标搭建子模型与第三目标搭建子模型不相同。
进一步地,第一输入模块33包括:
接收子模块,用于接收合格车辆在目标工况路段运行的实际行车数据;
第一选择子模块,用于从实际行车数据中选择与第一目标搭建子模型相关的待处理实际行车数据;
有效段提取子模块,用于对待处理实际行车数据进行有效段提取,获得有效测试数据;
滤波处理子模块,用于对有效测试数据进行滤波处理,获得车辆测试输入数据和车辆测试输出数据。
进一步地,滤波处理子模块包括:
采样子模块,用于对有效测试数据进行采样,获得多个采样数据;
排序子模块,用于按照多个采样数据在有效测试数据中的时间先后顺序进行排序,构成有序数据集;
第二选择子模块,用于从有序数据集中选择一个采样数据作为目标采样数据;
判断子模块,用于判断在有序数据集中目标采样数据之前的采样数据的变化速度是否超过第二预设阈值;
第一输出子模块,用于当变化速度超过第二预设阈值,提高目标采样数据的权重,得到目标采样数据的滤波输出值;
第二输出子模块,用于当变化速度未超过第二预设阈值时,将在有序数据集中目标采样数据的上一个采样数据的滤波输出值作为目标采样数据的滤波输出值;
第三输出子模块,用于当变化速度为0时,将目标采样数据直接作为目标采样数据的滤波输出值。
进一步地,第一输入模块33还包括:
转换子模块,用于将车辆测试输入数据转换为具有预设格式的预设文件;
引入子模块,用于向第一目标搭建子模型引入预设文件。
基于同一发明构思,本申请提供了如图4所示的一种电子设备,包括:
处理器41;
用于存储处理器41可执行指令的存储器42;
其中,处理器41被配置为执行以实现一种控制模型开环仿真验证方法。
基于同一发明构思,本申请提供了一种非临时性计算机可读存储介质,当存储介质中的指令由电子设备的处理器41执行时,使得电子设备能够执行实现一种控制模型开环仿真验证方法。
由于本实施例所介绍的电子设备为实施本申请实施例中信息处理的方法所采用的电子设备,故而基于本申请实施例中所介绍的信息处理的方法,本领域所属技术人员能够了解本实施例的电子设备的具体实施方式以及其各种变化形式,所以在此对于该电子设备如何实现本申请实施例中的方法不再详细介绍。只要本领域所属技术人员实施本申请实施例中信息处理的方法所采用的电子设备,都属于本申请所欲保护的范围。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
- 一种控制模型开环仿真验证方法、装置、设备和介质
- 电力通信网络路径控制仿真验证方法、装置、设备和介质