掌桥专利:专业的专利平台
掌桥专利
首页

远程车辆控制指令处理方法、装置、设备及介质

文献发布时间:2024-04-18 20:01:55


远程车辆控制指令处理方法、装置、设备及介质

技术领域

本申请涉及远程驾驶技术领域,尤其涉及一种远程车辆控制指令处理方法、装置、设备及介质。

背景技术

随着车辆的普及,自动驾驶车辆、远程驾驶车辆等驾驶方式相继出现,在主流远程驾驶技术方案中,当用户开启了自动驾驶模式或者远程驾驶模式,则云端会直接对该模式下的车辆下发控制指令。

现有技术中,自动驾驶系统只有一条通信链路与底盘连接,所有的控制指令均经由这一条通信链路发送控制命令给底盘来控制车辆的动作;具体的,当云端下发控制指令到车端后,车端程序内部将云端指令转译成该车型能够理解的控制报文并执行,即车端按照规定协议解析并执行提前封装的底盘控制指令。

但是,在上述过程中,操作底盘控制指令对应的参数过于繁琐,开发量大,且当某参数的取值范围发生错误,容易造成较大安全隐患。

发明内容

本申请提供一种远程车辆控制指令处理方法、装置、设备及介质,用于解决现有操作底盘控制指令对应的参数过于繁琐,开发量大,且当某参数的取值范围发生错误,容易造成较大安全隐患的问题。

第一方面,本申请提供一种远程车辆控制指令处理方法,所述方法包括:

接收云端发送的控制指令,并对所述控制指令进行转译,得到底盘控制信息;所述控制指令为云端基于预定义数据交换协议设置的指令;所述控制指令包括速度、转向角以及车辆各部件的开关状态对应的参数;

对所述底盘控制信息进行解释,得到目标控制指令,并利用预定义算法对所述目标控制指令进行处理,得到关键控制信息,利用安全校验算法对所述关键控制信息进行校验,得到校验结果;

当所述校验结果为通过时,将所述关键控制信息进行分类,得到车身控制指令和/或底盘控制指令,并将所述车身控制指令和/或所述底盘控制指令基于底盘控制协议进行封装;

将封装后的所述车身控制指令和/或所述底盘控制指令基于控制器局域网络CAN转译层,以预设的发送周期发送至底盘控制域。

可选的,所述车身控制指令与所述底盘控制指令对应的发送周期不同。

可选的,所述将封装后的所述车身控制指令和/或所述底盘控制指令基于控制器局域网络CAN转译层,以预设的发送周期发送至底盘控制域,包括:

每隔100毫秒的发送周期,基于CAN转译层将封装后的所述车身控制指令发送至底盘控制域;

和/或,每隔20毫秒的发送周期,基于CAN转译层将封装后的所述底盘控制指令发送至底盘控制域。

可选的,所述控制指令基于车辆类型进行修改;每一车辆类型对应有CAN报文;所述将封装后的所述车身控制指令和/或所述底盘控制指令基于控制器局域网络CAN转译层,以预设的发送周期发送至底盘控制域,包括:

获取车辆类型,并基于所述车辆类型将封装后的所述车身控制指令和/或所述底盘控制指令基于控制器局域网络CAN转译层生成第一CAN报文和/或第二CAN报文;

将所述第一CAN报文以每隔100毫秒的发送周期发送至底盘控制域,和/或将所述第二CAN报文以每隔20毫秒的发送周期发送至底盘控制域。

可选的,所述利用预定义算法对所述控制指令进行处理,得到关键控制信息,包括:

对所述控制指令进行反序列化处理,并将经过反序列化处理的所述控制指令进行去重和过滤,得到关键控制信息。

可选的,所述方法还包括:

当所述校验结果为未通过时,基于所述控制指令生成提示信息,并将所述提示信息发送至云端,以使所述云端将所述控制指令进行修正。

可选的,所述方法还包括:

获取车辆的运行状态信息,根据所述运行状态信息和所述关键控制信息的类型,利用预设算法计算所述控制指令的安全等级,并根据所述安全等级对所述车辆进行风险评估。

第二方面,本申请还提供一种远程车辆控制指令处理装置,所述装置包括:

接收模块,用于接收云端发送的控制指令,并对所述控制指令进行转译,得到底盘控制信息;所述控制指令为云端基于预定义数据交换协议设置的指令;所述控制指令包括速度、转向角以及车辆各部件的开关状态对应的参数;

处理模块,用于对所述底盘控制信息进行解释,得到目标控制指令,并利用预定义算法对所述目标控制指令进行处理,得到关键控制信息,利用安全校验算法对所述关键控制信息进行校验,得到校验结果;

封装模块,用于当所述校验结果为通过时,将所述关键控制信息进行分类,得到车身控制指令和/或底盘控制指令,并将所述车身控制指令和/或所述底盘控制指令基于底盘控制协议进行封装;

发送模块,用于将封装后的所述车身控制指令和/或所述底盘控制指令基于控制器局域网络CAN转译层,以预设的发送周期发送至底盘控制域。

第三方面,本申请还提供一种电子设备,包括:处理器,以及与所述处理器通信连接的存储器;

所述存储器存储计算机执行指令;

所述处理器执行所述存储器存储的计算机执行指令,以实现如第一方面中任一项所述的方法。

第四方面,本申请还提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机执行指令,所述计算机执行指令被处理器执行时用于实现如第一方面中任一项所述的方法。

综上所述,本申请提供一种远程车辆控制指令处理方法、装置、设备及介质,具体的,云端基于预定义数据交换协议设置控制指令,并将该控制指令下发至车端;其中,控制指令只包含了速度,转向角以及车身各部件的开关状态对应的参数;进一步的,车端将该控制指令解释后,从中提取关键控制信息,并对该关键控制信息进行安全校验,当校验完成后可以将关键控制信息进行分类,得到车身控制指令和/或底盘控制指令,进一步的,按照底盘控制协议将车身控制指令和/或底盘控制指令封装成序列化的指令发送至CAN转译层,以使CAN转译层基于预设的发送周期发送至底盘控制域,完成整个控制流程;这样,通过精简在远程驾驶中云端与车端的交互信息,云端只需要发送底盘控制中抽象出来的参数,即速度,转向角,各车身部件的开关状态,即可正常的控制无人车完成远程驾驶;并在上述精简指令上,保证驾驶的安全性。

附图说明

此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理。

图1为本申请实施例提供的一种应用场景示意图;

图2为本申请实施例提供的一种远程车辆控制指令处理方法的流程示意图;

图3为本申请实施例提供的一种具体的远程车辆控制指令处理方法的流程示意图;

图4为本申请实施例提供的一种远程车辆控制指令处理装置的结构示意图;

图5为本申请实施例提供的一种电子设备的结构示意图。

通过上述附图,已示出本申请明确的实施例,后文中将有更详细的描述。这些附图和文字描述并不是为了通过任何方式限制本申请构思的范围,而是通过参考特定实施例为本领域技术人员说明本申请的概念。

具体实施方式

为了便于清楚描述本申请实施例的技术方案,在本申请的实施例中,采用了“第一”、“第二”等字样对功能和作用基本相同的相同项或相似项进行区分。例如,第一设备和第二设备仅仅是为了区分不同的设备,并不对其先后顺序进行限定。本领域技术人员可以理解“第一”、“第二”等字样并不对数量和执行次序进行限定,并且“第一”、“第二”等字样也并不限定一定不同。

需要说明的是,本申请中,“示例性的”或者“例如”等词用于表示作例子、例证或说明。本申请中被描述为“示例性的”或者“例如”的任何实施例或设计方案不应被解释为比其他实施例或设计方案更优选或更具优势。确切而言,使用“示例性的”或者“例如”等词旨在以具体方式呈现相关概念。

本申请中,“至少一个”是指一个或者多个,“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B的情况,其中A,B可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系。“以下至少一项(个)”或其类似表达,是指的这些项中的任意组合,包括单项(个)或复数项(个)的任意组合。例如,a,b,或c中的至少一项(个),可以表示:a,b,c,a-b,a-c,b-c,或a-b-c,其中a,b,c可以是单个,也可以是多个。

随着车辆的普及,自动驾驶车辆、远程驾驶车辆等驾驶方式相继出现,在主流远程驾驶技术方案中,当用户开启了自动驾驶模式或者远程驾驶模式,则云端会直接对该模式下的车辆下发控制指令。

一种可能的实现方式中,自动驾驶系统只有一条通信链路与底盘连接,所有的控制指令均经由这一条通信链路发送控制命令给底盘来控制车辆的动作;具体的,当云端下发控制指令到车端后,车端程序内部将云端指令转译成该车型能够理解的控制报文并执行,即车端按照规定协议解析并执行提前封装的底盘控制指令。

由于底盘控制指令的抽象化,云端人员往往会将一些关键指令封装好发送至车端,进而车端按照规定协议解析并执行;在上述过程中,关键指令通常是包含了大量的和底盘相关的详细参数,如电机转速、油门开度、刹车开度等;虽然使用了指令转译将该类关键指令简化成云端可直观操作的数据,但是,对于云端用户来说,操作底盘控制指令对应的参数过于繁琐,而且当某参数的取值范围发生错误,或某车型的控制参数与其他车型有细微区别时,则容易造成较大安全隐患。

需要说明的是,车端程序内部将云端指令转换成该车型能够理解的控制报文对应的过程为指令转译,此类过程被广泛应用于无人线控车中,而此类方案的好处在于将云端指令与底盘实际控制指令隔离,并将底盘控制指令抽象成可被直观表现出来的协议内容,如速度、转向等,可使得云端人员在设计上位程序时更加的简便与快捷。

针对上述问题,本申请提供一种远程车辆控制指令处理方法,具体的,云端基于预定义数据交换协议设置控制指令,并将该控制指令下发至车端;其中,控制指令只包含了速度,转向角以及车身各部件的开关状态对应的参数;进一步的,车端将该控制指令解释后,从中提取关键控制信息,并对该关键控制信息进行安全校验,当校验完成后可以将关键控制信息进行分类,得到车身控制指令和/或底盘控制指令,进一步的,按照底盘控制协议将车身控制指令和/或底盘控制指令封装成序列化的指令发送至CAN转译层,以使CAN转译层基于预设的发送周期发送至底盘控制域,完成整个控制流程;这样,通过精简在远程驾驶中云端与车端的交互信息,云端只需要发送底盘控制中抽象出来的参数,即速度,转向角,各车身部件的开关状态,即可正常的控制无人车完成远程驾驶;并在上述精简指令上,保证驾驶的安全性。

示例性的,图1为本申请实施例提供的一种应用场景示意图,如图1所示,该应用场景适用于远程驾驶的底盘控制软件,该应用场景包括:云端101和汽车102;其中,汽车102的中央处理器(Central Processing Unit,CPU)中部署有指令转译层,指令解释层,控制器局域网络(Controller Area Network,CAN)转译层和底盘控制域。

具体的,云端101可以精简与车端的交互信息,得到控制指令,进一步的,将控制指令下发至汽车102的CPU中,进一步的,指令转译层将该控制指令转译成另一种编程语言的源代码,即汽车102对应可执行编程的底盘控制信息,进一步的,基于指令解释层将底盘控制信息转化为汽车102可理解的目标控制指令,进一步的,基于指令解释层提取该目标控制指令中的关键控制信息并进行安全校验,当校验完成后指令解释层可以将关键控制信息分类并按底盘控制协议封装成序列化的指令发送至CAN转译层,以使CAN转译层基于提前设定的发送周期发送至底盘控制域,进而完成整个远程驾驶的底盘控制流程。

需要说明的是,针对汽车102不同的车型,云端可以精简不同的控制指令,但是控制指令已高度抽象化,即已经与实际车型分开,因此,上述处理过程对应的云端程序可在多车型复用,且CAN转译层可按不同车型所需发送相应的指令,本申请实施例对汽车102不对应的车型以及控制指令不作具体限定。

下面以具体地实施例对本申请的技术方案以及本申请的技术方案如何解决上述技术问题进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。下面将结合附图,对本申请的实施例进行描述。

图2为本申请实施例提供的一种远程车辆控制指令处理方法的流程示意图,如图2所示,所述远程车辆控制指令处理方法的执行主体为车端,所述远程车辆控制指令处理方法包括如下步骤:

S201、接收云端发送的控制指令,并对所述控制指令进行转译,得到底盘控制信息;所述控制指令为云端基于预定义数据交换协议设置的指令;所述控制指令包括速度、转向角以及车辆各部件的开关状态对应的参数。

本申请实施例中,所述预定义数据交换协议可以指的是protobuf3标准协议,该protobuf3标准协议用于序列化结构化数据,所述预定义数据交换协议也可以指的是其他序列化协议,本申请实施例对此不作具体限定。

在本步骤中,云端可以基于protobuf3标准制定的通讯协议,将控制指令下发至车端;所述控制指令用于控制车辆的运行状态的指令,该控制指令只包括速度、转向角以及车身各部件的开关状态对应的参数,所述车身各部件包括刹车器、雨刮器、左右转向灯等汽车结构部件;进一步的,车端CPU内的指令转译层将该控制指令转译成车端对应的可执行编程的底盘控制信息;所述转译是指将一种编程语言的源代码转换为另一种编程语言的源代码的过程。

可选的,云端可以按自身需求对控制指令的发送周期进行控制,本申请实施例对此不作具体限定。

S202、对所述底盘控制信息进行解释,得到目标控制指令,并利用预定义算法对所述目标控制指令进行处理,得到关键控制信息,利用安全校验算法对所述关键控制信息进行校验,得到校验结果。

本申清实施例中,所述预定义算法指的是提取关键控制信息的算法;所述关键控制信息为经过反序列化、过滤以及去重处理后的目标控制指令;所述安全校验算法可以是对关键控制信息中的参数进行阈值比对的方法,也可以指的是其他安全校验算法,本申请实施例对此不作具体限定,其可以参照现有对控制指令安全校验的方法。

在本步骤中,车端CPU内的指令解释层对底盘控制信息进行解释,即将底盘控制信息转化为车端可理解和执行的目标控制指令,进一步的,指令解释层将目标控制指令反序列化后,提取关键控制信息,并利用安全校验算法进行安全校验,得到校验结果。

S203、当所述校验结果为通过时,将所述关键控制信息进行分类,得到车身控制指令和/或底盘控制指令,并将所述车身控制指令和/或所述底盘控制指令基于底盘控制协议进行封装。

本申请实施例中,对关键控制信息进行分类的方法为提前制定的用于区分车身控制指令和底盘控制指令的方法,本申请实施例对其对应的具体方法不作限定;所述车身控制指令为对内外部灯光、车窗、无钥匙进入及启动系统、防盗报警、雨刮洗涤等车身部件进行控制的指令,用于实现对某个或某些车身部件的控制;所述底盘控制指令为线控驱动、线控转向、线控制动和线控悬挂的控制指令,用于实现汽车的转向、制动、驱动等功能,在汽车远程驾驶中,对底盘控制指令的接收时延要低于车身控制指令的接收时延,以提高汽车运行的安全性。

在本步骤中,当令解释层校验完成后,可以将关键控制信息进行指令分类,得到车身控制指令和/或底盘控制指令,进一步的,按照底盘控制协议将车身控制指令和/或底盘控制指令封装成序列化的指令发送至CAN转译层。

S204、将封装后的所述车身控制指令和/或所述底盘控制指令基于控制器局域网络CAN转译层,以预设的发送周期发送至底盘控制域。

本申请实施例中,所述CAN转译层用于将一个通讯协议转换为另一个通讯协议;所述发送周期可以指的是提前预设的发送车身控制指令与底盘控制指令的周期。

在本步骤中,车端CPU内部的CAN转译层可以将封装后的车身控制指令以提前预设的发送周期发送至底盘控制域,和/或,将封装后的底盘控制指令以提前预设的发送周期发送至底盘控制域,以完成整个控制流程。

其中,车身控制指令与底盘控制指令的发送周期可以相同,也可以不同,本申请实施例对此不作具体限定。

因此,本申请实施例提供一种远程车辆控制指令处理方法,通过将底盘控制复杂的控制指令高度抽象化,方便云端多车型复用的同时最大程度上减少了云端开发的任务量;当控制指令到达车端时,指令转译层与指令解释层在保证安全的基础上,可以将指令正确发送至CAN转译层,之后发送至底盘控制域,完成整个远程驾驶底盘控制流程;其中,控制指令被精简至仅剩下关键数据,云端人员无需关注底盘详细情况便可控制,并通过在指令解释层添加了安全验证,即使云端指令下发有误,也可以直接将此条指令过滤掉,满足远程驾驶对安全的要求。

可选的,所述车身控制指令与所述底盘控制指令对应的发送周期不同。

本申请实施例中,允许以不同的发送周期向底盘控制域进行高效的数据传输和通信,车身控制指令的发送周期高于底盘控制指令的发送周期,车身控制指令与底盘控制指令的发送周期可按需配置,本申请实施例对此不作具体限定,如车身控制指令对应100毫秒的发送周期,底盘控制指令对应20毫秒的发送周期。

示例性的,车端CPU内部的CAN转译层可以将封装后的车身控制指令以100毫秒的发送周期发送至底盘控制域,和/或将封装后的底盘控制指令以20毫秒的发送周期发送至底盘控制域,以完成整个控制流程。

因此,本申请实施例在保证安全的基础上,还可以降低控制指令的时延。

可选的,所述将封装后的所述车身控制指令和/或所述底盘控制指令基于控制器局域网络CAN转译层,以预设的发送周期发送至底盘控制域,包括:

每隔100毫秒的发送周期,基于CAN转译层将封装后的所述车身控制指令发送至底盘控制域;

和/或,每隔20毫秒的发送周期,基于CAN转译层将封装后的所述底盘控制指令发送至底盘控制域。

本申请实施例中,经过大量试验表明,以每隔100毫秒的发送周期,基于CAN转译层将封装后的车身控制指令发送至底盘控制域,和/或,以每隔20毫秒的发送周期,基于CAN转译层将封装后的底盘控制指令发送至底盘控制域,可以达到最好的低延迟效果,且不会引发控制指令周期过短导致的问题。

需要说明的是,针对不同的车型或车端的运行环境可以为车身控制指令和底盘控制指令设置不同的发送周期,本申请实施例对此不作具体限定。

因此,本申请实施例由于将车身控制指令与底盘控制指令经由指令转译层与指令解释层分离开,在保证底盘指令低时延的基础上,提高了车端运行的安全性。

可选的,所述控制指令基于车辆类型进行修改;每一车辆类型对应有CAN报文;所述将封装后的所述车身控制指令和/或所述底盘控制指令基于控制器局域网络CAN转译层,以预设的发送周期发送至底盘控制域,包括:

获取车辆类型,并基于所述车辆类型将封装后的所述车身控制指令和/或所述底盘控制指令基于控制器局域网络CAN转译层生成第一CAN报文和/或第二CAN报文;

将所述第一CAN报文以每隔100毫秒的发送周期发送至底盘控制域,和/或将所述第二CAN报文以每隔20毫秒的发送周期发送至底盘控制域。

本申请实施例中,车辆类型可以指的是不同型号和功能的车端;针对不同的车型,云端可基于预定义数据交换协议设置相应的控制指令,该控制指令经由指令转译层、指令解释层、CAN转译层处理,得到不同车型所需的CAN报文,进而基于CAN转译层将CAN报文发送到底盘控制域。

在本步骤中,获取车辆类型,并将车辆类型发送至云端,以使云端基于车辆类型设置相应的控制指令,在车端接收该控制指令后,经由指令转译层、指令解释层、CAN转译层的转移、解释、分类和封装,可以基于封装后的车身控制指令和/或底盘控制指令生成第一CAN报文和/或第二CAN报文;进而车端CAN转译层可按不同车型所需,以每隔100毫秒的发送周期发送第一CAN报文至底盘控制域,和/或,以每隔20毫秒的发送周期发送第二CAN报文至底盘控制域。

需要说明的是,由于本申请涉及到的通讯协议中所规定的参数高度抽象,已经与实际车型分开,故本申请提供的远程车辆控制指令处理方法对应的云端程序即可在多车型复用。

因此,在上述过程中,车端CAN转译层可按不同车型所需发送相应的CAN报文,且两个指令周期分离带来了整个控制流程上的低延迟效果。

可选的,所述利用预定义算法对所述控制指令进行处理,得到关键控制信息,包括:

对所述控制指令进行反序列化处理,并将经过反序列化处理的所述控制指令进行去重和过滤,得到关键控制信息。

本申请实施例中,由于控制指令的发送是不间断的,则可能存在发送的控制指令中存在重复或有干扰信息的参数,因此需要对控制指令进行去重和过滤处理,以提高后续车端执行控制指令的准确性。

在本步骤中,由于云端按预定义数据交换协议下发序列化的控制指令至车端,进而车端将控制指令反序列化后,进行去重和过滤处理,即可以提取关键控制信息。

因此,本申请实施例可以对控制指令进行处理,提高获取关键控制信息的准确性。

可选的,所述方法还包括:

当所述校验结果为未通过时,基于所述控制指令生成提示信息,并将所述提示信息发送至云端,以使所述云端将所述控制指令进行修正。

在本步骤中,当关键控制信息校验未通过时,可以基于该关键控制信息对应的控制指令生成提示信息,进而将提示信息以消息框的形式发送到云端对应的显示设备上,以提示云端人员对该控制指令进行修正,进而将修正的控制指令再次下发,或者直接过滤掉,重新生成新的控制指令,本申请实施例对提示信息的发送形式和显示内容不作具体限定,其还可以以短信的方式发送到云端人员对应的终端设备上。

可以理解的是,若云端下发的控制指令有误,则在经过指令解释层进行安全验证时,可以将有误的控制指令进行过滤,相应的,生成提示信息,以提醒云端人员该控制指令存在问题,便于及时修正。

因此,本申请实施例可以对存在问题的控制指令进行修正,提高了发送控制指令的准确性。

可选的,所述方法还包括:

获取车辆的运行状态信息,根据所述运行状态信息和所述关键控制信息的类型,利用预设算法计算所述控制指令的安全等级,并根据所述安全等级对所述车辆进行风险评估。

本申请实施例中,运行状态信息可以包括车辆联网状态信息、车辆系统运行状态信息、车辆硬件运行状态信息和车辆行驶环境状态信息,所述车辆行驶环境状态包括与周围车间距、与周围障碍物距离,行驶的路段等;所述运行状态信息可以基于与车联网的通信获取,所述车辆网中存储有车辆上摄像头等设备采集的车辆行驶环境信息、车联网状态信息等。

所述预设算法可以指的是安全等级量化算法,该安全等级量化算法中包含的变量分别为类型变量和状态变量,因而,可以将关键控制信息的类型和运行状态信息分别量化为类型变量值和状态变量值,根据安全等级量化算法对类型变量值和状态变量值计算获取车辆控制指令的安全等级。

可选的,所述预设算法也可以为预先训练的神经网络模型,该神经网络模型的输入为关键控制信息的类型和运行状态信息,输出为车辆控制指令的安全等级,因而,可以将关键控制信息的类型和运行状态信息输入预设的神经网络模型,以获取到该神经网络模型输出的安全等级。

其中,所述安全等级可以是数字、文字、字母等预先标定的可以代表安全性高度的标识信息,本申请实施例对此不作具体限定,所述关键控制信息的类型用于区分不同类型车辆的控制指令。

在本步骤中,基于预设算法对关键控制信息的类型和运行状态信息进行量化处理计算出车辆的控制指令的安全等级,进一步的,根据安全等级确定车辆的控制指令的风险评估结果,如,当安全等级较高(1级)时,确定控制指令的风险评估结果为可执行指令;当安全等级较低(2级)时,确定控制指令的风险评估结果为可执行指令但需要提前预警;当安全等级很低(3级)时,确定控制指令的风险评估结果为不可执行指令;这样,在确定车辆的风险评估结果后,可以根据风险评估结果对车辆的控制指令进行安全处理。

因此,本申请实施例可以基于车辆的运行状态信息对控制指令进行风险判断,及时对有风险的控制指令进行安全处理,保证了车辆行驶的安全性。

结合上述实施例,图3为本申请实施例提供的一种具体的远程车辆控制指令处理方法的流程示意图,该远程车辆控制指令处理方法包括如下步骤:

步骤A:云端周期性的向车端发送控制指令;其中,周期可按需进行设置。

步骤B:车端的指令转译层接收到该控制指令后,对该控制指令进行转译,得到底盘控制信息,该底盘控制信息为简略的信息;进一步的,指令转译层将该底盘控制信息发送到指令解释层进行处理。

步骤C:指令解释层对底盘控制信息进行解释,得到目标控制指令,并从目标控制指令中提取关键控制信息,进一步的,将关键控制信息发送到安全校验层进行校验,在校验完毕后,该指令解释层对校验通过的关键控制信息进行分类,得到车身控制指令和/或底盘控制指令,进一步的,将车身控制指令和/或底盘控制指令发送到CAN转译层。

需要说明的是,安全校验层可以是指令解释层中的一个子层,也可以是单独的一个层,本申请实施例对此不作具体限定。

步骤D:CAN转译层每隔100毫秒的发送周期,将车身控制指令发送至底盘控制域,和/或CAN转译层每隔20毫秒的发送周期,将底盘控制指令发送至底盘控制域,完成整个远程驾驶的控制流程。

这样,基于云端精简的指令即可控制远程驾驶;且在保证安全的基础上,还可以降低控制指令的时延。

在前述实施例中,对本申请实施例提供的远程车辆控制指令处理方法进行了介绍,而为了实现上述本申请实施例提供的方法中的各功能,作为执行主体的电子设备可以包括硬件结构和/或软件模块,以硬件结构、软件模块、或硬件结构加软件模块的形式来实现上述各功能。上述各功能中的某个功能以硬件结构、软件模块、还是硬件结构加软件模块的方式来执行,取决于技术方案的特定应用和设计约束条件。

例如,图4为本申请实施例提供的一种远程车辆控制指令处理装置的结构示意图,所述装置400包括:接收模块401,处理模块402,封装模块403和发送模块404;其中,所述接收模块401,用于接收云端发送的控制指令,并对所述控制指令进行转译,得到底盘控制信息;所述控制指令为云端基于预定义数据交换协议设置的指令;所述控制指令包括速度、转向角以及车辆各部件的开关状态对应的参数;

所述处理模块402,用于对所述底盘控制信息进行解释,得到目标控制指令,并利用预定义算法对所述目标控制指令进行处理,得到关键控制信息,利用安全校验算法对所述关键控制信息进行校验,得到校验结果;

所述封装模块403,用于当所述校验结果为通过时,将所述关键控制信息进行分类,得到车身控制指令和/或底盘控制指令,并将所述车身控制指令和/或所述底盘控制指令基于底盘控制协议进行封装;

所述发送模块404,用于将封装后的所述车身控制指令和/或所述底盘控制指令基于控制器局域网络CAN转译层,以预设的发送周期发送至底盘控制域。

可选的,所述车身控制指令与所述底盘控制指令对应的发送周期不同。

可选的,所述发送模块404,具体用于:

每隔100毫秒的发送周期,基于CAN转译层将封装后的所述车身控制指令发送至底盘控制域;

和/或,每隔20毫秒的发送周期,基于CAN转译层将封装后的所述底盘控制指令发送至底盘控制域。

可选的,所述控制指令基于车辆类型进行修改;每一车辆类型对应有CAN报文;所述发送模块404,具体用于:

获取车辆类型,并基于所述车辆类型将封装后的所述车身控制指令和/或所述底盘控制指令基于控制器局域网络CAN转译层生成第一CAN报文和/或第二CAN报文;

将所述第一CAN报文以每隔100毫秒的发送周期发送至底盘控制域,和/或将所述第二CAN报文以每隔20毫秒的发送周期发送至底盘控制域。

可选的,所述处理模块402,具体用于:

对所述控制指令进行反序列化处理,并将经过反序列化处理的所述控制指令进行去重和过滤,得到关键控制信息。

可选的,所述装置400还包括修正模块,所述修正模块,用于:

当所述校验结果为未通过时,基于所述控制指令生成提示信息,并将所述提示信息发送至云端,以使所述云端将所述控制指令进行修正。

可选的,所述装置400还包括风险评估模块,所述风险评估模块,用于:

获取车辆的运行状态信息,根据所述运行状态信息和所述关键控制信息的类型,利用预设算法计算所述控制指令的安全等级,并根据所述安全等级对所述车辆进行风险评估。

本申请实施例提供的一种远程车辆控制指令处理装置的具体实现原理和效果可以参见上述实施例对应的相关描述和效果,此处不做过多赘述。

本申请实施例还提供了一种电子设备的结构示意图,图5为本申请实施例提供的一种电子设备的结构示意图,如图5所示,该电子设备可以包括:处理器501以及与所述处理器通信连接的存储器502;该存储器502存储计算机程序;该处理器501执行该存储器502存储的计算机程序,使得该处理器501执行上述任一实施例所述的方法。

其中,存储器502和处理器501可以通过总线503连接。

本申请实施例还提供了一种计算机可读存储介质,计算机可读存储介质存储有计算机程序执行指令,计算机执行指令被处理器执行时用于实现如本申请前述任一实施例中的所述的方法。

本申请实施例还提供了一种运行指令的芯片,该芯片用于执行如本申请前述任一实施例中由电子设备所执行的前述任一实施例中所述的方法。

本申请实施例还提供了一种计算机程序产品,该程序产品包括计算机程序,该计算机程序被处理器执行时可实现如本申请前述任一实施例中由电子设备所执行的前述任一实施例中所述的方法。

在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个模块或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或模块的间接耦合或通信连接,可以是电性,机械或其它的形式。

作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案。

另外,在本申请各个实施例中的各功能模块可以集成在一个处理单元中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个单元中。上述模块成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。

上述以软件功能模块的形式实现的集成的模块,可以存储在一个计算机可读取存储介质中。上述软件功能模块存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器执行本申请各个实施例所述方法的部分步骤。

应理解,上述处理器可以是中央处理单元(Central Processing Unit,简称CPU),还可以是其它通用处理器、数字信号处理器(Digital Signal Processor,简称DSP)、专用集成电路(Application Specific Integrated Circuit,简称ASIC)等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合申请所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。

存储器可能包含高速随机存取存储器(Random Access memory,简称RAM),也可能还包括非不稳定的存储器(Non-volatile Memory,简称NVM),例如至少一个磁盘存储器,还可以为U盘、移动硬盘、只读存储器、磁盘或光盘等。

总线可以是工业标准体系结构(Industry Standard Architecture,简称ISA)总线、外部设备互连(Peripheral Component Interconnect,简称PCI)总线或扩展工业标准体系结构(Extended Industry Standard Architecture,简称EISA)总线等。总线可以分为地址总线、数据总线、控制总线等。为便于表示,本申请附图中的总线并不限定仅有一根总线或一种类型的总线。

上述存储介质可以是由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(Static Random-Access Memory,简称SRAM),电可擦除可编程只读存储器(Electrically Erasable Programmable Read Only Memory,简称EEPROM),可擦除可编程只读存储器(Erasable Programmable Read-Only Memory,简称EPROM),可编程只读存储器(Programmable Read-Only Memory,简称PROM),只读存储器(Read-OnlyMemory,简称ROM),磁存储器,快闪存储器,磁盘或光盘。存储介质可以是通用或专用计算机能够存取的任何可用介质。

一种示例性的存储介质耦合至处理器,从而使处理器能够从该存储介质读取信息,且可向该存储介质写入信息。当然,存储介质也可以是处理器的组成部分。处理器和存储介质可以位于专用集成电路(Application Specific Integrated Circuits,简称ASIC)中。当然,处理器和存储介质也可以作为分立组件存在于电子设备或主控设备中。

需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请并不受所描述的动作顺序的限制,因为依据本申请,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于可选实施例,所涉及的动作和模块并不一定是本申请所必须的。

进一步需要说明的是,虽然流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,流程图中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。

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

本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本申请的其它实施方案。本申请旨在涵盖本申请的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本申请的一般性原理并包括本申请未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本申请的真正范围和精神由权利要求书指出。

以上所述,仅为本申请实施例的具体实施方式,但本申请实施例的保护范围并不局限于此,任何在本申请实施例揭露的技术范围内的变化或替换,都应涵盖在本申请实施例的保护范围之内。因此,本申请实施例的保护范围应以所述权利要求的保护范围为准。

技术分类

06120116571179