IP Library Granted Patent US 11,230,016
Granted Patent B1
US 11,230,016 · App. 16/681,233 · Granted Jan 25, 2022

Multi-resolution localization system

Inventors: Jeff Linnell (Woodside, CA); Marek Michalowski (San Francisco, CA); Anthony Sean Jules (Oakland, CA)
Assignee: Intrinsic Innovation LLC
B25J9/1697B25J9/1664Y10S901/09
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,230,016
App. No.
16/681,233
Granted
Jan 25, 2022
Kind
B1
Abstract

In one aspect, a method is described. The method may include providing an end effector tool of a robotic device configured to perform a task on a work surface within a worksite coordinate frame. The method may further include providing first location data indicating a first location of the end effector tool with respect to the work surface, providing second location data indicating a second location of the end effector tool within the worksite coordinate frame, and providing third location data indicating a third location of the end effector tool within the worksite coordinate frame. The method may further include tracking the location of the end effector tool based on the first, second, and third location data, and, based on the tracked location of the tool, instructing the robotic device to manipulate the end effector tool to perform a task on the work surface.

Claims (37)

1. A computer-implemented method comprising:

receiving, by a robot controller and from a worker robot, location data that reflects a location that the worker robot estimates for an end effector tool that is mounted on the worker robot;

determining, based on the location data that reflects the location that the worker robot estimates for the end effector tool that is mounted on the worker robot, an unintended movement of the end effector tool with respect to a work surface;

receiving, by the robot controller and from an observer robot, location data that reflects a location that the observer robot estimates for the end effector tool that is mounted on the worker robot;

determining, based on the location data that reflects the location that the observer robot estimates for the end effector tool that is mounted on the worker robot, an unintended movement of the end effector tool with respect to a worksite coordinate frame; and

in response to determining the unintended movement of the end effector tool with respect to the work surface and determining the unintended movement of the end effector tool with respect to the worksite coordinate frame, transmitting, by the robot controller and to the worker robot, instructions for counteracting the unintended movement of the end effector tool with respect to the work surface and the unintended movement of the end effector tool with respect to the worksite coordinate frame.

2. The method of claim 1 , wherein the location data that is provided to the robot controller from the worker robot at a first rate.

3. The method of claim 2 , wherein the location data is provided to the robot controller from the observer robot at a second rate that is slower than the first rate.

4. The method of claim 1 , wherein the worker robot includes a sensor that generates location data at a higher rate than a sensor on the observer robot that generates location data.

5. The method of claim 4 , wherein the sensor on the observer robot has a higher spatial accuracy than the sensor on the worker robot.

6. The method of claim 1 , wherein the observer robot generates the location data using dead reckoning.

7. The method of claim 1 , wherein the observer robot generates the location data using optical flow.

8. The method of claim 1 , wherein the location that the observer robot estimates for the end effector tool is specified in relation to a worksite coordinate frame.

9. The method of claim 1 , wherein the location that the observer robot estimates for the end effector tool is specified in relation to a work surface.

10. The method of claim 1 , wherein the worker robot includes visual markers for use by the observer in generating the location data that reflects the location that the observer robot estimates for the end effector tool that is mounted on the worker robot.

11. A system comprising:

one or more computers; and

a non-transitory computer-readable medium coupled to the one or more computers having instructions stored thereon which, when executed by the one or more computers, cause the one or more computers to perform operations comprising:

receiving, by a robot controller and from a worker robot, location data that reflects a location that the worker robot estimates for an end effector tool that is mounted on the worker robot;

determining, based on the location data that reflects the location that the worker robot estimates for the end effector tool that is mounted on the worker robot, an unintended movement of the end effector tool with respect to a work surface;

receiving, by the robot controller and from an observer robot, location data that reflects a location that the observer robot estimates for the end effector tool that is mounted on the worker robot;

determining, based on the location data that reflects the location that the observer robot estimates for the end effector tool that is mounted on the worker robot, an unintended movement of the end effector tool with respect to a worksite coordinate frame; and

in response to determining the unintended movement of the end effector tool with respect to the work surface and determining the unintended movement of the end effector tool with respect to the worksite coordinate frame, transmitting, by the robot controller and to the worker robot, instructions for counteracting the unintended movement of the end effector tool with respect to the work surface and the unintended movement of the end effector tool with respect to the worksite coordinate frame.

12. The system of claim 11 , wherein the location data that is provided to the robot controller from the worker robot at a first rate.

13. The system of claim 12 , wherein the location data is provided to the robot controller from the observer robot at a second rate that is slower than the first rate.

14. The system of claim 11 , wherein the worker robot includes a sensor that generates location data at a higher rate than a sensor on the observer robot that generates location data.

15. The system of claim 14 , wherein the sensor on the observer robot has a higher spatial accuracy than the sensor on the worker robot.

16. The system of claim 11 , wherein the observer robot generates the location data using dead reckoning.

17. The system of claim 11 , wherein the observer robot generates the location data using optical flow.

18. The system of claim 11 , wherein the location that the observer robot estimates for the end effector tool is specified in relation to a worksite coordinate frame.

19. The system of claim 11 , wherein the location that the observer robot estimates for the end effector tool is specified in relation to a work surface.

20. A non-transitory computer storage medium encoded with a computer program, the computer program comprising instructions that when executed by one or more processors cause the one or more processors to perform operations comprising:

receiving, by a robot controller and from a worker robot, location data that reflects a location that the worker robot estimates for an end effector tool that is mounted on the worker robot;

determining, based on the location data that reflects the location that the worker robot estimates for the end effector tool that is mounted on the worker robot, an unintended movement of the end effector tool with respect to a work surface;

receiving, by the robot controller and from an observer robot, location data that reflects a location that the observer robot estimates for the end effector tool that is mounted on the worker robot;

determining, based on the location data that reflects the location that the observer robot estimates for the end effector tool that is mounted on the worker robot, an unintended movement of the end effector tool with respect to a worksite coordinate frame; and

in response to determining the unintended movement of the end effector tool with respect to the work surface and determining the unintended movement of the end effector tool with respect to the worksite coordinate frame, transmitting, by the robot controller and to the worker robot, instructions for counteracting the unintended movement of the end effector tool with respect to the work surface and the unintended movement of the end effector tool with respect to the worksite coordinate frame.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 5, 2021
From: X DEVELOPMENT LLC
To: INTRINSIC INNOVATION LLC
Reel/Frame 057650/0218 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 14, 2019
From: LINNELL, JEFF; MICHALOWSKI, MAREK; JULES, ANTHONY SEAN
To: GOOGLE INC.
Reel/Frame 051009/0664 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 14, 2019
From: GOOGLE INC.
To: X DEVELOPMENT LLC
Reel/Frame 051032/0550 →