Patents by Inventor Nicholas Julian Cox

Nicholas Julian Cox has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).

  • Publication number: 20230405811
    Abstract: Methods, systems, and apparatus, including computer programs encoded on computer storage media, for controlling robots. One of the methods includes receiving custom hardware configuration data for a robot, wherein the custom hardware configuration data specifies a mapping between parts and interfaces belonging to software modules that each correspond to a respective robotic hardware element of the robot, wherein each software module has one or more interfaces that represent capabilities of a robot, and wherein each part, in real-time control code defining actions of a real-time control layer, can reference interfaces of multiple software modules; allocating shared memory resources according to the mapping between parts and interfaces defined in the custom hardware configuration data; executing each software module in a separate process of a real-time control system; and executing the real-time control code that references the interfaces using parts as defined in the custom hardware configuration data.
    Type: Application
    Filed: June 12, 2023
    Publication date: December 21, 2023
    Inventors: Gregory J. Prisament, Michael Beardsworth, Asa Kaplan, Karsten Knese, Nicholas Julian Cox
  • Publication number: 20230182295
    Abstract: Methods, systems, and apparatus, including computer programs encoded on computer storage media, for using equipment-specific sample generators to automatically adapt a skill for execution in an operating environment. One of the methods includes obtaining a skill to be executed in an operating environment having one or more robots, wherein the skill defines a sequence of subtasks to be performed by the one or more robots in the working environment. A planning process is performed to generate a motion plan for the one or more robots, including obtaining, from an equipment-specific sample generator, a plurality of equipment-specific samples for a subtask of the skill, generating, from the plurality of equipment-specific samples, a plurality of candidate motion plans, and selecting, from the plurality of candidate motion plans, a motion plan for the one or more robots to perform the skill in the operating environment.
    Type: Application
    Filed: December 15, 2021
    Publication date: June 15, 2023
    Inventors: Michael Beardsworth, Keegan Go, Nicholas Julian Cox, Gregory Lawrence
  • Publication number: 20220395977
    Abstract: Methods, systems, and apparatus, including computer programs encoded on a computer storage medium that distributes skill bundles that can guide robot execution. One of the methods includes receiving data for a skill bundle from a skill developer. The data can include a definition of one or more preconditions for a robotic system to execute a skill; one or more effects to an operating environment after the robotic system has executed the skill; and a software module implementing the skill. The software module can define a state machine of subtasks. A skill bundle can be generated from the data received from the skill developer. Data identifying the generated skill bundle can be added to a skill registry. The skill bundle can be provided to the execution robot system for installation on the robot execution system.
    Type: Application
    Filed: June 15, 2021
    Publication date: December 15, 2022
    Inventors: Michael Beardsworth, Steve Wolter, Nicholas Julian Cox
  • Publication number: 20220347841
    Abstract: Methods, systems, and apparatus, including computer programs encoded on computer storage media, for controlling a robot to perform a custom real-time action that uses a callback function. One of the methods comprises receiving a definition of a custom real-time control function that specifies a custom callback function, an action, and a custom reaction that references the custom callback function; providing a command to initiate the action; repeatedly executing, by the control layer of the real-time robotics control framework, the custom real-time control function at each tick of a real-time robotics system driving one or more physical robots, including: obtaining current values of one or more state variables, evaluating the custom reaction specified by the custom real-time control function according to the current values of the one or more state variables, and whenever the one or more conditions of the custom reaction are satisfied, invoking the custom callback function.
    Type: Application
    Filed: April 30, 2021
    Publication date: November 3, 2022
    Inventors: Andre Gaschler, Gregory J. Prisament, Sean Alexander Cassero, Nicholas Julian Cox, Benjamin Bremer, Nils Berg, Michael Beardsworth
  • Publication number: 20220347844
    Abstract: Methods, systems, and apparatus, including computer programs encoded on computer storage media, for controlling a robot to perform a custom real-time action that uses streaming inputs. One of the methods comprises receiving a definition of a custom real-time streaming control function that defines a custom streaming action, wherein the custom streaming action specifies a goal state for a robot in an operating environment; providing a command to initiate the custom streaming action; and repeatedly providing updated goal states for the custom streaming action, wherein the control layer of the framework is configured to execute the custom streaming action including driving the robot toward a most recent goal state at each tick of a real-time robotics control cycle.
    Type: Application
    Filed: April 30, 2021
    Publication date: November 3, 2022
    Inventors: Andre Gaschler, Gregory J. Prisament, Sean Alexander Cassero, Nicholas Julian Cox, Benjamin Bremer, Nils Berg, Michael Beardsworth
  • Publication number: 20220347846
    Abstract: Methods, systems, and apparatus, including computer programs encoded on computer storage media, for controlling a robot to perform a custom real-time action. One of the methods comprises receiving, by a real-time robotics control framework, a definition of a custom real-time control function, wherein the definition specifies a plurality of actions and one or more custom reactions; repeatedly executing, by the real-time robotics control framework, the custom real-time control function at each tick of a real-time robotics system driving one or more physical robots, including: obtaining current values of one or more state variables, evaluating the one or more custom reactions specified by the custom real-time control function according to the current values of the one or more state variables, and whenever a custom reaction is satisfied, updating a current action in real time according to the custom reaction that is satisfied, and executing a next tick of the current action.
    Type: Application
    Filed: April 30, 2021
    Publication date: November 3, 2022
    Inventors: Andre Gaschler, Gregory J. Prisament, Sean Alexander Cassero, Nils Berg, Michael Beardsworth, Nicholas Julian Cox, Benjamin Bremer