无人车的控制方法、装置及系统转让专利

申请号 : CN201610362335.7

文献号 : CN106020191B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 朱振广张天雷潘余昌

申请人 : 百度在线网络技术(北京)有限公司

摘要 :

本申请公开了无人车的控制方法、装置及系统。所述方法的一具体实施方式包括:接收无人车的车辆控制报文,所述车辆控制报文用于表征无人车的车辆控制特性;将所述车辆控制报文转换为车辆控制协议报文,所述车辆控制协议报文用于实现对车辆控制报文的通用性指令描述;基于所述车辆控制协议报文生成车辆控制命令;将所述车辆控制命令转换为对应所述车辆控制报文的车辆控制指令,并将所述车辆控制指令发送给无人车。该实现方式使得车辆控制报文能够被通用的报文指令进行描述,实现了通过通用的报文指令对无人车进行控制的目的。

权利要求 :

1.一种无人车的控制方法,其特征在于,所述方法包括:接收无人车的车辆控制报文,所述车辆控制报文用于表征无人车的车辆控制特性;

将所述车辆控制报文转换为车辆控制协议报文,所述车辆控制协议报文用于实现对车辆控制报文的通用性指令描述;

基于所述车辆控制协议报文生成车辆控制命令;

将所述车辆控制命令转换为对应所述车辆控制报文的车辆控制指令,并将所述车辆控制指令发送给无人车;

其中,将所述车辆控制报文转换为车辆控制协议报文包括:从所述车辆控制报文中解析出报文信息文件,所述报文信息文件包括报文内容信息和信号信息;

将所述报文信息文件和目标代码框架模板输入到代码生成器,得到对应所述报文信息文件的车辆控制协议报文,所述目标代码框架模板用于将报文信息文件的代码格式转换为目标代码格式,所述代码生成器用于实现报文信息文件与车辆控制协议报文之间的相互转换。

2.根据权利要求1所述的方法,其特征在于,所述从所述车辆控制报文中解析出报文信息文件包括:检测车辆控制报文的文件格式;

基于所述文件格式解码出对应所述车辆控制报文的报文信息文件。

3.根据权利要求1所述的方法,其特征在于,所述方法还包括:生成代码生成器的步骤,包括:

获取无人车的车辆控制报文,从所述车辆控制报文解析出报文信息文件;

确定所述报文信息文件的车辆物理控制信息;

通过目标代码框架模板将所述车辆物理控制信息转换为指定格式的报文代码,所述报文代码用于构成车辆控制协议报文;

建立报文信息文件与报文代码之间的对应关系,得到代码生成器。

4.根据权利要求3所述的方法,其特征在于,所述报文代码的属性包括编码类型、变量类型、数据类型、数据偏移量和数据分辨率中的至少一项。

5.一种无人车的控制装置,其特征在于,所述装置包括:车辆控制报文接收单元,用于接收无人车的车辆控制报文,所述车辆控制报文用于表征无人车的车辆控制特性;

车辆控制协议报文转换单元,用于将所述车辆控制报文转换为车辆控制协议报文,所述车辆控制协议报文用于实现对车辆控制报文的通用性指令描述;

车辆控制命令生成单元,用于基于所述车辆控制协议报文生成车辆控制命令;

车辆控制单元,用于将所述车辆控制命令转换为对应所述车辆控制报文的车辆控制指令,并将所述车辆控制指令发送给无人车;

其中,所述车辆控制协议报文转换单元包括:

报文信息文件获取子单元,用于从所述车辆控制报文中解析出报文信息文件,所述报文信息文件包括报文内容信息和信号信息;

车辆控制协议报文转换子单元,用于将所述报文信息文件和目标代码框架模板输入到代码生成器,得到对应所述报文信息文件的车辆控制协议报文,所述目标代码框架模板用于将报文信息文件的代码格式转换为目标代码格式,所述代码生成器用于实现报文信息文件与车辆控制协议报文之间的相互转换。

6.根据权利要求5所述的装置,其特征在于,所述报文信息文件获取子单元包括:格式检测模块,用于检测车辆控制报文的文件格式;

解码模块,用于基于所述文件格式解码出对应所述车辆控制报文的报文信息文件。

7.根据权利要求5所述的装置,其特征在于,所述装置还包括:代码生成器生成单元,用于生成代码生成器,包括:解析子单元,用于获取无人车的车辆控制报文,从所述车辆控制报文解析出报文信息文件;

车辆物理控制信息获取子单元,用于确定所述报文信息文件的车辆物理控制信息;

报文代码转换子单元,用于通过目标代码框架模板将所述车辆物理控制信息转换为指定格式的报文代码,所述报文代码用于构成车辆控制协议报文;

代码转换模板生成子单元,用于建立报文信息文件与报文代码之间的对应关系,得到代码生成器。

8.根据权利要求7所述的装置,其特征在于,所述报文代码的属性包括编码类型、变量类型、数据类型、数据偏移量和数据分辨率中的至少一项。

9.一种无人车的控制系统,其特征在于,所述系统包括上述5-8任一项所述的无人车的控制装置。

说明书 :

无人车的控制方法、装置及系统

技术领域

[0001] 本申请涉及数据处理技术领域,具体涉及无人车信息处理技术领域,尤其涉及无人车的控制方法、装置及系统。

背景技术

[0002] 汽车拓展了人们出行的范围,给人们的出行带来了便利,提高了人们的生活质量。随着科技的发展和进步,通过智能系统控制的无人驾驶汽车(以下简称无人车)能够获取比有人驾驶的汽车更多的行驶信息,具备更高的安全性,成为未来汽车发展的一个重要趋势。
[0003] 然而,现有的无人车控制方法还存在一些不足。例如,现有的各个无人车生产厂家根据自身情况,通过自定义的车辆控制报文对自己的无人车进行控制。而无人车生产厂家通常不具备对无人车进行全方位开发的能力,无人车的某些方面需要其他更加专业的汽车厂商进行开发。因此,无人车生产厂家自定义的车辆控制报文对其他汽车相关的科技公司形成技术壁垒,不利于无人车的进一步发展。

发明内容

[0004] 本申请提供了无人车的控制方法、装置及系统,以解决背景技术中提到的技术问题。
[0005] 第一方面,本申请提供了一种无人车的控制方法,所述方法包括:接收无人车的车辆控制报文,所述车辆控制报文用于表征无人车的车辆控制特性;将所述车辆控制报文转换为车辆控制协议报文,所述车辆控制协议报文用于实现对车辆控制报文的通用性指令描述;基于所述车辆控制协议报文生成车辆控制命令;将所述车辆控制命令转换为对应所述车辆控制报文的车辆控制指令,并将所述车辆控制指令发送给无人车;其中,所述将所述车辆控制报文转换为车辆控制协议报文包括:从所述车辆控制报文中解析出报文信息文件,所述报文信息文件包括报文内容信息和信号信息;将所述报文信息文件和目标代码框架模板输入到代码生成器,得到对应所述报文信息文件的车辆控制协议报文,所述目标代码框架模板用于将报文信息文件的代码格式转换为目标代码格式,所述代码生成器用于实现报文信息文件与车辆控制协议报文之间的相互转换。
[0006] 在一些实施例中,所述从所述车辆控制报文中解析出报文信息文件包括:检测车辆控制报文的文件格式;基于所述文件格式解码出对应所述车辆控制报文的报文信息文件。
[0007] 在一些实施例中,所述方法还包括:生成代码生成器的步骤,包括:获取无人车的车辆控制报文,从所述车辆控制报文解析出报文信息文件;确定所述报文信息文件的车辆物理控制信息;通过目标代码框架模板将所述车辆物理控制信息转换为指定格式的报文代码,所述报文代码用于构成车辆控制协议报文;建立报文信息文件与报文代码之间的对应关系,得到代码生成器。
[0008] 在一些实施例中,所述报文代码的属性包括编码类型、变量类型、数据类型、数据偏移量和数据分辨率中的至少一项。
[0009] 第二方面,本申请提供了一种无人车的控制装置,所述装置包括:车辆控制报文接收单元,用于接收无人车的车辆控制报文,所述车辆控制报文用于表征无人车的车辆控制特性;车辆控制协议报文转换单元,用于将所述车辆控制报文转换为车辆控制协议报文,所述车辆控制协议报文用于实现对车辆控制报文的通用性指令描述;车辆控制命令生成单元,用于基于所述车辆控制协议报文生成车辆控制命令;车辆控制单元,用于将所述车辆控制命令转换为对应所述车辆控制报文的车辆控制指令,并将所述车辆控制指令发送给无人车;其中,所述车辆控制协议报文转换单元包括:报文信息文件获取子单元,用于从所述车辆控制报文中解析出报文信息文件,所述报文信息文件包括报文内容信息和信号信息;车辆控制协议报文转换子单元,用于将所述报文信息文件和目标代码框架模板输入到代码生成器,得到对应所述报文信息文件的车辆控制协议报文,所述目标代码框架模板用于将报文信息文件的代码格式转换为目标代码格式,所述代码生成器用于实现报文信息文件与车辆控制协议报文之间的相互转换。
[0010] 在一些实施例中,所述报文信息文件获取子单元包括:格式检测模块,用于检测车辆控制报文的文件格式;解码模块,用于基于所述文件格式解码出对应所述车辆控制报文的报文信息文件。
[0011] 在一些实施例中,所述装置还包括:代码生成器生成单元,用于生成代码生成器,包括:解析子单元,用于获取无人车的车辆控制报文,从所述车辆控制报文解析出报文信息文件;车辆物理控制信息获取子单元,用于确定所述报文信息文件的车辆物理控制信息;报文代码转换子单元,用于通过目标代码框架模板将所述车辆物理控制信息转换为指定格式的报文代码,所述报文代码用于构成车辆控制协议报文;代码转换模板生成子单元,用于建立报文信息文件与报文代码之间的对应关系,得到代码生成器。
[0012] 在一些实施例中,所述报文代码的属性包括编码类型、变量类型、数据类型、数据偏移量和数据分辨率中的至少一项。
[0013] 第三方面,本申请提供了一种无人车的控制系统,所述系统包括上述第二方面的无人车的控制装置。
[0014] 本申请提供的无人车的控制方法、装置及系统,获取无人车的车辆控制报文,将车辆控制报文转换为车辆控制协议报文,使得车辆控制报文能够被通用的报文指令进行描述;基于所述车辆控制协议报文生成车辆控制命令,将所述车辆控制命令转换为对应所述车辆控制报文的车辆控制指令,并将所述车辆控制指令发送给无人车,实现了通过通用的报文指令对无人车进行控制的目的。

附图说明

[0015] 通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本申请的其它特征、目的和优点将会变得更明显:
[0016] 图1是本申请可以应用于其中的示例性系统架构图;
[0017] 图2是根据本申请的无人车的控制方法的一个实施例的流程图;
[0018] 图3是根据本申请的无人车的控制方法的应用场景的一个流程图;
[0019] 图4是根据本申请的无人车的控制装置的一个实施例的结构示意图;
[0020] 图5是根据本申请的服务器的一个实施例的结构示意图。

具体实施方式

[0021] 下面结合附图和实施例对本申请作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释相关发明,而非对该发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与有关发明相关的部分。
[0022] 需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本申请。
[0023] 图1示出了可以应用本申请的无人车的控制方法或无人车的控制装置的实施例的示例性系统架构100。
[0024] 如图1所示,系统架构100可以包括无人车101、102、103和车辆控制设备104。无人车101、102、103通过有线或无线的方式与车辆控制设备104连接;车辆控制设备104包含的代码生成器将无人车101、102、103的车辆控制报文转换为车辆控制协议报文后,基于车辆控制协议报文生成车辆控制命令,并通过车辆控制设备104包含的代码生成器将车辆控制命令转换为对应车辆控制报文的车辆控制指令,并将车辆控制指令发送给无人车,实现对无人车的控制。
[0025] 无人车101、102、103可以包括信息发送设备和接收设备,发送设备能够将无人车101、102、103的状态信息发送给车辆控制设备104;接收设备接收车辆控制设备104发来的车辆控制指令,并将车辆控制指令发送给无人车101、102、103的处理器,进而实现车辆控制设备104对无人车101、102、103的控制。
[0026] 车辆控制设备104可以是用于生成车辆控制命令的服务器,例如接收无人车101、102、103发来的车辆控制协议报文,并根据车辆控制协议报文生成车辆控制命令的服务器。
[0027] 需要说明的是,本申请实施例所提供的无人车的控制方法一般由车辆控制设备104执行,相应地,无人车的控制装置一般设置于车辆控制设备104中。
[0028] 应该理解,图1中的无人车和车辆控制设备的数目仅仅是示意性的。根据实现需要,可以具有任意数目的无人车和车辆控制设备。
[0029] 继续参考图2,其示出了无人车的控制方法的一个实施例的流程图200,该无人车的控制方法包括以下步骤:
[0030] 步骤201,接收无人车的车辆控制报文。
[0031] 其中,上述车辆控制报文用于表征无人车的车辆控制特性。
[0032] 无人车(即无人驾驶汽车)通过多种传感器采集汽车数据和道路数据,并通过处理器对这些采集到的数据进行处理,得到控制汽车的各种指令;无人车的各个执行部件接收到指令后进行相应的调整,进而实现对无人车的行驶控制。当前,研究无人车的厂家有很多,尤其是汽车的生产厂家,利用自身的优势,容易实现对自家汽车的无人化改造。例如,国外的某些汽车厂商生产的汽车能够在有人驾驶模式和无人驾驶模式之间自由切换,并且在无人驾驶模式下给无人车发送控制指令,使得无人车按照一定的参数行驶。
[0033] 当前,无人车执行的控制报文大多是控制器局域网总线(CAN,Controller Area Network)控制报文,CAN是一种用于实时应用的串行通讯协议总线,它可以使用双绞线来传输信号,是世界上应用最广泛的现场总线之一。CAN协议用于汽车中各种不同元件之间的通信,以此取代昂贵而笨重的配电线束。CAN协议的特性包括完整性的串行数据通讯、提供实时支持、传输速率高达1兆比特每秒、同时具有11位的寻址以及检错能力。
[0034] 由于各个无人车厂家生产无人车采用的器件不同,需要达到的汽车性能和指标也不尽相同,导致各个无人车厂家生产无人车的控制器局域网总线控制报文和无人车的状态报文通常是不一样的,这就增加了其他无人车开发团队开发无人车技术的难度,不利于无人车技术的发展。
[0035] 控制器局域网总线控制报文和无人车的状态报文一般使用专用软件进行设计,该软件最终生成某一格式的文件,而该格式的文件通常都有特定的信息规律,通过对该格式文件的解析可以获得控制器局域网总线控制报文和无人车的状态报文的具体操作信息。为此,需要无人车的控制器局域网总线控制报文和无人车的状态报文,即无人车的车辆控制报文。
[0036] 步骤202,将上述车辆控制报文转换为车辆控制协议报文。
[0037] 车辆控制报文用于无人车的各个执行部件之间的通信,由上述描述可知,车辆控制报文为特定格式的文件,技术人员通常不能从该格式的文件中直接获取到相关的无人车控制指令。因此,需要将车辆控制报文转换为技术人员能够直接看懂的车辆控制协议,即,车辆控制协议报文用于实现对车辆控制报文的通用性指令描述,能够极大降低无人车控制的技术壁垒,提高无人车的可操作性。
[0038] 在本实施例的一些可选的实现方式中,将上述车辆控制报文转换为车辆控制协议报文可以包括以下步骤:
[0039] 第一步,从上述车辆控制报文中解析出报文信息文件。
[0040] 按照车辆控制报文的格式,可以从车辆控制报文中解析出车辆控制报文的报文信息文件,即车辆控制报文包含的文件,上述报文信息文件通常包括报文内容信息和信号信息。报文内容信息为车辆控制报文的具体内容;信号信息为对应报文内容信息的控制协议标识等信息。
[0041] 第二步,将上述报文信息文件和目标代码框架模板输入到代码生成器,得到对应上述报文信息文件的车辆控制协议报文。
[0042] 报文信息文件虽然是车辆控制报文解析出来的,但还不是常用的指令文件,因此,还需要将报文信息文件转换成常用格式的车辆控制协议报文。车辆控制协议报文的具体格式可以通过目标代码框架模板来确定,上述目标代码框架模板用于将报文信息文件的代码格式转换为目标代码格式,目标代码框架模板可以根据需要,将报文信息文件按照特定的文件格式进行转换。上述代码生成器用于实现报文信息文件与车辆控制协议报文之间的相互转换。即,代码生成器能够通过目标代码框架模板将报文信息文件转换为目标代码框架模板对应格式的车辆控制协议报文。
[0043] 在本实施例的一些可选的实现方式中,上述从上述车辆控制报文中解析出报文信息文件包括:
[0044] 第一步,检测车辆控制报文的文件格式。
[0045] 车辆控制报文可以是多种不同的文件格式,为了对车辆控制报文进行解析,需要首先确定车辆控制报文的文件格式。现有的车辆控制报文可以是dbc格式的文件或其他格式的文件。
[0046] 第二步,基于上述文件格式解码出对应上述车辆控制报文的报文信息文件。
[0047] 确定车辆控制报文的文件格式后,通过对应的文件解码器可以从车辆控制报文中解析出报文信息文件。
[0048] 在本实施例的一些可选的实现方式中,本实施例上述方法还包括生成代码生成器的步骤,可以包括以下步骤:
[0049] 第一步,获取无人车的车辆控制报文,从上述车辆控制报文解析出报文信息文件。
[0050] 此步骤与上述从车辆控制报文解析出报文信息文件的步骤类似,此处不再赘述。需要说明的是,为了得到准确的代码生成器,此步骤获取的是无人车全部的车辆控制报文。
[0051] 第二步,确定上述报文信息文件的车辆物理控制信息。
[0052] 报文信息文件是无人车的处理器向无人车的执行部件或无人车的执行部件之间进行信息传递的文件,而报文信息文件用于实际控制无人车的行驶,应此,报文信息文件包含了控制无人车的行驶参数,即报文信息文件包含有车辆物理控制信息,要想将车辆控制报文准确转换为车辆控制协议报文,首先需要确定报文信息文件包含的车辆物理控制信息。其中,上述控制内容信息包括控制协议标识、控制协议名称和控制协议内容。
[0053] 第三步,通过目标代码框架模板将上述车辆物理控制信息转换为指定格式的报文代码。
[0054] 由上述描述可知,目标代码框架模板用于将报文信息文件的代码格式转换为目标代码格式,是根据特定的代码格式设置的框架,文件导入到目标代码框架模板后,会得到对应目标代码框架模板的代码格式文件。其中,上述报文代码用于构成车辆控制协议报文,上述报文代码的属性包括编码类型、变量类型、数据类型、数据偏移量和数据分辨率中的至少一项。
[0055] 第四步,建立报文信息文件与报文代码之间的对应关系,得到代码生成器。
[0056] 将通过目标代码框架模板将上述车辆物理控制信息转换为指定格式的报文代码后,可以建立报文信息文件与报文代码之间的对应关系,根据该对应关系得到代码生成器。
[0057] 步骤203,基于上述车辆控制协议报文生成车辆控制命令。
[0058] 通过车辆控制协议报文可以知道无人车当前的状态信息,为了对无人车进行控制,可以根据车辆控制协议报文生成车辆控制命令,大大提高了对无人车控制的多样性,有利于开发无人车的性能和无人车的控制技术。其中,车辆控制命令用于对无人车进行控制。
[0059] 步骤204,将上述车辆控制命令转换为对应上述车辆控制报文的车辆控制指令,并将上述车辆控制指令发送给无人车。
[0060] 车辆控制命令具有与车辆控制协议报文类似的文件格式,不能直接应用到无人车上。因此,需要将车辆控制命令转换为无人车能够执行的车辆控制指令,然后再将车辆控制指令发送给无人车执行。将车辆控制命令转换为车辆控制指令的过程与上述的将车辆控制指令转换为车辆控制命令的过程类似,此处不再赘述。
[0061] 图3是根据本实施例的无人车的控制方法的应用场景的流程图。获取到无人车的dbc(DataBase Commander,数据库容器文件)格式的文件(即车辆控制报文)和无人车的车型信息后,对dbc格式的文件中的协议、信号信息进行解析,得到的信息包括:协议标识、协议名称和协议中每个信号的详细信息。其中,协议标识用于表明无人车的控制器局域网总线控制报文,即每个无人车都有一个协议标识;协议名称为针对协议自身的功能或属性而取的名字,主要用于对协议的功能或属性起到提示作用;协议中每个信号的详细信息则是对每个信号的详细说明,包括:a)编码方式:Intel编码还是Motorola编码;b)起始bit(比特)位:按照Intel编码或者Motorola编码的起始bit位;c)信号占用bit长度:信号占用的bit位数;d)是否是有符号的数值信号:存储在bit中的数值是否有正负之分;e)信号名称:信号的名字;f)信号偏移量:bit信号在换算成物理值时的偏移值;g)信号解析度:bit信号在换算成物理值时的精度;h)信号物理值范围:信号的物理值范围;i)信号物理值单位:信号的物理单位;j)信号程序中的类型:例如是整形数值还是浮点数值等。最后,按照车型信息、目标代码框架模板等生成该无人车的目录信息,进而得到报文信号的函数定义、需要实现的信息和注释信息,最后生成makefile文件(makefile文件用于保存编译器和连接器的参数选项,还表述了所有源文件之间的关系)。其中makefile文件属于“自动化编译”文件,得到makefile文件后,能够实现对全部车辆控制报文的编译,提高了获取车辆控制协议报文的效率。
[0062] 实际操作时,makefile文件的步骤可以包括:
[0063] 第一步,按照车型信息和框架模板生成对应的代码文件夹。
[0064] 例如,车辆类型文件夹下可以包括:报文文件夹(生成的控制代码和读取状态代码);报文管理文件夹(封装所有报文的模块);测试文件夹(测试控制和反馈信号逻辑的文件夹);主控程序文件夹(使用封装的报文模块完成通用的车辆控制文件夹模块)。其中,报文代码(控制代码和状态解析代码)的生成是核心模块,其他都可以使用固定的代码模板来进行生成。
[0065] 第二步,在对应文件夹内按照每个协议的配置文件生成此协议对应的.h文件和.cpp文件(即根据协议中每个信号配置参数生成对应的头文件和实现文件)。
[0066] 在对每个信号进行写入到字节或者解析出物理值意义时,按照信号编码类型、信号程序变量类型、是否有无符号、信号偏移量、信号解析度进行信号解析函数的定义与实现。例如,以方向盘转角控制信号和反馈信号为例,解析出的dbc信号配置文件如表1所示:
[0067]配置信息 方向盘控制信号 方向盘反馈
编码格式 Motorola Motorola
起始bit位 7 7
信号占用bit位 16 16
是否是有符号的信号 是 是
信号名称 ctl_steer_angle steer_angle
信号解析度 0.1 0.1
信号偏移量 -720 -720
信号物理值范围 [-540,540] [-540,540]
信号物理值单位 度 度
信号在目标代码中的类型 int int
[0068] 表1
[0069] 第三步,对于生成的目标代码框架模板,根据自动生成的文件名称和固定的依赖关系,同样可以自动生成对应的Makefile文件,方便协议代码反复编译构建。
[0070] 本申请获取无人车的车辆控制报文,将车辆控制报文转换为车辆控制协议报文,使得车辆控制报文能够被通用的报文指令进行描述;基于上述车辆控制协议报文生成车辆控制命令,将上述车辆控制命令转换为对应上述车辆控制报文的车辆控制指令,并将上述车辆控制指令发送给无人车,实现了通过通用的报文指令对无人车进行控制的目的。
[0071] 进一步参考图4,作为对上述各图所示方法的实现,本申请提供了一种无人车的控制装置的一个实施例,该装置实施例与图2所示的方法实施例相对应。
[0072] 如图4所示,本实施例上述的无人车的控制装置400包括:车辆控制报文接收单元401、车辆控制协议报文转换单元402、车辆控制命令生成单元403和车辆控制单元404。其中,车辆控制报文接收单元401用于接收无人车的车辆控制报文,上述车辆控制报文用于表征无人车的车辆控制特性;车辆控制协议报文转换单元402用于将上述车辆控制报文转换为车辆控制协议报文,上述车辆控制协议报文用于实现对车辆控制报文的通用性指令描述;车辆控制命令生成单元403用于基于上述车辆控制协议报文生成车辆控制命令;车辆控制单元404用于将上述车辆控制命令转换为对应上述车辆控制报文的车辆控制指令,并将上述车辆控制指令发送给无人车。
[0073] 在本实施例的一些可选的实现方式中,上述车辆控制协议报文转换单元402包括:报文信息文件获取子单元(图中未示出)和车辆控制协议报文转换子单元(图中未示出)。其中,报文信息文件获取子单元(图中未示出)用于从上述车辆控制报文中解析出报文信息文件,上述报文信息文件包括报文内容信息和信号信息;车辆控制协议报文转换子单元,用于将上述报文信息文件和目标代码框架模板输入到代码生成器,得到对应上述报文信息文件的车辆控制协议报文,上述目标代码框架模板用于将报文信息文件的代码格式转换为目标代码格式,上述代码生成器用于实现报文信息文件与车辆控制协议报文之间的相互转换。
[0074] 在本实施例的一些可选的实现方式中,上述报文信息文件获取子单元包括:格式检测模块(图中未示出)和解码模块(图中未示出)。其中,格式检测模块用于检测车辆控制报文的文件格式;解码模块用于基于上述文件格式解码出对应上述车辆控制报文的报文信息文件。
[0075] 在本实施例的一些可选的实现方式中,本实施例的无人车的控制装置400还包括:代码生成器生成单元(图中未示出),用于生成代码生成器,包括:解析子单元(图中未示出)、车辆物理控制信息获取子单元(图中未示出)、报文代码转换子单元(图中未示出)和代码转换模板生成子单元(图中未示出)。其中,解析子单元用于获取无人车的车辆控制报文,从上述车辆控制报文解析出报文信息文件;车辆物理控制信息获取子单元用于确定上述报文信息文件的车辆物理控制信息,上述控制内容信息包括控制协议标识、控制协议名称和控制协议内容;报文代码转换子单元用于通过目标代码框架模板将上述车辆物理控制信息转换为指定格式的报文代码,上述报文代码用于构成车辆控制协议报文;代码转换模板生成子单元用于建立报文信息文件与报文代码之间的对应关系,得到代码生成器。
[0076] 在本实施例的一些可选的实现方式中,上述报文代码的属性包括编码类型、变量类型、数据类型、数据偏移量和数据分辨率中的至少一项。
[0077] 本实施例还提供了一种无人车的控制系统,上述系统包括上述的无人车的控制装置。
[0078] 下面参考图5,其示出了适于用来实现本申请实施例的车辆控制设备的计算机系统500的结构示意图。
[0079] 如图5所示,计算机系统500包括中央处理单元(CPU)501,其可以根据存储在只读存储器(ROM)502中的程序或者从存储部分508加载到随机访问存储器(RAM)503中的程序而执行各种适当的动作和处理。在RAM503中,还存储有系统500操作所需的各种程序和数据。CPU501、ROM502以及RAM503通过总线504彼此相连。输入/输出(I/O)接口505也连接至总线
504。
[0080] 以下部件连接至I/O接口505:包括键盘、鼠标等的输入部分506;包括诸如液晶显示器(LCD)等以及扬声器等的输出部分507;包括硬盘等的存储部分508;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分509。通信部分509经由诸如因特网的网络执行通信处理。驱动器510也根据需要连接至I/O接口505。可拆卸介质511,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器510上,以便于从其上读出的计算机程序根据需要被安装入存储部分508。
[0081] 特别地,根据本公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括有形地包含在机器可读介质上的计算机程序,上述计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分509从网络上被下载和安装,和/或从可拆卸介质511被安装。
[0082] 附图中的流程图和框图,图示了按照本申请各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
[0083] 描述于本申请实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现。所描述的单元也可以设置在处理器中,例如,可以描述为:一种处理器包括车辆控制报文接收单元、车辆控制协议报文转换单元、车辆控制命令生成单元和车辆控制单元。其中,这些单元的名称在某种情况下并不构成对该单元本身的限定。例如,车辆控制单元还可以被描述为“用于控制无人车的单元”。
[0084] 作为另一方面,本申请还提供了一种非易失性计算机存储介质,该非易失性计算机存储介质可以是上述实施例中上述装置中所包含的非易失性计算机存储介质;也可以是单独存在,未装配入终端中的非易失性计算机存储介质。上述非易失性计算机存储介质存储有一个或者多个程序,当上述一个或者多个程序被一个设备执行时,使得上述设备:接收无人车的车辆控制报文,上述车辆控制报文用于表征无人车的车辆控制特性;将上述车辆控制报文转换为车辆控制协议报文,上述车辆控制协议报文用于实现对车辆控制报文的通用性指令描述;基于上述车辆控制协议报文生成车辆控制命令;将上述车辆控制命令转换为对应上述车辆控制报文的车辆控制指令,并将上述车辆控制指令发送给无人车。
[0085] 以上描述仅为本申请的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本申请中所涉及的发明范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离所述发明构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本申请中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。