IP Library › Granted Patent US 11,157,004
Granted Patent B2
US 11,157,004 · App. 16/371,672 · Granted Oct 26, 2021

Real-time control system for a vehicle and a method of executing control of the vehicle via the real-time control system

Inventors: Anand Bhat (Pittsburgh, PA); Soheil Samii (Royal Oak, MI)
Assignee: GM Global Technology Operations LLC
G05D1/0088B60W10/04B60W10/18B60W10/30B60W30/188B60W50/00G06F3/065G06F3/0619G06F3/0683B60W2050/0006G05D2201/0213
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 11,157,004
App. No.
16/371,672
Granted
Oct 26, 2021
Kind
B2
Abstract

A real-time control system for a vehicle, and a method of executing control of the vehicle via the real-time control system includes at least one primary controller that is configured to control slave controllers. The primary controller is configured to queue a task requested by respective vehicle systems, and determine which of the slave controllers is available to execute the task. The primary controller is configured to assign the task to a selected one of the slave controllers to execute the task. The primary controller is configured to re-queue the assigned task if the selected one of the slave controllers does not completely execute the assigned task. The primary controller is configured to assign that re-queued task to another one of the slave controllers to execute the re-queued task. The respective vehicle systems perform the requested task when the selected one of the slave controllers completely executes the assigned task.

Claims (70)

1. A real-time control system for a vehicle, the real-time control system comprising:

at least one primary controller configured to execute instructions via a processor of the primary controller;

a plurality of slave controllers configured to execute instructions via a processor of the respective slave controllers, and the primary controller is in communication with the slave controllers, and the primary controller is configured to control the slave controllers;

a plurality of vehicle systems configured to operate in response to at least one task requested via the respective vehicle systems, and the vehicle systems are in communication with the primary controller;

wherein the primary controller is configured to execute the instructions to:

queue the task requested by the respective vehicle systems;

determine which of the slave controllers is available to execute the task;

assign the task to a selected one of the slave controllers to execute the task;

re-queue the assigned task if the selected one of the slave controllers does not completely execute the assigned task;

assign the re-queued task to another one of the slave controllers to execute the re-queued task;

wherein the respective vehicle systems operate when the selected one of the slave controllers completely executes the assigned task;

wherein the primary controller includes a holding queue program in communication with the vehicle systems; and

wherein the holding queue program is configured to queue the task requested until the primary controller assigns the task to the selected one of the slave controllers.

2. The real-time control system as set forth in claim 1 wherein the primary controller includes a monitoring program in communication with the slave controllers, and the monitoring program is configured to monitor each assigned task that is currently being executed by the selected one of the slave controllers, and the monitoring program communicates a fault notification to the primary controller when the task currently being executed by the selected one of the slave controllers is not completed by a predetermined event, and the primary controller re-queues the assigned task back into the holding queue program when the fault notification is received.

3. The real-time control system as set forth in claim 2 wherein the predetermined event that triggers the fault notification includes a predetermined amount of time, a power interruption, a hardware interruption and a software interruption.

4. The real-time control system as set forth in claim 2 wherein the selected one of the slave controllers is configured to communicate to the monitoring program that execution of the assigned task is complete, and the task is de-queued from the monitoring program.

5. The real-time control system as set forth in claim 2 wherein the vehicle systems include an adaptive cruise control, a display screen control, autonomous control system, a brake system and powertrain controls.

6. The real-time control system as set forth in claim 1 wherein the at least one primary controller is further defined as one primary controller, and the one primary controller is in communication with each of the slave controllers, and the one primary controller is configured to control each of the slave controllers.

7. The real-time control system as set forth in claim 6 wherein a back-up copy of the instructions of the primary controller is also stored in memory of one of the slave controllers.

8. The real-time control system as set forth in claim 1 wherein:

the at least one primary controller is further defined as a plurality of primary controllers and each of the primary controllers is in communication with each of the slave controllers;

one of the primary controllers is in communication with a first set of the vehicle systems, and another one of the primary controllers is in communication with a second set of the vehicle systems;

the one of the primary controllers is configured to execute the instructions to:

queue the task requested by the first set of the vehicle systems;

determine which of the slave controllers is available to execute the task from the first set of the vehicle systems;

assign the task to the selected one of the slave controllers to execute the task from the first set of the vehicle systems;

re-queue the assigned task if the selected one of the slave controllers does not completely execute the assigned task; and

assign the re-queued task to another one of the slave controllers to execute the re-queued task;

the another one of the primary controllers is configured to execute instructions to:

queue the task requested by the second set of the vehicle systems;

determine which of the slave controllers is available to execute the task from the second set of the vehicle systems;

assign the task to the selected one of the slave controllers to execute the task from the second set of the vehicle systems;

re-queue the assigned task if the selected one of the slave controllers does not completely execute the assigned task; and

assign the re-queued task to another one of the slave controllers to execute the re-queued task.

9. The real-time control system as set forth in claim 1 wherein the vehicle systems include an adaptive cruise control, a display screen control, autonomous control system, a brake system and powertrain controls.

10. The real-time control system as set forth in claim 1 wherein the slave controllers are arranged in a parallel electrical connection relative to each other.

11. A real-time control system for a vehicle, the real-time control system comprising:

at least one primary controller configured to execute instructions via a processor of the primary controller;

a plurality of slave controllers configured to execute instructions via a processor of the respective slave controllers, and the primary controller is in communication with the slave controllers, and the primary controller is configured to control the slave controllers;

a plurality of vehicle systems configured to operate in response to at least one task requested via the respective vehicle systems, and the vehicle systems are in communication with the primary controller;

wherein the primary controller is configured to execute the instructions to:

queue the task requested by the respective vehicle systems;

determine which of the slave controllers is available to execute the task;

assign the task to a selected one of the slave controllers to execute the task;

re-queue the assigned task if the selected one of the slave controllers does not completely execute the assigned task;

assign the re-queued task to another one of the slave controllers to execute the re-queued task;

wherein the respective vehicle systems operate when the selected one of the slave controllers completely executes the assigned task;

wherein the at least one primary controller is further defined as a plurality of primary controllers, and each of the primary controllers is in communication with each of the slave controllers; and

wherein one of the primary controllers is in communication with a first set of the vehicle systems, and another one of the primary controllers is in communication with a second set of the vehicle systems.

12. The real-time control system as set forth in claim 11 wherein:

a back-up copy of the instructions of the one of the primary controllers is also stored in memory of one of the slave controllers; and

a back-up copy of the instructions of the another one of the primary controllers is also stored in memory of another one of the slave controllers.

13. A method of executing control of a vehicle via a real-time control system, the method comprising:

communicating between at least one primary controller and a plurality of slave controllers, wherein the primary controller is configured to control the slave controllers, and wherein the primary controller and the slave controllers are each configured to execute instructions via a respective processor;

communicating between the primary controller and a plurality of vehicle systems, and the vehicle systems are configured to operate in response to at least one task requested via the respective vehicle systems;

queuing, via the primary controller, the task requested by the respective vehicle systems;

determining, via the primary controller, which of the slave controllers is available to execute the task;

assigning the task to a selected one of the slave controllers to execute the task;

re-queuing, via the primary controller, the assigned task if the selected one of the slave controllers does not completely execute the assigned task;

determining, via the primary controller, which of the slave controllers is available to execute the re-queued task;

assigning the re-queued task to another one of the slave controllers to execute that re-queued task;

operating the respective vehicle systems when the selected one of the slave controllers completely executes the assigned task; and

wherein queuing the task includes queuing the task requested in a holding queue program of the primary controller until the primary controller assigns the task to the selected one of the slave controllers.

14. The method as set forth in claim 13 wherein re-queuing the task includes re-queuing the task requested in the holding queue program of the primary controller until the primary controller assigns the re-queued task to the selected one of the slave controllers.

15. The method as set forth in claim 13 further comprising monitoring each assigned task that is currently being executed by the selected one of the slave controllers in a monitoring program of the primary controller and communicating a fault notification to the primary controller when the task currently being executed by the selected one of the slave controllers is not completed by a predetermined event.

16. The method as set forth in claim 15 wherein the predetermined event that triggers the fault notification includes a predetermined amount of time, a power interruption, a hardware interruption and a software interruption.

17. The method as set forth in claim 15 wherein re-queuing that same task includes re-queuing that same task back into the holding queue program when the fault notification is received.

18. The method as set forth in claim 15 further comprising de-queuing from the monitoring program the assigned task when the selected one of the slave controllers completes the assigned task.

19. The method as set forth in claim 13 wherein the vehicle systems include an adaptive cruise control, a display screen control, autonomous control system, a brake system and powertrain controls.

20. The method as set forth in claim 13 wherein the slave controllers are arranged in a parallel electrical connection relative to each other.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 9, 2019
From: BHAT, ANAND; SAMII, SOHEIL
To: GM GLOBAL TECHNOLOGY OPERATIONS LLC
Reel/Frame 048834/0126 →
Continuity (1)
Related Publication 20200310426A1 · Oct 1, 2020