电子控制单元比较的制作方法

文档序号:23068481发布日期:2020-11-25 17:56阅读:138来源:国知局
电子控制单元比较的制作方法

本公开总体上涉及车辆电子控制单元。



背景技术:

第一车辆可包括可操作和/或监视一个或多个车辆部件的一个或多个电子控制单元。电子控制单元可从各种车辆部件接收消息并将消息传输到包括车辆计算机的各种车辆部件。车辆计算机可将来自一个或多个电子控制单元的消息存储在数据库中。第二车辆可包括与第一车辆相似或基本上相同的电子控制单元。然而,与存储在第二车辆计算机上的数据库相比,存储在第一车辆的计算机上的数据库对于相似或相同的数据元素可包括不同的程序,例如可使用不同的格式、操作次序等。



技术实现要素:

一种方法可包括:根据第一电子控制单元(ecu)被编程为经由通信总线所提供的指定基准从数据库中选择所述第一ecu的消息;生成所述第一ecu的所述消息的第一文件;根据包括所述指定基准的层次结构对所述第一文件中的所述消息进行排序;以及输出描述所述第一文件和第二文件的比较的第三文件,所述第二文件包括第二ecu的消息。

所述方法可包括根据标识符对所述第一文件中的所述消息进行排序。

所述方法可包括根据描述符对所述第一文件中的所述消息中的数据进行排序。

所述方法可包括根据所述层次结构对所述第二文件的消息进行排序。

所述第三文件可包括以下至少一项:所述第一文件和所述第二文件的并排比较;以及所述第一文件和所述第二文件之间的差异的列表。

所述方法可包括在单独的行上显示所述第一文件的每个消息以及在单独的行上显示所述第一文件的每个消息的每个基准。

所述方法可包括在与相应消息相同的行上显示所述第一文件的每个消息的元数据以及在与相应数据相同的行上显示所述第一文件的每个消息的数据的元数据。

所述层次结构可包括在相应消息下方的数据、在所述第一ecu下方的每个消息以及在所述数据库下方的所述第一ecu。

所述指定基准是所述第一ecu的名称、所述第一文件的所述消息的元数据和所述第一文件的所述消息的数据的元数据中的至少一者。

每个消息都可包括标识符和车辆部件的至少一个物理特性的数据。

一种系统可包括计算机,所述计算机包括处理器和存储器,所述存储器存储指令,所述指令可由所述处理器执行以:根据第一ecu被编程为经由通信总线所提供的指定基准从数据库中选择所述第一ecu的消息;生成所述第一电子控制单元的所述消息和所述指定基准的第一文件;根据包括所述指定基准的层次结构对所述第一文件中的所述消息进行排序;以及输出描述所述第一文件和第二文件的比较的第三文件,所述第二文件包括第二ecu的消息。

所述指令还可包括用于根据标识符对所述第一文件中的所述消息进行排序的指令。

所述指令还可包括用于根据描述符对所述第一文件中的所述消息中的数据进行排序的指令。

所述指令还可包括用于根据所述层次结构对所述第二文件的所述消息进行排序的指令。

所述第三文件可包括以下至少一项:所述第一文件和所述第二文件的并排比较;以及所述第一文件和所述第二文件之间的差异的列表。

所述指令还可包括用于在单独的行上显示所述第一文件的每个消息并且在单独的行上显示所述第一文件的每个消息的每个基准的指令。

所述指令还可包括用于在与相应消息相同的行上显示所述第一文件的每个消息的元数据以及在与相应数据相同的行上显示所述第一文件的每个消息的数据的元数据的指令。

所述层次结构可包括在相应消息下方的数据、在所述第一ecu下方的每个消息以及在所述数据库下方的所述第一ecu。

所述指定基准是所述第一ecu的名称、所述第一文件的所述消息的元数据和所述第一文件的所述消息的数据的元数据中的至少一者。

每个消息都可包括标识符和车辆部件的至少一个物理特性的数据。

附图说明

图1是示出用于将第一车辆的第一电子控制单元(ecu)与第二车辆的第二ecu进行比较的示例性系统的框图。

图2是示出在用于测试台上将第一ecu与第二ecu进行比较的示例性系统的框图。

图3是示出示例性层次结构的框图。

图4是用于将第一ecu与第二ecu进行比较的示例性过程的流程图。

具体实施方式

图1是示例性系统100的框图,所述系统包括远程计算机145,所述远程计算机被编程为从测试台150接收两个数据库155、基于指定基准从数据库155生成第一文件和第二文件以及输出第一文件和第二文件的比较。电子控制单元(ecu)120可以是在测试台150上可互换的,例如以进行单独的测试,使得每个ecu120都可将例如来自相应测试的数据输出到一个相应数据库155中。在这种情况下,每个ecu120都可例如在相应测试之后将相应数据库155传输到远程计算机145中,如下面所讨论的。用户可比较数据库155内的数据,作为技术测试的一部分和/或用于验证对ecu120中的一个进行的编程更新。然而,数据库155可具有不同的编程,使得数据库155以不同的格式存储和呈现输出,这可能使得数据库155内的数据的比较变得复杂且昂贵。远程计算机145可基于指定基准生成文件并将其根据每个ecu120的数据层次结构300(参见图3)进行组织,这允许远程计算机145快速地比较从多个ecu120输出的数据,而不管相应数据库155之间的编程差异如何。

测试台150可模拟车辆的工况。测试台150可包括诸如已知的硬件和软件(或者可以是将来开发或建造的测试装置)。测试台150可包括ecu120、传感器125和车辆部件130,所述车辆部件包括车辆子系统,例如动力传动系统子系统、制动子系统、转向子系统等。“电子控制单元”(ecu)是一种装置,其包括处理器和存储器,所述存储器包括编程(即,所述存储器存储可由处理器执行的指令)以控制一个或多个车辆部件130。

ecu120一般被布置用于在车辆通信网络上进行通信,所述车辆通信网络可包括控制器局域网(can)等,和/或其他有线和/或无线机制。经由通信网络,ecu120可从测试台150上的各种装置(例如,传感器125)接收消息(例如,can消息)。例如,传感器125可向ecu120提供关于正测试的部件130的数据。如下面提及的,各种控制器和/或传感器125可经由通信网络向ecu120提供数据。另外,ecu120可例如经由网络140向远程计算机145传输消息,如下面所讨论的。

ecu120可收集和处理关于正测试的车辆部件130的数据。基于数据,ecu120可在测试期间致动车辆部件130。例如,正测试的车辆子系统可以是动力传动系统子系统、制动子系统、转向子系统等。在这些情况下,ecu120可以是动力传动系统控制器、制动控制器、转向控制器等。ecu120可控制正测试的车辆子系统的车辆部件130的操作。例如,所述操作可以是控制转向、控制制动、控制人机接口等。

第一ecu122可安装在测试台150上,用于车辆子系统的第一测试。在第一测试之后,第一ecu122可用第二ecu124替换,例如用于第二测试。作为另一示例,系统100可包括安装在第二测试台150上的第二ecu124,使得可同时执行第一测试和第二测试。第一ecu122和第二ecu124可以是相同类型的ecu120。换句话说,第一ecu122和第二ecu124可监视和/或控制相同的车辆子系统,例如,动力传动系统子系统、制动子系统、转向子系统等。

每个ecu120都可根据相应数据库155的格式(如下面所讨论的)从在测试台150上正测试的车辆子系统向相应数据库155输出数据。例如,每个ecu120都可接收与相应ecu120相对应的相应数据库155的格式。换句话说,每个ecu都可接收数据库155的一部分并且根据数据库155的所接收部分的格式来存储数据。

每个ecu120都可包括名称。在这种背景下,“名称”是与特定ecu120相对应的数据串,即,ecu120的标识符。换句话说,名称识别特定ecu。名称可以是例如字母数字位串、二进制数位串、十六进制数位串等。在本公开的背景下,第一ecu122和第二ecu124可具有相同的名称。远程计算机145可基于通过名称识别ecu120来与ecu120进行通信,如下面所讨论的。

传感器125可包括多种装置。例如,测试台150上的各种控制器可作为传感器125操作,以经由有线通信向ecu120提供数据,例如,与子系统和/或部件状态有关的数据。此外,其他传感器125可包括相机、运动检测器等,即用于提供数据以评估部件位置、部件状况等的传感器125。传感器125可包括但不限于雷达、激光雷达和/或超声换能器。

测试台150可测试一个或多个车辆部件130。例如,测试台150可包括由测试台150模拟的子系统的每个车辆部件135。作为另一示例,测试台150可包括构成子系统的一部分的车辆部件130、一个车辆部件135等。在这种背景下,每个车辆部件135都包括适于执行机械功能或操作(诸如使车辆移动、使车辆减慢或停止、使车辆转向等)的一个或多个硬件部件。部件130的非限制性示例包括推进部件(其包括例如内燃发动机和/或电动马达等)、变速器部件、转向部件(例如,其可包括方向盘、转向齿条等中的一者或多者)、制动部件、停车辅助部件、自适应巡航控制部件、自适应转向部件、可移动座椅等等。

网络140表示测试台150上的ecu120可借助于其与远程服务器145进行通信的一种或多种机制。因此,网络140可以是各种有线或无线通信机制中的一者或多者,包括有线(例如,电缆和光纤)和/或无线(例如,蜂窝、无线、卫星、微波和射频)通信机制的任何期望组合以及任何期望的网络拓扑(或当利用多个通信机制时的多个拓扑)。示例性通信网络140包括提供数据通信服务的无线通信网络(例如,使用低功耗(ble)、ieee802.11、车辆对车辆(v2v)(诸如专用短程通信(dsrc)等))、局域网(lan)和/或广域网(wan),包括因特网。

远程计算机145包括诸如已知的处理器和存储器。存储器包括一种或多种形式的计算机可读介质,并且存储可由远程计算机145执行以用于执行各种操作(包括如本文所公开的操作)的指令。

在测试台150上进行第一测试之后,远程计算机145可从第一ecu122接收数据库155。在这些情况下,第一ecu122根据数据库155的编程(即,格式)将来自第一测试的数据输出到数据库155中。在测试台150上进行第二测试之后,远程计算机145可从第二ecu124接收数据库155。在这些情况下,第二ecu124根据数据库155的编程(即,格式)将来自第一测试的数据输出到数据库155中。第一ecu122所接收的数据库155的格式可不同于第二ecu124所接收的数据库155的格式。

远程计算机145可例如从用户接收指定基准。在这种背景下,“指定基准”是与例如用户期望的包含在特定ecu120内的特定数据相对应的数据串。指定基准可以是例如字母数字位串、二进制数位串、十六进制数位串等。指定基准包括在数据层次结构300(图3)中。例如,指定基准可以是ecu120的名称、消息标识符(如下面所讨论的)、消息的元数据(如下面所讨论的)和消息数据的元数据(如下面所讨论的)中的至少一者。

远程计算机145可接收一个或多个指定基准。远程计算机145可基于指定基准从每个ecu120中选择一个或多个消息160(如下面所讨论的)。例如,如果指定基准仅识别ecu120,则远程计算机145可从所识别的ecu120中选择所有消息160。在这些情况下,指定基准可以是ecu120的名称。作为另一示例,如果指定基准识别了ecu120和ecu120内的特定消息160,则远程计算机145可选择所识别的ecu120的特定消息160。远程计算机145根据相同的指定基准选择第一ecu122的消息160和第二ecu124的消息160。

远程计算机145可基于来自第一ecu122的消息160生成第一文件,并基于来自第二ecu124的消息160生成第二文件。换句话说,远程计算机145从第一测试中过滤数据库155以获得与指定基准匹配的第一ecu122的消息160并将消息160输入到第一文件中。类似地,远程计算机145从第二测试中过滤数据库155以获得与指定基准匹配的第二ecu124的消息160并将消息160输入到第二文件中。远程计算机145根据数据层次结构300对第一文件和第二文件进行排序,如下面关于图3进一步讨论的。

远程计算机145可将第一文件与第二文件进行比较。由于远程计算机145根据数据层次结构300对第一文件和第二文件进行了排序,因此远程计算机145可快速对第一文件和第二文件进行比较。另外,远程计算机145可基于第一文件与第二文件的比较生成第三文件并且输出第三文件例如以供用户查看。第三文件可包括以下至少一项:第一文件和第二文件的并排比较;以及第一文件和第二文件之间的差异的列表。例如,第三文件可在第二文件旁边显示第一文件,例如以允许用户容易地将第一文件与第二文件进行比较。另外,第三文件可包括对第一文件和第二文件之间的所识别的差异的视觉指示,这例如通过突出显示文件之间不同的每一行、通过更改文件之间不同的字符的颜色等来实现。

图2是示例性系统200的框图,所述系统包括远程计算机145,所述远程计算机被编程为从第一车辆105的车辆计算机115接收数据库155和从第二车辆110的车辆计算机115接收数据库155、基于与指定基准匹配的数据库155中的数据生成第一文件和第二文件并将第一文件与第二文件进行比较。

每个车辆105、110都包括车辆计算机115、一个或多个ecu120、传感器125、车辆部件130和通信总线135。经由网络140,通信总线135允许车辆计算机115与远程计算机145进行通信。

车辆计算机115包括诸如已知的处理器和存储器。存储器包括一种或多种形式的计算机可读介质,并存储可由车辆计算机115执行的用于执行包括如本文所公开的各种操作的指令。

车辆计算机115可例如经由车辆网络(诸如下面进一步描述的通信总线135)通信地耦合到车辆中的每个ecu120。车辆计算机115一般被布置用于在车辆通信网络上进行通信,所述车辆通信网络可包括车辆中的通信总线135,诸如控制器局域网(can)等,和/或其他有线和/或无线机制。

如上面所讨论的,每个ecu120都可接收数据库155的一部分的格式。车辆计算机115可例如在车辆计算机115的存储器中存储每个ecu120的数据库155。在这种情况下,车辆计算机115将用于各ecu120的数据库155组合成用于车辆的一个集合数据库155。例如,车辆计算机115可从每个ecu120接收数据并且将数据存储在数据库155中。车辆计算机115可例如经由网络140将数据库155传输到远程计算机145,如下面进一步描述的。

ecu120一般被布置用于在车辆通信网络上进行通信,所述车辆通信网络可包括车辆中的通信总线135,诸如控制器局域网(can)等,和/或其他有线和/或无线机制。经由车辆网络,ecu120可向车辆中的各种装置(例如,车辆计算机115)传输消息和/或从各种装置(例如,传感器125、致动器、人机接口(hmi)等)接收消息(例如,can消息)。可替代地或另外地,在每个ecu120实际上包括多个装置的情况下,车辆通信网络可用于在本公开中表示为每个ecu120的装置之间的通信。此外,如下面提及的,各种控制器和/或传感器125可经由车辆通信网络向ecu120提供数据。

ecu120中的每一个可收集和处理关于一个或多个车辆部件130的数据。基于数据,ecu120中的一者或多者可致动一个或多个车辆部件130。例如,ecu120可以是动力传动系统控制器、制动控制器、转向控制器等。ecu120可控制一个或多个车辆部件130的操作。例如,所述操作可以是控制车辆转向、控制车辆推进、控制人机接口等。

传感器125可包括如上面所讨论的多种装置。例如,车辆中的各种控制器可作为传感器125操作,以经由车辆网络向ecu120提供数据,例如与车辆速度、加速度、位置、子系统和/或部件状态等有关的数据。另外,车辆可包括如上面所讨论的多个车辆部件130,例如推进部件(其包括例如内燃发动机和/或电动马达等)、变速器部件、转向部件(例如,其可包括方向盘、转向齿条等中的一者或多者)、制动部件、停车辅助部件、自适应巡航控制部件、自适应转向部件、可移动座椅等。

网络140表示车辆计算机115可通过其与远程计算机145进行通信的一种或多种机制。网络140可与以上识别的网络140相同。因此,网络140可以是各种有线或无线通信机制中的一者或多者,包括有线(例如,电缆和光纤)和/或无线(例如,蜂窝、无线、卫星、微波和射频)通信机制的任何所需组合以及任何所需的网络拓扑(或当利用多个通信机制时的多个拓扑)。

在图2的示例中,远程计算机145可从第一车辆105的车辆计算机115接收数据库155并且从第二车辆110的车辆计算机115接收数据库155。远程计算机145可基于指定基准从数据库155中选择消息160以分别生成第一文件和第二文件。由于每个数据库155都包括来自多个ecu120的消息160,因此指定基准可例如通过识别ecu120的名称来识别每个数据库155中的一个ecu120。另外,指定基准可例如识别特定消息160。远程计算机145可将第一文件与第二文件进行比较、基于比较来生成第三文件并且输出第三文件,如上面所讨论的。

图3是示例性数据层次结构300的框图。数据层次结构300是具有层次关系的数据模型并且可包括识别相应ecu120的数据库155元素305、ecu120元素310、消息160元素315(即,如图所示,在数据层次结构300中的ecu120元素310下面)以及相应消息160的数据170元素320的数据。数据层次结构300可以例如是树状数据结构,其包括具有子节点的双亲节点。双亲节点可与子节点具有一对多的关系。换句话说,双亲节点可链接到多个子节点,而每个子节点都链接到一个双亲节点。

数据库155可包括用于存储、访问和检索各种数据的各种机制。例如,数据库155可以是关系数据库管理系统(rdbms)。除了用于创建、存储、编辑和执行所存储程序的语言(诸如pl/sql语言)之外,rdbms一般还采用结构化查询语言(sql)。作为另一示例,在本公开的背景下,数据库155可以是专有格式的应用程序数据库、以各种格式存储在文件系统中的一组文件等。数据库155可存储在中央计算机(例如,服务器、车辆计算机115等)上。例如,当对ecu120初始编程时,中央计算机可将数据库155的一部分传输到相应ecu120。具体地,每个ecu120都可接收与相应ecu120相对应的数据库155的部分。每个ecu120都可根据数据库155的相应部分的格式从车辆子系统向数据库155的相应部分输出数据。

可例如基于车辆的性能需求、ecu120供应商更新等利用修改的或修订的程序将数据库155更新到新版本,使得数据库155的格式在数据库155的版本之间可不同。换句话说,数据库155的多个版本可包括共有的数据元素,而且还包括数据库155的第一版本和第二版本不共有的相应数据元素。每个数据库155都可根据以下各项来存储数据:指定每个ecu120被编程来提供的一个或多个数据的格式;数据元素的格式,即长度和/或数据类型,诸如字母数字串的长度和/或值的可能范围;以及一个或多个消息中的数据元素的位置。不同版本的数据库155可识别相应ecu120被编程来获得的不同数据(例如,接收不同版本的数据库155的ecu120可基于不同数据170输出相同的消息160)和/或可针对指定数据识别不同的存储位置。

每个数据库155都可包括版本标识符或名称。在这种背景下,“版本名称”是与特定数据库155相对应的数据串,即,数据库155的标识符。版本名称可以是例如字母数字位串、二进制数位串、十六进制数位串等。在本公开的背景下,远程计算机145可在相应文件中显示数据库155的版本名称。

在数据库层次结构300中无双亲节点或双亲节点为空的情况下,数据库155元素305可以是数据层次结构300的根,即在所有其他元素310、315、320上方。数据库155元素305可以是相应数据库155的版本名称。例如,远程计算机145可在第一文件和第二文件中显示相应数据库155的版本名称。

数据库155将格式提供给每个ecu120,并且每个ecu120都根据所接收的格式将数据输出到数据库155中。例如,每个ecu120都可接收数据库155的格式、根据数据库155的格式存储数据并且将所存储的数据以数据库155的格式传输到车辆计算机115。在这些情况下,可根据数据库155的格式将来自每个ecu120的数据上载到数据库155。因此,ecu120元素310是数据层次结构300中的数据库155元素305的子元素。ecu120元素310可根据它们在数据层次结构300中的位置来存储,并且另外的ecu120元素310(其为相同双亲数据库155元素305的子元素)可根据排序规则来存储。例如,远程计算机145可根据ecu120的相应名称对ecu120元素310进行排序。例如,远程计算机145可在第一文件和第二文件中显示相应ecu120的名称。远程计算机145可通过例如依字母顺序排列ecu120的名称、按升序或降序排列名称等进行排序。通过例如按名称对ecu120元素310进行排序,远程计算机145可在第一文件和第二文件中的对应行上显示相同的ecu120元素310,这允许远程计算机145比其他方式更快地比较相应ecu120的消息160。

每个ecu120都例如根据数据库155的格式来输出消息160。由ecu120基于例如从传感器125、车辆部件130等所接收的数据170来输出消息160。每个消息160都可指示车辆部件135的状态。例如,消息160可指示车辆部件135正按预期操作。作为另一示例,消息160可指示车辆部件135正不适当地操作,例如在预期操作范围之外操作。因此,消息160元素315是数据层次结构300中的相应ecu120元素310的子元素。

每个消息160都包括标识符和车辆部件135的至少一个特性的数据170(如下面所讨论的)。在这种背景下,“标识符”是基本上唯一地对应于特定消息160的数据串。换句话说,标识符识别特定消息160。标识符可以是例如字母数字位串、二进制数位串、十六进制数位串等。在本公开的背景下,标识符可指示消息160的优先级。例如,具有带较低二进制值的标识符的消息160可比具有带较高二进制值的标识符的消息160接收更高的优先级。在这种情况下,在与具有带较高二进制值的标识符的消息160的冲突期间,可传输具有带较低二进制值的标识符的消息160,所述消息可被延迟直到不存在冲突。

消息160元素315可与它们在数据层次结构300中的位置的指针或描述一起存储;此外,消息160元素315(其为相同双亲ecu120元素310的子元素)可根据排序规则来存储。例如,远程计算机145可根据消息160的标识符对消息160元素315进行排序。远程计算机145可例如通过依字母顺序排列消息160的标识符、按升序或降序排列标识符等进行排序。对数据层次结构300内的消息160元素315进行排序可允许远程计算机145快速对第一ecu122的消息160和第二ecu124的消息160进行比较。远程计算机145可将每个消息160元素315存储在相应文件的单独的行上。由于远程计算机145根据标识符来对第一文件和第二文件的消息160元素315进行排序,因此相应的消息160元素315可位于第一文件和第二文件的对应行上,这允许远程计算机145比根据相应数据库155的格式比较消息160更快地比较消息160。

另外,每个消息160都可包括一个或多个消息元数据165。当由ecu120生成消息160时,消息元数据165可提供消息160的元数据或属性,例如,车辆、车辆部件135的状况等。元数据165可指示例如消息160的来源、消息160的目的地、生成消息160的时间戳、消息160的数据类型等。元数据165可包括例如字母数字位串、二进制数位串、十六进制数位串等。远程计算机145可在与第一文件和第二文件中的相应消息160元素315相同的行上显示元数据165。换句话说,远程计算机145可在相应文件中的相应消息160元素315旁边显示元数据165。

ecu120可例如从一个或多个传感器125接收原始数据,并将原始数据转换成数据170。数据170指示车辆部件135的至少一个特性。例如,数据170可指示车辆部件135的速度、位置、输出等。数据170可包括一个或多个数据。在这种背景下,每个基准都可指示车辆部件135的一个特性。因此,数据170元素320是数据层次结构300中的相应消息160元素315的子元素。

每个基准170都包括描述符。在这种背景下,“描述符”是与特定基准相对应的数据串,即,该基准的标识符。换句话说,描述符识别特定基准。描述符可以是例如字母数字位串、二进制数位串、十六进制数位串等。在本公开的背景下,描述符可指示例如车辆部件135的物理特性。

数据170元素320可根据它们在数据层次结构300中的位置的指针或描述进行存储或与其一起存储;此外,数据170元素320(其为相同双亲消息160元素315的子元素)可根据排序规则来存储。例如,远程计算机145可根据基准的描述符来对数据170元素320进行排序。远程计算机145可例如通过依字母顺序排列基准的描述符、以升序或降序排列描述符等来进行排序。对数据层次结构300内的数据170元素320进行排序可允许远程计算机145快速对第一ecu122的一个消息160的数据170和第二ecu124的同一消息160的数据170进行比较。远程计算机145可将每个数据170元素320存储在相应文件的单独的行上。由于远程计算机145根据标识符来对第一文件和第二文件的数据170元素320进行排序,因此相应的数据元素320可位于第一文件和第二文件的相同对应行上,这允许远程计算机145比根据相应数据库155的格式比较消息170更快地比较消息170。

另外,每个基准可通过元数据175中的一个或多个属性来描述。元数据175可提供关于例如由传感器125获得的数据170的元数据。元数据175可指示例如范围、分辨率、单位、离散值、缩放因子、数位位置、占用的位数等。元数据175可以是例如字母数字位串、二进制数位串、十六进制数位串等。远程计算机145可在与第一文件和第二文件中的相应数据相同的行上显示元数据175。换句话说,远程计算机145可在相应文件中的相应数据170旁边显示元数据175。

图4示出了一种示例性过程的流程图,所述示例性过程可在远程计算机145中实现以从第一车辆105的车辆计算机115接收数据库155和从第二车辆110的车辆计算机115接收数据库155、基于指定基准生成第一文件和第二文件、基于第一文件和第二文件的比较生成第三文件并输出第三文件。

过程400从框410开始,其中远程计算机145从第一ecu122接收一个或多个消息160。例如,远程计算机145可与第一ecu122进行通信(例如,直接或间接通信),使得远程计算机145可根据数据库155的格式从第一ecu122接收消息160(包括数据170)。远程计算机145可例如在第一ecu122包括在测试台150中时直接从第一ecu122接收消息160。在这种情况下,第一ecu122可例如经由有线连接将消息160传输到远程计算机145。替代地,远程计算机145可从第一车辆105的车辆计算机115接收消息160。在这种情况下,第一ecu122可经由车辆网络将消息160传输至车辆计算机,并且车辆计算机115可经由网络140将数据库155传输至远程计算机145。第一ecu122可根据数据库155的格式将数据输出到数据库155中。

接下来,在框415中,远程计算机145接收指定基准。例如,用户可将指定基准输入到远程计算机145中。远程计算机145可包括一个或多个输入字段,用户可在所述输入字段中输入指定基准。例如,用户可输入串(例如,数字串、字母数字串等)作为指定基准。指定基准可识别数据库155内的数据,例如消息160标识符、数据170描述符、消息160元数据165、数据170元数据175等。另外,在远程计算机145从车辆计算机115接收数据库155的情况下,指定基准可另外识别ecu120的名称。用户可将一个或多个指定数据输入到远程计算机145中。

接下来,在框420中,远程计算机145从第一ecu122选择消息160。例如,远程计算机145可在数据库155中搜索并选择与指定基准匹配(即,包括相同数据串)的消息160。也就是说,远程计算机145可基于指定基准来过滤数据库155以识别消息160。在这种背景下,“选择”是指从数据库155进行复制而不更改数据库155或其中的数据。当ecu120在第一车辆105中时,指定基准可包括第一ecu122的名称和消息160标识符。在这种情况下,远程计算机145可在数据库155中搜索并选择由第一ecu122所输出的指定消息160。当ecu120在测试台150上时,指定基准可包括消息160标识符。在这种情况下,远程计算机145可在第一ecu122所接收的数据库155的一部分中搜索并选择指定消息160。

接下来,在框425中,远程计算机145基于所选择的消息160生成第一文件。第一文件可与数据库155分开。换句话说,当远程计算机145生成第一文件时,远程计算机145通常不更改或修改数据库155。远程计算机145将所选择的消息160插入第一文件中。远程计算机145可根据数据层次结构300来格式化第一文件。换句话说,远程计算机145可将从数据库155所获得的数据排序成与数据库155的格式不同的格式。例如,第一文件可将数据库155元素305显示为根(即,最高节点),并且将ecu120元素310显示为数据库155元素305的子节点。换句话说,第一文件可例如在数据库155的版本名称下方的单独的行上显示数据库155的版本名称和每个ecu120的名称。另外,第一文件可将消息160元素315显示为相应ecu120元素310的子节点,并且将数据170元素320显示为相应消息160元素315的子节点。例如,每个消息160元素315都可显示在相应ecu120元素315下方的单独的行上,并且每个数据170元素320都可显示在相应消息160元素315下方的单独的行上。

接下来,在框430中,远程计算机145根据排序规则(例如,字母顺序、升序或降序等)对第一ecu122的消息160元素315进行排序。例如,远程计算机145可根据消息160标识符160对消息元素315进行排序。远程计算机145可基于排序规则在第一文件中显示消息160元素315。

接下来,在框435中,远程计算机145根据排序规则(例如,字母顺序、升序或降序等)对每个相应消息160的数据170元素320进行排序。例如,远程计算机145可根据数据170描述符对数据170元素320进行排序。远程计算机145可基于排序规则在第一文件中显示数据170元素320。

接下来,在框440中,远程计算机145从第二ecu124接收一个或多个消息160。例如,远程计算机145可与第二ecu124进行通信,使得远程计算机145可根据数据库155的格式从第一ecu122接收消息160(包括数据170)。远程计算机145可例如在第二ecu124在测试台150上时从第二ecu124接收消息160。在这种情况下,第二ecu124可例如经由有线连接将消息160传输到远程计算机145。替代地,远程计算机145可从第二车辆110的车辆计算机115接收消息160。在这种情况下,第二ecu124可经由车辆网络将消息160传输至车辆计算机,并且车辆计算机115可经由网络140将数据库155传输至远程计算机145。第二ecu124可根据数据库155的格式将数据输出到数据库155中。远程计算机145可以与远程计算机145从第一ecu122接收数据库155相同或不同的方式从第二ecu124接收数据库155。来自第二ecu124的数据库155可以是与来自第一ecu122的数据库155不同的版本。

接下来,在框445中,远程计算机145从第二ecu124选择消息160。例如,远程计算机145可在数据库155中搜索并选择与指定基准匹配(即,包括相同数字串或字母数字串)的消息160。也就是说,远程计算机145可基于指定基准来过滤数据库155以识别消息160。在这种背景下,“选择”是指从数据库155进行复制而不更改数据库155或其中的数据。当ecu120在第二车辆110中时,指定基准可包括第二ecu124的名称和消息160标识符。在这种情况下,远程计算机145可在数据库155中搜索并选择由第二ecu124所输出的指定消息160。当ecu120在测试台150上时,指定基准可包括消息160标识符。在这种情况下,远程计算机145可在第二ecu124所接收的数据库155的一部分中搜索并选择指定消息160。

接下来,在框450中,远程计算机145基于所选择的消息160生成第二文件。第二文件可与数据库155分开。换句话说,当远程计算机145生成第二文件时,远程计算机145可不更改数据库155。远程计算机145将所选择消息160插入第二文件中。远程计算机145可根据数据层次结构300来格式化第二文件。换句话说,远程计算机145可以相同的方式对第一文件和第二文件进行排序。在这些情况下,每个文件都包括在对应行上显示的相同双亲节点和子节点。

接下来,在框455中,远程计算机145根据排序规则(例如,字母顺序、升序或降序等)对第二ecu124的消息160元素315进行排序。所述排序规则对于第二ecu124和第一ecu122是相同的,即,第一文件和第二文件的消息160元素315的排序相同。在这些情况下,每个文件都在对应行上为相应ecu120显示相同的消息160元素315。

接下来,在框460中,远程计算机145根据排序规则(例如,字母顺序、升序或降序等)对每个相应消息160的数据170元素320进行排序。所述排序规则对于第二ecu124和第一ecu122是相同的,从而导致在相应文件的对应行上显示或包括针对相应消息160的相同数据170元素320。

接下来,在框465中,远程计算机145例如根据已知的“diff”程序来对第一文件与第二文件进行比较。远程计算机145可例如对第一文件与第二文件进行比较以确定文件之间的行和/或字符差异。由于第一文件和第二文件是根据数据层次结构300构造的,因此远程计算机145可快速对文件的对应行进行比较以确定文件之间的差异。

接下来,在框470中,远程计算机145生成第三文件。第三文件显示第一文件和第二文件之间的比较。第三文件可例如将第一文件显示在第二文件旁边(例如,并排显示)。因此,第三文件可显示整个第一文件和第二文件,并在文件的对应行之间突出显示所识别的差异。作为另一示例,第三文件可显示第一文件和第二文件之间的差异的列表。在该示例中,第三文件仅显示第一文件和第二文件的对应行,所述对应行包括由远程计算机145所识别的差异,即第一文件和第二文件的一部分。远程计算机145可例如通过突出显示包括所识别的差异的整行、通过改变所识别的差异的文本颜色等来显示在第一文件和第二文件之间的所识别的差异。

接下来,在框475中,远程计算机145例如将第三文件输出给用户。例如,远程计算机145可电子地显示第三文件,使得用户可在远程计算机145上查看第三文件。在框475之后,所述过程结束。

如本文所使用,副词“基本上”意指形状、结构、测量值、数量、时间等因为材料、机加工、制造、数据传输、计算速度等的缺陷而可能偏离精确描述的几何形状、距离、测量值、数量、时间等。

一般来讲,所描述的计算系统和/或装置可采用许多计算机操作系统中的任一者,包括但绝不限于以下版本和/或变型:ford应用程序、applink/smartdevicelink中间件、microsoft操作系统、microsoft操作系统、unix操作系统(例如,由加州红木海岸的oracle公司发布的操作系统)、由纽约阿蒙克市的internationalbusinessmachines发布的aixunix操作系统、linux操作系统、由加州库比蒂诺的appleinc.发布的macosx和ios操作系统、由加拿大滑铁卢的blackberry,ltd.发布的blackberryos以及由google,inc.和开放手机联盟开发的android操作系统,或由qnxsoftwaresystems供应的car信息娱乐平台。计算装置的示例包括但不限于:车载式车辆计算机、计算机工作站、服务器、台式机、笔记本电脑、膝上型计算机或手持式计算机或者某一其他计算系统和/或装置。

计算机和计算装置一般包括计算机可执行指令,其中所述指令可由一个或多个计算装置(诸如以上列出的那些)执行。计算机可执行指令可由使用各种编程语言和/或技术创建的计算机程序编译或解译,所述编程语言和/或技术包括但不限于单独或组合的javatm、c、c++、matlab、simulink、stateflow、visualbasic、javascript、perl、html等。这些应用程序中的一些可在虚拟机(诸如java虚拟机、dalvik虚拟机等)上编译和执行。一般来讲,处理器(例如,微处理器)例如从存储器、计算机可读介质等接收指令,并且执行这些指令,由此执行一个或多个过程,包括本文所述的一个或多个过程。可使用各种计算机可读介质来存储和传输此类指令和其他数据。计算装置中的文件一般是存储在诸如存储介质、随机存取存储器等计算机可读介质上的数据集合。

存储器可包括计算机可读介质(也称为处理器可读介质),所述计算机可读介质包括参与提供可由计算机(例如,由计算机的处理器)读取的数据(例如,指令)的任何非暂时性(例如,有形)介质。此类介质可采用许多形式,包括但不限于非易失性介质和易失性介质。非易失性介质可以包括例如光盘或磁盘以及其他持久性存储器。易失性介质可包括例如通常构成主存储器的动态随机存取存储器(dram)。此类指令可由一种或多种传输介质传输,所述一种或多种传输介质包括同轴电缆、铜线和光纤,包括有包括耦合到ecu的处理器的系统总线的电线。计算机可读介质的常见形式包括例如软盘、软磁盘、硬盘、磁带、任何其他磁性介质、cd-rom、dvd、任何其他光学介质、穿孔卡、纸带、任何其他具有孔图案的物理介质、ram、prom、eprom、flash-eeprom、任何其他存储芯片或盒式磁带、或者计算机可从中读取的任何其他介质。

数据库、数据存储库或本文所描述的其他数据存储装置可包括用于存储、访问和检索各种数据的各种机构,包括分层数据库、文件系统中的文件集、呈专用格式的应用程序数据库、关系型数据库管理系统(rdbms)等。每个此类数据存储装置总体上包括在采用计算机操作系统(诸如以上所提及那些的一种)的计算装置内,并且经由网络以各种方式中的任一种或多种来访问。文件系统可从计算机操作系统访问,并且可包括以各种格式存储的文件。除了用于创建、存储、编辑和执行所存储程序的语言(诸如上文提到的pl/sql语言)之外,rdbms一般采用结构化查询语言(sql)。

在一些示例中,系统元件可被实施为一个或多个计算装置(例如,服务器、个人计算机等)上的存储在与其相关联的计算机可读介质(例如,磁盘、存储器等)上的计算机可读指令(例如,软件)。计算机程序产品可包括存储在计算机可读介质上以用于执行本文所述的功能的此类指令。

关于本文所述的介质、过程、系统、方法、启发等,应理解,虽然此类过程等的步骤已被描述为根据某一有序的顺序发生,但是可通过以与本文所述的次序不同的次序执行所述步骤来实践此类过程。还应理解,可同时执行某些步骤,可添加其他步骤,或者可省略本文中描述的某些步骤。换句话说,本文中对过程的描述是出于说明某些实施例的目的而提供的,并且绝不应被解释为限制权利要求。

因此,应理解,以上描述旨在是说明性的而非限制性的。在阅读以上描述时,除了所提供的示例之外的许多实施例和应用程序对于本领域的技术人员将是显而易见的。不应参照以上描述来确定本发明的范围,而是替代地应参照所附权利要求连同此类权利要求所享有的等效物的全部范围来确定本发明的范围。预期并期望本文所论述的技术未来将有所发展,并且所公开的系统和方法将并入此类未来实施例中。总之,应理解,本发明能够进行修改和变化,并且仅受所附权利要求的限制。

除非本文做出相反的明确指示,否则权利要求中使用的所有术语旨在给出如本领域的技术人员所理解的普通和通常的含义。具体地,除非权利要求叙述相反的明确限制,否则使用诸如“一/一个”、“该”、“所述”等单数冠词应被解读为叙述所指示的要素中的一者或多者。

根据本发明,一种方法包括:根据第一电子控制单元(ecu)被编程为经由通信总线所提供的指定基准从数据库中选择所述第一ecu的消息;生成所述第一ecu的所述消息的第一文件;根据包括所述指定基准的层次结构对所述第一文件中的所述消息进行排序;以及输出描述所述第一文件和第二文件的比较的第三文件,所述第二文件包括第二ecu的消息。

根据一个实施例,本发明的特征还在于根据标识符对所述第一文件中的所述消息进行排序。

根据一个实施例,本发明的特征还在于根据描述符对所述第一文件中的所述消息中的数据进行排序。

根据一个实施例,本发明的特征还在于根据所述层次结构对所述第二文件的所述消息进行排序。

根据一个实施例,所述第三文件包括以下至少一项:所述第一文件和所述第二文件的并排比较;以及所述第一文件和所述第二文件之间的差异的列表。

根据一个实施例,本发明的特征还在于在单独的行上显示所述第一文件的每个消息以及在单独的行上显示所述第一文件的每个消息的每个基准。

根据一个实施例,本发明的特征还在于在与相应消息相同的行上显示所述第一文件的每个消息的元数据以及在与所述相应基准相同的行上显示所述第一文件的每个消息的每个基准的元数据。

根据一个实施例,所述层次结构包括在相应消息下方的数据、在所述相应ecu下方的每个消息以及在所述数据库下方的所述ecu。

根据一个实施例,所述指定基准是所述第一ecu的名称、所述第一文件的所述消息的元数据和所述第一文件的所述消息的数据的元数据中的至少一者。

根据一个实施例,每个消息都包括标识符和车辆部件的至少一个特性的数据。

根据本发明,提供一种系统,所述系统具有计算机,所述计算机包括处理器和存储器,所述存储器存储指令,所述指令可由所述处理器执行以:根据第一电子控制单元(ecu)被编程为经由通信总线所提供的指定基准从数据库中选择所述第一ecu的消息;生成所述第一电子控制单元的所述消息和所述指定基准的第一文件;根据包括所述指定基准的层次结构对所述第一文件中的所述消息进行排序;以及输出描述所述第一文件和第二文件的比较的第三文件,所述第二文件包括第二ecu的消息。

根据一个实施例,所述指令还包括用于根据标识符对所述第一文件中的所述消息进行排序的指令。

根据一个实施例,所述指令还包括用于根据描述符对所述第一文件中的所述消息中的数据进行排序的指令。

根据一个实施例,所述指令还包括用于根据所述层次结构对所述第二文件的所述消息进行排序的指令。

根据一个实施例,所述第三文件包括以下至少一项:所述第一文件和所述第二文件的并排比较;以及所述第一文件和所述第二文件之间的差异的列表。

根据一个实施例,所述指令还包括用于在单独的行上显示所述第一文件的每个消息并且在单独的行上显示所述第一文件的每个消息的每个基准的指令。

根据一个实施例,所述指令还包括用于在与相应消息相同的行上显示所述第一文件的每个消息的元数据以及在与所述相应基准相同的行上显示所述第一文件的每个消息的每个基准的元数据的指令。

根据一个实施例,所述层次结构包括在相应消息下方的数据、在所述第一ecu下方的每个消息以及在所述数据库下方的所述第一ecu。

根据一个实施例,所述指定基准是所述第一ecu的名称、所述第一文件的所述消息的元数据和所述第一文件的所述消息的数据的元数据中的至少一者。

根据一个实施例,每个消息都包括标识符和车辆部件的至少一个特性的数据。

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