Method, apparatus, and device for controlling legged robot, legged robot, computer-readable storage medium, and computer program product
US-2024269846-A1 · Aug 15, 2024 · US
US9975246B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-9975246-B2 |
| Application number | US-201113994751-A |
| Country | US |
| Kind code | B2 |
| Filing date | Nov 22, 2011 |
| Priority date | Dec 17, 2010 |
| Publication date | May 22, 2018 |
| Grant date | May 22, 2018 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
A humanoid robot is provided with a manager for its physical and virtual resources, a method of use and a method for programming said manager. Said resources ( 140, 1410, 1420 ) are requested so as to execute behaviors. The resources and the behaviors are organized into hierarchical subsets, optionally defined in object trees. Conflicts of use of the resources by the behaviors are resolved locally, the behavior reserving resources being able to be programmed so as to offer options to the user of locking the resources by the reserving behavior, of release in favor of the first other requesting behavior, of partial execution of the behavior in progress or of pausing. A software toolkit makes it possible to program the Resource manager of the invention in a graphical manner in the development environment which allows the programming of the behaviors.
Opening claim text (preview).
The invention claimed is: 1. A humanoid robot configured to execute a plurality of behaviors under the control of an onboard management module comprising: a sub-module for managing a plurality of resources which can be assigned to the execution of said behaviors, wherein said plurality of behaviors and said plurality of resources are each organized into hierarchical subsets, and said sub-module for managing the resources is configured to reserve one or more resource in at least one subset of resources for the execution of at least one behavior in at least one subset of behaviors, said reservation being inherited by said subset of behaviors and being applied to said subset of resources, wherein said sub-module for managing the plurality of resources is programmed so as, when a subset of resources has at most partial availability, to carry out a reservation of said resources for a virtual behavior defined as a function of said at most partial availability, and wherein said sub-module for managing the plurality of resources is programmed so as to release said reservation as a function of an evolution of the state of said at most partial availability. 2. The humanoid robot of claim 1 , wherein said sub-module for managing the plurality of resources is programmed to respond, when a first behavior is being executed, to a resource request by a second behavior with at least one of the following actions: refusing to release said resource to said second behavior, immediately releasing said resource to said second behavior, executing at least one additional action followed by and subsequently releasing said resource to said second behavior, and pausing the first behavior being executed and subsequently releasing said resource to said second behavior. 3. The humanoid robot of claim 2 , wherein said sub-module for managing the plurality of resources is programmed so that, when the action of refusing to release said resource required by said second behavior is executed, said second behavior executes a second request to release said resource according to a predefined frequency until expiry of a predefined expiry period. 4. The humanoid robot of claim 1 , wherein said sub-module for managing the plurality of resources is programmed so that, when at least two behaviors execute a request to make one and the same resource available, the first of the at least two behaviors has priority in the reservation of said same resource when the latter is released. 5. The humanoid robot of claim 1 , wherein said sub-module for managing the plurality of resources is programmed to group at least two resources, when at least one behavior executes a request to make said at least two resources available, into a new resource treated as a single resource, said grouping being arranged in a same order for all the behaviors executing identical resources requests. 6. The humanoid robot of claim 1 , wherein said sub-module for managing the plurality of resources is programmed so that, when a parent behavior reserves at least one resource without using it, said at least one resource can be used by a child behavior of said parent behavior. 7. The humanoid robot of claim 6 , wherein said sub-module for managing the plurality of resources is programmed so that, when a first child behavior uses a resource reserved by said parent behavior, a second child behavior of the same parent must, so as to be able to use said resource, perform a request to make said resource available with the first child behavior. 8. The humanoid robot of claim 6 , wherein said sub-module for managing the plurality of resources is programmed so that, when a parent behavior releases a resource of which it has previously reserved, said resource must be released by any child behavior of said parent. 9. The humanoid robot of claim 1 , wherein the plurality of resources comprises at least one state variable, said at least one state variable having to be in a predefined state so as to be reserved, said reservation being necessary for the execution of at least one behavior. 10. The humanoid robot of claim 1 , wherein the plurality of resources comprises at least one accumulative resource that includes one or more of a CPU and a network, and wherein use of at least a fraction of said at least one accumulative resource is assigned based on the behaviors programmed to use said at least one accumulative resource. 11. The humanoid robot of claim 1 , wherein the plurality of resources comprises at least one essential resource and one non-essential resource, any behavior having to call upon the at least one essential resource being unable to execute if said essential resource is not available and being able to execute if it must call upon said at least one non-essential resource, even if the latter is not available. 12. A method for managing the resources of a humanoid robot able to execute a plurality of behaviors under the control of an onboard management module, said method comprising a step of reservation of a plurality of resources which can be assigned to the execution of said behaviors, wherein said plurality of behaviors and said plurality of resources are each organized into hierarchical subsets, and said reservation step assigns at least one resource in at least one subset of resources to the execution of at least one behavior in at least one subset of behaviors, said reservation being inherited by said subset of behaviors to be applied to said subset of resources, and, wherein when a subset of resources has at most partial availability, said method further comprises carrying out a reservation of said resources for a virtual behavior defined as a function of said at most partial availability, and releasing said reservation of said resources for the virtual behavior as a function of an evolution of the state of said at most partial availability. 13. A non-transitory computer program product comprising program code instructions stored on a humanoid robot to execute a method for managing the resources of said humanoid robot able to execute a plurality of behaviors under the control of an onboard management subroutine, said subroutine comprising a module configured to execute a function for a reservation of a plurality of resources which can be assigned to the execution of said behaviors, wherein said plurality of behaviors and said plurality of resources are each organized into hierarchical subsets and said reservation function assigns at least one resource belonging to at least one subset of resources to the execution of at least one behavior in at least one subset of behaviors, said reservation being inherited by said subset of behaviors and being applied to said subset of resources, and wherein said subroutine is further configured, when a subset of resources has at most partial availability, to execute a function to carry out a reservation of said resources for a virtual behavior defined as a function of said at most partial availability, and to release said reservation of said resources for the virtual behavior as a function of an evolution of the state of said at most partial availability. 14. The computer program of claim 13 , wherein said subsets of behaviors and of resources are defined as classes of objects. 15. A method for developing a module for managing the resources of a humanoid robot able to execute a plurality of behaviors under the control of an onboard management subroutine, said subroutine being configured to execute a function for reserving a plurality of resources which can be assigned to the execution of said behaviors, wherein said plurality of behaviors and said plurality of resources
Mobile robot · CPC title
with alternately or sequentially lifted supporting base and legs; with alternately or sequentially lifted feet or skid (B62D57/024 takes precedence) · CPC title
based on physical entities controlled by simulated intelligence so as to replicate intelligent life forms, e.g. based on robots replicating pets or humans in their appearance or behaviour · CPC title
characterised by simulation, either to verify existing program or to create and verify new program, CAD/CAM oriented, graphic oriented programming systems · CPC title
Program controls (total factory control, i.e. centrally controlling a plurality of machines, G05B19/418) · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.