IP Library Granted Patent US 10,639,797
Granted Patent B1
US 10,639,797 · App. 16/384,843 · Granted May 5, 2020

Selectively uploading operational data generated by robot based on physical communication link attribute

Inventor: Rohit Ramesh Saboo (Mountain View, CA)
Assignee: X DEVELOPMENT LLC
B25J9/1689G05D1/0088G08C17/02H04W4/30
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,639,797
App. No.
16/384,843
Granted
May 5, 2020
Kind
B1
Abstract

Methods, robots, systems, and computer-readable media are provided for selectively uploading operational data generated by a robot to a remote computing system. In various implementations, a robot may classify a plurality of operational data points generated by the robot with a plurality of operational data types. The robot may also identify one or more attributes of a physical communication link between the robot and a remote computing system. Based on the one or more attributes of the physical communication link, the robot may identify a plurality of strategies for uploading operational data from the robot to the remote computing system. Each strategy may govern how operational data points of at least one of the plurality of operational data types is uploaded. The robot may then selectively upload the plurality of classified operational data points to the remote computing system pursuant to the plurality of strategies.

Claims (44)

1. A method comprising:

operating a robot to move around an environment to perform one or more tasks;

classifying a plurality of operational data points generated by the robot moving around an environment with a plurality of operational data types;

monitoring information obtained from one or more wireless communication interfaces of the robot or remote computing system;

based on the monitoring, detecting that a wireless communication link between the robot and the remote computing system has become degraded;

causing the wireless communication link to be organized into a plurality of logical channels, wherein the logical channels are associated with at least two different operational data types of the plurality of operational data types;

assigning a priority to each logical channel of the plurality of logical channels based on the operational data type of the at least two different operational data types that is associated with the logical channel;

identifying, based on the detected degradation of the wireless communication link and one or more of the priorities assigned to one or more of the plurality of logical channels, a plurality of strategies for uploading operational data from the robot to the remote computing system, wherein the plurality of strategies determine how operational data points of the at least two operational data types are uploaded; and

selectively uploading the plurality of classified operational data points from the robot to the remote computing system via the logical channels and pursuant to the plurality of strategies.

2. The method of claim 1 , wherein the detecting comprises detecting that available bandwidth of the wireless communication channel has decreased below a threshold.

3. The method of claim 1 , wherein the wireless communication link is associated with a range of wireless frequencies, and the logical channels correspond to sub-ranges of frequencies of the range of wireless frequencies.

4. The method of claim 3 , wherein the assigning includes assigning a priority to each logical channel further based on a size of a sub-range of frequencies of the sub-ranges of frequencies.

5. The method of claim 1 , wherein the selectively uploading comprises uploading a statistic computed based on operational data points of a particular operational data point type pursuant to a strategy associated with the particular operational data point type.

6. The method of claim 1 , wherein the selectively uploading comprises uploading a latest operational data point of a set of operational data points of a particular operational data point type pursuant to a strategy associated with the particular operational data point type.

7. The method of claim 1 , wherein one of the plurality of operational data types comprises robot heartbeats.

8. The method of claim 1 , wherein one of the plurality of operational data types comprises robot location.

9. The method of claim 1 , wherein organizing the wireless communication link into the plurality of logical channels is performed dynamically based at least on the plurality of operational data points generated by the robot.

10. A system comprising one or more processors and memory storing instructions that, in response to execution of the instructions by the one or more processors, cause the one or more processors to:

operate a robot to move around an environment to perform one or more tasks;

classify a plurality of operational data points generated by the robot moving around an environment with a plurality of operational data types;

monitor information obtained from one or more wireless communication interfaces of the robot or remote computing system;

based on the information obtained from the one or more wireless communication interfaces, detect that a wireless communication link between the robot and the remote computing system has become degraded;

cause the wireless communication link to be organized into a plurality of logical channels, wherein the logical channels are associated with at least two different operational data types of the plurality of operational data types;

assign a priority to each logical channel of the plurality of logical channels based on the operational data type of the at least two different operational data types that is associated with the logical channel;

identify, based on the detected degradation of the wireless communication link and one or more of the priorities assigned to one or more of the plurality of logical channels, a plurality of strategies for uploading operational data from the robot to the remote computing system, wherein the plurality of strategies determine how operational data points of the at least two operational data types are uploaded; and

selectively upload the plurality of classified operational data points from the robot to the remote computing system via the logical channels and pursuant to the plurality of strategies.

11. The system of claim 10 , further comprising instructions to detect that available bandwidth of the wireless communication channel has decreased below a threshold.

12. The system of claim 10 , wherein the wireless communication link is associated with a range of wireless frequencies, and the logical channels correspond to sub-ranges of frequencies of the range of wireless frequencies.

13. The system of claim 12 further comprising instructions to assign a priority to each logical channel further based on a size of a sub-range of frequencies of the sub-ranges of frequencies.

14. The system of claim 10 , wherein the selectively upload comprises upload a statistic computed based on operational data points of a particular operational data point type pursuant to a strategy associated with the particular operational data point type.

15. The system of claim 10 , wherein the selectively upload comprises upload a latest operational data point of a set of operational data points of a particular operational data point type pursuant to a strategy associated with the particular operational data point type.

16. The system of claim 10 , wherein one of the plurality of operational data types comprises robot heartbeats.

17. The system of claim 10 , wherein one of the plurality of operational data types comprises robot location.

18. The system of claim 10 , wherein organization of the wireless communication link into the plurality of logical channels is performed dynamically based at least on the plurality of operational data points generated by the robot.

19. A non-transitory computer-readable medium comprising instructions that, in response to execution of the instructions by a processor, cause the processor to:

operate a robot to move around an environment to perform one or more tasks;

classify a plurality of operational data points generated by the robot moving around an environment with a plurality of operational data types;

monitor information obtained from one or more wireless communication interfaces of the robot or remote computing system;

based on the information obtained from the one or more wireless communication interfaces, detect that a wireless communication link between the robot and the remote computing system has become degraded;

cause the wireless communication link to be organized into a plurality of logical channels, wherein the logical channels are associated with at least two different operational data types of the plurality of operational data types;

assign a priority to each logical channel of the plurality of logical channels based on the operational data type of the at least two different operational data types that is associated with the logical channel;

identify, based on the detected degradation of the wireless communication link and one or more of the priorities assigned to one or more of the plurality of logical channels, a plurality of strategies for uploading operational data from the robot to the remote computing system, wherein the plurality of strategies determine how operational data points of the at least two operational data types are uploaded; and

selectively upload the plurality of classified operational data points from the robot to the remote computing system via the logical channels and pursuant to the plurality of strategies.

20. The non-transitory computer-readable medium of claim 19 , further comprising instructions to detect that available bandwidth of the wireless communication channel has decreased below a threshold.

Assignments (4)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 29, 2025
From: GOOGLE LLC
To: GDM HOLDING LLC
Reel/Frame 071109/0342 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 14, 2023
From: X DEVELOPMENT LLC
To: GOOGLE LLC
Reel/Frame 063992/0371 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 17, 2019
From: SABOO, ROHIT RAMESH
To: GOOGLE INC.
Reel/Frame 048914/0856 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 17, 2019
From: GOOGLE INC.
To: X DEVELOPMENT LLC
Reel/Frame 048937/0845 →