CN115113896A - 程序更新控制装置、程序更新控制方法和计算机可读存储介质 - Google Patents

程序更新控制装置、程序更新控制方法和计算机可读存储介质 Download PDF

Info

Publication number
CN115113896A
CN115113896A CN202210121838.0A CN202210121838A CN115113896A CN 115113896 A CN115113896 A CN 115113896A CN 202210121838 A CN202210121838 A CN 202210121838A CN 115113896 A CN115113896 A CN 115113896A
Authority
CN
China
Prior art keywords
program
rewrite
control unit
update
rewriting
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.)
Pending
Application number
CN202210121838.0A
Other languages
English (en)
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.)
Honda Motor Co Ltd
Original Assignee
Honda Motor Co 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 Honda Motor Co Ltd filed Critical Honda Motor Co Ltd
Publication of CN115113896A publication Critical patent/CN115113896A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/14Digital output to display device ; Cooperation and interconnection of the display device with other functional units
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/12Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Human Computer Interaction (AREA)
  • Stored Programmes (AREA)

Abstract

程序更新控制装置具备:改写控制部,进行将对移动体的至少一部分进行控制的移动体控制部所执行的程序改写为新程序的控制;以及获取部,从外部装置获取新程序,改写控制部在开始改写前,向用户请求针对改写的执行的同意,保持示出用户同意了改写的执行的同意信息,在根据电源接通而启动的情况下,以保持有同意信息为条件,不向用户请求针对改写的执行的同意而执行改写。

Description

程序更新控制装置、程序更新控制方法和计算机可读存储 介质
技术领域
本发明涉及程序更新控制装置、程序更新控制方法和计算机可读存储介质。
背景技术
在专利文献1中,公开了可改写应用程序的ECU,作为车辆用的ECU。
专利文献1:日本特开2020-27666号公报。
发明内容
在第一方式中,提供了程序更新控制装置。程序更新控制装置具备改写控制部,该改写控制部进行将对移动体的至少一部分进行控制的移动体控制部所执行的程序改写为新程序的控制。程序更新控制装置具备从外部装置获取新程序的获取部。改写控制部在开始改写前,向用户请求针对改写的执行的同意,保持示出用户同意了改写的执行的同意信息,在根据电源接通而启动的情况下,以保持有同意信息为条件,不向用户请求针对改写的执行的同意而执行改写。
改写控制部可以在电池在同意之后安装于移动体的情况下,基于与电池安装于移动体这一情况相应地从电池输出的信号来感测电池安装于移动体,并且通过从电池供应的电力来启动。改写控制部可以在通过从电池供应的电力而启动的情况下,以保持有同意信息为条件,不向用户请求针对改写的执行的同意而执行改写。
改写控制部还可以保持示出改写的执行状态的执行状态信息,在根据电源接通而启动的情况下,以保持有同意信息为条件,基于所保持的执行状态信息来重新开始程序的改写。
改写控制部可以保持对成为改写的执行对象的移动体控制部进行识别的识别信息,在根据电源接通而启动的情况下,以保持有同意信息为条件,使由识别信息识别的移动体控制部启动,使移动体控制部执行改写。
移动体控制部可以具备存储部,所述存储部具有第一存储区域和第二存储区域。移动体控制部可以在启动时读入储存在第一存储区域中的程序和储存在第二存储区域中的程序中的任一个。改写控制部可以在移动体控制部所执行的程序储存在第一存储区域中的情况下,开始向第二存储区域写入新程序。可以在根据电源接通而启动的情况下,以保持有同意信息为条件,基于执行状态信息来判断是否正在改写新程序,在判断为正在改写新程序的情况下,使移动体控制部重新开始写入新程序。
移动体控制部可以具备存储部,所述存储部具有单个存储区域,所述单个存储区域储存移动体控制部所执行的程序。改写控制部可以在开始改写的情况下,擦除存储区域内的程序被储存的区域,使移动体控制部开始向存储区域内写入新程序。改写控制部可以在根据电源接通而启动的情况下,以保持有同意信息为条件,基于执行状态信息来判断是否正在改写新程序,在判断为正在改写新程序的情况下,使移动体控制部擦除正在写入到存储区域中的新程序,使移动体控制部重新开始写入新程序。
更新控制装置可以与电池电连接。
移动体可以是车辆。
在第二方式中,提供了移动体。移动体具备上述的程序更新控制装置。
在第三方式中,提供了程序更新控制方法。程序更新控制方法具备从外部装置获取新程序的步骤,所述新程序改写对移动体的至少一部分进行控制的移动体控制部所执行的程序。程序更新控制方法具备在改写开始前向用户请求针对改写的执行的同意的步骤。程序更新控制方法具备保持示出用户同意了改写的执行的同意信息的步骤。程序更新控制方法具备进行将移动体控制部所执行的程序改写为从外部装置获取的新程序的控制的步骤。程序更新控制方法具备在控制改写的改写控制部根据电源接通而启动的情况下、以保持有同意信息为条件、不向用户请求针对改写的执行的同意而执行改写的步骤。
在第四方式中,提供了计算机程序。计算机程序使计算机作为改写控制部发挥作用,所述改写控制部进行将对移动体的至少一部分进行控制的移动体控制部所执行的程序改写为新程序的控制。计算机程序使计算机作为获取部发挥作用,所述获取部从外部装置获取新程序。利用计算机程序,改写控制部在开始改写前,向用户请求针对改写的执行的同意,保持示出用户同意了改写的执行的同意信息,在根据电源接通而启动的情况下,以保持有同意信息为条件,不向用户请求针对改写的执行的同意而执行改写。
另外,上述的发明内容并未列出本发明的所有必要特征。此外,上述这些多个特征中的分支特征的组合也能成为发明。
附图说明
图1示意性地示出了一个实施方式的更新系统10。
图2示意性地示出了控制系统200所具备的系统结构以及被控制设备。
图3是以时间序列示出在进行ECU204的程序更新的情况下电池295被取下的情况下的处理的概略图。
图4示出同意获取画面400的一个例子。
图5是以时间序列示出在进行ECU205的程序更新的情况下电池295被取下的情况下的处理的概略图。
图6示意性地示出了与程序更新处理相关的时间图。
图7示出由ECU202管理的更新信息的数据结构的一个例子。
图8是示出由ECU202执行的更新重新开始处理的执行工序的流程图。
图9示出计算机2000的例子。
具体实施方式
下面,通过发明的实施方式来说明本发明,但下面的实施方式并不用于限定权利要求书涉及的发明。此外,实施方式中说明的特征的所有组合对于发明的解决方案来说并非是必不可少的。
图1示意性地示出了一个实施方式的更新系统10。更新系统10具备车辆20、以及外部装置70。车辆20具备控制系统200。控制系统200担负车辆20的控制、以及通过通信网络90的与外部装置70之间的通信。通信网络90包括互联网等IP网络、P2P网络、包含VPN的专用线路、虚拟网络、移动体通信网等。
在车辆20中,控制系统200具备多个ECU(Electronic Control Unit:电子控制单元),所述ECU进行车辆20的控制。控制系统200从外部获取控制系统200所具备的ECU的更新程序。例如,控制系统200通过通信网络90,利用无线通信接收从外部装置70发送的更新程序。控制系统200用更新程序来改写控制系统200所具备的ECU执行的程序,由此对控制系统200所具备的ECU重新编程。这样的重新编程是以控制系统200所具备的ECU的功能的升级等作为目的而进行的。如此,控制系统200通过OTA(Over The Air,空中下载)对ECU重新编程,由此更新ECU。在本实施方式中,将利用更新程序来改写ECU等的设备所执行的程序称为“程序更新”。
与ECU的程序更新相关的处理中的至少一部分在车辆20的IG电源关断的情况下执行。例如,当IG电源关断时,控制系统200获取用户针对执行程序更新的同意。控制系统200当获取用户针对程序更新的执行的同意时,存储示出用户同意了程序更新的执行的同意信息,并且开始与程序更新相关的处理中的IG电源在关断状态下应执行的预定的处理。
在车辆20的IG电源关断的情况下,程序更新所需的电力从车辆20所具备的电源电压12V的电池供应。因此,当在IG电源关断而开始程序更新后,用户取下车辆20的电池时,不能向控制系统200供应继续程序更新的电力,因此程序更新中断。当用户重新安装电池295时,控制系统200通过从电池供应的电力而启动。此时,控制系统200在保持有同意信息的情况下,不用重新获取同意信息而重新开始程序更新。如此,根据控制系统200,即使产生了由于用户取下电池的行为等外部因素而不供应电力的情况,也能够在电力供应恢复的情况下,不用重新获取用户的同意而继续进行程序更新。
图2示意性地示出了控制系统200所具备的系统结构以及被控制设备。控制系统200具备TCU201、ECU202、ECU204、ECU205、ECU206、MID298、以及IVI299。
ECU202通过车内通信线路280,与TCU201、ECU204、ECU205和ECU206连接。ECU202通过车内通信线路280,与TCU201、ECU204、ECU205、ECU206、MID298和IVI299相互通信。ECU202统一地控制TCU201、ECU204、ECU205、ECU206、MID298和IVI299。车内通信线路280例如可以被构成为包括CAN(Controller Area Network:控制器局域网)或以太网等。
TCU201是远程信息控制单元(Telematics Control Unit)。TCU201主要担负移动体通信。TCU201基于ECU202的控制,在与外部装置70之间进行数据的收发。TCU201基于ECU202的控制,通过移动体通信接收从外部装置70发送的更新程序。TCU201能作为无线通信部发挥作用。
MID298是多功能信息显示器。IVI299例如是车内娱乐节目信息设备(IVI)。MID298和IVI299能作为显示控制部发挥作用。IVI299具备无线LAN通信功能。IVI299基于ECU202的控制,利用无线LAN通信来接收从外部装置70发送的更新程序。
ECU204、ECU205和ECU206分别是作为对车辆20的至少一部分进行控制的车辆控制部的ECU。ECU204、ECU205和ECU206是“移动体控制部”的一个例子。ECU204、ECU205和ECU206控制车辆20所具备的各种的设备。例如,ECU204控制作为燃料喷射装置的FI294等。ECU205控制电池295等。电池295例如作为车辆用的12V电源发挥作用。电池295例如是铅蓄电池等。另外,在图2中,FI294、电池295和上锁装置296是车辆20所具备的被控制设备的一个例子,车辆20可以具备图2所示的设备以外的被控制设备。
在本实施方式中,例示了控制系统200具备TCU201、ECU202、ECU204、ECU205、ECU206、MID298和IVI299的系统结构,但是控制系统200的系统结构不限于本实施方式的例子。此外,在本实施方式中,作为例示,说明为,能成为程序更新的对象的移动体控制部是ECU204和ECU205,ECU202作为对程序更新进行控制的“程序更新控制装置”发挥作用。另外,能成为程序更新的对象的移动体控制部不限于这些ECU。能成为程序更新的对象的移动体控制部可以是TCU201、ECU202、ECU204、ECU205、ECU206、MID298和IVI299中的任一个。
ECU202作为对ECU的程序更新进行控制的程序更新控制装置发挥作用。ECU202具备改写控制部220、获取部240、以及存储部270。
改写控制部220进行将对车辆20的至少一部分进行控制的ECU所执行的程序改写为新程序的控制。获取部240从外部装置获取新程序。改写控制部220在开始所述改写前,向用户请求针对所述改写的执行的同意,保持示出用户同意了所述改写的执行的同意信息。改写控制部220在根据电源接通而启动的情况下,以保持有所述同意信息为条件,不向用户请求针对所述改写的执行的同意而执行所述改写。
改写控制部220还可以保持示出改写的执行状态的执行状态信息。改写控制部220在根据电源接通而启动的情况下,以保持有同意信息为条件,基于所保持的执行状态信息,重新开始程序的改写。
改写控制部220可以保持对成为改写的执行对象的ECU进行识别的识别信息。改写控制部220在根据电源接通而启动的情况下,以保持有同意信息为条件,启动由识别信息识别的ECU,使ECU执行改写。
对具有多个存储区域作为程序的存储区域的ECU的程序更新进行说明。在本实施方式中,假设,ECU205具有多个存储区域。ECU205可以具备存储部,该存储部具有第一存储区域和第二存储区域。ECU205在启动时读入储存在第一存储区域中的程序和储存在第二存储区域中的程序中的任一者。改写控制部220在ECU205所执行的程序储存在第一存储区域中的情况下,开始向第二存储区域写入新程序。改写控制部220在根据电源接通而启动的情况下,以保持有同意信息为条件,基于执行状态信息,判断是否正在改写新程序中,在判断为正在改写新程序中的情况下,使ECU205重新开始写入新程序。
对具有单个存储区域作为程序的存储区域的ECU的程序更新进行说明。在本实施方式中,假设,ECU204具有单个存储区域。ECU204具备存储部,该存储部具有单个存储区域,该单个存储区域储存ECU204所执行的程序。改写控制部220在开始改写的情况下,擦除存储区域内的程序被储存的区域,使ECU204开始向存储区域内写入新程序。改写控制部220在根据电源接通而启动的情况下,以保持有同意信息为条件,基于执行状态信息,判断是否正在改写新程序中,在判断为正在改写新程序中的情况下,使ECU204擦除正在写入到存储区域中的新程序,使ECU204重新开始写入新程序。
ECU202电连接到电池295。ECU202在电连接到电池295的情况下,ECU202能通过从电池295供应的电力而工作。改写控制部220在电池295安装于车辆20的情况下,基于与电池295安装于车辆20对应地从电池295输出的信号来感测电池295安装于车辆20,并且通过从电池295供应的电力而启动。例如,ECU202通过电源线与具备电池295的电源系统连接,通过从电源线供应电力来启动。另外,ECU202可以通过与电源系统连接的信号线从具备电池295的电源系统获取与安装电池295对应地生成的信号。改写控制部220在通过从电池295供应的电力而启动的情况下,以保持有同意信息为条件,不向用户请求针对改写的执行的同意而执行改写。
在此,对程序更新进行说明。说明成为程序更新的对象的设备是ECU、ECU的固件储存用的存储器是单组存储器(单bank存储器,所谓的单面ROM)的情况下的程序更新处理。在该情况下,ECU的固件储存用的程序存储区域是一个,因此,在ECU依照在程序存储区域内储存的程序而工作的情况下,不能将更新程序写入到程序存储区域。在进行ECU的程序更新的情况下,改写控制部220向ECU转送更新程序,在ECU的预定的数据存储区域中储存更新程序,之后,向ECU指示程序更新。ECU当被指示程序更新时,执行进行程序更新的控制代码,将转送到数据存储区域的更新程序写入到程序存储区域,以激活更新程序。更新程序的激活包括对ECU的启动参数进行设定的处理,以使得在例如ECU的启动时加载更新程序,并开始基于更新程序的控制。
接着,说明ECU所具备的存储部是双组存储器(双bank存储器,所谓的两面ROM)的情况下的程序更新处理。在该情况下,ECU具有固件储存用的2个程序存储区域,因此,在ECU依照第1程序存储区域中储存的程序而工作的情况下,能够将更新程序写入到第2程序存储区域。也就是说,能够通过所谓的背面写入,向成为背面的第2程序存储区域写入更新程序。因此,例如,即使在车辆20的行进中,也能够将更新程序写入到第2程序存储区域。因此,改写控制部220当将更新程序转送到ECU时,向ECU指示以使得将更新程序写入到第2程序存储区域。当完成了更新程序向ECU的第2程序存储区域的写入时,成为可进行ECU的程序更新的状态。在改写控制部220进行ECU的程序更新的情况下,改写控制部220向ECU指示以使得激活写入到第2程序存储区域的更新程序。更新程序的激活包括对ECU的启动参数进行设定的处理,以使得在例如ECU的启动时,加载第2程序存储区域中储存的更新程序,并开始基于更新程序的控制。例如,更新程序的激活包括使第2程序存储区域作为程序的读出区域而有效化、并且使第1程序存储区域作为程序的读出区域而无效化的处理。如此,“程序更新”是包括指示将更新程序写入到ECU的程序存储区域的概念。此外,“程序更新”是包括进行激活写入到程序存储区域的更新程序的指示的概念。
在具有单组存储器的存储部的ECU的程序更新中,在将更新程序写入到程序存储区域的期间、以及进行更新程序的激活的期间内,ECU可能不能控制车辆。另一方面,在具有双组存储器的存储部的ECU的程序更新中,在将更新程序写入到背面的程序存储区域的期间内,ECU能够进行车辆的控制。在本实施方式中,说明为:ECU204具备单组存储器,ECU205具备双组存储器。
图3是以时间序列示出在进行ECU204的程序更新的情况下电池295被取下的情况下的处理的概略图。附图标记300示出了ECU204所执行的当前的程序被写入到作为ECU204所具备的存储部的单组存储器的程序存储区域中的状态。改写控制部220当完成从外部装置70下载ECU204用的更新程序时,在IG电源关断的情况下,获取用户针对程序更新的同意。例如,改写控制部220使IVI299显示图4所示的同意获取画面400。同意获取画面400包括给用户的消息信息420、用于获取用户针对程序更新的同意的UI按钮430、以及用于从用户获取不同意程序更新的意思的UI按钮440。改写控制部220在UI按钮430的位置被操作的情况下,判断为用户同意了程序更新,将同意信息存储在存储部270中。
改写控制部220当得到用户针对程序更新的同意时,擦除存储在程序存储区域中的信息(附图标记310),开始向程序存储区域写入更新程序(附图标记320)。当在改写控制部220正在向程序存储区域写入更新程序中,用户取下电池295时,由于电源故障,在更新程序的写入处理没有完成的状态下结束写入处理。当用户将电池295重新安装于车辆20时,改写控制部220启动ECU204,使ECU204执行擦除存储在正在写入更新程序中的程序存储区域中的信息的处理(附图标记330),向ECU204转送更新程序,将更新程序从最初起写入到程序存储区域。当更新程序的写入完成时(附图标记350),改写控制部220使ECU204执行更新程序的激活。由此,ECU204的程序更新完成。
图5是以时间序列示出在进行ECU205的程序更新的情况下电池295被取下的情况下的处理的概略图。附图标记500示出了ECU205所执行的当前的程序被写入到作为ECU205所具备的存储部双组存储器的第一程序存储区域中的状态。改写控制部220当完成从外部装置70下载ECU205用的更新程序时,开始向第二程序存储区域写入更新程序(附图标记510)。ECU205一边利用储存在第一程序存储区域中的当前程序,进行车辆20正在行进中的控制,一边根据来自改写控制部220的指示,进行向第二程序存储区域写入更新程序。如与图3等关联地说明的那样,改写控制部220当IG电源关断时,获取用户针对程序更新的同意,将同意信息存储在存储部270中。另外,图5示出了在IG电源关断时没有完成更新程序向第二程序存储区域的写入的情况。
当在改写控制部220正在向第二程序存储区域写入更新程序中,用户取下电池295时,由于电源故障,在更新程序的写入处理没有完成的状态下结束写入处理。当用户将电池295重新安装于车辆20时,改写控制部220从在取下电池295前完成了写入的状态起,重新开始向第二程序存储区域写入更新程序。当完成向第二程序存储区域写入更新程序时(附图标记350),改写控制部220使ECU205执行更新程序的激活。由此,ECU205的程序更新完成。
另外,在本实施方式中,在正在写入更新程序中进行取下电池295后重新安装电池295的情况下,针对具备单组存储器的ECU,在暂且擦除程序存储区域后,从最初起写入更新程序。另一方面,针对具备双组存储器的ECU,保持完成了向程序存储区域的写入的部分的信息,仅进行更新程序中的没有完成向程序存储区域的写入的部分的写入。可是,针对具备单组存储器的ECU,也可以采用暂且不擦除程序存储区域而仅进行更新程序中的没有完成向程序存储区域的写入的部分的写入的方式。此外,针对具备双组存储器的ECU,可以采用在暂且擦除程序存储区域后从最初起写入更新程序的方式。
图6示意性地示出了与程序更新处理相关的时间图。在图6中示出了IG开关的状态、ECU202的电源状态、以及在控制系统200中执行的程序更新关联处理的执行状态。另外,图6是进行ECU204和ECU205的程序更新的情况下的时间图。在此,假设,在IG电源关断之前完成向ECU205写入更新程序。
在时刻t1关断IG开关之前,完成了向第二程序存储区域写入具备双组存储器的ECU205的更新程序(双面写入)。在时刻t1由用户关断IG开关时,改写控制部220使IVI299显示同意获取画面400,以便获取用户针对程序更新的同意。另外,为了使ECU202能够在存在更新程序的情况下进行与程序更新相关的处理,ECU202的电源状态成为接通状态。在时刻t2通过IVI299获取用户针对更新程序的同意时,如与图3等关联地说明的那样,擦除ECU204的程序存储区域的内容,开始更新程序的写入(单面写入)。
在时刻t3取下电池295时,ECU202的电源状态变为关断。由此,ECU204的更新程序的写入在没有完成的状态下结束。在时刻t4重新安装电池295时,改写控制部220如与图3等关联地说明的那样,擦除ECU204的程序存储区域的内容,从最初起写入更新程序。当更新程序的写入完成时,改写控制部220使ECU204和ECU205执行更新程序的激活。在时刻t5完成激活时,ECU202的电源状态变为关断。
在时刻t6接通IG开关时,改写控制部220使IVI299显示示出结束了程序更新的更新结束画面,向用户通知完成了程序更新。如此,根据控制系统200,即使在正在程序更新中,电池电源发生故障的情况下,也能够在电池电源恢复时,自动地重新开始程序更新处理,自动地继续程序更新。
图7示出了ECU202所管理的更新信息的数据结构的一个例子。更新信息是将“ECUID”、“程序ID”、以及“更新状态”相对应的信息。更新信息存储在ECU202的存储部270中。
“ECUID”是对成为程序更新的对象的ECU进行识别的识别信息。“程序ID”是对更新程序进行识别的识别信息。“更新状态”是示出程序更新的状态的信息。
“更新状态”包括“下载中”、“写入中”、“写入完成”、“同意获取中”、“同意获取完毕”、“激活中”、“激活完成通知中”等。“下载中”示出ECU202正在从外部装置70接收更新程序。“写入中”示出在更新对象的ECU中正在向程序存储区域写入更新程序。“写入完成”示出在更新对象的ECU中向程序存储区域写入更新程序已完成。“同意获取中”示出正在获取用户针对更新程序的同意。“同意获取中”示出正在显示同意获取画面400的状态。“同意获取完毕”是示出例如通过同意获取画面400得到了用户针对程序更新的同意的同意信息的一个例子。“激活中”示出正在执行激活。“激活完成通知中”示出正在显示例如更新结束画面的状态。“下载中”、“写入中”、“写入完成”、“同意获取中”、“同意获取完毕”、“激活中”、“激活完成通知中”是示出程序更新的执行状态的信息的一个例子。
改写控制部220根据程序更新的进行,更新存储在存储部270中的更新信息。图7中例示的更新信息示出了在图6所示的时间图的时刻t3存储在存储部270中的更新信息。图7的“E001”是ECU204的识别信息,“E002”是ECU205的识别信息。在时刻t3,获取了用户针对程序更新的同意,因此,对“E001”和“E002”双方的ECUID,设定“同意获取完毕”。在时刻t3,正在写入ECU204的更新程序,因此,对ECUID“E001”,设定“写入中”。在时刻t3,在ECU205中完成了更新程序的写入,因此,对ECUID“E002”,设定“写入完成”。改写控制部220在由于电源恢复而启动的情况下,参照存储在存储部270中的更新信息,在存在未完成程序更新的ECU的情况下,根据更新信息,重新开始程序更新。当程序更新完成时,改写控制部220从存储部270中删除更新信息。
图8是示出ECU202所执行的更新重新开始处理的执行工序的流程图。图8的流程图的处理在ECU202中开始供电并完成了ECU202的启动后进行。
在S902中,改写控制部220判断是否由于电池295安装于车辆20而启动。例如,改写控制部220在检测到与安装电池295对应地从具备电池295的电源系统输出的信号的情况下,判断为由于电池295安装于车辆20而启动。在未判断为由于电池295安装于车辆20而启动的情况下,结束本流程图的处理。在判断为由于电池295安装于车辆20而启动的情况下,在S904中,改写控制部220判断更新信息是否存储在存储部270中。在更新信息未存储在存储部270中的情况下,结束本流程图的处理。
在更新信息存储在存储部270中的情况下,在S906中,从存储部270获取更新信息。在S908中,改写控制部220基于更新信息,判断是否已经获取了用户针对程序更新的同意。例如,在更新信息的状态中包括“同意获取完毕”的情况下,判断为已经获取了用户针对程序更新的同意。
在已经获取了用户针对程序更新的同意的情况下,在S910中,改写控制部220启动成为程序更新的对象的ECU。例如,基于更新信息中包括的成为程序更新的对象的ECU的识别信息,确定成为程序更新的对象的ECU,启动所确定的ECU。在S912中,改写控制部220基于更新信息的状态,重新开始程序更新。例如,向在更新信息的状态中包括“写入中”的ECU进行指示,以使得进行更新程序的写入。
在S904中,并未获取用户针对程序更新的同意的情况下,在S920中,根据更新信息的状态,开始更新处理。在S920中执行的处理是在获取用户针对程序更新的同意之前执行的处理。例如,在S920中执行的处理包括从外部装置70接收更新程序的处理、获取用户针对程序更新的同意的处理、向具备双组存储器的ECU写入更新程序的处理等。
如上面说明的那样,根据控制系统200,在正在执行获取了用户针对程序更新的同意之后的程序更新中,由于电池被取下而无法完成程序更新的情况下,当电池被重新安装而电源恢复时,能够自动地重新开始程序更新,自动地进行程序更新处理,直到程序更新的完成。由此,能够在接通了IG电源的情况下,迅速地使用车辆20。
车辆20是作为运输设备的一个例子的车辆。车辆可以是具备内燃机的汽车、电动汽车、燃料电池汽车(FCV)等汽车。汽车包括巴士、卡车、二轮机动车等。车辆既可以是鞍乘型车辆等,也可以是摩托车。作为运输设备,除了车辆之外,还包括包含无人飞机在内的飞机、船舶等设备。运输设备可以是运输人或物品的任意设备。运输设备是移动体的一个例子。移动体不限于运输设备,可以是可移动的任意设备。
图9示出能使本发明的多个实施方式整体或局部地具体化的计算机2200的例子。安装在计算机2200中的程序能够使计算机2000作为实施方式涉及的控制系统等系统或系统的各部、或者信息处理装置等装置或该装置的各部发挥作用,能够使计算机2000执行与该系统或系统的各部、或者该装置或该装置的各部相关的操作,和/或能够使计算机2000执行实施方式涉及的进程或该进程的步骤。可以是,上述这样的程序以使计算机2000执行本说明书中描述的处理工序以及框图的框中的若干项目或所有项目所相关的确定操作为目的由CPU2012执行。
本实施方式的计算机2000包括CPU2012和RAM2014,上述这些部件由主控制器2010相互连接在一起。计算机2000还包括ROM2026、闪速存储器2024、通信接口2022和输入/输出芯片2040。ROM2026、闪速存储器2024、通信接口2022和输入/输出芯片2040借助输入/输出控制器2020连接于主控制器2010。
CPU2012按照ROM2026和RAM2014中存储的程序进行工作,由此来控制各单元。
通信接口2022借助网络与其他电子设备之间通信。闪速存储器2024存储能被计算机2000中的CPU2012使用的程序和数据。ROM2026存储在活性化时由计算机2000执行的引导程序等、和/或依赖于计算机2000的硬件的程序。输入/输出芯片2040还可以将键盘、鼠标和显示器等各种输入/输出单元借助串行端口、并行端口、键盘端口、鼠标端口、显示器端口、USB端口、HDMI(注册商标)端口等输入/输出端口连接于输入/输出控制器2020。
程序经由如CD-ROM、DVD-ROM或存储卡那样的计算机可读储存介质或网络被提供。RAM2014、ROM2026或闪速存储器2024为计算机可读储存介质的例子。程序被安装至闪速存储器2024、RAM2014或ROM2026,并由CPU2012执行。上述这些程序中描述的信息处理被读取到计算机2000,提供程序与上述各种类型的硬件资源之间的链接。装置或方法可以通过随着计算机2000的使用实现信息的操作或处理的过程来构成。
例如,在计算机2000和外部装置之间执行通信的情况下,可以是,CPU2012执行RAM2014中载入的通信程序,并基于通信程序中描述的处理,针对通信接口2022指令通信处理。通信接口2022在CPU2012的控制下,读取如RAM2014和闪速存储器2024那样的记录介质中提供的发送缓存处理区域中存储的发送数据,并将读取出来的发送数据发送至网络,并将从网络接收到的接收数据写入到记录介质上提供的接收缓存处理区域等。
此外,可以是,CPU2012以如闪速存储器2024等那样的记录介质中存储的文件或数据库的全部内容或所需部分被读取到RAM2014的方式,针对RAM2014上的数据执行各种处理。CPU2012接下来将处理后的数据写回到记录介质。
可以是,如各种类型的程序、数据、数据表和数据库那样的各种类型的信息被存储至记录介质并被进行信息处理。CPU2012可以针对从RAM2014读取出来的数据,执行本说明书中记载且由程序的指令顺序指定的各种操作、包括信息处理、条件判断、条件分支、无条件分支、信息的检索/替换等在内的各种处理,并将结果写回到RAM2014。此外,CPU2012可以检索记录介质中的文件、数据库等中的信息。例如,在多个条目存储于记录介质中且该多个条目分别具有与第2属性的属性值相关的第1属性的属性值的情况下,可以是,CPU2012从该多个条目中检索出与第1属性的属性值指定的条件相一致的条目,并读取该条目中存储的第2属性的属性值,由此来获取与满足预定的条件的第1属性相关的第2属性的属性值。
上面说明的程序或软件模块可以存储在计算机2000上或计算机2000附近的计算机可读储存介质中。如与专用通信网络或互联网相连接的服务器系统中提供的硬盘或RAM那样的记录介质能够用作计算机可读储存介质。可以将计算机可读储存介质中存储的程序经由网络提供给计算机2000。
安装于计算机2000并使计算机2000作为控制系统200发挥作用的程序可以在CPU2012等中运行,使计算机2000分别作为控制系统200的各部发挥作用。这些程序中记述的信息处理通过被读入到计算机2000,从而作为成为软件与上述的各种硬件资源协同工作的具体手段的控制系统200的各部发挥作用。然后,通过采用这些具体手段来实现与本实施方式中的计算机2000的使用目的相对应的信息的运算或加工,能够构建与使用目的相对应的特有的控制系统200。
各种实施方式通过参照框图等被进行了说明。框图中,各框可以代表(1)操作被执行的进程的步骤或(2)带有执行操作的作用的装置的各部。特定的步骤和各部可以由专用电路、与计算机可读储存介质上存储的计算机可读指令一起供给的可编程电路、和/或与计算机可读储存介质上存储的计算机可读指令一起供给的处理器来实施。专用电路可以包括数字电路和/或模拟硬件电路,可以包括集成电路(IC)和/或分立电路。可编程电路可以包括逻辑与、逻辑或、逻辑异或、逻辑与非、逻辑或非以及其他逻辑操作、包括触发器、寄存器、现场可编程门阵列(FPGA)、可编程逻辑阵列(PLA)等那样的存储器元素等在内的、可重新构成的硬件电路。
计算机可读储存介质可以包括能够存储由适当的设备执行的指令的任意有形设备,其结果,具有被存储在该计算机可读储存介质中的指令的计算机可读储存介质构成包含下述指令的产品的至少一部分,能够以提供用于执行由处理工序或框图指定的操作的手段为目的执行该指令。作为计算机可读储存介质的例子,可以包括电子储存介质、磁储存介质、光储存介质、电磁储存介质、半导体储存介质等。作为计算机可读储存介质的更具体的例子,可以包括Floppy(注册商标)软磁盘、光盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦可编程只读存储器(EPROM或闪速存储器)、电可擦可编程只读存储器(EEPROM)、静态随机存取存储器(SRAM)、光盘只读存储器(CD-ROM)、数字多功能磁盘(DVD)、蓝光(RTM)磁盘、记忆棒、集成电路卡等。
计算机可读指令可以包括汇编指令、指令集架构(ISA)指令、机器指令、机器相关指令、微码、固件指令、状态设定数据、或利用包括Smalltalk、JAVA(注册商标)、C++等那样的面向对象的编程语言、以及“C”编程语言或同样的编程语言那样的现有的过程式编程语言在内的、一个或多个编程语言的任意组合来描述的源代码或对象代码中的任一者。
可以是,计算机可读指令借助本地网或局域网(LAN)、如互联网等那样的广域网(WAN),对通用计算机、特殊目的计算机、或者其他可编程的数据处理装置的处理器或可编程电路提供,且以提供用于执行由所说明的处理工序或框图指定的操作的手段为目的来执行计算机可读指令。作为处理器的例子,包括计算机处理器、处理单元、微处理器、数字信号处理器、控制器、微控制器等。
上面使用实施方式说明了本发明,但本发明的技术范围不限定于上述实施方式中描述的范围。对本领域的技术人员而言,可知能够对上述实施方式施加多种变更或改良。根据权利要求书的描述可知,通过施加上述那样的变更或改良所做成的实施方式也能被包含在本发明的技术范围内。
应当注意的是,就请求保护的范围、说明书和附图中示出的装置、系统、程序和方法中的工作、工序、步骤和阶段等的各处理的执行顺序而言,只要未特别明示“在..之前”、“先于”等字眼,且未说在随后的处理中使用先前的处理的输出,就能够以任意顺序将其实现。有关权利要求书、说明书和附图中的工作流程,为了方便,使用了“首先,”、“其次,”等进行了说明,但即使如此,也并不意味着必须以该顺序实施。
附图标记的说明
10 更新系统
20 车辆
70 外部装置
90 通信网络
200 控制系统
201 TCU
202 ECU
204 ECU
205 ECU
206 ECU
220 改写控制部
240 获取部
270 存储部
280 车内通信线路
294 FI
295 电池
296 上锁装置
298 MID
299 IVI
2000 计算机
2010 主控制器
2012 CPU
2014 RAM
2020 输入/输出控制器
2022 通信接口
2024 闪速存储器
2026 ROM
2040 输入/输出芯片。

Claims (11)

1.一种程序更新控制装置,其中,具备:
改写控制部,进行将对移动体的至少一部分进行控制的移动体控制部所执行的程序改写为新程序的控制;以及
获取部,从外部装置获取所述新程序,
所述改写控制部在开始所述改写前,向用户请求针对所述改写的执行的同意,保持示出用户同意了所述改写的执行的同意信息,
所述改写控制部在根据电源接通而启动的情况下,以保持有所述同意信息为条件,不向用户请求针对所述改写的执行的同意而执行所述改写。
2.根据权利要求1所述的程序更新控制装置,其中,
所述改写控制部在电池在所述同意之后安装于所述移动体的情况下,基于与所述电池安装于所述移动体这一情况相应地从所述电池输出的信号来感测所述电池安装于所述移动体,并且通过从所述电池供应的电力来启动,
所述改写控制部在通过从所述电池供应的电力而启动的情况下,以保持有所述同意信息为条件,不向用户请求针对所述改写的执行的同意而执行所述改写。
3.根据权利要求1或2所述的程序更新控制装置,其中,
所述改写控制部还保持示出所述改写的执行状态的执行状态信息,
所述改写控制部在根据电源接通而启动的情况下,以保持有所述同意信息为条件,基于所述保持的执行状态信息来重新开始所述程序的改写。
4.根据权利要求3所述的程序更新控制装置,其中,
所述改写控制部保持对成为所述改写的执行对象的所述移动体控制部进行识别的识别信息,
所述改写控制部在根据电源接通而启动的情况下,以保持有所述同意信息为条件,使由所述识别信息识别的所述移动体控制部启动,使所述移动体控制部执行所述改写。
5.根据权利要求3所述的程序更新控制装置,其中,
所述移动体控制部具备存储部,所述存储部具有第一存储区域和第二存储区域,
所述移动体控制部在启动时读入储存在所述第一存储区域中的程序和储存在所述第二存储区域中的程序中的任一个,
所述改写控制部在所述移动体控制部所执行的程序储存在所述第一存储区域中的情况下,开始向所述第二存储区域写入所述新程序,
所述改写控制部在根据电源接通而启动的情况下,以保持有所述同意信息为条件,基于所述执行状态信息来判断是否正在改写所述新程序,在判断为正在改写所述新程序的情况下,使所述移动体控制部重新开始写入所述新程序。
6.根据权利要求3所述的程序更新控制装置,其中,
所述移动体控制部具备存储部,所述存储部具有单个存储区域,所述单个存储区域储存所述移动体控制部所执行的程序,
所述改写控制部在开始所述改写的情况下,擦除所述单个存储区域内的所述程序被储存的区域,使所述移动体控制部开始向所述单个存储区域内写入所述新程序,
所述改写控制部在根据电源接通而启动的情况下,以保持有所述同意信息为条件,基于所述执行状态信息来判断是否正在改写所述新程序,在判断为正在改写所述新程序的情况下,使所述移动体控制部擦除正在写入到所述单个存储区域中的所述新程序,使所述移动体控制部重新开始写入所述新程序。
7.根据权利要求2所述的程序更新控制装置,其中,与所述电池电连接。
8.根据权利要求1或2所述的程序更新控制装置,其中,所述移动体是车辆。
9.一种移动体,其中,具备根据权利要求1至8中任一项所述的程序更新控制装置。
10.一种程序更新控制方法,其中,具备:
从外部装置获取新程序的步骤,所述新程序改写对移动体的至少一部分进行控制的移动体控制部所执行的程序;
在所述改写开始前向用户请求针对所述改写的执行的同意的步骤;
保持示出用户同意了所述改写的执行的同意信息的步骤;
进行将所述移动体控制部所执行的程序改写为从所述外部装置获取的所述新程序的控制的步骤;以及
在控制所述改写的改写控制部根据电源接通而启动的情况下、以保持有所述同意信息为条件、不向用户请求针对所述改写的执行的同意而执行所述改写的步骤。
11.一种计算机可读存储介质,存储有程序,其中,所述程序使计算机作为如下各部发挥作用:
改写控制部,进行将对移动体的至少一部分进行控制的移动体控制部所执行的程序改写为新程序的控制;以及
获取部,从外部装置获取所述新程序,
所述改写控制部在开始所述改写前,向用户请求针对所述改写的执行的同意,保持示出用户同意了所述改写的执行的同意信息,
所述改写控制部在根据电源接通而启动的情况下,以保持有所述同意信息为条件,不向用户请求针对所述改写的执行的同意而执行所述改写。
CN202210121838.0A 2021-03-19 2022-02-09 程序更新控制装置、程序更新控制方法和计算机可读存储介质 Pending CN115113896A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2021-046141 2021-03-19
JP2021046141A JP7248727B2 (ja) 2021-03-19 2021-03-19 プログラム更新制御装置、プログラム更新制御方法、及びプログラム

Publications (1)

Publication Number Publication Date
CN115113896A true CN115113896A (zh) 2022-09-27

Family

ID=83284736

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210121838.0A Pending CN115113896A (zh) 2021-03-19 2022-02-09 程序更新控制装置、程序更新控制方法和计算机可读存储介质

Country Status (2)

Country Link
JP (1) JP7248727B2 (zh)
CN (1) CN115113896A (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7405350B1 (ja) 2022-06-30 2023-12-26 株式会社メタシステム研究所 海況情報提供装置、海況情報提供システム、海況情報提供プログラム、及び海況情報提供方法
JP2024074481A (ja) * 2022-11-21 2024-05-31 株式会社オートネットワーク技術研究所 更新管理装置、更新管理システム及びコンピュータプログラム
JP2024074476A (ja) * 2022-11-21 2024-05-31 株式会社オートネットワーク技術研究所 更新管理装置、更新管理システム及びコンピュータプログラム

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101619623B1 (ko) 2014-10-20 2016-05-10 현대자동차주식회사 차량 제어기의 리프로그래밍 시스템 및 방법
WO2018079004A1 (ja) 2016-10-27 2018-05-03 住友電気工業株式会社 制御装置、プログラム更新方法、およびコンピュータプログラム
JP7279707B2 (ja) 2018-03-28 2023-05-23 住友電気工業株式会社 制御装置、制御方法、およびコンピュータプログラム
JP7400232B2 (ja) 2018-08-10 2023-12-19 株式会社デンソー 電子制御装置、リトライポイントの特定方法、リトライポイントの特定プログラム及び車両用電子制御システム

Also Published As

Publication number Publication date
US20220300271A1 (en) 2022-09-22
JP2022144936A (ja) 2022-10-03
JP7248727B2 (ja) 2023-03-29

Similar Documents

Publication Publication Date Title
CN115113896A (zh) 程序更新控制装置、程序更新控制方法和计算机可读存储介质
US11886859B2 (en) Control system, moving object, control method, and computer-readable storage medium
US20220222062A1 (en) Information processing apparatus, control system, system, information processing method, control method and computer-readable storage medium
US20220219566A1 (en) Control system, mobile object, information processing apparatus, control method, information processing method, and computer-readable storage medium
US12032698B2 (en) Program update control apparatus, program update control method and computer-readable storage medium
JP7320547B2 (ja) プログラム更新制御装置、プログラム更新制御方法、及びプログラム
JP7204726B2 (ja) 制御システム、移動体、サーバ、制御方法、更新制御方法、及びプログラム
US11960874B2 (en) Control system, mobile object, server, control method and computer-readable storage medium
US20220317992A1 (en) Update control apparatus, moving body, update control method, and computer-readable storage medium
US20220291919A1 (en) Communication apparatus, movable object, control system, server, communication control method
US20230297363A1 (en) Software update control apparatus, vehicle, computer-readable storage medium, and software update control method
US12026498B2 (en) Control system, mobile object, control method, and computer-readable storage medium
JP7320546B2 (ja) プログラム更新制御装置、プログラム更新制御方法、及びプログラム
US20220222059A1 (en) Control system, mobile object, control method, and computer-readable storage medium
US20220222057A1 (en) Control system, movable object, control method, and computer readable storage medium
JP2023135982A (ja) ソフトウェア更新制御装置、車両、プログラム、及び方法
JP2022109182A (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