一种确定机械电子设备的测试体系的方法和系统与流程

文档序号:16909773发布日期:2019-02-19 18:33阅读:153来源:国知局
一种确定机械电子设备的测试体系的方法和系统与流程

本发明属于汽车自动驾驶测试技术领域。具体的,本发明涉及一确定机械电子设备的测试体系的方法和系统。



背景技术:

随着全球经济和人工智能技术的发展,人们对智能汽车驾驶的开发和探索需求日益明显,自动驾驶汽车技术越来越受到了全球各个国家和地区的青睐。在自动驾驶技术中,自动泊车技术是其重要组成部分。自动泊车的研究已经从辅助驾驶系统扩展到全自动泊车领域,自动泊车技术的开发和研究对测试体系的需求越来越迫切。

汽车自动泊车测试体系实际上是一类自动泊车控制系统的衍生,其测试系统对于自动泊车技术的开发和完善,起到重要的作用。开发者会根据具体场景的行驶状况,通过数据分析来改善控制算法的不足,从而提高控制算法的有效性和控制系统的鲁棒性。自动泊车系统的测试体系主要分为仿真测试和上路测试两种测试方式。其中,仿真测试是模拟汽车泊车在实际工作过程中遇到的各种行车场景的一种计算机测试,这种测试的优点是成本较低、测试用例多和易于实现。上路测试则是根据实际环境对自动泊车系统进行实车测试,这种测试成本高、可测试用例少,对测试场地要求高。虽然自动泊车系统的测试是一项复杂、高成本的工作,但是这对于自动泊车汽车量产至关重要,因此很多车企都将系统测试放在重要的位置。伴随着汽车的工作环境的变化和车载设备的变化,增加了汽车的工作场景和控制精度的同时,也增加了测试的场景和模块,使得自动泊车测试愈发复杂,需要对测试规范进行制定。自动泊车测试需要考虑到设备的测试和工作环境的测试,这类测试会根据测试设备和环境的变化,产生巨大的测试算例。

现有的自动泊车技术没有一套完整的测试体系,开发者会根据设备和环境的变化而改变测试的条件,进行仿真测试和实车测试。这种测试方法不能给出当前车载设备、行车环境、控制策略和通信情况下,测试算例数量的上界。也不能准确的构建各个测试算例之间的逻辑关系,经常会造成重要算例的漏测和重要测试数据的盲区,因而不能满足自动泊车技术的开发。



技术实现要素:

本申请披露了一种确定机械电子设备的测试体系的方法和系统。首先该系统将所述机械电子设备包括的多个传感器和多个输出信号单元分类映射到一个逻辑树中去,然后根据某机械电子设备的控制系统的逻辑信息,构建所述机械电子设备的测试体系。所述机械电子设备可以是自动泊车系统、自动驾驶系统或者其他复杂机械电子设备。

本披露一方面提供了一种确定机械电子设备的测试体系的方法。根据该方法,电子接收模块接收某机械电子设备的控制系统的逻辑信息,电子分析模块获取所述控制系统逻辑结构信息,基于所述控制系统逻辑结构信息,构建所述机械电子设备的测试体系。

其中所述机械电子设备包括多个传感器和多个输出信号单元,所述多个传感器中的每个传感器包括一个或多个传感状态,所述多个输出信号单元中的每个输出信号单元包括一个或多个输出信号状态;所述控制系统的逻辑结构信息包括所述控制系统如何根据所述多个传感输出状态决定所述多个输出信号单元的输出来控制所述汽车的运行。

所述构建所述机械电子设备的测试体系包括:将所述多个输出信号单元和多个传感器归类到预先设定的逻辑树中,所述逻辑树包括一个根节点、多个中间节点以及多个叶节点,所述多个中间类别节点中的每个节点都对应于一个父节点和一个或多个子节点,所述逻辑树中同一层的节点称作兄弟节点。

对每一个父节点:根据所述控制系统的逻辑结构信息,确定所述父节点的一个或多个子节点之间的逻辑关系;确定这对所述父节点的状态集合,所述测试状态集合为测试所述父节点所涉及的传感器的传感状态和输出信号单元的输出信号状态的集合;然后根据根节点的测试状态集合,构建所述机械电子设备的测试体系。

如果所述父节点的一个或多个子节点之间的逻辑关系为互斥关系,所述父节点的状态集合可以表述为:∑(a,b,c...,d)=∑(a)+∑(b)+∑(c)+…+∑(d);如果所述父节点的一个或多个子节点之间的逻辑关系为独立关系,所述父节点的状态集合可以表述为:∑(a,b,c...,d)=∑(a)×∑(b)×∑(c)×...×∑(d);如果所述父节点的一个或多个子节点之间的逻辑关系为组合关系,并且每个事件中的元素之间是互斥关系,所述父节点的状态集合可以表述为:∑(a,b,c...,d)=(∑(a)+1)×(∑(b)+1)×(∑(c)+1)×...×(∑(d)+1)-1。其中所述a,b,c,..,d,为所述父节点下多个子节点的状态集合。

本披露另一方面提供了一种确定机械电子设备的测试体系的执行设备。所述设备包括电子接收模块和电子分析模块,所述电子接收模块和电子分析模块执行上述方法。

附图说明

以下附图详细描述了本申请中披露的示例性实施例。其中相同的附图标记在附图的若干视图中表示类似的结构。本领域的一般技术人员将理解这些实施例是非限制性的、示例性的实施例,附图仅用于说明和描述的目的,并不旨在限制本公开的范围,其他方式的实施例也可能同样的完成本申请中的发明意图。其中:

图1是根据本公开的一些实施例中的具有自动泊车能力的示例性车辆的框图和控制系统的逻辑;

图2是用来确定图1所述自动泊车系统的测试体系的设备的示例性硬件和软件组件的示意图;

图3为一种确定自动泊车系统的测试体系的方法流程图;

图4为根据本公开的一些实施例中的逻辑树示意图;

图5为根据本公开的一些实施例中的自动泊车控制系统基本组成示意图;

图6为根据本公开的一些实施例中的控制器测试模块的逻辑示意图;

图7为根据本公开的一些实施例中的执行器测试模块的逻辑示意图;

图8为根据本公开的一些实施例中的定义控制对象测试模块的逻辑示意图;

图9为根据本公开的一些实施例中的环境因素测试模块逻辑示意图;

图10为根据本公开的一些实施例中的信号通讯测试模块的逻辑示意图。

实施方式具体描述

针对上述现有技术存在的问题,本申请披露了一种利用自动泊车系统的组成,引入数理统计的方法,采用各模块之间的逻辑关系,给出测试算例的求解方法。通过严格的理论推导解析出测试算例的个数和测试算例的具体测试元素,从而为自动泊车系统测试形成体系,给予了理论的依据。当然,本领域的普通技术人员可以很容易的理解,自动泊车只是本披露涉及方法和系统的一个应用,本披露涉及的方法和内容可以被应用到自动驾驶的其他领域和应用场景,比如自动驾驶的路试等等。进一步的,本领域的普通技术人员还可以很容易的理解,本披露还适用于其他各种机械电子系统的测试,比如机器人测试、手机测试、飞行器测试等等。

为了给本领域普通技术人员提供相关披露的透彻理解,在以下详细描述中通过示例阐述了本发明的具体细节。然而本申请披露的内容应该理解为与权利要求的保护范围一致,而不限于该具体发明细节。比如,对于本领域普通技术人员来说,对本申请中披露的实施例进行各种修改是显而易见的;并且在不脱离本公开的精神和范围的情况下,本领域的普通技术人员可以将这里定义的一般原理应用于其他实施例和应用。再比如,这些细节如果没有以下披露,对本领域普通技术人员来说也可以在不知道这些细节的情况下实践本公开。另一方面,为了避免不必要地模糊本申请的内容,本申请对公知的方法,过程,系统,组件和/或电路做了一般性概括而没有详细描述。因此,本申请披露的内容不限于所示的实施例,而是与权利要求的组款范围一致。

本申请中使用的术语仅用于描述特定示例实施例的目的,而不是限制性的。比如除非上下文另有明确说明,本申请中如果对某要件使用了单数形式的描述(比如,″一″、″一个″和/或等同性的说明)也可以包括多个该要件。在本申请中使用的术语″包括″和/或″包含″是指开放性的概念。比如a包括/包含b仅仅表示a中有b特征的存在,但并不排除其他要件(比如c)在a中存在或添加的可能性。

应当理解的是,本申请中使用的术语,比如″系统″,″单元″,″模块″和/或″块″,是用于区分不同级别的不同组件,元件,部件,部分或组件的一种方法。但是,如果其他术语可以达到同样的目的,本申请中也可能使用该其他术语来替代上述术语。

本申请中描述的模块(或单元,块,单元)可以实现为软件和/或硬件模块。除非上下文另有明确说明,当某单元或模块被描述为″接通″、″连接到″或″耦合到″另一个单元或模块时,该表达可能是指该单元或模块直接接通、链接或耦合到该另一个单元或模块上,也可能是指该单元或模块间接的以某种形式接通、连接或耦合到该另一个单元或模块上。在本申请中,术语″和/或″包括一个或多个相关所列项目的任何和所有组合。

本披露涉及的方法和内容可以被应用到各种复杂机械电子系统的测试,比如机器人测试、手机测试、飞行器测试,自动驾驶汽车的测试,等等。比如本披露涉及的方法可以应用的自动驾驶汽车自动驾驶过程中的任何场景,比如自动驾驶的路试等等。为了清楚的说明本披露涉及的方法和系统,本披露中采用自动泊车场景作为例子,说明本披露的方法和系统。

图1是根据本公开的一些实施例的具有自动泊车能力的示例性车辆的框图和控制系统的逻辑。例如,具有自动泊车能力的车辆可包括控制单元150,多个传感器142,144,146,存储器120,网络130,网关模块110,控制器区域网络(can)155,发动机管理系统(ems)160,电动稳定性控制(esc)170,电力系统(eps)180,转向柱单元(scm)190,节流系统165,制动系统175和转向系统195。

控制单元150可以处理与车辆驾驶(例如,自动泊车)有关的信息和/或数据,以执行本公开中描述的一个或多个功能。在一些实施例中,控制单元150可以配置成自主地驱动车辆。例如,控制单元150可以输出多个控制信号。多个控制信号可以被配置为由多个电子控制单元(electroniccontrolunits,ecu)接收,以控制车辆的驱动。在一些实施例中,控制单元150可基于车辆的环境信息确定对车辆行驶的控制策略。在一些实施例中,控制单元150可以包括一个或多个处理引擎(例如,单核处理引擎或多核处理器)。仅作为示例,控制单元150可以包括中央处理单元(centralprocessingunit,cpu),专用集成电路(application—specificintegratedcircuit,asic),专用指令集处理器(application—specificinstruction—setprocessor,asip),图形处理单元(graphicsprocessingunit,gpu),物理处理单元(physicsprocessingunit,ppu),数字信号处理器(digitalsignalprocessor,dsp),场可编程门阵列(fieldprogrammablegatearray,fpga),可编程逻辑器件(programmablelogicdevice,pld),控制器,微控制器单元,精简指令集计算机(reducedinstruction—setcomputer,risc),微处理器(microprocessor)等,或其任何组合。

存储器120可以存储数据和/或指令。在一些实施例中,存储器120可以存储从自动泊车车辆130获得的数据。在一些实施例中,存储器120可以存储控制单元150可以执行或使用的数据和/或指令,以执行本公开中描述的示例性方法。在一些实施例中,存储器120可以包括大容量存储器,可移动存储器,易失性读写存储器(volatileread-and-writememory),只读存储器(rom)等,或其任何组合。作为示例,比如大容量存储器可以包括磁盘,光盘,固态驱动器等;比如可移动存储器可以包括闪存驱动器,软盘,光盘,存储卡,拉链盘,磁带;比如易失性读写存储器可以包括随机存取存储器(ram);比如ram可以包括动态ram(dram),双倍数据速率同步动态ram(ddrsdram),静态ram(sram),可控硅ram(t-ram)和零电容器ram(z-ram);比如rom可以包括掩模rom(mrom),可编程rom(prom),可擦除可编程rom(eprom),电可擦除可编程rom(eeprom),光盘rom(cd-rom),以及数字通用磁盘rom等。在一些实施例中,存储可以在云平台上实现。仅作为示例,云平台可以包括私有云,公共云,混合云,社区云,分布式云,云间云,多云等,或其任何组合。

在一些实施例中,存储器120可以连接到网络130以与自动泊车车辆140的一个或多个组件(例如,控制单元150,传感器142)通信。自动泊车车辆140中的一个或多个组件可以经由网络130访问存储在存储器120中的数据或指令。在一些实施例中,存储器120可以直接连接到自动泊车车辆140中的一个或多个组件或与其通信(例如,控制单元150,传感器142)。在一些实施例中,存储器120可以是自动泊车车辆140的一部分。

网络130可以促进信息和/或数据的交换。在一些实施例中,自动泊车车辆140中的一个或多个组件(例如,控制单元150,传感器142)可以经由网络230将信息和/或数据发送到自动泊车车辆140中的其他组件。例如。控制单元150可以经由网络130获得/获取车辆的动态情况和/或车辆周围的环境信息。在一些实施例中,网络130可以是任何类型的有线或无线网络,或其组合。仅作为示例,网络130可以包括有线网络,有线网络,光纤网络,远程通信网络,内联网,因特网,局域网(lan),广域网(wan),无线局域网(wlan),城域网(man),广域网(wan),公共电话交换网(pstn),蓝牙网络,zigbee网络,近场通信(nfc)网络等,或其任何组合。在一些实施例中,网络130可以包括一个或多个网络接入点。例如,网络230可以包括有线或无线网络接入点,例如基站和/或互联网交换点130-1,......,130-2。通过该自动泊车车辆140的一个或多个部件可以连接到网络130以交换数据和/或信息。

网关模块110可以基于车辆的当前驾驶状态确定多个ecu(例如,ems160,eps180,esc170,scm190)的命令源。命令源可以来自人类驾驶员,来自控制单元150等,或其任何组合。

网关模块110可以确定车辆的当前泊车驾驶状态。车辆的泊车状态可以包括手动泊车状态,半自动泊车状态,自动泊车状态,错误状态等,或其任何组合。例如,网关模块110可以基于来自人类驾驶员的输入将车辆的当前泊车状态确定为手动泊车状态。又例如,当前道路状况复杂时,网关模块110可以将车辆的当前泊车状态确定为半自动泊车状态。作为又一示例,当发生异常(例如,信号中断,处理器崩溃)时,网关模块110可以将车辆的当前泊车状态确定为错误状态。

在一些实施例中,网关模块110可以判断车辆的当前泊车状态是手动泊车状态做出响应,将人类驾驶员的操作发送到多个ecu。例如,确定了车辆的当前泊车状态是手动泊车状态后,网关模块110可以做出响应将由人类驾驶员执行的对车辆130的加速器的按压操作发送到ems160。确定了车辆的当前泊车状态是自动泊车状态后,网关模块110可以做出响应将控制单元150的控制信号发送到多个ecu。例如,确定车辆的当前驾驶状态是自动泊车状态后,网关模块110可以做出响应将与转向操作相关联的控制信号发送到scm190。网关模块110可以响应于车辆的当前驾驶状态是半自动泊车状态的结论,将人驾驶员的操作和控制单元150的控制信号发送到多个ecu。当确定了车辆的当前驾驶状态是错误状态的时候,网关模块110可以做出响应将错误信号发送到多个ecu。

控制器区域网络(can总线)是个可靠的车辆总线标准(例如,基于消息的协议message-basedprotocol),其允许微控制器(例如,控制单元150)和设备(例如,ems160,eps180,esc170和/或scm190等)在没有主计算机的应用程序中彼此通信。can250可以被配置为将控制单元150与多个ecu(例如,ems160,eps180,esc170,scm190)连接。

ems160可以确定自动泊车车辆140的发动机性能。在一些实施例中,ems160可以基于来自控制单元150的控制信号确定自动泊车车辆130的发动机性能。例如。当前驾驶状态是自动泊车状态时,ems160可以基于与来自控制单元150的加速度相关联的控制信号来确定自动泊车车辆130的发动机性能。在一些实施例中,ems160可以基于人类驾驶员的操作来确定自动泊车车辆130的发动机性能。例如,当前驾驶状态是手动泊车状态时,ems160可以基于人驾驶员对加速器的按压来确定自动泊车车辆140的发动机性能。

ems160可以包括多个传感器和至少一个微处理器。多个传感器可以被配置为检测一个或多个物理信号并将一个或多个物理信号转换为电信号以进行处理。在一些实施例中,所述多个传感器可包括各种温度传感器,空气流量传感器,节气门位置传感器,泵压力传感器,速度传感器,氧传感器,负载传感器,爆震传感器等,或其任何组合。所述一个或多个物理信号可包括但不限于发动机温度,发动机进气量,冷却水温度,发动机速度等,或其任何组合。所述微处理器可以基于多个发动机控制参数确定发动机性能。所述微处理器可以基于多个电信号确定多个发动机控制参数,可以确定多个发动机控制参数以优化发动机性能。所述多个发动机控制参数可包括点火时机,燃料输送,空转气流等,或其任何组合。

节流系统165可以改变自动泊车车辆140的运动。例如,节流系统165可以基于发动机输出确定自动泊车车辆140的速度。又例如,节流系统165可以基于发动机输出引起自动泊车车辆140的加速。节流系统165可包括燃料喷射器,燃料压力调节器,辅助空气阀,温度开关,节气门,空转速度电动机,故障指示器,点火线圈,继电器等,或其任何组合。

在一些实施例中,节流系统165可以是ems160的外部执行器。节流系统165可以被配置为基于由ems160确定的多个发动机控制参数来控制发动机输出。

esc170可以改善车辆的稳定性。esc170可以通过检测和减少牵引力损失来改善车辆的稳定性。在一些实施例中,esc170可以控制制动系统175的操作以响应于确定esc170检测到转向控制的损失而帮助操纵车辆。例如,esc170可以提高制动系统175的稳定性。当车辆在上坡启动点火的时候通过刹车制动防止车辆下滑,帮助车辆顺利点火。在一些实施例中,esc170可以进一步控制发动机性能以改善车辆的稳定性。例如,esc170可在发生可能的转向控制损失时降低发动机功率。可能发生失去转向控制的场景包括:当车辆在紧急避让转弯期间滑行时,当车辆在湿滑路面上判断不良时转向不足或转向过度等时刻。

制动系统175可以控制自动泊车车辆140的运动状态。例如,制动系统175可以使自动泊车车辆140减速。作为另一个示例,制动系统175可以在一个或多个道路状况(例如,下坡)下使自动泊车车辆140停止前行。作为又一个示例,制动系统175可以在下坡上行驶时使自动泊车车辆140保持恒定速度。

制动系统175可包括机械控制部件,液压单元,动力单元(例如,真空泵),执行单元等,或其任何组合。机械控制部件可包括踏板,手制动器等。液压单元可包括液压油,液压软管,制动泵等。执行单元可包括制动钳,制动衬块,制动盘,等等。

eps280可以控制自动泊车车辆140的电力供应。eps180可以为自动泊车车辆140供应,传输和/或存储电力。例如,eps180可以包括一个或多个电池和交流发电机。交流发电机可以对电池充电,并且电池可以连接到车辆130的其他部分(例如,起动器以提供电力)。在一些实施例中,eps180可以控制对转向系统195的电力供应。例如,当车辆140确定需要进行急转弯的时候(例如,将方向盘一直向左打到底或一直向右打到底),eps180可以向转向系统195提供大电力以响应于自动车辆140产生大的转向扭矩。

scm190可以控制车辆的方向盘。scm190可以锁定/解锁车辆的方向盘。scm190可以基于车辆的当前驾驶状态来锁定/解锁车辆的方向盘。例如,scm190可以响应于确定当前驾驶状态是自动泊车状态而锁定车辆的方向盘。响应于确定当前驾驶状态是自动泊车状态,scm190可以进一步缩回转向柱轴。作为另一示例,scm190可以响应于确定当前驾驶状态是半自动泊车状态,手动驾驶状态和/或错误状态而解锁车辆的方向盘。

scm190可以基于控制单元150的控制信号来控制自动泊车车辆140的转向。控制信号可以包括与转弯方向,转弯位置,转弯角度等有关的信息,或其任何组合。

转向系统195可以操纵自动泊车车辆140。在一些实施例中,转向系统195可以基于从scm190发送的信号来操纵自动泊车车辆140。例如,转向系统195可以响应于确定当前驾驶状态是自动泊车状态,基于从scm190发送的控制单元150的控制信号来引导自动泊车车辆140。在一些实施例中,转向系统195可以基于人类驾驶员的操作来操纵自动泊车车辆140。例如,当人类驾驶员响应于确定当前驾驶状态是手动驾驶状态而将方向盘转向左方向时,转向系统195可以将自动泊车车辆130转向左方向。

图2是用来确定图1所述自动泊车汽车的测试体系的设备200的示例性硬件和软件组件的示意图。设备200可以是专门设计用于确定所述自动泊车汽车的测试体系专用计算机设备。设备200可以包括电子接收模块和电子分析模块。

所述电子接收模块可以包括i/o组件260和包括连接到与其连接的网络的com端口250,以便于数据通信。例如,所述电子接收模块可以接收图1所示自动泊车汽车的控制系统的逻辑信息。

所述电子分析模块可以获取所述控制系统逻辑结构信息,基于所述控制系统逻辑结构信息,构建所述机械电子设备的测试体系。所述电子分析模块可以包括处理器220,处理器220以一个或多个处理器的形式,用于执行计算机指令。计算机指令可以包括例如执行本文描述的特定功能的例程,程序,对象,组件,数据结构,过程,模块和功能。例如,处理器220可以获得所述控制系统逻辑结构信息。如图1所示,所述控制系统的逻辑结构信息包括所述控制系统如何根据所述多个传感输出状态决定所述多个输出信号单元的输出来控制所述汽车的运行。

在一些实施例中,处理器220可以包括一个或多个硬件处理器,例如微控制器,微处理器,精简指令集计算机(risc),专用集成电路(asic),特定于应用的指令-集处理器(asip),中央处理单元(cpu),图形处理单元(gpu),物理处理单元(ppu),微控制器单元,数字信号处理器(dsp),现场可编程门阵列(fpga),高级risc机器(arm),可编程逻辑器件(pld),能够执行一个或多个功能的任何电路或处理器等,或其任何组合。

电子分析模块可以包括内部通信总线210,程序存储和不同形式的数据存储(例如,磁盘270,只读存储器(rom)230,或随机存取存储器(ram)240)用于由计算机处理和/或发送的各种数据文件。示例性计算机设备200还可以包括存储在rom230,ram240和/或将由处理器220执行的其他类型的非暂时性存储介质中的程序指令。本公开的方法和/或过程可以作为程序指令实现。执行设备200还包括i/o组件260,支持计算机和其他组件(例如,用户界面元件)之间的输入/输出。电子分析模块还可以通过网络通信接收编程和数据。

仅仅为了说明问题,在本公开中电子分析模块中仅描述了一个处理器。然而,应当注意,本公开中的电子分析模块还可以包括多个处理器,因此,本公开中披露的操作和/或方法步骤可以如本公开所述的由一个处理器执行,也可以由多个处理器联合执行。例如,如果在本公开中电子分析模块的处理器220执行步骤a和步骤b,则应该理解,步骤a和步骤b也可以由信息处理中的两个不同处理器联合或分开执行(例如,第一处理器执行步骤a,第二处理器执行步骤b,或者第一和第二处理器共同执行步骤a和b)。

图3为一种确定自动泊车汽车的测试体系的方法300。本方法可以由图2所示的设备200来执行。包括:

s310,电子接收模块接收某自动泊车汽车的控制系统的逻辑信息。比如,i/o组件260和/或com端口接收图1所示自动泊车汽车的控制系统的逻辑。所述自动泊车汽车包括多个传感器和多个输出信号单元。所述多个传感器中的每个传感器包括一个或多个传感状态,比如发动机的温度传感器的传感状态可能包括正常运行与非正常运行,正常运行又包括发动机温度正常、发动机温度过热等等状态。所述多个输出信号单元可以包括所述控制系统中的其他组件,比如制动系统的控制输出、转向系统的控制信号输出、节流系统的控制信号输出、控制区域网络的信号等等向自动汽车的终端执行机构或者中间执行机构发送的指令的组件。所述多个输出信号单元中的每个输出信号单元包括一个或多个输出信号状态。比如通信信号的正常和非正常等状态。所述控制系统的逻辑结构信息包括所述控制系统如何根据所述多个传感输出状态决定所述多个输出信号单元的输出来控制所述汽车的运行。比如图1及其相应的说明即交代了自动泊车汽车的传感器和输出信号单元的互动逻辑关系。

s320,电子分析模块获取所述控制系统逻辑结构信息,并基于所述控制系统逻辑结构信息,构建所述机自动泊车汽车的测试体系。具体的,电子分析模块中的处理器220可以读取存储在磁盘270中的一系列程序和/或代码和/或指示并且执行这些程序和/或代码和/或指示。所述程序和/或代码和/或指示指导处理器220完成下述对自动泊车汽车的测试系统的构建。具体地,所述构建所述机械电子设备的测试体系的过程包括:

s322,将所述多个输出信号单元和多个传感器归类到预先设定的逻辑树中。

比如,图4所示为所述逻辑树400的一个实施例,所述逻辑树400包括一个根节点410、多个中间节点420以及多个叶节点430。所述多个中间节点420中的每个节点都对应于一个父节点和一个或多个子节点。比如中间节点422对应的父节点为410,同时对应于子节点424。中间节点对应的父节点为422,同时对应于子节点432。所述逻辑树400中同一层的节点称作兄弟节点。比如中间节点424同中间节点426在同一层,为兄弟节点。又比如叶节点432同叶节点434在同一层,为兄弟节点。

通过自动泊车汽车控制系统的逻辑关系,电子分析模可以将控制系统中的各级模块、单元、控制器、传感器等(具体参照具体的控制系统,比如图1所示的控制系统)进行逐级的组合分类,形成所述逻辑树。不同自动泊车汽车型号的控制系统逻辑关系不同,因此对应的逻辑树的结构和分类标准也可能不同。

比如如图4所示的逻辑树,其根节点为自动泊车汽车测试体系的测试集合systt,其子节点至少包括控制器测试(ctrt)节点、执行器测试(actt)节点、车载设备测试(veht)节点、环境测试(envt)节点和通讯测试(sigt)节点中的一个或者多个。

所述中间节点422对应着汽车的控制器测试ctrt这项任务,其子节点至少包括:路径测试(path)、避障测试(obstacle)、速度测试(speed)、转弯力矩(moment)的一种或多种。其中路径测试节点path又包括路径跟踪测试以及轨迹跟踪测试中的至少一个;避障测试节点obstacle又包括停车避障测试以及换道避障测试中的至少一个;速度测试节点speed又包括高速测试、中速测试和低速测试中的至少一个;转弯力矩测试节点至少包括大、中、和小测试中的一个。

所述执行器测试(actt)节点至少包括:引擎测试(engine)、转向测试(steering)、刹车测试(brake)中的一种或多种。其中引擎测试engine节点至少包括电池测试、电机测试、电控测试中的一种或多种;转向系统测试steering节点至少包括转向正常和转向故障两种情况;刹车测试brake节点至少包括刹车正常和刹车故障两种情况。

所述车载设备测试(veht)节点至少包括:车体测试(body)、定位测试(positioning)、感知测试(sensing)中的一种或多种。其中车体测试节点body至少包括对汽车轮胎、雨刷、喇叭、灯光的一种或者多种进行测试。定位测试节点positioning至少包括通过dgps和vslam或者其他途径进行定位测试。感知测试节点sensing至少包括通过激光雷达、相机视觉、超声波、摄像头等一种或者多种手段完成。

所述环境测试(envt)节点至少包括:路况测试(road)、天气测试(weather)、工作模式测试(model)、障碍物测试(obstacle)中的一种或者多种。其中路况测试节点road至少可以包括路面测试、道路环境测试、道路形状测试中的一种或者多种。天气测试节点weather至少可以包括对光照、雾、雨雪、沙尘、风、温度等参数中的一种或者多种进行测试。路面障碍物测试节点obstacle至少可以包括对障碍物的尺寸、相对于车辆的位置、运动状态、颜色等参数的一种或者多种进行测试。

所述通讯测试(sigt)节点至少包括:信号正常(正常)和信号故障(故障)两种测试情况。

如上所述,电子分析模块获取所述控制系统逻辑结构信息之后,会将控制逻辑所涉及的输出信号单元和传感器归类到逻辑树中300中。

s324,对每一个父节点,根据所述控制系统的逻辑结构信息,确定所述父节点的一个或多个子节点之间的逻辑关系。所述逻辑关系可以为独立关系、互斥关系、和/或组合关系中的一个或者多个。所述独立关系可以指所述多个子节点之间的状态(即,传感器的输出状态和/或输出信号单元的输出状态)相互独立,互不干涉。比如路径测试(path)、避障测试(obstacle)和速度测试(speed)之间每个测试的进行都不影响另外一个测试的进行,它们之间的关系即为独立关系。所述互斥关系可以指所述多个子节点之间的状态为非此即彼的状态。比如所述通讯测试(sigt)节点包括信号正常(正常)和信号故障(故障)两种测试情况。这两个状态非此即彼,即为互斥逻辑关系。组合关系可以指所述节点之间是独立的关系,但是所述节点在测试的过程中可测、可不测,他们的父节点的状态是一个组合关系。比如:所述的感知模块,我们假设现在有激光雷达、vslam和超声波三种设备,即a,b和c三种设备,每种设备都有两种情况即设备正常、设备异常。则感知模块测试的状态个数为可分为只测一种设备,则其状态个数为a+b+c=2+2+2=6;只测三种设备中的两种设备,则其状态个数为ab+ac+bc=2×2+2×2+2×2=12;三种设备均测时,则父节点状态个数为abc=2×2×2=8,从而,父节点的状态个数为:

a+b+c+ab+ac+bc+abc=6+12+8=(2+1)×(2+1)×(2+1)-1=26

该公式表达的含义为,每个设备测量和不测量的个数相乘后,去除每个都不测的这种情况;例如,激光雷达的状态分为测出的设备正常、设备异常和不测量三种。对于一个型号的自动驾驶汽车,其控制系统内部组成单元分类到所述逻辑树后,每个父节点下面的子节点的具体逻辑关系如何可以根据自动驾驶汽车的控制系统的逻辑结构来确定。

s326确定所述父节点的状态集合,所述测试状态集合为测试所述父节点所涉及的传感器的传感状态和输出信号单元的输出信号状态的集合。

不同逻辑关系对测试状态集合将产生不同的影响。比如,假设a,b,c,...,d,分别为一个父节点下多个子节点的状态集合,如果一个父节点的一个或多个子节点之间的逻辑关系为互斥关系,则所述父节点的状态集合可以表述为:∑(a,b,c...,d)=∑(a)+∑(b)+∑(c)+…+∑(d);如果所述父节点的一个或多个子节点之间的逻辑关系为独立关系,则所述父节点的状态集合可以表述为;∑(a,b,c...,d)=∑(a)×∑(b)×∑(c)×...×∑(d);如果所述父节点的一个或多个子节点之间的逻辑关系为组合关系,并且每个事件中的元素之间是互斥关系,则所述父节点的状态集合可以表述为:∑(a,b,c...,d)=(∑(a)+1)×(∑(b)+1)×(∑(c)+1)×...×(∑(d)+1)-1。其中所述父节点的状态集合是指如果对所述自动泊车汽车在所述父节点对应的性能做测试的话,其所有可能出现的系统参数状态,也就是对该节点上汽车性能的系统测试用例的上界。

s328根据根节点的测试状态集合,构建所述自动泊车汽车的测试体系,并依此实施对所述自动泊车汽车的系统测试。比如,所述电子分析模块提取根节点(最大的父节点)对应的状态集合。该集合即为所述自动泊车汽车整个控制系统所能出现的所有系统参数的组合。也就是说,对于任何车辆行驶所出现的状况都囊括在所述根节点的状态集合当中。该根节点的状态集合即为该自动泊车汽车的系统测试用例的上界。依据该系统测试用例的上界,所述电子分析模块即可以构建所述自动泊车汽车的测试体系。

下面用一个实施例对以上披露做一次说明。本披露分为两个步骤进行算法设计:

步骤1:针对不同控制器、执行器、车载设备、环境和通讯方式,将其按照控制策略、执行器、控制对象、环境和信号通讯测试方法进行工作方式和逻辑设计,进行控制对象、环境和信号通讯测试内容的重组。从而构建每个测试模块的同时,搭建整个自动泊车系统的测试体系。

步骤2:通过控制器、执行器、车载设备、环境和通讯测试算法计算出每个独立的测试系统的测试用例的上界。结合公式(1)的自动泊车系统的测试用例的计算方法,得出整个自动泊车系统测试用例的上界。

从控制论的角度来看,一套完整的自动泊车系统本质上是一个反馈控制系统。其系统组成如图5所示,可分为控制器、执行器、控制对象(自动泊车汽车)、环境和通信系统。这些组成元素都是相互独立的,因此在自动泊车汽车测试中,我们可以根据此种逻辑关系,将测试算例的计算和组合转化为数理统计的问题:

∑(syst)=∑(ctrt)∑(actt)∑(veht)∑(envt)∑(sigt)(1)

其中,∑(syst)为自动泊车汽车的测试用例的个数,∑(ctrt)是控制器测试用例的数量,∑(actt)为执行器测试用例的数量,∑(veht)是控制对象测试用例的数量,∑(envt)是环境因素测试用例的数量,∑(sigt)为信号通讯测试用例的数量。因测试用例是对有限场景或任务进行测试工作,0<∑(syst)≤δ。因受测量物理意义的约束,测试用例的数量必须是正整数,即∑(syst)∈n+

∑(ctrt)作为控制器测试用例的数量。所谓控制器测试即控制车辆运行的运动状态的策略测试集合。其对应干自动泊车汽车来说包含轨迹跟踪策略、路径跟踪策略、避障策略、车速和方向转弯力矩控制。在同一时刻,这四种元素之间的逻辑如图6所示,则k时刻的控制器测试用例的数量为:

根据图6中,各测试元素的逻辑关系,我们给出其测试算例的计算方法如下,假设事件为a、b、c…,当其逻辑关系是互斥,则其测试用例组合的数量为:

∑(a、b、c…)=∑(a)+∑(b)+∑(c)+∑(…)(5)

当其逻辑关系是独立,则其测试用例组合的数量为:

∑(a、b、c…)=∑(a)×∑(b)×∑(c)×∑(…)(6)

其中∑(i),(i=a,b,c…)表示事件a,b,c,…组合的数量。

式中,控制器测试中的跟踪策略、避障策略、车速和转弯力矩中的子模块,在任意时刻k中,其逻辑关系均是互斥的,因此,测试算例的数量在统计学中是累加的逻辑关系。通过所有模块元素的逻辑关系,可以根据公式(5-6)中的计算方法算出控制器测试算例的数量。值得注意的是,本控制器测试算例的统计方法适用于跟踪策略、避障策略、车速和转弯力矩元素的扩展,伴随着自动泊车技术的发展和具体任务的场景,其控制器测试结构也会在上面结构中进行扩展。

∑(actt)为执行器测试用例的数量。所谓执行器即执行控制器输出指令作用在汽车动力学中,改变车辆运动状态的力/力矩。在汽车控制中,其主要有车辆的动力系统所对应的发动机测试、车辆的转向系统所对应的转向装置测试和刹车系统所对应的车辆制动系统。在此我们根据自动泊车汽车的研究现状,将发动机默认为电动发动机,因此,在同一时刻,这三种装置之间的逻辑如图7所示,则k时刻的执行器测试用例的数量为:

根据图7中,各测试元素的逻辑关系,我们给出其测试算例的计算方法如下。假设事件为a、b、c…、d,当其逻辑关系是互斥,则其测试用例组合的数量为:

∑(a、b、c…)=∑(a)+∑(b)+∑(c)+∑(…)+∑(d)(9)

当其逻辑关系是独立,则其测试用例组合的数量为:

∑(a、b、c…)=∑(a)×∑(b)×∑(c)×∑(…)×∑(d)(10)

当其逻辑关系是组合,并且每个事件中的元素之间是互斥关系,则其测试用例组合的数量为:

其中∑(i),(i=a,b,c…d)表示事件a,b,c,…,d组合的数量。

式中,执行器测试中的发动机测试、转向系统测试和刹车系统中的子模块,在任意时刻k中,其逻辑关系均是互斥的,因此,测试算例的数量在统计学中是累加的逻辑关系。当子模块中的元素的逻辑是组合逻辑关系时,其测试算例的数量需要通过组合统计得到。通过所有模块元素的逻辑关系,可以根据公式(9-11)中的计算方法算出执行器测试算例的数量。值得注意的是,本执行器测试算例的统计方法适用于发动机测试、转向系统测试和刹车系统中的子模块元素的扩展,伴随着自动泊车技术的发展和具体任务的场景,其执行器测试结构也会在上面结构中进行扩展。

∑(veht)是控制对象测试用例的数量。对于自动泊车汽车控制系统,其控制对象是汽车。所谓控制对象测试主要是对汽车和车载设备进行测试。在此,我们根据常用汽车车载设备和车体自身测试的具体内容,定义控制对象测试的逻辑如图8所示,则k时刻的控制对象测试用例的数量为:

根据图8中,各测试元素的逻辑关系,我们给出其测试算例的计算方法如下,假设事件为a、b、c…、d,当其逻辑关系是互斥,则其测试用例组合的数量为:

∑(a、b、c…)=∑(a)+∑(b)+∑(c)+∑(…)+∑(d)(14)

当其逻辑关系是独立,则其测试用例组合的数量为:

∑(a、b、c…)=∑(a)×∑(b)×∑(c)×∑(…)×∑(d)(15)

当其逻辑关系是组合,并且每个事件中的元素之间是互斥关系,则其测试用例组合的数量为:

其中∑(i),(i=a,b,c…d)表示事件a,b,c,…,d组合的数量。

式中,控制对象系统测试中,通过所有模块元素的逻辑关系,可以根据公式(14-16)中的计算方法算出控制对象系统测试算例的数量。值得注意的是,本控制对象测试算例的统计方法适用于测试模块和子模块的扩展。伴随着自动泊车技术的发展和具体任务的场景,会在自动泊车汽车中增加各类车载传感器设备,因此其控制对象测试结构也会在上面结构中进行扩展。

∑(envt)是环境因素测试用例的数量。对于自动泊车汽车测试系统,环境测试非常重要,其能够检测自动泊车系统对不同环境的控制精度,从而完善控制算法的设计和改进。在环境测试中,我们将环境进行分类,从而根据各个分类内部和之间的逻辑关系给出测试用例的计算方法。其逻辑定义如图9所示,则k时刻的环境测试用例的数量为:

根据图9中,各测试元素的逻辑关系,我们给出其测试算例的计算方法如下,假设事件为a、b、c…、d,当其逻辑关系是互斥,则其测试用例组合的数量为:

∑(a、b、c…)=∑(a)+∑(b)+∑(c)+∑(…)+∑(d)(19)

当其逻辑关系是独立,则其测试用例组合的数量为:

∑(a、b、c…)=∑(a)×∑(b)×∑(c)×∑(…)×∑(d)(20)

当其逻辑关系是组合,并且每个事件中的元素之间是互斥关系,则其测试用例组合的数量为:

其中∑(i),(i=a,b,c…d)表示事件a,b,c,…,d组合的数量。

式中,环境测试中,通过所有模块元素的逻辑关系,可以根据公式(19—21)中的计算方法算出环境测试算例的数量。值得注意的是,本文环境测试算例的统计方法适用于测试模块和子模块的扩展。伴随着自动泊车技术的发展和具体任务的场景,自动泊车汽车会面对越来越复杂的工作环境,因此其环境测试结构也会在上面结构中进行扩展。

∑(sigt)为信号通讯测试用例的数量。对于自动泊车汽车控制系统,通讯系统测试至关重要,他是各个模块之间信息传递的枢纽,一个良好的自动泊车系统,必须要进行通讯测试,从而保障系统的运行正常。在此,我们根据常用汽车通讯系统测试的具体内容,定义信号通讯测试的逻辑如图10所示,则k时刻的信号通讯测试用例的数量为:

∑(sigt)=∑正常+∑故障(22)

根据图10中,各测试元素的逻辑关系,我们给出其测试算例的计算方法如下。假设事件为a、b、c…、d,当其逻辑关系是互斥,则其测试用例组合的数量为:

∑(a、b、c…)=∑(a)+∑(b)+∑(c)+∑(…)+∑(d)(23)

当其逻辑关系是组合,并且每个事件中的元素之间是互斥关系,则其测试用例组合的数量为:

其中∑(i),(i=a,b,c…d)表示事件a,b,c,…,d组合的数量。

式中,信号通讯测试中,通过所有模块元素的逻辑关系,可以根据公式(23-24)中的计算方法算出控制系统测试算例的数量。值得注意的是,本文信号通讯算例的统计方法适用于测试模块和子模块的扩展。伴随着自动泊车技术的发展和具体任务的场景,通讯系统会增加更多的通讯方式,保证通讯更快的同时,使得信号系统更加冗余和鲁棒,因此其信号同学测试结构也会在上面结构中进行扩展。

∑(a,b,c,...)=∑(a)+∑(b)+∑(c)+…

综上所述,在阅读本详细公开内容之后,本领域技术人员可以明白,前述详细公开内容可以仅以示例的方式呈现,并且可以不是限制性的。尽管这里没有明确说明,本领域技术人员可以理解本申请意图囊括对实施例的各种合理改变,改进和修改。这些改变,改进和修改旨在由本申请提出,并且在本申请的示例性实施例的精神和范围内。比如,本披露中确定测试体系的方法以自动泊车汽车为例,本领域的技术人员可以理解,本披露中涉及的方法和系统可以应用在其他机械电子产品中。比如所述机械电子设备至少包括复杂交通工具、机器人或手机中的一种或多种。所述复杂交通工具可以至少包括汽车、飞机、船舶和/或独轮车、两轮、三轮或者多轮运输设备中的一种或者多种。

此外,本申请中的某些术语已被用于描述本申请的实施例。例如,″一个实施例″,″实施例″和/或″一些实施例″意味着结合该实施例描述的特定特征,结构或特性可以包括在本申请的至少一个实施例中。因此,可以强调并且应当理解,在本说明书的各个部分中对″实施例″或″一个实施例″或″替代实施例″的两个或更多个引用不一定都指代相同的实施例。此外,特定特征,结构或特性可以在本申请的一个或多个实施例中适当地组合。

应当理解,在本申请的实施例的前述描述中,为了帮助理解一个特征,出于简化本申请的目的,本申请有时将各种特征组合在单个实施例、附图或其描述中。或者,本申请又是将各种特征分散在多个本发明的实施例中。然而,这并不是说这些特征的组合是必须的,本领域技术人员在阅读本申请的时候完全有可能将其中一部分特征提取出来作为单独的实施例来理解。也就是说,本申请中的实施例也可以理解为多个次级实施例的整合。而每个次级实施例的内容在于少于单个前述公开实施例的所有特征的时候也是成立的。

在一些实施方案中,表达用于描述和要求保护本申请的某些实施方案的数量或性质的数字应理解为在某些情况下通过术语″约″,″近似″或″基本上″修饰。例如,除非另有说明,否则″约″,″近似″或″基本上″可表示其描述的值的±20%变化。因此,在一些实施方案中,书面描述和所附权利要求书中列出的数值参数是近似值,其可以根据特定实施方案试图获得的所需性质而变化。在一些实施方案中,数值参数应根据报告的有效数字的数量并通过应用普通的舍入技术来解释。尽管阐述本申请的一些实施方案列出了广泛范围的数值范围和参数是近似值,但具体实施例中都列出了尽可能精确的数值。

本文引用的每个专利,专利申请,专利申请的出版物和其他材料,例如文章,书籍,说明书,出版物,文件,物品等,可以通过引用结合于此。用于所有目的的全部内容,除了与其相关的任何起诉文件历史,可能与本文件不一致或相冲突的任何相同的,或者任何可能对权利要求的最宽范围具有限制性影响的任何相同的起诉文件历史。现在或以后与本文件相关联。举例来说,如果在与任何所包含的材料相关联的术语的描述、定义和/或使用与本文档相关的术语、描述、定义和/或之间存在任何不一致或冲突时,使用本文件中的术语为准。

最后,应理解,本文公开的申请的实施方案是对本申请的实施方案的原理的说明。其他修改后的实施例也在本申请的范围内。因此,本申请披露的实施例仅仅作为示例而非限制。本领域技术人员可以根据本申请中的实施例采取替代配置来实现本申请中的发明。因此,本申请的实施例不限于申请中被精确地描述过的哪些实施例。

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