Foothold position control system and method for biped robot
11698636 · 2023-07-11
Assignee
Inventors
- Xuechao Chen (Beijing, CN)
- Zhangguo Yu (Beijing, CN)
- Qiang Huang (Beijing, CN)
- Zhifa Gao (Beijing, CN)
- Runming Zhang (Beijing, CN)
- Zhenyuan Fu (Beijing, CN)
- Junyao Gao (Beijing, CN)
Cpc classification
B62D57/032
PERFORMING OPERATIONS; TRANSPORTING
G05D1/027
PHYSICS
G05D1/0088
PHYSICS
International classification
G05D1/00
PHYSICS
B62D57/032
PERFORMING OPERATIONS; TRANSPORTING
Abstract
A foothold position control system and method for a biped robot are provided. 1) A feasible collision-free path is planned by using a path planning algorithm; 2) an available foothold area of a swing foot is determined according to step-length constraints, movement capabilities, foot sizes, and center offsets of a biped robot; and 3) fuzzy processing is performed to determine a specific foothold position of the biped robot. Selection of suitable foothold positions on both sides of a path when a biped robot executes specific walking actions after finishing path planning is realized. The foothold position control system and method has the advantages of being simple and easy to implement, having low computational load and high speed, being capable of exerting extreme movement capabilities of different biped robots, enabling more flexible movement of the biped robots, and so on.
Claims
1. A control method of a foothold position control system for a biped robot, wherein the foothold position control system comprises a laser radar or vision sensor, a gyroscope, a six-component force sensor, and an industrial computer, wherein a fuzzy controller in the industrial computer separately uses x.sub.sd, x.sub.en, y.sub.sd, y.sub.en, θ.sub.sd, and θ.sub.pt as inputs and performs fuzzy processing to obtain a specific foothold position of a swing foot in an available foothold area, wherein x.sub.sd, y.sub.sd is a real-time position of a support foot of a biped robot obtained by the six-component force sensor, x.sub.en, y.sub.en is a position of an obstacle in a robot body coordinate system obtained by the laser radar or vision sensor, θ.sub.sd is an initial yaw angle of the biped robot obtained by the gyroscope, and θ.sub.pt is an angle between a straight line formed by a current path node and an associated path node in a next step and an x axis of a world coordinate system; wherein the control method comprising: planning a passing path; determining the available foothold area of the swing foot on the passing path according to step-length constraints, movement capabilities, foot sizes, and center offsets of the biped robot; and performing fuzzy processing to determine a specific foothold position of the biped robot; wherein the fuzzy processing comprises fuzzification, fuzzy rule reasoning, and defuzzification; wherein a process of the fuzzy processing on x.sub.en and x.sub.sd is: inputting x.sub.pt−x.sub.pt−1 and x.sub.en, and outputting Δ.sup.x.sub.next; (1) fuzzification fuzzifying x.sub.pt−x.sub.pt−1 as backward, small step forward, medium step forward, and big step forward, with corresponding ranges being respectively
2. The control method according to claim 1, wherein the specific foothold position of the biped robot is (x.sub.next, y.sub.next, θ.sub.next), wherein x.sub.next=x.sub.sd+Δx.sub.next, y.sub.next=y.sub.sd+Δy.sub.next, and θ.sub.next=θ.sub.sd+Δθ.sub.next.
3. The control method according to claim 1, wherein the
4. The control method according to claim 2, wherein the
5. A control method of a foothold position control system for a biped robot, wherein the foothold position control system comprises a laser radar or vision sensor, a gyroscope, a six-component force sensor, and an industrial computer, wherein a fuzzy controller in the industrial computer separately uses x.sub.sd, x.sub.en, y.sub.sd, y.sub.en, θ.sub.sd, and θ.sub.pt as inputs and performs fuzzy processing to obtain a specific foothold position of a swing foot in an available foothold area, wherein x.sub.sd, y.sub.sd is a real-time position of a support foot of a biped robot obtained by the six-component force sensor, x.sub.en, y.sub.en is a position of an obstacle in a robot body coordinate system obtained by the laser radar or vision sensor, θ.sub.sd is an initial yaw angle of the biped robot obtained by the gyroscope, and θ.sub.pt is an angle between a straight line formed by a current path node and an associated path node in a next step and an x axis of a world coordinate system; wherein the control method comprising: planning a passing path; determining the available foothold area of the swing foot on the passing path according to step-length constraints, movement capabilities, foot sizes, and center offsets of the biped robot; and performing fuzzy processing to determine a specific foothold position of the biped robot; wherein the fuzzy processing comprises fuzzification, fuzzy rule reasoning, and defuzzification; wherein a process of the fuzzy processing on y.sub.en and y.sub.sd is: inputting y.sub.pt−y.sub.pt−1 and y.sub.en, and outputting Δy.sub.next; (1) fuzzification fuzzifying y.sub.pt−y.sub.pt−1 as inward, small swing outward, medium swing outward, and big swing outward, with corresponding ranges being respectively
6. The control method according to claim 5, wherein the specific foothold position of the biped robot is (x.sub.next, y.sub.next, θ.sub.next), wherein x.sub.next=x.sub.sd+Δx.sub.next, y.sub.next=y.sub.sd+Δy.sub.next, and θ.sub.next=θ.sub.sd+Δθ.sub.next.
7. The control method according to claim 5, wherein the
8. The control method according to claim 6, wherein the
9. A control method of a foothold position control system for a biped robot, wherein the foothold position control system comprises a laser radar or vision sensor, a gyroscope, a six-component force sensor, and an industrial computer, wherein a fuzzy controller in the industrial computer separately uses x.sub.sd, x.sub.en, y.sub.sd, y.sub.en, θ.sub.sd, and θ.sub.pt as inputs and performs fuzzy processing to obtain a specific foothold position of a swing foot in an available foothold area, wherein x.sub.sd, y.sub.sd is a real-time position of a support foot of a biped robot obtained by the six-component force sensor, x.sub.en, y.sub.en is a position of an obstacle in a robot body coordinate system obtained by the laser radar or vision sensor, θ.sub.sd is an initial yaw angle of the biped robot obtained by the gyroscope, and θ.sub.pt is an angle between a straight line formed by a current path node and an associated path node in a next step and an x axis of a world coordinate system; wherein the control method comprising: planning a passing path; determining the available foothold area of the swing foot on the passing path according to step-length constraints, movement capabilities, foot sizes, and center offsets of the biped robot; and performing fuzzy processing to determine a specific foothold position of the biped robot; wherein the fuzzy processing comprises fuzzification, fuzzy rule reasoning, and defuzzification; wherein a process of the fuzzy processing on θ.sub.sd and θ.sub.pt is: inputting θ.sub.sd and θ.sub.pt, and outputting Δθ.sub.next; (1) fuzzification fuzzifying θ.sub.sd as inward yaw, small-amplitude outward yaw, medium-amplitude outward yaw, and large-amplitude outward yaw, with corresponding ranges being respectively
10. The control method according to claim 9, wherein the specific foothold position of the biped robot is (x.sub.next, y.sub.next, θ.sub.next), wherein x.sub.next=x.sub.sd+Δx.sub.next, y.sub.next=y.sub.sd+Δy.sub.next, and θ.sub.next=θ.sub.sd+Δθ.sub.next.
11. The control method according to claim 9, wherein the
12. The control method according to claim 10, wherein the
Description
BRIEF DESCRIPTION OF THE DRAWINGS
(1)
(2)
(3)
(4)
(5)
(6)
DETAILED DESCRIPTION OF THE EMBODIMENTS
(7) The present disclosure is further illustrated below with reference to the accompanying drawings and specific embodiments, but the protection scope of the present disclosure is not limited thereto.
(8) As shown in
(9) As shown in
(10) Step (1): Path Planning
(11) The laser radar or vision sensor 1 is mounted on the biped robot to obtain an environmental map, grid processing is performed on the environmental map, a start point (x.sub.start, y.sub.start) and a task goal (x.sub.goal, y.sub.goal) are set in the grid map, and an optimal collision-free path (namely, the path 5 in
(12) Step (2): Determining of Foothold Range
(13) An available foothold area of the swing foot is determined according to step-length constraints, movement capabilities, foot sizes, and center offsets of a specific biped robot.
(14) When the advancing direction of the biped robot is the x-axis direction, x.sub.max=x.sub.sd+D.sub.max, x.sub.min=x.sub.sd−D.sub.min, y.sub.max=y.sub.sd+L.sub.max, y.sub.min=y.sub.sd+L.sub.min;
(15) when the advancing direction of the biped robot is along the y axis, y.sub.max=y.sub.sd+D.sub.max, y.sub.min=y.sub.sd−D.sub.min, x.sub.max=x.sub.stand+L.sub.max, x.sub.min=x.sub.sd+L.sub.min;
(16) when the angle between the advancing direction of the biped robot and the x axis is θ,
(17)
(18) Thus it can be determined that the available foothold area of the swing foot of the biped robot is [x.sub.min x.sub.max]∪[y.sub.min y.sub.max]∪[θ.sub.min θ.sub.max], as shown in
(19) Step (3): Determining of Specific Foothold Position
(20) Any (x, y, θ) combination in the available foothold area can represent a possible foothold position of the actual swing foot.
(21) According to the position (x.sub.sd, y.sub.sd, θ.sub.sd) of the support foot, the position (x.sub.pt, y.sub.pt, θ.sub.pt) of the path node closest to the position of the support foot, and the position (x.sub.en, y.sub.en) of the obstacle in the environment, x, y, and θ are separately subjected to fuzzification processing in their respective ranges, subjected to fuzzy rule reasoning, and then subjected to defuzzification to finally obtain the specific foothold position (x.sub.next, y.sub.next, θ.sub.next) of the swing foot in the available foothold range.
(22) x.sub.sd, x.sub.en, y.sub.sd, y.sub.en, θ.sub.sd, and θ.sub.pt are separately used as inputs of fuzzy control, and the current support foot of the biped robot is the swing foot in the previous step; thus the value of the yaw angle θ.sub.sd of the current support foot of the biped robot is the value of θ.sub.next−1 of the swing foot in the previous step.
(23) As shown in
(24) {circle around (1)} The position of the path node closest to the position of the support foot is obtained through x.sub.sd and y.sub.sd:
(25)
(26) A difference x.sub.pt−x.sub.pt−1 between x.sub.pt calculated in this step and x.sub.pt−1 in the last step is used as an input, and a step length of the next step is predicted through a step length of the last step; meanwhile, x.sub.en is used as another input, and the step length of the next step is predicted through the distance from the obstacle; Δx.sub.next is output according to fuzzy rules and reasoning.
(27) {circle around (2)} Fuzzification processing: the range of x.sub.pt−x.sub.pt−1 is determined approximately as the range [−D.sub.min, D.sub.max] of one step length, and the range is fuzzified and divided into four stages: backward, small step forward, medium step forward, and big step forward, with corresponding ranges being respectively
(28)
a value range of x.sub.en is approximately represented as
(29)
and is fuzzified as very near, near, medium, far, and very far, with corresponding ranges being respectively
(30)
the output Δx.sub.next is fuzzified as backward, short, medium, and long, with corresponding ranges being respectively
(31)
(32) All the inputs use a triangle method as a membership function, and have respective membership values being μ.sub.x.
(33) {circle around (3)} Fuzzy rules and reasoning:
(34) IF x.sub.ptx.sub.pt−1=back THEN x.sub.next=backward;
(35) IF x.sub.pt−x.sub.pt−1=small step forward AND x.sub.en=very near, THEN x.sub.next=short;
(36) IF x.sub.pt−x.sub.pt−1=small step forward AND x.sub.en=near, THEN x.sub.next=short;
(37) IF x.sub.pt−x.sub.pt−1=small step forward AND x.sub.en=medium, THEN x.sub.next=medium;
(38) IF x.sub.pt−x.sub.pt−1=small step forward AND x.sub.en=far, THEN x.sub.next=long;
(39) IF x.sub.pt−x.sub.pt−1=small step forward AND x.sub.en=very far, THEN x.sub.next=long;
(40) IF x.sub.pt−x.sub.pt−1=medium step forward AND x.sub.en=very near, THEN x.sub.next=short;
(41) IF x.sub.pt−x.sub.pt−1=medium step forward AND x.sub.en=near, THEN x.sub.next=short;
(42) IF x.sub.pt−x.sub.pt−1=medium step forward AND x.sub.en=medium, THEN x.sub.next=medium;
(43) IF x.sub.pt−x.sub.pt−1=medium step forward AND x.sub.en=far, THEN x.sub.next=long;
(44) IF x.sub.pt−x.sub.pt−1=medium step forward AND x.sub.en=very far, THEN x.sub.next=long;
(45) IF x.sub.pt−x.sub.pt−1=big step forward AND x.sub.en=very near, THEN x.sub.next=short;
(46) IF x.sub.pt−x.sub.pt−1=big step forward AND x.sub.en=near, THEN x.sub.next=short;
(47) IF x.sub.pt−x.sub.pt−1=big step forward AND x.sub.en=medium, THEN x.sub.next=medium;
(48) IF x.sub.pt−x.sub.pt−1=big step forward AND x.sub.en=far, THEN x.sub.next=medium;
(49) IF x.sub.pt−x.sub.pt−1=big step forward AND x.sub.en=very far, THEN x.sub.next=long.
(50) {circle around (4)} Defuzzification
(51) Defuzzification is performed using a centroid method:
(52)
(53) The process of fuzzy processing on y.sub.en and y.sub.sd is as follows:
(54) {circle around (1)} The position (x.sub.pt, y.sub.pt) of the path node closest to the position of the support foot is obtained from equation (1).
(55) A difference y.sub.pt−y.sub.pt−1 between y.sub.pt calculated in this step and y.sub.pt−1 in the last step is used as an input, and a step length of the next step is predicted through a step length of the last step; meanwhile, y.sub.en is used as another input, and the step length of the next step is predicted through the distance from the obstacle; y.sub.next is output according to fuzzy rules and reasoning.
(56) {circle around (2)} Fuzzification processing: the range of y.sub.pt−y.sub.pt−1 is determined approximately as the range [L.sub.min, L.sub.max] of one step swing, and the range is fuzzified and divided into four stages: inward, small swing outward, medium swing outward, and big swing outward, with corresponding ranges being respectively
(57)
a value range of y.sub.en is approximately represented as [L.sub.max, 4L.sub.max], and fuzzified as very near, near, medium, far, and very far, with corresponding ranges being respectively
(58)
the output Δy.sub.next is fuzzified as inward, small, medium, and large, with corresponding ranges being respectively
(59)
(60) All the inputs use a triangle method as a membership function, and have respective membership values being μ.sub.y.
(61) {circle around (3)} Fuzzy rules and reasoning
(62) IF y.sub.pt−y.sub.pt−1=inward THEN Δy.sub.next=inward;
(63) IF y.sub.pt−y.sub.pt−1=small swing outward AND y.sub.en=very near, THEN Δy.sub.next=small;
(64) IF y.sub.pt−y.sub.pt−1=small swing outward AND y.sub.en=near, THEN Δy.sub.next=small;
(65) IF y.sub.pt−y.sub.pt−1=small swing outward AND y.sub.en=medium, THEN Δy.sub.next=medium;
(66) IF y.sub.pt−y.sub.pt−1=small swing outward AND y.sub.en=far, THEN Δy.sub.next=large;
(67) IF y.sub.pt−y.sub.pt−1=small swing outward AND y.sub.en=very far, THEN Δy.sub.next=large;
(68) IF y.sub.pt−y.sub.pt−1=medium swing outward AND y.sub.en=very near, THEN Δy.sub.next=small;
(69) IF y.sub.pt−y.sub.pt−1=medium swing outward AND y.sub.en=near, THEN Δy.sub.next=small;
(70) IF y.sub.pt−y.sub.pt−1=medium swing outward AND y.sub.en=medium, THEN Δy.sub.next=medium;
(71) IF y.sub.pt−y.sub.pt−1=medium swing outward AND y.sub.en=far, THEN Δy.sub.next=large;
(72) IF y.sub.pt−y.sub.pt−1=medium swing outward AND y.sub.en=very far, THEN Δy.sub.next=large;
(73) IF y.sub.pt−y.sub.pt−1=big swing outward AND y.sub.en=very near, THEN Δy.sub.next=small;
(74) IF y.sub.pt−y.sub.pt−1=big swing outward AND y.sub.en=near, THEN Δy.sub.next=small;
(75) IF y.sub.pt−y.sub.pt−1=big swing outward AND y.sub.en=medium, THEN Δy.sub.next=medium;
(76) IF y.sub.pt−y.sub.pt−1=big swing outward AND y.sub.en=far, THEN Δy.sub.next=large;
(77) IF y.sub.pt−y.sub.pt−1=big swing outward AND y.sub.en=very far, THEN Δy.sub.next=large.
(78) {circle around (4)} Defuzzification
(79) Defuzzification is performed using a centroid method:
(80)
(81) The process of fuzzy processing on θ.sub.sd and θ.sub.pt is as follows:
(82) {circle around (1)} The current support foot of the biped robot is the swing foot in the previous step, and thus the value of the yaw angle θ.sub.sd of the support foot of the biped robot is the value θ.sub.next−1 of the swing foot in the previous step, and is used as an input, and a yaw angle in the next step is predicted through a yaw angle in the previous step; θ.sub.pt is obtained from equations (4) and (5) and is used as another input, and the yaw angle in the next step is predicted through the yaw angle in the previous step.
(83)
(84) where x.sub.pt+1, y.sub.pt+1 is a path node closest to a foothold position after a current swing foot lands.
(85) {circle around (2)} Fuzzification processing
(86) A variation range of θ.sub.sd is [−θ.sub.min, θ.sub.max], and the range is fuzzified and divided into four stages: inward yaw, small-amplitude outward yaw, medium-amplitude outward yaw, and large-amplitude outward yaw, with corresponding ranges being respectively
(87)
the range of θ.sub.pt is approximately represented as
(88)
and is fuzzified as negative big orientation, negative small orientation, medium, positive small orientation, and positive big orientation, with corresponding ranges being respectively
(89)
the output Δθ.sub.next is fuzzified as inward yaw, small-amplitude outward yaw, medium-amplitude outward yaw, and large-amplitude outward yaw, with corresponding ranges being respectively
(90)
(91) All the inputs use a triangle method as a membership function, and have respective membership values being μ.sub.θ.
(92) {circle around (3)} Fuzzy rules and reasoning
(93) When the support foot is a left foot:
(94) IF θ.sub.sd=inward yaw AND θ.sub.pt=negative big orientation, THEN Δθ.sub.next=large-amplitude outward yaw;
(95) IF θ.sub.sd=inward yaw AND θ.sub.pt=negative small orientation, THEN Δθ.sub.next=medium-amplitude outward yaw;
(96) IF θ.sub.sd=inward yaw AND θ.sub.pt=medium, THEN Δθ.sub.next=small-amplitude outward yaw;
(97) IF θ.sub.sd=inward yaw AND θ.sub.pt=positive small orientation, THEN Δθ.sub.next=inward yaw;
(98) IF θ.sub.sd=inward yaw AND θ.sub.pt=positive big orientation, THEN Δθ.sub.next=inward yaw;
(99) IF θ.sub.sd=small-amplitude outward yaw AND θ.sub.pt=negative big orientation, THEN Δθ.sub.next=large-amplitude outward yaw;
(100) IF θ.sub.sd=small-amplitude outward yaw AND θ.sub.pt=negative small orientation, THEN Δθ.sub.next=medium-amplitude outward yaw;
(101) IF θ.sub.sd=small-amplitude outward yaw AND θ.sub.pt=medium, THEN Δθ.sub.next=small-amplitude outward yaw;
(102) IF θ.sub.sd=small-amplitude outward yaw AND θ.sub.pt=positive small orientation, THEN Δθ.sub.next=inward yaw;
(103) IF θ.sub.sd=small-amplitude outward yaw AND θ.sub.pt=positive big orientation, THEN Δθ.sub.next=inward yaw;
(104) IF θ.sub.sd=medium-amplitude outward yaw AND θ.sub.pt=negative big orientation, THEN Δθ.sub.next=large-amplitude outward yaw;
(105) IF θ.sub.sd=medium-amplitude outward yaw AND θ.sub.pt=negative small orientation, THEN Δθ.sub.next=medium-amplitude outward yaw;
(106) IF θ.sub.sd=medium-amplitude outward yaw AND θ.sub.pt=medium, THEN Δθ.sub.next=inward yaw;
(107) IF θ.sub.sd=medium-amplitude outward yaw AND θ.sub.pt=positive small orientation, THEN Δθ.sub.next=inward yaw;
(108) IF θ.sub.sd=medium-amplitude outward yaw AND θ.sub.pt=positive big orientation, THEN Δθ.sub.next=inward yaw;
(109) IF θ.sub.sd=large-amplitude outward yaw AND θ.sub.pt=negative big orientation, THEN Δθ.sub.next=medium-amplitude outward yaw;
(110) IF θ.sub.sd=large-amplitude outward yaw AND θ.sub.pt=negative small orientation, THEN Δθ.sub.next=small-amplitude outward yaw;
(111) IF θ.sub.sd=large-amplitude outward yaw AND θ.sub.pt=medium, THEN Δθ.sub.next=inward yaw;
(112) IF θ.sub.sd=large-amplitude outward yaw AND θ.sub.pt=positive small orientation, THEN Δθ.sub.next=inward yaw;
(113) IF θ.sub.sd=large-amplitude outward yaw AND θ.sub.pt=positive big orientation, THEN Δθ.sub.next=inward yaw;
(114) When the support foot is a right foot:
(115) IF θ.sub.sd=inward yaw AND θ.sub.pt=negative big orientation, THEN Δθ.sub.next=inward yaw;
(116) IF θ.sub.sd=inward yaw AND θ.sub.pt=negative small orientation, THEN Δθ.sub.next=inward yaw;
(117) IF θ.sub.sd=inward yaw AND θ.sub.pt=medium, THEN Δθ.sub.next=small-amplitude outward yaw;
(118) IF θ.sub.sd=inward yaw AND θ.sub.pt=positive small orientation, THEN Δθ.sub.next=medium-amplitude outward yaw;
(119) IF θ.sub.sd=inward yaw AND θ.sub.pt=positive big orientation, THEN Δθ.sub.next=large-amplitude outward yaw;
(120) IF θ.sub.sd=small-amplitude outward yaw AND θ.sub.pt=negative big orientation, THEN Δθ.sub.next=inward yaw;
(121) IF θ.sub.sd=small-amplitude outward yaw AND θ.sub.pt=negative small orientation, THEN Δθ.sub.next=inward yaw;
(122) IF θ.sub.sd=small-amplitude outward yaw AND θ.sub.pt=medium, THEN Δθ.sub.next=small-amplitude outward yaw;
(123) IF θ.sub.sd=small-amplitude outward yaw AND θ.sub.pt=positive small orientation, THEN Δθ.sub.next=medium-amplitude outward yaw;
(124) IF θ.sub.sd=small-amplitude outward yaw AND θ.sub.pt=positive big orientation, THEN Δθ.sub.next=large-amplitude outward yaw;
(125) IF θ.sub.sd=medium-amplitude outward yaw AND θ.sub.pt=negative big orientation, THEN Δθ.sub.next=inward yaw;
(126) IF θ.sub.sd=medium-amplitude outward yaw AND θ.sub.pt=negative small orientation, THEN Δθ.sub.next=inward yaw;
(127) IF θ.sub.sd=medium-amplitude outward yaw AND θ.sub.pt=medium, THEN Δθ.sub.next=inward yaw;
(128) IF θ.sub.sd=medium-amplitude outward yaw AND θ.sub.pt=positive small orientation, THEN Δθ.sub.next=small-amplitude outward yaw;
(129) IF θ.sub.sd=medium-amplitude outward yaw AND θ.sub.pt=positive big orientation, THEN Δθ.sub.next=medium-amplitude inward yaw;
(130) IF θ.sub.sd=large-amplitude outward yaw AND θ.sub.pt=negative big orientation, THEN Δθ.sub.next=inward yaw;
(131) IF θ.sub.sd=large-amplitude outward yaw AND θ.sub.pt=negative small orientation, THEN Δθ.sub.next=inward yaw;
(132) IF θ.sub.sd=large-amplitude outward yaw AND θ.sub.pt=medium, THEN Δθ.sub.next=inward yaw;
(133) IF θ.sub.sd=large-amplitude outward yaw AND θ.sub.pt=positive small orientation, THEN Δθ.sub.next=small-amplitude outward yaw;
(134) IF θ.sub.sd=large-amplitude outward yaw AND θ.sub.pt=positive big orientation, THEN Δθ.sub.next=medium-amplitude inward yaw.
(135) {circle around (4)} Defuzzification
(136) Defuzzification is performed using a centroid method:
(137)
(138) Finally, the three outputs (x.sub.next, y.sub.next, θ.sub.next) of the fuzzy controller are: x.sub.next=x.sub.sd+Δx.sub.next, y.sub.next=y.sub.sd+Δy.sub.next, θ.sub.next=θ.sub.sd+Δθ.sub.next
(139) Thus, the specific foothold position of the biped robot in the world coordinate system can be determined.
(140) The described embodiments are preferred embodiments of the present disclosure, but the present disclosure is not limited to the aforementioned embodiments. Any obvious improvements, substitutions or modifications that can be made by those skilled in the art without departing from the essential content of the present disclosure shall fall within the protection scope of the present disclosure.