Search

EP-4736399-A1 - EDGE-BASED END DEVICE CONTROL USING ASYNCHRONOUS ADAPTIVE MOTION PRIMITIVES

EP4736399A1EP 4736399 A1EP4736399 A1EP 4736399A1EP-4736399-A1

Abstract

A component of an edge server, including: processor circuitry; and a non-transitory computer-readable storage medium including instructions that, when executed by the processor circuitry, cause the processor circuitry to: distribute, to a client device, tokens that enable its end device to execute respective asynchronous adaptive motion primitives (A 2 MPs) of a task graph of a task, wherein an A 2 MP is a motion primitive of encoded motion factoring in motion updates from the end device; receive A 2 MP task execution status messages during execution of the A 2 MPs; and dynamically update the distribution of the token or the task graph based on the A 2 MP task execution status messages to modify a trajectory of the end device.

Inventors

  • GONZALEZ AGUIRRE, DAVID
  • DE LA GUARDIA GONZALEZ, Raphael
  • FELIP LEON, Javier
  • PEREZ-RAMIREZ, JAVIER
  • ZAMORA ESQUIVEL, Julio

Assignees

  • INTEL Corporation

Dates

Publication Date
20260506
Application Date
20231219

Claims (20)

  1. Claims 1. A component of an edge server, comprising: processor circuitry; and a non-transitory computer-readable storage medium including instructions that, when executed by the processor circuitry, cause the processor circuitry to: distribute, to a client device, tokens that enable its end device to execute respective asynchronous adaptive motion primitives (A 2 MPs) of a task graph of a task, wherein an A 2 MP is a motion primitive of encoded motion factoring in motion updates from the end device; receive A 2 MP task execution status messages during execution of the A 2 MPs; and dynamically update the token distribution or the task graph based on the A 2 MP task execution status messages to modify a trajectory of the end device.
  2. 2. The component of claim 1, wherein the instructions that further cause the processor circuitry to: distribute, to a plurality of client devices, tokens that enable their end devices to execute A 2 MPs of respective task graphs defining respective tasks; and temporally coordinate the execution of the A 2 MPs by the end devices.
  3. 3. The component of any of claims 1-2, wherein the instructions that further cause the processor circuitry to: temporally coordinate the execution of the A 2 MPs by inserting waypoints in each end device trajectory to be reached at a same time.
  4. 4. The component of any of claims 1-3, wherein the instructions that further cause the processor circuitry to: receive the A 2 MP task execution status messages at a rate based on the temporal coordination of the execution of the A 2 MPs.
  5. 5. The component of any of claims 1-4, wherein the instructions that further cause the processor circuitry to: dynamically update the distribution of the token or the task graph based on a monotonically changing canonical progress variable that changes independently of the modification of the trajectory of the end device.
  6. 6. The component of any of claims 1-5, wherein the instructions that further cause the processor circuitry to: receive the A 2 MP task execution status messages at a rate based on a condition of a communication channel between the edge server and the client device.
  7. 7. The component of any of claims 1-6, wherein the condition of the communication channel is based on communication channel throughput, capacity, or latency.
  8. 8. The component of any of claims 1-7, wherein the communication channel between the edge server and the client device is a wireless communication channel, and a communication channel between the client device and the end device is a wired communication channel having a lower latency than the wireless communication channel.
  9. 9. The component of any of claims 1-8, wherein the instructions that further cause the processor circuitry to: receive the A 2 MP task execution status messages at a rate corresponding with a location along the trajectory in a canonical variable domain.
  10. 10. The component of any of claims 1-9, wherein the instructions that further cause the processor circuitry to: receive the A 2 MP task execution status messages at a rate based on task variability with respect to the trajectory in task space.
  11. 11. The component of any of claims 1-10, wherein the A 2 MP task execution status messages include A 2 MP deltas in parameter, joint, or cartesian space.
  12. 12. The component of any of claims 1-11, wherein the instructions that further cause the processor circuitry to: define the task graph; and distribute the task graph to the client device when the task is assigned or changed.
  13. 13. The component of any of claims 1-12, wherein the instructions that further cause the processor circuitry to distribute the tokens by: identifying an initial set of A 2 MPs corresponding to the task to be executed and their corresponding A 2 MP parameters; and based on the A 2 MP parameters and a condition of a communication channel between the edge server and the client device, select which of the A 2 MPs of the initial set are distributable.
  14. 14. A component of a client device, comprising: processor circuitry; and a non-transitory computer-readable storage medium including instructions that, when executed by the processor circuitry, cause the processor circuitry to: receive, from an edge server, tokens that enable an end device of the client device to execute respective asynchronous adaptive motion primitives (A 2 MPs) of a task graph of a task, wherein an A 2 MP is a motion primitive of encoded motion factoring in motion updates from the end device; send, to the edge server, A 2 MP task execution status messages during execution of the A 2 MPs; and modify a trajectory of the end device based on the task graph or received tokens that are dynamically updated by the edge server based on the A 2 MP task execution status messages.
  15. 15. The component of claim 14, wherein the instructions that further cause the processor circuitry to: send, to the edge server, the A 2 MP task execution status messages at a rate based on a condition of a communication channel between the edge server and the client device.
  16. 16. The component of any of claims 14-15, wherein the condition of the communication channel is based on communication channel throughput, capacity, or latency.
  17. 17. The component of claims 14-16, wherein the communication channel between the edge server and the client device is a wireless communication channel, and a communication channel between the client device and the end device is a wired communication channel having a lower latency than the wireless communication channel.
  18. 18. The component of claims 14-17, wherein the instructions that further cause the processor circuitry to: send the A 2 MP task execution status messages at a rate corresponding with a location along the trajectory in a canonical variable domain.
  19. 19. The component of claims 14-18, wherein the instructions that further cause the processor circuitry to: receive the A 2 MP task execution status messages at a rate based on task variability with respect to the trajectory in task space.
  20. 20. The component of claims 14-19, wherein the instructions that further cause the processor circuitry to: receive dynamically updated tokens or task graphs based on a monotonically changing canonical progress variable that changes independently of the modification of the trajectory of the end device.

Description

EDGE-BASED END DEVICE CONTROL USING ASYNCHRONOUS ADAPTIVE MOTION PRIMITIVES Cross Reference to Related Application [0001] This Application claims priority to United States Provisional Patent Application No. 18/343376 filed on 28, June 2023. Technical Field [0002] Aspects described herein generally relate to edge-based end device control, particularly edge-based end device control using asynchronous adaptive motion primitives. Background [0003] In large-scale deployments of robots, an orchestration approach should effectively handle the simultaneous aggregation and coordination of robot workloads. This approach should consider the expected limitations of communication channels when distributing low- level robot control. Collaborative robots, commonly known as cobots, typically operate at rates below 250 Hz, while industrial robots face even greater challenges with a maximum feasible rate of 1 kHz. [0004] The tiered partitioning and aggregation strategy described herein enables lower- and higher-level control, incorporating asynchronous and non-deterministic coordination mechanisms. Moreover, the control of robot motion and trajectory steering is regulated dynamically to ensure the reliable management of communication channel variability, including factors such as time-varying throughput capacity and latency. Brief Description of the Figures [0005] FIG. 1 illustrates a schematic diagram of a system in accordance with aspects of the disclosure. [0006] FIG. 2 illustrates end devices of the system of FIG. 1 in a factory environment in accordance with aspects of the disclosure. SUBSTITUTE SHEET (RULE 26) [0007] FIG. 3A illustrates a graph of basis functions in a canonical variable domain in accordance with aspects of the disclosure. [0008] FIG. 3B illustrates a graph of dynamic movement primitives (DMPs) examples reproducing two trajectories in accordance with aspects of the disclosure. [0009] FIG. 4 illustrates a graph of exponential decay in a canonical variable domain in accordance with aspects of the disclosure. [0010] FIG. 5 illustrates an example of an A2MP task execution status traffic profile in a pick- and-place task process in accordance with aspects of the disclosure. [0011] FIG. 6 illustrates an example graph of a canonical variable following different nonlinear dynamics in accordance with aspects of the disclosure. [0012] FIG. 7 illustrates a timeline of status packet transmission time from an end device based on DMP parameter, cartesian, and joint space rules in accordance with aspects of the disclosure. [0013] FIG. 8 illustrates a flow diagram of a method of distributing tokens in accordance with aspects of the disclosure. Detailed Description [0014] This disclosure addresses the challenges associated with controlling high-frequency, low-level motions of robots and coordinating them at a higher level, considering potential limitations in communication channel reliability. The disclosed aspects include elements such as Asynchronous Adaptive Motion Primitives (A2MPs) organized into task graphs for hierarchical partitioning based on latency requirements, and a hybrid formulation combining stochastic and discrete events to achieve control, flexibility, scalability, and seamless integration with a lightweight computational footprint. SUBSTITUTE SHEET (RULE 26) [0015] I. Overview [0016] FIG. 1 illustrates a schematic diagram of system 100 in accordance with aspects of the disclosure. FIG. 2 illustrates a plurality of end devices 200 belonging to the system of FIG. 1 in a factory environment in accordance with aspects of the disclosure. [0017] The system 100 comprises an edge server 110, a wireless channel 120 with a nonmanaged structure 130, client devices 140, wired communication channels 150, end devices 160, and task graphs 170. System 100 involves edge-based simultaneous control of end devices at a low level, coupled with high-level task orchestration through asynchronous adaptive motion primitives (A2MPs) to achieve workload aggregation in network-aware scalable deployments. This approach is applicable to networks with wired and/or wireless communication channels. The non-deterministic adaptation for communication channels compensates for dynamic variations with ad-hoc devices. [0018] The edge server 110 coordinates and generates motion plans in the form of A2MPs using the three-dimensional sensors on the end devices 160. [0019] The edge server 110 is equipped with processor circuitry 112 and a storage medium 114. The processor circuitry includes central application controller circuitry 1122 and wireless controller circuitry 1124. The wireless controller circuitry 1124 facilitates the transmission and reception of tokens and monitors the state of the wireless communication channel 120. [0020] The client devices 140 encompass various examples such as machine control units (MCUs), personal computers (PCs), field-programmable gate arrays (FPGAs), programmable logic controllers (PLCs), and similar d