EP-4466584-B1 - SYSTEMS AND METHODS FOR RECORDING ROBOT MISSIONS
Inventors
- YANKS, Joseph Hufford
- SEIFERT, Samuel Frank
- BOLLINI, Mario Attilio
- HEPLER, Leland John
Dates
- Publication Date
- 20260506
- Application Date
- 20221128
Claims (15)
- A method of operating a robot to generate a mission recording of a mission, the method comprising: generating, using at least one processor, a first mission recording associated with a first set of one or more operations; obtaining, using the at least one processor, from a user input device (780), an input; based on the input, determining, using the at least one processor, a second set of one or more operations to undo at least a portion of the first mission recording; instructing, using the at least one processor, movement of two or more legs (703, 704, 706, 708) of the robot to perform the second set of one or more operations to undo the at least a portion of the first mission recording; and generating, using the at least one processor, a second mission recording based on the first mission recording and instructing the movement of the two or more legs (703, 704, 706, 708) of the robot to perform the second set of one or more operations to undo the at least a portion of the first mission recording.
- The method of claim 1, further comprising: instructing the robot to perform a third set of one or more operations based on a user input and the movement of the two or more legs (703, 704, 706, 708) of the robot to perform the second set of one or more operations to undo the at least a portion of the first mission recording; and recording data associated with the third set of one or more operations to the second mission recording.
- The method of claim 1, wherein instructing the movement of the two or more legs (703, 704, 706, 708) of the robot to perform the second set of one or more operations to undo the at least a portion of the first mission recording comprises: instructing a movement of the robot from a first location associated with the first mission recording to a second location associated with the first mission recording.
- The method of claim 1, wherein instructing the movement of the two or more legs (703, 704, 706, 708) of the robot to perform the second set of one or more operations to undo the at least a portion of the first mission recording comprises: instructing a movement of the robot to cause the robot to return to a state of the robot associated with an operation of the first set of one or more operations.
- The method of claim 1, wherein the first mission recording comprises data describing a route, and wherein performance of the second set of one or more operations causes the robot to operate in a backwards direction along the route.
- The method of claim 1, wherein the first mission recording comprises data describing a route, and wherein performance of the second set of one or more operations causes the robot to turn around and operate in a forward direction along the route.
- The method of claim 6, wherein the data describing the route comprises data describing one or more waypoints.
- The method of claim 1, wherein the first mission recording indicates a movement of the robot from a first location to a second location, and wherein performance of the second set of one or more operations causes the robot to move from the second location to the first location.
- The method of claim 1, wherein the first mission recording indicates a movement of the robot from a first location to a second location, and wherein the second mission recording indicates a movement of the robot from the first location to a third location.
- The method of claim 1, wherein the first set of one or more operations comprises a first operation to move to a first location and a second operation to move from the first location to a second location, wherein the at least a portion of the first mission recording is associated with the second operation, wherein the second set of one or more operations comprises a third operation to move from the second location to the first location, and wherein the second mission recording is associated with the first operation and a third operation to move from the first location to a third location.
- The method of claim 1, wherein the first set of one or more operations and the second set of one or more operations each comprise one or more respective operations to cause the robot to move and perform a respective action.
- The method of claim 1, wherein the at least a portion of the first mission recording is omitted from the second mission recording based on instructing the movement of the two or more legs (703, 704, 706, 708) of the robot to perform the second set of one or more operations to undo the at least a portion of the first mission recording.
- The method of claim 1, further comprising: operating the robot to autonomously perform the mission according to the second mission recording by performing a third set of operations associated with the second mission recording.
- The method of claim 1, wherein the second mission recording is associated with at least one operation not associated with the first mission recording, and wherein the first mission recording is associated with at least one operation not associated with the second mission recording.
- A system comprising: at least one processor; and at least one non-transitory computer readable medium comprising instructions that, when executed by the at least one processor, cause the at least one processor to: perform the method of any one of the preceding claims.
Description
BACKGROUND A robot is generally a reprogrammable and multifunctional manipulator, often designed to move material, parts, tools, or specialized devices through variable programmed motions for performance of tasks. Robots may be manipulators that are physically anchored (e.g., industrial robotic arms), mobile robots that move throughout an environment (e.g., using legs, wheels, or traction-based mechanisms), or some combination of a manipulator and a mobile robot. Robots are utilized in a variety of industries including, for example, manufacturing, warehouse logistics, transportation, hazardous environments, exploration, and healthcare. Some robots are used to navigate environments to perform a variety of tasks or functions. These robots are often operated to perform a mission by navigating the robot through an environment. The mission is sometimes recorded so that the robot can again perform the mission at a later time. In some missions, a robot both navigates through and interacts with the environment. The interaction sometimes takes the form of gathering data using one or more sensors. US2004193321A describes a method for programming an industrial robot having a tool, to perform a process on an object while following a robot path defined by a number of waypoints. SUMMARY According to some aspects, a method is provided of operating a robot to generate a mission recording of a mission, the method comprising using at least one processor recording, to an initial mission recording, data associated with a first set of one or more operations of the mission, in response to a user request to perform an undo process determining a second set of one or more operations that will undo at least a portion of the initial mission recording, and operating the robot to perform the second set of one or more operations, and producing a corrected mission recording in response to operating the robot to perform the second set of one or more operations. In some implementations, the method further comprises recording data associated with a third set of one or more operations to the corrected mission recording according to user input. In some implementations, the method further comprises operating the robot to perform the third set of one or more operations recorded to the corrected mission recording. In some implementations, operating the robot to perform the second set of one or more operations comprises moving the robot from a current location of the initial mission recording to a prior location of the initial mission recording. In some implementations, operating the robot to perform the second set of one or more operations results in the robot returning to an earlier state of the robot produced while operating the robot to perform the first set of one or more operations. In some implementations, the second set of one or more operations include one or more movement operations. In some implementations, the initial mission recording comprises data describing a route, and the second set of one or more operations are configured to operate the robot in a backwards direction along the route. In some implementations, the initial mission recording comprises data describing a route, and the second set of one or more operations are configured to turn the robot around and operate the robot in a forward direction along the route. In some implementations, the data describing the route comprises data describing one or more waypoints. In some implementations, the initial mission recording comprises a user command to move the robot from a first location to a second location, and the second set of one or more operations are configured, at least in part, to move the robot from the second location to the first location. In some implementations, the method comprises receiving a plurality of user commands to operate the robot in the mission, recording the data associated with the first set of one or more operations to the initial mission recording based on the plurality of user commands, and operating the robot to perform the first set of one or more operations. In some implementations, the user request to perform the undo process comprises receiving a first user input indicating a start of the undo process, and receiving a second user input indicating an end of the undo process, and the robot is operated to perform the second set of one or more operations during a period between receiving the first user input and receiving the second user input. In some implementations, the first user input comprises depressing a button, and the second user input comprises releasing the button. In some implementations, the portion of the initial mission recording describes one or more actions to be performed by the robot during which the robot gathers data, and the second set of one or more operations comprises one or more operations that delete data gathered by the robot during recording of the initial mission recording. In some implementations, the method further