CN115145246A - 控制器的测试方法、装置、车辆、存储介质及芯片 - Google Patents
控制器的测试方法、装置、车辆、存储介质及芯片 Download PDFInfo
- Publication number
- CN115145246A CN115145246A CN202210743755.5A CN202210743755A CN115145246A CN 115145246 A CN115145246 A CN 115145246A CN 202210743755 A CN202210743755 A CN 202210743755A CN 115145246 A CN115145246 A CN 115145246A
- Authority
- CN
- China
- Prior art keywords
- data
- controller
- vehicle
- input data
- target data
- 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.)
- Granted
Links
- 238000012360 testing method Methods 0.000 title claims abstract description 109
- 238000000034 method Methods 0.000 claims abstract description 32
- 238000004806 packaging method and process Methods 0.000 claims abstract description 17
- 238000004891 communication Methods 0.000 claims description 40
- 230000006870 function Effects 0.000 claims description 25
- 230000002159 abnormal effect Effects 0.000 claims description 21
- 230000005540 biological transmission Effects 0.000 claims description 21
- 230000015654 memory Effects 0.000 claims description 17
- 238000013507 mapping Methods 0.000 claims description 9
- 230000001960 triggered effect Effects 0.000 claims description 8
- 238000010998 test method Methods 0.000 claims description 7
- 238000004590 computer program Methods 0.000 claims description 5
- 230000008859 change Effects 0.000 description 15
- 230000008569 process Effects 0.000 description 9
- 230000005856 abnormality Effects 0.000 description 7
- 238000010586 diagram Methods 0.000 description 7
- 238000002347 injection Methods 0.000 description 7
- 239000007924 injection Substances 0.000 description 7
- 238000012545 processing Methods 0.000 description 7
- 230000006399 behavior Effects 0.000 description 5
- 230000008447 perception Effects 0.000 description 5
- 238000004088 simulation Methods 0.000 description 5
- 230000001133 acceleration Effects 0.000 description 4
- 238000004422 calculation algorithm Methods 0.000 description 4
- 238000005259 measurement Methods 0.000 description 4
- 238000004458 analytical method Methods 0.000 description 3
- 230000010267 cellular communication Effects 0.000 description 3
- 239000000446 fuel Substances 0.000 description 3
- 230000001360 synchronised effect Effects 0.000 description 3
- LFQSCWFLJHTTHZ-UHFFFAOYSA-N Ethanol Chemical compound CCO LFQSCWFLJHTTHZ-UHFFFAOYSA-N 0.000 description 2
- ATUOYWHBWRKTHZ-UHFFFAOYSA-N Propane Chemical compound CCC ATUOYWHBWRKTHZ-UHFFFAOYSA-N 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 2
- 238000002485 combustion reaction Methods 0.000 description 2
- 230000006835 compression Effects 0.000 description 2
- 238000007906 compression Methods 0.000 description 2
- 230000007613 environmental effect Effects 0.000 description 2
- 230000002829 reductive effect Effects 0.000 description 2
- 238000005096 rolling process Methods 0.000 description 2
- SAZUGELZHZOXHB-UHFFFAOYSA-N acecarbromal Chemical compound CCC(Br)(CC)C(=O)NC(=O)NC(C)=O SAZUGELZHZOXHB-UHFFFAOYSA-N 0.000 description 1
- 230000006978 adaptation Effects 0.000 description 1
- 238000013475 authorization Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000011217 control strategy Methods 0.000 description 1
- 238000013480 data collection Methods 0.000 description 1
- 238000007418 data mining Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000005538 encapsulation Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000000670 limiting effect Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000036961 partial effect Effects 0.000 description 1
- 239000003208 petroleum Substances 0.000 description 1
- 239000001294 propane Substances 0.000 description 1
- 230000004043 responsiveness Effects 0.000 description 1
- 230000000979 retarding effect Effects 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B23/00—Testing or monitoring of control systems or parts thereof
- G05B23/02—Electric testing or monitoring
- G05B23/0205—Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults
- G05B23/0208—Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults characterized by the configuration of the monitoring system
- G05B23/0213—Modular or universal configuration of the monitoring system, e.g. monitoring system having modules that may be combined to build monitoring program; monitoring system that can be applied to legacy systems; adaptable monitoring system; using different communication protocols
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/20—Pc systems
- G05B2219/24—Pc safety
- G05B2219/24065—Real time diagnostics
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Automation & Control Theory (AREA)
- Traffic Control Systems (AREA)
Abstract
本公开涉及一种控制器的测试方法、装置、车辆、存储介质及芯片,涉及自动驾驶领域。该方法包括:获取对第一控制器进行测试的第一输入数据;从该第一输入数据中确定目标数据,该目标数据为该第一输入数据中能够对第一控制器与第二控制器进行测试的数据,该第二控制器为与该第一车辆类型不同的第二车辆中的控制器;对该目标数据以该第二车辆所支持的格式进行封装,得到第二输入数据;将该第二输入数据传输至该第二控制器,以对该第二控制器进行测试。使用本公开提出的控制器的测试方法,可以采用一种测试数据来对不同类型的车辆中的控制器进行测试。
Description
技术领域
本公开涉及自动驾驶技术领域,尤其涉及一种控制器的测试方法、装置、车辆、存储介质及芯片。
背景技术
车辆上具有自动驾驶域控制器,自动驾驶域控制器承担了车辆自动驾驶所需要的数据处理运算力,实现了车辆的自动化驾驶。
目前,为了保障车辆能够在道路上安全驾驶,需要对车辆的自动驾驶域控制器进行测试,以确定自动驾驶域控制器在面对不同的驾驶场景下,控制车辆所展现的驾驶工况。
然而,对自动驾驶域控制器进行测试的输入数据,只能对同种类型的车辆的自动驾驶域控制器进行测试,对一种类型的车辆的自动驾驶域控制器进行测试的输入数据,无法对另外一种类型的车辆的自动驾驶域控制器进行测试。
发明内容
为克服相关技术中存在的问题,本公开提供一种控制器的测试方法、装置、车辆、存储介质及芯片。
根据本公开实施例的第一方面,提供一种控制器的测试方法,所述方法包括:
获取对第一控制器进行测试的第一输入数据,所述第一输入数据用于所述第一控制器依据所述第一输入数据对第一车辆进行控制;
从所述第一输入数据中确定目标数据,所述目标数据为所述第一输入数据中能够对第一控制器与第二控制器进行测试的数据,所述第二控制器为与所述第一车辆类型不同的第二车辆中的控制器;
对所述目标数据以所述第二车辆所支持的格式进行封装,得到第二输入数据;
将所述第二输入数据传输至所述第二控制器,所述第二输入数据用于所述第二控制器依据所述第二输入数据对所述第二车辆进行控制,以对所述第二控制器进行测试。
可选地,获取对第一控制器进行测试的第一输入数据,包括:
采集对所述第一控制器进行测试的多个输入数据;
在检测到以下至少一种车况存在的情况下,从所述多个输入数据中确定所述第一输入数据:
所述第一车辆的智能驾驶功能被触发、所述第一控制器依据所述输入数据对所述第一车辆进行控制后所输出的输出数据异常以及所述第一车辆的安全行驶参数满足预设条件。
可选地,从所述第一输入数据中确定目标数据,包括:
根据所述第一输入数据中各个数据的物理信号名,从所述第一输入数据中确定所述目标数据。
可选地,对所述目标数据以所述第二车辆所支持的格式进行封装,得到第二输入数据,包括:
根据所述目标数据在所述第一控制器中的物理信号名,与目标数据在所述第二控制器中物理信号名之间的映射关系,得到与所述目标数据对应的数据;
对所述目标数据对应的数据按照所述第二车辆所支持的通讯协议进行封装,得到所述第二输入数据。
可选地,对所述目标数据以所述第二车辆所支持的格式进行封装,得到第二输入数据,包括:
生成与所述目标数据相关的相关数据,所述相关数据为所述第二车辆所需的数据或传输所述目标数据所需的数据;
对所述目标数据与所述相关数据,以所述第二车辆所支持的格式进行封装,得到所述第二输入数据。
可选地,将所述第二输入数据传输至所述第二控制器,包括:
在所述第二输入数据为图像数据的情况下,将所述图像数据以第一传输模块传输至所述第二控制器;
在所述第二输入数据为非图像数据的情况下,将所述非图像数据以第二传输模块传输至所述第二控制器;
所述第一传输模块与所述第二传输模块不同。
可选地,将所述第二输入数据传输至所述第二控制器之后,所述方法包括:
确定所述第二控制器依据所述第二输入数据对所述第二车辆进行控制后,所述第二车辆所产生的第二输出数据;
在所述第二输出数据与真值数据之间的差异值达到第一预设差异值以上,或在所述第二输出数据与第一输出数据之间的差异值达到第二预设差异值以上的情况下,确定所述第二控制器异常;
所述第一输出数据为所述第一控制器依据所述第一输入数据对所述第一车辆进行控制后,所述第一车辆所产生的数据。
根据本公开实施例的第二方面,提供一种控制器的测试装置,所述装置包括:
获取模块,被配置为获取对第一控制器进行测试的第一输入数据,所述第一输入数据用于所述第一控制器依据所述第一输入数据对第一车辆进行控制;
抽象模块,被配置为从所述第一输入数据中确定目标数据,所述目标数据为所述第一输入数据中能够对第一控制器与第二控制器进行测试的数据,所述第二控制器为与所述第一车辆类型不同的第二车辆中的控制器;
封装模块,被配置为对所述目标数据以所述第二车辆所支持的格式进行封装,得到第二输入数据;
测试模块,被配置为将所述第二输入数据传输至所述第二控制器,所述第二输入数据用于所述第二控制器依据所述第二输入数据对所述第二车辆进行控制,以对所述第二控制器进行测试。
根据本公开实施例的第三方面,提供一种车辆,包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器被配置为:
执行所述可执行指令以实现本公开第一方面所提供的控制器的测试方法的步骤。
根据本公开实施例的第四方面,提供一种计算机可读存储介质,其上存储有计算机程序指令,该程序指令被处理器执行时实现本公开第一方面所提供的控制器的测试方法的步骤。
根据本公开实施例的第五方面,提供一种芯片,包括处理器和接口;所述处理器用于读取指令以执行本公开第一方面所提供的控制器的测试方法的步骤。
本公开的实施例提供的技术方案可以包括以下有益效果:
通过本公开提出的控制器的测试方法,可以获取对第一控制器进行测试的第一输入数据,再从第一输入数据中剥离出能够同时对第一控制器与第二控制器进行测试的目标数据;再将目标数据封装为第二控制器所支持的第二输入数据,将第二输入数据输入至第二控制器中,来测试第二控制器根据第二输入数据对第二车辆进行控制后,第二车辆所反映的驾驶工况。
可见,对第一控制器中实际起到测试作用的目标数据从第一输入数据中进行剥离,而不受到第一控制器所支持的格式的影响;再将目标数据封装为第二控制器所支持的第二输入数据,使得目标数据与第二控制器所支持的格式适配,从而将一种类型的自动驾驶域控制器中的目标数据,同步至另外一种类型的自动驾驶域控制器中,实现了利用一种目标数据对两种不同类型的车辆的控制器进行测试。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。
图1是根据一示例性实施例示出的控制器的测试方法的步骤流程图。
图2是根据一示例性实施例示出的方向盘的转向数据的示意图。
图3是根据一示例性实施例示出的将目标数据与相关数据传输至第二控制器中的示意图。
图4是根据一示例性实施例示出的控制器的测试装置的框图。
图5是根据一示例性实施例示出的一种车辆的功能框图示意图。
图6是根据一示例性实施例示出的一种装置的框图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。
需要说明的是,本申请中所有获取信号、信息或数据的动作都是在遵照所在地国家相应的数据保护法规政策的前提下,并获得由相应装置所有者给予授权的情况下进行的。
请参阅图1示出的控制器的测试方法,该方法包括以下步骤:
在步骤S11中,获取对第一控制器进行测试的第一输入数据,所述第一输入数据用于所述第一控制器依据所述第一输入数据对第一车辆进行控制。
本公开中,在对第一车辆的第一控制器进行测试时,需要将第一输入数据输入至第一控制器中,第一控制器依据第一输入数据对第一车辆进行控制,并促使第一车辆产生第一输出数据。
示例地,可以第一控制器可以依据方向盘转角的信号值来对第一车辆进行控制,使得第一车辆依据方向盘转角进行转向,第一车辆转向过程中所输出的转向速度、横摆角等数据是第一输出数据。
其中,第一控制器为第一车辆中的自动驾驶域控制器,第一车辆可以为进行实车测试的车辆。
其中,第一输入数据是用于对第一车辆的第一控制器进行实车测试时,所输入的关键的测试数据片段,第一输入数据的数据格式与第一车辆中第一控制器所支持的格式适配。
示例地,在对第一车辆的第一控制器进行测试时,会向第一控制器中输入连续的多个数据,此时可以从多个连续的数据中筛选出关键的测试数据片段作为第一输入数据,来对第一控制器进行实车测试。
在步骤S12中,从所述第一输入数据中确定目标数据,所述目标数据为所述第一输入数据中能够对第一控制器与第二控制器进行测试的数据,所述第二控制器为与所述第一车辆类型不同的第二车辆中的控制器。
本公开中,若需要将测试第一车辆中的第一控制器的第一输入数据,来对车型不同的第二车辆中的第二控制器进行测试,则需要从第一输入数据中抽取出真正起到测试作用的目标数据。如此,将目标数据输入至第二控制器中,才能测试出第二车辆在相同的目标数据所表征的驾驶场景下所输出的第二输出数据。
示例地,若需要将第一车辆的第一控制器在方向盘的转向角度为270度的驾驶场景,放置在第二车辆中来对第二控制器进行测试,则需要从方向盘转向数据(方向盘转向数据为第一输入数据)中剥离出方向盘转角为270度的目标数据,来将该目标数据输入至第二控制器中,来对第二控制器进行测试,测试第二控制器在方向盘转角为270度的驾驶场景下控制第二车辆后,第二车辆所反映的驾驶工况。
其中,目标数据指的是第一输入数据中对第一控制器进行测试的核心数据,且目标数据的信号值在对第一控制器与第二控制器进行测试时,均保持不变,使得从第一输入数据中剥离出的目标数据的信号值不会因第一车辆所支持的格式与第二车辆所支持的格式的变化而改变。对第一控制器与第二控制器进行测试的目标数据相同的情况下,表明第一车辆与第二车辆处于相同的驾驶场景。
第一输入数据包括目标数据与非目标数据,目标数据随着车辆的驾驶场景的不同而直接变化。一部分的非目标数据可以通过目标数据计算得到,随着目标数据的变化而变化;另一部分的非目标数据在第一控制器中与第二控制器中的表现形式不同,所以需要重新对这部分的非目标数据进行重新配置。
示例地,请参阅图2所示,在第一输入数据为方向盘的转向数据的情况下,在图2中转向数据从上到下依次包括:方向盘转角有效性、方向盘转角传感器类型、防漏帧计数(rolling counter)、方向盘转角标定状态、方向盘转角变化率有效性、方向盘转角变化率、方向盘转角、方向盘总和校验码(checksum)。
时间戳 | 信号值 |
t1 | value1 |
t2 | value2 |
t3 | value3 |
t4 | value4 |
表格1
在转向数据的多个数据中,方向盘转角是目标数据,从第一输入数据中剥离出目标数据时,是从第一输入数据中得到目标数据随时间变化的信号值。请参阅表格1所示,从转向数据中剥离出的方向盘转角随着时间戳t1、t2、t3、t4的变化,其信号值分别为value1、value2、value3、value4,在剥离出方向盘转角随时间变化的信号值之后,由于方向盘转角的信号值不受到第一控制器的通讯协议的限制,所以可以直接将方向盘转角的信号值按照第二控制器所支持的通讯协议进行封装,以输入至第二控制器中,测试第二控制器依据信号值变化的方向盘转角对第二车辆进行控制后,第二车辆所展现的驾驶工况。
请参阅图2所示,方向盘转角变化率、方向盘转角变化率有效性以及方向盘转角有效性这类非目标数据均是可以通过方向盘转角而计算得到。
防漏帧计数、方向盘转角传感器类型、方向盘转角标定状态以及方向盘总和校验码这类非目标数据在不同车型的车辆中是不同的,所以将这类非目标数据传输至第二控制器中时,需要对这类非目标数据按照第二车辆所支持的格式进行配置,再输入至第二控制器中。
其中,虽然剥离出的目标数据的信号值在第一控制器与第二控制器中的表现形式是相同的,但是为了使得第一控制器与第二控制器能够识别目标数据的信号值,也仍然需要将目标数据封装为第一控制器或第二控制器所支持的通讯协议所能识别的数据。
可见,在对车型与第一车辆不同的第二车辆的第二控制器进行测试时,无需将所有的第一输入数据全部输入至第二控制器中,只需从第一输入数据中抽象出与测试第二控制器直接相关的目标数据,将目标数据输入至第二控制器中,来对第二控制器进行测试即可。
其中,在从第一输入数据中确定目标数据时,可以根据第一输入数据中各个数据的物理信号名,来确定出目标数据。第一输入数据的类型包括:驾驶场景、车辆姿态、传感器、驾驶员控制数据等。
具体地,驾驶场景包括:前车突然刹车的交通场景、前车突然转向的交通场景等;车辆姿态包括:车辆的加速度传感器在各个方向上的加速度、车辆的横摆角速度以及车轮速度;传感器包括:激光雷达传感器、毫米波雷达传感器、超声波雷达传感器等;驾驶员控制数据包括:方向盘的转向数据、制动踏板数据以及加速踏板数据等。
示例地,在前车突然刹车,第一控制器依据制动数据(制动数据为第一输入数据)控制第一车辆刹车的场景下,可以从制动数据中的制动速度、制动时长、制动响应度等多个物理信号名中,确定出制动速度是目标数据。
在驾驶员转动方向盘的过程中,第一控制器依据方向盘的转向数据(转向数据为第一输入数据)控制第一车辆转向的场景下,可以从转向数据中的方向盘转角有效性、方向盘转角传感器类型、方向盘转角标定状态、方向盘转角变化率有效性、方向盘转角变化率、方向盘转角等物理多个物理信号名中,确定出方向盘转角是目标数据。
在步骤S13中,对所述目标数据以所述第二车辆所支持的格式进行封装,得到第二输入数据。
本公开中,在获取到测试第二控制器的目标数据之后,由于第二车辆的车型与第一车辆的车型不同,导致第二控制器所支持的通讯协议与接口类型,和第一控制器所支持的通讯协议与接口类型不同,所以需要对目标数据以第第二控制器所支持的格式进行封装得到第二输入数据,以使得第二控制器能够识别第二输入数据。
其中,第二车辆所支持的格式可以与第一车辆所支持的格式不同,也可以与第一车辆所支持的格式相同。
在第二车辆所支持的格式与第一车辆所支持的格式不同的情况下,则需要对目标数据进行以第二车辆所支持的格式进行重新封装;在相同的情况下,则无需对目标数据进行重新封装。
其中,第二车辆所支持的格式包括第二控制器所支持的通讯协议(通讯协议包括CAN通讯协议以及以太网通讯协议),以及第二控制器的接口类型(例如第二控制器的接口为GMSL2,Gigabit Multimedia Serial Links,千兆多媒体串行链路;第二控制器的接口也可以为I/O接口,Input/Output,输入/输出)。
在步骤S14中,将所述第二输入数据传输至所述第二控制器,所述第二输入数据用于所述第二控制器依据所述第二输入数据对所述第二车辆进行控制,以对所述第二控制器进行测试。
本公开中,对第二车辆的第二控制器进行测试时,可以将封装后的第二输入数据输入至第二控制器中,第二控制器依据第二输入数据对第二车辆进行控制,并导致第二车辆产生第二输出数据。
在这个过程中,第一输出数据反映了第一控制器控制第一车辆后第一车辆的驾驶状况;第二输出数据反映了第二控制器控制第二车辆后第二车辆的驾驶状况。由于第一输入数据与第二输入数据均是对同一种驾驶场景进行测试,所以在对第二控制器进行测试之后,可以确定出两种不同类型的车辆在面对同一驾驶场景下所展现的驾驶工况。
其中,第二控制器可以是与第一控制器类型相同的控制器。
具体地,在第二控制器是与第一控制器类型相同的控制器的情况下,则可以直接将第一控制器中第一输入数据的目标数据输入至第二控制器中。
例如,在第二控制器与第一控制器均为动力域控制器的情况下,则将第一车辆的动力域控制器中的目标数据,同步至第二车辆的动力域控制器中;在在第二控制器与第一控制器均为底盘域控制器的情况下,则将第一车辆的底盘域控制器中的目标数据,同步至第二车辆的底盘域控制器中。如此,便可以保证是在第一车辆与第二车辆具有相同的控制器且相同的驾驶场景下,所反应出的不同的驾驶工况。
其中,第二控制器可以是第二车辆中相较于第一车辆多余的控制器。例如,在第二控制器是车身域控制器,且第一车辆中不存在车身域控制器的情况下,则确定第二控制器自身所需的目标数据,并从采集的第一输入数据中确定第二控制器自身所需的数据,以将第二控制器自身所需的数据同步至第二控制器中。
相关技术中,第一控制器的接口类型与第二控制器的接口类型不同,第一控制器所支持的通讯协议与第二控制器所支持的通讯协议也不同,导致输入至第一控制器中的第一输入数据,无法被第二控制器所识别,进而实现第二控制器的测试。
通过本公开提出的控制器的测试方法,可以获取对第一控制器进行测试的第一输入数据,再从第一输入数据中剥离出能够同时对第一控制器与第二控制器进行测试的目标数据;再将目标数据封装为第二控制器所支持的第二输入数据,将第二输入数据输入至第二控制器中,来测试第二控制器根据第二输入数据对第二车辆进行控制后,第二车辆所反映的驾驶工况。
可见,本公开对第一控制器中实际起到测试作用的目标数据从第一输入数据中进行剥离,而不受到第一控制器所支持的格式的影响;再将目标数据封装为第二控制器所支持的第二输入数据,使得目标数据与第二控制器所支持的格式适配,从而将一种类型的自动驾驶域控制器中的目标数据,同步至另外一种类型的自动驾驶域控制器中,实现了利用一种目标数据对两种不同类型的车辆的控制器进行测试。
在实现利用一种目标数据对两种不同类型的车辆的控制器进行测试的情况下,在对另一种类型的自动驾驶域控制器进行测试时,则无需额外配置目标数据,从而减少了配置目标数据所带来的测试成本。
在一种可能的实施方式中,第一输入数据是从对第一控制器进行测试的多个输入数据中所筛选出来的关键的数据片段,具体包括以下筛选方式:
方式1:在第一车辆的智能驾驶功能触发的情况下,从采集的多个输入数据中确定出第一输入数据。
本方式中,在第一车辆的智能驾驶功能被触发的情况下,确定出导致智能驾驶功能被触发的多个输入数据,并将导致智能驾驶功能被触发的多个输入数据作为第一输入数据。
其中,智能驾驶功能包括:自动泊车、主动车道保持、自动变道、限速识别等功能。在对第二车辆的第二控制器进行测试时,需要测试第二控制器在面对与第一控制器相同的驾驶场景时,所呈现的驾驶工况是否相同。
其中,第一车辆的智能驾驶功能被触发包括:正常触发智能驾驶功能或误触发智能驾驶功能。
示例地,将第一输入数据输入至第一控制器中,第一控制器会正常触发自动泊车功能,控制第一车辆自动泊车;将与第一输入数据信号值相同的第二输入数据输入至第二控制器中,可以测试第二控制器是否会正常触发自动泊车功能控制第二车辆自动泊车。
示例地,将第一输入数据输入至第一控制器中,第一控制器会误触发自动泊车功能,控制第一车辆自动泊车;将与第一输入数据信号值相同的第二输入数据输入至第二控制器中,可以测试第二控制器是否也会误触发自动泊车功能。
方式2:在第一控制器依据输入数据对第一车辆进行控制后所输出的输出数据异常的情况下,从采集的多个输入数据中确定出第一输入数据。
本方式中,在第一控制器依据输入数据对第一车辆进行控制后所输出的数据异常的情况下,可以从采集的多个输入数据中确定出导致数据异常的多个输入数据,作为第一输入数据。
数据异常包括:第一车辆出现异常驾驶工况,第一车辆输出的输出数据与真值数据之间具有偏差。
其中,在第一控制器依据输入数据对第一车辆进行控制后,第一车辆出现异常驾驶工况,可以从采集的多个输入数据中,将第一车辆出现异常驾驶工况前后第一预设时长内的多个输入数据,作为第一输入数据。
具体地,在第一车辆出现异常驾驶工况之后,工作人员可以将第一车辆出现异常工况前后第一预设时长内的多个输入数据打上标签。如此,在确定第一输入数据时,可以将带有标签的输入数据作为第一输入数据。
示例地,在第一车辆的第一控制器接收到输入数据之后,若控制第一车辆突然加速或突然转向,此时可以将第一车辆突然加速或突然转向前后1min内的多个输入数据作为第一输入数据。
其中,在第一控制器依据输入数据对第一车辆进行控制后,第一车辆输出的输出数据与真值数据之间具有偏差的情况下,可以从多个输入数据中确定出导致第一车辆输出的输出数据与真值数据之间具有偏差的多个输入数据,作为第一输入数据。
真值数据指的是第一控制器在接收到输入数据之后输出的正确的数据。
示例地,在第一控制器接收的输入数据为图像的情况下,第一车辆输出的输出数据是图像中人的姿态是运动的,而真值数据是图像中人的姿态是静止的,此时输出数据与真值数据之间具有偏差,则可以将导致该偏差的多个图像数据作为第一输入数据。
本方式中,在得到了导致第一车辆表现异常或输出异常数据的第一输入数据之后,可以将这些第一输入数据中的目标数据输入至第二控制器中,确定第二控制器在面对相同的驾驶场景下,是否会控制第二车辆表现异常,或者会输出异常数据。
方式3:在第一车辆的安全驾驶参数满足预设条件的情况下,从采集的多个输入数据中确定出第一输入数据。
本方式中,在第一车辆的安全驾驶参数满足预设条件的情况下,表明第一车辆处于危险驾驶的状况,可以从采集的多个输入数据中,确定导致安全驾驶参数满足预设条件的多个输入数据,作为第一输入数据。
其中,安全驾驶参数包括:第一车辆的车道偏离时长、第一车辆按照当前速度碰撞到障碍物的时长、第一车辆的变道车道、第一车辆的行驶速度等。预设条件包括第二预设时长、第三预设时长、目标变道车道、预设速度,第二预设时长与第三预设时长可以相同,也可以不同。
具体地,在第一车辆的车道偏离时长小于第二预设时长的情况下,说明第一车辆行驶到车道边界线的剩余时长较少,此时可以从多个输入数据中确定出导致车道偏离时长较小的输入数据,作为第一输入数据。
在第一车辆按照当前速度碰撞到障碍物的时长小于第三预设时长的情况下,说明第一车辆很有可能会碰撞到障碍物,此时可以将导致第一车辆可能会碰撞到障碍物的输入数据作为第一输入数据。
在第一车辆的变道车道不为目标变道车道的情况下,表明第一车辆变道错误,此时可以确定出导致第一车辆变道错误的输入数据,作为第一输入数据。
在第一车辆的行驶速度大于预设速度的情况下,说明第一车辆超速,此时可以将导致第一车辆超速的输入数据作为第一输入数据。
在存在出第一车辆的车道偏离时长较小、第一车辆可能会碰撞到障碍物、第一车辆变道错误以及第一车辆超速中的至少一种驾驶工况的情况下,可以将导致这些驾驶工况的输入数据作为第一输入数据,以将与第一输入数据信号值相同的第二输入数据输入至第二控制器中,测试第二控制器在接收到第二输入数据之后,是否也会出现这些相同的驾驶工况。
本公开中,在利用第一车辆中的输入数据来对第二车辆的第二控制器进行测试时,并非是将所有的输入数据来对第二控制器进行测试,而是将输入数据中能够导致第一车辆的智能驾驶功能被触发、第一车辆输出数据异常或者第一车辆存在危险驾驶的第一输入数据,来对第二控制器进行测试,以测试第二控制器在接收到这些第一输入数据时,是否也会出现相同的驾驶工况。而对于输入数据中不属于第一输入数据的数据,说明第一车辆处于正常驾驶的工况,则可以不必将导致第一车辆正常驾驶的工况下的输入数据,来对第二车辆的第二控制器进行测试。可见,本公开是通过第一车辆异常驾驶场景下或智能驾驶功能被触发的场景下,关键的第一输入数据的数据片段,来对第二控制器进行异常测试,以测试第二控制器在面对相同的第一输入数据的情况下,是否会出现异常驾驶或智能驾驶功能被触发的驾驶工况。
在一种可能的实施方式中,目标数据的物理信号名在第一控制器中与第二控制器中可能并不相同,若以第一控制器中的物理信号名,来将目标数据输入至第二控制器中,第二控制器会无法识别目标数据在第一控制器中的物理信号名,从而无法对第二车辆进行控制,为了使得第二控制器能够识别目标数据,本公开还包括以下步骤:
在步骤S21中,根据所述目标数据在所述第一控制器中的物理信号名,与目标数据在所述第二控制器中物理信号名之间的映射关系,得到与所述目标数据对应的数据。
本步骤中,可以建立目标数据在第一控制器中的物理信号名与目标数据在第二控制器中物理信号名之间的映射关系,并依据该映射关系,确定与目标数据对应的数据。
示例地,在第一控制器的第一数据库中目标数据的物理信号名是方向盘转角,在第二控制器中的第二数据库中目标数据的物理信号名是车辆转向角,二者的物理信号名虽然不同,但是二者所表征的都是方向盘的转向角度,此时可以建立二者之间的映射关系,并依据映射关系,从第二数据库中确定目标数据对应的数据是以车辆转向角为物理信号名的数据。
在步骤S22中,对所述与目标数据对应的数据按照所述第二车辆所支持的通讯协议进行封装,得到所述第二输入数据。
本公开中,第二控制器在复现目标数据所对应的驾驶工况时,不仅仅会需要目标数据,还需要与目标数据相关的相关数据,才能复现驾驶工况。
具体地,可以生成与目标数据相关的相关数据,相关数据为第二车辆所需的数据或传输目标数据所需的数据;对目标数据与相关数据,以第二车辆所支持的格式进行封装,得到第二输入数据。
其中,第二车辆所需的数据包括:第二车辆的驾驶员配置数据以及第二车辆的特性数据。驾驶员配置数据例如为驾驶员设置第二车辆上的报警提醒是5min报警一次,该配置数据与第一车辆的驾驶员配置数据不同,所以需要重新生成。第二车辆的特性数据包括:一些算法相关的输入型号,算法的输入型号在第一车辆与第二车辆中不同,所以需要重新生成这部分特性数据。
其中,传输所述目标数据所需的数据包括:校验数据。校验数据包括:方向盘总和校验码(Steering Angle Sensor Checksum)、总线上的防漏帧计数(Rolling counter)、MAC校验码等数据。
其中,第二车辆所需的数据或传输目标数据所需的数据中,均可以包括第一输入数据中需要进行重新配置的非目标数据。例如非目标数据中方向盘总和校验码在第一控制器与第二控制器中不同,所以需要对方向盘总和校验码进行重新配置;又如,第二车辆所需的数据为报警提醒时间间隔为5min一次,第一车辆的报警提醒时间间隔为3min一次,此时需要对报警提醒时间间隔进行重新配置。
其中,在对目标数据与相关数据进行封装时,对于非图像数据而言,需要按照第二车辆所支持的通讯协议来进行封装,以第二控制器所支持的通讯协议为CAN(ControllerArea Network,控制器局域网总线)协议为例,需要按照CAN协议中的CAN通道、CAN总线ID、报文信号形式以及报文中校验型号形式、报文周期来对目标数据与相关数据进行封装;对于图像数据而言,需要按照第二控制器的接口类型来进行封装,例如将图像数据转换成帧数据,以被第二控制器的GMSL2接口所识别。
示例地,请参阅图3所示,第一输入数据通过数据采集、数据挖掘、数据处理以及数据自动化测试之后得到目标数据。
对于目标数据与相关数据中的图像数据而言,若第二控制器的硬件接口是GMSL,则可以通过HDMI/DP接口将图像数据发送给视频注入模块,视频注入模块将图像数据转换成帧数据,并将帧数据通过第二控制器的GMSL接口传输至第二控制器内。
对于目标数据与相关数据中的非图像数据而言,包括以下几种情况:
情况1:在非图像数据为驾驶操作数据与毫米波雷达传感器所采集的毫米波雷达数据的情况下,可以将驾驶操作数据与毫米波雷达数据分别通过以太网传输给车辆注入模块与毫米波雷达模块;车辆注入模块将驾驶操作数据的文本形式修改为符合CAN通讯协议的文本形式,毫米波雷达模块将毫米波雷达数据的文本形式修改为符合CAN通讯协议的文本形式;车辆注入模块将符合CAN通讯协议的驾驶操作数据通过CAN通讯协议发送给第二控制器;毫米波雷达模块将符合CAN通讯协议的毫米波雷达数据通过CAN通讯协议发送给第二控制器。
情况2:在非图像数据为激光雷达所采集的激光雷达数据的情况下,激光雷达模块可以通过以太网接收激光雷达数据,再以以太网的通讯协议将激光雷达数据发送给第二控制器。
情况3:在非图像数据为GNSS数据(物体的卫星定位数据)的情况下,可以将GNSS数据通过以太网发送给GNSS注入模块,GNSS注入模块将GNSS数据通过以太网转发给GNSS仿真模块,GNSS仿真模块将GNSS数据以无线波的形式发送给第二控制器。
情况4:在非图像数据为超声波雷达所采集的超声波雷达数据的情况下,超声波雷达模块通过以太网接收超声波雷达数据,并通过以太网将超声波雷达数据发送给DSI3收发器,DSI3收发器以有线的形式发送给第二控制器的DSI接口。
情况5:对于非图像数据为模拟量为载体的模拟数据的情况下,输入输出模块通过以太网接收模拟数据,再将模拟数据发送给第二控制器的输入/输出接口(输入/输出接口,又称为I/O接口)。
从以上示例中可以看出,可以在对目标数据与相关数据进行封装时,可以将目标数据与相关数据按照第二控制器的接口的不同,通过不同的模块,来改变目标数据与相关数据的文本格式,在第二控制器的接口与第一控制器的接口不同的情况下,也能实现数据传输。
也可以将目标数据与相关数据按照第二控制器所支持的通讯协议的不同,通过不同的模块来对目标数据与相关数据进行封装,在第二控制器所支持的通讯协议与第一控制器所支持的通讯协议不同的情况下,也能实现数据传输。
其中,在第二控制器改变的情况下,第二控制器的接口以及所支持的通讯协议可能会改变,此时可以通过其余不同的模块来改变目标数据与相关数据的文本格式,以符合第二控制器的接口类型以及所支持的通讯协议。
其中,第一车辆是实车测试时所使用的真实车辆,第一控制器也是第一车辆中真实的控制器,而将封装后的目标数据与相关数据输入至第二控制器中的过程,为硬件在环的仿真过程。在这个过程中,第二车辆以及第二控制器均是通过仿真***所仿真出的虚拟对象,所以第二控制器依据目标数据控制第二车辆也是仿真的过程,无需对第二车辆进行实车测试,减少了实车测试所带来的测试成本;并且目标数据是基于实车测试时所输入的数据,将目标数据应用至第二控制器中,也提高了虚拟的第二控制器对第二车辆进行控制的可靠性。
在一种可能的实施方式中,在将第二输入数据传输至第二控制器内之后,需要对第二控制器进行测试,具体测试时,可以通过以下步骤来进行测试:
在步骤S31中,确定所述第二控制器依据所述第二输入数据对所述第二车辆进行控制后,所述第二车辆所产生的第二输出数据。
本公开中,第二输入数据是与第一输入数据具有相同信号值的数据,所以第二控制器依据第二输入数据进行测试的驾驶环境,与第一控制器依据第一输入数据进行测试的驾驶环境是相同的。
其中,在第二控制器依据第二输入数据对第二车辆进行控制后,第二车辆可能会出现紧急制动、紧急转向或者启动智能驾驶功能等反应,而这些反应下第二车辆所输出的数据就是第二输出数据。
在步骤S32中,在所述第二输出数据与真值数据之间的差异值达到第一预设差异值以上,或在所述第二输出数据与第一输出数据之间的差异值达到第二预设差异值以上的情况下,确定所述第二控制器异常;所述第一输出数据为所述第一控制器依据所述第一输入数据对所述第一车辆进行控制后,所述第一车辆所产生的数据。
其中,第一预设差异值与第二预设差异值可以为0,也可以为其他设定值,且第一预设差异值与第二预设差异值可以相同,也可以不同。
示例地,在目标数据为图像数据的情况下,第一控制器依据图像数据输出的第一输出数据为图像中人是运动的,第二控制器依据图像数据输出的第二输出数据为图像中人是静止的,此时第一输出数据与第二输出数据之间的差异值大于0,表明第二控制器输出的数据是错误的,第二控制器异常。
示例地,在目标数据为图像数据的情况下,真值数据中图像中人是静止的,第二控制器依据图像数据输出的第二输出数据为图像中人是静止的,此时第二输出数据与真值数据之间的差异值为0,小于第二预设差值,表明第二控制器是正常的。
示例地,在第一控制器依据目标数据控制第一车辆以90km/h的速度行驶,第二控制器依据目标数据控制第二车辆以60km/h的速度行驶的情况下,90km/h与60km/h之间的差值为30,大于第一预设差异值,所以可以确定第二控制器在面对相同的目标数据所提供的驾驶场景下是异常的。
可见,通过比较第一输出数据与第二输出数据之间的差异,或者比较第二输出数据与真值数据之间的差异,可以确定第二控制器是否异常,从而完成对第二控制器的异常测试。
图4是根据一示例性实施例示出的一种控制器的测试装置的框图。参照图4,控制器的测试装置120包括:获取模块121、抽象模块122、封装模块123与测试模块124。
获取模块121,被配置为获取对第一控制器进行测试的第一输入数据,所述第一输入数据用于所述第一控制器依据所述第一输入数据对第一车辆进行控制;
抽象模块122,被配置为从所述第一输入数据中确定目标数据,所述目标数据为所述第一输入数据中能够对第一控制器与第二控制器进行测试的数据,所述第二控制器为与所述第一车辆类型不同的第二车辆中的控制器;
封装模块123,被配置为对所述目标数据以所述第二车辆所支持的格式进行封装,得到第二输入数据;
测试模块124,被配置为将所述第二输入数据传输至所述第二控制器,所述第二输入数据用于所述第二控制器依据所述第二输入数据对所述第二车辆进行控制,以对所述第二控制器进行测试。
可选地,获取模块121包括:
采集模块,被配置为采集对所述第一控制器进行测试的多个输入数据;
第一输入数据确定模块,被配置为在检测到以下至少一种车况存在的情况下,从所述多个输入数据中确定所述第一输入数据:
所述第一车辆的智能驾驶功能被触发、所述第一控制器依据所述输入数据对所述第一车辆进行控制后所输出的输出数据异常以及所述第一车辆的安全行驶参数满足预设条件。
可选地,抽象模块122包括:
第一抽象模块,被配置为根据所述第一输入数据中各个数据的物理信号名,从所述第一输入数据中确定所述目标数据。
可选地,封装模块123包括:
映射模块,被配置为根据所述目标数据在所述第一控制器中的物理信号名,与目标数据在所述第二控制器中物理信号名之间的映射关系,得到与所述目标数据对应的数据;
第一封装模块,被配置为对所述目标数据对应的数据按照所述第二车辆所支持的通讯协议进行封装,得到所述第二输入数据。
可选地,封装模块123包括:
生成模块,被配置为生成与所述目标数据相关的相关数据,所述相关数据为所述第二车辆所需的数据或传输所述目标数据所需的数据;
第二封装模块,被配置为对所述目标数据与所述相关数据,以所述第二车辆所支持的格式进行封装,得到所述第二输入数据。
可选地,测试模块124包括:
第一传输模块,被配置为在所述第二输入数据为图像数据的情况下,将所述图像数据以第一传输模块传输至所述第二控制器;
第二传输模块,被配置为在所述第二输入数据为非图像数据的情况下,将所述非图像数据以第二传输模块传输至所述第二控制器;
所述第一传输模块与所述第二传输模块不同。
可选地,控制器的测试装置120还包括:
第二输出数据确定模块,被配置为确定所述第二控制器依据所述第二输入数据对所述第二车辆进行控制后,所述第二车辆所产生的第二输出数据;
异常确定模块,被配置为在所述第二输出数据与真值数据之间的差异值达到第一预设差异值以上,或在所述第二输出数据与第一输出数据之间的差异值达到第二预设差异值以上的情况下,确定所述第二控制器异常;
所述第一输出数据为所述第一控制器依据所述第一输入数据对所述第一车辆进行控制后,所述第一车辆所产生的数据。
参阅图5,图5是一示例性实施例示出的一种车辆600的功能框图示意图。车辆600可以被配置为完全或部分自动驾驶模式。例如,车辆600可以通过感知***620获取其周围的环境信息,并基于对周边环境信息的分析得到自动驾驶策略以实现完全自动驾驶,或者将分析结果呈现给用户以实现部分自动驾驶。
车辆600可包括各种子***,例如,信息娱乐***610、感知***620、决策控制***630、驱动***640以及计算平台650。可选的,车辆600可包括更多或更少的子***,并且每个子***都可包括多个部件。另外,车辆600的每个子***和部件可以通过有线或者无线的方式实现互连。
在一些实施例中,信息娱乐***610可以包括通信***611,娱乐***612以及导航***613。
通信***611可以包括无线通信***,无线通信***可以直接地或者经由通信网络来与一个或多个设备无线通信。例如,无线通信***可使用3G蜂窝通信,例如CDMA、EVD0、GSM/GPRS,或者4G蜂窝通信,例如LTE。或者5G蜂窝通信。无线通信***可利用WiFi与无线局域网(wireless local area network,WLAN)通信。在一些实施例中,无线通信***可利用红外链路、蓝牙或ZigBee与设备直接通信。其他无线协议,例如各种车辆通信***,例如,无线通信***可包括一个或多个专用短程通信(dedicated short range communications,DSRC)设备,这些设备可包括车辆和/或路边台站之间的公共和/或私有数据通信。
娱乐***612可以包括显示设备,麦克风和音响,用户可以基于娱乐***在车内收听广播,播放音乐;或者将手机和车辆联通,在显示设备上实现手机的投屏,显示设备可以为触控式,用户可以通过触摸屏幕进行操作。
在一些情况下,可以通过麦克风获取用户的语音信号,并依据对用户的语音信号的分析实现用户对车辆600的某些控制,例如调节车内温度等。在另一些情况下,可以通过音响向用户播放音乐。
导航***613可以包括由地图供应商所提供的地图服务,从而为车辆600提供行驶路线的导航,导航***613可以和车辆的全球定位***621、惯性测量单元622配合使用。地图供应商所提供的地图服务可以为二维地图,也可以是高精地图。
感知***620可包括感测关于车辆600周边的环境的信息的若干种传感器。例如,感知***620可包括全球定位***621(全球定位***可以是GPS***,也可以是北斗***或者其他定位***)、惯性测量单元(inertial measurement unit,IMU)622、激光雷达623、毫米波雷达624、超声雷达625以及摄像装置626。感知***620还可包括被监视车辆600的内部***的传感器(例如,车内空气质量监测器、燃油量表、机油温度表等)。来自这些传感器中的一个或多个的传感器数据可用于检测对象及其相应特性(位置、形状、方向、速度等)。这种检测和识别是车辆600的安全操作的关键功能。
全球定位***621用于估计车辆600的地理位置。
惯性测量单元622用于基于惯性加速度来感测车辆600的位姿变化。在一些实施例中,惯性测量单元622可以是加速度计和陀螺仪的组合。
激光雷达623利用激光来感测车辆600所位于的环境中的物体。在一些实施例中,激光雷达623可包括一个或多个激光源、激光扫描器以及一个或多个检测器,以及其他***组件。
毫米波雷达624利用无线电信号来感测车辆600的周边环境内的物体。在一些实施例中,除了感测物体以外,毫米波雷达624还可用于感测物体的速度和/或前进方向。
超声雷达625可以利用超声波信号来感测车辆600周围的物体。
摄像装置626用于捕捉车辆600的周边环境的图像信息。摄像装置626可以包括单目相机、双目相机、结构光相机以及全景相机等,摄像装置626获取的图像信息可以包括静态图像,也可以包括视频流信息。
决策控制***630包括基于感知***620所获取的信息进行分析决策的计算***631,决策控制***630还包括对车辆600的动力***进行控制的整车控制器632,以及用于控制车辆600的转向***633、油门634和制动***635。
计算***631可以操作来处理和分析由感知***620所获取的各种信息以便识别车辆600周边环境中的目标、物体和/或特征。目标可以包括行人或者动物,物体和/或特征可包括交通信号、道路边界和障碍物。计算***631可使用物体识别算法、运动中恢复结构(Structure from Motion,SFM)算法、视频跟踪等技术。在一些实施例中,计算***631可以用于为环境绘制地图、跟踪物体、估计物体的速度等等。计算***631可以将所获取的各种信息进行分析并得出对车辆的控制策略。
整车控制器632可以用于对车辆的动力电池和引擎641进行协调控制,以提升车辆600的动力性能。
转向***633可操作来调整车辆600的前进方向。例如在一个实施例中可以为方向盘***。
油门634用于控制引擎641的操作速度并进而控制车辆600的速度。
制动***635用于控制车辆600减速。制动***635可使用摩擦力来减慢车轮644。在一些实施例中,制动***635可将车轮644的动能转换为电流。制动***635也可采取其他形式来减慢车轮644转速从而控制车辆600的速度。
驱动***640可包括为车辆600提供动力运动的组件。在一个实施例中,驱动***640可包括引擎641、能量源642、传动***643和车轮644。引擎641可以是内燃机、电动机、空气压缩引擎或其他类型的引擎组合,例如汽油发动机和电动机组成的混动引擎,内燃引擎和空气压缩引擎组成的混动引擎。引擎641将能量源642转换成机械能量。
能量源642的示例包括汽油、柴油、其他基于石油的燃料、丙烷、其他基于压缩气体的燃料、乙醇、太阳能电池板、电池和其他电力来源。能量源642也可以为车辆600的其他***提供能量。
传动***643可以将来自引擎641的机械动力传送到车轮644。传动***643可包括变速箱、差速器和驱动轴。在一个实施例中,传动***643还可以包括其他器件,比如离合器。其中,驱动轴可包括可耦合到一个或多个车轮644的一个或多个轴。
车辆600的部分或所有功能受计算平台650控制。计算平台650可包括至少一个第一处理器651,第一处理器651可以执行存储在例如第一存储器652这样的非暂态计算机可读介质中的指令653。在一些实施例中,计算平台650还可以是采用分布式方式控制车辆600的个体组件或子***的多个计算设备。
第一处理器651可以是任何常规的处理器,诸如商业可获得的CPU。可替换地,第一处理器651还可以包括诸如图像处理器(Graphic Process Unit,GPU),现场可编程门阵列(Field Programmable Gate Array,FPGA)、片上***(System on Chip,SOC)、专用集成芯片(Application Specific Integrated Circuit,ASIC)或它们的组合。尽管图5功能性地图示了处理器、存储器、和在相同块中的计算机的其它元件,但是本领域的普通技术人员应该理解该处理器、计算机、或存储器实际上可以包括可以或者可以不存储在相同的物理外壳内的多个处理器、计算机、或存储器。例如,存储器可以是硬盘驱动器或位于不同于计算机的外壳内的其它存储介质。因此,对处理器或计算机的引用将被理解为包括对可以或者可以不并行操作的处理器或计算机或存储器的集合的引用。不同于使用单一的处理器来执行此处所描述的步骤,诸如转向组件和减速组件的一些组件每个都可以具有其自己的处理器,处理器只执行与特定于组件的功能相关的计算。
在本公开实施方式中,第一处理器651可以执行上述的控制器的测试方法。
在此处所描述的各个方面中,第一处理器651可以位于远离该车辆并且与该车辆进行无线通信。在其它方面中,此处所描述的过程中的一些在布置于车辆内的处理器上执行而其它则由远程处理器执行,包括采取执行单一操纵的必要步骤。
在一些实施例中,第一存储器652可包含指令653(例如,程序逻辑),指令653可被第一处理器651执行来执行车辆600的各种功能。第一存储器652也可包含额外的指令,包括向信息娱乐***610、感知***620、决策控制***630、驱动***640中的一个或多个发送数据、从其接收数据、与其交互和/或对其进行控制的指令。
除了指令653以外,第一存储器652还可存储数据,例如道路地图、路线信息,车辆的位置、方向、速度以及其它这样的车辆数据,以及其他信息。这种信息可在车辆600在自主、半自主和/或手动模式中操作期间被车辆600和计算平台650使用。
计算平台650可基于从各种子***(例如,驱动***640、感知***620和决策控制***630)接收的输入来控制车辆600的功能。例如,计算平台650可利用来自决策控制***630的输入以便控制转向***633来避免由感知***620检测到的障碍物。在一些实施例中,计算平台650可操作来对车辆600及其子***的许多方面提供控制。
可选地,上述这些组件中的一个或多个可与车辆600分开安装或关联。例如,第一存储器652可以部分或完全地与车辆600分开存在。上述组件可以按有线和/或无线方式来通信地耦合在一起。
可选地,上述组件只是一个示例,实际应用中,上述各个模块中的组件有可能根据实际需要增添或者删除,图5不应理解为对本公开实施例的限制。
在道路行进的自动驾驶汽车,如上面的车辆600,可以识别其周围环境内的物体以确定对当前速度的调整。物体可以是其它车辆、交通控制设备、或者其它类型的物体。在一些示例中,可以独立地考虑每个识别的物体,并且基于物体的各自的特性,诸如它的当前速度、加速度、与车辆的间距等,可以用来确定自动驾驶汽车所要调整的速度。
可选地,车辆600或者与车辆600相关联的感知和计算设备(例如计算***631、计算平台650)可以基于所识别的物体的特性和周围环境的状态(例如,交通、雨、道路上的冰、等等)来预测识别的物体的行为。可选地,每一个所识别的物体都依赖于彼此的行为,因此还可以将所识别的所有物体全部一起考虑来预测单个识别的物体的行为。车辆600能够基于预测的识别的物体的行为来调整它的速度。换句话说,自动驾驶汽车能够基于所预测的物体的行为来确定车辆将需要调整到(例如,加速、减速、或者停止)何种稳定状态。在这个过程中,也可以考虑其它因素来确定车辆600的速度,诸如,车辆600在行驶的道路中的横向位置、道路的曲率、静态和动态物体的接近度等等。
除了提供调整自动驾驶汽车的速度的指令之外,计算设备还可以提供修改车辆600的转向角的指令,以使得自动驾驶汽车遵循给定的轨迹和/或维持与自动驾驶汽车附近的物体(例如,道路上的相邻车道中的车辆)的安全横向和纵向距离。
上述车辆600可以为各种类型的行驶工具,例如,轿车、卡车、摩托车、公共汽车、船、飞机、直升飞机、娱乐车、火车等等,本公开实施例不做特别的限定。
上述装置除了可以是独立的电子设备外,也可是独立电子设备的一部分,例如在一种实施例中,该装置可以是集成电路(Integrated Circuit,IC)或芯片,其中该集成电路可以是一个IC,也可以是多个IC的集合;该芯片可以包括但不限于以下种类:GPU(GraphicsProcessing Unit,图形处理器)、CPU(Central Processing Unit,中央处理器)、FPGA(Field Programmable Gate Array,可编程逻辑阵列)、DSP(Digital Signal Processor,数字信号处理器)、ASIC(Application Specific Integrated Circuit,专用集成电路)、SOC(System on Chip,SoC,片上***或***级芯片)等。上述的集成电路或芯片中可以用于执行可执行指令(或代码),以实现上述的控制器的测试方法。其中该可执行指令可以存储在该集成电路或芯片中,也可以从其他的装置或设备获取,例如该集成电路或芯片中包括处理器、存储器,以及用于与其他的装置通信的接口。该可执行指令可以存储于该处理器中,当该可执行指令被处理器执行时实现上述的控制器的测试方法;或者,该集成电路或芯片可以通过该接口接收可执行指令并传输给该处理器执行,以实现上述的控制器的测试方法。
在另一示例性实施例中,还提供一种计算机程序产品,该计算机程序产品包含能够由可编程的装置执行的计算机程序,该计算机程序具有当由该可编程的装置执行时用于执行上述的控制器的测试方法的代码部分。
图6是根据一示例性实施例示出的一种用于控制器的测试装置1900的框图。例如,装置1900可以被提供为一服务器。参照图6,装置1900包括处理组件1922,其进一步包括一个或多个处理器,以及由第二存储器1932所代表的存储器资源,用于存储可由处理组件1922的执行的指令,例如应用程序。第二存储器1932中存储的应用程序可以包括一个或一个以上的每一个对应于一组指令的模块。此外,处理组件1922被配置为执行指令,以执行上述控制器的测试方法。
装置1900还可以包括一个电源组件1926被配置为执行装置1900的电源管理,一个有线或无线网络接口1950被配置为将装置1900连接到网络,和一个输入/输出接口1958。装置1900可以操作基于存储在第二存储器1932的操作***,例如Windows ServerTM,Mac OSXTM,UnixTM,LinuxTM,FreeBSDTM或类似。
本领域技术人员在考虑说明书及实践本公开后,将容易想到本公开的其它实施方案。本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由下面的权利要求指出。
应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限制。
Claims (11)
1.一种控制器的测试方法,其特征在于,所述方法包括:
获取对第一控制器进行测试的第一输入数据,所述第一输入数据用于所述第一控制器依据所述第一输入数据对第一车辆进行控制;
从所述第一输入数据中确定目标数据,所述目标数据为所述第一输入数据中能够对第一控制器与第二控制器进行测试的数据,所述第二控制器为与所述第一车辆类型不同的第二车辆中的控制器;
对所述目标数据以所述第二车辆所支持的格式进行封装,得到第二输入数据;
将所述第二输入数据传输至所述第二控制器,所述第二输入数据用于所述第二控制器依据所述第二输入数据对所述第二车辆进行控制,以对所述第二控制器进行测试。
2.根据权利要求1所述的方法,其特征在于,获取对第一控制器进行测试的第一输入数据,包括:
采集对所述第一控制器进行测试的多个输入数据;
在检测到以下至少一种车况存在的情况下,从所述多个输入数据中确定所述第一输入数据:
所述第一车辆的智能驾驶功能被触发、所述第一控制器依据所述输入数据对所述第一车辆进行控制后所输出的输出数据异常以及所述第一车辆的安全行驶参数满足预设条件。
3.根据权利要求1所述的方法,其特征在于,从所述第一输入数据中确定目标数据,包括:
根据所述第一输入数据中各个数据的物理信号名,从所述第一输入数据中确定所述目标数据。
4.根据权利要求1所述的方法,其特征在于,对所述目标数据以所述第二车辆所支持的格式进行封装,得到第二输入数据,包括:
根据所述目标数据在所述第一控制器中的物理信号名,与目标数据在所述第二控制器中物理信号名之间的映射关系,得到与所述目标数据对应的数据;
对所述目标数据对应的数据按照所述第二车辆所支持的通讯协议进行封装,得到所述第二输入数据。
5.根据权利要求1所述的方法,其特征在于,对所述目标数据以所述第二车辆所支持的格式进行封装,得到第二输入数据,包括:
生成与所述目标数据相关的相关数据,所述相关数据为所述第二车辆所需的数据或传输所述目标数据所需的数据;
对所述目标数据与所述相关数据,以所述第二车辆所支持的格式进行封装,得到所述第二输入数据。
6.根据权利要求1所述的方法,其特征在于,将所述第二输入数据传输至所述第二控制器,包括:
在所述第二输入数据为图像数据的情况下,将所述图像数据以第一传输模块传输至所述第二控制器;
在所述第二输入数据为非图像数据的情况下,将所述非图像数据以第二传输模块传输至所述第二控制器;
所述第一传输模块与所述第二传输模块不同。
7.根据权利要求1所述的方法,其特征在于,将所述第二输入数据传输至所述第二控制器之后,所述方法包括:
确定所述第二控制器依据所述第二输入数据对所述第二车辆进行控制后,所述第二车辆所产生的第二输出数据;
在所述第二输出数据与真值数据之间的差异值达到第一预设差异值以上,或在所述第二输出数据与第一输出数据之间的差异值达到第二预设差异值以上的情况下,确定所述第二控制器异常;
所述第一输出数据为所述第一控制器依据所述第一输入数据对所述第一车辆进行控制后,所述第一车辆所产生的数据。
8.一种控制器的测试装置,其特征在于,所述装置包括:
获取模块,被配置为获取对第一控制器进行测试的第一输入数据,所述第一输入数据用于所述第一控制器依据所述第一输入数据对第一车辆进行控制;
抽象模块,被配置为从所述第一输入数据中确定目标数据,所述目标数据为所述第一输入数据中能够对第一控制器与第二控制器进行测试的数据,所述第二控制器为与所述第一车辆类型不同的第二车辆中的控制器;
封装模块,被配置为对所述目标数据以所述第二车辆所支持的格式进行封装,得到第二输入数据;
测试模块,被配置为将所述第二输入数据传输至所述第二控制器,所述第二输入数据用于所述第二控制器依据所述第二输入数据对所述第二车辆进行控制,以对所述第二控制器进行测试。
9.一种车辆,其特征在于,包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器被配置为:
执行所述可执行指令以实现权利要求1至7中任一项所述的控制器的测试方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序指令,其特征在于,该程序指令被处理器执行时实现权利要求1至7中任一项所述的控制器的测试方法的步骤。
11.一种芯片,其特征在于,包括处理器和接口;所述处理器用于读取指令以执行权利要求1至7中任一项所述的控制器的测试方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210743755.5A CN115145246B (zh) | 2022-06-27 | 2022-06-27 | 控制器的测试方法、装置、车辆、存储介质及芯片 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210743755.5A CN115145246B (zh) | 2022-06-27 | 2022-06-27 | 控制器的测试方法、装置、车辆、存储介质及芯片 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115145246A true CN115145246A (zh) | 2022-10-04 |
CN115145246B CN115145246B (zh) | 2024-06-11 |
Family
ID=83409427
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210743755.5A Active CN115145246B (zh) | 2022-06-27 | 2022-06-27 | 控制器的测试方法、装置、车辆、存储介质及芯片 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115145246B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115791210A (zh) * | 2023-02-01 | 2023-03-14 | 江苏魔视智能科技有限公司 | 一种车辆测试方法、装置及电子设备 |
Citations (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107782564A (zh) * | 2017-10-30 | 2018-03-09 | 青岛慧拓智能机器有限公司 | 一种自动驾驶车辆测评***及方法 |
US20190018055A1 (en) * | 2016-01-21 | 2019-01-17 | Guangzhou Changen Electronic Technology Co., Ltd | Electromagnetic compatibility test system and method for on-screen-display data |
CN110009765A (zh) * | 2019-04-15 | 2019-07-12 | 合肥工业大学 | 一种自动驾驶车辆场景数据***及场景格式转化方法 |
CN111199087A (zh) * | 2018-10-31 | 2020-05-26 | 百度在线网络技术(北京)有限公司 | 场景识别方法和装置 |
KR102122884B1 (ko) * | 2018-12-28 | 2020-06-15 | 슈어소프트테크주식회사 | 차량 내 제어기와 통신하는 테스트 케이스 생성 장치 및 테스트 케이스 생성 장치의 테스트 케이스 생성 방법 |
CN111767630A (zh) * | 2019-04-02 | 2020-10-13 | 上海汽车集团股份有限公司 | 一种应用于智能驾驶的虚拟仿真测试方法及装置 |
CN112631932A (zh) * | 2020-12-30 | 2021-04-09 | 交控科技股份有限公司 | 基于接口的自动列车监控***的子功能独立测试方法 |
CN112857832A (zh) * | 2021-02-18 | 2021-05-28 | 爱驰汽车有限公司 | 车辆交互***的测试方法、***、设备及存储介质 |
US20210197851A1 (en) * | 2019-12-30 | 2021-07-01 | Yanshan University | Method for building virtual scenario library for autonomous vehicle |
CN113092133A (zh) * | 2021-04-07 | 2021-07-09 | 冒坚 | 一种基于高斯聚类的超声波雷达在环自动驾驶测试方法 |
WO2021169588A1 (zh) * | 2020-02-24 | 2021-09-02 | 上海商汤临港智能科技有限公司 | 自动驾驶仿真方法和装置、电子设备及存储介质 |
CN113704100A (zh) * | 2021-08-20 | 2021-11-26 | 苏州智加科技有限公司 | 一种测试用例的自动管理方法及*** |
US20210397856A1 (en) * | 2021-02-18 | 2021-12-23 | Apollo Intelligent Connectivity (Beijing) Technology Co., Ltd. | Scene reproduction test method, apparatus, device and program product of autonomous driving system |
WO2022027304A1 (zh) * | 2020-08-05 | 2022-02-10 | 华为技术有限公司 | 一种自动驾驶车辆的测试方法及装置 |
CN114415628A (zh) * | 2021-12-28 | 2022-04-29 | 阿波罗智联(北京)科技有限公司 | 自动驾驶测试方法及装置、电子设备和存储介质 |
-
2022
- 2022-06-27 CN CN202210743755.5A patent/CN115145246B/zh active Active
Patent Citations (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20190018055A1 (en) * | 2016-01-21 | 2019-01-17 | Guangzhou Changen Electronic Technology Co., Ltd | Electromagnetic compatibility test system and method for on-screen-display data |
CN107782564A (zh) * | 2017-10-30 | 2018-03-09 | 青岛慧拓智能机器有限公司 | 一种自动驾驶车辆测评***及方法 |
CN111199087A (zh) * | 2018-10-31 | 2020-05-26 | 百度在线网络技术(北京)有限公司 | 场景识别方法和装置 |
KR102122884B1 (ko) * | 2018-12-28 | 2020-06-15 | 슈어소프트테크주식회사 | 차량 내 제어기와 통신하는 테스트 케이스 생성 장치 및 테스트 케이스 생성 장치의 테스트 케이스 생성 방법 |
CN111767630A (zh) * | 2019-04-02 | 2020-10-13 | 上海汽车集团股份有限公司 | 一种应用于智能驾驶的虚拟仿真测试方法及装置 |
CN110009765A (zh) * | 2019-04-15 | 2019-07-12 | 合肥工业大学 | 一种自动驾驶车辆场景数据***及场景格式转化方法 |
US20210197851A1 (en) * | 2019-12-30 | 2021-07-01 | Yanshan University | Method for building virtual scenario library for autonomous vehicle |
WO2021169588A1 (zh) * | 2020-02-24 | 2021-09-02 | 上海商汤临港智能科技有限公司 | 自动驾驶仿真方法和装置、电子设备及存储介质 |
WO2022027304A1 (zh) * | 2020-08-05 | 2022-02-10 | 华为技术有限公司 | 一种自动驾驶车辆的测试方法及装置 |
CN112631932A (zh) * | 2020-12-30 | 2021-04-09 | 交控科技股份有限公司 | 基于接口的自动列车监控***的子功能独立测试方法 |
US20210397856A1 (en) * | 2021-02-18 | 2021-12-23 | Apollo Intelligent Connectivity (Beijing) Technology Co., Ltd. | Scene reproduction test method, apparatus, device and program product of autonomous driving system |
CN112857832A (zh) * | 2021-02-18 | 2021-05-28 | 爱驰汽车有限公司 | 车辆交互***的测试方法、***、设备及存储介质 |
CN113092133A (zh) * | 2021-04-07 | 2021-07-09 | 冒坚 | 一种基于高斯聚类的超声波雷达在环自动驾驶测试方法 |
CN113704100A (zh) * | 2021-08-20 | 2021-11-26 | 苏州智加科技有限公司 | 一种测试用例的自动管理方法及*** |
CN114415628A (zh) * | 2021-12-28 | 2022-04-29 | 阿波罗智联(北京)科技有限公司 | 自动驾驶测试方法及装置、电子设备和存储介质 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115791210A (zh) * | 2023-02-01 | 2023-03-14 | 江苏魔视智能科技有限公司 | 一种车辆测试方法、装置及电子设备 |
Also Published As
Publication number | Publication date |
---|---|
CN115145246B (zh) | 2024-06-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2023028858A1 (zh) | 一种测试方法和*** | |
US20230230368A1 (en) | Information processing apparatus, information processing method, and program | |
CN115042821B (zh) | 车辆控制方法、装置、车辆及存储介质 | |
CN115330923B (zh) | 点云数据渲染方法、装置、车辆、可读存储介质及芯片 | |
CN115123257A (zh) | 路面减速带位置识别方法、装置、车辆、存储介质及芯片 | |
CN115100377A (zh) | 地图构建方法、装置、车辆、可读存储介质及芯片 | |
CN115145246B (zh) | 控制器的测试方法、装置、车辆、存储介质及芯片 | |
CN115035494A (zh) | 图像处理方法、装置、车辆、存储介质及芯片 | |
CN114842075A (zh) | 数据标注方法、装置、存储介质及车辆 | |
CN115202234B (zh) | 仿真测试方法、装置、存储介质和车辆 | |
CN115221151B (zh) | 车辆数据的传输方法、装置、车辆、存储介质及芯片 | |
CN114782638B (zh) | 生成车道线的方法、装置、车辆、存储介质及芯片 | |
CN115056784B (zh) | 车辆控制方法、装置、车辆、存储介质及芯片 | |
CN115334111A (zh) | 用于车道识别的***架构、传输方法,车辆,介质及芯片 | |
CN115334109A (zh) | 用于交通信号识别的***架构、传输方法,车辆,介质及芯片 | |
CN115203457A (zh) | 图像检索方法、装置、车辆、存储介质及芯片 | |
CN115100630A (zh) | 障碍物检测方法、装置、车辆、介质及芯片 | |
CN115042814A (zh) | 交通灯状态识别方法、装置、车辆及存储介质 | |
CN115116161A (zh) | 车辆数据采集方法、装置、存储介质以及车辆 | |
CN115139946B (zh) | 车辆落水检测方法、车辆、计算机可读存储介质及芯片 | |
WO2024024471A1 (ja) | 情報処理装置、情報処理方法、及び、情報処理システム | |
CN115079624B (zh) | 用于车辆绝对时间发布的车载控制器、方法及车辆 | |
CN115123304A (zh) | 故障追踪方法、装置、介质及芯片 | |
CN115082886B (zh) | 目标检测的方法、装置、存储介质、芯片及车辆 | |
WO2023106235A1 (ja) | 情報処理装置、情報処理方法、および車両制御システム |
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 |