IP Library › Granted Patent US 11,897,132
Granted Patent B1
US 11,897,132 · App. 17/989,408 · Granted Feb 13, 2024

Systems and methods for redundant network communication in a robot

Inventors: Fraser M. Smith (Salt Lake City, UT); Marc X. Olivier (Salt Lake City, UT)
Assignee: Sarcos Corp.
B25J9/1602G05B2219/31115G05B2219/39001
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,897,132
App. No.
17/989,408
Granted
Feb 13, 2024
Kind
B1
Abstract

A technology is described for redundant network communication in a robot. An example of the technology can include a main robotic controller, a local controller in network communication with the main robotic controller, and instructions that, when executed by the processor, transfer first and second data signals between the main robotic controller and the local controller via first and second network channels. The first data signal is sent over the first network channel, and the second data signal is sent over the second network channel. The instructions compare the first data signal with the second data signal to determine signal integrity of the data signals; determine degradation of the first data signal if the signal integrity is less than the signal integrity of the second data signal; and select the second data signal for processing if degradation of the first data signal is determined.

Claims (57)

1. A system for redundant network communication in a robot, comprising:

a main robotic controller in network communication with one or more robotic components;

a local controller in network communication with the main robotic controller and a controlled component of the one or more robotic components that is controlled by the local controller to perform a function of the robot; and

one or more processors and a memory in network communication with one or more of the main robotic controller and the local controller, the memory including instructions that, when executed by the processor, cause at least one of the local controller or the main robotic controller to:

transfer first and second data signals between the main robotic controller and the local controller via first and second network channels, wherein a command is encoded in the first and second data signals and the first data signal is sent over the first network channel, and the second data signal is sent over the second network channel;

compare the first data signal with the second data signal to determine signal integrity of the first and second data signals;

determine degradation of the first data signal if the signal integrity of the first data signal is less than the signal integrity of the second data signal; and

select the second data signal received over the second network channel for processing if degradation of the first data signal is determined.

2. The system of claim 1 , wherein the memory further includes instructions that, when executed by the processor, cause the local controller or the main robotic controller to:

process the second data signal to obtain the command encoded in the second data signal; and

cause the robotic component to perform an action based on the command obtained from the second data signal.

3. The system of claim 1 , wherein the instructions, when executed by the processor, that cause at least one of the local controller or the main robotic controller to determine degradation of the first data signal if the signal integrity of the first data signal is less than the signal integrity of the second data signal, comprise instructions to

determine whether a signal integrity of the first data signal is less than a signal integrity of the second data signal.

4. The system of claim 1 , wherein the instructions, when executed by the processor, further cause the local controller or the main robotic controller to:

compare a number of data packets contained in each of the first and second data signals; and

determine that a number of data packets contained in the first data signal is less than a number of data packets contained in the second data signal, or determine that a data packet was missed in a case when the main robotic controller or the local controller does not receive the data packet within a prescribed amount of time.

5. The system of claim 1 , wherein the memory further includes instructions that, when executed by the at least one processor, further cause the local controller or the main robotic controller to log signal integrity metrics for the first and second data signals to allow diagnosis of the degradation of the first data signal.

6. The system of claim 1 , wherein the memory further includes instructions that, when executed by the at least one processor, cause the local controller or the main robotic controller to generate a system notification to indicate a problem with the first network channel associated with the degradation of the first data signal.

7. The system of claim 1 , wherein the main robotic controller or the local controller send the first and second data signals in parallel over the first and second network channels.

8. The system of claim 1 , wherein the memory further includes instructions that, when executed by the at least one processor, cause the local controller or the main robotic controller to:

transfer a third data signal containing a command sent over a third network channel in parallel with sending of the first and second data signals,

compare the third data signal to the first and second data signals to determine signal integrity degradation of any of the first, second, or third data signals.

9. The system of claim 8 , wherein the first, second, and third network channels each comprise a cable communication channel, a power-line communication channel, or a wireless communication channel.

10. A computer implemented method for redundant network communication, comprising:

transferring a command between a main robotic controller and a local controller in network communication with the main robotic controller and a controlled component of a robotic component that is controlled by the local controller to perform a function of the robot, wherein a command is encoded in a first and second data signal at the main robotic controller or the local controller, and the first data signal is sent over a first network channel, and the second data signal is sent over a second network channel;

comparing the first data signal with the second data signal to determine signal integrity associated with the first and second network channels;

determining if the signal integrity of the first data signal is degraded as compared to the signal integrity the second data signal;

processing the second data signal received over the second network channel to obtain the command encoded in the second data signal; and

performing an action based on the command obtained from the second data signal.

11. The method in claim 10 , wherein comparing the first and second data signals further comprises comparing a number of data packets received in each of the first and second data signals.

12. The method in claim 10 , wherein comparing the first and second data signals further comprises comparing a signal to noise ratio of the first data signal to a signal to noise ratio of the second data signal.

13. The method in claim 10 , further comprising writing signal integrity metrics for the first and second data signals to a system log to allow diagnosis of the degradation of the first data signal.

14. The method in claim 10 , further comprising:

generating a system notification to indicate a problem with the first network channel associated with the degradation of the first data signal; and

displaying the system notification on a display device to alert a user of a problem with the first network channel associated with the degradation of the first data signal.

15. The method in claim 10 , wherein performing the action based on the command comprises executing instructions to actuate the controlled component of the robotic component.

16. The method in claim 10 , further comprising:

transferring between the main robotic controller and the local controller a third data signal containing the command sent over a third network channel in parallel with sending of the first and second data signals over the first and second network channels; and

comparing the third data signal to the first and second data signals to determine signal integrity degradation of any of the first, second, or third data signals,

wherein the first, second, and third network channels each comprise a cable communication channel, a power-line communication channel, or a wireless communication channel.

17. A non-transitory machine-readable storage medium including instructions embodied thereon, wherein the instructions, when executed by at least one processor, cause a redundant network communications system of a robot to:

transfer between a main robotic controller and a local controller associated with a controlled component of robotic component and in network communication with the main robotic controller, first and second data signals sent over primary and secondary network channels, respectively, wherein an original data signal is duplicated at the main robotic controller or local controller to generate the first data signal and the second data signal;

compare the first and second data signals to determine signal integrity of the first and second data signals, wherein the first data signal is compared to the second data signal;

determine whether the signal integrity of the first data signal is degraded as compared to the signal integrity of the second data signal; and

process the second data signal received over the secondary network channel.

18. The non-transitory machine-readable storage medium in claim 17 , wherein the second data signal is processed to obtain a command encoded in the second data signal and to cause the robotic component to perform an action based on the command obtained from the second data signal.

19. The non-transitory machine-readable storage medium in claim 18 , further comprising instructions, that when executed by the at least one processor, cause the redundant network communications system to:

determine whether a signal integrity of the first data signal is less than a signal integrity of the second data signal.

20. The non-transitory machine-readable storage medium in claim 18 , further comprising instructions, that when executed by the at least one processor, cause the redundant network communications system to:

compare a number of data packets contained in each of the first and second data signals; and

determine whether a number of data packets contained in the first data signal is less than a number of data packets contained in the second data signal, or determine whether a data packet was missed in a case when the data packet is not received within a prescribed amount of time.

21. The non-transitory machine-readable storage medium in claim 18 , further comprising instructions, that when executed by the at least one processor, cause the redundant network communications system to write signal integrity metrics for the first and second data signals to a system log to allow diagnosis of the degradation of the first data signal.

22. The non-transitory machine-readable storage medium in claim 18 , further comprising instructions, that when executed by the at least one processor, cause the redundant network communications system to generate a system notification to indicate a problem with the primary network channel associated with the degradation of the first data signal.

23. The non-transitory machine-readable storage medium in claim 18 , further comprising instructions, that when executed by the at least one processor, cause the redundant network communications system to:

transfer, between the main robotic controller and the local controller, a third data signal generated from the original data signal and sent over a tertiary network channel in parallel with sending of the first and second data signals over the primary and secondary network channels,

compare the third data signal to the first and second data signals to determine signal integrity degradation of any of the first, second, or third data signals,

wherein the primary, secondary, and tertiary network channels each comprise a cable communication channel, a power-line communication channel, or a wireless communication channel.

Assignments (2)
CHANGE OF NAME Recorded Jul 1, 2026
From: SARCOS CORP.
To: PALLADYNE CORP.
Reel/Frame 075900/0210 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 11, 2023
From: SMITH, FRASER M.; OLIVIER, MARC X.
To: SARCOS CORP.
Reel/Frame 063916/0396 →