用于测试用于自主车辆的软件的方法和装置与流程

文档序号:11654160阅读:251来源:国知局

本发明涉及根据专利权利要求1和6的前序部分的在一个或多个设置成在现实世界中执行自主试验驾驶的真实的自主车辆形式的硬件参与的情况下用于测试用于自主车辆的软件的方法和装置。



背景技术:

从期刊“机电一体化”,atz01/2008,卷110,页2-8中的出版物“车辆在回路中”已知这种方法和这种装置。所述出版物描述了用于驾驶员辅助系统的测试和仿真环境,不在公共道路交通中移动而是在开放空间中或在试验场地上移动的真实的试验车辆在该测试和仿真环境中与驾驶模拟器结合。被称为“车辆在回路中”的这种测试结构可以用于安全地测试驾驶员辅助功能如何对虚拟外部交通或虚拟交通环境中的其他虚拟物体作出反应。

对于系统级的软件验证和确认,通常指定系统的一组刺激和预期响应。直接从相应要求推断出该刺激和预期响应。这些要求的范围以及因此还有测试用例的范围,通常限制于一组有限的识别应用程序。测试用例通常由测试工程师使用软件测试工具来指定。这种工具可以具有用于协助测试自动化并且用于提高测试成熟度(版本管理、问题跟踪器、图形测试规范等)的功能。

指定测试然后在自主车辆中执行以便评估相应要求是否已经在车辆中正确地实施(功能整合)以及相应要求是否是可接受的(客户验收)。

车辆中用于驾驶的测试用例的数量依赖于集成在车辆中的开发部件。测试基于该部件并且该部件的集成限定验证和确认的范围。

测试的范围似乎对测试用于自主车辆的软件是几乎无限的。这种系统实际上必须能够控制任何驾驶员在其一生中可能遇到的大多数驾驶状况。不同的驾驶员将面对不同类型的应用程序,取决于大量的环境因素(其他道路使用者、一天中的一段时间、天气、健康、车辆磨损、道路状况等)。因此,这些似乎是极多的测试组合并且车辆测试的持续时间似乎甚至更长。特别地,通过世界各地的团队合作的这种测试的规划或特定测试的重复需要新的方法和新的平台以便促进自主车辆的验证和确认。



技术实现要素:

本发明是基于使在现实世界的条件下以系统级验证和确认自主车辆成为可能以及特别是为在特定的原型车辆或测试系统仅在特定地理区域中可用时可能存在的限制提供解决方案的目的。

该目的是通过具有专利权利要求1和6的特征的方法和装置来实现。

根据本发明,响应于用户给出的工作指令,自动地执行检查以便确定在现实世界中能够在全球分布的测试轨道上执行自主试验驾驶的多个真实的自主车辆中的哪些车辆目前可用于工作指令中定义的一个或多个测试,并且自动地规划和协调软件测试和试验驾驶的性能。

根据本发明的方法在基于网络的系统中执行,该系统包含至少一个客户端装置、至少一个云服务器和终端、以及至少一个自主车辆,该终端包含至少一个比如hil装置这样的仿真终端。

本发明使扩大具有以系统级并且在世界上的真实环境中模拟、确认和验证用于自主车辆的软件的能力的现有的全球xil框架(程序框架)成为可能。设置成执行根据本发明的方法的系统能够命令世界各地的一个或多个自主车辆在保留测试轨道上执行特定操纵并且也能够将试验驾驶的结果返回至操作者。

xil是测试自动化工具和用于软件验证的虚拟环境形式的试验台之间的通信的标准。xil在开发和测试过程的所有阶段——特别是mil(模型在回路中)、sil(软件在回路中)和hil(硬件在回路中)——协助试验台。名称“xil”因此指示标准可以用于所有可能的“在回路中”的系统,在此情况下在系统中执行的仿真在此被称为回路仿真。

在从属专利权利要求中陈述本发明的有利发展。

特别地,试验驾驶的性能可以通过全球数据通信网络规划和协调,并且工作指令可以包含配置指令、环境指令、操作指令、数据获取指令和/或测试条件和报告指令,其各自在下面被进一步更详细地描述。

在一个优选的实施例中,响应于用户给出的工作指令,自动地识别和预订不同大陆上的不同测试设施中的合适的自主车辆和合适的测试轨道,规划软件测试,软件和测试指令在规划的时间内上传至属于车辆的仿真终端,在测试期间从车辆或仿真终端下载数据,并且测试报告可以在测试已经结束之后生成并且可以传输至用户。特别地,仿真终端特别可以是xil或hil装置。

附图说明

接下来是使用附图的示例性实施例的描述。单个附图显示了用于测试用于自主车辆的软件的系统的概述。

具体实施方式

参考附图,系统包含若干用于定义和传输工作指令的客户端装置1、若干用于分配工作指令、组织工作指令和使工作指令排队的云服务器2,若干仿真终端3、若干可以在世界上完全不同的位置上的自主车辆4的车队、以及若干不同的道路环境,例如城市外测试轨道5a、城市测试轨道5b和高速公路测试轨道5c,在每种情况下自主车辆4的车队中的一个安置在其上。

客户端装置1使测试工程师定义一组工作指令并且传输该组工作指令至系统成为可能。工作指令可以由下面的指令组成:

-描述需要处理工作指令的硬件(ecu(电子控制单元),车辆仪表、hil特征数据等)和该硬件所需的校准的配置指令。多个自主车辆4被启动以用于测试是可想得到的,例如,在此情况下仅一个车辆4在现实世界中移动,同时一个或多个其他车辆4仅模拟这种旅程。

-描述工作指令旨在在其中被处理的仿真环境的环境指令。仿真环境可以是现实世界中测试轨道上的道路,该测试轨道在任何试验场地上或在专用测试设施中是可获得的并且包括测试轨道的虚拟版本。测试轨道的虚拟版本也可以根据现实世界中的道路的典型特征自动地产生。环境也可以是公共道路的特定保留部分。

-精确地描述在定义的环境中旨在由自主车辆4遵循的路线的操作指令,例如出发点、终点、旅程的数量;重复次数、距离等。指定例如速度限制、注入故障等这样的特定的限制或事件也是可能的。激活在环境道路上可用的特定的人工制品也是可能的,例如穿过道路的假人、道路上的喷水等。此外,可以指定其他道路使用者相对于主测试车辆的行为,例如超车操纵、前方行驶车辆的大力制动等。

-描述例如can(控制器局域网络)信号、内部信号、外部视频记录等这样的该组信息的数据获取指令,该组信息在正在处理工作指令时被记录。

-描述测试条件的测试条件和报告指令,该测试条件在整个测试期间旨在被系统遵守,例如没有死锁情况、没有碰撞、没有在特定范围的值之外移动等,并且其在生成用户特定报告时使用,该用户特定报告在工作指令的末尾或在其处理期间的特定时间间隔总结测试的结果。

云服务器2是一个或多个计算机中央处理单元,该计算机中央处理单元处理由测试工程师传输的工作指令,也就是用于识别和选择一组合适的全球可用终端。该活动包含:

-配置终端,例如闪存软件和校准,加载仿真环境等。

-在虚拟环境中规划仿真以便降低通过用户的不正确的配置的风险并且降低故障的风险。这可能与测试回路中的车辆有关,在此情况下整个车辆通过仿真终端模拟而没有移动。

-使用分配的自主车辆4规划全球仿真。

如果终端由于某些原因而不能被远程配置,那么云服务器2应该要求终端的所有者进行必要的适应。

云服务器2也确保在测试的持续时间内终端的可用性,例如通过排队系统。

工作指令定向至的终端通常是一对仿真终端3,例如hil装置和自主车辆4,仿真终端3能够安装在自主车辆4中或安置在附近并且通过收音机连接至车辆4。两种类型的终端可以支持工作指令中规定的配置指令和环境指令。仿真终端3和自主车辆4理想地配备有接口,该接口实现了由云服务器2规划的远程配置。自主车辆4应该接近对应于由用户限定的特征变量的道路环境。

对于回路仿真,每个仿真终端3最好位于由其控制的自主车辆4的位置处。然而,特定的仿真终端3也可以与特定的远程自主车辆兼容,因为从很远的地方能够控制回路仿真中的车辆是可想得到的。

附图中的箭头a说明客户端装置1、云服务器2、仿真终端3中之一和自主车辆4之间的数据通信连接。这些数据通信连接由开发者用于将工作指令例如传输至客户端装置1以在作为道路环境的城市外测试轨道5a上自动驾驶200km。在试验驾驶在现实世界中通过自主车辆4在测试轨道5a上执行之前,仿真终端3在回路仿真中合并自主车辆4。

现在参考附图和使用希望在自由流畅的高速公路交通的状态下测试用于自适应巡航控制(acc)的新软件的欧洲的开发者的示例的其解释,描述用于测试用于全球测试框架中的自主车辆的软件的方法。acc系统是巡航控制系统,该巡航控制系统可以由车辆使用以自动地保持其速度恒定或如果检测到前方行驶的车辆在道路上则自动地降低速度并且车辆接着以适应的速度跟随。

需要执行下面的测试:

-测试车辆对车辆速度的变化目标值的响应。

-测试遵守的与前方行驶的车辆的距离。

-测试在另一车辆返回至车道的情况下的响应。

欧洲的开发者在客户端装置1上指定下面的数据:

-配置指令:

-需要主车辆来测试acc系统。车辆应该在车上具有专用控制器,该专用控制器能够与发动机控制模块并且与例如激光雷达、摄像机、雷达等这样的一些传感器通信。将acc软件闪存到该控制器上应该是可能的。通过程序设计将驾驶指令传输至自主车辆也应该是可能的。

-需要第二自主车辆来测试与要测试的车辆的交互作用。通过程序设计将驾驶指令传输至第二车辆应该是可能的。个人将驾驶指令传输至第二车辆也应该是可能的。

-环境指令:

-需要具有与高速公路相似的测试轨道的试验场地,也就是说具有良好道路质量的长道路,其是直的或具有大的弯曲半径,因此允许快速驾驶。

-操作指令:

-测试1:

-启动主车辆。

-使主车辆以80km/h并且沿着道路驾驶。

-用120km/h的目标速度启动要测试的acc系统。

-等待直到特定的时间已经过去。

-以每分钟5km/h逐步降低acc的目标速度至0km/h。

-使主车辆返回至出发点并且关闭其驱动马达。

-测试2:

-启动第二车辆。

-使第二车辆以80km/h并且沿着道路驾驶。

-启动主车辆。

-使主车辆以80km/h并且2分钟后沿着道路驾驶。

-用120km/h的目标速度启动要测试的acc系统并且与前方行驶的车辆的目标距离为100m。

-在不同的步骤改变与前方行驶的车辆的距离。

-在特定的距离之后使两个车辆返回至出发点并且关闭它们的驱动马达。

-测试3:

-启动主车辆。

-使主车辆以80km/h并且沿着道路驾驶。

-用120km/h的目标速度启动要测试的acc系统并且与前方行驶的车辆的目标距离为100m。

-两分钟后启动第二车辆并且使其以140km/h驾驶。

-使第二车辆超过主车辆并且在离主车辆的特定距离处执行返回至车道的操纵。

-测试在不同距离处返回至车道的多个操纵。

-使两个车辆返回至出发点并且关闭它们的驱动马达。

-数据获取指令:

-从主车辆并且从第二车辆可获得的所有可用信号旨在被记录并且被用特定的标识符传输至云服务器2。

-测试条件和报告指令:

-通知开发者该测试规划并且在测试已经被执行之后传输报告数据。

-定义应该自动包括在报告中的下面的测试条件。

-关于测试1,检查在acc特征属性中指定的时间内已经达到车辆目标速度。

-关于测试2,检查acc特征属性中指定的公差范围内已经遵守的与前方行驶的车辆的距离。

-关于测试3,检查acc软件已经识别车辆返回至车道的情况以及已经给出制动命令。

只要指令已经被定义,开发者就将它们传输至服务器2。

云服务器2分析由开发者传输的指令并且执行下面的活动:

-云服务器2识别欧洲、亚洲和美国的不同试验场地上的合适车辆。

-云服务器2仅识别亚洲和美国的合适测试轨道。

-云服务器2确定美国的测试轨道正集中地用于其他测试;因此,使用亚洲的测试轨道和相应车辆。

-云服务器2规划测试,在测试的持续期间预订亚洲的车辆和测试轨道并且通知当地负责人。

-在规划的时间内,云服务器2上传必要的软件和测试指令至亚洲的测试车辆。

-在测试期间,云服务器2从车辆下载数据并且当测试已经结束时,云服务器2规划可以由外部系统执行的测试报告的生成。云服务器2最后通知开发者该测试已经结束并且将测试报告传输至开发者。

终端:

-在这个示例中,两个测试车辆在亚洲:主车辆和第二车辆。

-acc软件通过云服务器2闪存到主车辆或相关仿真终端上。

-每个车辆首先接收指令以在正确的时间形成至正确的测试轨道的其方式。

-用于测试1、测试2和测试3的测试指令存储在每个车辆中,例如存储在专用存储器中。

-每个车辆然后在正确的时间执行其指令,例如启动、以80km/h驾驶等。

本发明总体上提供用于通过自主车辆自动地规划和协调试验驾驶的性能的方法和算法。方法基于全球网络,该全球网络可以包含至少一个客户端装置、至少一个云服务器和终端,该终端包含至少一个仿真终端和至少一个自主车辆。方法还基于记录与试验驾驶和它们的结果有关的信息的能力。

方法和算法也由此提供,该方法和算法使开发工程师在客户端装置上定义工作指令并且传输该工作指令成为可能,该工作指令可以包含配置指令(应该做什么)、环境指令(应该在哪里做)、操作指令(应该如何做)、数据获取指令(应该收集哪些数据)和/或测试条件和报告指令(报告结果)。

方法和算法也由此提供以便处理已经通过不同的客户端装置传输的工作指令,在此情况下处理可以包含识别正确的终端、规划要由合适的终端执行的指令、使用于合适的终端的指令和用于客户端装置的反馈排队。处理也可以包含基于自主车辆的实际操作之前的仿真的确认阶段以便确保操作程序是有效的或貌似合理的。处理可以通过云服务器或相似装置执行。

方法和算法也由此提供以便规定终端,该终端是xil装置和自主车辆的集合,该自主车辆可以位于世界各地的合适位置并且能够执行工作指令。xil装置可以用作预备确认环境以便确保自主车辆将正确地操作。这可以通过在虚拟环境、“车辆在回路中”环境等中模拟指令来实现。规定的自主车辆必须在其设备方面匹配xil装置并且必须在测试可以被执行的位置,例如在合适的测试设施中。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1