Perception and fitting for a stair tracker
A method for perception and fitting for a stair tracker includes receiving sensor data for a robot adjacent to a staircase. For each stair of the staircase, the method includes detecting, at a first time step, an edge of a respective stair of the staircase based on the sensor data. The method also includes determining whether the detected edge is a most likely step edge candidate by comparing the detected edge from the first time step to an alternative detected edge at a second time step, the second time step occurring after the first time step. When the detected edge is the most likely step edge candidate, the method includes defining, by the data processing hardware, a height of the respective stair based on sensor data height about the detected edge. The method also includes generating a staircase model including stairs with respective edges at the respective defined heights.
1 . A four-legged robot, the four-legged robot comprising:
four legs;
memory storing computer-executable instructions; and
a processor in communication with the memory, wherein the processor is configured to execute the computer-executable instructions, wherein execution of the computer-executable instructions causes the processor to:
receive data associated with a stair located within an environment of the four-legged robot;
identify that the stair is located within the environment based on the data associated with the stair, wherein the data associated with the stair indicates one or more identifications of the stair by the four-legged robot using image data or identification of an entry into a stair mode from a non-stair mode associated with traversal of the environment based on a speed of the four-legged robot;
determine a modified speed of the four-legged robot at which to traverse a set of stairs including the stair in response to the one or more identifications of the stair by the four-legged robot using the image data or the identification of the entry into the stair mode from the non-stair mode; and
subsequent to determining the modified speed, instruct the four-legged robot to navigate to a footstep location in a non-stair portion of the environment and traverse, at the modified speed, the set of stairs from the footstep location in the non-stair portion of the environment.
2 . The four-legged robot of claim 1 , wherein the processor and the computer-executable instructions are configured to modify the speed of the four-legged robot by adjusting a speed limit of the four-legged robot.
3 . The four-legged robot of claim 1 , wherein the data associated with the stair comprises sensor data from one or more sensors of the four-legged robot, the sensor data corresponding to the environment.
4 . The four-legged robot of claim 1 , wherein the processor and the computer-executable instructions are configured to receive the data associated with the stair from a user computing device, wherein the data associated with the stair indicates the identification of the entry into the stair mode.
5 . The four-legged robot of claim 1 , wherein the processor and the computer-executable instructions are configured to modify the speed of the four-legged robot by adjusting the speed from a first speed to the modified speed, wherein the four-legged robot is configured to utilize the modified speed for traversal of the set of stairs and the first speed for traversal of the non-stair portion of the environment.
6 . The four-legged robot of claim 1 , wherein the processor and the computer-executable instructions are configured to instruct the four-legged robot to traverse the set of stairs by controlling the four-legged robot to descend the set of stairs such that a back portion of the four-legged robot precedes a front portion of the four-legged robot down the set of stairs, wherein the back portion is associated with fewer sensors as compared to the front portion.
7 . The four-legged robot of claim 6 , wherein the four legs are associated with one or more knee joints configured to extend the four legs from a closed position to an open position where segments of the four legs form openings facing away from the back portion and toward the front portion.
8 . The four-legged robot of claim 1 , wherein the processor and the computer-executable instructions are configured to modify the speed by switching from a first speed of the four-legged robot to the modified speed.
9 . The four-legged robot of claim 8 , wherein the four-legged robot is configured to traverse the non-stair portion of the environment according to the first speed.
10 . The four-legged robot of claim 1 , wherein the modified speed is based on a slope associated with the stair.
11 . A legged robot, the legged robot comprising:
two or more legs;
one or more sensors; and
a control system, the control system comprising data processing hardware and memory hardware in communication with the data processing hardware, the memory hardware storing instructions, wherein execution of the instructions by the data processing hardware causes the data processing hardware to:
receive image data from the one or more sensors, the image data corresponding to an environment with a stair, wherein the legged robot traverses the environment based on a speed of the legged robot;
identify the stair based on the image data;
determine a modified speed of the legged robot at which to traverse a set of stairs including the stair in response to identifying the stair based on the image data; and
subsequent to determining the modified speed, instruct the legged robot to navigate to a footstep location in a non-stair portion of the environment and traverse, at the modified speed, the set of stairs from the footstep location in the non-stair portion of the environment.
12 . The legged robot of claim 11 , wherein the execution of the instructions by the data processing hardware causes the data processing hardware to enter a stair mode based on identifying the stair.
13 . The legged robot of claim 11 , wherein the execution of the instructions by the data processing hardware causes the data processing hardware to:
receive a command to activate a stair mode of the legged robot; and
enter the stair mode based on the command, wherein identifying the stair is further based on entering the stair mode.
14 . The legged robot of claim 11 , wherein the execution of the instructions by the data processing hardware causes the data processing hardware:
detect an edge of the stair based on the image data; and
define a height of the stair based on the edge of the stair, wherein instructing the legged robot to traverse the set of stairs is further based on the height of the stair.
15 . The legged robot of claim 11 , wherein the execution of the instructions by the data processing hardware causes the data processing hardware:
determine a rise of the stair; and
determine a run of the stair, wherein the modified speed is based on the rise of the stair and the run of the stair.
16 . A method comprising:
receiving, at data processing hardware, data identifying an entry into a stair mode of a four-legged robot from a non-stair mode of the four-legged robot, wherein the four-legged robot traverses an environment of the four-legged robot by moving four legs of the four-legged robot at a first speed lower than or equal to a speed limit of the four-legged robot based on the non-stair mode;
instructing, by the data processing hardware, the four-legged robot to operate according to the stair mode, wherein instructing the four-legged robot to operate according to the stair mode comprises determining, by the data processing hardware, an adjusted speed limit of the four-legged robot in response to the entry into the stair mode, and wherein a speed of movement of the four legs is limited using different speed limits based on operation according to the non-stair mode and operation according to the stair mode; and
subsequent to determining the adjusted speed limit, instructing, by the data processing hardware, the four-legged robot to traverse a set of stairs at a second speed lower than or equal to the adjusted speed limit.
17 . The method of claim 16 , further comprising:
determining a stride length of the four-legged robot based on a run of the set of stairs, wherein determining the adjusted speed limit is based on the stride length.
18 . The method of claim 16 , further comprising:
determining a cadence of the four-legged robot based on a run of the set of stairs, wherein determining the adjusted speed limit is based on the cadence.
19 . The method of claim 16 , wherein instructing the four-legged robot to operate according to the stair mode comprises adjusting, by the data processing hardware, a controller used by the four-legged robot from a first controller to a second controller based on the entry into the stair mode, wherein instructing the four-legged robot to traverse the set of stairs at a second speed lower than or equal to the adjusted speed limit comprises instructing the four-legged robot to traverse the set of stairs at a second speed lower than or equal to the adjusted speed limit using the second controller.
20 . The method of claim 16 , wherein receiving data identifying the entry into the stair mode comprises receiving the data identifying the entry into the stair mode from a remote controller of the four-legged robot.