一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

交通工具软件部署系统的制作方法

2022-07-29 22:01:52 来源:中国专利 TAG:
交通工具软件部署系统
1.相关申请的交叉引用本技术要求2019年12月23日提交的、名称为“vehicle software deployment system”的、序列号为16/725,039的美国专利申请的权益和来自该美国专利申请的优先权,该美国专利申请以其全文通过引用而并入。
技术领域
2.本公开总体上涉及交通工具,并且更具体地,涉及提供自主交通工具的自动软件更新的系统和方法。


背景技术:

3.随着更多交通工具系统已经开始依赖于计算机,软件已经变为交通工具的操作的大部分。特别地,自主交通工具依赖于用于路由计划、操纵计划和运动计划、还有其他操作的软件。有时,可以出于各种原因而更新软件。在传统实施例中,更新软件涉及了技术人员将设备物理连接到交通工具的计算机,其中设备将使交通工具的软件被更新。
附图说明
4.给以下附图提供随附的描述,以提供用于理解本文公开的主题的一些示例。遍及附图,可以利用相同附图标记给部件加标签,以指示该部件是相同部件或包括与遍及其中利用相同附图标记的附图利用相同附图标记加标签的其他部件相同的特征。
5.图1图示了根据本文描述的实施例的示例软件更新系统布置。
6.图2图示了根据本文描述的实施例的用于调度交通工具的软件更新的示例过程。
7.图3图示了根据本文描述的实施例的针对具有被更新的软件的交通工具的示例过程。
8.图4图示了根据本文描述的实施例的用于由更新系统更新交通工具的示例过程。
9.图5图示了根据本文描述的实施例的针对更新系统检测交通工具进入更新系统的邻近处内的示例布置。
10.图6图示了根据本文描述的实施例的指示软件更新进度的示例用户界面。
11.图7图示了根据本文描述的实施例的示例自主交通工具。
12.图8图示了根据本文描述的实施例的可在自主交通工具内实现的示例部件。
具体实施方式
13.如本文所描述,本技术的一个方面是:收集和使用从各种源可得的数据,以改进质量和体验。本公开考虑到:在一些实例中,该所收集的数据可以包括个人信息。本公开考虑到:实体涉及了这种个人信息方面且重视隐私策略和实践。
14.以下描述和附图提供图示本文描述的主题的特征的一些示例。本公开总体上涉及交通工具,并且更具体地,涉及提供自主交通工具的自动软件更新的系统和方法。
15.软件已经变为许多交通工具的组成部分。软件被用于控制和实现交通工具中的许多操作。例如,自主交通工具可以依赖于识别自主交通工具的周围环境的软件,并且,可以随时间开发软件以出于各种原因(诸如,用于改进交通工具的操作)而在交通工具中实现。可以针对交通工具执行软件更新,以更新交通工具所利用的软件。
16.本文描述的系统和过程可以促进针对交通工具的软件更新的部署。与交通工具相关的信息可以被用于确定针对交通工具的软件更新的时间和针对交通工具的软件更新的位置。可以确定交通工具何时在该位置处进入更新系统的服务范围并响应于交通工具进入该服务范围而发起软件更新。与软件更新相关的信息可以被提供给用于跨更新系统监视软件更新的仪表盘系统。
17.如本领域技术人员应当领会的那样,本文描述的特征可以以各种方式体现——例如,体现为方法、设备、系统、计算机程序产品、计算机可读介质和/或其他方式。相应地,本文描述的特征可以采取完全硬件的实施例、完全软件的实施例(诸如,被实现为固件、驻留软件、微代码或其他软件实现方式中的一个或多个)或者将软件和硬件方面进行组合的实施例的形式。本公开中描述的主题的特征可以采取计算机程序产品的形式。例如,特征可以被实现为在一个或多个计算机可读介质(诸如,非瞬变计算机可读介质)上存储的指令(诸如,程序代码)或者具有指令存储于其上的一个或多个计算机可读介质,其中指令响应于由设备(诸如,计算机)的执行而使设备执行一个或多个操作。在各种实施例中,指令可以在计算机可读介质的制造期间被存储在计算机可读介质上,或者可以在计算机可读介质的制造之后被存储在计算机可读介质上,在计算机可读介质的制造之后包括当计算机可读介质已经被实现在设备内时。
18.如遍及本公开而利用的那样,术语“操作指派”可以指代交通工具可被指派给的要执行的服务操作。例如,交通工具可被指派给的操作指派的一些示例包括通勤者搭乘和物品递送,其中交通工具将基于操作指派来作为通勤者搭乘交通工具或物品递送交通工具进行操作。如遍及本公开而利用的那样,术语“轮班(shift)”可以指代交通工具在操作指派期间处于道路上(即,未被充电、更新和/或服务)的时间。例如,针对作为通勤者搭乘交通工具进行操作的交通工具的轮班可以指代交通工具可用于针对通勤者搭乘服务而被请求的时间和交通工具正在针对通勤者提供通勤者搭乘服务的时间。
19.图1图示了根据本文描述的实施例的示例软件更新系统布置100。特别地,软件更新系统布置100示出了根据一些实施例的用于更新交通工具的软件的示例系统和交通工具的布置。
20.软件更新系统布置100可以包括仪表盘系统102。仪表盘系统102可以包括可管理一个或多个交通工具的操作的计算机系统。仪表盘系统102可以包括:无线电路116,其允许仪表盘系统102与软件更新系统布置100的其他部件无线通信。例如,无线电路116可以允许仪表盘系统102与一个或多个交通工具无线通信,诸如经由移动网络。仪表盘系统102可以从交通工具检索信息并提供到交通工具的通信。
21.仪表盘系统102可以包括可允许用户与仪表盘系统102交互的一个或多个输入设备104(诸如,键盘、鼠标、触摸屏、麦克风或针对计算机的其他输入设备)和显示器106(诸如,计算机屏幕、触摸屏或针对计算机的其他显示设备)。仪表盘系统102可以利用显示器106以将与一个或多个交通工具的软件更新相关的信息显示给用户,诸如显示正在执行的
软件更新的进度、正在执行的软件更新的状态、其中正在执行软件更新的交通工具的位置、要在其上执行软件更新的交通工具、针对交通工具的软件更新的调度信息、或者其某种组合。仪表盘系统102可以进一步在显示器106上显示与交通工具相关的信息,诸如交通工具的部件的配置、与交通工具的操作指派有关的信息(诸如,所调度的充电时间、交通工具的位置、交通工具被指派给的操作指派、或者与操作指派有关的其他信息)、与交通工具的状态有关的信息(诸如,交通工具正在利用的在先软件版本)、或者其某种组合。在一些实施例中,仪表盘系统102可以向用户显示何时已经发起软件更新的确认、软件更新的所估计的时间和/或进度、针对软件更新的软件版本是否仍然在数据储存器中构建以及在针对软件更新的软件版本被构建之后提供队列的指示、差错消息、软件更新过程中的瓶颈的原因、软件部署的阶段(即,软件是二进制的还是映射)、针对软件更新而更新交通工具的进度(例如,已针对其而完成软件更新的交通工具的百分比)、基于差错或问题而推荐的升级路由(即,如何对差错或问题进行寻址以避免软件更新中的差错或问题)、或者其某种组合。
22.用户可以经由输入设备104来与仪表盘系统102交互,以检索数据和/或促进交通工具的软件更新的调度。例如,用户可以请求仪表盘系统102显示与软件更新有关的某种信息。在一些实例中,用户可以指示交通工具具有软件更新的时间和/或位置。例如,用户可以指示交通工具应当在当前时间处或在未来的某个时间处前进到更新系统以用于软件更新。基于用户指示,可以由仪表盘系统102将指示针对软件更新的时间和/或位置的指示传输到交通工具和对应更新系统。
23.仪表盘系统102可以管理软件更新系统布置100内的交通工具的软件更新。例如,仪表盘系统102可以识别要在交通工具中的一个或多个中实现的软件更新。进一步地,仪表盘系统102可以确定下述交通工具:要基于软件更新正在更新的部件系统、交通工具的部件布置、由交通工具实现的在先软件版本或其某种组合来执行对该交通工具的软件更新。仪表盘系统102可以基于软件更新和/或与交通工具有关的信息(诸如,与交通工具的操作指派有关的信息)来促进交通工具的软件更新的调度。基于针对软件更新的软件版本、更新系统和/或交通工具,仪表盘系统102可以估计软件更新可耗费的时间量,且可以在调度针对交通工具的软件更新时考虑该时间量。
24.仪表盘系统102可以进一步包括一个或多个计算机可读介质114。在一些实施例中,计算机可读介质114可以包括非瞬变计算机可读介质。计算机可读介质114可以具有指令存储于其上,当该指令由仪表盘系统102执行时,该指令使仪表盘系统102执行遍及本公开而描述的操作中的一个或多个。
25.软件更新系统布置100可以进一步包括耦合到仪表盘系统102的数据储存器108。数据储存器108可以包括一个或多个数据储存元件,诸如存储器设备、服务器或其某种组合。数据储存器108可以存储要用于更新交通工具的软件的软件版本。在一些实施例中,用于更新交通工具的软件的软件版本可以包括二进制和/或映射。数据储存器108可以进一步存储与交通工具相关的信息,诸如交通工具的部件的配置、与针对交通工具的操作指派有关的信息或其某种组合。仪表盘系统102可以从数据储存器108检索数据并将该数据用于调度和执行交通工具的软件更新。
26.软件更新系统布置100可以进一步包括一个或多个更新系统。在所图示的实施例中,为了简洁起见,图示和描述更新系统110,尽管应当理解,该一个或多个更新系统可以包
fi、蓝牙和/或其他无线局域网)提供与更新系统110的短距离无线通信。
33.计算机122可以经由移动网络将与交通工具112的状态有关的信息提供给仪表盘系统102,该信息诸如是交通工具的充电状态、交通工具的操作指派、交通工具正在执行的任何当前服务(诸如,当前物品递送和/或当前搭乘搭车)或其某种组合。进一步地,计算机122可以从仪表盘系统102接收指令,其中该指令可以使计算机122执行与交通工具112的操作。例如,来自仪表盘系统102的指令可以给计算机122提供关于要何时以及在何处执行针对计算机122的软件更新的指令。仪表盘系统102可以基于从计算机122接收到的信息、从数据储存器108检索的信息、要执行的软件更新或其某种组合来确定针对软件更新的时间和位置。基于从仪表盘系统102接收到的指令,计算机122可以使交通工具112在软件更新的所调度的时间处前进到针对软件更新的位置。例如,交通工具112可以在所调度的时间处前进到更新系统110的位置。在一些实施例中,除了或代替交通工具112在所调度的时间处前进到针对软件更新的位置,计算机122可以使针对软件更新的时间和位置的指示被显示在交通工具112内。
34.计算机122可以经由无线电路124来进一步发射交通工具112的一个或多个标识符。例如,标识符可以包括与交通工具112相关联的一个或多个wi-fi信号和/或互联网协议(ip)地址。当交通工具112已经进入更新系统110的邻近处内时,更新系统110可以检测标识符。响应于更新系统110检测到交通工具112已经进入更新系统110的邻近处,更新系统110可以发起交通工具112的软件更新。更新系统110可以从仪表盘系统102接收针对软件更新的所调度的时间的指示,且可以在针对软件更新的所调度的时间的时间段内监视交通工具112的标识符。
35.计算机122可以进一步包括一个或多个计算机可读介质126。在一些实施例中,计算机可读介质126可以包括非瞬变计算机可读介质。计算机可读介质126可以具有指令存储于其上,当该指令由计算机122执行时,该指令使计算机122执行遍及本公开而描述的操作中的一个或多个。
36.图2图示了根据本文描述的实施例的用于调度交通工具的软件更新的示例过程200。例如,仪表盘系统102(图1)可以执行调度一个或多个交通工具(诸如,交通工具112(图1))的软件更新的过程200。
37.在阶段202中,可以识别针对更新的软件版本。例如,可以在数据储存器(诸如,数据储存器108(图1))中识别针对一个或多个交通工具的更新的软件版本。在一些实施例中,用户可以指示要针对更新而利用的软件版本。可以在识别软件版本时进一步识别软件版本的储存位置。例如,可以识别指示软件版本被存储在数据储存器上何处的统一资源定位符(url)。
38.在阶段204中,可以识别一个或多个交通工具以接收软件更新。在一些实例中,软件版本可以适用于耦合到仪表盘系统的所有交通工具和/或交通工具队内的所有交通工具。在其他实例中,软件版本可以适用于交通工具的具体部件。例如,软件版本可以适用于具体相机,其中具体相机可以被包括在交通工具中的一些中,且可以从交通工具中的其他交通工具省略。在软件版本适用于交通工具的具体部件的实例中,可以利用与交通工具的部件有关的信息(其可以是从数据储存器108检索和/或从交通工具接收到的)以基于交通工具中的哪个包括具体部件来确定软件更新适用于交通工具中的哪个。仪表盘系统可以利
用从用户接收到或从数据储存器检索的与软件版本有关的信息,以确定软件版本是否适用于所有交通工具、是否适用于具体部件、软件版本适用于的部件或其某种组合。
39.一旦软件更新适用于的交通工具被识别,就可以基于交通工具的软件版本来识别要更新的交通工具。例如,可以确定在软件更新适用于的交通工具上加载的软件版本。在交通工具上加载的软件版本可以是基于从数据储存器检索或从交通工具接收到的信息来确定的。如果在交通工具上加载的软件版本是交通工具要被更新到的软件版本或者交通工具上的软件版本不要求对软件的更新,则确定交通工具不要求对软件的更新。如果在交通工具上加载的软件版本要被更新到针对软件更新的软件版本,则可以识别交通工具以更新。
40.在阶段206中,可以确定用于更新被识别以更新的交通工具的软件的时间。用于更新软件的时间可以是基于软件的即时性评级、交通工具的日程表和/或交通工具正在执行的当前服务来确定的。例如,用于更新交通工具的时间可以是基于下述各项来确定的:交通工具的充电、交通工具的操作指派的轮班、距容纳更新系统的设施的距离、交通工具的最后旅途的位置和/或时间、交通工具的交通工具状态、交通工具中的哪些具有最低充电、交通工具中的哪些具有不久就结束的操作指派的轮班、交通工具中的哪个具有指示交通工具应当不久就被充电的交通工具的驱动器、或者其某种组合。交通工具的日程表和/或交通工具正在执行的当前服务可以是从交通工具和/或数据储存器接收到的。软件可以与更新的即时性的评级相关联。针对软件的即时性的评级可以是基于从数据储存器检索的针对软件的信息来确定的。在一些实施例中,即时性评级可以包括多个不同即时性评级,其中即时性评级中的每一个可以指示何时应当基于交通工具的日程表来调度交通工具的更新。例如,即时性评级中的一个可以指示:一旦交通工具未执行服务(诸如,物品递送和/或搭乘搭车),交通工具就要返回到具有更新系统(诸如,更新系统110(图1))的位置。即时性评级中的另一个可以指示:当交通工具当前被调度为处于具有更新系统的位置达它应当耗费以执行对软件版本的软件更新的时间量时,应当针对软件更新而调度交通工具。基于软件的即时性评级、交通工具的日程表和/或交通工具正在执行的当前服务,应当针对软件更新而调度交通工具的时间。
41.在阶段208中,可以确定针对要更新的交通工具的位置。可以从数据储存器和/或更新系统检索具有更新系统的设施的位置、针对设施的日程表、设施的资源(诸如,用于在软件更新期间停放交通工具的数个空间和/或用于执行软件更新的无线带宽),且可以将其用于确定针对要更新的交通工具中的每一个的位置。例如,可以基于交通工具的日程表和/或交通工具正在执行的服务来确定交通工具可在所调度的时间处位于的位置。与交通工具在所调度的时间处的位置最接近的具有更新系统的位置可以被识别为针对交通工具的软件更新的位置。对与在所确定的时间处针对软件更新的位置最接近的具有更新系统的位置的可用资源(即,用于停放交通工具的可用数目的空间和/或可用无线带宽)进行分析,以确定在所确定的时间处是否存在用于更新交通工具的充足资源。如果在所确定的时间处存在在具有更新系统的位置处针对交通工具可用的充足资源,则它可以被确定为针对要更新的交通工具的位置。如果在所确定的时间处存在在具有更新系统的位置处针对交通工具可用的不充足资源,则可以针对可用性而检验具有更新系统的下一最接近位置,和/或可以确定针对要更新的交通工具的不同时间,直到具有在所确定的时间处针对交通工具的充足资源的位置被识别,其中所识别的位置可以被确定为针对要更新的交通工具的位置。
42.在阶段210中,可以调度交通工具以用于被更新。交通工具的调度可以包括:给交通工具中的每一个提供针对交通工具中的每一个的软件更新的所确定的时间和位置的指示。被提供给交通工具的指示可以使交通工具显示软件更新的所调度的时间和所调度的位置和/或使交通工具在所调度的时间处前进到所调度的位置。交通工具的调度可以进一步包括:给交通工具的更新系统提供针对更新系统的位置和交通工具被调度以达到位置的所调度的时间处的更新而调度的指示。在一些实施例中,该指示可以进一步包括其中存储针对软件更新的软件版本的储存位置的指示,其中软件版本可以由更新系统检索。例如,其中存储软件版本的储存位置的指示可以包括用于访问软件版本的url。在一些实施例中,仪表盘系统可以提供针对对更新系统的软件更新的软件版本。被提供给更新系统的指示可以使更新系统在所调度的时间处监视对应交通工具进入更新系统的邻近处内,其中更新系统可以响应于检测到交通工具进入更新系统的邻近处而发起针对交通工具的软件更新。
43.图3图示了根据本文描述的实施例的针对具有被更新的软件的交通工具的示例过程300。过程300可以由一个或多个交通工具(诸如,交通工具112(图1))执行。
44.在阶段302中,可以识别所调度的更新的指示。例如,交通工具可以识别从仪表盘系统(诸如,仪表盘系统102(图1))接收到的指示针对要完成的软件更新的所调度的时间和所调度的位置的指示。该指示可以是经由移动网络来接收到的。
45.在阶段304中,可以确定所调度的更新的时间和位置。例如,交通工具可以根据从仪表盘系统接收到的指示确定所调度的时间和所调度的位置。在一些实施例中,交通工具可以响应于接收到指示而显示所调度的时间和/或所调度的位置。交通工具可以在所调度的时间之前继续操作指派。
46.在阶段306中,交通工具可以在所确定的时间处前进到所调度的更新的所确定的位置。例如,交通工具可以在阶段304中确定的时间处前进到在阶段304中确定的位置。在一些实施例中,交通工具的用户可以使交通工具在所确定的时间处前进到所确定的位置。
47.在阶段308中,可以在所确定的位置处与更新系统建立连接。在一些实施例中,该连接可以是无线连接。交通工具可以发射交通工具的标识。例如,交通工具可以发射标识交通工具的wi-fi信号和/或ip地址。更新系统可以识别交通工具的wi-fi信号和/或ip地址且可以执行与交通工具的握手。交通工具可以完成与更新系统的握手,以与更新系统建立连接。
48.在阶段310中,可以执行更新过程。例如,交通工具与之建立了连接的更新系统可以使交通工具的软件被更新。交通工具可以从更新系统接收针对软件更新的软件版本,且可以利用从更新系统接收到的软件版本更新交通工具的软件。
49.交通工具可以在一些实施例中进一步监视更新的进度,并将更新的进度的指示提供给更新系统。在一些实施例中,在软件被更新时,交通工具还可以运行测试软件,以验证软件更新正在被适当地完成。响应于检测到软件更新中的差错,交通工具可以将差错的指示提供给更新系统。差错的指示可以包括发生了差错的指示、发生了哪个差错的指示或其某种组合。差错的指示可以使发生了差错的指示被显示在更新系统和/或仪表盘系统上。在已经完成更新过程之后,交通工具可以利用软件更新的软件版本。如果发生差错,则交通工具可以利用在软件之前处于交通工具上的在先软件版本,直到软件更新具有成功完成的机会。在一些实施例中,基于从交通工具接收到的信息,更新系统和/或仪表盘系统可以识别
软件更新和/或软件更新系统布置(诸如,软件更新系统布置100(图1))的瓶颈和/或失效。
50.图4图示了根据本文描述的实施例的用于由更新系统更新交通工具的示例过程400。例如,更新系统(诸如,更新系统110(图1))可以执行更新交通工具(诸如,交通工具112(图1))的软件的过程。
51.在阶段402中,更新系统可以确定要更新的交通工具已经进入更新系统的服务范围。特别地,更新系统可以确定交通工具已经进入更新系统的邻近处,其中邻近处可以定义其中可以执行交通工具的软件更新的服务范围。在一些实施例中,邻近处可以被定义成包括容纳更新系统的设施或其某个部分。在其他实施例中,邻近处可以由其更新系统被包括的短距离无线通信网络(诸如,wi-fi、蓝牙和/或其他无线局域网)的范围定义。更新系统可以基于更新系统检测到交通工具的无线传输的标识符来确定交通工具已经进入邻近处。无线传输的标识符可以包括与交通工具相关联的wi-fi信号和/或ip地址。在一些实施例中,更新系统可以在针对交通工具的软件更新的所调度的时间的时间段内监视交通工具的进入。
52.图5图示了根据本文描述的实施例的针对更新系统502检测交通工具504进入更新系统的邻近处506内的示例布置500。例如,更新系统502可以在阶段402(图4)期间检测交通工具504已经进入邻近处506。
53.在所图示的实施例中,交通工具504可以在第一位置508中开始。第一位置508可以位于更新系统502的邻近处506外。交通工具504可以前进到更新系统502的邻近处506内的第二位置510。例如,交通工具504可以基于从仪表盘系统(诸如,仪表盘系统102(图1))接收到的指示针对软件更新的所调度的时间和所调度的位置的指示,来在针对交通工具504的软件更新的所调度的时间处前进到第二位置510。更新系统502可以基于检测到交通工具504正在发射的交通工具504的标识符,来检测交通工具504何时已经进入更新系统502的邻近处506。标识符可以包括与交通工具504相关联的wi-fi信号和/或ip地址。
54.在阶段404中,更新系统可以与交通工具建立连接。该连接可以包括无线连接。例如,该连接可以包括短距离无线连接,诸如wi-fi连接、蓝牙连接和/或其他无线局域网连接。更新系统可以响应于在阶段402中确定交通工具已经进入服务范围而发起与交通工具的握手。更新系统和交通工具可以完成握手以建立连接,诸如连接512。
55.在阶段406中,更新系统可以检索用于更新交通工具的软件版本。特别地,阶段406可以是在软件版本先前未被更新系统检索和存储的情况下执行的。如果软件版本先前已被更新系统检索和存储,则可以省略阶段406。更新系统可以从仪表盘系统或数据储存器(诸如,数据储存器108(图1))检索软件版本。针对软件更新的所调度的时间和所调度的位置的指示可以进一步包括其中存储针对软件更新的软件版本的储存位置。例如,该指示可以包括与其中存储软件版本的储存位置相对应的url,其中软件版本可以是经由该url来访问的。更新系统可以从该指示识别其中存储软件版本的位置,并从该位置检索软件版本。
56.在阶段408中,可以发起交通工具的软件更新。例如,更新系统可以将针对软件更新的软件版本上传到交通工具并使交通工具发起软件更新。在一些实施例中,可以响应于在阶段402中检测到交通工具已经进入更新系统的邻近处而发起交通工具的软件更新。在其他实施例中,可以响应于在阶段402中确定交通工具已经进入更新系统的邻近处而在更新系统和/或仪表盘系统上显示交通工具已经在更新系统的邻近处内到达的指示。在这些
实施例中,更新系统和/或仪表盘系统的用户可以指示软件更新应当被发起,并且由更新系统对交通工具的更新可以是响应于软件更新应当被发起的指示而发起的。
57.随着软件更新正在被执行,更新系统可以监视它的进度。如果更新系统检测到已经在软件更新期间发生差错,则更新系统可以执行对差错进行寻址的动作。在一些实施例中,对差错进行寻址的动作可以包括差错的故障排除以及基于故障排除来采取校正动作、重新开始软件更新或其某个部分、使差错的指示被显示在更新系统上、给仪表盘系统提供发生差错的指示、使差错的指示被存储(诸如,存储在数据储存器108上)、使差错的类型的指示(例如,差错代码)被显示在更新系统上、将差错的类型的指示提供给仪表盘系统、使差错的类型的指示被存储(诸如,存储在数据储存器108上)、或者某种组合。取决于差错,软件更新可以继续或者可以被停止直到差错可以被校正。在其中软件更新被停止的一些实例中,交通工具可以在软件更新之前继续利用交通工具上的在先软件版本,以用于操作交通工具。更新系统可以将差错的指示进一步提供给仪表盘系统,并且仪表盘系统可以调度交通工具以保持在更新系统的位置处直到完成更新。一旦软件更新已经被完成,该过程就可以前进到阶段410。
58.在阶段410中,可以验证软件更新。例如,更新系统可以验证软件被适当地更新。更新系统可以实现测试过程以验证交通工具的软件被适当地更新。在一些实施例中,更新系统可以给更新系统的用户(其可以是交通工具技术人员)指示以在已经在其上执行软件更新的一个或多个交通工具上执行一个或多个检查。例如,在一些实施例中,可以在更新系统上针对在其上执行软件更新的第一交通工具而显示要针对交通工具而执行的检查以及请求用户交互验证检查已被执行的指示。在一些实施例中,仪表盘系统的用户可以定义针对每个软件更新的质量门,其中质量门可以定义要针对交通工具而执行的检查、由要针对其而执行检查的更新系统中的每一个更新的交通工具的数目、和/或对于更新系统中的每一个要针对哪些交通工具而执行检查。在一些实施例中,仪表盘系统可以在交通工具上远程运行测试以验证软件更新是成功的,和/或可以监视交通工具上的来自软件更新的软件版本的操作。仪表盘系统可以检测来自软件更新的软件版本是否正在适当地运行或者是否已经发生了差错。如果测试过程指示已经关于软件版本发生了差错,则可以在更新系统上显示差错的指示、可以在仪表盘系统上显示差错的指示、可以存储差错的指示(诸如,在数据储存器108上)、可以在更新系统上显示差错的类型的指示(例如,差错代码)、可以在仪表盘系统上显示差错的类型的指示、可以存储差错的类型的指示(诸如,存储在数据储存器108上)、或者某种组合。如果测试过程指示软件版本正在适当地操作,则可以完成过程400。
59.图6图示了根据本文描述的实施例的指示软件更新进度的示例用户界面600。例如,用户界面600可以被显示在仪表盘系统(诸如,仪表盘系统102(图1))上和/或被显示在更新系统(诸如,更新系统110(图1))上。用户界面600可以显示与根据本文描述的实施例的交通工具的软件更新有关的信息。
60.用户界面600可以包括交通工具标识符602。交通工具标识符602可以包括标识要针对其而执行软件更新的交通工具的字符串。交通工具标识符602中的每一个可以标识具体交通工具。在所图示的示例中,交通工具标识符602包括标识正在针对其而执行软件更新的具体交通工具的数字(即,1、2、3和4)。应当理解,尽管在所图示的实施例中示出了数字,但交通工具标识符602可以包括可用于标识交通工具且可被显示在用户界面内的任何其他
指示符。进一步地,尽管用户界面600针对单个软件更新而示出了针对交通工具的信息,但应当理解,在其他实施例中,用户界面600针对多个软件更新而示出了针对交通工具的信息,其中用户界面600可以进一步包括正在针对交通工具中的每一个执行软件更新的指示。
61.用户界面600可以进一步包括更新位置标识符604。更新位置标识符604可以包括标识其中可针对交通工具而执行软件更新的位置和/或可执行针对交通工具的软件更新的更新系统(诸如,更新系统110)的字符串。由交通工具标识符602指示的交通工具中的每一个可以具有对应更新位置标识符,其中对应更新位置标识符指示交通工具在何处正在被更新或要被更新。例如,在所图示的实施例中,由交通工具标识符
‘1’
标识的交通工具可以具有

位置1’的对应更新位置标识符,并且由交通工具标识符
‘4’
标识的交通工具可以具有

位置2’的对应更新位置标识符。基于更新位置标识符604,可以确定其中要更新交通工具的位置。
62.用户界面600可以进一步包括更新状态指示符606。更新状态指示符606可以包括指示交通工具的更新状态的字符串。由交通工具标识符602指示的交通工具中的每一个可以具有对应更新状态指示符,其中更新状态指示符可以指示交通工具的软件更新的状态。更新状态指示符606可以指示针对软件更新的软件版本是否已经被更新系统下载、是否软件更新已经被发起、是否软件更新已经被完成、当前正在针对交通工具执行的软件更新的过程、是否软件更新已经失效、和/或软件更新的失效的指示(例如,差错代码)。例如,在所图示的实施例中,由交通工具标识符
‘1’
标识的交通工具可以具有对应更新状态指示符

更新被获取——下载发起’,其指示来自软件更新的软件版本已经被更新系统下载并且软件更新正在被发起。进一步地,由交通工具标识符
‘4’
标识的交通工具可以具有对应状态更新指示符

下载:模块1’,其指示将模块1下载到交通工具的处理正在被执行。基于更新状态指示符606,可以确定软件更新是否已经发起、软件更新是否正在进展、是否已经发生差错、软件更新是否已经完成、或者其某种组合。
63.用户界面600可以进一步包括更新进度指示符608。更新进度指示符608可以包括指示交通工具的软件更新的进度的字符串。由交通工具标识符602指示的交通工具中的每一个可以具有对应更新进度指示符,其中更新过程指示符可以指示交通工具的软件更新的进度的量。例如,在所图示的实施例中,由交通工具标识符
‘1’
标识的交通工具可以具有对应更新进度指示符

0%’,并且由交通工具标识符
‘4’
标识的交通工具可以具有对应更新进度指示符

24%’。在所图示的实施例中,更新进度指示符608包括指示软件更新的更新进度的百分比,尽管应当理解,在其他实施例中,可以包括可在用户界面中显示的更新进度的任何其他指示符。基于更新进度指示符608,可以确定对更新交通工具的软件作出的进度的量。
64.应当理解,在其他实施例中,用户界面600可以包括交通工具标识符602、更新位置标识符604、更新状态指示符606或更新进度指示符608中的一个或多个。进一步地,除交通工具标识符602、更新位置标识符604、更新状态指示符606和/或更新进度指示符608外,其他元素可以被包括在用户界面600中。
65.图7图示了根据本文描述的实施例的示例自主交通工具700。自主交通工具700是如遍及本公开而描述的自主交通工具的示例。在一些实施例中,交通工具112(图1)可以包括自主交通工具700。例如,自主交通工具700可以具有下述软件:该软件可以具有经由遍及
本公开而描述的系统(诸如,仪表盘系统102(图1)和/或更新系统110(图1))和/或过程(诸如,过程200(图2)、过程300(图3)和/或过程400(图4))中的一个或多个而更新的软件。
66.自主交通工具700可以包括小汽车704。自主交通工具700可以包括被安装到小汽车704的一个或多个传感器702。传感器702可以被安装到小汽车704上的各种位置。例如,传感器702可以被安装到小汽车704的车顶、小汽车704的侧镜、小汽车704的前面、小汽车704的后面、小汽车704的侧面、或者其某种组合。
67.传感器702可以包括一个或多个相机、一个或多个光检测和测距(lidar)传感器、一个或多个雷达传感器、或者其某种组合。在一些实施例中,雷达传感器可以包括关节雷达传感器、长距离雷达传感器、短距离雷达传感器、或者其某种组合。传感器702可以检测自主交通工具700的周围环境。例如,传感器702可以检测自主交通工具700周围的一个或多个对象,诸如其他小汽车、行人、树、自行车、自主交通工具700正在其上行进的道路内的对象(诸如,可能妨碍交通工具移动的构造和/或其他对象)、和/或自主交通工具700周围的指示(诸如,构造标志、停止指示符和其他街道标志)。
68.自主交通工具700可以进一步包括耦合到传感器702的计算机。计算机可以接收由传感器702捕获的数据,并将该数据用于自主交通工具700的定位、感知、预测、路由计划、操纵计划、运动计划、路径跟随和低级别控制。进一步地,计算机可以通信耦合到服务器、仪表盘系统(诸如,仪表盘系统102)和/或更新系统(诸如,更新系统110),且可以与服务器、仪表盘系统和/或更新系统交换通信。计算机可以进一步耦合到自主交通工具700的系统中的一个或多个,且可以控制自主交通工具700的油门、制动、转向和/或指示器的操作。
69.图8图示了根据本文描述的实施例的可在自主交通工具内实现的示例部件800。特别地,部件800可以被实现在自始至终描述的自主交通工具(诸如,自主交通工具700(图7))中。
70.部件800可以包括计算机802。计算机802可以包含和/或包括计算机122(图1)的特征中的一个或多个。例如,计算机802可以执行用于在其中实现计算机802的自主交通工具内更新软件的过程300。计算机802可以包括关于图7描述的计算机的特征中的一个或多个。计算机802可以协调自主交通工具的一个或多个操作且可以分析由自主交通工具捕获的数据。在一些实施例中,计算机802可以具有软件存储于其中,其中软件可以是经由遍及本公开而描述的系统和/或过程中的一个或多个来更新的。
71.部件800可以进一步包括一个或多个传感器804。传感器804可以包括传感器702的特征中的一个或多个。传感器804可以耦合到计算机802,且可以将由传感器804捕获的数据提供给计算机802。
72.部件800可以进一步包括一个或多个存储器设备806。存储器设备806可以耦合到计算机802。在一些实施例中,存储器设备806还可以耦合到传感器804。存储器设备806可以包括计算机可读介质。在一些实施例中,计算机可读介质可以是非瞬变计算机可读介质。存储器设备806可以存储一个或多个指令,该一个或多个指令在由计算机802执行时使计算机802执行遍及本公开而描述的由在自主交通工具中实现的计算机执行的一个或多个操作。指令可以包括软件,其中该软件可以是经由遍及本公开而描述的系统和/或过程中的一个或多个来更新的。进一步地,存储器设备806可以用于存储自主交通工具的数据。例如,计算机802可以将从传感器804接收到的数据提供给存储器设备806以用于储存在存储器设备
806上。进一步地,存储器设备806可以存储与自主交通工具的路由计划相关联的路由、与自主交通工具的操纵计划相关联的操纵、或者其某种组合。
73.部件800可以进一步包括一个或多个交通工具系统808。交通工具系统808可以耦合到计算机802,并且计算机802可以控制交通工具系统808的操作。交通工具系统808可以包括自主交通工具的运动系统、自主交通工具的指示器系统、或者其某种组合。运动系统可以包括自主交通工具的油门系统、制动系统、转向系统或其某种组合。
74.部件800可以进一步包括通信系统810。通信系统810可以耦合到计算机802。通信系统810可以包括无线通信系统,且可以允许计算机802与其他设备(诸如,更新系统(诸如,更新系统110(图1))和/或仪表盘系统(诸如,仪表盘系统102(图1)))无线通信。通信系统810可以实现一个或多个无线通信标准,诸如移动通信标准、雷达通信标准、卫星通信标准、全球定位系统通信标准、wi-fi通信标准和/或蓝牙通信标准。
75.选择示例下面提供了根据在本公开中提供的主题的实施例的一些示例。应当理解,示例仅仅是一些示例,并且根据所公开的主题的实施例不限于所提供的示例。
76.示例1可以包括具有指令存储于其上的一个或多个计算机可读介质,其中所述指令在由仪表盘系统执行时使所述仪表盘系统执行下述操作:检索与交通工具相关的信息;基于与所述交通工具相关的信息,来确定针对所述交通工具的软件的软件更新的时间和针对所述交通工具的软件的软件更新的位置;生成针对所述软件更新的时间和针对所述软件更新的位置的指示;以及将所述指示提供给所述交通工具以调度所述软件更新。
77.示例2可以包括示例1的一个或多个计算机可读介质,其中所述指令在由所述仪表盘系统执行时进一步使所述仪表盘系统执行下述操作:确定与所述软件更新相关联的部件;确定所述交通工具包括所述部件;以及基于所述交通工具包括所述部件的确定来确定要针对所述交通工具而执行所述软件更新。
78.示例3可以包括示例1的一个或多个计算机可读介质,其中确定针对所述软件更新的位置包括:基于与所述交通工具相关的信息来确定所述交通工具的位置;以及基于针对所述软件更新的位置在针对所述软件更新的多个位置当中最接近于所述交通工具的位置,来从所述多个位置识别针对所述软件更新的位置。
79.示例4可以包括示例1的一个或多个计算机可读介质,其中确定针对所述软件更新的时间包括:确定所述交通工具被调度为处于所述位置的时间;以及将针对所述软件更新的时间确定为所述交通工具被调度为处于所述位置的时间。
80.示例5可以包括示例1的一个或多个计算机可读介质,其中所述指令在由所述仪表盘系统执行时进一步使所述仪表盘系统执行下述操作:确定与所述软件更新相关联的即时性评级,并且其中针对软件更新的时间是基于所述即时性评级来确定的。
81.示例6可以包括示例1的一个或多个计算机可读介质,其中与所述交通工具相关的信息包括与所述交通工具的操作指派相关的信息。
82.示例7可以包括示例1的一个或多个计算机可读介质,其中所述指令在由所述仪表盘系统执行时进一步使所述仪表盘系统执行下述操作:在针对所述软件更新的位置处将所述指示提供给更新系统,并且其中所述指示进一步包括针对所述软件更新的储存位置的指示。
83.示例8可以包括示例1的一个或多个计算机可读介质,其中与所述交通工具相关的信息包括所述交通工具的充电状态、所述交通工具正在执行的当前服务、所述交通工具的操作指派、或者所述交通工具的当前位置。
84.示例9可以包括示例1的一个或多个计算机可读介质,其中所述交通工具是自主交通工具,并且其中针对所述软件更新的时间和针对所述软件更新的位置的指示使所述自主交通工具执行下述操作:在针对所述软件更新的时间处前进到针对所述软件更新的位置。
85.示例10可以包括一种针对交通工具的软件更新的过程,包括:由仪表盘系统基于与所述交通工具相关的信息来确定要针对所述软件更新而调度所述交通工具;由所述仪表盘系统基于与所述交通工具相关的信息来确定针对所述软件更新的时间和针对所述软件更新的位置;由所述仪表盘系统生成针对所述软件更新的时间和针对所述软件更新的位置的指示;以及由所述仪表盘系统将所述指示提供给所述交通工具。
86.示例11可以包括示例10的过程,其中确定要针对所述软件更新而调度所述交通工具包括:由所述仪表盘系统识别要针对所述软件更新将所述交通工具更新到的软件版本;由所述仪表盘系统识别所述交通工具正在利用的在先软件版本;以及由所述仪表盘系统确定所述在先软件版本要被更新到所述软件版本。
87.示例12可以包括示例10的过程,其中确定要针对所述软件更新而调度所述交通工具包括:由所述仪表盘系统识别与所述软件更新相关联的部件;以及由所述仪表盘系统基于与所述交通工具相关的信息来确定所述交通工具包括所述部件。
88.示例13可以包括示例10的过程,进一步包括:由所述仪表盘系统接收针对所述交通工具的软件更新的进度的指示;以及由所述仪表盘系统显示所述软件更新的进度。
89.示例14可以包括示例13的过程,其中所述软件更新的进度的指示包括已经关于所述软件更新发生差错的指示,并且其中显示所述软件更新的进度包括显示所述差错的指示。
90.示例15可以包括示例10的过程,其中确定针对所述软件更新的时间和针对所述软件更新的位置包括:由所述仪表盘系统识别针对所述软件更新的位置;以及由所述仪表盘系统验证针对所述软件更新的位置在针对所述软件更新的时间处具有针对所述软件更新的充足资源。
91.示例16可以包括示例10的过程,其中确定针对所述软件更新的时间和针对所述软件更新的位置包括:由所述仪表盘系统确定针对服务而调度所述交通工具的时间,其中针对所述软件更新的时间被确定为针对所述服务而调度所述交通工具的时间;以及由所述仪表盘系统确定针对软件更新的位置在针对所述服务而调度所述交通工具的时间处具有针对所述软件更新的充足资源,其中针对所述软件更新的位置是基于针对所述软件更新的位置在针对所述服务而调度所述交通工具的时间处具有针对所述软件更新的充足资源来选择的。
92.示例17可以包括示例10的过程,进一步包括:由所述仪表盘系统将所述指示提供给更新系统以执行所述软件更新,其中所述指示包括针对所述软件更新的储存位置的指示。
93.示例18可以包括具有指令存储于其上的一个或多个计算机可读介质,其中所述指令在由更新系统执行时使所述更新系统执行下述操作:识别交通工具的所调度的软件更新
的指示;确定所述交通工具已经进入所述更新系统的服务范围;以及响应于所述交通工具已经进入所述服务范围的确定而执行所述交通工具的所调度的软件更新。
94.示例19可以包括示例18的一个或多个计算机可读介质,其中所调度的软件更新的指示包括针对所调度的软件更新的时间的指示,其中所述指令在由所述更新系统执行时进一步使所述更新系统执行下述操作:从所调度的软件更新的指示识别针对所调度的软件更新的时间,并且其中确定所述交通工具已经进入所述更新系统的服务范围包括:确定所述交通工具已经在针对所调度的软件更新的时间处进入所述更新系统的服务范围。
95.示例20可以包括示例18的一个或多个计算机可读介质,其中执行所调度的软件更新包括:响应于所述交通工具已经进入所述服务范围的确定而与所述交通工具建立无线连接;以及利用所述无线连接以更新所述交通工具的软件。
96.示例21可以包括一种用于执行交通工具的软件更新的过程,包括:由更新系统针对所述软件更新而确定交通工具已经进入所述更新系统的服务范围;由所述更新系统响应于确定所述交通工具已经进入所述更新系统的服务范围而与所述交通工具建立无线连接;以及经由所述无线连接来执行所述交通工具的软件更新。
97.示例22可以包括示例21的过程,其中确定所述交通工具已经进入所述服务范围包括:检测与所述交通工具相关联的wi-fi信号或互联网协议地址。
98.示例23可以包括示例21的过程,进一步包括:由所述更新系统检索针对所述软件更新的软件版本;以及由所述更新系统利用针对所述软件更新的软件版本。
99.示例24可以包括具有指令存储于其上的一个或多个计算机可读介质,其中所述指令在由交通工具执行时使所述交通工具执行下述操作:发射与所述交通工具相关联的wi-fi信号或互联网协议地址,所述wi-fi信号或所述互联网协议地址用于确定所述交通工具已经进入更新系统的服务范围;与所述更新系统建立无线连接;以及经由与所述更新系统的无线连接来执行软件更新过程。
100.示例25可以包括示例24的一个或多个计算机可读介质,其中所述指令在由所述交通工具执行时进一步使所述交通工具执行下述操作:识别针对所述交通工具的所调度的软件更新的指示;确定针对所述软件更新的时间和针对所述软件更新的位置,其中针对所述软件更新的位置与所述更新系统相关联;以及在针对所述软件更新的时间处前进到针对所述软件更新的位置。
101.其他实现注意、变型和应用应当理解,不必然所有对象或优势都可以根据本文描述的任何特定实施例而实现。因此,例如,本领域技术人员应当认识到,某些实施例可以被配置成以实现或优化如本文教导的一个优势或一组优势的方式进行操作,而不必然实现如本文可教导或暗示的其他目的或优势。
102.在一些实施例中,遍及本公开而描述的部件中的一个或多个可以被实现为一个或多个电路。电路可以被实现在关联电子设备的板上。该板可以是可保持电子设备的内部电子系统的各种部件且进一步提供针对其他外设的连接器的通用电路板。更具体地,该板可以提供系统的其他部件可借以电气通信的电连接。基于特定配置需要、处理需求、计算机设计等,任何合适处理器(包括数字信号处理器、微处理器、支持芯片集等)、计算机可读非瞬变存储器元件等可以合适地耦合到该板。其他部件(诸如,外部储存器、附加传感器、用于音
频/视频显示的控制器、以及外围设备)可以作为插件卡、经由线缆附着到该板或者自身集成到该板中。在各种实施例中,本文描述的功能可以以仿真形式而实现为在支持这些功能的结构中布置的一个或多个可配置(例如,可编程)元件内运行的软件或固件。提供仿真的软件或固件可以被提供在包括允许处理器实施那些功能的指令的非瞬变计算机可读储存介质上。
103.在一些实施例中,电路可以被实现为独立模块(例如,具有被配置成执行具体应用或功能的关联部件和电路的设备)或者被实现为插件模块到电子设备的专用硬件中。注意,本公开的特定实施例可以被容易地部分或整体包括在片上系统(soc)封装中。soc表示将计算机或其他电子系统的部件集成到单个芯片中的集成电路(ic)。它可以包含数字、模拟、混合信号且常常包含射频功能:全部可以是在单芯片衬底上提供的。其他实施例可以包括多芯片模块(mcm),具有位于单个电子封装内且被配置成通过电子封装彼此密切交互的多个分离ic。在各种其他实施例中,数字滤波器可以被实现在专用集成电路(asic)、现场可编程门阵列(fpga)和其他半导体芯片中的一个或多个硅芯中。
104.注意,关于本文提供的许多示例,可以就两个、三个、四个或更多个电气部件而言描述交互。然而,这已经仅出于清楚和示例的目的而完成。应当领会,系统可以以任何合适方式被整合。在各种实施例中,可以以各种可能配置而组合所公开的部件、模块和元件中的任一个,全部处于本公开的范围内。
105.注意,在本说明书中,对在“一个实施例”、“示例实施例”、“实施例”、“另一实施例”、“一些实施例”、“各种实施例”、“其他实施例”、“可替换实施例”等等中包括的各种特征(例如元件、结构、模块、部件、步骤、操作、特性等)的引用意在意味着:任何这种特征被包括在本公开的一个或多个实施例中,但可以或可以不必然在相同实施例中组合。
106.许多改变、替代、变型、更改和修改可以由本领域技术人员查明,并且应当理解,本公开涵盖可由本领域技术人员查明的所有这种改变、替代、变型、更改和修改。进一步地,应当理解,可基于本公开而授予的任何保护不应受描述限制。更确切地,该保护应在考虑到描述而阅读时且如本领域技术人员应当理解的那样由所附权利要求限定。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献