CN117452931A - Walking control method, device and storage medium of humanoid robot - Google Patents

Walking control method, device and storage medium of humanoid robot Download PDF

Info

Publication number
CN117452931A
CN117452931A CN202311337925.0A CN202311337925A CN117452931A CN 117452931 A CN117452931 A CN 117452931A CN 202311337925 A CN202311337925 A CN 202311337925A CN 117452931 A CN117452931 A CN 117452931A
Authority
CN
China
Prior art keywords
foot
track
motion
determining
moment
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202311337925.0A
Other languages
Chinese (zh)
Inventor
唐敬阁
王鑫
梁定坤
谢安桓
顾建军
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Zhejiang Lab
Original Assignee
Zhejiang Lab
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Zhejiang Lab filed Critical Zhejiang Lab
Priority to CN202311337925.0A priority Critical patent/CN117452931A/en
Publication of CN117452931A publication Critical patent/CN117452931A/en
Pending legal-status Critical Current

Links

Abstract

The specification discloses a walking control method, a walking control device and a storage medium of a humanoid robot, wherein the foot track of the humanoid robot is divided into a first movement stage, a second movement stage and a third movement stage. According to a preset foot track model of the motion stage and motion parameters of preset time in the motion stage, determining motion parameters of feet of all time of the motion stage, obtaining foot tracks of the motion stage, and controlling foot motions of the humanoid robot during walking according to the foot track of each motion stage, so that the foot motions of the humanoid robot during walking are more anthropomorphic.

Description

Walking control method, device and storage medium of humanoid robot
Technical Field
The present disclosure relates to the field of robots, and in particular, to a walking control method, apparatus, and storage medium for a humanoid robot.
Background
With the development of robot technology, robots have evolved from robots that originally need to be remotely operated through programs and information stored in computers to advanced robots that utilize intelligent technologies to recognize, understand, infer, and finally make planning decisions, and that can autonomously act to achieve predetermined goals. Robots are also diverse in variety, such as industrial robots, biomimetic robots, etc. Wherein the bionic robot comprises a humanoid robot.
The humanoid robot is mainly used for simulating the behaviors of human beings, such as up and down steps, running at high speed, jumping with one leg, and the like. When the humanoid robot walks, the sole is kept parallel to the ground in the process of lifting the foot, stepping forward and falling to the ground. However, when a person walks normally, the heel is lifted, the toe is grounded, then the whole sole extends forwards from the ground, when the foot lands, the heel lands firstly, and then the toe lands. The foot sole of the humanoid robot keeps parallel with the ground in a walking mode, and compared with a walking mode of a person, the robot is stiff in motion. Therefore, how to make the humanoid robot simulate the walking mode of a person is a problem to be solved.
Based on this, the present specification provides a walking control method of a humanoid robot.
Disclosure of Invention
The present disclosure provides a walking control method, a walking control device, a storage medium and an electronic device for a humanoid robot, so as to partially solve the above problems in the prior art.
The technical scheme adopted in the specification is as follows:
the specification provides a walking control method of a humanoid robot, comprising the following steps:
acquiring a preset foot track, wherein the foot track comprises a first motion stage, a second motion stage and a third motion stage; the first movement stage is from a first moment when standing on the tiptoe to a second moment when the tiptoe is about to leave the ground, the second movement stage is from the second moment when the tiptoe is about to leave the ground to a third moment when the heel is about to land, and the third movement stage is from the third moment when the heel is about to land to a fourth moment when the tiptoe is completely dropped;
Determining a motion parameter of a foot of the humanoid robot at a preset moment in each motion stage, wherein the preset moment comprises a starting moment and/or an ending moment of the stage, and the motion parameter comprises the position and the pitching angle of the foot;
determining the motion parameters of the feet at all moments of the motion stage according to a preset foot track model of the motion stage and motion parameters at preset moments in the motion stage, and obtaining foot tracks of the motion stage;
and controlling the foot action of the humanoid robot during walking according to the foot track of each motion stage.
Optionally, the foot track includes a pitch angle track and a position track of the foot, and the position track includes a position track in an x direction, a position track in a y direction, and a position track in a z direction; the x direction is the advancing direction of the feet of the humanoid robot; the y direction is in a horizontal plane and perpendicular to the x direction, and the positive direction of the y direction is the direction that the right leg of the humanoid robot points to the left leg; the z direction is in a vertical plane and perpendicular to the x direction and the y direction, and the positive direction of the z direction is vertically upward.
Optionally, when the position track is a position track in the y direction, determining the motion parameters of the foot at all times of the motion stage according to a preset foot track model of the motion stage and the motion parameters at preset times in the motion stage, including:
determining a first speed of the foot corresponding to the first moment in the y direction according to the position of the foot corresponding to the first moment in the y direction; determining a second speed of the foot corresponding to the fourth time in the y direction according to the position of the foot corresponding to the fourth time in the y direction;
determining a position track of the foot in the y direction according to a preset foot track model of the motion stage, a position of the foot in the y direction in the position of the foot corresponding to the first moment and the fourth moment and the second speed;
and determining the motion parameters of the foot at all moments of the motion stage according to the position track of the foot in the y direction.
Optionally, determining the motion parameters of the foot at all moments of the motion stage according to a preset foot track model of the motion stage and motion parameters at preset moments of the motion stage specifically includes:
Determining the pitching angle, the angular speed and the pitching angle and the angular speed of the starting moment and the ending moment of the motion stage;
determining a pitch angle track of the motion stage according to the pitch angle and the angular velocity of the motion stage at the starting moment and the pitch angle and the angular velocity of the motion stage at the ending moment;
and determining the motion parameters of the foot at all moments of the motion stage according to the pitch angle track and a preset foot track model of the motion stage.
Optionally, when the position track is a position track in the x direction, determining, according to the pitch angle track and a preset foot track model of the motion stage, motion parameters of the foot at all moments of the motion stage, including:
determining a first length of the toe and the foot of the humanoid robot and a second length of the heel and the foot of the humanoid robot;
when the walking control stage of the humanoid robot is a first movement stage, determining a position track of the foot in the x direction according to a preset foot track model of the movement stage, the first length, the position of the foot in the x direction in the position of the foot corresponding to the first time and the pitch angle track;
When the walking control stage of the humanoid robot is a third movement stage, determining a position track of the foot in the x direction according to a preset foot track model of the movement stage, the second length, the position of the foot in the x direction in the position of the foot corresponding to the fourth time and the pitch angle track;
and determining the motion parameters of the foot at all moments of the motion stage according to the determined position track of the foot in the x direction.
Optionally, when the position track is a position track in the z direction, determining the motion parameters of the foot at all times of the motion stage according to a preset foot track model of the motion stage and the motion parameters at preset times in the motion stage, including:
determining a first length of the toe and the foot of the humanoid robot and a second length of the heel and the foot of the humanoid robot;
when the walking control stage of the humanoid robot is a first motion stage, determining a position track of the foot in the z direction according to a preset foot track model of the motion stage, the first length, the position of the foot in the z direction in the position of the foot corresponding to the first time and the pitch angle track;
When the walking control stage of the humanoid robot is a third motion stage, determining a position track of the foot in the z direction according to a preset foot track model of the motion stage, the second length, the position of the foot in the z direction in the position of the foot corresponding to the first time and the pitch angle track;
and determining the motion parameters of the foot at all moments of the motion stage according to the position track of the foot in the z direction.
Optionally, when the foot track is the second motion stage, determining the motion parameters of the foot at all times of the motion stage according to a preset foot track model of the motion stage and the motion parameters at preset times in the motion stage, including:
determining an intermediate time between the second time and the third time;
determining a pitching angle and an angular speed corresponding to the middle moment;
determining a pitching angle and an angular speed corresponding to the second moment; and determining a pitching angle and an angular velocity corresponding to the third moment;
determining a pitch angle track according to the pitch angle and the angular velocity corresponding to the second moment, the pitch angle and the angular velocity corresponding to the third moment and the pitch angle and the angular velocity corresponding to the middle moment;
And determining the motion parameters of the foot at all moments of the motion stage according to the pitch angle track and a preset foot track model of the motion stage.
Optionally, when the position track is a position track in the x direction, determining, according to the pitch angle track and a preset foot track model of the motion stage, motion parameters of the foot at all moments of the motion stage, including:
determining the position and the speed of the foot in the x direction at the second moment; and determining the position and speed of the foot in the x direction at the third moment;
determining the position track of the foot in the x direction according to a preset foot track model of the motion stage, the position and the speed of the foot in the x direction at the second moment and the position and the speed of the foot in the x direction at the third moment;
and determining the motion parameters of the foot at all moments of the motion stage according to the position track of the foot in the x direction and the pitch angle track.
Optionally, when the position track is a position track in the z direction, determining, according to the pitch angle track and a preset foot track model of the motion stage, motion parameters of the foot at all moments of the motion stage specifically includes:
Determining the position and the speed of the foot in the z direction at the middle moment, and determining the position and the speed of the foot in the z direction at the second moment; determining the position and the speed of the foot in the z direction at the third moment;
determining a position track of the foot in the z direction according to a preset foot track model of the movement stage, the position and the speed of the foot in the z direction at the second moment, the position and the speed of the foot in the z direction at the third moment and the position and the speed of the foot in the z direction at the middle moment;
and determining the motion parameters of the foot at all moments of the motion stage according to the position track of the foot in the z direction and the pitch angle track.
The present specification provides a walking control device of a humanoid robot, the device comprising:
the first foot track acquisition module is used for acquiring a preset foot track, and the foot track comprises a first motion stage, a second motion stage and a third motion stage; the first movement stage is from a first moment when standing on the tiptoe to a second moment when the tiptoe is about to leave the ground, the second movement stage is from the second moment when the tiptoe is about to leave the ground to a third moment when the heel is about to land, and the third movement stage is from the third moment when the heel is about to land to a fourth moment when the tiptoe is completely dropped;
The motion parameter determining module is used for determining motion parameters of the feet of the humanoid robot at preset moments in each motion stage, wherein the preset moments comprise the starting moment and/or the ending moment of the stage, and the motion parameters comprise the positions and the pitching angles of the feet;
the second foot track acquisition module is used for determining the motion parameters of the foot at all moments of the motion stage according to a preset foot track model of the motion stage and the motion parameters at preset moments of the motion stage to obtain a foot track of the motion stage;
and the control module is used for controlling the foot action of the humanoid robot during walking according to the foot track of each motion stage.
Optionally, the foot track includes a pitch angle track and a position track of the foot, and the position track includes a position track in an x direction, a position track in a y direction, and a position track in a z direction; the x direction is the advancing direction of the feet of the humanoid robot; the y direction is in a horizontal plane and perpendicular to the x direction, and the positive direction of the y direction is the direction that the right leg of the humanoid robot points to the left leg; the z direction is in a vertical plane and perpendicular to the x direction and the y direction, and the positive direction of the z direction is vertically upward.
Optionally, when the position track is a position track in the y direction, the second foot track obtaining module is specifically configured to determine, according to a position in the y direction in the positions of the feet corresponding to the first time, a first speed in the y direction of the feet corresponding to the first time; determining a second speed of the foot corresponding to the fourth time in the y direction according to the position of the foot corresponding to the fourth time in the y direction; determining a position track of the foot in the y direction according to a preset foot track model of the motion stage, a position of the foot in the y direction in the position of the foot corresponding to the first moment and the fourth moment and the second speed; and determining the motion parameters of the foot at all moments of the motion stage according to the position track of the foot in the y direction.
Optionally, the second foot track obtaining module is specifically configured to determine a pitch angle and an angular velocity at a start time and a pitch angle and an angular velocity at an end time of the motion stage; determining a pitch angle track of the motion stage according to the pitch angle and the angular velocity of the motion stage at the starting moment and the pitch angle and the angular velocity of the motion stage at the ending moment; and determining the motion parameters of the foot at all moments of the motion stage according to the pitch angle track and a preset foot track model of the motion stage.
Optionally, the second foot track obtaining module is specifically configured to determine a first length between the toe and the foot of the humanoid robot and a second length between the heel and the foot of the humanoid robot when the position track is a position track in the x direction; when the walking control stage of the humanoid robot is a first movement stage, determining a position track of the foot in the x direction according to a preset foot track model of the movement stage, the first length, the position of the foot in the x direction in the position of the foot corresponding to the first time and the pitch angle track; when the walking control stage of the humanoid robot is a third movement stage, determining a position track of the foot in the x direction according to a preset foot track model of the movement stage, the second length, the position of the foot in the x direction in the position of the foot corresponding to the fourth time and the pitch angle track; and determining the motion parameters of the foot at all moments of the motion stage according to the determined position track of the foot in the x direction.
Optionally, the second foot track obtaining module is specifically configured to determine a first length between the toe and the foot of the humanoid robot and a second length between the heel and the foot of the humanoid robot when the position track is a position track in the z direction; when the walking control stage of the humanoid robot is a first motion stage, determining a position track of the foot in the z direction according to a preset foot track model of the motion stage, the first length, the position of the foot in the z direction in the position of the foot corresponding to the first time and the pitch angle track; when the walking control stage of the humanoid robot is a third motion stage, determining a position track of the foot in the z direction according to a preset foot track model of the motion stage, the second length, the position of the foot in the z direction in the position of the foot corresponding to the first time and the pitch angle track; and determining the motion parameters of the foot at all moments of the motion stage according to the position track of the foot in the z direction.
Optionally, the second foot track obtaining module is specifically configured to determine an intermediate time between the second time and the third time when the foot track is in the second motion phase; determining a pitching angle and an angular speed corresponding to the middle moment; determining a pitching angle and an angular speed corresponding to the second moment; and determining a pitching angle and an angular velocity corresponding to the third moment; determining a pitch angle track according to the pitch angle and the angular velocity corresponding to the second moment, the pitch angle and the angular velocity corresponding to the third moment and the pitch angle and the angular velocity corresponding to the middle moment; and determining the motion parameters of the foot at all moments of the motion stage according to the pitch angle track and a preset foot track model of the motion stage.
Optionally, the second foot track obtaining module is specifically configured to determine, when the position track is a position track in an x direction, a position and a speed of the foot in the x direction at the second moment; and determining the position and speed of the foot in the x direction at the third moment; determining the position track of the foot in the x direction according to a preset foot track model of the motion stage, the position and the speed of the foot in the x direction at the second moment and the position and the speed of the foot in the x direction at the third moment; and determining the motion parameters of the foot at all moments of the motion stage according to the position track of the foot in the x direction and the pitch angle track.
Optionally, the second foot track obtaining module is specifically configured to determine a position and a speed of the foot in a z direction at the intermediate moment when the position track is a position track in a z direction, and determine a position and a speed of the foot in the z direction at the second moment; determining the position and the speed of the foot in the z direction at the third moment; determining a position track of the foot in the z direction according to a preset foot track model of the movement stage, the position and the speed of the foot in the z direction at the second moment, the position and the speed of the foot in the z direction at the third moment and the position and the speed of the foot in the z direction at the middle moment; and determining the motion parameters of the foot at all moments of the motion stage according to the position track of the foot in the z direction and the pitch angle track.
The present specification provides a computer-readable storage medium storing a computer program which, when executed by a processor, implements the walking control method of a humanoid robot described above.
The present specification provides an electronic device including a memory, a processor, and a computer program stored on the memory and executable on the processor, wherein the processor implements the walking control method of the humanoid robot when executing the program.
The above-mentioned at least one technical scheme that this specification adopted can reach following beneficial effect:
the walking control method of the humanoid robot provided by the specification can be used for dividing the foot track of the humanoid robot into a first motion stage, a second motion stage and a third motion stage. According to a preset foot track model of the motion stage and motion parameters of preset time in the motion stage, determining motion parameters of feet of all time of the motion stage, obtaining foot tracks of the motion stage, and controlling foot motions of the humanoid robot during walking according to the foot track of each motion stage, so that the foot motions of the humanoid robot during walking are more anthropomorphic.
Drawings
The accompanying drawings, which are included to provide a further understanding of the specification, illustrate and explain the exemplary embodiments of the present specification and their description, are not intended to limit the specification unduly. In the drawings:
fig. 1 is a schematic flow chart of a walking control method of a humanoid robot provided in the present specification;
FIG. 2 is a schematic view of a foot path provided in the present disclosure;
FIG. 3 is a schematic view of the pitch angle of the foot provided in the present specification;
Fig. 4 is a schematic diagram of a leg of a humanoid robot provided in the present specification;
FIG. 5 is a schematic diagram of the geometrical relationship between foot position trajectory and pitch trajectory provided in the present specification;
FIG. 6a is a graph showing the verification result of the position trace in the x-direction provided in the present specification;
FIG. 6b is a graph showing the y-direction position trace verification result provided in the present specification;
FIG. 6c is a z-direction position trace verification provided herein;
FIG. 7 is a pitch track verification result provided herein;
fig. 8 is a schematic view of a walking control device structure of a humanoid robot provided in the present specification;
fig. 9 is a schematic structural diagram of an electronic device corresponding to fig. 1 provided in the present specification.
Detailed Description
For the purposes of making the objects, technical solutions and advantages of the present specification more apparent, the technical solutions of the present specification will be clearly and completely described below with reference to specific embodiments of the present specification and corresponding drawings. It will be apparent that the described embodiments are only some, but not all, of the embodiments of the present specification. All other embodiments, which can be made by one of ordinary skill in the art without undue burden from the present disclosure, are intended to be within the scope of the present disclosure.
The following describes in detail the technical solutions provided by the embodiments of the present specification with reference to the accompanying drawings.
Fig. 1 is a schematic flow chart of a walking control method of a humanoid robot provided in the present specification, including the following steps:
s100: and acquiring a preset foot track.
Robots have been developed to be mature, and robots can be used to perform various services instead of humans, such as sweeping with a sweeping robot. The robot also comprises a humanoid robot, when the humanoid robot walks, the whole sole of the supporting leg always falls on the ground, the swinging leg lifts up at the foot part and steps forward, and the sole and the ground are kept parallel in the process of falling on the ground. However, when a person walks normally, the heel is lifted up by the swing foot, the toe is grounded, then the whole sole extends forwards from the ground, when the foot lands, the heel lands firstly, and then the toe lands. When the heel of the swing foot lands, the heel of the support foot starts to leave the ground, and the next stepping action is performed. That is, when a person walks, the swing foot can stand on the tip of the foot, and the person can take a step by lifting the heel and the front sole to land and applying force. The foot sole of the humanoid robot keeps parallel with the ground in a walking mode, and compared with a walking mode of a person, the robot is stiff in motion. Accordingly, the present specification provides a walking control method of a humanoid robot.
The execution body in the embodiment of the present specification may be a controller that controls the walking of the humanoid robot according to the foot track of the humanoid robot, or may be an electronic device that controls the walking of the humanoid robot, which is not limited in the present specification. For convenience of explanation, the following description will be made with the controller as the execution subject.
In order to enable the walking mode of the humanoid robot to be matched with the walking mode of a person, the controller can acquire a preset foot track, and the humanoid robot is controlled to also execute the steps of standing on the tiptoe, stepping and heel landing.
Fig. 2 is a schematic diagram of the foot track provided in the present specification, as shown in fig. 2.
In the x-z rectangular coordinate system, the dotted line represents the position change of the foot, the foot track comprises a first motion stage, a second motion stage and a third motion stage, and the first motion stage is a first moment t when the foot starts to stand on the tiptoe 0 By the second moment t when the toe is about to leave the ground 1 The second movement stage is the second moment t when the toe is about to leave the ground 1 By the third moment t when the heel is about to land 2 The third movement phase is the third moment t when the heel is about to land 2 By the fourth moment t when the toe falls completely 3 。t m For the second movement phase, the moment when the foot of the humanoid robot reaches the highest point is usually the second moment t 1 And a third time t 2 Thus, t m May be referred to as an intermediate time.
In order to facilitate the description of the foot trajectories of the humanoid robot, the foot trajectories of the humanoid robot are described in combination with an xyz three-dimensional rectangular coordinate system. The foot track comprises a pitch angle track and a position track of the foot, wherein the position track comprises a position track in the x direction, a position track in the y direction and a position track in the z direction. The x direction is the advancing direction of the foot of the humanoid robot, the y direction is in the horizontal plane and is perpendicular to the x direction, and the positive direction of the y direction is the direction that the right leg of the humanoid robot points to the left leg. That is, when the humanoid robot is stationary, the robot stands vertically with two parallel legs, and when the feet are at the same position in the x direction, the right leg of the humanoid robot points to the left leg in the y direction. The z direction is in a vertical plane and perpendicular to the x direction and the y direction, and the positive direction of the z direction is vertically upward. That is, the positive direction of the x-direction is the direction in which the humanoid robot advances, the y-direction may represent the direction of movement of the humanoid robot to turn left and right, and the z-direction may represent the direction of movement of the humanoid robot to move high. Let θ (t) be the pitch angle locus, t be the time, and the foot position locus r (t) = [ x (t), y (t), z (t) ].
Fig. 3 is a schematic view of a pitch angle of a foot provided in the present specification, and as shown in fig. 3, the pitch angle of the foot refers to an angle θ between the foot and the ground when the foot is lifted. Fig. 4 is a schematic diagram of a leg of the humanoid robot provided in the present specification, and as shown in fig. 4, the leg of the humanoid robot includes a knee joint, an ankle joint, and a foot. For convenience of description, the ankle joint midpoint of the humanoid robot is taken as a vertical line, the vertical line intersects with the sole, and the intersection point of the vertical line and the sole is taken as the foot of the humanoid robot.
S102: for each movement phase, the movement parameters of the feet of the humanoid robot at the preset moment in the phase are determined.
In order to determine the foot track, the controller needs to determine the motion parameters of each motion stage of the humanoid robot at preset time, wherein the preset time comprises the starting time and/or the ending time of the stage, and the motion parameters comprise the position and the pitching angle of the foot.
Let t be 0 、t 1 、t 2 、t 3 、t m The corresponding foot positions are r respectively 0 =(x 0 ,y 0 ,z 0 )、r 1 =(x 1 ,y 1 ,z 1 )、r 2 =(x 2 ,y 2 ,x 2 )、r 3 =(x 3 ,y 3 ,z 3 )、 h lift From the first time to an intermediate time t m The height reached by the foot. t is t 0 、t 1 、t 2 、t 3 、t m The pitch angles of the corresponding feet are respectively θ (t 0 )=0、θ(t 1 )=θ fm 、θ(t 2 )=-θ fm 、θ(t 3 )=0、θ(t m )=0。t 0 、t 1 、t 2 、t 3 、t m Angular velocities of pitch angles of the corresponding feet, respectivelyIs->θ fm Is the maximum angle between the foot and the ground.
S104: according to a preset foot track model of the motion stage and motion parameters of preset time in the motion stage, determining the motion parameters of the foot at all time of the motion stage to obtain the foot track of the motion stage.
In one or more embodiments of the present disclosure, when the humanoid robot is normally straight, the pitch angle does not affect the position trajectory in the y direction, no matter what stage the foot of the humanoid robot is in. Therefore, when the position track is the position track in the y direction, the controller can determine the motion parameters of the foot at all times of the motion stage according to the preset foot track model of the motion stage and the motion parameters at preset times in the motion stage. The predetermined foot track model in the motion stage may be a cubic polynomial curve.
Specifically, the controller determines the position y (t) in the y direction of the foot position corresponding to the first time 0 ) Determining a first speed of the foot in the y direction corresponding to the first timeAnd according to the position y (t) in the y direction of the foot position corresponding to the fourth time 3 ) Determining a second speed in the y-direction of the foot corresponding to the fourth moment +. >And determining the position track of the foot in the y direction according to a preset foot track model of the motion stage, the position of the foot in the y direction in the position corresponding to the first moment, the first speed, the position of the foot in the y direction in the position corresponding to the fourth moment and the second speed. Wherein y (t) 0 )=y 0 、/>y(t 3 )=y 3 、/>The locus of the foot in the y-direction is expressed as follows:
y(t)=g 0 +g 1 t+g 2 t 2 +g 3 t 3 ,t 0 ≤t≤t 3
wherein the coefficient g 0 、g 1 、g 2 、g 3 The solution is obtained by the following equation:
the controller may then determine the motion parameters of the foot at all times during the motion phase based on the position trajectory of the foot in the y-direction.
As for the position trajectory in the x-direction and the position trajectory in the z-direction of the foot, since the position trajectory in the x-direction and the position trajectory in the z-direction of the foot are both related to the pitch angle, it is necessary to determine the pitch angle trajectory before determining the position trajectory in the x-direction and the position trajectory in the z-direction of the foot.
When the pitch angle track is determined, the foot track of the humanoid robot is in different motion stages, and the determined pitch angle track is also different. That is, pitch track models at different stages are different.
For each motion phase, the controller determines a pitch angle, an angular velocity at a start time and a pitch angle, an angular velocity at an end time of the motion phase. And determining the pitch angle track of the motion stage according to the pitch angle and the angular velocity of the starting moment and the pitch angle and the angular velocity of the ending moment of the motion stage.
Specifically, when the foot track is the first motion stage, determining a pitch angle θ (t 0 ) Angular velocityAnd determinesThe pitch angle θ (t) 1 ) Angular velocity->According to the corresponding pitching angle theta (t 0 ) Angular velocity->The pitch angle θ (t) 1 ) Angular velocity->And determining a pitch angle track. Wherein θ (t) 0 )=0、/>θ(t 1 )=θ fm 、/>The pitch track of this first motion phase is as follows:
θ(t)=a 0 +a 1 t+a 2 t 2 +a 3 t 3 ,t 0 ≤t≤t 1
wherein the coefficient a 0 、a 1 、a 2 、a 3 The solution is obtained by the following equation:
in addition, the angular velocity of the pitch angle in the first motion stage can be obtained by deriving the pitch angle locus θ (t) in the first motion stageThe formula is as follows:
after the pitch angle is determined, the determination method is different because the foot track models of the tracks at different positions are different.
When the position track is the position track in the x direction, determining the first length p of the toe of the humanoid robot and the foot tiptoe And a second length p of the heel and the foot of the humanoid robot heel
When the walking control stage of the humanoid robot is a first motion stage, according to a preset foot track model of the motion stage, the first length p tiptoe A position x in the x direction among the positions of the foot corresponding to the first time 0 And the pitch angle track, the position track x (t) of the foot in the x direction is determined. And determining the motion parameters of the foot at all moments of the motion stage according to the determined position track of the foot in the x direction.
FIG. 5 is a schematic diagram showing the geometrical relationship between foot position and pitch angle in the present specification, as shown in FIG. 5, wherein in the x-z rectangular coordinate system, the black solid points are foot positions, when the foot is in the first movement stage, at the first moment, the heel starts to lift, the foot forms an included angle θ with the ground, the toe is still in contact with the ground, and at the second moment, the included angle reaches the maximum value θ fm The toe is about to leave the ground.
As can be seen from the schematic diagram of the geometric relationship shown in fig. 5, at any time between the first time and the second time, the locus of the foot in the x direction is represented by the following formula:
x(t)=x 0 +p tiptoe (1-cosθ),t 0 ≤t≤t 1
wherein p is tiptoe For the first length, x, of the toe and the foot of the humanoid robot 0 And for the position in the x direction in the position corresponding to the first moment, theta is the pitching angle corresponding to any moment between the first moment and the second moment, and is determined by the pitch angle track of the first movement stage.
When the position track is the position track in the z direction, and when the walking control stage of the humanoid robot is the first motion stage, the foot of the motion stage is preset Trajectory model, the first length p tiptoe A position z in the z direction among the positions of the foot corresponding to the first time 0 And the pitch angle track, the position track z (t) of the foot in the z direction is determined. And determining the motion parameters of the foot at all moments of the motion stage according to the position track of the foot in the z direction. The z-direction position track of the first motion stage of the foot is specifically expressed as follows:
z(t)=z 0 +p tiptoe sinθ,t 0 ≤t≤t 1
wherein p is tiptoe For the first length, z, of the toe of the humanoid robot and the foot 0 And for the position in the z direction in the position corresponding to the first moment, theta is the pitching angle corresponding to any moment between the first moment and the second moment, and is determined by the pitch angle track of the first movement stage.
S106: and controlling the foot action of the humanoid robot during walking according to the foot track of each motion stage.
Based on the walking control method of the humanoid robot shown in fig. 1, the foot track of the humanoid robot is divided into a first motion stage, a second motion stage and a third motion stage. According to a preset foot track model of the motion stage and motion parameters of preset time in the motion stage, determining motion parameters of feet of all time of the motion stage, obtaining foot tracks of the motion stage, and controlling foot motions of the humanoid robot during walking according to the foot track of each motion stage, so that the foot motions of the humanoid robot during walking are more anthropomorphic.
In step S104, when the pitch angle trajectory is determined, and when the foot trajectory is in the third motion phase, the pitch angle θ (t 2 ) Angular velocityAnd determines a pitch angle θ (t) 3 ) Angular velocity->According to the pitch angle θ (t) 2 ) Angular velocity->The pitch angle θ (t) 3 ) Angular velocity->And determining a pitch angle track. Wherein θ (t) 2 )=-θ fm 、θ(t 3 )=0、The pitch track of this third motion phase is as follows:
θ(t)=c 0 +c 1 t+c 2 t 2 +c 3 t 3 ,t 2 ≤t≤t 3
wherein the coefficient c 0 、c 1 、c 2 、c 3 The solution is obtained by the following equation:
in addition, the pitch angle track theta (t) of the third motion stage is derived to obtain the angular velocity of the pitch angle of the third motion stageThe formula is as follows:
after determining the pitch angle track, determining the motion parameters of the foot at all moments of the motion stage according to the pitch angle track and a preset foot track model of the motion stage for each motion stage.
Determining the position according to the pitching angle and a preset foot track model of the motion stageWhen the track is arranged. When the position track is the position track in the x direction and when the walking control stage of the humanoid robot is the third motion stage, according to a preset foot track model of the motion stage and the second length p heel A position x in the x direction among the positions of the foot corresponding to the fourth time 3 And the pitch angle track, the position track of the foot in the x direction is determined. Wherein, the position track of the third motion stage of the foot in the x direction is as follows:
x(t)=x 3 +p heel (1-cosθ),t 2 ≤t≤t 3
wherein p is heel For the second length, x, of the heel and the foot of the humanoid robot 3 And θ is a pitch angle corresponding to any one of the third time and the fourth time in the pitch angle track, and is determined by the pitch angle track in the third motion stage.
When the position track is the position track in the z direction and when the walking control stage of the humanoid robot is the third motion stage, according to a preset foot track model of the motion stage and the second length p heel A position z in the z direction among the positions of the foot corresponding to the first time 3 And the pitch angle track, the position track of the foot in the z direction is determined. The position track in the z direction of the third motion stage of the foot is specifically expressed as follows:
z(t)=z 3 +p heel sinθ,t 2 ≤t≤t 3
wherein p is heel For the second length of the heel and the foot of the humanoid robot, z 3 And θ is a pitch angle corresponding to any one of the third time and the fourth time in the pitch angle track, and is determined by the pitch angle track in the third motion stage.
When the pitch angle track is determined, the controller firstly determines the intermediate time t between the second time and the third time when the foot track is in the second motion stage m
Determining a pitch angle θ (t) m ) Angular velocityAnd determining the pitching angle and the angular velocity corresponding to the second moment, and determining the pitching angle and the triangular velocity corresponding to the third moment. When the humanoid robot is at the middle moment, the feet of the humanoid robot are parallel to the ground and are at the highest point where the current swing feet can reach. Therefore, the pitch angle θ (t) m ) =0, angular velocity->/>
According to the corresponding pitching angle theta (t 1 ) Angular velocityThe pitch angle θ (t) 2 ) Angular velocity->The pitch angle θ (t) m ) Angular velocity->And determining a pitch angle track. Wherein, the pitch angle track of the second motion stage is as follows:
θ(t)=b 0 +b 1 t+b 2 t 2 +b 3 t 3 +b 4 t 4 +b 5 t 5 ,t 1 ≤t≤t 2
coefficient b 0 、b 1 、b 2 、b 3 、b 4 、b 5 The solution is obtained by the following equation:
in addition, the pitch angle track theta (t) of the second motion stage is derived to obtain the angular velocity of the pitch angle of the second motion stageThe formula is as follows:
after the pitch angle is determined, determining the motion parameters of the foot at all moments of the motion stage according to the pitch angle track and a preset foot track model of the motion stage.
When the foot track is the second motion stage and the position track is the position track in the x direction, the foot track of the humanoid robot is a curve, and the foot track model of the preset motion stage can be a cubic polynomial.
The controller first determines the position x of the foot in the x direction at the second moment 1 Speed and velocityAnd determining the position x of the foot in the x direction at the third moment 2 Speed->And determining the position track of the foot in the x direction according to a preset foot track model of the motion stage, the position and the speed of the foot in the x direction at the second moment and the position and the speed of the foot in the x direction at the third moment. And determining the motion parameters of the foot at all moments of the motion stage according to the position track of the foot in the x direction and the pitch angle track. Wherein, the position track of the second motion stage x direction of the foot is as follows:
x(t)=e 0 +e 1 t+e 2 t 2 +e 3 t 3 ,t 1 ≤t≤t 2
when determining the position and the speed of the foot in the x direction, the speed may be determined according to the position track of the foot in the x direction in the first motion stage and the third motion stage in step S104, where the speed is the first derivative of the position. The specific formula is as follows:
the position and the speed in the x direction at the second moment are respectively as follows:
x 1 =x 0 +p tiptoe (1-cosθ fm )
the position and the speed in the x direction at the third time are respectively:
x 2 =x 3 +p heel (1-cosθ fm )
Coefficient e 0 、e 1 、e 2 、e 3 The solution is obtained by the following equation:
when the foot track is the second motion stage and the position track is the z-direction position track, the foot track of the humanoid robot is a curve, and the foot track model of the preset motion stage can be a penta-order polynomial.
The controller first determines the z-direction position z of the foot at the intermediate moment m Speed and velocityDetermining the z-direction position z of the foot at the second moment 1 Speed->And determining that the foot is atThe position z in the z direction at the third time 2 Speed and velocityAnd determining the position track of the foot in the z direction according to a preset foot track model of the motion stage, the position and the speed of the foot in the z direction at the second moment, the position and the speed of the foot in the z direction at the third moment and the position and the speed of the foot in the z direction at the middle moment. And determining the motion parameters of the foot at all moments of the motion stage according to the position track of the foot in the z direction and the pitch angle track. Wherein the z-direction position track of the second motion stage of the foot is as follows:
z(t)=f 0 +f 1 t+f 2 t 2 +f 3 t 3 +f 4 t 4 +f 5 t 5 ,t 1 ≤t≤t 2
when determining the position and the velocity of the foot in the z direction, the velocity may be determined according to the position track of the foot in the z direction in the first motion stage and the third motion stage in step S104, and the velocity is the first derivative of the position. The specific formula is as follows:
The z-direction position and speed at the second time are respectively:
z 1 =z 0 +p tiptoe sin θ f m
the position and the speed in the z direction at the third time are respectively:
z 2 =z 3 -p heel sinθ fm
the foot is at a time t intermediate the second time and the third time m The z-direction position and velocity of (c) are:
z m =z 0 +h lift
wherein the coefficient f 0 、f 1 、f 2 、f 3 、f 4 、f 5 The solution is obtained by the following equation:
it should be noted that, the exercise parameters in the present description may be set according to the needs, and the specific definition mode of the foot may also be set according to the needs. For example, the foot may also be the midpoint of the entire foot length, or may be two-fifths of the entire foot length from the toe. Then, due to the change in the position of the foot, the time difference in the first movement phase may be different from the time difference in the third movement phase when walking, i.e., (t) 1 -t 0 )≠(t 3 -t 2 ). Accordingly, the middle time, the position of the foot at the middle time, and the like are also affected. The maximum value of the pitch angle in the first motion phase and the maximum value of the pitch angle in the third motion phase may be unequal.
Can take the value t 0 =0s,t 1 =0.2s,t 2 =0.85s,t 3 =1s,t m For intermediate time, h lift =0.08m,p tiptoe =0.2m,p heel =-0.1m,θ fm =10°,r 0 =(0,-0.13,0),r 3 = (0.2, -0.18,0), the walking control method of the humanoid robot provided in the present specification was verified. Fig. 6a to 6c are respectively the position track verification results in the x, y and z directions provided in the present specification, where the origin of the coordinate system of the verification result is the midpoint between the two feet when the humanoid robot stands normally and vertically and the toe positions of the two feet are at the same position in the x direction. Fig. 7 is a pitch track verification result provided in the present specification.
The above is a flow chart of a walking control method of the humanoid robot shown in fig. 1, and the present disclosure further provides a walking control device of the humanoid robot, as shown in fig. 8.
Fig. 8 is a schematic diagram of a walking control device of a humanoid robot provided in the present specification, where the device includes:
a first foot track acquiring module 800, configured to acquire a preset foot track, where the foot track includes a first motion phase, a second motion phase, and a third motion phase; the first movement stage is from a first moment when standing on the tiptoe to a second moment when the tiptoe is about to leave the ground, the second movement stage is from the second moment when the tiptoe is about to leave the ground to a third moment when the heel is about to land, and the third movement stage is from the third moment when the heel is about to land to a fourth moment when the tiptoe is completely dropped;
a motion parameter determining module 802, configured to determine, for each motion phase, a motion parameter of a foot of the humanoid robot at a preset time in the phase, where the preset time includes a start time and/or an end time of the phase, and the motion parameter includes a position and a pitch angle of the foot;
A second foot track obtaining module 804, configured to determine motion parameters of the foot at all times in the motion phase according to a preset foot track model of the motion phase and motion parameters at preset times in the motion phase, so as to obtain a foot track of the motion phase;
the control module 806 is configured to control the foot motion of the humanoid robot during walking according to the foot track of each motion stage.
Optionally, the foot track includes a pitch angle track and a position track of the foot, and the position track includes a position track in an x direction, a position track in a y direction, and a position track in a z direction; the x direction is the advancing direction of the feet of the humanoid robot; the y direction is in a horizontal plane and perpendicular to the x direction, and the positive direction of the y direction is the direction that the right leg of the humanoid robot points to the left leg; the z direction is in a vertical plane and perpendicular to the x direction and the y direction, and the positive direction of the z direction is vertically upward.
Optionally, the second foot track obtaining module 804 is specifically configured to determine, when the position track is a position track in a y direction, a first speed in the y direction of the foot corresponding to the first time according to a position in the y direction in the positions of the foot corresponding to the first time; determining a second speed of the foot corresponding to the fourth time in the y direction according to the position of the foot corresponding to the fourth time in the y direction; determining a position track of the foot in the y direction according to a preset foot track model of the motion stage, a position of the foot in the y direction in the position of the foot corresponding to the first moment and the fourth moment and the second speed; and determining the motion parameters of the foot at all moments of the motion stage according to the position track of the foot in the y direction.
Optionally, the second foot-path obtaining module 804 is specifically configured to determine a pitch angle and an angular velocity at a start time and a pitch angle and an angular velocity at an end time of the motion phase; determining a pitch angle track of the motion stage according to the pitch angle and the angular velocity of the motion stage at the starting moment and the pitch angle and the angular velocity of the motion stage at the ending moment; and determining the motion parameters of the foot at all moments of the motion stage according to the pitch angle track and a preset foot track model of the motion stage.
Optionally, the second foot track obtaining module 804 is specifically configured to determine a first length between the toe and the foot of the humanoid robot and a second length between the heel and the foot of the humanoid robot when the position track is a position track in the x direction; when the walking control stage of the humanoid robot is a first movement stage, determining a position track of the foot in the x direction according to a preset foot track model of the movement stage, the first length, the position of the foot in the x direction in the position of the foot corresponding to the first time and the pitch angle track; when the walking control stage of the humanoid robot is a third movement stage, determining a position track of the foot in the x direction according to a preset foot track model of the movement stage, the second length, the position of the foot in the x direction in the position of the foot corresponding to the fourth time and the pitch angle track; and determining the motion parameters of the foot at all moments of the motion stage according to the determined position track of the foot in the x direction.
Optionally, the second foot track obtaining module 804 is specifically configured to determine a first length between the toe and the foot of the humanoid robot and a second length between the heel and the foot of the humanoid robot when the position track is a position track in the z direction; when the walking control stage of the humanoid robot is a first motion stage, determining a position track of the foot in the z direction according to a preset foot track model of the motion stage, the first length, the position of the foot in the z direction in the position of the foot corresponding to the first time and the pitch angle track; when the walking control stage of the humanoid robot is a third motion stage, determining a position track of the foot in the z direction according to a preset foot track model of the motion stage, the second length, the position of the foot in the z direction in the position of the foot corresponding to the first time and the pitch angle track; and determining the motion parameters of the foot at all moments of the motion stage according to the position track of the foot in the z direction.
Optionally, the second foot track obtaining module 804 is specifically configured to determine an intermediate time between the second time and the third time when the foot track is in the second motion phase; determining a pitching angle and an angular speed corresponding to the middle moment; determining a pitching angle and an angular speed corresponding to the second moment; and determining a pitching angle and an angular velocity corresponding to the third moment; determining a pitch angle track according to the pitch angle and the angular velocity corresponding to the second moment, the pitch angle and the angular velocity corresponding to the third moment and the pitch angle and the angular velocity corresponding to the middle moment; and determining the motion parameters of the foot at all moments of the motion stage according to the pitch angle track and a preset foot track model of the motion stage.
Optionally, the second foot-path obtaining module 804 is specifically configured to determine, when the position path is a position path in the x direction, a position and a speed of the foot in the x direction at the second moment; and determining the position and speed of the foot in the x direction at the third moment; determining the position track of the foot in the x direction according to a preset foot track model of the motion stage, the position and the speed of the foot in the x direction at the second moment and the position and the speed of the foot in the x direction at the third moment; and determining the motion parameters of the foot at all moments of the motion stage according to the position track of the foot in the x direction and the pitch angle track.
Optionally, the second foot-path obtaining module 804 is specifically configured to determine, when the position path is a position path in the z direction, a position and a speed of the foot in the z direction at the intermediate moment, and determine a position and a speed of the foot in the z direction at the second moment; determining the position and the speed of the foot in the z direction at the third moment; determining a position track of the foot in the z direction according to a preset foot track model of the movement stage, the position and the speed of the foot in the z direction at the second moment, the position and the speed of the foot in the z direction at the third moment and the position and the speed of the foot in the z direction at the middle moment; and determining the motion parameters of the foot at all moments of the motion stage according to the position track of the foot in the z direction and the pitch angle track.
The present specification provides a computer-readable storage medium storing a computer program which, when executed by a processor, implements the walking control method of a humanoid robot described above.
The present specification also provides a computer-readable storage medium storing a computer program operable to execute the walking control method of a humanoid robot provided in fig. 1 described above.
The present specification also provides a schematic structural diagram of the electronic device shown in fig. 9, which corresponds to fig. 1. As shown in fig. 9, at the hardware level, the electronic device includes a processor, an internal bus, a network interface, a memory, and a nonvolatile storage, and may of course include hardware required by other services. The processor reads the corresponding computer program from the nonvolatile memory to the memory and then runs the computer program to realize the walking control method of the humanoid robot described in the figure 1.
Of course, other implementations, such as logic devices or combinations of hardware and software, are not excluded from the present description, that is, the execution subject of the following processing flows is not limited to each logic unit, but may be hardware or logic devices.
In the 90 s of the 20 th century, improvements to one technology could clearly be distinguished as improvements in hardware (e.g., improvements to circuit structures such as diodes, transistors, switches, etc.) or software (improvements to the process flow). However, with the development of technology, many improvements of the current method flows can be regarded as direct improvements of hardware circuit structures. Designers almost always obtain corresponding hardware circuit structures by programming improved method flows into hardware circuits. Therefore, an improvement of a method flow cannot be said to be realized by a hardware entity module. For example, a programmable logic device (Programmable Logic Device, PLD) (e.g., field programmable gate array (Field Programmable Gate Array, FPGA)) is an integrated circuit whose logic function is determined by the programming of the device by a user. A designer programs to "integrate" a digital system onto a PLD without requiring the chip manufacturer to design and fabricate application-specific integrated circuit chips. Moreover, nowadays, instead of manually manufacturing integrated circuit chips, such programming is mostly implemented by using "logic compiler" software, which is similar to the software compiler used in program development and writing, and the original code before the compiling is also written in a specific programming language, which is called hardware description language (Hardware Description Language, HDL), but not just one of the hdds, but a plurality of kinds, such as ABEL (Advanced Boolean Expression Language), AHDL (Altera Hardware Description Language), confluence, CUPL (Cornell University Programming Language), HDCal, JHDL (Java Hardware Description Language), lava, lola, myHDL, PALASM, RHDL (Ruby Hardware Description Language), etc., VHDL (Very-High-Speed Integrated Circuit Hardware Description Language) and Verilog are currently most commonly used. It will also be apparent to those skilled in the art that a hardware circuit implementing the logic method flow can be readily obtained by merely slightly programming the method flow into an integrated circuit using several of the hardware description languages described above.
The controller may be implemented in any suitable manner, for example, the controller may take the form of, for example, a microprocessor or processor and a computer readable medium storing computer readable program code (e.g., software or firmware) executable by the (micro) processor, logic gates, switches, application specific integrated circuits (Application Specific Integrated Circuit, ASIC), programmable logic controllers, and embedded microcontrollers, examples of which include, but are not limited to, the following microcontrollers: ARC 625D, atmel AT91SAM, microchip PIC18F26K20, and Silicone Labs C8051F320, the memory controller may also be implemented as part of the control logic of the memory. Those skilled in the art will also appreciate that, in addition to implementing the controller in a pure computer readable program code, it is well possible to implement the same functionality by logically programming the method steps such that the controller is in the form of logic gates, switches, application specific integrated circuits, programmable logic controllers, embedded microcontrollers, etc. Such a controller may thus be regarded as a kind of hardware component, and means for performing various functions included therein may also be regarded as structures within the hardware component. Or even means for achieving the various functions may be regarded as either software modules implementing the methods or structures within hardware components.
The system, apparatus, module or unit set forth in the above embodiments may be implemented in particular by a computer chip or entity, or by a product having a certain function. One typical implementation is a computer. In particular, the computer may be, for example, a personal computer, a laptop computer, a cellular telephone, a camera phone, a smart phone, a personal digital assistant, a media player, a navigation device, an email device, a game console, a tablet computer, a wearable device, or a combination of any of these devices.
For convenience of description, the above devices are described as being functionally divided into various units, respectively. Of course, the functions of each element may be implemented in one or more software and/or hardware elements when implemented in the present specification.
It will be appreciated by those skilled in the art that embodiments of the present description may be provided as a method, system, or computer program product. Accordingly, the present specification may take the form of an entirely hardware embodiment, an entirely software embodiment, or an embodiment combining software and hardware aspects. Furthermore, the present description can take the form of a computer program product on one or more computer-usable storage media (including, but not limited to, disk storage, CD-ROM, optical storage, etc.) having computer-usable program code embodied therein.
The present description is described with reference to flowchart illustrations and/or block diagrams of methods, apparatus (systems) and computer program products according to embodiments of the specification. It will be understood that each flow and/or block of the flowchart illustrations and/or block diagrams, and combinations of flows and/or blocks in the flowchart illustrations and/or block diagrams, can be implemented by computer program instructions. These computer program instructions may be provided to a processor of a general purpose computer, special purpose computer, embedded processor, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be stored in a computer-readable memory that can direct a computer or other programmable data processing apparatus to function in a particular manner, such that the instructions stored in the computer-readable memory produce an article of manufacture including instruction means which implement the function specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be loaded onto a computer or other programmable data processing apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide steps for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
In one typical configuration, a computing device includes one or more processors (CPUs), input/output interfaces, network interfaces, and memory.
The memory may include volatile memory in a computer-readable medium, random Access Memory (RAM) and/or nonvolatile memory, such as Read Only Memory (ROM) or flash memory (flash RAM). Memory is an example of computer-readable media.
Computer readable media, including both non-transitory and non-transitory, removable and non-removable media, may implement information storage by any method or technology. The information may be computer readable instructions, data structures, modules of a program, or other data. Examples of storage media for a computer include, but are not limited to, phase change memory (PRAM), static Random Access Memory (SRAM), dynamic Random Access Memory (DRAM), other types of Random Access Memory (RAM), read Only Memory (ROM), electrically Erasable Programmable Read Only Memory (EEPROM), flash memory or other memory technology, compact disc read only memory (CD-ROM), digital Versatile Discs (DVD) or other optical storage, magnetic cassettes, magnetic tape magnetic disk storage or other magnetic storage devices, or any other non-transmission medium, which can be used to store information that can be accessed by a computing device. Computer-readable media, as defined herein, does not include transitory computer-readable media (transmission media), such as modulated data signals and carrier waves.
It should also be noted that the terms "comprises," "comprising," or any other variation thereof, are intended to cover a non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements does not include only those elements but may include other elements not expressly listed or inherent to such process, method, article, or apparatus. Without further limitation, an element defined by the phrase "comprising one … …" does not exclude the presence of other like elements in a process, method, article or apparatus that comprises the element.
It will be appreciated by those skilled in the art that embodiments of the present description may be provided as a method, system, or computer program product. Accordingly, the present specification may take the form of an entirely hardware embodiment, an entirely software embodiment or an embodiment combining software and hardware aspects. Furthermore, the present description can take the form of a computer program product on one or more computer-usable storage media (including, but not limited to, disk storage, CD-ROM, optical storage, etc.) having computer-usable program code embodied therein.
The description may be described in the general context of computer-executable instructions, such as program modules, being executed by a computer. Generally, program modules include routines, programs, objects, components, data structures, etc. that perform particular tasks or implement particular abstract data types. The specification may also be practiced in distributed computing environments where tasks are performed by remote processing devices that are linked through a communications network. In a distributed computing environment, program modules may be located in both local and remote computer storage media including memory storage devices.
In this specification, each embodiment is described in a progressive manner, and identical and similar parts of each embodiment are all referred to each other, and each embodiment mainly describes differences from other embodiments. In particular, for system embodiments, since they are substantially similar to method embodiments, the description is relatively simple, as relevant to see a section of the description of method embodiments.
The foregoing is merely exemplary of the present disclosure and is not intended to limit the disclosure. Various modifications and alterations to this specification will become apparent to those skilled in the art. Any modifications, equivalent substitutions, improvements, or the like, which are within the spirit and principles of the present description, are intended to be included within the scope of the claims of the present description.

Claims (11)

1. A walking control method of a humanoid robot, the method comprising:
acquiring a preset foot track, wherein the foot track comprises a first motion stage, a second motion stage and a third motion stage; the first movement stage is from a first moment when standing on the tiptoe to a second moment when the tiptoe is about to leave the ground, the second movement stage is from the second moment when the tiptoe is about to leave the ground to a third moment when the heel is about to land, and the third movement stage is from the third moment when the heel is about to land to a fourth moment when the tiptoe is completely dropped;
Determining a motion parameter of a foot of the humanoid robot at a preset moment in each motion stage, wherein the preset moment comprises a starting moment and/or an ending moment of the stage, and the motion parameter comprises the position and the pitching angle of the foot;
determining the motion parameters of the feet at all moments of the motion stage according to a preset foot track model of the motion stage and motion parameters at preset moments in the motion stage, and obtaining foot tracks of the motion stage;
and controlling the foot action of the humanoid robot during walking according to the foot track of each motion stage.
2. The method of claim 1, wherein the foot trajectory comprises a pitch angle trajectory and a position trajectory of the foot, the position trajectory comprising an x-direction position trajectory, a y-direction position trajectory, and a z-direction position trajectory; the x direction is the advancing direction of the feet of the humanoid robot; the y direction is in a horizontal plane and perpendicular to the x direction, and the positive direction of the y direction is the direction that the right leg of the humanoid robot points to the left leg; the z direction is in a vertical plane and perpendicular to the x direction and the y direction, and the positive direction of the z direction is vertically upward.
3. The method according to claim 2, wherein when the position trajectory is a position trajectory in the y-direction, determining the motion parameters of the foot at all times of the motion phase according to a preset foot trajectory model of the motion phase and the motion parameters at preset times in the motion phase, specifically includes:
determining a first speed of the foot corresponding to the first moment in the y direction according to the position of the foot corresponding to the first moment in the y direction; determining a second speed of the foot corresponding to the fourth time in the y direction according to the position of the foot corresponding to the fourth time in the y direction;
determining a position track of the foot in the y direction according to a preset foot track model of the motion stage, a position of the foot in the y direction in the position of the foot corresponding to the first moment and the fourth moment and the second speed;
and determining the motion parameters of the foot at all moments of the motion stage according to the position track of the foot in the y direction.
4. The method according to claim 2, wherein determining the motion parameters of the foot at all moments of the motion phase according to the pre-set foot trajectory model of the motion phase and the motion parameters at pre-set moments of the motion phase, specifically comprises:
Determining the pitching angle, the angular speed and the pitching angle and the angular speed of the starting moment and the ending moment of the motion stage;
determining a pitch angle track of the motion stage according to the pitch angle and the angular velocity of the motion stage at the starting moment and the pitch angle and the angular velocity of the motion stage at the ending moment;
and determining the motion parameters of the foot at all moments of the motion stage according to the pitch angle track and a preset foot track model of the motion stage.
5. The method of claim 4, wherein when the position trajectory is a position trajectory in the x-direction, determining the motion parameters of the foot at all times of the motion phase according to the pitch angle trajectory and a preset foot trajectory model of the motion phase, specifically includes:
determining a first length of the toe and the foot of the humanoid robot and a second length of the heel and the foot of the humanoid robot;
when the walking control stage of the humanoid robot is a first movement stage, determining a position track of the foot in the x direction according to a preset foot track model of the movement stage, the first length, the position of the foot in the x direction in the position of the foot corresponding to the first time and the pitch angle track;
When the walking control stage of the humanoid robot is a third movement stage, determining a position track of the foot in the x direction according to a preset foot track model of the movement stage, the second length, the position of the foot in the x direction in the position of the foot corresponding to the fourth time and the pitch angle track;
and determining the motion parameters of the foot at all moments of the motion stage according to the determined position track of the foot in the x direction.
6. The method according to claim 4, wherein when the position trajectory is a z-direction position trajectory, determining the motion parameters of the foot at all times of the motion phase according to a preset foot trajectory model of the motion phase and the motion parameters at preset times of the motion phase, specifically includes:
determining a first length of the toe and the foot of the humanoid robot and a second length of the heel and the foot of the humanoid robot;
when the walking control stage of the humanoid robot is a first motion stage, determining a position track of the foot in the z direction according to a preset foot track model of the motion stage, the first length, the position of the foot in the z direction in the position of the foot corresponding to the first time and the pitch angle track;
When the walking control stage of the humanoid robot is a third motion stage, determining a position track of the foot in the z direction according to a preset foot track model of the motion stage, the second length, the position of the foot in the z direction in the position of the foot corresponding to the first time and the pitch angle track;
and determining the motion parameters of the foot at all moments of the motion stage according to the position track of the foot in the z direction.
7. The method according to claim 2, wherein when the foot track is the second motion phase, determining the motion parameters of the foot at all times of the motion phase according to a preset foot track model of the motion phase and the motion parameters at preset times in the motion phase, specifically includes:
determining an intermediate time between the second time and the third time;
determining a pitching angle and an angular speed corresponding to the middle moment;
determining a pitching angle and an angular speed corresponding to the second moment; and determining a pitching angle and an angular velocity corresponding to the third moment;
determining a pitch angle track according to the pitch angle and the angular velocity corresponding to the second moment, the pitch angle and the angular velocity corresponding to the third moment and the pitch angle and the angular velocity corresponding to the middle moment;
And determining the motion parameters of the foot at all moments of the motion stage according to the pitch angle track and a preset foot track model of the motion stage.
8. The method of claim 7, wherein when the position trajectory is a position trajectory in the x-direction, determining the motion parameters of the foot at all times of the motion phase according to the pitch angle trajectory and a preset foot trajectory model of the motion phase, specifically includes:
determining the position and the speed of the foot in the x direction at the second moment; and determining the position and speed of the foot in the x direction at the third moment;
determining the position track of the foot in the x direction according to a preset foot track model of the motion stage, the position and the speed of the foot in the x direction at the second moment and the position and the speed of the foot in the x direction at the third moment;
and determining the motion parameters of the foot at all moments of the motion stage according to the position track of the foot in the x direction and the pitch angle track.
9. The method of claim 7, wherein when the position trajectory is a position trajectory in the z direction, determining the motion parameters of the foot at all times of the motion phase according to the pitch angle trajectory and a preset foot trajectory model of the motion phase, specifically includes:
Determining the position and the speed of the foot in the z direction at the middle moment, and determining the position and the speed of the foot in the z direction at the second moment; determining the position and the speed of the foot in the z direction at the third moment;
determining a position track of the foot in the z direction according to a preset foot track model of the movement stage, the position and the speed of the foot in the z direction at the second moment, the position and the speed of the foot in the z direction at the third moment and the position and the speed of the foot in the z direction at the middle moment;
and determining the motion parameters of the foot at all moments of the motion stage according to the position track of the foot in the z direction and the pitch angle track.
10. A computer-readable storage medium, characterized in that the storage medium stores a computer program which, when executed by a processor, implements the method of any of the preceding claims 1-9.
11. An electronic device comprising a memory, a processor and a computer program stored on the memory and executable on the processor, characterized in that the processor implements the method of any of the preceding claims 1-9 when executing the program.
CN202311337925.0A 2023-10-16 2023-10-16 Walking control method, device and storage medium of humanoid robot Pending CN117452931A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202311337925.0A CN117452931A (en) 2023-10-16 2023-10-16 Walking control method, device and storage medium of humanoid robot

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202311337925.0A CN117452931A (en) 2023-10-16 2023-10-16 Walking control method, device and storage medium of humanoid robot

Publications (1)

Publication Number Publication Date
CN117452931A true CN117452931A (en) 2024-01-26

Family

ID=89584605

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202311337925.0A Pending CN117452931A (en) 2023-10-16 2023-10-16 Walking control method, device and storage medium of humanoid robot

Country Status (1)

Country Link
CN (1) CN117452931A (en)

Citations (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5594644A (en) * 1992-05-22 1997-01-14 Honda Giken Kogyo Kabushiki Kaisha Method and system for generating trajectory of robot and the like
CN101408435A (en) * 2008-10-31 2009-04-15 北京理工大学 Method and apparatus for movement planning of apery robot ankle
CN103257652A (en) * 2012-02-21 2013-08-21 三星电子株式会社 Walking robot and control method thereof
CN105292297A (en) * 2015-11-21 2016-02-03 吉林大学 Bionic foot capable of improving gait naturality and stability of biped robot
CN105388755A (en) * 2015-05-12 2016-03-09 北京理工大学 Energy efficiency optimization control method for leg swing and step taking of humanoid robot
US20160243699A1 (en) * 2015-02-24 2016-08-25 Disney Enterprises, Inc. Method for developing and controlling a robot to have movements matching an animation character
CN106364587A (en) * 2014-12-26 2017-02-01 合肥工业大学 Control method for foot of humanoid robot
CN110053039A (en) * 2018-01-17 2019-07-26 深圳市优必选科技有限公司 The method, apparatus and robot of gravity compensation in a kind of robot ambulation
CN113110484A (en) * 2021-04-30 2021-07-13 深圳市优必选科技股份有限公司 Gait trajectory planning method and device, readable storage medium and robot
JP2021186000A (en) * 2020-05-26 2021-12-13 本田技研工業株式会社 Leg motion recognition device and leg motion assist device
CN113954080A (en) * 2021-11-26 2022-01-21 乐聚(深圳)机器人技术有限公司 Method, device, equipment and medium for planning steering and walking tracks of robot
CN114200947A (en) * 2022-02-15 2022-03-18 之江实验室 Humanoid gait planning method, system and device of biped robot
WO2022134145A1 (en) * 2020-12-22 2022-06-30 深圳市优必选科技股份有限公司 Method and apparatus for planning trajectory for robot to walk down steps, and robot
CN116176728A (en) * 2023-02-23 2023-05-30 清华大学深圳国际研究生院 Two-section type foot end and biped robot

Patent Citations (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5594644A (en) * 1992-05-22 1997-01-14 Honda Giken Kogyo Kabushiki Kaisha Method and system for generating trajectory of robot and the like
CN101408435A (en) * 2008-10-31 2009-04-15 北京理工大学 Method and apparatus for movement planning of apery robot ankle
CN103257652A (en) * 2012-02-21 2013-08-21 三星电子株式会社 Walking robot and control method thereof
CN106364587A (en) * 2014-12-26 2017-02-01 合肥工业大学 Control method for foot of humanoid robot
US20160243699A1 (en) * 2015-02-24 2016-08-25 Disney Enterprises, Inc. Method for developing and controlling a robot to have movements matching an animation character
CN105388755A (en) * 2015-05-12 2016-03-09 北京理工大学 Energy efficiency optimization control method for leg swing and step taking of humanoid robot
CN105292297A (en) * 2015-11-21 2016-02-03 吉林大学 Bionic foot capable of improving gait naturality and stability of biped robot
CN110053039A (en) * 2018-01-17 2019-07-26 深圳市优必选科技有限公司 The method, apparatus and robot of gravity compensation in a kind of robot ambulation
JP2021186000A (en) * 2020-05-26 2021-12-13 本田技研工業株式会社 Leg motion recognition device and leg motion assist device
WO2022134145A1 (en) * 2020-12-22 2022-06-30 深圳市优必选科技股份有限公司 Method and apparatus for planning trajectory for robot to walk down steps, and robot
CN113110484A (en) * 2021-04-30 2021-07-13 深圳市优必选科技股份有限公司 Gait trajectory planning method and device, readable storage medium and robot
CN113954080A (en) * 2021-11-26 2022-01-21 乐聚(深圳)机器人技术有限公司 Method, device, equipment and medium for planning steering and walking tracks of robot
CN114200947A (en) * 2022-02-15 2022-03-18 之江实验室 Humanoid gait planning method, system and device of biped robot
CN116176728A (en) * 2023-02-23 2023-05-30 清华大学深圳国际研究生院 Two-section type foot end and biped robot

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
ZHIBIN LI 等: "Fall Prediction of legged robots based on energy state and its implication of balance augmentation: A study on the humanoid", 2015 IEEE INTERNATIONAL CONFERENCE ON ROBOTICS AND AUTOMATION (ICRA), 31 December 2015 (2015-12-31) *
郭吉昌 等: "全位置焊接机器人逆运动学数值求解及轨迹规划方法", 清华大学学报(自然科学版), vol. 58, no. 3, 31 December 2018 (2018-12-31) *

Similar Documents

Publication Publication Date Title
US11022983B2 (en) Gait control method, device, and terminal device for biped robot
US11061407B2 (en) Biped robot equivalent trajectory generating method and biped robot using the same
Agravante et al. Visual servoing in an optimization framework for the whole-body control of humanoid robots
CN110989636A (en) Method and device for predicting track of obstacle
CN106896796A (en) Industrial robot master-slave mode teaching programmed method based on data glove
CN102478960B (en) Human-computer interaction device and this equipment is used for the apparatus and method of virtual world
KR102365191B1 (en) Method and apparatus for recognizing user motion
CN107291222A (en) Interaction processing method, device, system and the virtual reality device of virtual reality device
CN111054074A (en) Method and device for moving virtual object in game and electronic equipment
CN113050616A (en) Control method for walking of biped robot and biped robot
CN116224892B (en) Control method and device of robot, storage medium and electronic equipment
CN112180989A (en) Robot charging method and device
CN117452931A (en) Walking control method, device and storage medium of humanoid robot
US20230064815A1 (en) Gait control method, biped robot, and computer-readable storage medium
CN111113430B (en) Robot and tail end control method and device thereof
CN116543080A (en) Animation processing method and device based on root bones
KR102580138B1 (en) Character motion generating method for moving to target position and computer apparatus
US20230182307A1 (en) Jumping motion control method for biped robot, biped robot and computer-readable storage medium
CN104616335B (en) A kind of three-dimensional character circulates the method for automatically accumulating of animation
CN116954140B (en) Control method and control device for biped robot to go up and down steps
CN114339428B (en) Method for dynamically playing back tracks and electronic equipment
Okamoto et al. Temporal scaling of leg motion for music feedback system of a dancing humanoid robot
CN117621075A (en) Robot control method, device, storage medium and equipment
CN116126002A (en) Six-foot robot walking track planning based on control of body speed and angular speed
KR100425693B1 (en) Move control method for robot

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination