用于车辆控制路由的协议和链路选择的制作方法

文档序号:33550782发布日期:2023-03-22 10:38阅读:17来源:国知局
用于车辆控制路由的协议和链路选择的制作方法

1.本公开涉及一种用于经由多个通信链路将车辆控制指令路由到具有连接性的车辆的系统。


背景技术:

2.许多现代车辆包括远程车辆控制支持特征,所述远程车辆控制支持特征使得用户能够使用在诸如智能电话的装置上执行的应用程序来控制车辆操作的各方面。使用这种应用程序,车辆的所有者可以例如命令车辆解锁其行李厢、提供电池电荷水平数据或执行某一其他类型的操作。可以经由车辆与执行应用程序的装置之间的通信链路向车辆发送控制指令,以使车辆执行期望的操作。如果车辆和执行装置能够根据多个通信协议相互通信,则可能存在可用于将控制指令传达给车辆的多个协议。


技术实现要素:

3.本文公开了一种用于经由多个通信链路将车辆控制指令路由到具有连接性的车辆的系统。所述系统执行车辆控制用户应用程序,用户可以向所述车辆控制用户应用程序提供用户输入以请求所述车辆的车辆控制操作。所述系统还执行车辆控制中间编程,所述车辆控制中间编程可以执行链路评估以确定要用于传达对应于所请求的车辆控制操作的车辆控制指令的特定通信协议特定的通信链路。车辆控制用户应用程序可以经由应用层接口将与通信协议无关的车辆控制请求传递到车辆控制中间编程。
4.实施车辆控制中间编程以接受来自车辆控制用户应用程序的与通信协议无关的车辆控制请求可提高车辆控制用户应用程序创建的效率。不需要创建不同的相应应用程序来支持不同的通信协议,软件开发人员可以创建使用由此类车辆控制中间编程提供的统一接口的统一应用程序,这可以例如在“软件开发套件”(sdk)中实现,以经由多个协议中的任一个来传达车辆控制。这种方法可以通过向用户呈现不透明的协议选择问题并允许用户使用单个应用程序来将车辆控制传达到车辆来产生改进的用户体验。
5.一种系统可包括具有处理器和存储器的计算机,所述存储器存储指令,所述指令可由所述处理器执行以接收对车辆的与通信协议无关的车辆控制请求,基于所述与通信协议无关的车辆控制请求来确定要在所述车辆处执行的车辆控制操作,从多个候选通信协议特定的通信链路中识别将车辆控制指令发送到所述车辆所经由的通信协议特定的通信链路,以及经由所识别的通信协议特定的通信链路向所述车辆发送所述车辆控制指令,以使所述车辆执行所述车辆控制操作。
6.所述识别所述通信协议特定的通信链路可包括根据一个或多个链路评估标准来评估所述一组候选通信链路。
7.一个或多个链路评估标准可包括链路可靠性标准、链路延迟标准或链路容量标准中的一者或多者。
8.一个或多个链路评估标准可包括信号强度标准、装置接近度标准或数据成本标准
中的一者或多者。
9.所述存储器可以存储可由所述处理器执行以识别与所述车辆控制操作相关联的操作类型并基于所述操作类型从所述一组候选通信链路中识别所述通信协议特定的通信链路的指令。
10.所识别的通信协议特定的通信链路可包括无线通信链路。
11.所述无线通信链路可包括无线局域网(wlan)链路。
12.所述无线通信链路可包括蜂窝无线电接入网络链路。
13.无线通信链路可包括蓝牙或蓝牙低功耗(le)链路。
14.所识别的通信协议特定的通信链路可包括有线通信链路。
15.所述存储器可以存储可由所述处理器执行以从车辆控制用户应用程序接收与所述通信协议无关的车辆控制请求的指令。
16.可经由与通信协议无关的应用层接口从所述车辆控制用户应用程序接收与通信协议无关的车辆控制请求。
17.车辆控制操作可包括致动、激活或停用车辆的部件。
18.车辆控制请求可包括对与车辆相关联的数据的请求,并且车辆控制操作可包括提供所请求的与车辆相关联的数据。
19.一种方法可包括接收对车辆的与通信协议无关的车辆控制请求,基于所述与通信协议无关的车辆控制请求来确定要在所述车辆处执行的车辆控制操作,从多个候选通信协议特定的通信链路中识别将车辆控制指令发送到所述车辆所经由的通信协议特定的通信链路,以及经由所识别的通信协议特定的通信链路向所述车辆发送所述车辆控制指令,以使所述车辆执行所述车辆控制操作。
20.所述识别所述通信协议特定的通信链路可包括根据一个或多个链路评估标准来评估所述一组候选通信协议特定的通信链路。
21.一个或多个链路评估标准可包括链路可靠性标准、链路延迟标准或链路容量标准中的一者或多者。
22.一个或多个链路评估标准可包括信号强度标准、装置接近度标准或数据成本标准中的一者或多者。
23.所述方法可包括识别与车辆控制操作相关联的操作类型,并基于所述操作类型从所述一组候选通信协议特定的通信链路中识别所述通信协议特定的通信链路。
24.所识别的通信协议特定的通信链路可包括无线通信链路。
25.所述无线通信链路可包括无线局域网(wlan)链路。
26.所述无线通信链路可包括蜂窝无线电接入网络链路。
27.无线通信链路可包括蓝牙或蓝牙低功耗(le)链路。
28.所识别的通信协议特定的通信链路可包括有线通信链路。
29.所述方法可包括从车辆控制用户应用程序接收所述与通信协议无关的车辆控制请求。
30.可经由与通信协议无关的应用层接口从所述车辆控制用户应用程序接收与通信协议无关的车辆控制请求。
31.车辆控制操作可包括致动、激活或停用车辆的部件。
32.车辆控制请求可包括对与车辆相关联的数据的请求,并且车辆控制操作可包括提供所请求的与车辆相关联的数据。
附图说明
33.图1是示例性系统的框图。
34.图2是示例性服务器的框图。
35.图3是示例性装置的框图。
36.图4示出了所述装置的另外的示例性方面。
37.图5是第一示例性过程流的框图。
38.图6是第二示例性过程流的框图。
39.图7是示例性存储介质的框图。
具体实施方式
40.图1是示例性车辆系统100的框图。系统100包括车辆105,所述车辆是陆地车辆,诸如汽车、卡车等。车辆105包括计算机110、电子控制单元(ecu)112、车辆传感器115、用于致动各种车辆部件125的致动器120、通信模块130以及车辆网络132。通信模块130允许车辆105经由网络135与服务器145通信。
41.计算机110包括处理器和存储器。存储器包括一种或多种形式的计算机可读介质,并且存储可由处理器执行的用于执行包括如本文所公开的各种操作的指令。处理器可使用任何合适的处理器或逻辑装置来实现,诸如复杂指令集计算机(cisc)微处理器、精简指令集计算(risc)微处理器、超长指令字(vliw)微处理器、x86指令集兼容处理器、实现指令集组合的处理器、多核处理器或任何其他合适的微处理器或中央处理单元(cpu)。处理器还可被实现为专用处理器,诸如控制器、微控制器、嵌入式处理器、芯片多处理器(cmp)、协处理器、图形处理器、图形处理单元(gpu)、数字信号处理器(dsp)、网络处理器、媒体处理器、输入/输出(i/o)处理器、媒体访问控制(mac)处理器、无线电基带处理器、专用集成电路(asic)、现场可编程门阵列(fpga)、可编程逻辑装置(pld)等。在一些实现方式中,计算机110可包括多个处理器,每个处理器可根据上述示例中的任一者来实现。
42.计算机110可以自主、半自主模式或非自主(手动)模式操作车辆105,即,可控制和/或监测车辆105的操作,包括控制和/或监测部件125。出于本公开的目的,自主模式被定义为其中车辆推进、制动和转向中的每一者都由计算机110控制的模式;在半自主模式下,计算机110控制车辆推进、制动和转向中的一者或两者;在非自主模式下,人类操作员控制车辆推进、制动和转向中的每一者。
43.计算机110可包括编程以操作车辆制动、推进(例如,通过控制内燃发动机、电动马达、混合发动机等中的一者或多者来控制车辆的加速)、转向、气候控制、内部灯和/或外部灯等中的一者或多者,以及确定计算机110(而非人类操作员)是否以及何时控制此类操作。另外,计算机110可被编程为确定人类操作员是否以及何时控制此类操作。
44.计算机110可例如经由如下文进一步描述的车辆网络132通信地耦合到位于包括在车辆105中的其他装置中的一个或多个处理器。此外,计算机110可经由通信模块130与使用全球定位系统(gps)的导航系统进行通信。作为示例,计算机110可请求并接收车辆105的
位置数据。所述位置数据可为常规格式,例如地理坐标(纬度坐标和经度坐标)。
45.ecu 112(也可称为电子控制模块(ecm)或简称为“控制模块”)是监测和/或控制车辆105的各种车辆部件125的计算装置。ecu 112的示例可包括发动机控制模块、变速器控制模块、动力传动系统控制模块、制动控制模块、转向控制模块等。任何给定的ecu 112都可包括处理器和存储器。存储器可包括一种或多种形式的计算机可读介质,并且可存储可由处理器执行以用于执行包括如本文所公开的各种操作的指令。任何给定ecu 112的处理器均可使用通用处理器或专用处理器或处理电路来实现,包括上文参考包括在计算机110中的处理器识别的任何示例。
46.在一些实现方式中,给定ecu 112的处理器可使用微控制器来实现。在一些实现方式中,给定ecu 112的处理器可使用专用电子电路来实现,所述专用电子电路包括针对特定操作而制造的asic,例如,用于处理传感器数据和/或传送传感器数据的asic。在一些实现方式中,给定ecu 112的处理器可使用fpga来实现,所述fpga是被制造为可由乘员配置的集成电路。通常,在电子设计自动化中使用诸如vhdl(超高速集成电路硬件描述语言)的硬件描述语言来描述诸如fpga和asic的数字和混合信号系统。例如,asic是基于制造前提供的vhdl编程而制造的,而fpga内部的逻辑部件可基于例如存储在电连接到fpga电路的存储器中的vhdl编程而配置。在一些示例中,通用处理器、asic和/或fpga电路的组合可包括在给定ecu 112中。
47.车辆网络132是经由其可在车辆105中的各种装置之间交换消息的网络。计算机110一般可被编程为经由车辆网络132向和/或从车辆105中的其他装置(例如,ecu 112、传感器115、致动器120、部件125、通信模块130、人机界面(hmi)等中的任一者或全部)发送和/或接收消息。另外地或替代地,可经由车辆网络132在车辆105中的各种此类其他装置之间交换消息。在计算机110实际上包括多个装置的情况下,车辆网络132可用于在本公开中表示为计算机110的装置之间的通信。此外,如以下所提及,各种控制器和/或车辆传感器115可向计算机110提供数据。
48.在一些实现方式中,车辆网络132可以是其中经由车辆通信总线传达消息的网络。例如,车辆网络可包括其中经由can总线传达消息的控制器局域网(can),或者其中经由lin总线传达消息的局域互连网(lin)。
49.在一些实现方式中,车辆网络132可包括其中使用其他有线通信技术和/或无线通信技术(例如,以太网、wifi、蓝牙等)传达消息的网络。在一些实现方式中,可用于通过车辆网络132进行通信的协议的其他示例包括但不限于面向媒体的系统传输(most)、时间触发协议(ttp)和flexray。
50.在一些实现方式中,车辆网络132可表示支持车辆105中装置之间通信的可能是不同类型的多个网络的组合。例如,车辆网络132可包括:can,其中车辆105中的一些装置经由can总线进行通信;以及有线或无线局域网,其中车辆105中的一些装置根据以太网或wi-fi通信协议进行通信。
51.车辆传感器115可包括诸如已知的用于向计算机110提供数据的多种装置。例如,车辆传感器115可包括设置在车辆105的顶部上、在车辆105的前挡风玻璃后面、在车辆105周围等的光探测和测距(激光雷达)传感器115等,所述传感器提供车辆105周围的对象的相对位置、大小和形状和/或周围的情况。作为另一示例,固定到车辆105保险杠的一个或多个
雷达传感器115可提供数据以提供对象(可能包括第二车辆)等相对于车辆105的位置的速度并进行测距。车辆传感器115还可包括相机传感器115(例如,前视、侧视、后视等),所述相机传感器提供来自车辆105的内部和/或外部的视野的图像。
52.致动器120经由可根据如已知的适当控制信号来致动各种车辆子系统的电路、芯片、马达或其他电子和/或机械部件来实现。致动器120可用于控制部件125,包括车辆105的制动、加速和转向。
53.在本公开的背景中,车辆部件125是适于执行机械或机电功能或操作(诸如使车辆105移动、使车辆105减速或停止、使车辆105转向等)的一个或多个硬件部件。部件125的非限制性示例包括推进部件(其包括例如内燃发动机和/或电动马达等)、变速器部件、转向部件(例如,其可包括方向盘、转向齿条等中的一者或多者)、制动部件(如以下所描述)、停车辅助部件、自适应巡航控制部件、自适应转向部件、可移动座椅等。
54.此外,计算机110可被配置用于经由通信模块130与车辆105外部的装置通信,例如,通过车辆对车辆(v2v)或车辆对基础设施(v2i)无线通信与另一车辆、远程服务器145(通常经由网络135)通信(v2v和v2i可统称为v2x)。通信模块130可包括计算机110可借以通信的一个或多个机制,包括无线(例如,蜂窝、无线、卫星、微波和射频)通信机制的任何期望组合以及任何期望网络拓扑(或者当利用多个通信机制时的多个拓扑)。经由通信模块130提供的示例性通信包括提供数据通信服务的蜂窝、ieee 802.11、专用短程通信(dsrc)和/或包括互联网的广域网(wan)。
55.网络135可以是各种有线或无线通信机制中的一者或多者,包括有线(例如,电缆和光纤)和/或无线(例如,蜂窝、无线、卫星、微波和射频)通信机制的任何期望的组合以及任何期望的网络拓扑(或当利用多种通信机制时为多个拓扑)。示例性通信网络包括提供数据通信服务的无线通信网络(例如,使用蓝牙、蓝牙低功耗(ble)、ieee802.11、车辆对车辆(v2v)以及蜂窝式v2v(cv2v)、蜂窝式v2i或v2x(cv2x)等)、局域网(lan)和/或包括互联网的广域网(wan)。
56.计算机110可基本上连续地、周期性地和/或当由服务器145指示时等从传感器115接收并分析数据。此外,对象分类或识别技术可用于在例如计算机110中基于激光雷达传感器115、相机传感器115等的数据,来识别对象的类型(例如,车辆、人、岩石、坑洞、自行车、摩托车等)以及对象的物理特征。
57.图2是示例性服务器145的框图。服务器145包括计算机235和通信模块240。计算机235包括处理器和存储器。存储器包括一种或多种形式的计算机可读介质,并且存储可由计算机235执行以执行各种操作(包括如本文所公开的操作)的指令。通信模块240可包括用于有线和/或无线通信(例如,使用合适协议的射频通信)的常规机制,所述常规机制允许计算机235经由无线和/或有线通信网络/链路与其他装置(诸如车辆105)通信。
58.图3是用户装置300(例如,智能电话、平板计算机、膝上型计算机或其他类型的用户装置)的框图。在一些实现方式中,如下面进一步讨论的,装置300可以与车辆105通信以使车辆105响应于用户请求而执行各种类型的操作(统称为“车辆控制操作”)。车辆控制操作是由车辆计算机110发起的操作,并且可以根据车辆控制中间编程410(下文描述)响应于来自装置300的请求而发起。在一些实现方式中,车辆控制操作可包括致动、激活或停用车辆105的部件(例如,解锁或锁定行李厢、关闭或打开天窗等)。在一些实现方式中,车辆控制
操作可包括提供所请求的与车辆105相关联的数据(例如,燃料状态、电池荷电状态、位置等)。
59.如图3所示,装置300可包括处理器302和存储器304。存储器304包括一种或多种形式的计算机可读介质,并且存储可由处理器执行的用于执行包括如本文所公开的各种操作的指令。处理器302可使用任何合适的处理器或逻辑装置来实现,诸如复杂指令集计算机(cisc)微处理器、精简指令集计算(risc)微处理器、超长指令字(vliw)微处理器、x86指令集兼容处理器、实现指令集组合的处理器、多核处理器或任何其他合适的微处理器或中央处理单元(cpu)。处理器302还可被实现为专用处理器,诸如控制器、微控制器、嵌入式处理器、芯片多处理器(cmp)、协处理器、图形处理器、图形处理单元(gpu)、数字信号处理器(dsp)、网络处理器、媒体处理器、输入/输出(i/o)处理器、媒体访问控制(mac)处理器、无线电基带处理器、专用集成电路(asic)、现场可编程门阵列(fpga)、可编程逻辑装置(pld)等。在一些实现方式中,装置300可包括多个处理器(包括处理器302),每个处理器可根据上述示例中的任一者来实现。
60.图4示出了根据一些实现方式的装置300的另外的方面。在图4描绘的示例中,装置300执行(例如,由图3的处理器302)车辆控制用户应用程序406。车辆控制用户应用程序406是与车辆105相关联的用户可以用来指导车辆105执行车辆控制操作的应用程序,而该用户不需要处于与车辆105相同的位置。
61.装置300还执行车辆控制中间编程410。车辆控制中间编程410是生成并发送控制指令以使车辆105执行由车辆控制用户应用程序406的用户输入指定的车辆控制操作的编程。车辆控制用户应用程序406可以通过将车辆控制请求发送到车辆控制中间编程410来向车辆控制中间编程410通知此类指定的车辆控制操作。
62.在一些实现方式中,可以存在装置300和车辆105能够相互通信所依据的多个通信协议。在此类实现方式中,装置300和车辆105可以为那些多个通信协议中的每一个建立相应的通信链路并经由相应的通信链路进行通信。此类通信协议的示例包括但不限于wifi、蜂窝无线通信标准(诸如
第三
代合作伙伴计划(3gpp)长期演进(lte)、高级lte(lte-a)和/或5g新无线电(nr)标准)、蓝牙、低功耗蓝牙(le)、近场通信(nfc)和通用串行总线。
63.根据一些实现方式,车辆控制中间编程410可以处理协议选择和实现,使得当存在可以潜在地用于与车辆105通信的多个协议时,车辆控制中间编程410确定要使用的协议和/或链路以将任何特定的控制指令传送到车辆105。在一些实现方式中,车辆控制中间编程410可以呈现与通信协议无关的应用层接口409,车辆控制中间编程410可以经由所述接口从车辆控制用户应用程序406接收不特定于任何特定通信协议的车辆控制请求(“与通信协议无关的车辆控制请求”)。在一些实现方式中,在从车辆控制用户应用程序406接收到与通信协议无关的车辆控制请求时,车辆控制中间编程410可以发起车辆控制路由程序(下面进一步讨论)以识别将对应的车辆控制指令发送到车辆105所经由的通信协议特定的通信链路。然后,车辆控制中间编程410可以经由所识别的通信协议特定的通信链路向车辆105发送车辆控制指令,以使车辆105执行由与通信协议无关的车辆控制请求指示的车辆控制操作。
64.在图4描绘的示例中,与车辆105相关联的用户向车辆控制用户应用程序406提供用户输入407(例如,使用包括在装置300中的触摸屏、小键盘或其他输入特征)以指定将由
车辆105执行的车辆控制操作。响应于接收到用户输入407,车辆控制用户应用程序406生成指示由用户输入407指定的车辆控制操作的与通信协议无关的(cpa)车辆控制请求408,并且将cpa车辆控制请求408经由与通信协议无关的应用层接口409发送到车辆控制中间编程410。响应于经由与通信协议无关的应用层接口409从车辆控制用户应用程序406接收到cpa车辆控制请求408,车辆控制中间编程410可以发起车辆控制路由程序以识别将对应的车辆控制指令412发送到车辆105所经由的通信协议特定的通信链路。如本文所使用的,术语“通信协议特定的通信链路”意指通信链路(或简称为“链路”),即用于第一装置与第二装置之间的通信的有线和/或无线路径,可以通过所述有线和/或无线路径根据特定通信协议(例如,wifi、蜂窝、蓝牙、蓝牙le、nfc、usb等)并且不能根据其他通信协议进行通信。
65.根据车辆控制路由程序,车辆控制中间编程410可以确定潜在的可利用的通信协议特定的通信链路池(即,组),从中选择将车辆控制指令412发送到车辆105所经由的通信协议特定的通信链路。考虑到装置300和车辆105能够根据其进行通信的相应通信协议,该链路池可包括在装置300与车辆105之间存在(或可以建立)的任何通信协议特定的通信链路。在一些实现方式中,该链路池针对装置300和车辆105能够根据其相互通信的每个通信协议可包括相应的通信协议特定的通信链路。在一些实现方式中,链路池可包括与同一通信协议相关联的多个通信协议特定的通信链路(例如,2.4ghz wifi链路和5.0ghz wifi链路两者)。在图4的示例中,链路池由通信协议特定的通信链路413a、413b、413c、413d和413e组成。
66.在一些实现方式中,车辆控制中间编程410可以缩小链路池以确定一组候选通信协议特定的通信链路414。在图4描绘的示例中,候选通信协议特定的通信链路414包括通信协议特定的通信链路413a、413b和413c。在一些实现方式中,车辆控制中间编程410可以通过排除考虑链路池中相对于发送车辆控制指令412以实现cpa车辆控制请求408的特定目的不合适的任何通信协议特定的通信链路来确定候选通信协议特定的通信链路414。例如,根据诸如装置接近度、传输和/或接收功率要求和能力、干扰、噪声和/或其他环境条件等因素,在接收到cpa车辆控制请求408时可能无法建立和/或利用链路池中的一些潜在可利用的通信协议特定的通信链路,并且那些链路可被排除考虑。根据一些实现方式,链路池的一些通信协议特定的通信链路可被排除考虑,因其不适于发送车辆控制指令412,这是由于它们不能适应应用于传送车辆控制指令412的要求(例如,关于安全性、数据速率、有效载荷大小等)。
67.在一些实现方式中,车辆控制中间编程410可以从候选通信协议特定的通信链路414中识别将车辆控制指令412发送到车辆105所经由的通信协议特定的通信链路(在所描绘的示例中为通信链路413a、413b和413c中的一者)。然后,车辆控制中间编程410可以经由所识别的通信协议特定的通信链路向车辆105发送车辆控制指令412,以使车辆105执行由cpa车辆控制请求408指示的车辆控制操作。
68.在一些实现方式中,结合识别出将车辆控制指令412发送到车辆105所经由的通信协议特定的通信链路,车辆控制中间编程410可以根据一个或多个链路评估标准来评估候选通信协议特定的通信链路414。
69.在一些实现方式中,链路评估标准可包括链路可靠性标准。根据链路可靠性标准评估候选通信协议特定的通信链路414中的任何一个特定通信链路可以涉及确定该候选通
信协议特定的通信链路414的预期可靠性。在一些实现方式中,车辆控制中间编程410可以通过确定候选通信协议特定的通信链路414的链路可靠性参数来量化候选通信协议特定的通信链路414的预期可靠性。链路可靠性参数可以是表示预期可靠性的相对程度的数值或其他定量值。在一些实现方式中,车辆控制中间编程410可以将链路可靠性参数与链路可靠性阈值进行比较,以确定候选通信协议特定的通信链路414是否预期足够可靠以用于发送车辆控制指令412。在一些实现方式中,车辆控制中间编程410可以基于由cpa车辆控制请求408指示的车辆控制操作的性质来选择链路可靠性阈值。例如,在一些实现方式中,车辆控制中间编程410可以针对不同的车辆操作类型应用不同的链路可靠性阈值。
70.在一些实现方式中,链路评估标准可包括链路延迟标准。根据链路延迟标准评估候选通信协议特定的通信链路414中的任何一个特定通信链路可以涉及确定该候选通信协议特定的通信链路414的预期延迟。在一些实现方式中,车辆控制中间编程410可以通过确定候选通信协议特定的通信链路414的链路延迟参数来量化候选通信协议特定的通信链路414的预期延迟。链路延迟参数可以是表示预期延迟的数值或其他定量值。在一些实现方式中,车辆控制中间编程410可以将链路延迟参数与链路延迟阈值进行比较,以确定候选通信协议特定的通信链路414是否预期表现出足够低以用于发送车辆控制指令412的目的的延迟。在一些实现方式中,车辆控制中间编程410可以基于由cpa车辆控制请求408指示的车辆控制操作的性质来选择链路延迟阈值。例如,在一些实现方式中,车辆控制中间编程410可以针对不同的车辆操作类型应用不同的链路延迟阈值。
71.在一些实现方式中,链路评估标准可包括链路容量标准。根据链路容量标准评估候选通信协议特定的通信链路414中的任何一个特定通信链路可以涉及确定该候选通信协议特定的通信链路414的预期容量(例如,可实现的数据速率)。在一些实现方式中,车辆控制中间编程410可以通过确定候选通信协议特定的通信链路414的链路容量参数来量化候选通信协议特定的通信链路414的预期容量。链路容量参数可以是表示预期容量的数值或其他定量值。在一些实现方式中,车辆控制中间编程410可以将链路容量参数与链路容量阈值进行比较,以确定候选通信协议特定的通信链路414是否预期提供足够量的容量以用于发送车辆控制指令412的目的。在一些实现方式中,车辆控制中间编程410可以基于由cpa车辆控制请求408指示的车辆控制操作的性质来选择链路容量阈值。例如,在一些实现方式中,车辆控制中间编程410可以针对不同的车辆操作类型应用不同的链路容量阈值。
72.在一些实现方式中,链路评估标准可包括信号强度标准。根据信号强度标准评估候选通信协议特定的通信链路414中的任何一个特定通信链路可以涉及测量该候选通信协议特定的通信链路414的信号强度。在一些实现方式中,车辆控制中间编程410可以将所测量的信号强度与信号强度阈值进行比较,以确定候选通信协议特定的通信链路414的信号强度是否足够高以用于发送车辆控制指令412的目的。在一些实现方式中,车辆控制中间编程410应用的信号强度阈值可以取决于正在评估的候选通信协议特定的通信链路414下的通信协议。
73.在一些实现方式中,链路评估标准可包括装置接近度标准。根据装置接近度标准评估候选通信协议特定的通信链路414中的任何一个特定通信链路可以涉及估计装置300与车辆105之间的间隔距离(例如,通过比较gps坐标)。在一些实现方式中,车辆控制中间编程410可以将估计的间隔距离与阈值进行比较,以确定装置300和车辆105是否足够接近以
利用正在评估的候选通信协议特定的通信链路414。在一些实现方式中,所应用的阈值可以取决于正在评估的候选通信协议特定的通信链路414下的通信协议。在一些实现方式中,例如,如果候选通信协议特定的通信链路414是近场通信(nfc)链路,则可以应用比候选通信协议特定的通信链路414是蜂窝无线电接入网络链路时将应用的阈值低的阈值。
74.在一些实现方式中,链路评估标准可包括数据成本标准。根据数据成本标准评估候选通信协议特定的通信链路414中的任何一个特定通信链路可以涉及估计与使用该候选通信协议特定的通信链路414发送车辆控制指令412相关联的成本。例如,如果候选通信协议特定的通信链路414是蜂窝无线电接入网络链路,则车辆控制中间编程410可以基于包括在车辆控制指令412中的数据量和根据适用于车辆105的蜂窝数据计划的数据传输的单位成本来估计与使用该候选通信协议特定的通信链路414发送车辆控制指令412相关联的成本。
75.在一些实现方式中,车辆控制中间编程410可以基于与由cpa车辆控制请求408指示的车辆控制操作相关联的操作类型来识别将车辆控制指令412发送到车辆105所经由的通信链路。在一些实现方式中,例如,在从候选通信协议特定的通信链路414中选择通信链路时,车辆控制中间编程410可以考虑所指示的车辆控制操作是否是预期车辆105将响应于车辆控制指令412而将数据发送到装置300的操作类型。如果车辆控制操作是预期车辆105将数据发送到装置300所依据的类型,则车辆控制中间编程410可以选择候选通信协议特定的通信链路414中的不同于车辆控制操作是另一种类型(例如,以及预期车辆105致动、激活或停用车辆105的部件所依据的操作类型)时的通信链路。
76.图5是可以在示例性实现方式中执行以识别将车辆控制指令发送到车辆所经由的通信协议特定的通信链路的过程流500的框图。根据过程流500,在502处识别要针对其选择通信协议特定的通信链路的车辆控制指令。例如,图4的车辆控制中间编程410可以将车辆控制指令412识别为要针对其选择通信协议特定的通信链路的车辆控制指令。在504处,确定从中选择通信协议特定的通信链路的链路池。例如,图4的车辆控制中间编程410可以选择链路池,从所述链路池中选择通过其发送车辆控制指令412的通信协议特定的通信链路。
77.在506处,通过将链路池中不适于发送车辆控制指令的链路排除在考虑之外来确定一组候选通信协议特定的通信链路。例如,图4的车辆控制中间编程410可以通过将链路413d和413e排除为不适于发送车辆控制指令412来识别候选通信协议特定的通信链路414。在一些实现方式中,可以在506处排除一个或多个链路,因为它们不能以足够及时的方式建立和利用来用于发送车辆控制指令的目的。在一些实现方式中,可以在506处排除一个或多个链路,因为它们不能适应应用于传送车辆控制指令的要求(例如,关于安全性、数据速率、有效载荷大小等)。
78.在508处,基于链路评估标准和/或适用的决策参数从候选链路中选择通信协议特定的通信链路。例如,图4的车辆控制中间编程410可以基于适用于选择发送车辆控制指令412所经由的通信协议特定的通信链路的一个或多个链路评估标准和/或决策参数来从候选通信协议特定的通信链路414中选择通信协议特定的通信链路。在其中基于链路评估标准在508处选择通信协议特定的通信链路的一些实现方式中,根据所述标准评估候选链路可以涉及将相关联的阈值与观察到的或预期的参数值进行比较(例如,将估计的链路延迟与链路延迟阈值进行比较)。在其中基于适用的决策参数在508处选择通信协议特定的通信
链路的一些实现方式中,那些适用的决策参数可包括定义的优先级(例如,一个协议优先于另一个协议)、规则集(例如,将各种车辆控制类型映射到相应的优选协议的一组规则)和/或约束(例如,在装置漫游时将不使用蜂窝链路)。也就是说,如将理解的,可以基于使用链路的应用和/或消息(例如,更关键的消息可以具有更多的限制阈值)来确定参数和阈值,例如,一个或多个服务质量度量,诸如延迟、吞吐量、下降等。
79.在510处,确定是否已经通过在508处选择的通信协议特定的通信链路成功地发送了车辆控制指令。例如,图4的车辆控制中间编程410可以确定是否已经通过在508处选择的通信协议特定的通信链路成功地发送了车辆控制指令412。如果尚未通过选择的通信协议特定的通信链路成功地发送车辆控制指令,则在508处从在506处识别的候选链路中选择不同的通信协议特定的通信链路。一旦车辆控制指令已成功发送,过程流就结束。
80.图6是可在示例性实现方式中执行的过程流600的框图。根据过程流600,在602处接收对车辆的与通信协议无关的车辆控制请求。例如,图4的车辆控制中间编程410可经由与通信协议无关的应用层接口409从车辆控制用户应用程序406接收cpa车辆控制请求408。在604处,基于在602处接收的与通信协议无关的车辆控制请求来确定要在车辆处执行的车辆控制操作。例如,图4的车辆控制中间编程410可以基于cpa车辆控制请求408来确定要在车辆105处执行的车辆控制操作。
81.在606处,从多个候选通信协议特定的通信链路中识别将车辆控制指令发送到车辆所经由的通信协议特定的通信链路。例如,图4的车辆控制中间编程410可以从候选通信协议特定的通信链路414中识别将车辆控制指令412发送到车辆105所经由的通信协议特定的通信链路。根据一些实现方式,在606处对通信协议特定的通信链路的识别可以经由应用图5的过程流500来完成。在608处,可以经由所识别的通信协议特定的通信链路将车辆控制指令发送到车辆,以使车辆执行在604处确定的车辆控制操作。例如,图4的车辆控制中间编程410可以经由从候选通信协议特定的通信链路414识别的通信协议特定的通信链路向车辆105发送车辆控制指令412,以使车辆105执行由cpa车辆控制请求408指示的车辆控制操作。
82.图7示出了示例性存储介质700。存储介质700可以是任何非暂时性计算机可读存储介质或机器可读存储介质,诸如光学、磁性或半导体存储介质。在各种实现方式中,存储介质700可以是制品。在一些实现方式中,存储介质700可存储计算机可执行指令,诸如用于实现图5的过程流500和图6的过程流600中的一者或两者的计算机可执行指令。计算机可读存储介质或机器可读存储介质的示例可包括能够存储电子数据的任何有形介质,包括易失性存储器或非易失性存储器、可移除或不可移除存储器、可擦除或不可擦除存储器、可写或可重写存储器等。计算机可执行指令的示例可包括任何合适类型的代码,诸如源代码、编译代码、解释代码、可执行代码、静态代码、动态代码、面向对象的代码、可视化代码等。
83.如本文所使用的,术语"电路"可指专用集成电路(asic)、电子电路、处理器(共享、专用或群组)和/或存储器(共享、专用或群组)、或是其一部分、或包括其在内,执行一个或多个软件或固件程序、组合逻辑电路和/或提供所描述的功能的其他合适的硬件部件。在一些实现方式中,电路可在一个或多个软件或固件模块中实现,或者与电路相关的功能可由一个或多个软件或固件模块实现。在一些实现方式中,电路可包括至少部分地可在硬件中操作的逻辑。
84.如本文所使用的,副词“基本上”意指形状、结构、测量结果、数量、时间等因为材料、机加工、制造等的缺陷而可能偏离精确描述的几何形状、距离、测量结果、数量、时间等。
85.在附图中,相同的附图标记指示相同的元素。另外,可改变这些元素中的一些或全部。关于本文所描述的介质、过程、系统、方法等,应理解,尽管已经将此类过程等的步骤描述为按照某个有序序列发生,但是此类过程可通过以不同于本文描述的顺序的顺序执行所描述的步骤来实践。还应理解,可同时执行某些步骤,可添加其他步骤,或者可省略本文所述的某些步骤。换句话说,本文对过程的描述是出于说明某些实施例的目的而提供的,并且决不应解释为限制所要求保护的发明。
86.已经以说明性方式描述了本公开,并且应理解,已经使用的术语意图具有描述性词语而非限制性词语的性质。鉴于以上教导,本公开的许多修改和变化是可能的,并且本公开可以不同于具体描述的其他方式来实践。本发明意图仅受所附权利要求的限制。
87.根据本发明,提供了一种系统,其具有:具有处理器和存储器的计算机,所述存储器存储指令,所述指令可由所述处理器执行以:接收对车辆的与通信协议无关的车辆控制请求;基于所述与通信协议无关的车辆控制请求来确定要在所述车辆处执行的车辆控制操作;从多个候选通信协议特定的通信链路中识别将车辆控制指令发送到所述车辆所经由的通信协议特定的通信链路;以及经由所识别的通信协议特定的通信链路向所述车辆发送所述车辆控制指令,以使所述车辆执行所述车辆控制操作。
88.根据一个实施例,所述识别所述通信协议特定的通信链路包括根据一个或多个链路评估标准来评估所述多个候选通信协议特定的通信链路。
89.根据一个实施例,所述一个或多个链路评估标准包括以下项中的一者或多者:链路可靠性标准;链路延迟标准;链路容量标准;信号强度标准;装置接近度标准;或数据成本标准。
90.根据一个实施例,所述存储器存储可由所述处理器执行以进行以下操作的指令:识别与所述车辆控制操作相关联的操作类型;并基于所述操作类型从所述多个候选通信协议特定的通信链路中识别所述通信协议特定的通信链路。
91.根据一个实施例,所识别的通信协议特定的通信链路包括无线局域网(wlan)链路、蜂窝无线电接入网络链路、蓝牙链路或蓝牙低功耗(le)链路。
92.根据一个实施例,所识别的通信协议特定的通信链路包括有线通信链路。
93.根据一个实施例,所述存储器存储可由所述处理器执行以从车辆控制用户应用程序接收与所述通信协议无关的车辆控制请求的指令。
94.根据一个实施例,经由与通信协议无关的应用层接口从所述车辆控制用户应用程序接收与通信协议无关的车辆控制请求。
95.根据一个实施例,车辆控制操作包括致动、激活或停用车辆的部件。
96.根据一个实施例,所述车辆控制请求包括对与所述车辆相关联的数据的请求,所述车辆控制操作包括提供所请求的与所述车辆相关联的数据。
97.根据本发明,一种方法包括:接收对车辆的与通信协议无关的车辆控制请求;基于所述与通信协议无关的车辆控制请求来确定要在所述车辆处执行的车辆控制操作;从多个候选通信协议特定的通信链路中识别将车辆控制指令发送到所述车辆所经由的通信协议特定的通信链路;以及经由所识别的通信协议特定的通信链路向所述车辆发送所述车辆控
制指令,以使所述车辆执行所述车辆控制操作。
98.在本发明的一个方面,所述识别所述通信协议特定的通信链路包括根据一个或多个链路评估标准来评估所述一组候选通信协议特定的通信链路。
99.在本发明的一个方面,所述一个或多个链路评估标准包括以下项中的一者或多者:链路可靠性标准;链路延迟标准;链路容量标准;信号强度标准;装置接近度标准;或数据成本标准。
100.在本发明的一个方面,所述方法包括:识别与车辆控制操作相关联的操作类型;并基于所述操作类型从所述多个候选通信协议特定的通信链路中识别所述通信协议特定的通信链路。
101.在本发明的一个方面,所识别的通信协议特定的通信链路包括无线局域网(wlan)链路、蜂窝无线电接入网络链路、蓝牙链路或蓝牙低功耗(le)链路。
102.在本发明的一个方面,所识别的通信协议特定的通信链路包括有线通信链路。
103.在本发明的一个方面,所述方法包括从车辆控制用户应用程序接收所述与通信协议无关的车辆控制请求。
104.在本发明的一个方面,经由与通信协议无关的应用层接口从所述车辆控制用户应用程序接收与通信协议无关的车辆控制请求。
105.在本发明的一个方面,车辆控制操作包括致动、激活或停用车辆的部件。
106.在本发明的一个方面,所述车辆控制请求包括对与所述车辆相关联的数据的请求,所述车辆控制操作包括提供所请求的与所述车辆相关联的数据。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1