IP Library › Granted Patent US 10,795,661
Granted Patent B2
US 10,795,661 · App. 16/259,033 · Granted Oct 6, 2020

Vehicle controller, program updating method, and non-transitory storage medium that stores program for updating program

Inventor: Akira Hayashidera (Nisshin, JP)
Assignee: TOYOTA JIDOSHA KABUSHIKI KAISHA
G06F8/65B60R16/023H04L67/34H04W4/40
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,795,661
App. No.
16/259,033
Granted
Oct 6, 2020
Kind
B2
Abstract

A vehicle controller includes: an execution unit configured to execute a control program for controlling a vehicle; a storage unit having a first program storage area to store the control program and a second program storage area to store an update program that is an updated version of the control program and created based on update data acquired from a device located outside the vehicle through a network; and an update unit that stores the update program in the second program storage area based on the update data, regardless of whether the execution unit is executing the control program.

Claims (49)

1. A vehicle controller comprising:

a memory storing:

a first program storage area configured to store a control program for controlling a vehicle, and

a second program storage area configured to store an update program that is an updated version of the control program; and

a processor programmed to:

perform a first vehicle control by executing the control program for controlling the vehicle;

acquire update data from a device located outside the vehicle via a network, wherein the update data constitutes the update program when the processor fully downloads the update data from the device,

store the update program in the second program storage area, regardless of whether the execution unit is executing the control program,

obtain a first execution output that is a result of executing the control program, and

obtain a second execution output that is a result of executing the update program.

2. The vehicle controller according to claim 1 , wherein the processor is programmed to:

compare the first execution output of the control program and the second execution output of the update program to verify whether the second execution output of the update program corresponds to the first execution output of the control program, and

switch from the first vehicle control to a second vehicle control in which the update program is executed for controlling the vehicle when the second execution output of the update program is verified as corresponding to the first execution output of the control program.

3. The vehicle controller according to claim 1 ,

wherein the processor is programmed to:

verify whether a predetermined function has been realized by the update program,

switch from the first vehicle control to the second vehicle control when the predetermined function has been realized by the update program.

4. The vehicle controller according to claim 1 ,

wherein the processor is programmed to:

in response to switching from the first vehicle control to the second vehicle control, executing the second vehicle control in the vehicle.

5. The vehicle controller according to claim 1 , wherein the processor is programmed to:

when switching from the first vehicle control to the second vehicle control delete the control program from the first program storage area by moving the update program from the second program storage area to the first program storage area so as to overwrite the first program storage area.

6. The vehicle controller according to claim 1 , wherein

the processor is a multi-core processor having a plurality of processor cores, and

one or more processor cores in the plurality of processor cores is configured to execute one or more steps of the processor.

7. The vehicle controller according to claim 1 , wherein the first execution output and the second execution output include parameters of vehicle control for at least one of steering, acceleration or deceleration.

8. The vehicle controller according to claim 1 , wherein actuators of the vehicle are controlled based on the first execution output or the second execution output.

9. A method of updating a program in a vehicle controller including: (i) a processor, and (ii) a memory having a first program storage area configured to store a control program for controlling a vehicle and a second program storage area configured to store an update program that is an updated version of the control program; the method comprising:

performing a first vehicle control by executing the control program for controlling the vehicle,

acquiring update data from a device located outside the vehicle via a network, wherein the update data constitutes the update program when the processor fully downloads the update data from the device,

storing the update program in the second program storage area, regardless of whether the execution unit is executing the control program,

obtaining a first execution output that is a result of executing the control program, and

obtaining a second execution output that is a result of executing the update program.

10. The method according to claim 9 , further comprising:

comparing the first execution output of the control program and the second execution output of the update program to verify whether the second execution output of the update program corresponds to the first execution output of the control program, and

switching from the first vehicle control to a second vehicle control in which the update program is executed for controlling the vehicle when the second execution output of the update program is verified as corresponding to the first execution output of the control program.

11. The method according to claim 9 , wherein the first execution output and the second execution output include parameters of vehicle control for at least one of steering, acceleration or deceleration.

12. The method according to claim 9 , wherein actuators of the vehicle are controlled based on the first execution output or the second execution output.

13. A non-transitory storage medium that stores a program for updating a control program for controlling a vehicle in a vehicle controller including: (i) a processor, and (ii) a memory having a first program storage area to store the control program and a second program storage area to store an update program that is an updated version of the control program; the program causing the processor of the vehicle controller to perform steps comprising:

performing a first vehicle control by executing the control program for controlling the vehicle,

acquiring update data from a device located outside the vehicle via a network, wherein the update data constitutes the update program when the processor fully downloads the update data from the device,

storing the update program in the second program storage area, regardless of whether the execution unit is executing the control program,

obtaining a first execution output that is a result of executing the control program, and

obtaining a second execution output that is a result of executing the update program.

14. The non-transitory storage medium according to claim 13 , further comprising:

comparing the first execution output of the control program and the second execution output of the update program to verify whether the second execution output of the update program corresponds to the first execution output of the control program, and

switching from the first vehicle control to a second vehicle control in which the update program is executed for controlling the vehicle when the second execution output of the update program is verified as corresponding to the first execution output of the control program.

15. The non-transitory storage medium according to claim 13 , wherein the first execution output and the second execution output include parameters of vehicle control for at least one of steering, acceleration or deceleration.

16. The non-transitory storage medium according to claim 13 , wherein actuators of the vehicle are controlled based on the first execution output or the second execution output.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 28, 2019
From: HAYASHIDERA, AKIRA
To: TOYOTA JIDOSHA KABUSHIKI KAISHA
Reel/Frame 049354/0950 →
Priority Claims (1)
JP 2018-026151 · Feb 16, 2018 · national
Continuity (1)
Related Publication 20190258469A1 · Aug 22, 2019
Cited By (1)
US 12,450,050