CN107864177A - 针对空中分配的更新的优先化 - Google Patents

针对空中分配的更新的优先化 Download PDF

Info

Publication number
CN107864177A
CN107864177A CN201710832309.0A CN201710832309A CN107864177A CN 107864177 A CN107864177 A CN 107864177A CN 201710832309 A CN201710832309 A CN 201710832309A CN 107864177 A CN107864177 A CN 107864177A
Authority
CN
China
Prior art keywords
vehicle
priority
software upgrading
software
instruction
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201710832309.0A
Other languages
English (en)
Other versions
CN107864177B (zh
Inventor
布伦尼尔德·贝尔塔·卡什
约翰·瑙姆·万格洛夫
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Ford Global Technologies LLC
Original Assignee
Ford Global Technologies LLC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Ford Global Technologies LLC filed Critical Ford Global Technologies LLC
Publication of CN107864177A publication Critical patent/CN107864177A/zh
Application granted granted Critical
Publication of CN107864177B publication Critical patent/CN107864177B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/34Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters 
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07CTIME OR ATTENDANCE REGISTERS; REGISTERING OR INDICATING THE WORKING OF MACHINES; GENERATING RANDOM NUMBERS; VOTING OR LOTTERY APPARATUS; ARRANGEMENTS, SYSTEMS OR APPARATUS FOR CHECKING NOT PROVIDED FOR ELSEWHERE
    • G07C5/00Registering or indicating the working of vehicles
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/52Network services specially adapted for the location of the user terminal
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/55Push-based network services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
    • H04L67/61Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources taking into account QoS or priority requirements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
    • H04L67/62Establishing a time schedule for servicing the requests
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/20Administration of product repair or maintenance
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07CTIME OR ATTENDANCE REGISTERS; REGISTERING OR INDICATING THE WORKING OF MACHINES; GENERATING RANDOM NUMBERS; VOTING OR LOTTERY APPARATUS; ARRANGEMENTS, SYSTEMS OR APPARATUS FOR CHECKING NOT PROVIDED FOR ELSEWHERE
    • G07C5/00Registering or indicating the working of vehicles
    • G07C5/008Registering or indicating the working of vehicles communicating information to a remotely located station

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Information Transfer Between Computers (AREA)
  • Stored Programmes (AREA)

Abstract

本公开涉及针对空中分配的更新的优先化。优先级数据被访问以确定将被更新的车辆指定的软件更新的优先级。软件更新响应于所述优先级指示软件更新是被授权由车辆使用的附件更新而被推送。否则,根据所述优先级和车辆的地理区域安排在某一时间对车辆进行软件更新。

Description

针对空中分配的更新的优先化
技术领域
本公开涉及用于向车辆提供优先化的空中(over-the-air,OTA)软件更新的系统和方法。
背景技术
车辆的一个或更多个软件和/或硬件组件可能需要定期或不定期的电子更新。在一个示例中,更新可包括对车辆的软件或设置的改变,以解决问题或者为当前软件或设置提供改进的功能。在另一示例中,更新可包括针对一个或更多个车辆控制器的更新的配置设置,以及/或者将被安装在一个或更多个车辆控制器上的软件或固件的更新版本。
车辆可被配置为经由有线或无线连接接收电子更新。在一个示例中,汽车零售商或维修店的技术人员可使用有线本地访问网络(LAN)连接来将更新下载到车辆中。在另一示例中,车辆可被配置为接收空中(OTA)软件更新,诸如,经由与服务器的无线连接接收的软件更新。
发明内容
在一个或更多个示意性实施例中,一种系统包括服务器,所述服务器被配置为:访问存储的优先级数据,以确定将被更新的车辆指定的软件更新的优先级;响应于所述优先级指示软件更新是被授权由车辆使用的附件(add-on),将软件更新安排为即时推送;否则,根据所述优先级和车辆的地理区域,安排在某一时间对车辆进行软件更新。
在一个或更多个示意性实施例中,一种方法包括:基于软件更新的元数据,将对车辆的软件更新的优先级数据包括在数据存储区中;响应于接收到针对车辆的软件更新的车辆指定的优先级超驰的指示,利用车辆指定的优先级超驰来更新优先级数据;根据车辆指定的优先级超驰和车辆的地理区域,安排在某一时间对车辆进行软件更新。
在一个或更多个示意性实施例中,一种非暂时性计算机可读介质包括指令,当所述指令由处理器执行时,使得处理器执行以下处理:将对车辆的软件更新安排在优先级指定的时间,其中,所述优先级使用软件更新的元数据和地理区域被确定,车辆在发送到处理器的消息中被识别为位于所述地理区域。
根据本发明的一个实施例,所述非暂时性计算机可读介质还包括使得处理器执行以下处理的指令:使用车辆指定的用户定义的定时设置来更新所述时间。
根据本发明的一个实施例,所述非暂时性计算机可读介质还包括使得处理器执行以下处理的指令:响应于车辆在地理区域内存在持续预定义时间段,从车辆接收指示车辆所在的地理区域的消息;响应于所述消息,更新数据存储区,以将车辆与所述地理区域进行关联。
根据本发明的一个实施例,所述非暂时性计算机可读介质还包括使得处理器执行以下处理的指令:基于包括在所述消息中的车辆的车辆识别号(VIN)来更新数据存储区,以将车辆标识为与所述地理区域相关联。
根据本发明的一个实施例,所述地理区域与政治边界对应。
根据本发明的一个实施例,所述优先级包括以下项中的一个或更多个:指示强制性修复的第一优先级、指示车辆已为软件更新付费的第二优先级、指示用于修复一个或更多个功能中的功能问题的软件更新的第三优先级、指示用于提供新功能的软件更新的第四优先级、指示用于调节操作车辆功能的设置的软件更新的第五优先级、指示偏好的更新的第六优先级以及指示将被安排在客户指定的时间的非迫近更新的第七优先级。
附图说明
图1是示出基于车辆的计算平台的框图;
图2是示出与车辆通信的车载软件更新服务器以及多个区域软件传送网络的框图;
图3是示出传送将与车辆关联的更新的区域标识符的数据流图;
图4是示出使用区域软件传送网络来传送软件更新的数据流图;
图5是示出用于更新与车辆关联的区域的算法的流程图;
图6是示出用于基于更新的区域向车辆提供软件更新的算法的流程图;
图7示出了用于更新软件更新的示例处理;
图8示出了用于确定针对车辆的软件更新的示例处理;
图9示出了用于向车辆提供指令的示例处理。
具体实施方式
在此描述本公开的实施例。然而,将要理解的是,所公开的实施例仅为示例,其它实施例可以采取各种可替代形式。附图无需按比例绘制;一些特征可被夸大或最小化以示出特定组件的细节。因此,在此公开的具体结构和功能细节不应被解释为具有限制性,而仅作为用于教导本领域技术人员以多种方式利用本发明的代表性基础。如本领域普通技术人员将理解的,参照任一附图示出和描述的各种特征可与在一个或更多个其它附图中示出的特征相组合,以产生未被明确示出或描述的实施例。示出的特征的组合提供用于典型应用的代表性实施例。然而,与本公开的教导一致的特征的各种组合和变型可被期望用于特定的应用或实施方式。
在许多软件更新系统中,新的软件更新的推送可作为FIFO(先进先出)方式的捆绑包(bundle)而发生。然而,这种软件更新的方式不提供关于推送的更新的类型的控制,并且也无法给予客户选择他们认为最期望的更新的能力。
为了决定向车辆推送哪些软件更新以及以何种顺序进行推送,系统可识别对于客户来说哪个或哪些更新是最重要的或者是最期望的。例如,工程师可基于通过更新实施的修复或其它功能向每个可用于下载的软件发布分配优先级。工程师还能够(例如,根据车辆VIN)分配每个车辆的软件更新的优先级偏好。这可被工程师用于将非强制性的软件更新作为高优先级更新进行推送。在车辆方面,客户能够为指定更新付费,从而提升该更新的优先级。此外或可选地,客户可具有重写将被提供用于下载的更新的优先级和时间的能力。
作为示例的优先级集合,优先级1的更新可指示强制性修复(例如,针对修复政府会要求回调的问题的任何软件修复),优先级2的更新可指示客户已授权该更新(例如,已为该更新付费),优先级3的更新可指示用于修复一个或更多个功能中的明显问题的软件更新,优先级4的更新可指示用于向客户提供新功能的软件更新,优先级5的更新可指示用于修复不明显问题的软件更新,优先级6的更新可指示偏好的更新,优先级7的更新可指示被安排在客户指定的时间的非迫近更新。
系统可基于针对车辆的优先级集合来对车辆执行更新。在示例中,调度器可执行高优先级或偏好优先级的更新的立即更新,并且随后执行较低优先级更新的安排更新。在一些情况下,系统可基于车辆的区域对更新的优先级进行更新。此外,系统可根据车辆的区域和优先级集合利用时间来更新调度器。下面详细讨论了本公开的其它方面。
图1示出了可用于向车辆102提供远程信息处理服务的系统100的示例图。车辆102可以是各种类型的载客车辆(诸如,混合型多用途车(CUV)、运动型多用途车(SUV)、卡车、休旅车(RV))、船、飞机或用于运输人或货物的其它移动机器。作为一些非限制性可行方式,远程信息处理服务可包括导航、逐向导航、车辆健康报告、本地商业搜索、事故报告和免提呼叫。在示例中,系统100可包括由密歇根州的迪尔伯恩市的福特汽车公司制造的SYNC系统。应当注意的是,示出的系统100仅为示例,并且可使用更多、更少和/或不同位置的元件。
计算平台104可包括一个或更多个处理器106,所述一个或更多个处理器106与内存108和计算机可读存储介质112两者连接并且被配置为执行支持在此描述的处理的指令、命令和其它例程。例如,计算平台104可被配置为执行车辆应用110的指令,以提供诸如导航、事故报告、卫星无线电解码和免提呼叫的功能。可使用各种类型的计算机可读存储介质112以非易失性的方式来保存这种指令和其它数据。计算机可读介质112(也被称为处理器可读介质或存储器)包括参与提供可由计算平台104的处理器106读取的指令或其它数据的任何非暂时性介质(例如,有形介质)。可通过使用各种编程语言和/或技术(包括但不限于以下项中单独一个或它们的组合:Java、C、C++、C#、Objective C、Fortran、Pascal、JavaScript、Python、Perl和PL/SQL)创建的计算机程序来编译或解释计算机可执行指令。
计算平台104可设置有允许车辆乘员与计算平台104进行交互的各种功能。例如,计算平台104可包括被配置为通过连接的麦克风116从车辆乘员接收语音命令的音频输入114以及被配置为从连接的装置接收音频信号的辅助音频输入118。辅助音频输入118可以是诸如立体声输入的有线插孔,或诸如蓝牙(R)音频连接的无线输入。在一些示例中,音频输入114可被配置为提供音频处理能力(诸如,低电平信号的前置放大处理能力),以及将模拟输入转换成数字数据以供处理器106进行处理。
计算平台104还可将一个或更多个音频输出120提供给音频控制器122的音频播放功能的输入。在其它示例中,计算平台104可通过使用一个或更多个专用扬声器(未示出)向乘员提供音频输出。音频控制器122可包括输入选择器124,输入选择器124被配置为将音频内容从所选择的音频源126提供至音频放大器128,以通过车辆扬声器130进行播放。作为一些示例,音频源126可包括解码的调幅(AM)无线电信号或调频(FM)无线电信号以及致密盘(CD)或数字通用盘(DVD)音频播放。音频源126还可包括从计算平台104接收的音频(诸如,由计算平台104生成的音频内容)、从连接到计算平台104的通用串行总线(USB)子系统132的闪存驱动器解码的音频内容以及通过计算平台104从辅助音频输入118传送的音频内容。
计算平台104可利用语音接口134来向计算平台104提供免提接口。语音接口134可支持根据可用命令的语法对经由麦克风116接收的音频的语音识别,以及语音提示生成以经由音频控制器122输出。在一些情况下,当音频提示准备好由计算平台104呈现并且另一个音频源126被选择用于播放时,所述系统可被配置为暂时静音、逐渐减弱或以其它方式超驰(override)由输入选择器124指定的音频源。
计算平台104还可从被配置为提供乘员与车辆102的交互的人机界面(HMI)控制件136接收输入。例如,计算平台104可与被配置为调用计算平台104的功能的一个或更多个按钮或者其它HMI控制件(例如,方向盘的音频按钮、即按即说按钮、仪表板控制件等)进行交互。计算平台104还可驱动一个或更多个显示器138或以其它方式与一个或更多个显示器138进行通信,所述一个或更多个显示器138被配置为通过视频控制器140向车辆乘员提供视觉输出。在一些情况下,显示器138可以是触摸屏,所述触摸屏被进一步配置为经由视频控制器140接收用户触摸输入,而在其它情况下,显示器138可以仅是没有触摸输入能力的显示器。
计算平台104还可被配置为经由一个或更多个车载网络142与车辆102的其它组件进行通信。作为一些示例,车载网络142可包括车辆控制器局域网(CAN)、以太网和面向媒体的系统传输(MOST)中的一个或更多个。车载网络142可允许计算平台104与车辆102的其它系统(诸如,车辆调制解调器144(其在一些配置中可能不存在)、被配置为提供车辆102的当前位置和航向信息的全球定位系统(GPS)控制器146以及被配置为提供关于车辆102的系统的其它类型的信息的各种车辆控制器148)进行通信。作为一些非限制性的可行方式,车辆控制器148可包括:被配置为提供对发动机操作组件(例如,怠速控制组件、燃料输送组件、排放控制组件等)的控制及对发动机操作组件的监测(例如,发动机诊断代码的状态)的动力传动系统控制器;被配置为管理各种电力控制功能(诸如,外部照明、内部照明、无钥匙进入、远程启动及进入点状态验证(例如,车辆102的发动机盖、车门和/或行李厢的关闭状态))的车身控制器;被配置为与遥控钥匙或车辆102的其它本地装置进行通信的无线电收发器;以及被配置为提供对制热和制冷系统组件(例如,压缩机离合器和鼓风机风扇控制、温度传感器信息等)的控制和监测的气候控制管理控制器。
如示出的,音频控制器122和HMI控制件136可通过第一车载网络142A与计算平台104进行通信,并且车辆调制解调器144、GPS控制器146和车辆控制器148可通过第二车载网络142B与计算平台104进行通信。在其它示例中,计算平台104可连接到更多或更少的车载网络142。另外或可选地,一个或更多个HMI控制件136或其它组件可经由与示出的车载网络142不同的车载网络142连接到计算平台104,或者直接连接到计算平台104而不连接到车载网络142。
计算平台104还可被配置为与车辆乘员的移动装置152进行通信。移动装置152可以是任何不同类型的便携式计算装置,诸如,蜂窝电话、平板计算机、智能手表、膝上型计算机、便携式音乐播放器或能够与计算平台104进行通信的其它装置。在很多示例中,计算平台104可包括无线收发器150(例如,蓝牙(R)控制器、Zigbee(R)收发器、WiFi收发器等),无线收发器150被配置为与移动装置152的兼容的无线收发器154进行通信。另外或可选地,计算平台104可通过有线连接(诸如,经由移动装置152与USB子系统132之间的USB连接)与移动装置152进行通信。
广域网156可向连接到广域网156的装置提供诸如分组交换网络服务(例如,互联网接入、VoIP通信服务)的通信服务。广域网156的示例可包括蜂窝电话网络。移动装置152可经由移动装置152的装置调制解调器158提供对广域网156的网络连接。为了便于通过广域网156进行通信,可将移动装置152与唯一装置标识符(例如,媒体访问控制(MAC)地址、移动装置号码(MDN)、互联网协议(IP)地址、移动站国际用户目录号码(MSISDN)、国际移动用户身份(IMSI)等)关联,以识别移动装置152通过广域网156进行的通信。在一些情况下,可由计算平台104根据保存在存储介质112中的配对装置数据160来识别车辆102的乘员或具有连接到计算平台104的许可的装置。例如,配对装置数据160可指示先前与车辆102的计算平台104配对的移动装置152的唯一装置标识符、在配对的移动装置152和计算平台104之间共享的秘密信息(诸如,链路密钥和/或个人识别码(PIN))以及最近使用的装置信息或装置优先级信息,使得计算平台104可在无需用户干预的情况下自动地重新连接到与配对装置数据160中的数据相匹配的移动装置152。在一些情况下,配对装置数据160还可指示与配对的移动装置152在连接时被授权访问的计算平台104的许可或功能相关的附加信息或选项。
当支持网络连接的配对的移动装置152自动或手动地连接到计算平台104时,移动装置152可允许计算平台104使用装置调制解调器158的网络连接能力来通过广域网156进行通信。在一个示例中,计算平台104可利用移动装置152的语音呼叫或数据连接上的话上数据连接在计算平台104与广域网156之间传送信息。另外或可选地,计算平台104可利用车辆调制解调器144在计算平台104与广域网156之间传送信息,而不使用移动装置152的通信设施。
与计算平台104类似的,移动装置152可包括一个或更多个处理器162,所述一个或更多个处理器162被配置为执行从移动装置152的存储介质166加载到移动装置152的内存164的移动应用168的指令。在一些示例中,移动应用168可被配置为与计算平台104或其它本地联网装置进行通信,并且与广域网156进行通信。
计算平台104还可包括装置链路接口170,以便于将移动应用168的功能集成到经由语音接口134可用的命令的语法中。装置链路接口170还可向移动应用168提供对车辆功能的访问(诸如,经由车载网络142可用于计算平台104的信息或对显示器138的访问)。装置链路接口170的示例可以是由密歇根州的迪尔伯恩市的福特汽车公司提供的SYNC系统的SYNC APPLINK组件。
图2是包括通过网络156与车辆102通信的车载软件更新服务器(以下简称为IVSU)202和多个区域软件传送网络204(例如,区域软件传送网络204-A和204-B)的系统200的示例图。车辆102可通过车辆102的计算平台104与网络156进行无线通信。当车辆102被组装时,车辆102可包括各种硬件组件和软件组件。在组装时或者在组装之后,车辆102的计算平台104可被配置为查询车辆102的这些硬件组件和软件组件的至少一部分的存在信息和版本信息。例如,计算平台104可参考定义要查询的特定信息以及这种信息位于何处的优化数据标识符列表(optimized data identifier list,ODL)文件。在一些情况下,ODL文件可作为软件安装的一部分被安装在计算平台104上。
计算平台104可使用查询的数据来生成询问器日志212。询问器日志212可以是包括从车辆102收集的信息的文件或其它数据结构,以用于识别车辆102的当前软件版本状态。询问器日志212可包括使用参数和值来标识特定车辆102以及一个或更多个车辆控制器148的信息(诸如但不限于,控制器名称、控制器序列号、VIN、硬件部件编号、MAC地址、软件应用的组成部分编号、语言以及安装在控制器上的服务包、控制器上的可用存储空间以及与安装先前的更新有关的状态信息)。
计算平台104还可被配置为查询存储的区域标识符228。存储的区域标识符228可以是制造、组装或测试车辆102的区域210(例如,区域210-A、210-B和210-C)的字母-数字标识符,或者替代地可以是用于将车辆102分配给客户的区域210的字母-数字标识符。因此,区域210可以是与车辆102关联的地理区域,并且可以但不必须对应于指定主权领土、省份、权属地或其它安置区类型的政治边界、国际边境、国家边境或地方边境。如下所述,响应于车辆102改变了区域210,存储的区域标识符228可被更新以与车辆102当前所在的区域210的区域标识符相匹配。
使用标识特定车辆102的信息(诸如但不限于,在汽车局域网(CAN)总线上发布的车辆识别码(VIN)信息、车辆调制解调器144的用户标识模块(SIM)信息(诸如国际移动站设备标识(IMEI))),计算平台104可经由网络156与IVSU 202通信以建立账户。在示例中,计算平台104可向IVSU 202发送询问器日志212,询问器日志212包括标识特定车辆102的信息和与车辆102的控制器的当前软件版本相关的信息。IVSU 202可从车辆102接收这些通信信息,并且可维护链接至车辆102的标识符(例如,链接至车辆102的VIN)的硬件配置和软件(例如,固件等)版本的数据存储区。IVSU 202还可维护定义先前确定的与车辆102关联的区域210的存储的区域标识符228的数据存储区。
区域软件传送网络204可位于不同的区域210中,使得每个区域210具有其自身对应的区域软件传送网络204。每个区域软件传送网络204可提供一个或更多个网络服务器218,以用于托管供车辆102下载的软件更新220。网络服务器218可包括一个或更多个装置,所述一个或更多个装置被配置为向车辆102提供由区域软件传送网络204存储的软件更新220。例如,网络服务器218可被配置为从车辆102接收针对可用的软件更新220的更新请求。在示例中,区域软件传送网络204可意在用于向与区域软件传送网络204在同一区域210中的车辆102提供软件更新220。
软件更新220可包括对车辆102的软件或设置的改变,以解决当前软件或设置的问题,或者为当前软件提供改进的功能。例如,软件更新220可包括针对一个或更多个车辆控制器148的更新配置设置,以及/或者将被安装在一个或更多个车辆控制器148上的软件或固件的更新版本。在一些情况下,软件更新220可包括单个区段(section),而在另一些情况下,软件更新220可被组织成多个子区段(subsection)、分区(partition)或分块(chunk),其中,所有子区段可被下载以完成将被安装的整个软件更新220。在一些示例中,软件更新220可由供应商(例如,车辆控制器148的供应商)发起或由车辆制造商发起。在一些情况下,软件更新220的至少一部分可被加密,而其它他情况下,软件更新220可以是未加密的。
每个软件更新220可与优先级数据221关联。在示例中,IVSU 202可保存软件更新220与对应的优先级数据221的关联。优先级数据221可指示向车辆102推送哪些软件更新220以及以何种顺序推送。例如,工程师可基于通过软件更新220实施的修复或其它功能来给每个可用于下载的软件发布分配优先级。工程师还能够(例如,根据车辆VIN)分配每个车辆102的软件更新220的优先级偏好。这可被工程师用于将非强制性的软件更新220作为针对该指定的车辆102的高优先级的软件更新220进行推送。在车辆102方面,客户能够为指定的软件更新220付费,从而提升被付费的软件更新220的优先级。此外或可选地,客户可具有重写将被提供用于下载的软件更新220的优先级和时间的能力。这些优先级可被保存在IVSU 202的优先级数据221中。
作为包括在优先级数据221中的示例的优先级集合,优先级1的更新可指示强制性修复(例如,针对修复政府会要求回调的问题的任何软件更新220),优先级2的更新可指示客户已为软件更新220付费,优先级3的更新可指示用于修复一个或更多个功能中的明显问题的软件更新220,优先级4的更新可指示用于向客户提供新功能的软件更新220,优先级5的更新可指示用于修复不明显问题的软件更新220,优先级6的更新可指示偏好的软件更新220,优先级7的更新可指示被安排在客户指定的时间的非迫近的软件更新220。
区域检验器206可被实现为由计算平台104的一个或更多个处理器执行的软件和/或固件。车辆102的区域检验器206可被配置为确定车辆102当前位于哪个区域210。在示例中,区域检验器206可被配置为从GPS控制器146和/或一个或更多个车辆控制器148中检索指示车辆102的当前位置的信息。例如,区域检验器206可被配置为周期性地或响应于预定义信号(例如,在每次点火循环/每个启动事件时和/或每当预定义数量的点火循环/启动事件发生时)而检索车辆102的当前位置。区域检验器206还可被配置为确定车辆102的当前位置对应于哪个区域210。例如,区域检验器206可参考区域标识符的列表,区域标识符的列表被存储在内存108中并且链接至标识区域210的边界的多个地理坐标(诸如,通过地理围栏GPS坐标来标识区域210的边界)。
响应于车辆102的当前区域210的确定,区域检验器206可被配置为将车辆102的识别的当前区域210所对应的当前区域标识符230与存储的区域标识符228相比较,其中,存储的区域标识符228指示先前确定的车辆102位于的区域210。在示例中,存储的区域标识符228可通过区域检验器206被保存在计算平台104的数据存储区中。响应于区域检验器206确定当前区域标识符230与存储的区域标识符228不同,区域检验器206可被配置为将当前区域标识符230发送到IVSU 202。在一个示例中,区域检验器206可被配置为:响应于确定在预定义时间段内或在预定义数量的点火循环/启动事件中当前区域标识符230持续不同于存储的区域标识符228,发送当前区域标识符230。如果当前区域标识符230持续不同于存储的区域标识符228,则区域检验器206可被配置为在向IVSU 202发送当前区域标识符230之前、在向IVSU 202发送当前区域标识符230期间或者响应于向IVSU 202发送当前区域标识符230,利用当前区域标识符230的标识符来更新数据存储区中的存储的区域标识符228。
区域接收器222可被实现为由IVSU 202的一个或更多个处理器执行的软件和/或固件。IVSU 202的区域接收器222可被配置为从车辆102接收标识车辆102(例如,通过VIN标识车辆102)且指示车辆102的当前区域标识符230的消息。这样可以相应地允许IVSU 202被通知车辆102当前所在的区域210。区域接收器222可被配置为将接收到的当前区域标识符230与标识特定车辆102的信息(例如,VIN)相关联,以用于处理来自车辆102的更新请求。例如,响应于更新请求,区域接收器222可被配置为识别与发送更新请求的车辆102的VIN对应的当前区域标识符230(诸如,在先前的数据交换期间从同一车辆102接收到的当前区域标识符230)。
区域接收器222可使用区域软件传送网络(regional software deliverynetwork,RSDN)数据226来确定哪个区域软件传送网络204将被请求软件更新220的车辆102使用。在示例中,区域接收器222可使用保存在数据存储区中的信息来识别哪个区域软件传送网络204意在用于为位于当前区域标识符230中的车辆102提供软件更新220。RSDN数据226可包括指示哪些区域软件传送网络204被分配用于哪些区域210的信息。在示例中,RSDN数据226可包括区域软件传送网络204的网络标识符或其它地址与由各自的区域软件传送网络204服务的区域210的标识符之间的映射。
应注意的是,可利用确定车辆102的区域210的其它方法。例如,IVSU202可基于车辆通过其被提供询问器日志212的连接的发起地址(例如,互联网协议(IP)地址)来确定车辆102的位置。IVSU 202可包括指示哪些区域软件传送网络204被分配用于哪些区域210的信息。使用发起地址,IVSU 202可推导出车辆102所位于的国家或区域210。在示例中,IVSU202可包括区域软件传送网络204的IP地址或其它地址与由各自的区域软件传送网络204服务的区域的标识符之间的映射。
独立于区域接收器222或者与区域接收器222相结合,指令创建器224可被实现为由IVSU 202的一个或更多个处理器执行的软件和/或固件。指令创建器224可被配置为使用询问器日志212生成指令文件(以下简称为指令)。为了识别软件更新220,指令创建器224可被配置为将在从车辆102接收的询问器日志212中指示的控制器的当前软件版本与计算平台104所兼容的软件的最新版本进行比较。指令创建器224还可被配置为针对应被更新的任何组件来识别更新的版本可能需要的任何附加的相关性。所述附加的相关性可被进一步添加到被发送给车辆102的指令中。基于意在提供由区域接收器222识别的软件更新220的区域软件传送网络204,指令创建器224可利用与车辆102关联的区域中的区域软件传送网络204中的一个的网络服务器218提供的网络位置来填充指令中的下载位置。
除了以FIFO的方式向车辆102提供软件更新220之外,指令创建器224还可被配置为利用优先级数据221来确定针对车辆102的软件更新220的排序。在示例中,指令创建器224可被配置为将强制性的软件更新220(例如,优先级1的更新)和支付的软件更新(例如,优先级2的更新)包括在指令中,同时允许不明显更新(例如,优先级5的更新)或将被稍后安排(例如,在客户指定时间)的非迫近更新(例如,优先级7的更新)。
在一些情况下,除了优先级以外,优先级数据221还可被键入(keyed to)区域标识符。例如,在一些情况下,软件更新220的优先级可根据车辆102所在的区域而不同。在示例中,软件更新220可指示向在一个区域中的客户提供新的功能的更新(例如,优先级4的更新),但是可能受到政府强制包括在另一区域中的车辆102中,从而可能在该另一区域中,软件更新220可以是强制性的优先级1的更新。
指令可以是被配置为识别应被安装到车辆102的二进制文件或其它软件更新220的文件或其它数据结构。指令可指定每个指定的软件更新220可被检索的网络位置。作为一个示例,指令可将所述网络位置指定为由与车辆102关联的区域210中的区域软件传送网络204中的一个的网络服务器218提供的统一资源定位符(URL)。
在指令中定义的网络位置可基于与网络位置关联的区域210而彼此不同。在一个示例中,指定针对区域软件传送网络204中的一个的更新的网络位置可不同于区域软件传送网络204中的另一个上的相同更新的网络位置。此外,由区域软件传送网络204提供的软件更新文件的内容可基于区域210而不同。在示例中,指令可包括由区域软件传送网络204中的一个的网络服务器218提供给与区域210关联的车辆102的针对区域指定的更新文件的网络位置。
区域指定的更新文件可包括但不限于定义专门针对一个或更多个区域210的要求、约束、规范、规则以及其它特性的文件。在示例中,区域指定的更新文件可包括与操控车辆102、拥有车辆102和/或存放车辆102的一个或更多个方面相关的规范(诸如但不限于,排放、照明、气候控制和燃料效率)。作为一个示例,在某些区域210中,仪表盘上的照明亮度可能需要被设置为最大值,而在另一些区域210中,软件可以提供照明亮度的用户配置。作为另一示例,在某些区域210中,车辆前灯可能需要在挡风玻璃雨刷器的操作期间打开,而在另一些区域210中,可能不存在这样的需求。作为另一示例,在某些区域210中,可在低速情况下允许受限的导航显示操作,而在另一些区域210中,可能需要在车辆102移出驻车挡时自动禁用受限的导航显示操作。
图3示出了说明基于车辆102所在的区域210来更新与车辆102关联的区域标识符的示例的数据流图300。在示例中,可使用诸如在图2中示出的系统来执行所述数据流。
在时间索引A,计算平台104检索与车辆102的当前位置相关的信息。例如,区域检验器206可从GPS控制器146中检索指示车辆102在每次点火循环/每个启动事件时的位置的地理坐标。在时间索引B,计算平台104识别哪个区域210与车辆102的当前位置对应。在示例中,计算平台104可参考区域标识符的列表,区域标识符的列表被存储在内存108中并且链接至标识区域210的边界的多个地理坐标(诸如,通过地理围栏GPS坐标来标识区域210的边界)。
在时间索引C,计算平台104将当前区域标识符230与保存在数据存储区中的存储的区域标识符228进行比较,以确定是否需要IVSU 202的区域更新。在时间索引D,响应于在时间索引C确定了当前区域标识符230与存储的区域标识符228不同,计算平台104向IVSU202发送消息。在一个示例中,响应于在时间索引C确定了在预定义时间段内或在预定义数量的点火循环/启动事件中当前区域标识符230持续不同于存储的区域标识符228,区域检验器206向IVSU 202发送包括当前区域标识符230的消息。在时间索引E,IVSU 202将在接收到的消息中指示的当前区域标识符230与数据存储区中的车辆102相关联。
图4是示出基于与车辆102关联的区域标识符来执行区域指定的更新的示例数据流400。在时间索引A,计算平台104收集与车辆102的控制器相关的信息。收集数据的处理可被称为询问,收集的数据可被称为询问器日志212。在示例中,车辆102的用户可经由恰好在更新下载之前的提示来选择软件更新220的下载,或者车辆102的用户可能已经预先授权自动的硬件和软件更新。一旦被授权(例如,通过接收来自用户的按钮按压或语音对话的方式而被授权),则计算平台104可被配置为查询针对车辆控制器148的软件更新220。所述查询可以以静默的方式被执行而不需要用户输入。
计算平台104可使用ODL文件来确定将收集什么信息。应注意的是,将收集的信息可包括来自车辆控制器148或车辆102的其它控制器的数据元素,并且将收集的信息可经由控制器局域网(CAN)或车辆102的支持控制器之间的数据传输的其它通信架构来被获得。所述信息还可包括可在经销商对车辆102进行维修期间收集的诊断代码以及其它车辆状态信息。所述信息还可包括分析数据,所述分析数据包括提供对各种车辆功能的使用的洞察的使用与记录数据。在一些情况下,ODL文件可作为软件安装的一部分被安装在计算平台104上,而在另一些情况下,ODL文件可能先前已经根据早先执行的更新而被接收到。
在时间索引B,计算平台104向IVSU 202发送更新请求(例如,发送询问器日志212)。在示例中,计算平台104可经由HTTPS(例如,通过计算平台104与计算平台104已知的IVSU 202的预定义网络地址之间的连接)向IVSU 202发送询问器日志212。IVSU 202可相应地从网络接收询问器日志212。
在时间索引C,IVSU 202基于保存在与车辆102的标识符关联的数据存储区中的当前区域标识符230来确定与车辆102关联的区域210。通过使用当前区域标识符230和RSDN数据226,IVSU 202的区域接收器222可确定哪个区域软件传送网络204意在为车辆102提供软件更新220。应注意的是,可利用用于确定车辆102的区域的其它方法。例如,使用发起地址和存储的数据,IVSU 202的区域接收器222可基于请求的发起地址来推导出针对更新请求的发起国家或区域。
在时间索引D,响应于识别出区域软件传送网络204,IVSU 202确定软件更新220。在示例中,IVSU 202查看计算平台104的当前控制器配置和当前版本,并识别应被安装在车辆102上的软件更新220的二进制文件。
在时间索引E,IVSU 202根据优先级数据221过滤确定的软件更新220。在示例中,指令创建器224对确定的软件更新220进行过滤以将强制性的软件更新220(例如,优先级1的更新)和支付的软件更新(例如,优先级2的更新)包括在指令中,同时过滤出不明显更新(例如,优先级5的更新)或被稍后安排的非迫近的更新(例如,优先级7的更新)。在一些情况下,除了优先级以外,优先级数据221还可被键入区域标识符。例如,在一些情况下,软件更新220的优先级可根据车辆102所在的区域而不同。在示例中,软件更新220可指示向在一个区域中的客户提供新的功能的更新(例如,优先级4的更新),但是可能受到政府强制而包括在另一区域中的车辆102中,从而可能在该另一区域中,软件更新220可以是强制性的优先级1的更新。
在时间索引F,IVSU 202根据过滤后的软件更新220来创建指令,并将指令发送到车辆102。在示例中,IVSU 202的指令创建器224可使用意在服务于区域210的区域软件传送网络204的区域指定的网络位置来填充指令中的下载位置。在另一示例中,指令创建器224可生成指令,指令包括由区域软件传送网络204的网络服务器218提供给与当前区域标识符230关联的车辆102的区域指定的更新文件的网络位置,其中,所述当前区域标识符230定义车辆102现在所在的区域210。
可在指令中识别将被安装的软件更新220。此外,指令可指定每个指定的更新二进制文件可被检索的网络位置。作为一个示例,指令可将网络位置指定为通过IVSU 202的网络服务器218提供的URL。在一些情况下,软件更新220可包括将被安装的新版本的文件,而在另一些情况下,软件更新220可包括将被应用于当前安装的文件的增量更新,以将当前安装的文件从一个版本更新至下一个版本。
在示例中,IVSU 202可经由HTTPS(例如,通过计算平台104将询问器日志212发送给IVSU 202所利用的HTTPS连接、通过与计算平台104已知的相同或不同的IVSU 202的预定义网络地址之间的不同连接等)将指令发送到车辆102。一旦指令被接收,则计算平台104可被配置为安装由指令指示的软件更新220。
在时间索引G,基于指令,计算平台104向由指令指定的链接位置请求软件更新220(例如,配置文件、二进制文件等)。在一个示例中,计算平台104可向意在服务于区域210的区域软件传送网络204的区域指定的网络位置请求更新。在另一示例中,计算平台104可向指令指定的链接位置请求区域指定的更新文件。
如在时间索引H所示出的,计算平台104可相应地下载软件更新220。作为一个示例,指令可将网络位置指定为由IVSU 202的网络服务器218提供的URL,并且计算平台104可从由指令指定的URL下载软件更新220。由于软件更新220可经由HTTPS从网络服务器218获得,因此计算平台104能够使用对从网络服务器218下载可用的恢复功能来下载软件更新220。
在时间索引I,计算平台104安装下载的软件更新220。在一些示例中,为了避免破坏安装到计算平台104的当前版本的软件,计算平台104可被配置为执行(除了启动计算平台104的当前激活的安装之外的)对计算平台104的二次安装的安装。可以以静默的方式执行对二次安装的更新的安装,而无需来自用户的输入。
在完成由指令指定的软件更新的安装时,计算平台104可被配置为执行对车辆102的控制器的附加询问,以创建新的询问器日志212。计算平台104可随后(例如,使用接收到的ODL)创建询问器日志212,以提供针对当前执行的软件更新220要询问什么信息的更新的定义。计算平台104可被配置为例如经由HTTPS将询问器日志212发送到IVSU 202。因此,IVSU 202可在无需用户HMI交互的情况下利用车辆102的安装状态来自动进行更新。
图5示出了用于使用区域软件传送网络204更新计算平台104的软件的示例处理500。例如,可由通过网络156与IVSU 202以及区域软件传送网络204进行通信的车辆102的计算平台104来执行处理500。
在操作502,计算平台104检索车辆102的当前位置。在示例中,计算平台104可从GPS控制器146和/或一个或更多个车辆控制器148中检索车辆102的当前位置。在另一示例中,计算平台104可周期性地或响应于预定义信号(例如,在每次点火循环/每个启动事件时和/或每当预定义数量的点火循环/启动事件发生时)检索车辆102的位置。在操作504,计算平台104确定车辆102的位置对应于区域210中的哪个区域。计算平台104还可通过参考区域标识符的列表来确定当前区域标识符230,所述区域标识符的列表被存储在内存108中并且链接至标识区域210的边界的多个地理坐标(诸如,通过地理围栏GPS坐标来标识区域210的边界)。
在操作506,计算平台104确定与车辆102当前所在的区域210对应的当前区域标识符230是否不同于与先前确定的区域210对应的存储的区域标识符228。响应于在操作506确定与区域210对应的当前区域标识符230与车辆102所关联的存储的区域标识符228相同,控制转至操作502,在操作502计算平台104检索车辆102的位置。
在操作508,响应于在操作506确定当前区域标识符230不同于存储的区域标识符228,计算平台104将当前区域标识符230发送给IVSU 202。在示例中,响应于在预定义时间段内或在预定义数量的点火循环中当前区域标识符230持续不同于存储的区域标识符228,计算平台104可发送当前区域标识符230。在操作508之后,处理500结束。
图6示出了用于更新IVSU 202的数据存储区中的与车辆102关联的区域标识符的示例处理600。例如,可由通过网络156与车辆102以及区域软件传送网络204进行通信的IVSU 202来执行处理600。
在操作602,IVSU 202从车辆102接收指示定义车辆102所在的区域210的当前区域标识符230的消息。在操作604,IVSU 202将接收到的当前区域标识符230与车辆102关联,以用于与来自车辆102的更新请求一起使用。在操作604之后,处理600结束。
图7示出了用于更新软件更新220的示例处理700。在示例中,处理700可由IVSU202在上面详细描述的系统200的情境下执行。
在操作702,IVSU 202将软件更新220添加到可用于车辆102的软件更新220。在操作704,IVSU 202给软件更新220分配优先级。在示例中,软件更新220可包括指定软件更新220的优先级的元数据或者与所述元数据一起被接收。在一些示例中,优先级可在区域之间保持一致。在其它示例中,优先级根据区域而不同。不管指定的一个优先级或多个优先级如何,IVSU 202可将优先级信息存储在优先级数据221中。
在操作706,IVSU 202确定是否存在针对软件更新220的车辆指定的优先级。在示例中,用户可能已支付了软件更新220以提升与用户的车辆102的VIN关联的软件更新220的优先级。如果存在针对软件更新220的车辆指定的优先级,则控制转到操作708,在操作708,IVSU 202更新优先级数据221以指示车辆102指定的优先级。否则,在操作708之后,处理700结束。
图8示出了用于确定针对车辆102的软件更新220的示例处理800。在示例中,处理800可由IVSU 202在上面详细描述的系统200的情境下执行。例如,处理800可响应于如上面参照处理700讨论的将新的软件更新220添加到IVSU 202(或者更新现有的软件更新220的优先级)而被发起。
在操作802,IVSU 202识别车辆102的区域。在示例中,如上面参照数据流400的时间索引C讨论的,IVSU 202基于保存在与车辆102的标识符关联的数据存储区中的当前区域标识符230来确定与车辆102关联的区域210。在另一示例中,IVSU 202的区域接收器222可基于车辆102通过其最近连接到IVSU 202的连接的发起地址(例如,互联网协议(IP)地址)来推导出针对更新请求的发起国家或区域。
在操作804,IVSU 202识别针对车辆102的可用的软件更新220。在示例中,如上面参照数据流400的时间索引D讨论的,IVSU 202查看计算平台104的当前控制器配置和当前版本,并识别应被安装在车辆102上的软件更新220。
在操作806,IVSU 202确定可用的软件更新220是否具有高优先级或偏好优先级。在示例中,IVSU 202可识别哪些针对车辆102可用的软件更新220包括强制性的软件更新220(例如,优先级1的更新)和付费的软件更新(例如,优先级2的更新)。在另一示例中,IVSU202还可将指示用于修复一个或更多个功能中的明显问题的软件更新220的优先级3的更新识别为识别具有高优先级或偏好优先级。在另一示例中,IVSU 202可另外或可选地将指示用于向客户提供新功能的软件更新220的优先级4的软件更新220识别为具有高优先级或偏好优先级。不管选择的指定优先级如何,如果软件更新220具有高优先级或偏好优先级,则控制转到操作808。
在操作808,IVSU 202将识别的软件更新220设置为即时更新。相应地,车辆102可接收用于安装软件更新220的指令。
在操作810,IVSU 202确定是否针对软件更新220设置了客户确定的更新时间。在示例中,客户可将用户指定的设置存储到IVSU 202,所述用户指定的设置指示用户的车辆102何时被指示为准备好接收软件更新220。如果针对软件更新220设置了客户确定的更新时间,则控制转到操作812,以利用该更新时间来更新IVSU 202的调度器,从而向车辆102提供用于开始安装软件更新220的指令。在操作812之后,处理800结束。
如果未指定客户确定的更新时间,则控制转到操作814,利用默认的更新时间来更新IVSU 202的调度器,以向车辆102提供指令。IVSU 202可例如基于更新的优先级和/或基于车辆102所在的区域来确定默认时间。在操作814之后,处理800结束。
图9示出了用于向车辆102提供指令的示例处理900。在示例中,处理900可由IVSU202在上面详细描述的系统200的情境下执行。
在操作902,IVSU 202确定是否执行软件更新220的提供。在示例中,IVSU 202可从车辆102的计算平台104接收用于请求IVSU 202提供软件更新220的请求。该请求可能已响应于车辆102确定已发生请求软件更新220的触发事件而由车辆102发送。例如,当确定车辆102已经完成了预定数量的点火开关接通循环和/或已经经过了预定的时间量,并且还确定网络连接可用于与IVSU 202进行通信(例如,经由连接的移动装置152确定网络连接可用于与IVSU 202进行通信)时,计算平台104可确定车辆102应检查软件更新。如先前至少参照图2和图4所描述的,车辆102可使询问器日志212随附着发送到IVSU 202的针对软件更新220的请求。询问器日志212可包括安装在车辆102上的至少一个软件控制器的版本信息,以及但不限于控制器名称、控制器序列号、VIN、硬件部件编号、MAC地址、软件应用的组成部分编号、语言以及安装在控制器上的服务包、控制器上的可用存储空间以及关于先前更新的安装的状态信息。在一些情况下,计算平台104可根据定义要询问什么信息以及这些信息可位于什么位置的ODL来生成询问器日志212。
在另一示例中,IVSU 202的调度器可基于先前的针对更新的请求来确定低优先级更新现被安排为被提供给车辆102。当先前确定的更新被安排时,IVSU 202可利用来自车辆102的保存的信息(诸如,先前在先前的更新请求或完成消息期间被提供给IVSU 202的保存的询问器日志212)来完成处理。
如果软件更新220被指示,则控制转到操作904。否则,控制保持在操作902。
在操作904,IVSU 202识别与请求软件更新220的车辆102关联的区域标识符。在一个示例中,IVSU 202可使用随附着询问器日志212的车辆信息(诸如,VIN)来在数据存储区中查找车辆102。IVSU 202还可参考数据存储区来识别与请求软件更新220的车辆102关联的区域标识符。
在操作906,IVSU 202识别针对车辆102的软件更新220。上面参照处理800描述了软件更新220的确定的细节。
在操作908,IVSU 202根据确定的软件更新200向车辆102提供指令。指令可包括用于基于与车辆102关联的区域210的区域标识符来识别哪个区域软件传送网络204意在提供用于车辆102的软件更新220的信息。指令可进一步指示将被车辆102下载和安装的一个或更多个二进制文件,以及在执行更新时使用的其它信息(诸如,用于解密将被下载和安装的二进制文件的更新的ODL和/或密钥)。
在指令中定义的网络位置可基于与网络位置关联的区域210而彼此不同。在一个示例中,对针对区域软件传送网络204中的一个的更新进行指定的网络位置可不同于针对区域软件传送网络204中的另一个上的相同更新的网络位置。此外,由区域软件传送网络204提供的软件更新文件的内容可基于区域210而不同。在示例中,指令可包括针对区域指定的更新文件的网络位置,所述区域指定的更新文件由区域软件传送网络204中的一个的网络服务器218提供给与区域210关联的车辆102。在操作908之后,处理900结束。
响应于接收到指令,车辆102可下载由指令指定的软件更新220,诸如,通过从由指令指定的区域软件传送网络204的网络位置的网络服务器218下载软件更新。在下载完成时,计算平台104可安装软件更新220,诸如,通过执行固件更新或者以其它形式将固件更新应用于安装的固件版本以更新固件版本。在一些情况下,计算平台104可向IVSU 202发送用于提醒IVSU 202软件更新220的安装成功或失败的消息。在接收到指示软件更新成功的消息时,IVSU 202可更新IVSU 202的关于车辆102的安装的配置状态的记录。
在此公开的处理、方法或算法可被传送到处理装置、控制器或计算机,或者通过所述处理装置、控制器或计算机实现,其中,所述处理装置、控制器或计算机可包括任何现有的可编程电子控制单元或专用电子控制单元。类似地,所述处理、方法或算法可以多种形式被存储为可由控制器或计算机执行的数据和指令,其中,所述多种形式包括但不限于信息永久地存储在非可写存储介质(诸如,ROM装置)中以及信息可变地存储在可写存储介质(诸如,软盘、磁带、CD、RAM装置以及其它磁介质和光学介质)中。所述处理、方法或算法也可在软件可执行对象中实现。可选地,可使用合适的硬件组件(诸如,专用集成电路(ASIC)、现场可编程门阵列(FPGA)、状态机、控制器或者其它硬件组件或装置)或者硬件组件、软件组件和固件组件的组合来整体或部分地实现所述处理、方法或算法。
说明书中所使用的词语是描述性词语而非限制性词语,并且应理解的是,可在不脱离本公开的精神和范围的情况下做出各种改变。如前所述,可将各个实施例的特征进行组合以形成本发明的可能未被明确描述或示出的进一步的实施例。尽管针对一个或更多个期望特性,各个实施例可能已经被描述为提供优点或优于其它实施例或现有技术的实施方式,但是本领域普通技术人员应认识到,根据具体的应用和实施方式,一个或更多个特征或特性可被折衷以实现期望的整体系统属性。这些属性可包括但不限于成本、强度、耐用性、生命周期成本、市场性、外观、包装、尺寸、可维护性、重量、可制造性、装配的容易性等。因此,被描述为在一个或更多个特性方面不如其它实施例或现有技术的实施方式的实施例并非在本公开的范围之外,并且可被期望用于特定的应用。

Claims (15)

1.一种系统,包括:
服务器,被配置为:
访问存储的优先级数据,以确定将被更新的车辆指定的软件更新的优先级;
响应于所述优先级指示软件更新是被授权由车辆使用的附件,将软件更新安排为即时推送;
否则,根据所述优先级和车辆的地理区域,安排在某一时间对车辆进行软件更新。
2.如权利要求1所述的系统,其中,服务器还被配置为:响应于针对软件更新的车辆请求,指示软件更新由位于车辆的地理区域内的区域软件传送网络来提供。
3.如权利要求1所述的系统,其中,服务器还被配置为:
响应于车辆在地理区域内存在持续预定义时间段,从车辆接收指示车辆所在的地理区域的消息;
响应于所述消息,更新数据存储区,以将车辆与所述地理区域进行关联。
4.如权利要求3所述的系统,其中,服务器还被配置为:使用包括在所述消息中的车辆的车辆识别码(VIN)来更新数据存储区,以指示车辆与所述地理区域相关联。
5.如权利要求1所述的系统,其中,所述地理区域与政治边界对应。
6.如权利要求1所述的系统,其中,所述优先级包括以下项中的一个或更多个:指示强制性修复的第一优先级、指示车辆已为软件更新付费的第二优先级、指示用于修复一个或更多个功能中的功能问题的软件更新的第三优先级、指示用于提供新功能的软件更新的第四优先级、指示用于调节操作车辆功能的设置的软件更新的第五优先级、指示偏好的更新的第六优先级以及指示将被安排在客户指定的时间的非迫近更新的第七优先级。
7.如权利要求1所述的系统,其中,服务器还被配置为:响应于由服务器确定到达所述某一时间而向车辆推送软件更新。
8.如权利要求1所述的系统,其中,服务器还被配置为:响应于可用的软件更新的添加而发起软件更新的优先级的确定。
9.一种方法,包括:
基于软件更新的元数据,将对车辆的软件更新的优先级数据包括在数据存储区中;
响应于接收到针对车辆的软件更新的车辆指定的优先级超驰的指示,利用车辆指定的优先级超驰来更新优先级数据;
根据车辆指定的优先级超驰和车辆的地理区域,安排在某一时间对车辆进行软件更新。
10.如权利要求9所述的方法,还包括:响应于从车辆接收到指示车辆所在的地理区域的消息,更新数据存储区,以将车辆与所述地理区域进行关联。
11.如权利要求9所述的方法,还包括:在元数据中指示软件更新是即时发布的强制性修复。
12.如权利要求9所述的方法,还包括:在元数据中指示软件更新是非必要更新。
13.如权利要求9所述的方法,其中,车辆指定的优先级超驰的指示包括针对软件更新的支付。
14.如权利要求9所述的方法,还包括:根据从车辆接收的消息的发起地址来确定车辆的地理区域。
15.一种非暂时性计算机可读介质,包括指令,当所述指令由处理器执行时,使得处理器执行以下处理:
将对车辆的软件更新安排在优先级指定的时间,其中,所述优先级使用软件更新的元数据和地理区域被确定,车辆在发送到处理器的消息中被识别为位于所述地理区域。
CN201710832309.0A 2016-09-21 2017-09-15 针对空中分配的更新的优先化 Active CN107864177B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US15/271,850 US20180081670A1 (en) 2016-09-21 2016-09-21 Prioritization of updates for over-the-air distribution
US15/271,850 2016-09-21

Publications (2)

Publication Number Publication Date
CN107864177A true CN107864177A (zh) 2018-03-30
CN107864177B CN107864177B (zh) 2022-04-29

Family

ID=61302472

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710832309.0A Active CN107864177B (zh) 2016-09-21 2017-09-15 针对空中分配的更新的优先化

Country Status (3)

Country Link
US (1) US20180081670A1 (zh)
CN (1) CN107864177B (zh)
DE (1) DE102017121510A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113778498A (zh) * 2021-08-23 2021-12-10 武汉中海庭数据技术有限公司 车辆数据更新方法、ota云端及车辆数据更新系统

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20180074813A1 (en) * 2016-09-14 2018-03-15 General Motors Llc Installing vehicle updates
JP2018073238A (ja) * 2016-11-01 2018-05-10 株式会社東芝 保護制御システム
US10353696B2 (en) * 2017-04-13 2019-07-16 Blackberry Limited Program release packages including program updates
EP3442162B1 (en) * 2017-08-11 2020-02-19 KONE Corporation Device management system
DK201870700A1 (en) 2018-06-20 2020-01-14 Aptiv Technologies Limited OVER-THE-AIR (OTA) MOBILITY SERVICES PLATFORM
KR102540932B1 (ko) * 2018-11-16 2023-06-08 현대자동차주식회사 차량의 업데이트 제공 장치 및 컴퓨터 기록 매체
US11301232B2 (en) * 2019-05-29 2022-04-12 Microsoft Technology Licensing, Llc Update management service for enterprise computing environments
US11417155B2 (en) * 2019-09-10 2022-08-16 Ford Global Technologies, Llc On-board data request approval management
US11494173B2 (en) 2019-12-23 2022-11-08 Gm Cruise Holdings Llc Vehicle software deployment system
US11805013B2 (en) 2020-01-29 2023-10-31 Juniper Networks, Inc. Prioritizing policy intent enforcement on network devices
US11450116B2 (en) * 2020-03-09 2022-09-20 Ford Global Technologies, Llc Systems and methods for sharing camera setting control among multiple image processing components in a vehicle
JP2022015221A (ja) * 2020-07-08 2022-01-21 トヨタ自動車株式会社 サーバ、更新管理方法及び更新管理プログラム
US20220035710A1 (en) * 2020-07-30 2022-02-03 Hewlett-Packard Development Company, L.P. Operating system recovery actions
US11269616B1 (en) * 2020-11-19 2022-03-08 Oracle International Corporation Impact driven continuous deployment system
US11887411B2 (en) * 2021-01-27 2024-01-30 Amazon Technologies, Inc. Vehicle data extraction service
KR20220139152A (ko) * 2021-04-07 2022-10-14 현대자동차주식회사 차량의 업데이트 관리 장치, 그것의 동작 방법 및 차량
US11902374B2 (en) 2021-11-29 2024-02-13 Amazon Technologies, Inc. Dynamic vehicle data extraction service

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070157192A1 (en) * 2005-12-30 2007-07-05 Dorothea Hoefler Software maintenance management
CN101699399A (zh) * 2009-11-03 2010-04-28 中兴通讯股份有限公司 一种软件更新的系统和方法
US20110289499A1 (en) * 2010-05-19 2011-11-24 Microsoft Corporation Techniques to automatically update software applications
US20150169311A1 (en) * 2013-12-18 2015-06-18 International Business Machines Corporation Automated Software Update Scheduling
US20160041821A1 (en) * 2013-06-25 2016-02-11 Google, Inc. Efficient Communication for Devices of a Home Network
CN105808285A (zh) * 2015-01-21 2016-07-27 福特全球技术公司 车辆控制更新的方法和系统
CN106170145A (zh) * 2015-05-22 2016-11-30 福特全球技术公司 基于环境的无线网络链路接入的优先级排序系统

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9443358B2 (en) * 1995-06-07 2016-09-13 Automotive Vehicular Sciences LLC Vehicle software upgrade techniques
US20050028153A1 (en) * 2003-07-31 2005-02-03 Anderson Glen J. Method and system for replacing fee-based software
US8090388B1 (en) * 2007-03-20 2012-01-03 Uniden America Corporation Method and apparatus for determining a geographic location
US8868613B2 (en) * 2007-11-26 2014-10-21 Adobe Systems Incorporated Updating data on a remote device
US8200240B1 (en) * 2009-11-23 2012-06-12 Sprint Spectrum L.P. Method and system for use of a trusted server to facilitate location determination
US20140059534A1 (en) * 2012-08-22 2014-02-27 General Electric Company Method and system for software management
US9524156B2 (en) * 2014-01-09 2016-12-20 Ford Global Technologies, Llc Flexible feature deployment strategy
US10006782B2 (en) * 2014-11-12 2018-06-26 Moj.Io Inc. Characterization of sensor data for vehicle telematics
US9928735B2 (en) * 2015-02-09 2018-03-27 Operr Technologies, Inc. Systems and methods for traffic violation avoidance
US20170315797A1 (en) * 2016-05-02 2017-11-02 Ford Global Technologies, Llc Vehicle connection location regional software delivery

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070157192A1 (en) * 2005-12-30 2007-07-05 Dorothea Hoefler Software maintenance management
CN101699399A (zh) * 2009-11-03 2010-04-28 中兴通讯股份有限公司 一种软件更新的系统和方法
US20110289499A1 (en) * 2010-05-19 2011-11-24 Microsoft Corporation Techniques to automatically update software applications
US20160041821A1 (en) * 2013-06-25 2016-02-11 Google, Inc. Efficient Communication for Devices of a Home Network
US20150169311A1 (en) * 2013-12-18 2015-06-18 International Business Machines Corporation Automated Software Update Scheduling
CN105808285A (zh) * 2015-01-21 2016-07-27 福特全球技术公司 车辆控制更新的方法和系统
CN106170145A (zh) * 2015-05-22 2016-11-30 福特全球技术公司 基于环境的无线网络链路接入的优先级排序系统

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
HANS CHANDRA等: ""Internet of Things: Over-the-Air (OTA) firmware update in Lightweight mesh network protocol for smart urban development"", 《2016 22ND ASIA-PACIFIC CONFERENCE ON COMMUNICATIONS (APCC)》 *
RYOZO KIYOHARA等: ""A new method of fast compression of program code for ota updates in consumer devices"", 《IEEE TRANSACTIONS ON CONSUMER ELECTRONICS》 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113778498A (zh) * 2021-08-23 2021-12-10 武汉中海庭数据技术有限公司 车辆数据更新方法、ota云端及车辆数据更新系统

Also Published As

Publication number Publication date
CN107864177B (zh) 2022-04-29
US20180081670A1 (en) 2018-03-22
DE102017121510A1 (de) 2018-03-22

Similar Documents

Publication Publication Date Title
CN107864177A (zh) 针对空中分配的更新的优先化
CN107632839A (zh) 车辆的区域指定的软件更新分配
CN107391164A (zh) 车辆连接位置的区域软件传送
US11036484B2 (en) Software update management
CN107819737A (zh) 使用策略来管理移动装置对车辆系统的控制
JP5774810B2 (ja) 車両および保有車両操縦者プロファイルの自動化および展開の方法、システム、および装置
CN101983391B (zh) 用于与车辆系统交互的双向便携式电子装置
CN107438094A (zh) 更新车辆系统模块
CN102739854B (zh) 利用智能电话作为远程信息处理装置接口的方法
CN107027171A (zh) 用于车辆区域配置的特征描述数据
CN107018176A (zh) 来自次级连接装置的对主连接装置的应用控制
CN104460647B (zh) 用于识别受损模块的系统
CN108306940A (zh) 用于电器激活传输的信息的远程修改的方法和系统
CN107415871A (zh) 众包车辆设置推荐
CN104917606B (zh) 用于控制对电子控制单元进行访问的密码加密
CN106331985A (zh) 安全低功耗车辆信息监测器
CN105094882A (zh) 无线车辆问题解决
CN107009976A (zh) 点火开关断开能量管理系统
AU2015294679A1 (en) Establishing a wireless connection to a vehicle
CN105825702A (zh) 车辆交换和驾驶员统计
CN109256119A (zh) 用于改进车辆语法的语音识别用户宏
CN103152708B (zh) 使用二进制数据的文本编码进行车辆远程信息处理通信
CN108216262B (zh) 提供车辆用户界面的装置和方法
CN103826322A (zh) 移动终端分组连接
CN107071696A (zh) 主连接装置的次级连接装置同伴应用控制

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant