IP Library Granted Patent US 10,800,427
Granted Patent B2
US 10,800,427 · App. 15/810,524 · Granted Oct 13, 2020

Systems and methods for a vehicle controller robust to time delays

Inventors: Joshua David Goldberg (San Francisco, CA); Benjamin Florian Corentin Butin (Mountain View, CA)
Assignee: UATC, LLC
B60W50/06B60W30/18B60W50/0097G05D1/0212B60W2050/0008G05D2201/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 10,800,427
App. No.
15/810,524
Granted
Oct 13, 2020
Kind
B2
Abstract

Systems and methods are directed to compensating for time delays. In one example, a system includes one or more processors and memory including instructions that, when executed by the one or more processors, cause the one or more processors to perform operations. The operations include obtaining first pose data indicative of a pose of a vehicle; obtaining first control data indicative of a first vehicle control command that has yet to affect control of the vehicle; determining, based at least partially on the first pose data and the first control data, predicted pose data indicative of an estimate of a pose of the vehicle that will result after the vehicle control command affects control of the vehicle; and generating, based at least partially on the predicted pose data, second control data indicative of a second vehicle control command to be applied subsequent to the first vehicle control command.

Claims (65)

1. A system comprising:

one or more processors; and

memory including instructions that, when executed by the one or more processors, cause the one or more processors to perform operations, the operations comprising:

obtaining first pose data indicative of a pose of a vehicle;

obtaining first control data indicative of a first vehicle control command that has yet to affect control of the vehicle;

determining, based at least partially on the first pose data and the first control data, predicted pose data indicative of an estimate of a pose of the vehicle that will result after the first vehicle control command affects control of the vehicle, wherein the predicted pose data is based at least in part on a lateral control delay and a longitudinal control delay; and

generating, based at least partially on the predicted pose data, second control data indicative of a second vehicle control command to be applied subsequent to the first vehicle control command, the second vehicle control command comprising a second lateral control command and a second longitudinal control command.

2. The system of claim 1 , wherein the determining of the predicted pose data comprises:

determining updates to one or more of vehicle heading, vehicle velocity, and vehicle position based at least in part on a motion model for an autonomous vehicle and the first control data indicative of the first vehicle control command that has yet to affect control of the vehicle; and

determining the predicted pose data by extrapolating the vehicle pose forward in time based on the updates to one or more of the vehicle heading, the vehicle velocity, and the vehicle position.

3. The system of claim 1 , wherein the first control data indicative of the first vehicle control command comprises data indicative of an expected time of execution, wherein the data indicative of the expected time of execution comprises a command time stamp incremented by an expected amount of delay.

4. The system of claim 3 , the operations further comprising:

obtaining, from a vehicle controller, the second control data indicative of the second vehicle control command to be applied subsequent to the first vehicle control command; and

storing the second control data indicative of the second vehicle control command with an associated expected time of execution for the command.

5. The system of claim 1 , wherein the determining of the predicted pose data and providing the predicted pose data to a vehicle controller comprises:

determining first predicted pose data based at least in part on the vehicle lateral control delay;

determining second predicted pose data based at least in part on the vehicle longitudinal control delay;

providing the first predicted pose data to the vehicle controller to provide for generating the second vehicle lateral control command; and

providing the second predicted pose data to the vehicle controller to provide for generating the second vehicle longitudinal control command.

6. The system of claim 1 , the operations further comprising:

determining command data for vehicle control commands being executed;

determining feedback data from a vehicle control system after execution of vehicle control commands;

estimating an amount of delay for execution of a command by the vehicle control system based at least in part on the command data and the feedback data; and

providing the estimated amount of delay for the determination of the predicted pose data.

7. The system of claim 1 , wherein the determining of the predicted pose data comprises compensating for steady state errors in one or more of a vehicle controller and a vehicle control system.

8. The system of claim 1 , wherein the predicted pose data compensates for one or more delays.

9. A computer-implemented method for providing delay compensation for a vehicle controller comprising:

obtaining, by a computing system comprising one or more computing devices, first pose data indicative of a pose of a vehicle;

obtaining, by the computing system, first control data indicative of a first vehicle control command that has yet to affect control of the vehicle;

determining, by the computing system based at least partially on the first pose data and the first control data, predicted pose data indicative of an estimate of a pose of the vehicle that will result after the first vehicle control command affects control of the vehicle, wherein the predicted pose data is based at least in part on a vehicle lateral control delay and a vehicle longitudinal control delay; and

generating, by the computing system based at least partially on the predicted pose data, second control data indicative of a second vehicle control command to be applied subsequent to the first vehicle control command, the second vehicle control command comprising a second lateral control command and a second longitudinal control command.

10. The computer-implemented method of claim 9 , wherein the determining of the predicted pose data further comprises:

determining, by the computing system, updates to one or more of vehicle heading, vehicle velocity, and vehicle position based at least in part on a motion model for an autonomous vehicle and the first control data indicative of the first vehicle control command that has yet to affect control of the vehicle; and

determining, by the computing system, the predicted pose data by extrapolating the vehicle pose forward in time based on the updates to one or more of the vehicle heading, the vehicle velocity, and the vehicle position.

11. The computer-implemented method of claim 9 , wherein the first control data indicative of the first vehicle control command comprises data indicative of an expected time of execution, wherein the data indicative of the expected time of execution comprises a command time stamp incremented by an expected amount of delay.

12. The computer-implemented method of claim 11 , further comprising:

obtaining, from the vehicle controller, the second control data indicative of the second vehicle control command to be applied subsequent to the first vehicle control command; and

storing, by the computing system, the second control data indicative of the second vehicle control command with an associated expected time of execution for the command.

13. The computer-implemented method of claim 9 , wherein the determining of the predicted pose data and providing the predicted pose data to the vehicle controller further comprises:

determining, by the computing system, first predicted pose data based at least in part on the vehicle lateral control delay;

determining, by the computing system, second predicted pose data based at least in part on the vehicle longitudinal control delay;

providing, by the computing system, the first predicted pose data to the vehicle controller to provide for generating the second vehicle lateral control command; and

providing, by the computing system, the second predicted pose data to the vehicle controller to provide for generating the second vehicle longitudinal control command.

14. The computer-implemented method of claim 9 , further comprising:

determining, by the computing system, command data for vehicle control commands being executed;

determining, by the computing system, feedback data from a vehicle control system after execution of the vehicle control commands;

estimating, by the computing system, an amount of delay for execution of a command by the vehicle control system based at least in part on the command data and the feedback data; and

providing, by the computing system, the estimated amount of delay for the determination of the predicted pose data.

15. The computer-implemented method of claim 9 , wherein the determining of the predicted pose data comprises compensating for steady state errors in one or more of the vehicle controller and a vehicle control system.

16. The computer-implemented method of claim 9 , wherein the predicted pose data compensates for one or more delays.

17. An autonomous vehicle comprising:

a vehicle computing system, the vehicle computing system comprising:

one or more processors; and

memory including instructions that, when executed by the one or more processors, cause the one or more processors to perform operations, the operations comprising:

obtaining first pose data indicative of a pose of the autonomous vehicle;

obtaining first control data indicative of a first vehicle control command that has yet to affect control of the vehicle;

determining, based at least partially on the first pose data and the first control data, predicted pose data indicative of an estimate of a pose of the vehicle that will result after the first vehicle control command affects control of the vehicle, wherein the predicted pose data is based at least in part on a lateral control delay and a longitudinal control delay; and

generating, based at least partially on the predicted pose data, second control data indicative of a second vehicle control command to be applied subsequent to the first vehicle control command, the second vehicle control command comprising a second lateral control command and a second longitudinal control command.

18. The autonomous vehicle of claim 17 , wherein the determining of the predicted pose data comprises:

determining updates to one or more of vehicle heading, vehicle velocity, and vehicle position based at least in part on a motion model for the autonomous vehicle and the first control data indicative of the first vehicle control command that has yet to affect control of the autonomous vehicle; and

determining the predicted pose data by extrapolating the vehicle pose forward in time based on the updates to one or more of the vehicle heading, the vehicle velocity, and the vehicle position.

19. The autonomous vehicle of claim 17 , wherein the first control data indicative of the first vehicle control command comprises data indicative of an expected time of execution, wherein the data indicative of the expected time of execution comprises a command time stamp incremented by an expected amount of delay.

20. The autonomous vehicle of claim 19 , the operations further comprising:

obtaining, from a vehicle controller, the second control data indicative of the second vehicle control command to be applied subsequent to the first vehicle control command; and

storing the second control data indicative of the second vehicle control command with an associated expected time of execution for the command.

Assignments (4)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 14, 2024
From: UATC, LLC
To: AURORA OPERATIONS, INC.
Reel/Frame 067733/0001 →
CORRECTIVE ASSIGNMENT TO CORRECT THE NATURE OF CONVEYANCE FROM CHANGE OF NAME TO ASSIGNMENT PREVIOUSLY RECORDED ON REEL 050353 FRAME 0884. ASSIGNOR(S) HEREBY CONFIRMS THE CORRECT CONVEYANCE SHOULD BE ASSIGNMENT. Recorded Nov 27, 2019
From: UBER TECHNOLOGIES, INC.
To: UATC, LLC
Reel/Frame 051145/0001 →
CHANGE OF NAME Recorded Sep 12, 2019
From: UBER TECHNOLOGIES, INC.
To: UATC, LLC
Reel/Frame 050353/0884 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 18, 2017
From: GOLDBERG, JOSHUA DAVID; BUTIN, BENJAMIN FLORIAN CORENTIN
To: UBER TECHNOLOGIES, INC
Reel/Frame 044422/0308 →
Continuity (2)
Provisional Application 62574247 · Oct 19, 2017
Related Publication 20190118829A1 · Apr 25, 2019
Cited By (1)
US 12,485,958