[go: up one dir, main page]

CN110300954B - 控制设备、程序更新方法和计算机程序 - Google Patents

控制设备、程序更新方法和计算机程序 Download PDF

Info

Publication number
CN110300954B
CN110300954B CN201780085472.3A CN201780085472A CN110300954B CN 110300954 B CN110300954 B CN 110300954B CN 201780085472 A CN201780085472 A CN 201780085472A CN 110300954 B CN110300954 B CN 110300954B
Authority
CN
China
Prior art keywords
update
control
program
programs
time
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.)
Active
Application number
CN201780085472.3A
Other languages
English (en)
Other versions
CN110300954A (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.)
Sumitomo Electric Industries Ltd
Original Assignee
Sumitomo Electric Industries Ltd
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 Sumitomo Electric Industries Ltd filed Critical Sumitomo Electric Industries Ltd
Publication of CN110300954A publication Critical patent/CN110300954A/zh
Application granted granted Critical
Publication of CN110300954B publication Critical patent/CN110300954B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • G06F8/654Updates using techniques specially adapted for alterable solid state memories, e.g. for EEPROM or flash memories
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60RVEHICLES, VEHICLE FITTINGS, OR VEHICLE PARTS, NOT OTHERWISE PROVIDED FOR
    • B60R16/00Electric or fluid circuits specially adapted for vehicles and not otherwise provided for; Arrangement of elements of electric or fluid circuits specially adapted for vehicles and not otherwise provided for
    • B60R16/02Electric or fluid circuits specially adapted for vehicles and not otherwise provided for; Arrangement of elements of electric or fluid circuits specially adapted for vehicles and not otherwise provided for electric constitutive elements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • 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/08Registering or indicating performance data other than driving, working, idle, or waiting time, with or without registering driving, working, idle or waiting time
    • G07C5/0841Registering performance data
    • 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)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Mechanical Engineering (AREA)
  • Stored Programmes (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

提供了一种控制装置,该控制装置控制车内控制装置的控制程序的更新,该车内控制装置控制安装在车辆上的主题装置,该控制装置包括:存储器,其存储用于更新控制程序的程序;和控制单元,其根据对存储在所述存储器中的多个更新程序设置的更新顺序来更新多个控制程序。所述控制单元将用于所述多个控制程序的所需更新时间与预定阈值与进行比较,并且基于比较结果来执行用于确定是否以所述更新顺序来更新所述多个控制程序的确定处理。

Description

控制设备、程序更新方法和计算机程序
相关申请的交叉引用
本申请要求于2017年2月1日提交的日本专利申请No.2017-016539的优先权,其全部内容通过引用结合于此。
技术领域
本发明涉及控制设备、程序更新方法和计算机程序。
背景技术
近年来,在汽车领域,车辆在功能上有所进步,并且车辆中安装了各种各样的装置。因此,车辆配备有用于控制这些车载装置的许多控制装置,即所谓的ECU(电子控制单元)。
每一个车辆配备有各种类型的ECU,例如:与行驶相关的ECU,其响应于对油门、刹车和手柄的操作控制引擎、刹车、EPS(电动助力转向)等;与车体相关的ECU,其响应于占用者进行的开关操作控制内部灯和前照灯、警报装置的声音等的开启/关闭,;以及与仪表相关的ECU,其控制布置在驾驶员座位附近的仪表的操作。
通常,每个ECU由诸如微型计算机的算术处理单元组成,并且通过读出存储在ROM(只读存储器)中的控制程序并执行读取的控制程序来实现对车载装置的控制。ECU的控制程序可以根据车辆的目的地、坡度等而不同。因此,响应于控制程序的版本升级,需要用新版本的控制程序重写旧版本的控制程序。
当ECU的控制程序正在被更新时,由ECU控制的功能可能变得不可用。因此,必须在适当的时机执行控制程序的更新。
为了解决上述问题,已经提出了用于在适当的时机执行控制程序的更新的各种技术。例如,专利文献1公开了监测车辆中的通信状态并且根据通信状态更新控制程序的技术。专利文献2公开了这样的技术:基于车辆的调度来估计车辆将不被使用的时间段并且生成调度以便在该时间段内更新控制程序。专利文献3公开了这样的技术:基于与行驶相关的装置和与转向相关的装置的状态来确定与安全相关的程序是否可更新,并且根据该确定的结果来更新该程序。
引用列表:
[专利文献]
专利文献1:日本特开专利公开No.2012-178035
专利文献2:日本特开专利公开No.2012-14253
专利文献3:日本特开专利公开No.2014-118071
发明内容
根据一个实施例的控制装置是被配置为控制车载控制装置的控制程序的更新的控制设备,所述车载控制装置被配置为控制安装在车辆上的目标装置。所述控制设备包括:存储器,其被配置为在其中存储用于控制程序的更新程序;以及控制单元,其被配置为根据对存储在所述存储器中的多个更新程序设置的更新顺序来更新多个控制程序。所述控制单元基于所述多个控制程序的所需更新时间与预定阈值之间的比较,来执行确定是否将要根据所述更新顺序执行所述多个控制程序的更新的确定处理。
根据另一个实施例的程序更新方法是用于更新车载控制设备的控制程序的方法,所述车载控制设备被配置为控制安装在车辆上的目标装置,所述方法包括以下步骤:在存储器中存储用于控制程序的更新程序;和根据对存储在所述存储器中的多个更新程序设置的更新顺序更新多个控制程序。更新所述控制程序的步骤包括:基于所述多个控制程序的所需更新时间与预定阈值之间的比较,来确定以是否将要根据所述更新顺序执行所述多个控制程序的更新。
根据又一个实施例的计算机程序是用于使计算机用作控制设备的计算机程序,所述控制设备被配置为控制车载控制装置的控制程序的更新,所述车载控制装置被配置为控制安装在车辆上的目标装置。所述计算机具有存储器,所述存储器被配置为在其中存储用于控制程序的更新程序。所述计算机程序使所述计算机用作控制单元,所述控制单元被配置为根据对存储在所述存储器中的多个更新程序设置的更新顺序来更新多个控制程序。所述控制单元基于所述多个控制程序的所需更新时间与预定阈值之间的比较,来执行确定是否将要根据所述更新顺序执行所述多个控制程序的更新的确定处理。
附图说明
图1是示出根据实施例的程序更新系统的整体配置的示图。
图2是示出网关和无线通信装置的内部配置的框图。
图3是示出管理器装置和ECU的内部配置的框图。
图4是示出根据第一实施例的在程序更新系统中的车内通信系统中的通信过程的示例的序列图。
图5是示出图4中的步骤S3A中的顺序确定处理的具体内容的示例的流程图。
图6是示出根据第三实施例的在程序更新系统中的车内通信系统中的通信手段的示例的序列图。
图7是示出图6中的步骤S3B中的顺序确定处理的具体内容的示例的流程图。
具体实施例
〈本公开要解决的问题>
由于车辆上安装了许多ECU,所以可能存在将要被更新的多个控制程序。多个控制程序将以通知车辆的顺序被更新。此时,如果使用上述专利文献1至专利文献3的技术,则针对设置的更新顺序中的最早的控制程序确定适当的时机(timing),并且在该时机更新该控制程序。对于后续的控制程序,顺序地确定适当的时机,并且在各时机顺序地更新控制程序。因此,如果前一控制程序的更新被延迟,则后续控制程序的更新也被延迟,导致所有控制程序的更新完成的延迟。
也就是说,根据设置的更新顺序在适当的时机处更新控制程序,而不调整更新顺序。
例如,假定将要更新的控制程序是这样的ECU的控制程序:该ECU的控制目标(即,由ECU控制的功能)是将要由彼此复杂地链接的多个装置实现的功能。这样的ECU与控制目标是与控制相关的系统的ECU相对应。当执行该控制程序的更新时,需要暂时关闭整个车辆的系统的电源,或者需要暂停其他装置的使用。
同时,假设将要更新的控制程序是这样的ECU的控制程序:该ECU的控制目标是由单个装置实现的功能。这样的ECU与控制目标是导航装置、显示器等的应用的ECU相对应。当执行该控制程序的更新时,需要暂时停止使用对应的装置。然而,不需要暂停使用其它装置,且不需要关闭整个车辆的系统的电源。
在将要更新的控制程序是前一种控制程序的情况下,根据专利文献1至专利文献3中公开的技术,基于多个装置的使用状态或整个车辆的系统的使用状态来确定更新控制程序的时机。因此,可能延迟更新时机。另一方面,在将要更新的控制程序是后一种控制程序的情况下,由于基于实现将要由ECU控制的功能的单个装置的使用状态来确定更新控制程序的时机,所以与前一种控制程序的情况相比,更少可能发生更新时机的延迟。
然而,在存在将要更新的多个控制程序且在后一种控制程序之前更新前一种控制程序的情况下,前一种控制程序的更新的延迟可能导致后面的后一种控制程序的更新的延迟。也就是说,如果在不调整更新顺序的情况下根据设置的更新顺序执行对多个控制程序的更新,则可能延迟所有控制程序的更新。此外,在用于更新的程序保持存储在中继路径上的ECU或装置中并且存储器资源没有余量的情况下,用于更新的程序可能不利地影响诸如中继功能的功能。
本公开的一个方面的目的是提供一种控制设备、程序更新方法和计算机程序,其允许当执行多个控制程序的更新时,将在适当的时机更新每个控制程序。
〈本公开的效果>
根据本公开,当执行多个控制程序的更新时,可以在适当的时机更新每个控制程序。
[实施例的捕述]
本发明的实施例包括至少以下内容。
也就是说,实施例中包括的控制设备是被配置为控制车载控制装置的控制程序的更新的控制设备,该车载控制装置被配置为控制安装在车辆上的目标装置。所述控制设备包括:存储器,其被配置为在其中存储用于控制程序的更新程序;和控制单元,其被配置为根据对存储在所述存储器中的多个更新程序设置的更新顺序来更新多个控制程序。所述控制单元基于所述多个控制程序的所需更新时间与预定阈值之间的比较,来执行确定是否将要根据所述更新顺序执行所述多个控制程序的更新的确定处理。由于控制单元执行确定是否将要根据对多个更新程序设置的更新顺序来执行多个控制程序的更新的确定处理,可以根据所述确定的结果来改变所述多个控制程序的更新。
在一个示例中,对于确定处理的结果为否定的控制程序,控制单元将与该控制程序相对应的更新程序存储在存储器中,以及将所述更新程序的更新顺序重置为晚于先前设置的所述更新程序的更新顺序。因此,对于所需更新时间与预定阈值之间的比较结果是比较的预定结果的控制程序,更新顺序中的所述控制程序的更新顺序变得晚于先前设置的所述控制程序的更新顺序,也就是说,所述控制程序的更新被推迟至晚于其他控制程序的更新。因此,可以有效地执行多个控制程序的更新。
在另一示例中,对于确定处理的结果为否定的控制程序,控制单元从存储器中删除与该控制程序相对应的更新程序。因此,从存储器中删除确定处理的结果为否定的控制程序(即,根据所述控制程序的更新顺序,所述控制程序尚未被确定为将要被更新)的更新程序。因此,直到更新被执行,更新程序不被保留在存储器中。也就是说,防止更新程序使存储器被混乱,该更新程序用于这样的控制程序:根据该控制程序的更新顺序该控制程序未被更新。
优选地,当所述所需更新时间长于所述预定阈值时,所述控制单元确定所述确定处理的结果为否定的。
因此,不管对多个控制程序设置的更新顺序如何,优先执行所需更新时间在阈值内的控制程序的更新,同时所需更新时间长于预定阈值的控制程序的更新被推迟。因此,在更短的时间段内可以完成更多的控制程序的更新。
优选地,当所述所需更新时间长于所述预定阈值并且用户认证为成功时,所述控制单元确定所述确定处理的结果为否定的
因此,经授权用户(诸如车辆的所有者)可以管理对控制程序的更新。
优选地,当所述所需更新时间短于所述预定阈值时,所述控制单元确定所述确定处理的结果为否定的。
因此,不管对多个控制程序设置的更新顺序如何,优先执行所需更新时间长于阈值的控制程序的更新,同时所需更新时间短于阈值的控制程序的更新被推迟。因此,当控制程序的更新可在长时段内执行时,可优先执行所需更新时间长的控制程序的更新。
优选地,当所述所需更新时间短于所述预定阈值并且用户认证为成功时,所述控制单元确定所述确定处理的结果为否定的。
因此,经授权用户(诸如车辆的所有者)可以管理对控制程序的更新。
优选地,允许所述控制单元在当所述所需更新时间长于所述预定阈值时确定所述确定处理的结果为否定的、和当所述所需更新时间短于所述预定阈值时确定所述确定处理的结果为否定的之间进行选择。
因此,可以根据各个情况灵活地改变对多个控制程序设置的更新顺序。
优选地,所述预定阈值是可变的。
因此,可以根据各个情况灵活地改变对多个控制程序设置的更新顺序。
在实施例中包括的程序更新方法是用于更新车载控制设备的控制程序的方法,所述车载控制设备被配置为控制安装在车辆上的目标装置。所述方法包括以下步骤:在存储器中存储用于控制程序的更新程序;和根据对存储在所述存储器中的多个更新程序设置的更新顺序更新多个控制程序。更新所述控制程序的步骤包括:基于所述多个控制程序的所需更新时间与预定阈值之间的比较,来确定是否将要根据所述更新顺序执行所述多个控制程序的更新。
由于更新控制程序的步骤包括:确定将要是否根据对多个控制程序设置的更新顺序执行多个控制程序的更新,所以根据确定的结果,可能存在不根据设置的更新顺序执行多个控制程序的更新的情况。因此,例如,可以优先于更新顺序被设置为更早的控制程序的更新,来执行这样的控制程序的更新:该控制程序的更新顺序被设置为更晚但该控制程序的所需更新时间适合于在其期间可以执行更新的时间段。换句话说,可以灵活地改变对多个控制程序设置的更新顺序。因此,可以有效地执行多个控制程序的更新。
在实施例中包括的计算机程序是用于使计算机用作控制设备的计算机程序,所述控制设备被配置为控制车载控制装置的控制程序的更新,所述车载控制装置被配置为控制安装在车辆上的目标装置。所述计算机具有存储器,所述存储器被配置为在其中存储用于控制程序的更新程序。所述计算机程序使所述计算机用作控制单元,所述控制单元被配置为根据对存储在所述存储器中的多个更新程序设置的更新顺序来更新多个控制程序。所述控制单元基于所述多个控制程序的所需更新时间与预定阈值之间的比较,来执行确定是否将要根据所述更新顺序执行所述多个控制程序的更新的确定处理。
由于控制单元执行确定是否将要根据对多个控制程序设置的更新顺序来执行多个控制程序的更新的确定处理,所以根据确定的结果,可能存在不根据设置的更新顺序执行多个控制程序的更新的情况。因此,例如,可以优先于更新顺序被设置为更早的控制程序的更新,来执行这样的控制程序的更新:该控制程序的更新顺序被设置为更晚但该控制程序的所需更新时间适合于在其期间可以执行更新的时间段。换句话说,可以灵活地改变对多个控制程序设置的更新顺序。因此,可以有效地执行多个控制程序的更新。
[实施例的详细描述]
在下文中,将参考附图描述优选实施例。在以下描述中,相同的附图标记指代相同的组件和组成元件。其名称和功能也是相同的。因此,对其的重复描述不是必需的。
〈第一实施例>
[系统的整体配置]
图1是示出根据第一实施例的程序更新系统的整体配置的示图。
如图1所示,本实施例的程序更新系统包括能够经由广域通信网络2彼此通信的车辆1、管理服务器3和DL(下载)服务器4。
管理服务器3和DL服务器4由例如车辆1的汽车制造商操作,并且能够与预先注册为成员的用户所拥有的大量的车辆1通信。
如图1所示,每个车辆1包括车内通信系统10。车内通信系统10包括经由网关20连接到无线通信设备19的第一网络。车内通信系统1O还可以包括在没有网关20介入的情况下直接连接到无线通信设备19的第二网络。
第一网络包括:连接到网关20的车内通信线路13A、车内通信线路13B和车内通信线路13C;连接到车内通信线路13A的管理器装置14;连接到管理器装置14的车内通信线路15;以及连接到车内通信线路15或车内通信线路13B和车内通信线路13C的多个车载控制装置(在下文中称为“ECU”)16。
车内通信线路13A、车内通信线路13B和车内通信线路13C中的每一个由总线型通信网络组成。该网络是执行相对低速通信的通信网络,例如CAN(控制器局域网络)。
车内通信线路15允许各ECU 16之间的相互通信,并且由主/从类型通信网络(例如,LIN(本地互连网络)),该网络具有作为终端节点(主单元)的管理器装置14。
第二网络包括经由车内通信线路13D直接连接到无线通信设备19的一个或多个ECU 16。
车内通信线路13D是执行高速通信的网络,并且例如采用诸如CANFD(具有灵活数据速率的CAN)、以太网(注册商标)、或MOST(面向媒体的系统传输:MOST是注册商标)的通信标准。
在下面的描述中,各车内通信线路共用的附图标记为“13”,并且分配给各车内通信线路的各个标记为“13A、13B、13C、13D”。
管理器装置14由ECU组成,例如,与车体相关的ECU,其控制目标是与车辆1的车体相关的装备。车内通信系统10可以包括以下管理器装置作为其他管理器装置:由与电力相关的ECU组成的管理器装置和由与底盘相关的ECU组成的管理器装置,与电力相关的ECU的控制目标是与车辆1的驾驶相关的装备,与底盘相关的ECU的控制目标是与车辆1的行驶有关的装备。控制领域不限于上述三个领域,而是可以采用四个或更多个领域。控制领域根据车辆制造商的设计概念而变化,并且控制领域的共享不限于上述的领域。
车内通信线路13A是与车体相关的总线,车内通信线路13B是与电力相关的总线,并且车内通信线路13C是与底盘相关的总线。对于每条总线,连接与总线的控制领域相对应的类型的ECU 16。
具体地,连接到管理器装置14的作为与车体相关的ECU的ECU16包括例如用于控制内部灯的ECU、用于控制前照灯的ECU、用于控制雨刷的ECU等。
连接到车内通信线路13B的ECU 16包括例如用于控制引擎的ECU、用于控制电源系统(例如,用于继电器的开/关控制)的ECU等。
连接到车内通信线路13C的ECU 16包括例如用于控制ABS(防抱死制动系统)的ECU、用于正常制动控制的ECU等。
属于第二网络的ECU 16中的每一个是能够通过经由无线通信设备19与DL服务器4独立地通信来更新其控制程序的ECU。属于第二网络的ECU 16包括例如与多媒体相关的ECU。具体地,与多媒体相关的ECU包括用于控制导航装置的ECU、用于控制显示器的ECU等。
车内通信系统10还包括无线通信设备19和网关20。
无线通信设备19可通信地连接到广域通信网络2(诸如移动电话网络),并且经由规定标准的通信线路连接到网关20。一个或多个ECU 16可经由车内通信线路13D直接连接到无线通信设备19。
对于安装在车辆1中的无线通信设备19,可以想到用户拥有的装置,诸如移动电话、智能电话、平板型终端或笔记本PC(个人计算机)。
网关20将通过无线通信设备19从诸如管理服务器3和DL服务器4的外部装置接收的信息中继到管理器装置14和ECU 16。由无线通信设备19接收到的信息可以在没有网关20介入的情况下通过车内通信线路13D直接中继到ECU 16。网关20将从管理器装置14和ECU16接收的信息中继到无线通信设备19。无线通信设备19将被中继的信息无线地发送到诸如管理服务器3的外部装置。
图1示出了网关20经由无线通信设备19与外部装置通信的示例性情况。然而,如果网关20具有无线通信的功能,则网关20可以被配置为与诸如管理服务器3的外部装置无线地通信。
在图1所示的程序更新系统中,管理服务器3和DL服务器4可以被配置为单个服务器单元。
[无线通信单元的内部配置]
图2是示出无线通信设备19和网关20的内部配置的框图。
如图2所示,无线通信设备19包括控制单元91、存储单元92、第一通信单元93和第二通信单元94。
无线通信设备19的控制单元91包括CPU(中央处理单元)和RAM(随机存取存储器)。控制单元91的CPU将存储在存储单元92中的一个或多个程序读出到控制单元91的RAM上,并执行程序,从而用作用于对控制程序的更新进行控制的重现(repro)控制单元95。
例如,控制单元91的CPU可以通过以分时(time sharing)的方式在多个程序之间切换来并行地执行多个程序。
控制单元91的CPU包括一个或多个大规模集成电路(LSI)。在包括多个LSI的CPU中,多个LSI彼此协作地实现CPU的功能。
控制单元91的RAM由诸如SRAM(静态RAM)或DRAM(动态RAM)的存储器元件组成,并且在其中临时存储将由控制单元91的CPU执行的程序以及执行该程序所需的数据。
由控制单元91的CPU执行的计算机程序能够以被记录在诸如CD-ROM或DVD-ROM的记录介质中的状态被传送,或者可以通过从诸如服务器计算机的计算机装置下载被传送。
就这一点而言,这同样适用于将由网关20的控制单元21、管理器装置14的控制单元31(参考图3)的CPU和ECU 16的控制单元41(参考图3)的CPU执行的计算机程序。
存储单元92由诸如闪速存储器或EEPROM(电可擦除可编程只读存储器)的非易失性存储器元件组成。存储单元92具有存储区域,在该存储区域中存储有将由控制单元91的CPU执行的程序、执行程序所需的数据等。存储单元92还在其中存储从DL服务器4接收的用于管理器装置14和ECU 16的更新程序。
第一通信单元93由包括用于执行来自天线的无线电信号的发送/接收的通信电路的无线通信装置组成。第一通信单元93能够在连接到广域通信网络2(诸如移动电话网络)时与外部装置通信。
第一通信单元93经由由基站(未示出)形成的广域通信网络2将从控制单元91提供的信息传输到诸如管理服务器3的外部装置,以及将从外部装置接收的信息提供给控制单元91。
第二通信单元94由根据预定的通信标准(诸如CAN)与网关20通信的通信装置组成。第二通信单元94将从控制单元91的CPU提供的信息传输到网关20,并将来自网关20的信息提供给控制单元91的CPU。
无线通信设备19可以是执行有线通信并用作车辆1中的中继装置的通信设备。在这种情况下,通信设备具有连接器,符合诸如USB(通用串行总线)或RS232C的标准的通信电缆被连接到该连接器,并且该通信设备与经由通信电缆连接到其的另一通信装置执行有线通信。
如果另一通信装置和外部装置(诸如管理服务器3)可以经由广域通信网络2彼此无线通信,则外部装置和网关20能够通过依次由外部装置、另一通信装置、通信设备和网关20组成的通信路径彼此通信。
[网关的内部配置]
如图2所示,网关20包括控制单元21、存储单元22、第一通信单元24、第二通信单元23、第三通信单元26、第四通信单元27等。
网关20的控制单元21包括CPU和RAM。控制单元21的CPU将存储在存储单元22中的一个或多个程序读出到控制单元21的RAM,并执行程序,从而使网关20用作用于各种信息的中继装置。此外,控制单元21的CPU将存储在存储单元22中的一个或多个程序读出到控制单元21的RAM上,并执行程序,从而用作用于对控制程序的更新进行控制的重现控制单元25。
例如,控制单元21的CPU可以通过以分时的方式在多个程序之间切换来并行地执行多个程序。
控制单元21的CPU包括一个或多个大规模集成电路(LSI)。在包括多个LSI的CPU中,多个LSI彼此协作地实现CPU的功能。
控制单元21的RAM由诸如SRAM或DRAM的存储器元件组成,并且在其中临时存储将由控制单元21的CPU执行的程序以及执行程序所需的数据。
存储单元22由诸如闪速存储器或EEPROM的非易失性存储器元件组成。存储单元22具有存储区域,在该存储区域中存储将由控制单元21的CPU执行的程序、执行程序所需的数据等。存储单元22还在其中存储从DL服务器4接收的用于管理器装置14和ECU 16的更新程序。
无线通信设备19连接到第一通信单元24。第一通信单元24由根据预定的通信标准(例如,CAN)与无线通信设备19通信的通信装置组成。
第一通信单元24向控制单元21的CPU提供从无线通信设备19提供的信息。另外,第一通信单元24向无线通信设备19提供从控制单元21的CPU提供的信息。
车内通信线路13A、13B和13C分别连接到第二通信单元23、第三通信单元26和第四通信单元27。第二通信单元23、第三通信单元26和第四通信单元27各自由根据预定的通信标准(诸如CAN)与管理器装置14或ECU 16通信的通信装置组成。第二通信单元23、第三通信单元26和第四通信单元27各自向预定的管理器装置14或ECU 16发送从控制单元21的CPU提供的信息,以及向控制单元21的CPU提供从管理器装置14或ECU 16发送的信息。
[管理器装置的内部配置]
图3是示出管理器装置14和ECU 16的内部配置的框图。
如图3所示,管理器装置14包括控制单元31、存储单元32、第一通信单元33、第二通信单元34等。
管理器装置14的控制单元31包括CPU和RAM。控制单元31的CPU将存储在存储单元32中的一个或多个程序读出到控制单元31的RAM上,并执行程序,从而使管理器装置14用作用于整体地控制连接到管理器装置14的ECU 16的主站。
例如,控制单元31的CPU可以通过以分时的方式在多个程序之间切换来并行地执行多个程序。
控制单元31的CPU包括一个或多个大规模集成电路(LSI)。在包括多个LSI的CPU中,多个LSI彼此协作地实现CPU的功能。
控制单元31的RAM由诸如SRAM或DRAM之类的存储器元件组成,并且在其中临时存储将由控制单元31的CPU执行的程序以及执行程序所需的数据。
存储单元32由诸如闪速存储器或EEPROM的非易失性存储器元件或诸如硬盘的磁存储装置组成。
存储在存储单元32中的信息包括例如计算机程序(以下称为“控制程序”),该计算机程序使控制单元31的CPU执行用于控制车辆1的由管理器装置14负责的控制目标(ECU 16等)的信息处理。
车内通信线路13A连接到第一通信单元33。第一通信单元33由根据预定的通信标准(诸如CAN)与网关20通信的通信装置组成。
第一通信单元33向网关20发送从控制单元31的CPU提供的信息,并且向控制单元31的CPU提供从网关20发送的信息。
车内通信线路15连接到第二通信单元34。第二通信单元34由根据预定的通信标准(诸如LIN)与连接到车内通信线路15的ECU 16通信的通信装置组成。
第二通信单元34向预定的ECU 16发送从控制单元31的CPU提供的信息,并且向控制单元31的CPU提供从ECU 16发送的信息。
控制单元31的CPU包括启动单元35,其在“正常模式”与“重编程模式(reprogramming mode)”(下文中也称为“重现模式(repro mode)”)之间切换CPU的控制模式。
管理器装置14的正常模式是其中管理器装置14执行其原始控制的控制模式,即,管理器装置14用作主站以整体地控制ECU 16的控制模式。
重编程模式是其中管理器装置14的控制程序被更新的控制模式。也就是说,重编程模式是其中控制单元31的CPU执行从存储单元32中的ROM区域中擦除控制程序/在存储单元32中的ROM区域上重写控制程序的控制模式。
仅当控制单元31的CPU处于该控制模式时,CPU才可以将存储在存储单元32中的ROM区域中的控制程序更新为新版本。
当控制单元31的CPU在重现模式下将控制程序的新版本写入存储单元32时,启动单元35暂时重新启动管理器装置14,并在已写入控制程序的新版本的存储区域上执行验证处理。
在验证处理完成之后,启动单元35根据更新后的控制程序操作控制单元31的CPU。
[ECU的内部配置]
如图3所示,ECU 16包括控制单元41、存储单元42、通信单元43等。
ECU 16的控制单元41包括CPU和RAM。控制单元41的CPU将存储在存储单元42中的一个或多个程序读出到控制单元41的RAM上,并执行程序,从而使ECU 16用作用于控制由ECU 16负责的目标装置的操作的车载控制装置。
例如,控制单元41的CPU可以通过以分时的方式在多个程序之间切换来并行地执行多个程序。
控制单元41的CPU包括一个或多个大规模集成电路(LSI)。在包括多个LSI的CPU中,多个LSI彼此协作地实现CPU的功能。
控制单元41的RAM由诸如SRAM或DRAM的存储器元件组成,并且在其中临时存储将由控制单元41的CPU执行的程序,以及执行程序所需的数据。
存储单元42由诸如闪速存储器或EEPROM的非易失性存储器元件或诸如硬盘的磁存储装置组成。
存储在存储单元42中的信息包括控制程序,该控制程序用于使控制单元41的CPU执行用于控制由ECU 16负责的车内控制目标(在ECU 16的情况下,诸如内部灯,前照灯或雨刷的目标装置)的信息处理。
次级车内通信线路15连接到通信单元43。通信单元43由通信装置组成,该通信装置根据预定的通信标准(诸如LIN)与作为ECU 16的主站的管理器装置14或与其他ECU 16通信。
通信单元43向其他ECU 16或管理器装置14发送从控制单元41的CPU提供的信息,并且向控制单元41提供从其他ECU 16或管理器装置14发送的信息。
控制单元41的CPU包括启动单元44,启动单元44在“正常模式”与“重编程模式”之间切换CPU的控制模式。
ECU 16的正常模式是其中ECU16执行其原始控制的控制模式,即,其中ECU 16控制由ECU 16负责的车内控制目标的控制模式。
重编程模式是其中ECU 16的控制程序被更新的控制模式。也就是说,重编程模式是其中控制单元41的CPU执行从存储单元42中的ROM区域中擦除控制程序/在存储单元42中的ROM区域上重写控制程序的控制模式。
仅当控制单元41的CPU处于该控制模式时,CPU才可以将存储在存储单元42中的ROM区域中的控制程序更新为新版本。
当控制单元41的CPU在重现模式下将控制程序的新版本写入存储单元42时,启动单元44暂时重新启动ECU 16,并且在已经写入控制程序的新版本的存储区域上执行验证处理。
在验证处理完成之后,启动单元44利用更新后的控制程序操作控制单元41的CPU。
[在程序更新时的车内通信的序列]
图4是示出根据第一实施例的在程序更新系统中的车内通信系统10中的通信过程的示例的序列图。在第一实施例中,将描述包括管理器装置14的ECU 16更新控制程序的情况。
在图4中,“从站ECU”是经由车内通信控制线路13A连接到管理器装置14的ECU 16,或者是经由车内通信控制线路13B或车内通信控制线路13C连接到网关20的ECU 16。在图4中,“Δ”指示用于包括管理器装置14的ECU 16的控制程序的更新程序(差异程序)。
虽然用于控制程序的更新程序可以是控制程序本身的新版本,但是在该实施例中假设更新程序是与旧版本的差异程序。
在这种情况下,如果包含旧版本与新版本之间的文件的差异信息的更新程序Δ被存储在相同的存储区域中,则包括管理器装置14的ECU 16的控制单元41可以通过将更新程序Δ应用于旧版本来将控制程序更新为新版本。
参考图4,首先,管理服务器3确认是否存在经由广域通信网络2从DL服务器4分发的更新程序Δ,即,是否存在将被用于更新的更新程序Δ(步骤S0)。该确认可以在无线通信设备19中执行。当存在将被用于更新的更新程序Δ时,启动以下序列。当不存在将被用于更新的更新程序Δ时,图4中所示的序列不被启动。
当存在将被用于更新的更新程序Δ时,管理服务器3将更新程序Δ传送到网关20(步骤S1)。可以响应于来自网关20的下载开始请求来执行由管理服务器3进行的更新程序Δ的传送。网关20检查下载的更新程序Δ的制造商是有效的,并且检查更新程序Δ还没有被改变,然后将更新程序Δ存储在存储单元22中(步骤S2A)。
在下载更新程序Δ之后的预定时机,网关20根据对更新程序Δ设置的更新顺序来更新与更新程序Δ相对应的控制程序。此时,如果在存储单元22中存储了多个更新程序Δ,则网关20确定是否将要根据对各个更新程序Δ设置的更新顺序来更新对应的控制程序。当确定结果为否定时,网关20执行重置更新顺序的处理(步骤S3A)。然后,网关20根据设置的更新顺序或重置的更新顺序来传送更新程序Δ,从而请求更新(步骤S4A-1、步骤S4A-2)。
已经从网关20接收到更新请求的管理器装置14或者已经经由管理器装置14从网关20接收到更新请求的ECU 16开发更新程序Δ并且将更新程序Δ应用于旧版本,从而将控制程序重写为新版本(步骤S5、步骤S6)。
当控制程序的更新完成时,管理器装置14通知网关20更新完成(步骤S7-1)。ECU16经由管理器装置14通知网关20更新完成(步骤S7-2)。网关20经由无线通信设备19通知管理服务器3更新完成(步骤S7-3、步骤S7-4)。因此,管理服务器3可以确认车辆1中的更新完成,并且此后阻止控制程序的更新程序Δ从DL服务器4分发。如果管理服务器3未被通知控制程序的更新完成,则管理服务器3使DL服务器4再次分发用于控制程序的更新程序Δ。在接收到通知时,网关20清除存储器(步骤S8A)。
在图4所示的序列中,网关20如下执行控制。即,网关20根据对多个更新程序Δ设置的更新顺序来更新控制程序,或者执行确定多个控制程序是否将要根据更新顺序被更新的确定处理,以及根据基于确定的结果重置的更新顺序来更新控制程序。因此,在第一实施例中,网关20与控制车载控制装置的控制程序的更新的控制设备相对应。
[顺序确定处理的细节]
当在管理器装置14中执行控制程序的更新时,在管理器装置14转换到重现模式之后,执行用于在存储单元32中的ROM区域上重写控制程序的准备处理、在ROM区域上的重写处理、以及管理器装置14的重启。当管理器装置14被重启时,暂停管理器装置14对连接到管理器装置14的ECU 16的控制,并且随着管理器装置14的重启,这些ECU 16返回到受控状态。属于第一网络的管理器装置14和ECU 16可以彼此通信,并且可以以复杂的方式彼此链接。因此,上述重启可以是整个车内通信系统10的重启。
另外,当在连接到管理器装置14的ECU 16中执行控制程序的更新时,或者当在经由车内通信线路13B或车内通信线路13C连接到网关20的ECU 16中执行控制程序的更新时,在所述ECU 16转换到重现模式之后,执行用于在存储单元42中的ROM区域上重写控制程序的准备处理、在ROM区域上的重写处理、以及所述ECU 16的重启。当所述ECU 16被重启时,与所述ECU 16相互协调的其他ECU 16(诸如,连接到与所述ECU 16相同的管理器装置14的其他ECU 16,或者属于与所述ECU 16相同的控制领域的其他ECU 16)的操作被暂停,并且这些ECU 16也随着所述ECU 16的重启而返回到它们的正常操作状态。另外,当在属于第一网络的ECU 16中执行控制程序的更新时,上述重启可以是整个车内通信系统10的重启。
因此,当在第一网络中执行控制程序的更新时,车内通信系统10在与以下时间段的总和相对应的时间段期间不可以执行其正常操作:用于重写的准备处理的时间段;用于重写的时间段;以及从对应的ECU 16的重启完成时开始到与所述ECU 16相互协调的ECU 16返回到其正常操作状态的时间段。在下面的描述中,该总时间也被称为所需重现(更新)时间Tr。所需重现时间Tr是从切换到重现模式开始到返回到正常模式的时间段,换句话说,是从开始控制程序的更新到返回到可用更新后的控制程序进行控制的状态的时间段。即,在第一实施例中,所需重现时间Tr不仅可以被认为是控制程序将被更新的ECU 16的功能不能被使用的时间段,而且还被认为是控制程序的更新影响除了由该ECU 16控制的装置之外的装置的时间段。
所需重现时间Tr根据控制程序的不同而不同,这取决于每个控制程序的更新所需的存储器容量、将要重启的装置的数量等。例如,当只有控制程序被更新的ECU 16被重启时,到重启完成的时间较短,并且所需重现时间Tr也短于整个车内通信系统10被重启的情况。此外,目标ECU 16的控制单元41的CPU的处理能力越高,所需重现时间Tr就变得越短。
当多个更新程序Δ被存储在存储单元22中时,如果首先执行利用具有较长的所需重现时间Tr的更新程序Δ的更新,则利用后续的更新程序Δ的更新的开始被延迟。因此,当强调应在预定时间段内完成更新的控制程序的数量时,换句话说,当需要在较短的时间段内完成更多的控制程序的更新时,不应当首先执行利用具有较长的所需重现时间Tr的更新程序Δ的更新。
因此,用作第一实施例中的控制设备的网关20基于各个更新程序Δ的所需重现时间Tr,确定是否将要根据对存储在存储单元22中的多个更新程序Δ设置的更新顺序来更新控制程序。当确定的结果是否定时,网关20将重置对多个更新程序Δ设置的更新顺序。
图5是示出图4所示的步骤S3A中的顺序确定处理的具体内容的示例的流程图。网关20的控制单元21的CPU通过将存储在存储单元22中的一个或多个程序读出到RAM上并执行读取的程序而用作重现控制单元25,并且图5的流程图中所示的处理由重现控制单元25实现。
参考图5,控制单元21的CPU根据规定的条件对存储在存储单元22中的更新程序Δ进行排序(步骤S101)。规定的条件包括例如从DL服务器4下载更新程序Δ的顺序、由DL服务器4指定的顺序、更新程序Δ的大小的顺序,等等。
接下来,CPU为存储在存储单元22中的更新程序Δ中的每一个指定由于更新程序Δ的更新而导致的所需重现时间Tr(步骤S103)。可替换地,可以从DL服务器4提供所需重现时间Tr。又可替换地,CPU可基于从DL服务器4提供的关于更新程序Δ的信息(例如,更新程序Δ的大小)来计算所需重现时间Tr。
以从具有最早更新顺序(具有最高顺序排名)的更新程序Δ开始的顺序,CPU确定是否将要根据设置的更新顺序来更新对应的控制程序(步骤S105至S113)。具体地,对于具有最高顺序排名的更新程序Δ,CPU将更新程序Δ的所需重现时间Tr与预先存储的规定时间Th进行比较(步骤S105)。规定时间Th为约几十秒至几分钟。
当最高顺序排名的更新程序Δ的所需重现时间Tr比规定时间Th更长(步骤S105中的“是”)并且在存储单元22中存储有其他更新程序Δ(该其他更新程序Δ的设置的更新顺序晚于该更新程序Δ的更新顺序)(步骤S106中的“是”)时,CPU确定不应根据设置的更新顺序更新相应的控制程序。当达成否定的确定结果时,CPU将该更新程序Δ的更新顺序重置为与已设置的最早顺序(最高顺序排名)不同的更新顺序(步骤S111)。具体地,CPU将该更新程序Δ的更新顺序重置为晚于另一更新程序Δ,该另一更新程序Δ的更新顺序晚于该更新程序Δ的更新顺序。这里,例如,假定该更新程序Δ的更新顺序被重置为最晚的更新顺序(最低顺序排名)。在另一示例中,可以通过交换该更新程序Δ和第二早更新顺序(第二高顺序排名)的更新程序Δ之间的更新顺序,来将该更新程序Δ的更新顺序重置为第二早更新顺序(第二高顺序排名)。
当所需重现时间Tr在规定时间Th内时,CPU确定根据设置的更新顺序使用更新程序Δ来更新控制程序(步骤S113)。在达成肯定的确定结果时,CPU执行在图4中所示的步骤S4A-1之上和之后的序列。因此,控制程序的更新被执行。
当在上述确定处理中达成否定的确定结果时,CPU优选地删除存储在存储单元22中的更新程序Δ(步骤S109)。因此,当在将要更新的装置中不执行控制程序的更新时,在存储单元22中不存储不必要的更新程序Δ,从而防止存储器被混乱。
在所需重现时间Tr长于规定时间Th的情况下,CPU可执行用户认证,且当用户(驾驶员)为经授权用户且用户指示CPU不管更新顺序而推迟更新程序Δ的更新时(步骤S107中的“是”),CPU可将更新程序Δ的更新顺序重置为与已设置的最早顺序(最高顺序排名)不同的更新顺序(步骤S111)。因此,经授权用户(诸如车辆1的所有者)可以管理控制程序的更新。
当结束上述对最高更新顺序的更新程序Δ的确定时,CPU检查存储单元22中是否存储有设置的更新顺序晚于该更新程序Δ的更新顺序的其他更新程序Δ。当存储有其他更新程序Δ时(步骤S115的“是”),CPU重复从步骤S105开始的处理以对储存在存储单元22中的所有更新程序Δ执行前述确定(步骤S115的“否”)。
[第一实施例的效果]
根据第一实施例的程序更新系统,当在存储单元22中存储有多个更新程序Δ并且在这些更新程序Δ中包括所需重现时间Tr长于规定时间Th的更新程序Δ时,确定不应当根据对这些更新程序Δ设置的更新顺序来执行对控制程序的更新,并且重置更新顺序。具体地,对于所需重现时间Tr长于规定机间Th的更新程序Δ,其更新顺序被重置,使得对应的控制程序的更新被推迟至晚于其他控制程序的更新。
从存储单元22中删除更新被推迟的更新程序Δ。当控制程序未被更新时,其更新的完成不被通知给管理服务器3。因此,从DL服务器4再次下载用于控制程序的更新程序Δ。因此,控制程序的更新被推迟到晚于从DL服务器4下一次下载更新程序Δ。
因此,优先地执行使用所需重现时间Tr在规定时间Th内的更新程序Δ的控制程序的更新。因此,可以在更短的时间段内完成更多控制程序的更新。也就是说,可以根据可以执行更新的时间段灵活地改变更新顺序,因此对控制程序进行有效更新。
〈第二实施例>
在上述示例中,当所需重现时间Tr长于规定时间Th时,更新顺序被重置,使得更新被推迟。然而,当所需重现时间Tr短于规定时间Th时,可重置更新顺序,使得更新被推迟。例如,当可以执行更新的时间段较长时,可以按照所需重现时间Tr的降序顺序来执行更新。
用于控制程序的更新的条件可在所需重现时间Tr短于规定时间Th的条件与所需重现时间Tr长于规定时间Th的条件之间改变。只有特定的用户可以被允许改变该条件。此外,规定时间Th可以是可变的。只有特定的用户可以被允许改变规定时间Th。
当优先执行所需重现时间Tr不短于规定时间Th的控制程序的更新时,当可以在长时间段内执行控制程序的更新时,可首先完成具有长的所需重现时间Tr的更新。即,先前对多个控制程序设置的更新顺序可以根据可在其期间执行更新的时间段而被灵活地改变,因此对控制程序进行有效更新。
〈第三实施例>
属于第二网络并且通过车内通信线路13D直接连接至无线通信设备19的ECU 16中的每一个是诸如与多媒体相关的ECU的ECU,其能够通过经由无线通信设备19与DL服务器4独立地通信来更新控制程序。因此,当执行ECU 16的控制程序的更新时,在ECU 16转换到重现模式之后,执行在存储单元42中的ROM区域上重写控制程序的处理,并且执行安装在将要由ECU 16控制的装置上的应用的重启。
因此,当在第二网络中执行控制程序的更新时,在与以下时间段的总和相对应的时间段期间不能使用对应的装置中的应用:用于重写处理的时间段;以及直到所述应用的重启完成为止的时间段。即,当在第二网络中执行控制程序的更新时,所需重现时间Tr与以下时间段的总和相对应:用于重写处理的时间段;以及直到所述应用的重启完成为止的时间段。即,在该第三实施例中,所需重现时间Tr可以被认为是在其期间仅控制程序将被更新的ECU 16的功能不能被使用的时间段。
图6是示出根据第三实施例的程序更新系统中的车内通信系统10中的通信手段(communication means)的示例的序列图。在该第三实施例中,将描述更新ECU 16的控制程序的情况,该ECU 16属于第二网络并且通过车内通信线路13D直接连接到通信设备19。
参考图6,在这种情况下,在检查更新程序Δ的安全性之后,无线通信设备19将从DL服务器4下载的更新程序Δ存储到存储单元92中(步骤S2B)。在下载更新程序Δ之后的预定时机,无线通信设备19根据对更新程序Δ设置的更新顺序来更新与更新程序Δ相对应的控制程序。此时,如果在存储单元92中存储有多个更新程序Δ,则无线通信设备19确定是否将要根据对各个更新程序Δ设置的更新顺序来更新对应的控制程序。当确定结果为否定时,无线通信设备19执行重置更新顺序的处理(步骤S3B)。然后,无线通信设备19根据设置的更新顺序或重置的更新顺序将更新程序Δ传送到目标ECU 16,并请求ECU 16执行更新(步骤S4B)。在从无线通信设备19接收到更新请求时,每个ECU 16开发更新程序Δ,并将更新程序Δ应用于旧版本,从而将控制程序重写为新版本(步骤S5)。
当控制程序的更新完成时,ECU 16通知网关20更新完成(步骤S7-5)。网关20经由无线通信设备19通知管理服务器3更新完成(步骤S7-6)。因此,管理服务器3可以确认车辆1中的更新完成,并且此后,阻止从DL服务器4分发控制程序的更新程序Δ。当管理服务器3未被通知对控制程序的更新完成时,管理服务器3使得DL服务器4分发控制程序的新的程序Δ。在接收到通知时,无线通信设备19清除存储器(步骤S8B)。
在图6的序列中,无线通信设备19根据对多个更新程序Δ设置的更新顺序来更新控制程序,或者执行确定是否将要根据更新顺序更新控制程序的确定处理,以及根据基于确定结果重置的更新顺序来更新控制程序。因此,在该第三实施例中,无线通信设备19与控制车载控制装置的控制程序的更新的控制设备相对应。
在根据第三实施例的程序更新系统中,作为控制设备的无线通信设备19在步骤S3B中执行顺序确定处理。步骤S3B中的顺序确定处理与图5的流程图中所示的处理相同。即,在根据第三实施例的程序更新系统中,无线通信设备19的控制单元91的CPU将存储在存储单元92中的一个或多个程序读出到RAM上,并且执行该程序,从而用作重现控制单元95。图5中所示的顺序确定处理由重现控制单元95实现。
[第三实施例的效果]
同样在根据第三实施例的程序更新系统中,对于所需重现时间Tr长于规定时间Th的更新程序Δ,利用该更新程序Δ的更新被推迟。即,优先地执行使用所需重现时间Tr在规定时间Th内的更新程序Δ的更新。因此,可以在更短的时间段内完成更多更新程序Δ的更新。
〈第四实施例>
属于第二网络的ECU 16中的每一个是例如与多媒体相关的ECU,并且其控制程序的更新是例如用于控制多媒体装置的应用的更新。因此,在通信装置和ECU之间建立高速通信,并且通信装置可能不确保用于吸收通信速度的差异的存储器。此外,由于与多媒体相关的ECU的存储器的容量大,所以即使当更新程序Δ被存储在存储单元92中时,每个更新程序Δ的大小也可能对存储器容量没有显著影响。因此,当控制程序的更新由于所需重现时间Tr比规定时间Th更长而被推迟时,可以在对应的更新程序Δ保留在存储单元92中而未被从存储单元92中删除的同时执行更新顺序的重置。
图7是示出图6中的步骤S3B中的顺序确定处理的具体内容的示例的流程图。当无线通信设备19的控制单元91的CPU将存储在存储单元92中的一个或多个程序读出到RAM上并执行该程序时,CPU用作重现控制单元95,并且由重现控制单元95来实现由图7的流程图示出的处理。在图7中,与图5中所示的流程图中相同的步骤标号表示相同的处理。因此,不再重复地描述与图5中所示的流程图中相同的处理。
参考图7,当控制单元91的CPU基于所需重现时间Tr与规定时间Th之间的比较的结果确定不应根据设置的更新顺序执行控制程序的更新时(步骤S105中的“是”),CPU将对应的更新程序Δ的更新顺序重置为晚于设置的更新顺序(步骤S201)。例如,CPU将更新程序Δ的更新顺序重置为最晚更新顺序。
在根据第四实施例的程序更新系统中,ECU 16的存储单元92中存储有更新程序Δ,该更新程序Δ的更新顺序根据所需重现时间Tr与规定时间Th之间的比较的结果而被推迟。因此,可以在可以进行更新的时刻执行使用存储在存储单元92中的更新程序Δ的控制程序的更新,而无需等待从DL服务器4的下一次下载。
〈第五实施例>
从DL服务器4下载到无线通信设备19的多个更新程序Δ可以包括用于属于第一网络的装置(管理器装置14或ECU 16)的更新程序Δ和用于属于第二网络的装置(ECU 16)的更新程序Δ两者。在这种情况下,无线通信设备19的控制单元91的CPU可以将所有的更新程序Δ临时存储到存储单元92中,并且可以对多个更新程序Δ执行顺序确定处理。即,虽然在图4中,网关20用作用于对用于属于第一网络的装置的更新程序Δ执行顺序确定处理(步骤S3A)的控制设备,但无线通信设备19也可用作用于对所有更新程序Δ执行顺序确定处理(S3B)的控制设备。
在这种情况下,即使当用于属于第一网络的装置(管理器装置14或ECU 16)的更新程序Δ和用于属于第二网络的装置(ECU 16)的更新程序Δ一起从DL服务器4被下载到无线通信设备19时,具有所需重现时间Tr长于规定时间Th的更新程序Δ的更新也被推迟。即,优先执行具有所需重现时间Tr在规定时间Th内的更新程序Δ的更新。因此,可以在更短的时间段内完成更多更新程序Δ的更新。
应注意,本文中所公开的实施例在所有方面仅是说明性的,而不应被视为限制性的。本发明的范围不由以上描述而限定,而是由权利要求的范围限定,并且本发明的范围旨在包括等同于权利要求的范围的含义和该范围内的所有修改。
附图标记列表
1 车辆
2 广域通信网络
3 管理服务器
4 服务器
10 车内通信系统
13A、13B、13C、13D、15 车内通信线路
14 管理器装置
16 ECU
19 无线通信设备
20 网关
21、31、41、91 控制单元
22、32、42、92 存储单元
23、34、94 第二通信单元
24、33、93 第一通信单元
26 第三通信单元
27 第四通信单元
25、95 重现控制单元
35、44 启动单元
43 通信单元

Claims (11)

1.一种控制设备,其被配置为控制车载控制装置的控制程序的更新,所述车载控制装置被配置为控制安装在车辆上的目标装置,所述控制设备包括:
存储器,其被配置为在其中存储用于控制程序的更新程序;和
控制单元,其被配置为根据对存储在所述存储器中的多个更新程序设置的更新顺序来更新多个控制程序,其中
所述控制单元基于所述多个控制程序的所需更新时间与预定阈值之间的比较,来执行确定是否将要根据所述更新顺序执行所述多个控制程序的更新的确定处理,
对于所述确定处理的结果为否定的控制程序,所述控制单元将与该控制程序相对应的更新程序的更新顺序重置为晚于先前设置的该更新程序的更新顺序,
当所述车载控制装置是第一装置时,所述控制单元包括所述所需更新时间中的第一时间段和第二时间段,
所述第一时间段是由于更新所述第一装置的控制程序而所述第一装置不能使用的时间段,
所述第二时间段是直到与已经被更新的所述第一装置协作的第二装置返回到正常操作状态为止的时间段,以及
所述第一装置和所述第二装置属于车载网络。
2.根据权利要求1所述的控制设备,其中
对于所述确定处理的结果为否定的控制程序,所述控制单元将与该控制程序相对应的更新程序存储在所述存储器中。
3.根据权利要求1所述的控制设备,其中
对于所述确定处理的结果为否定的控制程序,所述控制单元从所述存储器中删除与该控制程序相对应的更新程序。
4.根据权利要求1至3中任一项所述的控制设备,其中
当所述所需更新时间长于所述预定阈值时,所述控制单元确定所述确定处理的结果为否定的。
5.根据权利要求4所述的控制设备,其中
当所述所需更新时间长于所述预定阈值并且用户认证为成功时,所述控制单元确定所述确定处理的结果为否定的。
6.根据权利要求1至3中任一项所述的控制设备,其中
当所述所需更新时间短于所述预定阈值时,所述控制单元确定所述确定处理的结果为否定的。
7.根据权利要求6所述的控制设备,其中
当所述所需更新时间短于所述预定阈值并且用户认证为成功时,所述控制单元确定所述确定处理的结果为否定的。
8.根据权利要求1至3中任一项所述的控制设备,其中
允许所述控制单元在当所述所需更新时间长于所述预定阈值时确定所述确定处理的结果为否定的、和当所述所需更新时间短于所述预定阈值时确定所述确定处理的结果为否定的之间进行选择。
9.根据权利要求1至8中任一项所述的控制设备,其中,所述预定阈值是可变的。
10.一种程序更新方法,其用于更新车载控制设备的控制程序,所述车载控制设备被配置为控制安装在车辆上的目标装置,所述方法包括:
第一步骤、在存储器中存储用于控制程序的更新程序;和
第二步骤、根据对存储在所述存储器中的多个更新程序设置的更新顺序更新多个控制程序,其中
所述第二步骤包括第三步骤:所述第三步骤为基于所述多个控制程序的所需更新时间与预定阈值之间的比较,来确定是否将要根据所述更新顺序执行所述多个控制程序的更新,
对于确定的结果为否定的控制程序,将与该控制程序相对应的更新程序的更新顺序重置为晚于先前设置的该更新程序的更新顺序,
当所述车载控制装置是第一装置时,所述第三步骤中的所述所需更新时间中包括第一时间段和第二时间段,
所述第一时间段是由于更新所述第一装置的控制程序而所述第一装置不能使用的时间段,
所述第二时间段是直到与已经被更新的所述第一装置协作的第二装置返回到正常操作状态为止的时间段,以及
所述第一装置和所述第二装置属于车载网络。
11.一种存储有计算机程序的计算机可读存储介质,其用于使计算机用作控制设备,所述控制设备被配置为控制车载控制装置的控制程序的更新,所述车载控制装置被配置为控制安装在车辆上的目标装置,
所述计算机具有存储器,所述存储器被配置为在其中存储用于控制程序的更新程序,
所述计算机程序使所述计算机用作控制单元,所述控制单元被配置为根据对存储在所述存储器中的多个更新程序设置的更新顺序来更新多个控制程序,其中
所述控制单元基于所述多个控制程序的所需更新时间与预定阈值之间的比较,来执行确定是否将要根据所述更新顺序执行所述多个控制程序的更新的确定处理,
对于所述确定处理的结果为否定的控制程序,所述控制单元将与该控制程序相对应的更新程序的更新顺序重置为晚于先前设置的该更新程序的更新顺序,
当所述车载控制装置是第一装置时,所述控制单元包括所述所需更新时间中的第一时间段和第二时间段,
所述第一时间段是由于更新所述第一装置的控制程序而所述第一装置不能使用的时间段,
所述第二时间段是直到与已经被更新的所述第一装置协作的第二装置返回到正常操作状态为止的时间段,以及
所述第一装置和所述第二装置属于车载网络。
CN201780085472.3A 2017-02-01 2017-12-04 控制设备、程序更新方法和计算机程序 Active CN110300954B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2017016539 2017-02-01
JP2017-016539 2017-02-01
PCT/JP2017/043494 WO2018142750A1 (ja) 2017-02-01 2017-12-04 制御装置、プログラム更新方法、およびコンピュータプログラム

Publications (2)

Publication Number Publication Date
CN110300954A CN110300954A (zh) 2019-10-01
CN110300954B true CN110300954B (zh) 2021-05-18

Family

ID=63040447

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201780085472.3A Active CN110300954B (zh) 2017-02-01 2017-12-04 控制设备、程序更新方法和计算机程序

Country Status (5)

Country Link
US (1) US10963241B2 (zh)
JP (1) JP6376312B1 (zh)
CN (1) CN110300954B (zh)
DE (1) DE112017006978T5 (zh)
WO (1) WO2018142750A1 (zh)

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6135723B2 (ja) * 2015-08-20 2017-05-31 コベルコ建機株式会社 建設機械及びこれを備えたプログラム書き換えシステム
CN111133412A (zh) 2017-07-25 2020-05-08 奥罗拉实验室有限公司 基于工具链构建车辆ecu软件的软件增量更新和异常检测
WO2019168907A1 (en) * 2018-02-27 2019-09-06 Excelfore Corporation Broker-based bus protocol and multi-client architecture
US10909050B2 (en) * 2018-03-19 2021-02-02 Toyota Jidosha Kabushiki Kaisha Gateway apparatus and communication method
EP3546355B1 (en) * 2018-03-29 2021-07-07 Airbus Operations GmbH Aircraft area having a textile display, and an aircraft including such an aircraft area
US11560240B2 (en) 2018-03-29 2023-01-24 Airbus Operations Gmbh Aircraft area having a textile display, aircraft passenger seat having a textile display, and aircraft including an aircraft area
JP6943903B2 (ja) 2019-02-22 2021-10-06 本田技研工業株式会社 ソフトウェア更新装置、車両及びソフトウェア更新方法
JP7212736B2 (ja) * 2019-02-22 2023-01-25 本田技研工業株式会社 ソフトウェア更新装置、車両及びソフトウェア更新方法
EP3908947A1 (en) 2019-03-25 2021-11-17 Aurora Labs Ltd Generating and signing a line-of-code behavior and relation model
KR102751277B1 (ko) * 2019-06-10 2025-01-10 현대자동차주식회사 차량 업데이트 제어 장치 및 방법
JP7415345B2 (ja) * 2019-07-03 2024-01-17 オムロン株式会社 制御システム、サポート装置および設定プログラム
WO2021039326A1 (ja) * 2019-08-28 2021-03-04 株式会社デンソー 車両用電子制御システム、車両用マスタ装置、コンフィグ情報の上書きによる書換え指示方法及びコンフィグ情報の上書きによる書換え指示プログラム
CN113094062A (zh) * 2019-12-23 2021-07-09 华为技术有限公司 升级方法及装置
CN111273931B (zh) * 2020-01-20 2023-05-26 宁波吉利汽车研究开发有限公司 一种车载行车电脑并行升级方法及装置
US11463555B2 (en) * 2020-08-04 2022-10-04 Nxp B.V. Local interconnect network (LIN) messaging between LIN partitions separated by a backbone communication network
KR20220028879A (ko) * 2020-08-31 2022-03-08 현대자동차주식회사 차량의 ecu 업데이트 관리 장치 및 그 방법
JP7501545B2 (ja) 2022-01-11 2024-06-18 トヨタ自動車株式会社 制御システム、および、制御システムの制御方法
DE102022118843A1 (de) 2022-07-27 2024-02-01 Audi Aktiengesellschaft Verfahren zum Bereitstellen eines Updates für ein Kraftfahrzeug
EP4498234A1 (de) * 2023-07-28 2025-01-29 Siemens Aktiengesellschaft Verfahren und anordnung zur durchführung einer softwareaktualisierung in einem aus mehreren entitäten, insbesondere maschinen und/oder geräten, gebildeten system, insbesondere im industriellen umfeld

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101089815A (zh) * 2006-06-13 2007-12-19 柯尼卡美能达商用科技株式会社 程序更新管理装置
CN105531676A (zh) * 2013-09-09 2016-04-27 日本电气株式会社 蓄电池系统、更新蓄电池系统的方法和程序
WO2016147766A1 (ja) * 2015-03-16 2016-09-22 日立オートモティブシステムズ株式会社 ソフト更新装置、ソフト更新方法
JP2016188016A (ja) * 2015-03-30 2016-11-04 本田技研工業株式会社 プログラム書換装置及びプログラム書換方法

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3726726B2 (ja) 2001-08-20 2005-12-14 コニカミノルタビジネステクノロジーズ株式会社 画像処理装置および管理ユニット
US7802083B2 (en) * 2006-12-20 2010-09-21 Intel Corporation Utilization based installation on a computing system
JP2011070307A (ja) 2009-09-24 2011-04-07 Toyota Motor Corp プログラム更新装置
JP5240248B2 (ja) 2010-06-29 2013-07-17 トヨタ自動車株式会社 制御装置
JP5267598B2 (ja) 2011-02-25 2013-08-21 トヨタ自動車株式会社 車両制御装置のデータ書き換え支援システム及びデータ書き換え支援方法
US8813061B2 (en) * 2012-10-17 2014-08-19 Movimento Group Module updating device
WO2014088567A1 (en) * 2012-12-05 2014-06-12 Bendix Commercial Vehicle Systems Llc Methods and apparatus for updating software components in coordination with operational modes of a motor vehicle
JP5939149B2 (ja) 2012-12-18 2016-06-22 トヨタ自動車株式会社 車両用情報処理装置およびプログラム更新方法
CN107531198B (zh) * 2015-03-30 2020-04-03 本田技研工业株式会社 程序改写装置和程序改写方法
JP6009622B1 (ja) 2015-06-12 2016-10-19 三菱電機株式会社 更新マネジャおよびこれを用いた車載ソフトウェア更新システム
JP6693059B2 (ja) 2015-07-06 2020-05-13 日本電気株式会社 商品棚認識装置、商品棚認識方法、プログラム及び画像処理装置
WO2017098644A1 (ja) * 2015-12-10 2017-06-15 三菱電機株式会社 情報処理装置、情報処理方法及び情報処理プログラム
JP6380461B2 (ja) * 2016-06-02 2018-08-29 住友電気工業株式会社 中継装置、プログラム更新システム、およびプログラム更新方法
JP6697357B2 (ja) * 2016-09-15 2020-05-20 株式会社日立製作所 ソフトウェア更新システム

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101089815A (zh) * 2006-06-13 2007-12-19 柯尼卡美能达商用科技株式会社 程序更新管理装置
CN105531676A (zh) * 2013-09-09 2016-04-27 日本电气株式会社 蓄电池系统、更新蓄电池系统的方法和程序
WO2016147766A1 (ja) * 2015-03-16 2016-09-22 日立オートモティブシステムズ株式会社 ソフト更新装置、ソフト更新方法
JP2016188016A (ja) * 2015-03-30 2016-11-04 本田技研工業株式会社 プログラム書換装置及びプログラム書換方法

Also Published As

Publication number Publication date
WO2018142750A1 (ja) 2018-08-09
US10963241B2 (en) 2021-03-30
JP6376312B1 (ja) 2018-08-22
US20190361696A1 (en) 2019-11-28
CN110300954A (zh) 2019-10-01
JPWO2018142750A1 (ja) 2019-02-28
DE112017006978T5 (de) 2019-10-10

Similar Documents

Publication Publication Date Title
CN110300954B (zh) 控制设备、程序更新方法和计算机程序
JP6361671B2 (ja) プログラム更新システム、プログラム更新方法、中継装置及びコンピュータプログラム
JP6519708B2 (ja) 制御装置、プログラム更新方法、およびコンピュータプログラム
CN111034132B (zh) 控制设备、控制方法和计算机程序
US10705826B2 (en) Control apparatus, program updating method, and computer program
JP2017157003A5 (zh)
CN108369505B (zh) 控制设备、程序更新方法和计算机程序
CN110753905B (zh) 控制装置、控制方法和计算机程序
CN109219802B (zh) 控制设备、控制方法和记录介质
CN110494847B (zh) 中继设备、传送方法和计算机程序
JP6562134B2 (ja) 中継装置、プログラム更新システム、およびプログラム更新方法
CN111051139B (zh) 控制设备、控制方法和计算机程序
JPWO2018230084A1 (ja) 更新制御装置、制御方法、およびコンピュータプログラム
CN111032438A (zh) 控制设备、控制方法和计算机程序
WO2018154949A1 (ja) プログラム更新システム、制御装置、プログラム更新方法、及びコンピュータプログラム
JP6547904B2 (ja) 制御装置、プログラム更新方法、およびコンピュータプログラム
JP2018181376A (ja) 中継装置、プログラム更新システム、およびプログラム更新方法
JP2022040990A (ja) ソフトウェア更新装置、方法、プログラム、および、車両

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