车辆控制方法和系统(发明专利)

专利号:CN201511018059.4

申请人:广州汽车集团股份有限公司

  • 公开号:CN105564439A
  • 申请日期:20151228
  • 公开日期:20160511
专利名称: 车辆控制方法和系统
专利名称(英文): Vehicle control method and system
专利号: CN201511018059.4 申请时间: 20151228
公开号: CN105564439A 公开时间: 20160511
申请人: 广州汽车集团股份有限公司
申请地址: 510030 广东省广州市越秀区东风中路448-458号成悦大厦23楼
发明人: 唐启富; 黄少堂; 杨毅; 冉光伟
分类号: B60W50/00 主分类号: B60W50/00
代理机构: 广州华进联合专利商标代理有限公司 44224 代理人: 李巍
摘要: 本发明涉及一种车辆控制方法和系统,该方法包括:接收远程控制数据,并对远程控制数据进行解析,得到ECU节点信息;根据ECU类链表查找ECU节点信息中各个ECU节点的控制命令;ECU类链表中包括每一个ECU节点的唯一编码;对ECU节点的控制命令进行解析,在与ECU节点对应的ECU节点方法链表中,查找ECU节点的各条控制命令的执行方法;根据执行方法执行ECU节点的各条控制命令,对车辆进行控制。本发明以类的概念实现了开发过程的模块化、简单化,大大减少了开发过程的工作量,同时对开发过程的风险也能起到很好的控制作用,减少了错误的发生几率,增强了车辆控制系统的稳定性和安全性。
摘要(英文): The invention relates to a vehicle control method and system, the method comprises : receiving remote control data, and the remote control data is parsed, ECU node information obtained; such ECU ECU according to the node information of the linked list for each node in the control command of the ECU; such ECU linked list includes each node a unique encoding of the ECU; ECU node to analyze the control command, the ECU and the ECU corresponding to the node in the node method linked list, the searching node ECU control method for the execution of the order of; the implementation according to the implementation of method for each node of the ECU control command, to control the vehicle. The concept of the invention are presented in clusters of the development process to realize modularization, simplified, greatly reduces the workload of the development process, at the same time the risk of the development process can also play the control action of the very good, the probability of the occurrence of the error is reduced, the stability and safety of the control system.
  • 商标交易流程
  • 商标交易流程
  • 商标交易流程
  • 商标交易流程
  • 商标交易流程
  • 商标交易流程
一种车辆控制方法,其特征在于,包括如下步骤:接收远程控制数据,并对所述远程控制数据进行解析得到ECU节点信息;根据ECU类链表查找所述ECU节点信息中各个ECU节点的控制命令;所述ECU类链表中包括每一个ECU节点的唯一编码;对所述ECU节点的控制命令进行解析,在与所述ECU节点对应的ECU节点方法链表中,查找所述ECU节点的各条控制命令的执行方法;根据所述执行方法执行所述ECU节点的各条所述控制命令,对车辆进行控制。

1.一种车辆控制方法,其特征在于,包括如下步骤: 接收远程控制数据,并对所述远程控制数据进行解析得到ECU节点信息; 根据ECU类链表查找所述ECU节点信息中各个ECU节点的控制命令;所 述ECU类链表中包括每一个ECU节点的唯一编码; 对所述ECU节点的控制命令进行解析,在与所述ECU节点对应的ECU节 点方法链表中,查找所述ECU节点的各条控制命令的执行方法; 根据所述执行方法执行所述ECU节点的各条所述控制命令,对车辆进行控 制。

2.根据权利要求1所述的车辆控制方法,其特征在于,通过以下方法获得 所述ECU类链表: 根据基类派生出每一个所述ECU节点对应的ECU类;所述基类包括车辆 中每一个所述ECU节点的唯一编码; 将每一个所述ECU节点对应的所述ECU类连成链表,获得所述ECU类链 表。

3.根据权利要求2所述的车辆控制方法,其特征在于,所述基类还包括ECU 命令指针、ECU初始化方法、ECU命令处理方法以及ECU命令清除方法。

4.根据权利要求2所述的车辆控制方法,其特征在于,每一个所述ECU 节点对应的所述ECU类还包括所述ECU节点自身所要控制的设备的状态参数、 设备运行方法以及设备运行错误时的处理方法。

5.根据权利要求1至4任一项所述的车辆控制方法,其特征在于,查找所 述ECU节点的各条控制命令的执行方法的过程包括: 根据所述ECU节点的各条所述控制命令的标识符,在与所述ECU节点对 应的ECU节点方法链表中索引获得各条所述控制命令的执行方法。

6.一种车辆控制系统,其特征在于,包括依次连接的数据接收模块、协议 解析模块、ECU节点管理器、方法管理器以及执行模块; 所述数据接收模块用于接收远程控制数据; 所述协议解析模块用于对所述远程控制数据进行解析,获得ECU节点信息, 并将所述ECU节点信息发送至所述ECU节点管理器; 所述ECU节点管理器根据ECU类链表查找所述ECU节点信息中各个ECU 节点的控制命令,并将各个所述ECU节点的控制命令发送至所述方法管理器; 所述ECU类链表中包括每一个所述ECU节点的唯一编码; 所述方法管理器对所述ECU节点的所述控制命令进行解析,并在与所述 ECU节点对应的ECU节点方法链表中,查找所述ECU节点的各条所述控制命 令的执行方法; 所述执行模块根据所述执行方法执行所述ECU节点的各条所述控制命令, 对车辆进行控制。

7.根据权利要求6所述的车辆控制系统,其特征在于,所述ECU节点管 理器包括: 派生模块,用于根据基类派生出每一个所述ECU节点对应的ECU类;所 述基类包括车辆中每一个所述ECU节点的唯一编码; 连接模块,用于将每一个所述ECU节点对应的所述ECU类连成链表,获 得所述ECU类链表。

8.根据权利要求7所述的车辆控制系统,其特征在于,所述基类还包括ECU 命令指针、ECU初始化方法、ECU命令处理方法以及ECU命令清除方法。

9.根据权利要求7所述的车辆控制系统,其特征在于,每一个所述ECU 节点对应的所述ECU类还包括所述ECU节点自身所要控制的设备的状态参数、 设备运行方法以及设备运行错误时的处理方法。

10.根据权利要求6至9中任一项所述的车辆控制系统,其特征在于,所 述方法管理器根据所述ECU节点的各条所述控制命令的标识符,在与所述ECU 节点对应的ECU节点方法链表中索引获得所述ECU节点的各条所述控制命令 的执行方法。

PDF文件加载中,请耐心等待!
一种车辆控制方法,其特征在于,包括如下步骤:接收远程控制数据,并对所述远程控制数据进行解析得到ECU节点信息;根据ECU类链表查找所述ECU节点信息中各个ECU节点的控制命令;所述ECU类链表中包括每一个ECU节点的唯一编码;对所述ECU节点的控制命令进行解析,在与所述ECU节点对应的ECU节点方法链表中,查找所述ECU节点的各条控制命令的执行方法;根据所述执行方法执行所述ECU节点的各条所述控制命令,对车辆进行控制。
原文:

1.一种车辆控制方法,其特征在于,包括如下步骤: 接收远程控制数据,并对所述远程控制数据进行解析得到ECU节点信息; 根据ECU类链表查找所述ECU节点信息中各个ECU节点的控制命令;所 述ECU类链表中包括每一个ECU节点的唯一编码; 对所述ECU节点的控制命令进行解析,在与所述ECU节点对应的ECU节 点方法链表中,查找所述ECU节点的各条控制命令的执行方法; 根据所述执行方法执行所述ECU节点的各条所述控制命令,对车辆进行控 制。

2.根据权利要求1所述的车辆控制方法,其特征在于,通过以下方法获得 所述ECU类链表: 根据基类派生出每一个所述ECU节点对应的ECU类;所述基类包括车辆 中每一个所述ECU节点的唯一编码; 将每一个所述ECU节点对应的所述ECU类连成链表,获得所述ECU类链 表。

3.根据权利要求2所述的车辆控制方法,其特征在于,所述基类还包括ECU 命令指针、ECU初始化方法、ECU命令处理方法以及ECU命令清除方法。

4.根据权利要求2所述的车辆控制方法,其特征在于,每一个所述ECU 节点对应的所述ECU类还包括所述ECU节点自身所要控制的设备的状态参数、 设备运行方法以及设备运行错误时的处理方法。

5.根据权利要求1至4任一项所述的车辆控制方法,其特征在于,查找所 述ECU节点的各条控制命令的执行方法的过程包括: 根据所述ECU节点的各条所述控制命令的标识符,在与所述ECU节点对 应的ECU节点方法链表中索引获得各条所述控制命令的执行方法。

6.一种车辆控制系统,其特征在于,包括依次连接的数据接收模块、协议 解析模块、ECU节点管理器、方法管理器以及执行模块; 所述数据接收模块用于接收远程控制数据; 所述协议解析模块用于对所述远程控制数据进行解析,获得ECU节点信息, 并将所述ECU节点信息发送至所述ECU节点管理器; 所述ECU节点管理器根据ECU类链表查找所述ECU节点信息中各个ECU 节点的控制命令,并将各个所述ECU节点的控制命令发送至所述方法管理器; 所述ECU类链表中包括每一个所述ECU节点的唯一编码; 所述方法管理器对所述ECU节点的所述控制命令进行解析,并在与所述 ECU节点对应的ECU节点方法链表中,查找所述ECU节点的各条所述控制命 令的执行方法; 所述执行模块根据所述执行方法执行所述ECU节点的各条所述控制命令, 对车辆进行控制。

7.根据权利要求6所述的车辆控制系统,其特征在于,所述ECU节点管 理器包括: 派生模块,用于根据基类派生出每一个所述ECU节点对应的ECU类;所 述基类包括车辆中每一个所述ECU节点的唯一编码; 连接模块,用于将每一个所述ECU节点对应的所述ECU类连成链表,获 得所述ECU类链表。

8.根据权利要求7所述的车辆控制系统,其特征在于,所述基类还包括ECU 命令指针、ECU初始化方法、ECU命令处理方法以及ECU命令清除方法。

9.根据权利要求7所述的车辆控制系统,其特征在于,每一个所述ECU 节点对应的所述ECU类还包括所述ECU节点自身所要控制的设备的状态参数、 设备运行方法以及设备运行错误时的处理方法。

10.根据权利要求6至9中任一项所述的车辆控制系统,其特征在于,所 述方法管理器根据所述ECU节点的各条所述控制命令的标识符,在与所述ECU 节点对应的ECU节点方法链表中索引获得所述ECU节点的各条所述控制命令 的执行方法。

翻译:
车辆控制方法和系统

技术领域

本发明涉及汽车电子技术领域,特别是涉及一种车辆控制方法和系统。

背景技术

同一车型通常会有不同的配置,根据配置的不同车辆所配置的ECU (ElectronicControlUnit,电子控制单元)节点数目也是不同的,通过控制这些 ECU节点可达到控制车辆的目的。从技术上看,不同的ECU节点所接收的控制 命令和处理控制命令的方法并不相同。其中的一个ECU节点接收外部控制数据, 对这些控制数据进行解析后再按照其他ECU节点的特定程序处理这些数据,然 后控制不同的ECU节点执行命令,而由于ECU节点数目的变化以及不同ECU 节点所执行动作的不同,如何很好的处理这些数据而不至于混乱便需要重点考 虑。随着开发的车型越来越多,开发周期越来越短,如何更快的处理这种差异 性就显得尤为重要。再者,从开发的角度上看,开发需求有可能会频繁地改变, 那么如何应对这种变化也是开发过程中的重中之重。

通常,为了缩短开发周期,开发方法和策略多是从现有平台上移植而来。 所以在开发过程中要尽量使方法和策略具有很好的契合性、移植性以及扩展性, 同时还要保证系统的稳定性和安全性。

为了处理不同的情况,现时很多车辆控制方法都是用分支跳转的方法,每 一个ECU节点占用一个跳转分支,即在嵌入式C语言中表现为“ifelse”,甚至 是“switchcase”。这样当接收到外部控制命令时判断控制命令属于哪个ECU节 点,接着跳转到此ECU节点的处理代码。在车辆控制系统需要处理的ECU节 点较少时,使用分支跳转的方法可以对车辆进行有效控制。但若车辆控制系统 所要处理的ECU节点数量较多时,使用分支跳转的方法会导致控制出错几率大 大增加,不利于对车辆进行安全、稳定地控制。

发明内容

基于此,为解决现有技术中的问题,本发明提供一种车辆控制方法和系统, 提高车辆控制系统的稳定性和安全性。

为实现上述目的,本发明实施例采用以下技术方案:

一种基于多个ECU节点的车辆控制方法,包括如下步骤:

接收远程控制数据,并对所述远程控制数据进行解析,得到ECU节点信息;

根据ECU类链表查找所述ECU节点信息中的各个ECU节点的控制命令; 所述ECU类链表中包括每一个ECU节点的唯一编码;

对所述ECU节点的所述控制命令进行解析,在与所述ECU节点对应的ECU 节点方法链表中,查找所述ECU节点的各条控制命令的执行方法;

根据所述执行方法执行所述ECU节点的各条所述控制命令,对车辆进行控 制。

相应的,本发明还提供一种基于多个ECU节点的车辆控制系统,包括依次 连接的数据接收模块、协议解析模块、ECU节点管理器、方法管理器以及执行 模块;

所述数据接收模块用于接收远程控制数据;

所述协议解析模块用于对所述远程控制数据进行解析,得到ECU节点信息, 并将所述ECU节点信息发送至所述ECU节点管理器;

所述ECU节点管理器根据ECU类链表查找所述ECU节点信息中各个ECU 节点的控制命令,并将各个所述ECU节点的控制命令发送至所述方法管理器; 所述ECU类链表中包括每一个所述ECU节点的唯一编码;

所述方法管理器对所述ECU节点的所述控制命令进行解析,并在与所述 ECU节点对应的ECU节点方法链表中,查找所述ECU节点的各条所述控制命 令的执行方法;

所述执行模块根据所述执行方法执行所述ECU节点的各条所述控制命令, 对车辆进行控制。

本发明能根据ECU类链表从远程控制数据中获得各个ECU节点的控制命 令,并从ECU节点方法链表中查找到各条控制命令的执行方法,从而通过执行 不同ECU节点的控制命令来实现车辆控制,这种控制方式在ECU节点较多时 也能准确执行各个ECU节点的各条控制命令,有效降低出错几率,提高车辆控 制的稳定性和安全性。另外,基于本发明的车辆控制方法和系统,在车辆开发 阶段,根据不同的车辆开发需求,开发人员只要相应地定义ECU节点个体以及 每一个ECU节点个体的执行方法就可以很方便地适配不同的车型和开发需求, 相对于传统技术中的车辆控制方式,本发明有效降低了车辆开发过程中的工作 量,提高车辆开发效率。

附图说明

图1是本发明的车辆控制方法在一个实施例中的流程示意图;

图2为本发明实施例中一种获得ECU类链表的方法的流程示意图;

图3为本发明的车辆控制系统在一个实施例中的结构示意图;

图4为本发明实施例中车辆控制系统的核心组件的结构示意图;

图5为本发明实施例中车辆控制系统的工作流程示意图。

具体实施方式

下面将结合较佳实施例及附图对本发明的内容作进一步详细描述。显然, 下文所描述的实施例仅用于解释本发明,而非对本发明的限定。基于本发明中 的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其 他实施例,都属于本发明保护的范围。应当说明的是,为了便于描述,附图中 仅示出了与本发明相关的部分而非全部内容。

图1是本发明的车辆控制方法在一个实施例中的流程示意图,本实施例的 方法可以由车辆控制系统来执行。如图1所示,本实施例中的车辆控制方法包 括以下步骤:

步骤S110,接收远程控制数据;

在本实施例中,能向车辆控制系统发送远程控制数据的设备统称为客户端, 本实施例中车辆控制系统接收客户端发送的远程控制数据。

步骤S120,对所述远程控制数据进行解析,得到ECU节点信息;

客户端在向车辆控制系统发送远程控制数据时,都会通过相应的通信协议 进行封装,车辆控制系统在接收客户端发送的远程控制数据之后,先要根据对 应的通信协议对该远程控制数据进行解析,得到ECU节点信息,以区分客户端 发送的其他非ECU关联数据。

步骤S130,根据ECU类链表查找ECU节点信息中的各个ECU节点的控制 命令;所述ECU类链表中包括每一个ECU节点的ID(唯一编码);

车辆控制系统中包含有ECU类链表,而ECU类链表中包含每一个ECU节 点的ID,由于在ECU节点信息中,各ECU节点都有其对应的控制命令序列格 式,因此根据ECU节点的ID就可以查找ECU节点信息中各个ECU节点的控 制命令。。例如,ECU节点信息包括各个ECU节点所要执行的控制指令的数量、 控制指令的标识符以及控制参数等,根据每一个ECU节点的ID在ECU节点信 息中就能直接查找到每一个ECU节点的控制指令。

步骤S140,对所述ECU节点的所述控制命令进行解析,在与所述ECU节 点对应的ECU节点方法链表中,查找所述ECU节点的各条控制命令的执行方 法;

如上所述,由于每一个ECU节点都有其对应的唯一ID,故根据ECU节点 的ID可以在车辆控制系统中查找到各个ECU节点对应的ECU节点方法链表。 ECU节点方法链表中包含了该ECU节点所有控制命令的执行方法。因此,在对 所有的ECU节点的控制命令进行解析后,通过ECU节点的ID查找到与某一个 ECU节点对应的ECU节点方法链表,在该ECU节点方法链表中就能查找该ECU 节点的各条控制命令的执行方法。在一种可选的实施方式中,由于控制命令是 由唯一的标识符和控制参数组成的,因此,可以根据各条控制命令的标识符, 在ECU节点方法链表中索引获得ECU节点的各条控制命令的执行方法。

步骤S150,根据所述执行方法执行所述ECU节点的各条所述控制命令,对 车辆进行控制。

在ECU节点方法链表中获得各条控制命令的执行方法后,就可以按照配置 的执行方法来执行ECU节点的控制命令,实现对车辆的控制。

举例而言,在获得ECU节点信息之后,首先在ECU类链表中根据ECU节 点的ID查找到ECU节点信息中需要控制的ECU节点a、b、c,分别获得ECU 节点a、b、c的控制命令。假设ECU节点a有3条控制命令,分别记为控制命 令a1、a2、a3;ECU节点b有2条控制命令,分别记为控制命令b1、b2;ECU 节点c只有1条控制命令,记为控制命令c1。然后对各个ECU节点的控制命令 解析,解析后假设先处理ECU节点a的控制命令a1,具体的,先通过ECU节 点a的ID查找到与其对应的ECU节点方法链表,然后在该ECU节点方法链表 中通过控制命令a1的标识符索引获得控制命令a1的执行方法,从而可以按照该 执行方法执行控制命令a1

在执行完一条控制命令后,还需要判断当前的ECU节点a是否有更多的控 制命令需要执行,如果有,则继续查找相关的控制命令,并调用相应的执行方 法来执行命令,如此反复直到当前ECU节点的所有控制命令都被执行完成。在 此实例中,执行完控制命令a1后,查找到控制命令a2,然后在ECU节点a对应 的ECU节点方法链表中索引获得控制命令a2的执行方法,然后按照该执行方法 执行控制命令a2。同理可以完成控制命令a3的执行,至此执行完ECU节点a的 所有控制命令。

在完成一个ECU节点的所有控制命令后,再判断是否有更多的ECU节点 需要控制,如果有,则继续查找ECU节点,并查找ECU节点的各条控制命令 的执行方法来执行相应的控制命令,如此反复直到所有ECU节点的所有控制指 令都执行完成。在上述实例中,执行完ECU节点a的所有控制指令后,再执行 ECU节点b的控制指令b1、b2,最后执行ECU节点c的控制指令c1,至此所有 ECU节点的所有控制指令都被执行,完成对车辆的控制过程。

在一种可选的实施方式中,车辆控制系统中存储的ECU类链表可以通过以 下方式获得,如图2所示,包括:

步骤S201,根据基类派生出每一个ECU节点对应的ECU类;所述基类包 括车辆中每一个ECU节点的ID;

步骤S202,将各个ECU节点对应的ECU类连成链表,获得所述ECU类链 表。

在本实施例中,根据车辆控制的实际需求提炼出车辆中每一个ECU节点所 需要执行的动作,ECU节点所要执行的动作决定了ECU节点的类型、控制命令 的数量,控制命令的执行方法、控制命令的序列格式等。根据ECU节点所执行 的动作定义针对所有ECU节点的结构体作为一个基类,在该基类中包含每一个 ECU节点的ID。然后根据该基类派生出每一个ECU节点对应的ECU类(包含 结构体在内,因为结构体也可以视为类),再将各个ECU节点对应的ECU类连 成链表,即可获得ECU类链表。

基类中除了包含每个ECU节点的ID外,还可包含根据ECU节点所执行的 动作而决定的变量。在一种可选的实施方式中,基类还可包括ECU命令指针、 ECU初始化方法、ECU命令处理方法以及ECU命令清除方法,这样车辆控制 系统在依据执行方法执行每个ECU节点的控制命令时,就可以依据基类中给出 的方法和属性来执行初始化、控制命令清除等相关动作。

ECU节点对应的ECU类是从基类中派生的,包含基类的属性和方法,另外 还可包含自身的属性和方法,例如在一种可选的实施方式中,每一个ECU节点 对应的ECU类还包括ECU节点自身所要控制的设备的状态参数、设备运行方 法以及设备运行错误时的处理方法。由于ECU节点执行的动作不同,故ECU 类中的属性和方法也不完全相同,当然都必须包含基类的属性和方法。举例而 言,PEPS(Passiveentry&pushstart,智能进入及启动)节点在车辆控制系统中 主要控制发动机的停止和启动、车辆上电及去电。因此在PEPS节点对应的PEPS 类中除去基类的属性和方法外,还包含控制发动机的属性,比如当前发动机的 状态参数、车身电源状态参数、发动机运行方法以及发动机运行错误时的处理 方法等。而对于BCM(BodyControlModule,车身控制模块)节点,由于其执 行的动作与PEPS节点不同,因此除去基类的属性和方法外,BCM类中包含的 其它方法和属性也与PEPS类不同,BCM类中还包含车身状态属性,比如车辆 四个门的状态参数、天窗状态参数、车窗状态参数等等。在依据执行方法执行 不同ECU节点的控制指令时,就可以利用ECU节点对应的ECU类中的方法和 属性执行相应动作。

与ECU类链表相似,上述的ECU节点方法链表是根据各个ECU节点的执 行行为来决定的。单个ECU节点有很多需要执行的行为,即执行控制命令的执 行方法,将这些执行方法连成一个链表,就可以得到ECU节点方法链表,ECU 节点方法链表中的执行方法可由控制命令索引得到。

综上所述,本发明的车辆控制方法能根据ECU类链表从远程控制数据中获 得各个ECU节点的控制命令,并从ECU节点方法链表中查找到各条控制命令 的执行方法,从而通过执行不同ECU节点的控制命令来实现车辆控制,这种控 制方式在ECU节点较多时也能准确执行各个ECU节点的各条控制命令,有效 降低出错几率,提高车辆控制的稳定性和安全性。另外,基于本发明的车辆控 制方法,在车辆开发阶段,根据不同的车辆开发需求,开发人员只要相应地定 义ECU节点个体以及每一个ECU节点个体的执行方法就可以很方便地适配不 同的车型和开发需求,相对于传统的车辆控制方法,本发明有效降低了车辆开 发过程中的工作量,提高车辆开发效率。

根据上述本发明的车辆控制方法,本发明还提供一种车辆控制系统,下面 结合附图及较佳实施例对本发明的车辆控制系统进行详细说明。

图3为本发明的车辆控制系统在一个实施例中的结构示意图。如图3所示, 该实施例中的基于多个ECU节点的车辆控制系统包括依次连接的数据接收模块 100、协议解析模块200、ECU节点管理器300、方法管理器400以及执行模块 500。其中,数据接收模块100用于接收远程控制数据,协议解析模块200用于 对远程控制数据进行解析,得到ECU节点信息,并将ECU节点信息发送给ECU 节点管理器300。

ECU节点管理器300根据ECU类链表查找ECU节点信息中的各个ECU节 点的控制命令,并将各个ECU节点的控制命令发送至方法管理器400,其中ECU 类链表中包括每一个ECU节点的ID。

方法管理器400在接收ECU节点的控制命令后,对数据进行解析,并在与 ECU节点对应的ECU节点方法链表中,查找ECU节点的各条控制命令的执行 方法。然后,执行模块500就可以根据方法管理器400查找到的执行方法来执 行控制命令,对车辆进行相应地控制。

具体的,本实施例中的数据接收模块100接收客户端发送的远程控制数据, 由于客户端在向数据接收模块100发送远程控制数据时,都会通过相应的通信 协议进行封装,故,在数据接收模块100接收客户端发送的远程控制数据之后, 要通过协议解析模块200根据对应的通信协议对该远程控制数据进行解析,得 到ECU节点信息,以区分客户端发送的其他数据类型。

ECU节点管理器300中包含有ECU类链表,而ECU类链表中包含每一个 ECU节点的ID,由于在ECU节点信息中各ECU节点都有其对应的控制命令序 列格式,因此ECU节点管理器300根据ECU节点的ID就可以直接在ECU节 点信息,查找得到各个ECU节点的控制指令。之后,ECU节点管理器300将各 个ECU节点的控制命令传送给方法管理器400。方法管理器400中包含各个ECU 节点对应的ECU节点方法链表,如上所述,由于每一个ECU节点都有其对应 的唯一ID,故根据ECU节点的ID可以在方法管理器400中查找到各个ECU节 点对应的ECU节点方法链表,而ECU节点方法链表中包含了ECU节点所有控 制命令的执行方法。因此,方法管理器在对ECU节点的控制命令进行解析后, 通过ECU节点的ID查找到与某一个ECU节点对应的ECU节点方法链表,在 该ECU节点方法链表中就能查找该ECU节点的各条控制命令的执行方法,之 后执行模块500依据方法管理器400提供的执行方法来执行控制指令,实现对 车辆的控制。

在一种可选的实施方式中,如图3所示,在本实施例的基于多个ECU节点 的车辆控制系统中,ECU节点管理器300还包括:

派生模块301,用于根据基类派生出每一个ECU节点对应的ECU类;所述 基类包括车辆中每一个ECU节点的ID;

连接模块302,用于将每一个ECU节点对应的ECU类连成链表,获得所述 ECU类链表。

在本实施例中,根据车辆控制的实际需求提炼出车辆中每一个ECU节点所 需要执行的动作,ECU节点所要执行的动作决定了ECU节点的类型、控制命令 的数量,控制命令的执行方法、控制命令的序列格式等。根据ECU节点所执行 的动作定义针对所有ECU节点的结构体作为一个基类,在该基类中包含每一个 ECU节点的ID。然后派生模块301根据该基类派生出每一个ECU节点对应的 ECU类(包含结构体在内,因为结构体也可以视为类),连接模块302将各个 ECU节点对应的ECU类连成链表,即可获得ECU类链表。在ECU节点管理器 300中定义一个ECU节点指针,指向ECU类链表,这样ECU节点管理器300 在查找远程控制数据中的需要控制的ECU节点时,就可以通过ECU节点指针 调用相应的ECU类链表进行处理。

另外,基类中除了包含每个ECU节点的ID外,还可包含根据ECU节点所 执行的动作而决定的变量。在一种可选的实施方式中,基类还可包括ECU命令 指针、ECU初始化方法、ECU命令处理方法以及ECU命令清除方法,这样在 执行模块500依据方法管理器400提供的执行方法执行每个ECU节点的控制命 令时,就可以依据基类中给出的方法和属性来执行初始化、命令清除等等相关 动作。

ECU节点对应的ECU类是从基类中派生的,包含基类的属性和方法,另外 由于各个ECU节点执行的动作不同,因此各个ECU类还可包含自身的属性和 方法。例如在一种可选的实施方式中,派生模块301获得的每一个ECU节点对 应的ECU类中,还包括ECU节点自身所要控制的设备的状态参数、设备运行 方法以及设备运行错误时的处理方法。举例而言,PEPS节点在车辆控制系统中 主要控制发动机的停止和启动、车辆上电及去电。因此派生模块301在获得PEPS 节点对应的PEPS类时,除去基类的属性和方法外,还包含控制发动机的属性, 比如当前发动机的状态参数、车身电源状态参数、发动机运行方法以及发送机 运行错误时的处理方法等。而对于BCM节点,由于其执行的动作与PEPS节点 不同,因此,派生模块301在获得BCM节点对应的BCM类时,除去基类的属 性和方法外,BCM类中包含的其它方法和属性也与PEPS类不同,BCM类中还 包含车身状态属性,比如车辆四个门的状态参数、天窗状态参数、车窗状态参 数等等。执行模块500在执行ECU节点的控制指令时,就可以根据ECU类中 提供的方法、属性来执行相应动作。

方法管理器400中的ECU节点方法链表是根据各个ECU节点的执行行为 来决定的。单个ECU节点有很多需要执行的行为,即执行控制命令的执行方法, 将这些执行方法连成一个链表,就可以得到ECU节点方法链表,ECU节点方法 链表中的执行方法可由控制命令索引得到。方法管理器400中定义一个指针指 向ECU节点方法链表,这样在方法管理器400查找控制命令的执行方法时,就 可以根据指针调用相应的ECU节点方法链表。

本实施例中的车辆控制系统,其核心组件为ECU节点管理器300和方法管 理器400。如图4所示,接收并解析客户端发送的远程控制数据后,ECU节点 管理器300根据ECU类链表查找ECU节点信息中需要控制的ECU节点,如果 找到相符的ECU节点,则将此ECU节点的控制命令传送给方法管理器400,方 法管理器400将控制命令解析后从ECU节点方法链表中查找用于执行控制命令 的执行方法,在一种可选的实施方式中,方法管理器400根据各条控制命令的 标识符,在与ECU节点对应的ECU节点方法链表中索引获得ECU节点的各条 控制命令的执行方法。最后通过执行模块500执行控制命令,完成车辆控制。

参照图5所示,且一定参照图3、图4,在执行模块500执行完某一个ECU 节点的一条控制命令后,方法管理器400判断该ECU节点是否有更多的控制命 令需要执行,如果有,则继续查找该ECU节点的其他控制命令的执行方法,如 此反复直到该ECU节点的所有控制命令被执行模块500执行完成。

而在完成某一个ECU节点的所有控制命令后,ECU节点管理300判断是否 有更多的ECU节点需要控制,如果有,则继续查找相关的ECU节点并将其控 制命令传送给方法管理器400,如此反复直到所有的ECU节点都完成控制,即 所有ECU节点的所有控制指令都被执行。

在本发明的车辆控制系统中,ECU节点管理器管理车辆中所有的ECU节 点,方法管理器管理ECU节点各条控制命令的执行方法。基于本发明提供的车 辆控制系统,在车辆的ECU节点较多时,通过ECU节点管理器也能从远程控 制数据中获得各个ECU节点的控制命令,并且通过方法管理器能获得各条控制 命令的执行方法,这样能准确执行各个ECU节点的各条控制命令,有效降低了 车辆控制过程中执行控制命令时的出错几率,保证车辆控制的稳定性和安全性。 另外,基于本发明提供的车辆控制系统,在车辆开发阶段,根据不同的车辆开 发需求,开发人员只要相应地定义ECU节点个体以及每一个ECU节点个体的 执行方法就可以很方便地适配不同的车型和开发需求,相对于传统的车辆控制 系统,本发明能有效降低车辆开发过程中的工作量,提高车辆开发效率。

上述基于车辆控制系统可执行本发明实施例所提供的车辆控制方法,具备 执行方法相应的功能模块和有益效果。

以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对 上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技 术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。

以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细, 但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的 普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改 进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权 利要求为准。

收缩
  • QQ咨询

  • 在线咨询
  • 在线咨询
  • 在线咨询
  • 在线咨询
  • 电话咨询

  • 02886312233