CN114723807A - Centroid trajectory determination method and device, foot type robot, equipment and medium - Google Patents

Centroid trajectory determination method and device, foot type robot, equipment and medium Download PDF

Info

Publication number
CN114723807A
CN114723807A CN202110004463.5A CN202110004463A CN114723807A CN 114723807 A CN114723807 A CN 114723807A CN 202110004463 A CN202110004463 A CN 202110004463A CN 114723807 A CN114723807 A CN 114723807A
Authority
CN
China
Prior art keywords
foot
target
robot
candidate
coefficient
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
CN202110004463.5A
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.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen Co Ltd
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 Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN202110004463.5A priority Critical patent/CN114723807A/en
Publication of CN114723807A publication Critical patent/CN114723807A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/60Analysis of geometric attributes
    • G06T7/66Analysis of geometric attributes of image moments or centre of gravity
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0212Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory
    • G05D1/0214Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory in accordance with safety or protection criteria, e.g. avoiding hazardous areas
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0212Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory
    • G05D1/0221Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory involving a learning process
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0212Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory
    • G05D1/0223Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory involving speed control of the vehicle
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0231Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means
    • G05D1/0246Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using a video camera in combination with image processing means
    • G05D1/0251Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using a video camera in combination with image processing means extracting 3D information from a plurality of images taken from different locations, e.g. stereo vision
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0276Control of position or course in two dimensions specially adapted to land vehicles using signals provided by a source external to the vehicle
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0276Control of position or course in two dimensions specially adapted to land vehicles using signals provided by a source external to the vehicle
    • G05D1/0278Control of position or course in two dimensions specially adapted to land vehicles using signals provided by a source external to the vehicle using satellite positioning signals, e.g. GPS
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0276Control of position or course in two dimensions specially adapted to land vehicles using signals provided by a source external to the vehicle
    • G05D1/028Control of position or course in two dimensions specially adapted to land vehicles using signals provided by a source external to the vehicle using a RF signal
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/08Control of attitude, i.e. control of roll, pitch, or yaw
    • G05D1/0891Control of attitude, i.e. control of roll, pitch, or yaw specially adapted for land vehicles
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • G06T7/246Analysis of motion using feature-based methods, e.g. the tracking of corners or segments
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • G06T7/73Determining position or orientation of objects or cameras using feature-based methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10004Still image; Photographic image
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10016Video; Image sequence
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30241Trajectory

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Remote Sensing (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • Automation & Control Theory (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Theoretical Computer Science (AREA)
  • Multimedia (AREA)
  • Geometry (AREA)
  • Electromagnetism (AREA)
  • Manipulator (AREA)

Abstract

The embodiment of the application discloses a method and a device for determining a center of mass orbit, a foot-type robot, equipment and a medium, and belongs to the technical field of computers. The method comprises the following steps: the method comprises the steps of obtaining a candidate foot-falling point position of at least one foot at a target position configured by the foot robot and a coefficient of each candidate foot-falling point position, determining target state data of the foot robot at the target position, determining predicted state data of the foot robot at the target position according to target moving time and first relation data, creating second relation data according to a state data error between the target state data and the predicted state data, determining a constant and a value of the coefficient when a target value is a minimum value, obtaining the first relation data corresponding to the constant and the target foot-falling point position, ensuring accuracy of the value of the constant and the value of the coefficient of each candidate foot-falling point position, ensuring feasibility of moving the foot robot to the target position, being applicable to the foot robot with any foot number, and being wide in application range.

Description

Centroid trajectory determination method and device, foot type robot, equipment and medium
Technical Field
The embodiment of the application relates to the technical field of computers, in particular to a method and a device for determining a center of mass trajectory, a foot type robot, equipment and a medium.
Background
The legged robot is provided with a plurality of feet, and the legged robot can be moved by controlling the lifting or dropping of the feet through joints provided on the plurality of feet, thereby realizing the purpose that the legged robot simulates the walking of an animal or a human. When the foot type robot moves, the centroid track of the foot type robot needs to be determined firstly, and therefore the centroid position of the foot type robot at each time point is determined according to the determined centroid track.
In the related art, a mass center trajectory determination method is provided, in which a state of each joint in each foot of a foot-type robot is detected, and an operation is performed according to the state of each joint in each foot to determine a mass center trajectory of the foot-type robot. Since the calculation amount is large if the number of joints of the legged robot is large, the above method is only applicable to a case where the number of joints of the legged robot is small, and the application range is narrow.
Disclosure of Invention
The embodiment of the application provides a mass center trajectory determination method and device, a foot type robot, equipment and a medium, and the application range can be enlarged. The technical scheme is as follows:
in one aspect, a method for determining a center of mass trajectory is provided, the method comprising:
acquiring a candidate foot-landing point position of at least one foot configured by the foot-type robot at a target position and a coefficient beta of each candidate foot-landing point position, wherein the value of the coefficient beta is not determined;
determining target state data of the legged robot at the target position according to the candidate foot-landing point position of the at least one foot and the coefficient beta of each candidate foot-landing point position;
creating first relationship data indicating a relationship between an interval duration t and a centroid position p (t) of the legged robot, the first relationship data including a constant C whose value is undetermined;
determining the predicted state data of the legged robot at the target position according to the target moving duration and the first relation data;
creating second relationship data according to a state data error between the target state data and the predicted state data, the second relationship data indicating a positive correlation between a target value J and the state data error;
and determining values of the constant C and the coefficient beta of each candidate foot-falling point position when the target value J is the minimum value according to the second relation data, and acquiring first relation data corresponding to the constant C with the determined values and the target foot-falling point position of the at least one foot in the target position.
In one possible implementation, the stepping duration constraint is used to indicate that a sum of coefficients β of candidate foot-landing-point positions of the legged robot at the plurality of sampling time points is not greater than a reference value, and the reference value is smaller than the number of the plurality of sampling time points.
In another possible implementation manner, the value of the coefficient β includes 1 or 0, where 1 represents that the foot of the foot robot falls on the candidate foot-falling point position corresponding to the coefficient β, and 0 represents that the foot of the foot robot does not fall on the candidate foot-falling point position corresponding to the coefficient β;
the acquiring of the first relationship data corresponding to the constant C whose value is determined and the target foot-landing position of the at least one foot at the target position includes:
acquiring first relation data corresponding to the constant C with the determined value, wherein the first relation data is used for expressing the centroid track of the legged robot;
and determining the candidate foot-falling point position corresponding to the coefficient beta with the value of 1 as the target foot-falling point position according to the value of the coefficient beta of each candidate foot-falling point position.
In another possible implementation, the target state data includes a target centroid position, and the predicted state data includes a predicted centroid position; creating second relationship data based on the state data error between the target state data and the predicted state data, comprising:
determining a first difference between the target centroid position and the predicted centroid position;
setting the target value J to the square of the first difference.
In another possible implementation, the target state data includes a target centroid velocity, and the predicted state data includes a predicted centroid velocity; creating second relationship data based on a state data error between the target state data and the predicted state data, comprising:
determining a second difference between the target centroid velocity and the predicted centroid velocity;
setting the target value J to the square of the second difference.
In another possible implementation, the target state data includes a target centroid acceleration, and the predicted state data includes a predicted centroid acceleration; creating second relationship data based on the state data error between the target state data and the predicted state data, comprising:
determining a third difference between the target centroid acceleration and the predicted centroid acceleration;
setting the target value J to the square of the third difference.
In another possible implementation manner, the creating second relationship data according to the state data error between the target state data and the predicted state data includes:
selecting a plurality of sampling time points in the target moving duration;
determining fourth relation data corresponding to each sampling time point according to the interval duration between each sampling time point and the initial time point and the first relation data, wherein the fourth relation data indicate the relation between the constant C and a sampling centroid position Q (C), and the sampling centroid position Q (C) indicates the centroid position of the legged robot at the corresponding sampling time point;
creating the second relationship data from the state data error and the fourth relationship data, the second relationship data indicating a positive correlation between the target value J and the state data error and the sampling centroid position Q (C).
In another possible implementation, the target state data includes a target centroid position, and the predicted state data includes a predicted centroid position; creating the second relationship data according to the state data error and the fourth relationship data, including:
determining a first difference between the target centroid position and the predicted centroid position;
setting the target value J as a sum of a first value and a second value, the first value being a square of the first difference, the second value being a weighted sum of squares of a plurality of distances including an initial centroid position of the initial position, a distance between any two adjacent centroid positions of the plurality of sampled centroid positions and the predicted centroid position.
In another possible implementation, the target state data includes a target centroid velocity, and the predicted state data includes a predicted centroid velocity; creating the second relationship data according to the state data error and the fourth relationship data, including:
determining a second difference between the target centroid velocity and the predicted centroid velocity;
setting the target value J as a sum of a third value and a second value, the third value being a square of the second difference, the second value being a weighted sum of squares of a plurality of distances, the plurality of distances including an initial centroid position of the initial position, a distance between any two adjacent centroid positions of the plurality of sampled centroid positions and the predicted centroid position.
In another possible implementation, the target state data includes a target centroid acceleration, and the predicted state data includes a predicted centroid acceleration; creating the second relationship data according to the state data error and the fourth relationship data, including:
determining a third difference between the target centroid acceleration and the predicted centroid acceleration;
setting the target value J as a sum of a fourth value and a second value, the fourth value being a square of the third difference, the second value being a weighted sum of squares of a plurality of distances, the plurality of distances including an initial centroid position of the initial position, a distance between any two adjacent centroid positions of the plurality of sampled centroid positions and the predicted centroid position.
In another possible implementation, the second relation data indicates the target value J and the state data error and the acting force f applied to the at least one foot of the legged robot configuration when contacting the groundiPositive correlation between the quadratic terms of (a); the determining, according to the second relationship data, values of the constant C and the coefficient β of each candidate foot-landing point position when the target value J is the minimum value includes:
creating fifth relational data corresponding to at least one foot of the foot robot configuration, the fifth relational data corresponding to the at least one foot respectively indicating an acting force f corresponding to the at least one footiIn relation to the interval duration t, said force fiIndicating the acting force applied to the ith foot of the foot type robot when the ith foot is in contact with the ground, wherein i is a positive integer, and the fifth relation data comprises an undetermined valueA fixed constant C;
and determining the values of the constant C and the coefficient beta of each candidate foot-falling point position when the target value J is the minimum value according to the second relation data and the fifth relation data.
In another possible implementation manner, the creating fifth relationship data corresponding to at least one foot of the legged robot configuration includes:
creating sixth relational data indicating a relation between the angular momentum L of the foot robot and the interval duration t;
creating seventh relationship data indicative of an applied force f corresponding to the at least one footi(L) a negative correlation with said angular momentum L;
and creating fifth relational data corresponding to the at least one foot according to the sixth relational data and the seventh relational data.
In another possible implementation manner, the determining, according to the second relationship data, values of the constant C and the coefficient β of each candidate foot-drop position when the target value J is the minimum value includes:
creating eighth relationship data, ninth relationship data and tenth relationship data according to the first relationship data and the initial time point, wherein the eighth relationship data indicates the relationship between the initial centroid position of the legged robot at the initial position and the constant C, the ninth relationship data indicates the relationship between the initial centroid speed of the legged robot at the initial position and the constant C, and the tenth relationship data indicates the relationship between the initial centroid acceleration of the legged robot at the initial position and the constant C;
and determining values of the constant C and the coefficient beta of each candidate foot-falling point position when the target value J is the minimum value according to the eighth relation data, the ninth relation data, the tenth relation data and the second relation data.
In another possible implementation manner, the determining the predicted state data of the legged robot at the target position according to the target moving time and the first relation data includes:
and determining the predicted centroid position of the legged robot after the initial position passes through the target moving time length according to the first relation data.
In another possible implementation manner, the determining the predicted state data of the legged robot at the target position according to the target moving time and the first relation data includes:
according to the first relation data, establishing relation data between the interval duration t and the mass center speed of the foot type robot;
and determining the predicted centroid speed of the legged robot after the initial position passes through the target moving time length according to the created relation data.
In another possible implementation manner, the determining the predicted state data of the legged robot at the target position according to the target moving time and the first relation data includes:
according to the first relation data, establishing relation data between the interval duration t and the mass center acceleration of the foot type robot;
and determining the predicted centroid acceleration of the legged robot after the initial position passes through the target moving time length according to the created relation data.
In another possible implementation manner, after the obtaining of the first relationship data corresponding to the constant C whose value is determined, the method further includes:
in the moving process of the foot type robot, determining the time length t of the foot type robot at any interval according to the first relation data0Centroid position of time P (t)0);
According to the centroid position P (t)0) And the target position, determining joints of multiple joints of the foot robotTorque;
and controlling the joints to rotate according to the joint torques of the joints to drive the foot type robot to move.
In another aspect, there is provided a center of mass trajectory determination apparatus, the apparatus comprising:
the acquisition module is used for acquiring candidate foot-falling point positions of at least one foot configured by the foot-type robot at a target position and a coefficient beta of each candidate foot-falling point position, wherein the value of the coefficient beta is not determined;
the data determining module is used for determining target state data of the legged robot at the target position according to the candidate foot-landing position of the at least one foot and the coefficient beta of each candidate foot-landing position;
a creating module configured to create first relationship data, where the first relationship data indicates a relationship between an interval duration t and a centroid position p (t) of the legged robot, and the first relationship data includes a constant C whose value is not determined;
the data determination module is further configured to determine predicted state data of the legged robot at the target position according to the target movement duration and the first relation data;
the creating module is further configured to create second relationship data according to a state data error between the target state data and the predicted state data, where the second relationship data indicates a positive correlation between a target value J and the state data error;
and a constant determining module, configured to determine, according to the second relationship data, values of the constant C and the coefficient β of each candidate foot-landing point position when the target value J is a minimum value, and obtain first relationship data corresponding to the constant C whose value is determined, and a target foot-landing point position of the at least one foot at the target position.
In one possible implementation, the target state data includes a target centroid location; the data determination module comprises:
a coordinate determination unit, configured to determine the sum of products of the coordinates of each candidate foot-landing point position and a corresponding coefficient β as the coordinate of the center position of the legged robot;
and the first position determining unit is used for determining a position above the central position and separated from the central position by the height of the legged robot as the target centroid position according to the coordinates of the central position.
In another possible implementation manner, the constant determination module includes:
a condition creating unit, configured to create a spatial constraint condition of the at least one foot according to the first relationship data, where the spatial constraint condition is used to indicate a spatial range in which the at least one foot is movable, and the spatial constraint condition includes the constant C and a coefficient β of each candidate foot-landing point position;
and a value determination unit, configured to determine, according to the second relationship data, a value of the constant C and a coefficient β of each candidate landing point position when the target value J is a minimum value under the condition that the space constraint condition is satisfied.
In another possible implementation manner, the constant determination module includes:
the condition creating unit is used for creating an acting force constraint condition, the acting force constraint condition is used for indicating that the acting force applied to the at least one foot in contact with the ground at each corresponding candidate foot-landing point position is not greater than an acting force extreme value corresponding to each candidate foot-landing point position, and the acting force constraint condition comprises a coefficient beta of each candidate foot-landing point position;
and the value determination unit is used for determining the values of the constant C and the coefficient beta of each candidate foot-falling point position when the target value J is the minimum value under the condition of meeting the acting force constraint condition according to the second relation data.
In another possible implementation manner, the value of the coefficient β includes 1 or 0, 1 indicates that the foot of the foot robot falls on the candidate foot-falling point position corresponding to the coefficient β, and 0 indicates that the foot of the foot robot does not fall on the candidate foot-falling point position corresponding to the coefficient β;
the constant determination module includes:
a condition creating unit for creating a coefficient constraint condition of the at least one foot, wherein the coefficient constraint condition is used for indicating that the sum of coefficients beta of a plurality of candidate foot-falling point positions of each foot is not more than 1 at any time point in the moving process of the foot-type robot;
and a value determination unit, configured to determine, according to the second relationship data, a value of the constant C and a coefficient β of each candidate landing point position when the target value J is a minimum value under the condition that the coefficient constraint condition of the at least one leg is satisfied.
In another possible implementation manner, the constant determination module includes:
a first data creating unit configured to create third correlation data indicating a relationship between a sum of coefficients β of candidate foot-landing point positions of the foot robot and a number of feet of the foot robot when the foot robot is at a target position;
and the value determination unit is used for determining the values of the constant C and the coefficient beta of each candidate foot-falling point position when the target value J is the minimum value according to the second relation data and the third relation data.
In another possible implementation manner, the constant determination module includes:
the first selection unit is used for selecting a plurality of sampling time points in the target moving duration;
a coefficient determining unit for determining a coefficient β of a candidate foot landing point position of the at least one foot at each sampling time point;
a condition creating unit, configured to create a stepping timing constraint condition according to a coefficient β of a candidate foot-drop point position of the at least one foot at each sampling time point, where the stepping timing constraint condition is used to indicate a relationship between the coefficients β of the candidate foot-drop point position of each foot at the multiple sampling time points in a process that the legged robot moves from an initial position to a target position;
and the value determination unit is used for determining the values of the constant C and the coefficient beta of each candidate foot-falling point position when the target value J is the minimum value under the condition that the stepping time sequence constraint condition is met according to the second relation data.
In another possible implementation manner, the step timing constraint is used to indicate that a coefficient β of any candidate foot-drop point position of any foot of the legged robot at a previous sampling time point is not greater than a coefficient β of any candidate foot-drop point position at a next sampling time point.
In another possible implementation manner, the step timing constraint is used to indicate that a coefficient β of an initial foot-drop point position of any one foot of the legged robot at a previous sampling time point is not smaller than a coefficient β of the initial foot-drop point position at a next sampling time point.
In another possible implementation manner, the value determination unit is configured to create a stepping duration constraint condition, where the stepping duration constraint condition is used to indicate that a sum of coefficients β of candidate foot-landing point positions of the legged robot at the multiple sampling time points is smaller than the number of the multiple sampling time points; and according to the second relation data, under the condition that the stepping time sequence constraint condition and the stepping duration constraint condition are met, determining the values of the constant C and the coefficient beta of each candidate foot-falling point position when the target value J is the minimum value.
In another possible implementation manner, the stepping duration constraint is used to indicate that a sum of coefficients β of candidate foot-landing point positions of the legged robot at the plurality of sampling time points is not greater than a reference value, and the reference value is smaller than the number of the plurality of sampling time points.
In another possible implementation, the second relationship data indicates a positive correlation between the target value J and a sum of the state data error and a coefficient β of a candidate foot-drop point position of the legged robot.
In another possible implementation manner, the value of the coefficient β includes 1 or 0, where 1 represents that the foot of the foot robot falls on the candidate foot-falling point position corresponding to the coefficient β, and 0 represents that the foot of the foot robot does not fall on the candidate foot-falling point position corresponding to the coefficient β;
the constant determination module includes:
the data acquisition unit is used for acquiring first relation data corresponding to the constant C with the determined value, and the first relation data is used for expressing the centroid track of the legged robot;
and the second position determining unit is used for determining the candidate foot-falling point position corresponding to the coefficient beta with the value of 1 as the target foot-falling point position according to the value of the coefficient beta of each candidate foot-falling point position.
In another possible implementation, the target state data includes a target centroid position, and the predicted state data includes a predicted centroid position; the creation module includes:
a difference determination unit for determining a first difference between the target centroid position and the predicted centroid position;
a setting unit for setting the target value J to the square of the first difference.
In another possible implementation, the target state data includes a target centroid velocity, and the predicted state data includes a predicted centroid velocity; the creation module includes:
a difference determination unit for determining a second difference between the target centroid velocity and the predicted centroid velocity;
a setting unit configured to set the target value J to a square of the second difference.
In another possible implementation, the target state data includes a target centroid acceleration, and the predicted state data includes a predicted centroid acceleration; the creation module includes:
a difference determination unit for determining a third difference between the target centroid acceleration and the predicted centroid acceleration;
a setting unit configured to set the target value J to a square of the third difference.
In another possible implementation manner, the creating module includes:
the second selection unit is used for selecting a plurality of sampling time points in the target moving duration;
a data determining unit, configured to determine fourth relationship data corresponding to each sampling time point according to an interval duration between each sampling time point and the initial time point and the first relationship data, where the fourth relationship data indicates a relationship between the constant C and a sampling centroid position q (C), and the sampling centroid position q (C) indicates a centroid position of the legged robot at the corresponding sampling time point;
a second data creating unit configured to create the second relationship data according to the state data error and the fourth relationship data, where the second relationship data indicates a positive correlation between the target value J and the state data error and the sampling centroid position q (c).
In another possible implementation, the target state data includes a target centroid position, and the predicted state data includes a predicted centroid position; the second data creation unit to determine a first difference between the target centroid position and the predicted centroid position; setting the target value J as a sum of a first value and a second value, the first value being a square of the first difference, the second value being a weighted sum of squares of a plurality of distances including an initial centroid position of the initial position, a distance between any two adjacent centroid positions of the plurality of sampled centroid positions and the predicted centroid position.
In another possible implementation, the target state data includes a target centroid velocity, and the predicted state data includes a predicted centroid velocity; the second data creation unit to determine a second difference between the target centroid velocity and the predicted centroid velocity; setting the target value J as a sum of a third value and a second value, the third value being a square of the second difference, the second value being a weighted sum of squares of a plurality of distances, the plurality of distances including an initial centroid position of the initial position, a distance between any two adjacent centroid positions of the plurality of sampled centroid positions and the predicted centroid position.
In another possible implementation, the target state data includes a target centroid acceleration, and the predicted state data includes a predicted centroid acceleration; the second data creation unit is used for determining a third difference value between the target centroid acceleration and the predicted centroid acceleration; setting the target value J as a sum of a fourth value and a second value, the fourth value being a square of the third difference, the second value being a weighted sum of squares of a plurality of distances, the plurality of distances including an initial centroid position of the initial position, a distance between any two adjacent centroid positions of the plurality of sampled centroid positions and the predicted centroid position.
In another possible implementation, the second relation data indicates the target value J and the state data error and the acting force f applied by at least one foot of the legged robot configuration contacting the groundiPositive correlation between the quadratic terms of (a); the constant determination module includes:
a first data creating unit for creating fifth relation data corresponding to at least one foot of the foot robot configuration, the fifth relation data corresponding to the at least one foot respectively indicating an acting force f corresponding to the at least one footiIn relation to the interval duration t, said force fiIndicating the acting force applied to the ith foot of the legged robot when the ith foot is in contact with the ground, wherein i is a positive integer, and the fifth relational data comprises a constant C with an undetermined value;
and the value determination unit is used for determining the value of the constant C and the coefficient beta of each candidate foot-falling point position when the target value J is the minimum value according to the second relation data and the fifth relation data.
In another possible implementation manner, the first data creating unit is configured to create sixth relational data,the sixth relationship data indicates a relationship between the angular momentum L of the legged robot and the interval duration t; creating seventh relationship data indicative of an applied force f corresponding to the at least one footi(L) a negative correlation with said angular momentum L; and creating fifth relation data corresponding to the at least one foot according to the sixth relation data and the seventh relation data.
In another possible implementation manner, the constant determination module includes:
a first data creating unit configured to create eighth relationship data, ninth relationship data, and tenth relationship data according to the first relationship data and the initial time point, the eighth relationship data indicating a relationship between an initial centroid position of the legged robot at the initial position and the constant C, the ninth relationship data indicating a relationship between an initial centroid velocity of the legged robot at the initial position and the constant C, and the tenth relationship data indicating a relationship between an initial centroid acceleration of the legged robot at the initial position and the constant C;
and a value determination unit, configured to determine, according to the eighth relationship data, the ninth relationship data, the tenth relationship data, and the second relationship data, a value of the constant C and a coefficient β of each candidate landing point position when the target value J is a minimum value.
In another possible implementation, the predicted state data includes a predicted centroid location, and the data determination module includes:
and the third position determining unit is used for determining the predicted centroid position of the legged robot after the initial position passes through the target moving time length according to the first relation data.
In another possible implementation, the predicted state data includes a predicted centroid velocity, and the data determination module includes:
a third data creating unit, configured to create, according to the first relationship data, relationship data between the interval duration t and a centroid speed of the legged robot;
and the speed determining unit is used for determining the predicted centroid speed of the legged robot after the legged robot passes through the target moving time length from the initial position according to the created relation data.
In another possible implementation, the predicted state data includes a predicted centroid acceleration, and the data determination module includes:
a third data creating unit, configured to create, according to the first relationship data, relationship data between the interval duration t and a centroid acceleration of the legged robot;
and the acceleration determining unit is used for determining the predicted centroid acceleration of the legged robot after the legged robot passes through the target moving time length from the initial position according to the created relation data.
In another possible implementation manner, after the obtaining of the first relationship data corresponding to the constant C whose value is determined, the apparatus further includes:
a position determining module, configured to determine, according to the first relationship data, a time duration t of the legged robot at any interval during a moving process of the legged robot0Centroid position of time P (t)0);
A torque determination module for determining the torque according to the centroid position P (t)0) And the target position, determining joint torques of a plurality of joints of the legged robot;
and the control module is used for controlling the joints to rotate according to the joint torques of the joints so as to drive the foot type robot to move.
In another aspect, a legged robot is provided, comprising a processor and a memory, in which at least one computer program is stored, the at least one computer program being loaded and executed by the processor to perform the operations performed in the method for determining a trajectory of a centroid as described in the above aspect.
In another aspect, a control device is provided, the control device comprising a processor and a memory, the memory having stored therein at least one computer program, the at least one computer program being loaded and executed by the processor to perform the operations performed in the centroid trajectory determination method as described in the above aspect.
In another aspect, a computer-readable storage medium is provided, in which at least one computer program is stored, the at least one computer program being loaded and executed by a processor to implement the operations performed in the centroid trajectory determination method according to the above-mentioned aspect.
In yet another aspect, a computer program product or a computer program is provided, the computer program product or the computer program comprising computer program code, the computer program code being stored in a computer readable storage medium. The processor of the control device reads the computer program code from the computer-readable storage medium, and executes the computer program code, so that the control device implements the operations performed in the centroid trajectory determination method as described in the above aspect.
The beneficial effects brought by the technical scheme provided by the embodiment of the application at least comprise:
the method, the device, the foot robot, the equipment and the medium provided by the embodiment of the application do not need to detect the state of each joint of the foot robot, determine the target state data of the foot robot at the target position through the candidate foot-landing point position of the foot robot, predict the predicted state data of the foot robot at the target position through the first relation data, then determine the constant C in the first relation data and the value of the coefficient beta of each candidate foot-landing point position by minimizing the state data error between the predicted state data and the expected target state data, ensure the accuracy of the value of the constant C and the value of the coefficient beta of each candidate foot-landing point position, determine the corresponding centroid trajectory according to the determined constant C, improve the accuracy of the centroid trajectory of the foot robot, and further can take the value of the coefficient beta of each candidate foot-landing point position according to the determined value of the constant C, the method has the advantages that the target foot-falling point position of at least one foot when the foot type robot moves to the target position is determined, the feasibility of moving the foot type robot to the target position is guaranteed, the method can be applied to the foot type robot with any number of feet, and the application range is wide.
Drawings
In order to more clearly illustrate the technical solutions in the embodiments of the present application, the drawings needed to be used in the description of the embodiments are briefly introduced below, and it is obvious that the drawings in the following description are only some embodiments of the present application, and it is obvious for those skilled in the art to obtain other drawings based on these drawings without creative efforts.
FIG. 1 is a schematic diagram of an implementation environment provided by an embodiment of the present application;
fig. 2 is a flowchart of a method for determining a centroid trajectory according to an embodiment of the present application;
fig. 3 is a flowchart of a method for determining a centroid trajectory according to an embodiment of the present application;
fig. 4 is a schematic structural diagram of a foot robot according to an embodiment of the present application;
FIG. 5 is a schematic diagram of a movable space range of a foot robot according to an embodiment of the present application;
FIG. 6 is a frame diagram of a legged robot system for controlling the movement of a legged robot according to an embodiment of the present application;
fig. 7 is a schematic diagram of a moving process of a legged robot according to an embodiment of the present application;
fig. 8 is a schematic structural diagram of a mass center trajectory determination apparatus according to an embodiment of the present application;
fig. 9 is a schematic structural diagram of a mass center trajectory determination apparatus according to an embodiment of the present application;
fig. 10 is a schematic structural diagram of a terminal according to an embodiment of the present application;
fig. 11 is a schematic structural diagram of a server according to an embodiment of the present application.
Detailed Description
To make the objects, technical solutions and advantages of the embodiments of the present application more clear, the embodiments of the present application will be further described in detail with reference to the accompanying drawings.
As used herein, the terms "first," "second," "third," "fourth," "fifth," "sixth," "seventh," "eighth," "ninth," and the like may be used herein to describe various concepts, which are not limited by these terms unless otherwise specified. These terms are only used to distinguish one concept from another. For example, the first relationship data may be referred to as second relationship data, and similarly, the second relationship data may be referred to as first relationship data, without departing from the scope of the present application.
As used herein, the terms "at least one," "a plurality," "each," and "any," at least one of which includes one, two, or more than two, and a plurality of which includes two or more than two, each of which refers to each of the corresponding plurality, and any of which refers to any of the plurality. For example, the plurality of sampling time points includes 3 sampling time points, each of the 3 sampling time points refers to each of the 3 sampling time points, and any one of the 3 sampling time points refers to any one of the 3 sampling time points, which may be a first sampling time point, a second sampling time point, or a third sampling time point.
Artificial Intelligence (AI) is a theory, method, technique and application system that uses a digital computer or a machine controlled by a digital computer to simulate, extend and expand human Intelligence, perceive the environment, acquire knowledge and use the knowledge to obtain the best results. In other words, artificial intelligence is a comprehensive technique of computer science that attempts to understand the essence of intelligence and produce a new intelligent machine that can react in a manner similar to human intelligence. Artificial intelligence is the research of the design principle and the realization method of various intelligent machines, so that the machines have the functions of perception, reasoning and decision making.
The artificial intelligence technology is a comprehensive subject and relates to the field of extensive technology, namely the technology of a hardware level and the technology of a software level. The artificial intelligence infrastructure generally includes technologies such as sensors, dedicated artificial intelligence chips, cloud computing, distributed storage, big data processing technologies, operation/interaction systems, mechatronics, and the like. The artificial intelligence software technology mainly comprises a computer vision technology, a voice processing technology, a natural language processing technology, machine learning/deep learning and the like.
Computer Vision technology (CV) Computer Vision is a science for researching how to make a machine "see", and further refers to that a camera and a Computer are used to replace human eyes to perform machine Vision such as identification, tracking and measurement on a target, and further image processing is performed, so that the Computer processing becomes an image more suitable for human eyes to observe or transmitted to an instrument to detect. As a scientific discipline, computer vision research-related theories and techniques attempt to build artificial intelligence systems that can capture information from images or multidimensional data. Computer vision technologies generally include image processing, image recognition, image semantic understanding, image retrieval, OCR, video processing, video semantic understanding, video content/behavior recognition, three-dimensional object reconstruction, 3D technologies, virtual reality, augmented reality, synchronous positioning, map construction, and other technologies, and also include common biometric technologies such as face recognition and fingerprint recognition.
According to the scheme provided by the embodiment of the application, the foot type robot can determine the target position based on the computer vision technology of artificial intelligence, so that the foot type robot can move to the target position subsequently.
The centroid trajectory determination method provided by the embodiment of the application can be applied to a foot type robot. When the foot type robot moves, a centroid track moving from an initial position to a target position and a target foot-falling position of feet of the foot type robot when the foot type robot moves to the target position are determined, and then the centroid position of any time point of the foot type robot in the moving process is determined through the centroid track, so that at least one foot of the foot type robot is controlled to lift or fall, the centroid of the foot type robot moves according to the centroid track in the process that the foot type robot moves from the initial position to the target position, and the walking of the foot type robot is realized.
The centroid trajectory determination method provided by the embodiment of the application can also be applied to control equipment. Optionally, the control device 102 is a server or other form of device. Optionally, the server is an independent physical server, or a server cluster or distributed system formed by a plurality of physical servers, or a cloud server providing basic cloud computing services such as a cloud service, a cloud database, cloud computing, a cloud function, cloud storage, a web service, cloud communication, a middleware service, a domain name service, a security service, a CDN, and a big data and artificial intelligence platform.
Fig. 1 is a schematic structural diagram of an implementation environment provided by an embodiment of the present application, and as shown in fig. 1, the implementation environment includes a legged robot 101 and a server 102, the legged robot 101 establishes a communication connection with the server 102, and performs interaction through the established communication connection.
The legged robot 101 is used to control at least one foot to lift or fall, so as to realize walking of the legged robot. The server 102 is configured to provide a service for the legged robot 101, determine a centroid trajectory for the legged robot 101, and send the determined centroid trajectory to the legged robot 101, so that the legged robot 101 moves according to the centroid trajectory.
Optionally, the legged robot 101 is configured with a sensing system, and through the sensing system, an environment image of the legged robot 101 in the moving direction is obtained, the environment image is sent to the server 102, the server 102 processes the environment image to obtain candidate foot-placement positions of the legged robot at the target position, and then the centroid trajectory of the legged robot 101 is determined according to the candidate foot-placement positions at the target position.
The method provided by the embodiment of the application can be used for various scenes.
For example, in a legged robot movement scenario:
determining a target position to be reached by the foot type robot in the moving process, determining a centroid track of the foot type robot moving from an initial position to the target position and a target foot-falling position of feet of the foot type robot at the target position by adopting the centroid track determining method provided by the embodiment of the application, and then determining the centroid position of the foot type robot at any time point in the moving process through the centroid track, thereby controlling at least one foot of the foot type robot to lift or fall, so that in the process that the foot type robot moves from the initial position to the target position, the centroid position of the foot type robot can move according to the centroid track, the walking of the foot type robot is realized, the moving stability of the foot type robot is ensured, and when the robot moves to the target position, the feet of the foot type robot fall on the position of the target foot falling point, so that the moving feasibility of the foot type robot is ensured.
For another example, in a remote control legged robot movement scenario:
in the moving process of the foot type robot, the server can control the foot type robot to move. In the process that the server controls the foot type robot to move, the server determines a centroid track of the foot type robot moving from an initial position to a target position and a target foot-falling point position of a foot of the foot type robot in the target position by adopting the centroid position determining method provided by the embodiment of the application, the centroid moving track and the target foot-falling point position are sent to the foot type robot, the foot type robot controls the centroid position of the foot type robot to move along the centroid moving track, and when the foot type robot moves to the target position, the foot of the foot type robot falls on the target foot-falling point position, and the mode of remotely controlling the foot type robot to move is achieved.
Fig. 2 is a flowchart of a method for determining a centroid trajectory according to an embodiment of the present application, which is applied to a legged robot, and as shown in fig. 2, the method includes:
201. the foot robot acquires the candidate foot-landing point position of at least one foot configured by the foot robot at the target position and the coefficient beta of each candidate foot-landing point position.
In the embodiment of the application, the legged robot is a robot which simulates the walking posture of an animal or a human being to move, is provided with at least one foot, and is driven to move by controlling the lifting or falling of the foot, so that the walking of the legged robot is realized.
The target position is a position to be reached by the foot type robot, each foot of the foot type robot is provided with a plurality of candidate foot-falling point positions on the target position, and each candidate foot-falling point position is a position of a possible foot-falling point of the foot type robot. Each candidate foot-landing point position has a coefficient beta, the coefficient beta is used for representing the possibility that the foot of the foot robot falls on the candidate foot-landing point corresponding to the coefficient beta, and the value of the coefficient beta is not determined.
In the embodiment of the application, the centroid track of the foot type robot is the track which the centroid of the foot type robot passes through during the moving process of the foot type robot. Before the foot type robot starts to move from the initial position to the target position, a centroid track of the foot type robot in the process of moving from the initial position to the target position and a target foot-falling point position of each foot of the foot type robot in the target position need to be determined, and then the foot type robot is controlled to move to the target position according to the determined centroid track and the target foot-falling point position, so that the centroid of the foot type robot moves along the centroid track in the moving process, and the moving feasibility of the foot type robot is guaranteed.
202. And the foot type robot determines the target state data of the foot type robot at the target position according to the candidate foot-landing point position of at least one foot and the coefficient beta of each candidate foot-landing point position.
The target state data is used for representing state data which the foot robot is expected to have when the foot robot moves to a target position, and the target state data is related to the coefficient beta of each candidate landing point position.
203. The foot robot creates first relation data, the first relation data indicating a relation between the interval duration t and a centroid position p (t) of the foot robot, the first relation data including a constant C whose value is undetermined.
The interval duration t indicates the duration of an interval between any time point in the process that the foot robot moves from the initial position to the target position and the initial time point corresponding to the initial position. The centroid position p (t) indicates a centroid position of the legged robot at the interval duration t, and the first relationship data includes a constant C with an undetermined value, where the constant C is a centroid position parameter and is used to represent a relationship between the interval duration t and the centroid position p (t), and can be used as a coefficient of the interval duration t.
Since the value of the constant C included in the first relationship data is not determined, the first relationship data acquired at this time is not determined. Subsequently, if the value of the constant C is determined, the first relationship data corresponding to the constant C whose value is determined can be obtained, so that the centroid position p (t) of the legged robot at any interval time t can be obtained.
204. And the foot type robot determines the predicted state data of the foot type robot at the target position according to the target moving time and the first relation data.
Wherein the target moving time length indicates a time length required for the foot robot to move from the initial position to the target position. The predicted state data is state data obtained from the first relation data, and is state data that can be reached when the legged robot moves to the target position. Since the first relational data includes the constant C whose value is not determined, the predicted state data obtained by the first relational data is related to the constant C whose value is not determined.
205. The legged robot creates second relationship data based on a state data error between the target state data and the predicted state data.
Wherein the second relationship data indicates a positive relationship between the target value J and the state data error.
Wherein the state data error is indicative of an error between the target data and the predicted state data of the foot robot when the foot robot is at the target position. The second relationship data indicates a positive correlation between the target value J and the state data error, the larger the target value J, and the smaller the state data error, the smaller the target value J.
Since the predicted state data is related to the constant C and the target state data is related to the coefficient β of each candidate landing point position, and the state data error is also related to the constant C and the coefficient β of each candidate landing point position, the target value J is related to the constant C and the coefficient β of each candidate landing point position, that is, the second relationship data includes the constant C whose value is undetermined and the coefficient β of each candidate landing point position.
206. And the foot robot determines the values of the constant C and the coefficient beta of each candidate foot-falling point position when the target value J is the minimum value according to the second relation data, and acquires the first relation data corresponding to the constant C with the determined values and the target foot-falling point position of at least one foot at the target position.
And obtaining first relation data corresponding to the determined constant C, wherein the first relation data is used for representing the centroid track of the foot type robot, and the centroid position P (t) of the foot type robot in any interval time t can be determined through the first relation data. By taking the value of the coefficient beta of each determined candidate foot-falling point position, the target foot-falling point position of at least one foot of the foot type robot in the target position can be determined, so that when the subsequent foot type robot moves to the target position, at least one foot falls on the target foot-falling point position.
The target value J and the state data error are in positive correlation, when the target value J is the minimum value, the state data error is the minimum, the predicted state data and the target state data are close to each other as much as possible, and therefore when the foot type robot moves to the target position according to the determined centroid track, the state data of the foot type robot meets the expected target state data as much as possible, and the accuracy of the determined centroid track is guaranteed.
The method provided by the embodiment of the application determines target state data of the foot robot at the target position through the candidate foot-landing point positions of the foot robot without detecting the states of all joints of the foot robot, predicts the predicted state data of the foot robot at the target position through the first relation data, determines the constant C in the first relation data and the value of the coefficient beta of each candidate foot-landing point position by minimizing the state data error between the predicted state data and the expected target state data, ensures the accuracy of the value of the constant C and the value of the coefficient beta of each candidate foot-landing point position, determines the corresponding centroid track according to the constant C determined by the value, improves the accuracy of the centroid track of the foot robot, and can also determine the value of the coefficient beta of each candidate foot-landing point position, the method has the advantages that the target foot-falling point position of at least one foot when the foot type robot moves to the target position is determined, the feasibility of moving the foot type robot to the target position is guaranteed, the method can be applied to the foot type robot with any number of feet, and the application range is wide.
Fig. 3 is a flowchart of a mass center trajectory determination method provided in an embodiment of the present application, which is applied to a legged robot, and as shown in fig. 3, the method includes:
301. the foot type robot acquires candidate foot-landing point positions of at least one configured foot at a target position and a coefficient beta of each candidate foot-landing point position.
In the embodiment of the application, the foot type robot is provided with at least one foot, the at least one foot of the foot type robot is in contact with the ground, the position where the at least one foot of the foot type robot is in contact with the ground is used as the initial foot-falling point position of the foot type robot, and each foot is provided with a plurality of candidate foot-falling point positions, wherein the candidate foot-falling point positions are positions to be reached by the foot of the foot type robot.
In a plurality of candidate foot-landing positions of the foot robot, the coefficient beta of each candidate foot-landing position is used for representing the possibility that the foot of the foot robot lands on the candidate foot-landing position corresponding to the coefficient beta, and the value of the coefficient beta of each candidate foot-landing position is not determined. The target position is a position to be reached by the foot robot, and the foot robot does not reach the target position at the moment. The target position is determined by the foot robot according to the environment where the foot robot is located.
In a possible implementation manner, the value of the coefficient β includes 1 or 0, where 1 represents that the foot of the foot robot falls on the candidate foot-falling point position corresponding to the coefficient β, and 0 represents that the foot of the foot robot does not fall on the candidate foot-falling point position corresponding to the coefficient β.
In one possible implementation, the legged robot is configured with a visual perception system, and step 301 includes: the foot type robot acquires an environment image containing the moving direction of the foot type robot through the visual perception system, and performs feature extraction on the environment image to obtain candidate foot-falling point positions of each foot of the foot type robot.
For example, the visual perception system includes a camera, and the legged robot captures an environment in a moving direction of the legged robot through the camera to obtain an environment image including the moving direction of the legged robot.
Optionally, the process of obtaining the candidate landing point positions includes: and for any foot, determining a reference circular range by taking the projection position of the shoulder joint of the leg where the foot is positioned on the ground as the center and taking the reference value as the radius, and taking the foot-falling point position in the reference circular range as a candidate foot-falling point position of the foot.
The legged robot has at least one leg, a shoulder joint of each leg is connected to a body of the legged robot, and the shoulder joint can rotate relative to the body of the legged robot, thereby realizing leg striding action of the legged robot. As shown in fig. 4, the foot 401 of the legged robot is placed on a leg 402, and a shoulder joint 403 of the leg 402 is connected to the body of the legged robot. The end part of each leg is the foot of the leg, and the foot is in contact with the ground to support the legged robot to stand during the movement of the legged robot. The projection position is a position obtained by projecting the position of the shoulder joint on the ground, and the reference value is any value, such as 0.5 meter, 0.2 meter and the like.
302. And the foot type robot determines the target state data of the foot type robot at the target position according to the candidate foot-landing point position of at least one foot and the coefficient beta of each candidate foot-landing point position.
The target state data is used for representing the state data of the legged robot at the target position. Since the target state data is obtained by the candidate foot-down point position of each foot of the legged robot and the coefficient β of each candidate foot-down point position, the target state data is related to the coefficient β of each candidate foot-down point position.
In one possible implementation, the target state data includes a target centroid location, and this step 302 includes: determining the sum of the product of the coordinate of each candidate foot-falling point position and the corresponding coefficient beta as the coordinate of the central position of the foot type robot; and according to the coordinates of the central position, the position above the central position and separated from the central position by the height of the legged robot is used for determining the position of the target mass center.
The center of mass is the center of mass of the legged robot, the center of mass position is the position of the center of mass of the legged robot, and the target center of mass position is the position of the center of mass of the legged robot expected when the legged robot moves to the target position. Since the target centroid position is obtained by the candidate foot-falling point position of each foot of the legged robot and the coefficient β of each candidate foot-falling point position, the target centroid position is related to the coefficient β of each candidate foot-falling point position.
Optionally, the target centroid position is represented in the form of coordinates in a coordinate system, or alternatively, in the form of a vector. For example, in the world coordinate system, the target centroid position of the legged robot is [20, 35, 80 ].
For example, in a world coordinate system, a coordinate system of a right-hand rule is adopted, a moving direction of the legged robot is taken as an X axis, a direction perpendicular to the X axis on the left side of the legged robot is taken as a Y axis, and a direction perpendicular to the ground is taken as a Z axis, the coordinate of the center position of the legged robot is determined by the sum of the product of the coordinate of the candidate landing point position of the legged robot and the corresponding coefficient β, and the coordinate value of the center position on the Z axis is added to the height value of the legged robot, so that the coordinate value of the target centroid position in the world coordinate system, that is, the target centroid position is determined.
Optionally, the target state data further includes a target centroid velocity, and the step 302 further includes: acquiring initial state data of the legged robot at an initial position, wherein the initial state data at least comprises an initial centroid position; and determining the ratio of the distance between the target centroid position and the initial centroid position to the target moving time as the target centroid speed.
The initial position is the current position of the foot type robot, and the initial centroid position is the current position of the centroid of the foot type robot. The centroid velocity is the moving velocity of the centroid of the legged robot, which can be represented by a vector. The target centroid speed is the moving speed of the centroid of the foot robot when the foot robot moves to the target position. Since the target centroid position is related to the coefficient β of each candidate foot-falling point position, and the target centroid velocity is obtained from the target centroid position and the initial centroid position, the target centroid velocity is related to the coefficient β of each candidate foot-falling point position.
And the distance between the target centroid position and the initial centroid position represents the distance moved by the centroid of the foot type robot in the process that the foot type robot moves from the initial position to the target position. The target movement time period indicates a time period required for the legged robot to move from the initial position to the target position. Alternatively, the target movement time period is an arbitrary time period, for example, 2 seconds, 3 seconds, or the like. By the ratio of the distance to the target moving time, the speed of the foot robot moving from the initial position to the target position, namely the target mass center speed of the foot robot moving to the target position, can be determined. Optionally, the target centroid velocity is represented in the form of a vector.
For example, the centroid position of the legged robot is represented in a vector form, e.g., [1, 2, 3], where each element in the vector represents a coordinate value of the centroid of the legged robot on the x-axis, the y-axis and the z-axis of the coordinate system, respectively, and then the distance between the target centroid position and the initial centroid position is also represented in a vector form, which represents the displacement of the centroid of the legged robot on the x-axis, the y-axis and the z-axis, and the ratio between the distance and the target moving time is the component velocity of the target centroid velocity on the x-axis, the y-axis and the z-axis.
Optionally, the target state data further includes a target centroid acceleration, the initial state data further includes an initial centroid velocity, and the step 302 further includes: and determining the ratio of the difference between the target centroid speed and the initial centroid speed to the target moving time length as the target acceleration.
The target barycenter acceleration is the acceleration expected to be possessed by the barycenter of the foot type robot when the foot type robot moves to the target position. Optionally, the target centroid acceleration is represented in the form of a vector. The initial centroid velocity is indicative of the velocity of the centroid of the legged robot when the legged robot is in the initial position. Optionally, the initial centroid velocity is represented in the form of a vector.
The difference value between the target centroid speed and the initial centroid speed indicates the variation of the centroid speed of the foot type robot when the foot type robot moves from the initial position to the target position, and the ratio of the variation of the centroid speed to the target moving time is the variation of the centroid speed of the foot type robot in unit time when the foot type robot moves from the initial position to the target position, namely the target centroid acceleration when the foot type robot moves to the target position. Since the target centroid velocity is related to the coefficient β of each candidate foot-landing point position, and the target centroid acceleration is obtained from the target centroid velocity and the initial centroid velocity, the target centroid acceleration is related to the coefficient β of each candidate foot-landing point position.
In one possible implementation, the target state data at least includes a target centroid position, a target centroid velocity, and a target centroid acceleration, then step 302 includes: determining the sum of the product of the coordinate of each candidate foot-falling point position and the corresponding coefficient beta as the coordinate of the central position of the foot type robot; according to the coordinates of the central position, the position above the central position and separated from the central position by the height of the legged robot is determined, and the position of the center of mass of the target is determined; acquiring initial state data of the legged robot at an initial position, wherein the initial state data at least comprises an initial centroid position, and determining the ratio of the distance between a target centroid position and the initial centroid position to the target movement time as a target centroid speed; and determining the ratio of the difference between the target mass center speed and the initial mass center speed to the target moving time length as the target acceleration.
303. The foot robot creates first relationship data indicating a relationship between the interval duration t and the centroid position p (t) of the foot robot.
The interval duration t indicates the duration of an interval between any time point in the process that the foot robot moves from the initial position to the target position and the initial time point corresponding to the initial position. The centroid position p (t) indicates the centroid position of the legged robot at interval duration t. The first relationship data includes a constant C with an undetermined value, which is used to represent a constant of the relationship between the centroid position p (t) and the interval duration t. Alternatively, the constant C is represented in a vector form, or alternatively, in a matrix form.
In the legged robot, the first relation data is stored in the form of a descriptive sentence or a function.
In one possible implementation, this step 303 includes: setting the first relationship data as: centroid position p (t) is the product of constant C and duration matrix E.
Wherein the duration matrix E is used to represent a matrix of interval durations t.
Optionally, the first relationship data satisfies the following relationship:
P(t)=Pinit+EC
wherein, PinitIs a constant vector and is used for representing the initial centroid position of the legged robot when the legged robot is at the initial position.
In the moving process of the foot type robot, the centroid position of the foot type robot is changed along with the moving interval time t, the centroid position after the arbitrary interval time t has the corresponding centroid position variation, the sum of the centroid position variation corresponding to the interval time t and the initial centroid position of the foot type robot when the foot type robot starts to move is used as the centroid position P (t) corresponding to the foot type robot after the arbitrary interval time t, so that first relation data indicating the relation between the centroid position P (t) and the interval time t is determined, and the centroid moving track of the foot type robot can be determined through the first relation data subsequently.
Optionally, the duration matrix E satisfies the following relationship:
Figure BDA0002882924780000231
wherein E istRepresenting a duration vector. In the practice of the present applicationIn the example, the duration vector EtIncluding the interval duration t to the highest power n.
Optionally, the constant C satisfies the following relationship:
Figure BDA0002882924780000232
wherein, CxRepresenting the component of a constant C on the x-axis, CyRepresenting the component of the constant C in the y-axis, CzRepresents the component of the constant C in the z-axis; x represents x, y, z axis; c*The polynomial expression is expressed in terms of the components of the constant C on the x, y, and z axes.
304. And the foot type robot determines the predicted state data of the foot type robot at the target position according to the target moving time and the first relation data.
Since the first relation data is used for representing the centroid position of any time point in the process that the foot robot moves from the initial position to the target position, the target moving duration indicates the duration required by the foot robot to move from the initial position to the target position, and the predicted state data of the foot robot can be predicted when the foot robot moves to the target position according to the centroid track indicated by the first relation data through the target moving duration and the first relation data. Because the first relation data comprises the constant C with undetermined value, the obtained prediction state data is related to the constant C with undetermined value.
In one possible implementation, predicting the state data includes predicting a centroid location, and step 304 includes: and determining the predicted centroid position of the legged robot after the legged robot moves from the initial position for the target moving time according to the first relation data.
And the first relation data indicates the relation between the interval duration t and the centroid position P (t) of the foot type robot, the first relation data comprises a constant C with undetermined value, the target moving duration is taken as the interval duration t and substituted into the first relation data to obtain the predicted centroid position of the foot type robot, and the predicted centroid position is related to the constant C with undetermined value. The predicted state data at least comprises a predicted centroid position, and the predicted centroid position is the position where the predicted centroid of the legged robot is located when the legged robot moves to the target position. Since the first relationship data includes a constant C whose value is not determined, the predicted centroid position is related to the constant C.
In one possible implementation, predicting the state data includes predicting a centroid velocity, and step 304 includes: and establishing relation data between the interval time t and the centroid speed of the foot type robot according to the first relation data, and determining the predicted centroid speed of the foot type robot after the initial position passes through the target moving time according to the established relation data.
The predicted centroid speed is the centroid speed of the foot type robot predicted through the first relation data when the foot type robot moves to the target position, and the predicted centroid speed is related to a constant C with an undetermined value.
Optionally, a first derivative of the first relation data to the interval duration t is obtained, relation data between the interval duration t and the centroid speed of the legged robot is obtained, and the target moving duration is substituted into the relation data to obtain the predicted centroid speed.
In one possible implementation, predicting the state data includes predicting a centroid acceleration, and step 304 includes: and establishing relation data between the interval time t and the centroid acceleration of the foot type robot according to the first relation data, and determining the predicted centroid acceleration of the foot type robot after the initial position passes through the target moving time according to the established relation data.
The predicted centroid acceleration is the centroid acceleration of the foot type robot predicted through the first relation data when the foot type robot moves to the target position, and the predicted centroid acceleration is related to a constant C with an undetermined value.
Optionally, a second derivative of the first relation data to the interval duration t is obtained, relation data between the interval duration t and the centroid acceleration of the legged robot is obtained, and the target moving duration is substituted into the relation data to obtain the predicted centroid acceleration.
In one possible implementation, the predicted state data includes at least a predicted centroid position, a predicted centroid velocity, and a predicted centroid acceleration, then step 304 includes: determining a predicted centroid position of the legged robot after the legged robot moves from the initial position for a target moving time according to the first relation data; according to the first relation data, establishing relation data between interval duration t and the mass center speed of the foot type robot, and according to the relation data between the interval duration t and the mass center speed of the foot type robot, determining the predicted mass center speed of the foot type robot after the foot type robot passes through the target moving duration from the initial position; and according to the relation data between the interval time t and the centroid acceleration of the foot type robot, determining the predicted centroid acceleration of the foot type robot after the initial position passes through the target moving time.
305. The legged robot creates second relationship data based on a state data error between the target state data and the predicted state data.
Wherein the second relationship data indicates a positive relationship between the target value J and the state data error. Since the predicted state data is related to the constant C and the target state data is related to the coefficient β of each candidate landing point position, the target value J is related to the constant C and the coefficient β of each candidate landing point position, that is, the second relationship data includes the constant C whose value is not determined and the coefficient β of each candidate landing point position.
In one possible implementation, the target state data includes a target centroid position, and the predicted state data includes a predicted centroid position; this step 305 includes: a first difference between the target centroid position and the predicted centroid position is determined and the target value J is set to the square of the first difference.
Wherein the first difference is used for indicating the difference between the target centroid position and the predicted centroid position of the legged robot at the target position. Since the predicted centroid position is related to the constant C and the target centroid position is related to the coefficient β for each candidate foot-down point position, the first difference is related to the constant C and the coefficient β for each candidate foot-down point position, and the target value J is set to the fourthThe target value J is related to the constant C and the second order of the coefficient β for each candidate landing position, after the square of a difference. Optionally, when the constant C includes a plurality of constant terms, the quadratic term of the constant C includes a quadratic constant term composed of the plurality of constant terms, that is, a square of each constant term or a product of any two constant terms. For example, the constant C includes a constant term Cx、CyAnd CzThen the quadratic term of the constant C includes
Figure BDA0002882924780000251
CxCy、CxCz、CyCzAnd (4) equality of a quadratic constant term.
Optionally, a distance between the target centroid position and the predicted centroid position is determined as the first difference.
Alternatively, the target centroid position and the predicted centroid position are both expressed in terms of coordinates, and the first difference value is also expressed in terms of coordinates. The target centroid position comprises first coordinate values on x, y and z axes, the predicted centroid position comprises second coordinate values on the x, y and z axes, differences between the first coordinate values and the second coordinate values on the x, y and z axes are determined to obtain first differences, the first differences comprise differences on the x, y and z axes, and the weighted square sum of the differences of the first differences on the x, y and z axes is used as the square of the first differences. Optionally, the weights corresponding to the x, y and z axes are set arbitrarily.
In one possible implementation, the target state data includes a target centroid velocity and the predicted state data includes a predicted centroid velocity, the step 305 including: a second difference between the target centroid velocity and the predicted centroid velocity is determined and the target value J is set to the square of the second difference.
Wherein the second difference is used for indicating the difference between the target barycentric speed and the predicted barycentric speed of the foot robot when the foot robot is at the target position. Since the predicted centroid velocity is related to the constant C and the target centroid velocity is related to the coefficient β for each candidate foot-drop position, the second difference is related to the constant C and the coefficient β for each candidate foot-drop position, and the target value J is setThe target value J, squared by the second difference, is related to the constant C and the second order of the coefficient β for each candidate landing position. Optionally, when the constant C includes a plurality of constant terms, the quadratic term of the constant C includes a quadratic constant term composed of the plurality of constant terms, that is, a square of each constant term or a product of any two constant terms. For example, the constant C includes a constant term Cx、CyAnd CzThen the quadratic term of the constant C includes
Figure BDA0002882924780000261
CxCy、CxCz、CyCzAnd (4) equality of a quadratic constant term.
Alternatively, the target centroid velocity and the predicted centroid velocity are both expressed in terms of coordinates, and the second difference is also expressed in terms of coordinates. The target centroid speed comprises first partial speeds on x, y and z axes, the predicted centroid speed comprises second partial speeds on the x, y and z axes, speed difference values of the first partial speed and the second partial speeds on the x, y and z axes are determined to obtain a second difference value, the second difference value comprises speed difference values on the x, y and z axes, and the weighted square sum of the speed difference values of the second difference value on the x, y and z axes is used as the weighted square of the second difference value. The weights corresponding to the x, y and z axes are set arbitrarily.
In one possible implementation, the target state data includes a target centroid acceleration, the predicted state data includes a predicted centroid acceleration, and the step 305 includes: a third difference between the target centroid acceleration and the predicted centroid acceleration is determined, and the target value J is set to the square of the third difference.
And when the foot type robot is at the target position, the third difference value is used for indicating the difference value between the target mass center acceleration and the predicted mass center acceleration of the foot type robot. The predicted centroid acceleration is related to the constant C, the target centroid acceleration is related to the coefficient beta of each candidate foot-falling point position, the third difference is related to the constant C and the coefficient beta of each candidate foot-falling point position, and after the target value J is set to be the square of the third difference, the target value J is related to the constant C and each candidate foot-falling point positionIs related to the quadratic term of the coefficient beta. Optionally, when the constant C includes a plurality of constant terms, the quadratic term of the constant C includes a quadratic constant term composed of the plurality of constant terms, that is, a square of each constant term or a product of any two constant terms. For example, the constant C includes a constant term Cx、CyAnd CzThen the quadratic term of the constant C includes
Figure BDA0002882924780000262
CxCy、CxCz、CyCzAnd (4) equality of a quadratic constant term.
Alternatively, the target centroid acceleration and the predicted centroid acceleration are both expressed in the form of coordinates, and the third difference is also expressed in the form of coordinates. The target centroid acceleration comprises first partial accelerations on x, y and z axes, the predicted centroid acceleration comprises second partial accelerations on the x, y and z axes, acceleration difference values of the first partial acceleration and the second partial acceleration on the x, y and z axes are determined to obtain a third difference value, the third difference value comprises acceleration difference values on the x, y and z axes, and the weighted square sum of the acceleration difference values of the third difference value on the x, y and z axes is used as the weighted square of the third difference value. The weights corresponding to the x, y and z axes are set arbitrarily.
It should be noted that, the three possible implementations of the step 305 are only described in the case that the state data includes the centroid position, the centroid velocity, or the centroid acceleration, respectively, and in addition, any two of the three possible implementations can be combined, or three possible implementations can be combined.
When any two possible implementation manners are combined, if the state data error includes a first difference and a second difference, the target value J is set as a weighted square sum of the first difference and the second difference; or, the state data error comprises a first difference and a third difference, setting the target value J as a weighted sum of squares of the first difference and the third difference; alternatively, the state data error includes the second difference and the third difference, and the target value J is set as a weighted sum of squares of the second difference and the third difference. Wherein the weight between any two difference values included in the status data error is arbitrarily set.
When the above three possible implementations are combined, i.e. the state data error comprises a first difference, a second difference and a third difference, the target value J is set as a weighted sum of squares of the first difference, the second difference and the third difference. Alternatively, the weights between the first difference, the second difference, and the third difference are arbitrarily set. After determining the weighted square of the first difference, the weighted square of the second difference, and the weighted square of the third difference, the sum of the weighted squares of the first difference, the weighted square of the second difference, and the weighted square of the third difference is used as the weighted sum of the squares of the first difference, the second difference, and the third difference, which is the target value J.
In one possible implementation, the second relationship data indicates a positive correlation between the target value J and a sum of the state data error and a coefficient β of candidate foot-fall point positions of the foot robot.
In the embodiment of the present application, each foot of the foot robot has a plurality of candidate foot-landing point positions, and each candidate foot-landing point position has a coefficient β, and then the sum of the coefficients β of the plurality of candidate foot-landing point positions of each foot is the coefficient β of the candidate foot-landing point position of the foot robot. For example, if the foot robot is provided with 4 feet each having 4 candidate foot placement positions, the candidate foot placement positions of the foot robot are 16, that is, the sum of the coefficients β of the candidate foot placement positions of the foot robot is the sum of the coefficients β of the 16 candidate foot placement positions.
Optionally, the second relationship data indicates a positive relationship between the target value J and a sum of the state data error and a coefficient β weighting for candidate landing point positions of the legged robot.
Optionally, when the state data error comprises any difference, setting the target value J as the sum of the square of the difference and the sum of the coefficients β of the candidate foot-falling point positions of the legged robot; when the state data error comprises any two difference values, setting the target value J as the sum of the weighted square sum of the two difference values and the sum of the coefficients beta of the candidate foot-falling point positions of the legged robot; when the state data error includes three differences, the target value is set to a sum of a weighted sum of squares of the three differences and a coefficient β of a candidate landing point position of the legged robot.
Optionally, a plurality of sampling time points are selected within the target duration, each candidate foot-drop point position has a coefficient β at each sampling time point, and the second relationship data indicates a positive correlation between the target value J and the sum of the state data error and the coefficients β of the candidate foot-drop point position of the legged robot at the plurality of sampling time points.
Optionally, the second relationship data indicates a positive correlation between the target value J and a sum of the state data error and a coefficient β weighting of the candidate and initial foot-fall point positions of the legged robot. Optionally, a plurality of sampling time points are selected within the target duration, each candidate foot-drop point position has a coefficient β at each sampling time point, each initial foot-drop point position has a coefficient β at each sampling time point, and the second relationship data indicates a positive correlation between the target value J and the error of the state data, and a sum of the candidate foot-drop point position of the foot robot and the coefficients β of the initial foot-drop point position at the plurality of sampling time points.
In one possible implementation, this step 305 includes the following two ways:
the first method comprises the following steps 3051-3053:
3051. and selecting a plurality of sampling time points in the target moving time length.
The sampling time point is a time point between an initial time point corresponding to the initial position and a termination time point corresponding to the target position. The plurality of sampling time points includes two or more sampling time points. The time intervals between any two adjacent sampling time points may be equal or unequal.
For example, the moving duration is 60 seconds, the initial time point corresponding to the initial position is 0 second, the termination time point corresponding to the target position is 60 seconds, 5 sampling time points are selected from the moving duration, the first sampling time point is 10 seconds, the second sampling time point is 20 seconds, the third sampling time point is 30 seconds, the fourth sampling time point is 40 seconds, and the fifth sampling time point is 50 seconds; alternatively, the first sampling time point is 5 seconds, the second sampling time point is 20 seconds, the third sampling time point is 25 seconds, the fourth sampling time point is 40 seconds, and the fifth sampling time point is 55 seconds.
In one possible implementation, this step 3051 may include: dividing the moving time length into a plurality of time sections, taking the ending time point of each time section as a sampling time point, and taking the starting time point of the first time section as a sampling time point. Wherein, the obtained time periods may be equal or unequal.
Alternatively, when the time periods are equal, the obtained sampling time points satisfy the following relationship:
Figure BDA0002882924780000281
wherein k represents the serial number of the sampling time point, and the value of k is (0, 1, …, N)num),NnumThe number of a plurality of time periods; t is tkFor representing the kth sampling time point; t isaIndicating the length of the movement.
3052. And determining fourth relation data corresponding to each sampling time point according to the interval duration between each sampling time point and the initial time point and the first relation data.
Wherein the fourth relationship data indicates a relationship between the constant C and a sampling centroid position q (C) indicating a centroid position of the legged robot at the corresponding sampling time point. In the legged robot, the fourth relational data is stored in the form of descriptive sentences or in the form of functions.
Because the first relation data indicates that the centroid position P (t) is the product of the constant C and the duration matrix E, the interval duration between any sampling time point and the initial time point is substituted into the duration matrix E in the first relation data, the value of the duration matrix E at any sampling time point is determined, and fourth relation data corresponding to the sampling time point is obtained, wherein the fourth relation data indicates the relation between the constant C and the sampling centroid position Q (C). The value of the constant C included in the fourth relational data is not determined, and the values of other constants included in the fourth relational data are determined.
3053. And creating second relation data according to the state data error and the fourth relation data.
Wherein the second relationship data indicates a positive correlation between the target value J and the state data error and the sampling centroid position q (c). In the legged robot, the fourth relational data is stored in the form of descriptive sentences or in the form of functions.
In one possible implementation, the target state data includes a target centroid position, and the predicted state data includes a predicted centroid position; then this step 3053 comprises: a first difference between the target centroid position and the predicted centroid position is determined and a target value J is set to a sum of the first value and the second value.
Wherein the first value is a square of the first difference and the second value is a weighted sum of squares of the plurality of distances. The plurality of distances includes an initial centroid position of the initial position, a plurality of sampled centroid positions, and a distance between any two adjacent centroid positions of the predicted centroid positions. Optionally, the sum of the weights for each distance is set arbitrarily. And determining a square value of the product of each distance and the corresponding weight, and taking the sum of the square values corresponding to the plurality of distances as a weighted square sum of the plurality of distances. The length of the centroid trajectory can be reflected through the weighted square sum of the distances, and the oscillation amplitude of the centroid trajectory curve can be reduced.
Since the plurality of sampling locations and the predicted centroid position are both associated with a constant C, the target centroid position is associated with a coefficient β for each candidate foot-down position, the first difference is associated with the constant C and the coefficient β for each candidate foot-down position, the plurality of distances are all associated with the constant C, the first value is the square of the first difference, the second value is the weighted sum of squares of the plurality of distances, the first value is associated with the constant C and the second term of the coefficient β for each candidate foot-down position, the second value is associated with the second term of the constant C, and the method will be described in detail belowAfter the target value J is set to the sum of the first value and the second value, the target value J is related to the constant C and the quadratic term of the coefficient β of each candidate landing point position. Optionally, when the constant C includes a plurality of constant terms, the quadratic term of the constant C includes a quadratic constant term composed of the plurality of constant terms, that is, a square of each constant term or a product of any two constant terms. For example, the constant C includes a constant term Cx、CyAnd CzThen the quadratic term of the constant C includes
Figure BDA0002882924780000301
Figure BDA0002882924780000302
CxCy、CxCz、CyCzAnd (4) equality of a quadratic constant term.
In one possible implementation, the target state data includes a target centroid velocity, the predicted state data includes a predicted centroid velocity, and the step 3053 includes: a second difference between the target centroid velocity and the predicted centroid velocity is determined, and a target value J is set as a sum of the third value and the second value.
Wherein the third value is a square of the second difference and the second value is a weighted sum of squares of the plurality of distances.
Since the plurality of sampling positions and the predicted centroid speed are related to the constant C, the target centroid speed is related to the coefficient β of each candidate landing leg position, the second difference is related to the constant C and the coefficient β of each candidate landing leg position, the plurality of distances are related to the constant C, the third value is a square of the second difference, the second value is a weighted square sum of the plurality of distances, the third value is related to the constant C and a quadratic term of the coefficient β of each candidate landing leg position, the second value is related to a quadratic term of the constant C, and after the target value J is set to a sum of the third value and the second value, the target value J is related to the constant C and the quadratic term of the coefficient β of each candidate landing leg position. Optionally, when the constant C includes a plurality of constant terms, the quadratic term of the constant C includes a quadratic constant term composed of the plurality of constant terms, i.e. each constantThe square of a number term or the product of any two constant terms. For example, the constant C includes a constant term Cx、CyAnd CzThen the quadratic term of the constant C includes
Figure BDA0002882924780000303
Figure BDA0002882924780000304
CxCy、CxCz、CyCzAnd (4) equality of a quadratic constant term.
In one possible implementation, the target state data further includes a target centroid acceleration, the predicted state data further includes a predicted centroid acceleration, and step 3053 includes: and determining a third difference value between the target centroid acceleration and the predicted centroid acceleration, and setting the target value J as the sum of the fourth value and the second value.
Wherein the fourth value is a square of the third difference and the second value is a weighted sum of squares of the plurality of distances.
Since the plurality of sampling positions and the predicted centroid acceleration are both related to the constant C, the target centroid acceleration is related to the coefficient β of each candidate foot-down position, the third difference is related to the constant C and the coefficient β of each candidate foot-down position, the plurality of distances are all related to the constant C, the fourth value is a square of the third difference, the second value is a weighted sum of squares of the plurality of distances, the fourth value is related to the constant C and a quadratic term of the coefficient β of each candidate foot-down position, the second value is related to a quadratic term of the constant C, and the target value J is related to the constant C and a quadratic term of the coefficient β of each candidate foot-down position after the target value J is set to a sum of the fourth value and the second value. Optionally, when the constant C includes a plurality of constant terms, the quadratic term of the constant C includes a quadratic constant term composed of the plurality of constant terms, that is, a square of each constant term or a product of any two constant terms. For example, the constant C includes a constant term Cx、CyAnd CzThen the quadratic term of the constant C includes
Figure BDA0002882924780000311
CxCy、CxCz、CyCzAnd (4) equality of a quadratic constant term.
It should be noted that, the three possible implementations of the step 3053 are only described in which the state data includes a centroid position, a centroid velocity, or a centroid acceleration, respectively, and in addition, any two of the three possible implementations may be combined, or three possible implementations may be combined.
When any two modes are combined, if the state data error comprises a first difference value and a second difference value, setting the target value J as the weighted square sum of the first difference value and the second difference value and the sum of the first difference value and the second difference value; or, the state data error comprises a first difference and a third difference, and the target value J is set as a weighted sum of squares of the first difference and the third difference and a sum of the second value; alternatively, if the state data error includes the second difference and the third difference, the target value J is set to a sum of the weighted square sum of the second difference and the third difference and the second value. Wherein the weight between any two difference values included in the status data error is arbitrarily set.
When the three possible implementations described above are combined, i.e. the state data error comprises a first difference, a second difference and a third difference, the target value J is set as a weighted sum of squares of the first difference, the second difference and the third difference, and the second value is a sum of weighted sums of squares of the plurality of distances and the second value.
Optionally, the weights of the first difference, the second difference, and the third difference are set arbitrarily. And determining a square value of the product of the first difference value and the corresponding weight, a square value of the product of the second difference value and the corresponding weight, and a square value of the product of the third difference value and the corresponding weight, and taking the sum of the square value corresponding to the first difference value, the square value corresponding to the second difference value and the square value corresponding to the third difference value as the weighted square sum of the first difference value, the second difference value and the third difference value.
The second way includes: according to the state data error and the acting force f received by at least one foot of the foot type robot contacting with the groundiAnd creating second relationship data.
Wherein the second relationship data indicates the error between the target value J and the state data and the acting force f applied by at least one foot contacting with the groundiPositive correlation between the quadratic terms of (a).
In one possible implementation, the state data error includes a first difference value representing a difference between the target centroid position and the predicted centroid position, and the second way includes: according to the first difference and the acting force f corresponding to at least one foot of the foot type robotiSetting the target value J to the acting force f corresponding to at least one footiAnd the sum of the squares of the first differences.
Optionally, determining each force fiThe square of the product of the weight and the corresponding weight, the acting force f corresponding to at least one footiThe sum of the squares of the corresponding force f corresponding to the at least one footiWeighted sum of squares of (a). Optionally, each force fiThe corresponding weight is arbitrarily set.
Optionally, the acting force f received by at least one foot of the foot robot contacting with the groundiIncluded
Figure BDA0002882924780000321
And
Figure BDA0002882924780000322
the acting force
Figure BDA0002882924780000323
Is acting force fiComponent in the x-axis, the force
Figure BDA0002882924780000324
Is acting force fiComponent in the y-axis, the force
Figure BDA0002882924780000325
Is acting force fiComponent force in z-axis, for the ith foot of the legged robot in contact with the ground, the footCorresponding force fiSatisfies the following relationship:
Figure BDA0002882924780000326
wherein, FiRepresents the corresponding acting force f of the ith footiWeighted square of a1、a2、a3Respectively represent the acting force f corresponding to the ith footiWeight on x, y, z axes, a1、a2、a3Is an arbitrary constant, a1、a2、a3The values of (A) may be the same or different. In addition, for different forces, a1May be the same or different, a2May be the same or different, a3May be the same or different.
Optionally, the acting force f corresponding to at least one foot of the foot type robot contacting with the groundiIs equal to the weighted square F corresponding to at least one footiAnd (4) the sum.
It should be noted that, the possible implementation manner is only described in a manner that the state data error includes the first difference, and when the state data error includes the second difference or the third difference, a process of creating the second relationship data is similar to the possible implementation manner, and is not described herein again.
And, the state data error may include a first difference, a second difference, and a third difference, and if the state data error includes any two or three differences, the target value J is set as a weighted sum of squares of the differences included in the state data error, and the acting force f corresponding to one foot lessiThe sum of the weighted sums of squares of (a).
In the present embodiment, the first and second aspects are described separately, but in another embodiment, the first and second aspects can be combined, and the state data error, the fourth relation data, and the acting force f received by at least one foot of the legged robot when the at least one foot is in contact with the ground surface are used as the basisiAnd creating second relationship data.
306. And the foot robot determines the value of the constant C when the target value J is the minimum value and the coefficient beta of each candidate foot-falling point position according to the second relation data.
Because the second relational data comprise the coefficient beta and the constant C of each candidate foot-falling point position, when the target value J takes the minimum value, the values of the constant C and the coefficient beta of each candidate foot-falling point position can be determined.
The process of determining the value of the constant C and the coefficient beta of each candidate foot-falling point position when the target value J is the minimum value comprises the following seven modes:
the first method comprises the following steps 3601-3602:
3601. from the first relationship data, spatial constraints for at least one foot are created.
Wherein the spatial constraint is used for indicating a space range in which at least one foot can move, and the spatial constraint comprises a constant C and a coefficient beta of each candidate foot-landing point position. As shown in fig. 5, the polyhedron 501 in fig. 5 is a movable spatial range of the foot 502 of the foot robot, and the spatial range is composed of a plurality of spatial points which can be reached by the foot 501. In the embodiment of the application, when the foot type robot starts to move from any position, the foot of the foot type robot can only move in the movable space range of the foot and cannot move to a position outside the space range, so that the movable space range of at least one foot is restricted through the created space restriction condition of at least one foot, and the target foot-falling point determined subsequently is ensured to be in the movable space range of the foot type robot.
3601. And determining the value of the constant C and the coefficient beta of each candidate foot-landing point position when the target value J is the minimum value under the condition of meeting the space constraint condition according to the second relation data.
The space constraint condition is used for indicating the movable space range of at least one foot, and the at least one foot is constrained to move only in the movable space range through the space constraint condition, so that the feasibility of the foot movement of the foot type robot is ensured, the accuracy of the determined constant C and the value of the coefficient beta of each candidate foot-falling point position is ensured, and the foot type robot can be controlled to move according to the determined constant C and the value of the coefficient beta of each candidate foot-falling point position.
The second method comprises the following steps 3603-3604:
3603. force constraints are created.
And the acting force constraint condition is used for indicating that the acting force applied by at least one foot in contact with the ground at each corresponding candidate foot-landing point position is not greater than the acting force extreme value corresponding to each candidate foot-landing point position. The acting force extreme values corresponding to different candidate foot-falling point positions may be different or the same. Optionally, the force extreme value corresponding to the candidate foot-landing point position is set arbitrarily. The force constraint includes a coefficient beta for each candidate landing point position.
Optionally, the acting force constraint condition is used for indicating that the product of the acting force of the foot type robot at any candidate foot-landing point position and the normal vector of the any candidate foot-landing point position is smaller than the product of the coefficient beta of the candidate foot-landing point position and the acting force extreme value corresponding to the candidate foot-landing point position.
3604. And determining the value of the constant C and the coefficient beta of each candidate foot-falling point position when the target value J is the minimum value under the condition of meeting the acting force constraint condition according to the second relation data.
And through the created acting force constraint condition, the stress condition of at least one foot of the foot type robot meets the constraint condition, so that the stress condition of the foot type robot meets the requirement, and the accuracy of the determined constant C and the value of the coefficient beta of each candidate foot-landing point position is ensured.
In one possible implementation, this step 3604 includes: and establishing a friction force constraint condition, and determining the value of the target value J as the minimum time constant C and the coefficient beta of each candidate foot-falling point position under the condition that the acting force constraint condition and the friction force constraint condition are met according to the second relational data.
The friction force constraint condition indicates a friction force constraint condition which is satisfied by an acting force applied to at least one foot of the foot type robot when the at least one foot is contacted with the candidate foot-landing point position, and the friction force constraint condition comprises a constant C with an undetermined value.
Through the friction force constraint condition and the acting force constraint condition, when the feet of the foot type robot are in contact with the candidate foot-landing point positions, the stress condition of the foot type robot meets the requirement, the slipping condition between the feet of the foot type robot and the candidate foot-landing point positions is avoided, and the moving feasibility of the foot type robot is ensured.
The third method comprises the following steps 3605-3606:
3605. coefficient constraints for at least one foot are created.
Wherein the coefficient constraint condition is used for indicating that the sum of the coefficients beta of a plurality of candidate foot-falling point positions of each foot is not more than 1 at any time point in the moving process of the foot-type robot. In the embodiment of the present application, the value of the coefficient β includes 1 or 0, where 1 indicates that the foot of the foot robot falls on the candidate foot-falling point position corresponding to the coefficient β, and 0 indicates that the foot of the foot robot does not fall on the candidate foot-falling point position corresponding to the coefficient β.
3606. And determining the value of the constant C when the target value J is the minimum value and the coefficient beta of each candidate foot-falling point position under the condition of meeting the coefficient constraint condition of at least one foot according to the second relation data.
The method has the advantages that any foot of the foot type robot can be limited to only fall on one candidate foot-falling point position in the candidate foot-falling point positions corresponding to the foot at any time point through the coefficient constraint condition of the at least one foot, so that the foot stepping accuracy of the foot type robot is guaranteed, the condition that one foot falls on two candidate foot-falling point positions at the same time is avoided, and the accuracy of the constant C and the value of the coefficient beta of each candidate foot-falling point position is guaranteed.
The fourth method comprises the following steps 3607-3608:
3607. third relationship data is created.
Wherein the third correlation data is used for indicating the relationship between the sum of the coefficients beta of the candidate foot-falling point positions of the foot robot and the number of feet of the foot robot when the foot robot is at the target position.
The foot robot is provided with at least one foot, each foot has a coefficient beta of a plurality of candidate foot-landing positions, and when the foot robot is at a target position, the relation between the sum of the coefficients beta of the plurality of candidate foot-landing positions of the plurality of feet and the foot robot of the foot robot limits the number of feet which are contacted with the ground when the foot robot is at the target position.
In a possible implementation manner, the value of the coefficient β includes 1 or 0, 1 represents that the foot of the foot robot falls on the candidate foot-falling point position corresponding to the coefficient β, and 0 represents that the foot of the foot robot does not fall on the candidate foot-falling point position corresponding to the coefficient β, and the third correlation coefficient data is used to indicate that the sum of the coefficients β of the candidate foot-falling point positions of the foot robot is equal to the number of feet of the foot robot when the foot robot is at the target position.
The sum of the coefficients beta of the candidate foot-falling point positions of the foot type robot is equal to the number of feet of the foot type robot, so that when the foot type robot is at the target position, the feet of the foot type robot are all in contact with the ground, and each foot is located on one candidate foot-falling point position of the corresponding candidate foot-falling point positions.
3608. And determining the constant C when the target value J is the minimum value and the value of the coefficient beta of each candidate foot-falling point position according to the second relation data and the third relation data.
And limiting the number of feet of the legged robot contacting with the ground at the target position through the third relational data, wherein each foot can only fall on one candidate foot-falling point position, so that the accuracy of the value of the determined constant C and the coefficient beta of each candidate foot-falling point position is ensured.
The fifth way includes the following steps 3609-3612:
3609. and selecting a plurality of sampling time points in the target moving time length.
This step is similar to step 3051 described above and will not be described further herein.
3610. A coefficient beta for a candidate drop point location for at least one foot at each sampling time point is determined.
Since the coefficient β is used to indicate the possibility that the foot of the legged robot will fall on the candidate foot-landing point position corresponding to the coefficient β, for any candidate foot-landing point position, the candidate foot-landing point position has a plurality of coefficients β at a plurality of sampling time points, and the coefficients β corresponding to different sampling time points may be the same or different. For example, for any candidate landing point position, the candidate landing point position has a plurality of coefficients β of 0 at a plurality of sampling time points, which indicates that none of the feet of the legged robot lands on the candidate landing point position at the plurality of sampling time points; or, the coefficients β of the candidate foot landing point positions at the first sampling time points are all 0, and the coefficients β of the candidate foot landing point positions at the second sampling time points are all 1, which indicates that the foot of the foot robot does not land on the candidate foot landing point position at the sampling time point corresponding to the coefficient β of 0, and the foot of the foot robot lands on the candidate foot landing point position at the second sampling time points, thereby completing the stepping motion of the foot robot.
3611. A step timing constraint is created based on the coefficients β of the candidate drop point locations for at least one foot at each sampling time point.
The stepping time sequence constraint condition is used for indicating the relation of the candidate foot-falling point position of each foot among the coefficients beta of a plurality of sampling time points in the process that the foot type robot moves from the initial position to the target position.
In one possible implementation, the step timing constraint is used to indicate that the coefficient β of any candidate foothold position of any foot of the legged robot at the previous sampling time point is not greater than the coefficient β of any candidate foothold position at the next sampling time point.
For example, if the value of the coefficient β includes 1 or 0, and a value of 1 for the coefficient β indicates that the foot of the foot robot is located at the candidate foot placement position corresponding to the coefficient β, and a value of 0 for the coefficient β indicates that the foot of the foot robot is not located at the candidate foot placement position corresponding to the coefficient β, then for any candidate foot placement position, during the movement of the foot robot from the initial position to the target position, at the initial time point, the coefficient β for the candidate foot placement position is 0, and then as time goes by, the foot of the foot robot may be located at the candidate foot placement position, and if the candidate foot placement position is located at the candidate foot placement position, the coefficient β for the candidate foot placement position is 1, and the coefficients β for the candidate foot placement positions at the subsequent sampling time points are all 1, and therefore, the values of the coefficients β for the candidate foot placement position at the multiple sampling time points change from 0 to 1, that is, the coefficient β of the candidate landing point position at the previous sampling time point is not greater than the coefficient β of any candidate landing point position at the next sampling time point.
In one possible implementation, the step timing constraint is used to indicate that the coefficient β of the initial foothold position of any one foot of the legged robot at the previous sampling time point is not less than the coefficient β of the initial foothold position at the next sampling time point.
For example, if the value of the coefficient β includes 1 or 0, and a value of 1 for the coefficient β indicates that the foot of the foot robot is located at the initial foot-drop position corresponding to the coefficient β, and a value of 0 for the coefficient β indicates that the foot of the foot robot is not located at the initial foot-drop position corresponding to the coefficient β, then for any initial foot-drop position, during the movement of the legged robot from the initial position to the target position, at the initial point in time, the candidate foot-landing point position has a coefficient beta of 1, and then, as time goes by, the foot of the foot robot can fall on any candidate foot-landing point position, the foot of the legged robot is no longer present at the initial foot-drop position, so that the value of the coefficient beta of the initial foot-drop position at a plurality of sampling time points is changed from 1 to 0, that is, the coefficient β of the initial landing foot point position at the previous sampling time point is not less than the coefficient β of the initial landing foot point position at the next sampling time point.
3612. And according to the second relational data, under the condition of meeting the stepping time sequence constraint condition, determining the value of a constant C when the target value J is the minimum value and the coefficient beta of each candidate foot-falling point position.
And (3) ensuring that each foot only steps once in the process of moving the foot type robot from the initial position to the target position through a stepping time sequence constraint condition so as to ensure the accuracy of the value of the determined constant C and the coefficient beta of each candidate foot-falling position.
In one possible implementation, the step 3612 includes the following steps 36121-36122:
36121. a stride length constraint is created.
The stepping duration constraint condition is used for indicating that the sum of coefficients beta of candidate foot-landing point positions of the legged robot at a plurality of sampling time points is smaller than the number of the sampling time points. And through the created stepping duration constraint condition, the foot type robot is ensured to have enough duration in the stepping process, so that the feet of the foot type robot realize stepping action within the enough duration.
In one possible implementation, the stride length constraint is used to indicate that the sum of coefficients β of candidate foothold positions of the legged robot at a plurality of sampling time points is not greater than a reference value, which is less than the number of the plurality of sampling time points. Wherein the reference values are arbitrarily set.
36122. And according to the second relational data, under the condition that a stepping time sequence constraint condition and a stepping duration constraint condition are met, determining the value of a time constant C with a target value J as a minimum value and the coefficient beta of each candidate foot-falling point position.
And the foot type robot is ensured to have enough time in the stepping process through the created stepping time constraint condition, so that the foot of the foot type robot realizes stepping action within the enough time, the moving feasibility of the foot type robot is ensured, and the accuracy of the determined constant C and the value of the coefficient beta of each candidate foot-falling point position is ensured.
Sixth means, the second relation data indicates the error between the target value J and the state data and the acting force f applied by at least one foot of the legged robot configuration contacting with the groundiPositive correlation between the quadratic terms of (a); comprising the following steps 3613-3614:
3613. fifth relationship data corresponding to at least one foot of the legged robot configuration is created.
Wherein the fifth relation data corresponding to at least one foot respectively indicateActing force f corresponding to at least one footiIn relation to the interval duration t, force fiAnd indicating the acting force applied to the ith foot of the foot type robot when the ith foot is in contact with the ground, wherein i is a positive integer, and the fifth relation data comprises a constant C with an undetermined value. In the legged robot, the fifth relational data is stored in the form of descriptive sentences or in the form of functions.
In one possible implementation, this step 3613 includes: and creating sixth relational data, creating seventh relational data, and creating fifth relational data corresponding to at least one foot according to the sixth relational data and the seventh relational data.
Wherein the sixth relation data indicates a relation between an angular momentum L of the foot robot, which is used to represent a change in the attitude of the foot robot, and the interval duration t. The seventh relationship data indicates an applied force f corresponding to at least one footi(L) a positive correlation with the angular momentum L. The seventh relational data is used for representing that the acting force corresponding to at least one foot of the foot type robot is influenced by the posture of the foot type robot. Determining the acting force f on the contact of at least one foot of the foot type robot and the ground through the created sixth relation data and the seventh relation dataiAnd the interval duration t. In the legged robot, the sixth relational data and the seventh relational data are stored in the form of descriptive sentences or in the form of functions.
3614. And determining the value of the constant C and the coefficient beta of each candidate foot-landing point position when the target value J is the minimum value according to the second relation data and the fifth relation data.
The fifth relation data corresponding to at least one foot respectively indicate the acting force f corresponding to at least one footiAnd the interval duration t, the fifth relation data including a constant C whose value is undetermined, i.e. the fifth relation data indicating the acting force fiAnd a constant C, and the second relationship data indicates the error between the target value J and the state data and the acting force f applied by at least one foot in contact with the groundiThe positive correlation between the quadratic terms of (A) is thenAnd under the condition of meeting the fifth relation data, determining the value of the constant C when the target value J is the minimum value and the value of the coefficient beta of each candidate foot-falling point position.
In one possible implementation, this step 3614 includes: selecting a plurality of sampling time points in the target moving time, determining the corresponding relation data of each sampling time point according to the interval time between each sampling time point and the initial time point and the fifth relation data, and determining the value of the constant C when the target value J is the minimum value and the value of the coefficient beta of each candidate foot-falling point position according to the second relation data and the corresponding relation data of the plurality of sampling time points.
Wherein the corresponding relation data of each sampling time point indicate the acting force f of the constant C corresponding to at least one footiThe relationship between them. Since the fifth relationship data indicates an applied force f corresponding to at least one footiAnd substituting the interval duration corresponding to each sampling time point into the fifth relation data to obtain the relation data corresponding to each sampling time point, wherein the fifth relation data comprises a constant C with undetermined value.
The seventh mode includes the following steps 3615 and 3616:
3615. and creating eighth relation data, ninth relation data and tenth relation data according to the first relation data and the initial time point.
Wherein the eighth relationship data indicates a relationship between an initial centroid position of the legged robot at the initial position and a constant C, the ninth relationship data indicates a relationship between an initial centroid velocity of the legged robot at the initial position and a constant C, and the tenth relationship data indicates a relationship between an initial centroid acceleration of the legged robot at the initial position and a constant C. In the legged robot, the eighth relational data, the ninth relational data, and the tenth relational data are stored in the form of descriptive sentences or in the form of functions.
In one possible implementation, this step 3615 includes: substituting the initial time point into the first relation data to obtain the first relation data; acquiring a first derivative of the first relation data to the interval duration t, and substituting the initial time point into the acquired first derivative relation data to acquire ninth relation data; and acquiring a second derivative of the first relation data to the interval duration t, and substituting the initial time point into the acquired second derivative relation data to acquire tenth relation data.
3616. And determining the value of the constant C when the target value J is the minimum value and the coefficient beta of each candidate foot-falling point position according to the eighth relation data, the ninth relation data, the tenth relation data and the second relation data.
And under the condition that the constant C meets the eighth relational data, the ninth relational data and the tenth relational data, determining the value of the constant C and the value of the coefficient beta of each candidate foot-landing point position when the target value J is the minimum value, so that the initial state data of the foot robot at the initial position meets the first relational data corresponding to the constant C determined by the value, and the accuracy of the determined value of the constant C is ensured.
For example, when the first mode is combined with the second mode, the target value J is a value of the constant C at the minimum value and the coefficient β at each candidate foot-falling point position when the acting force constraint condition and the coefficient constraint condition of at least one foot are satisfied according to the second relational data by using the created acting force constraint condition and the coefficient constraint condition of at least one foot.
In one possible implementation, the second relation data indicates a positive correlation between the target value J and the error of the state data and a weighted sum of coefficients β of candidate and initial foot-fall point positions of the legged robot, and then the step 306 includes: and determining values of a constant C when the target value J is the minimum value, coefficients beta of each candidate foot point position at a plurality of sampling time points and coefficients beta of each initial foot point position at a plurality of sampling time points according to the second relation data. Wherein each candidate landing foot point position has a coefficient β at a plurality of sampling time points, and each initial landing foot point position has a coefficient β at a plurality of sampling time points.
307. The foot robot acquires first relation data corresponding to the constant C with the determined value.
Wherein the first relationship data is used to represent a centroid trajectory of the legged robot. Through the determined centroid track, the centroid position of the foot type robot at any time point can be obtained in the process that the foot type robot moves from the initial position to the target position.
After the value of the constant C is determined, substituting the constant C with the determined value into the first relation data, and indicating the centroid position P (t) by the first relation data0) And the relation with the interval duration t, and the first relation data does not include other constants with undetermined values except the interval duration t. Therefore, the first relation data corresponding to the constant C with the determined value can represent the centroid track of the legged robot.
308. And the foot robot determines the candidate foot-falling point position corresponding to the coefficient beta with the value of 1 as the target foot-falling point position according to the value of the coefficient beta of each candidate foot-falling point position.
In the embodiment of the present application, the value of the coefficient β includes 1 or 0, where 1 indicates that the foot of the foot robot falls on the candidate foot-falling point position corresponding to the coefficient β, and 0 indicates that the foot of the foot robot does not fall on the candidate foot-falling point position corresponding to the coefficient β.
And according to the value of the coefficient beta of each candidate foot-falling point position, representing the foot-falling point position of the foot type robot when the foot type robot is at the target position, namely the target foot-falling point position, of the candidate foot-falling point position corresponding to the coefficient beta with the value of 1.
In a possible implementation manner, after obtaining values of the coefficient β of each candidate foot-placement position at multiple sampling time points and the coefficient β of each initial foot-placement position at multiple sampling time points, the step 308 further includes: and determining the stepping sequence of a plurality of feet of the legged robot, and the stepping starting time point and the stepping finishing time point of each foot according to the values of the coefficients beta of each candidate footfall position at a plurality of sampling time points and the coefficients beta of each initial footfall position at a plurality of sampling time points.
Since the coefficient β of the initial landing point position of each foot at the initial time point is 1, the stepping order of the plurality of feet can be determined by taking the values of the coefficients β of the initial landing point positions of the plurality of feet at the plurality of sampling time points. For example, the value of the coefficient β of the initial foot-landing position of the first foot is 1 at the first two sampling time points, and the value thereof is 0 at the third sampling time point; the value of the coefficient beta of the initial foot-falling position of the second foot at the first five sampling time points is 1, and the value at the sixth sampling time point is 0, so that the foot type robot can be determined to firstly step the first foot and then step the second foot.
For any foot, the sampling time point at which the value of the coefficient beta of the initial foot-falling point position of the foot is changed from 1 to 0 is the stepping starting time point of the foot type robot; and the sampling time point of the value of the coefficient beta of any candidate foot-falling point position of the foot is changed from 0 to 1, namely the stepping end time point of the foot.
By the aid of values of the coefficient beta of each candidate foot landing point position at a plurality of sampling time points and the coefficient beta of each initial foot landing point position at a plurality of sampling time points, the stepping sequence of a plurality of feet of the foot type robot and the target foot landing point position of the foot type robot can be determined, and the starting time point and the ending time point of stepping of each foot can be determined in the process that the foot type robot moves from the initial position to the target position, so that the stepping duration and the stepping sequence of the feet of the foot type robot are restrained, the stepping gait of the foot type robot is optimized, the target foot landing point position of the foot type robot is optimized, and the moving feasibility of the foot type robot is guaranteed.
It should be noted that, in the embodiment of the present application, the target foot-landing point position is determined by taking a value of the coefficient β of the candidate foot-landing point position, but in another embodiment, step 308 does not need to be executed, and at least one target foot-landing point position sufficient to the target position can be obtained in other manners.
309. In the moving process of the foot type robot, determining the time length t of the foot type robot at any interval according to the first relation data0Centroid position of time P (t)0)。
Wherein the interval duration t0The method is the time length of the interval between any time point and the initial time point corresponding to the initial position in the process that the foot type robot moves from the initial position to the target position.
As the values of other constants except the interval duration t in the first relation data corresponding to the constant C with the determined value are determined, any interval duration t is determined0Substituting the first relation data to obtain the duration t of any interval0Corresponding centroid position P (t)0)。
310. The foot robot is based on the position of the center of mass P (t)0) And a target position for determining joint torques of a plurality of joints of the legged robot.
In the embodiment of the application, the foot type robot realizes the lifting or falling of each foot of the foot type robot by controlling each joint in each foot, so as to drive the foot type robot to move. The foot type robot moves at least one foot supporting foot type robot of the foot type robot by controlling joint moments of a plurality of joints, so that the real center of mass position of the foot type robot is kept at the determined center of mass position P (t)0). Therefore, the center of mass position P (t) of the legged robot can be determined0) The target position and the inverse kinematics to determine joint torques of a plurality of joints in the process that the legged robot moves to the target position.
In one possible implementation, this step 310 includes: according to the centroid position P (t)0) And a target position for determining joint angles and joint torques of a plurality of joints of the legged robot. Wherein the joint angle is used for representing the angle presented by the joint of the foot type robot after rotating. By determining the position of the center of mass P (t) of the legged robot0) And inverse kinematics to determine joint angles of a plurality of joints of the legged robot. Then, joint torques of a plurality of joints of the robot are determined by inverse dynamics and an optimization control method.
Optionally, the step of the foot type robot is carried out according to the contact point position of at least one foot of the foot type robot contacting with the groundThe method comprises the steps of time sequence, establishing relation data between the position of a contact point of at least one foot in contact with the ground and interval duration, and relation data between the posture of the foot type robot and the interval duration; determining relation data between joint angles of a plurality of joints of the foot type robot and interval duration according to the relation data between the position of a contact point of the at least one foot and the ground and the interval duration, the relation data between the posture of the foot type robot and the interval duration and the first relation data corresponding to the constant C with determined values; acquiring a first derivative of relation data between joint angles and interval duration of a plurality of joints to the interval duration to obtain relation data between joint angular speeds and the interval duration of the plurality of joints of the legged robot; acquiring a second derivative of the relation data between the joint angles of the joints and the interval duration to obtain the relation data between the joint angular accelerations of the joints of the legged robot and the interval duration; determining the time length t of the legged robot at any interval according to the relationship data between the joint angular velocity and the interval time length, the relationship data between the joint angular velocity and the interval time length and the relationship data between the joint angular acceleration and the interval time length0Joint angles, joint angular velocities, and joint angular accelerations of the plurality of joints; acquiring joint angles, joint angular velocities and joint angular accelerations of a plurality of joints at the current time point, and setting a time t at any interval according to the joint angles, the joint angular velocities and the joint angular accelerations of the plurality of joints of the legged robot at the current time point0The joint angles, the joint angular velocities and the joint angular accelerations of the joints determine the joint torques of the joints of the legged robot.
Optionally, the legged robot is configured with a sensor, and joint angles, joint velocities, and joint angular velocities of a plurality of joints of the legged robot at the current time point are acquired.
311. The foot type robot controls the joints to rotate according to the joint torques of the joints, and drives the foot type robot to move.
And controlling the joints of the legged robot to rotate through the determined joint torques of the joints, so that the real centroid position of the legged robot coincides with the determined centroid position, the legged robot moves from the initial position to the target position, and at any time point in the moving process, the real centroid position of the legged robot at the time point coincides with the determined centroid position at the time point, so that the legged robot moves along the determined centroid moving track. And when the foot type robot moves to the target position in the process of moving along the movement track of the center of mass, the feet of the foot type robot fall on the position of the target foot-falling point.
In one possible implementation, this step 311 includes: and controlling the joints to rotate according to the joint angles and the joint torques of the joints to drive the foot type robot to move.
The joints are controlled to rotate according to the joint angles and the joint torques, so that the joints can be kept at the corresponding joint angles, the feet of the foot type robot can be lifted or dropped, and the mass center of the foot type robot is ensured to move along the determined mass center moving track.
It should be noted that, in the embodiment of the present application, a moving process of the legged robot from the starting position to the target position is described, but in another embodiment, after the legged robot reaches the target position, the legged robot may further continue to perform the next moving process, and the target position of the previous moving process is taken as the starting position of the next moving process, and the above-mentioned steps 301 and 311 are performed to move the legged robot to the target position of the next process, thereby implementing a plurality of continuous moving processes of the legged robot.
In a possible implementation manner, the target position of the last moving process is taken as the target position of the legged robot, after the target position of the legged robot in the current moving process is determined, whether the target position coincides with the target position is detected, in response to the target position not coinciding with the target position, first state data is set for the target position, and in response to the target position coinciding with the target position, second state data is set for the target position.
The first state data comprises a mass center speed and a mass center acceleration which are not 0, and the second state data comprises a mass center speed and a mass center acceleration which are 0. After the foot robot moves to the target position, the foot robot stops and does not move any more, the target position can be any set position, and if the foot robot needs to move to the room a, the position of the doorway of the room a is taken as the target position. Responding to that the target position is not coincident with the target position, indicating that the foot type robot needs to move continuously after reaching the target position in the current moving process, and executing the next moving process, wherein in order to ensure the moving continuity of the foot type robot, the mass center speed and the mass center acceleration of the foot type robot are not 0; and in response to the target position being coincident with the target position, the legged robot stops and does not move any more after reaching the target position of the current moving process, and in order to ensure the stability of the legged robot, the mass center speed and the mass center acceleration of the legged robot are 0, so that the legged robot can stop at the target position.
It should be noted that the embodiment of the present application is described with the foot robot as the executing subject, and in another embodiment, the above steps 301-311 are executed by the server, and the server is based on the centroid position P (t)0) And the target position is used for determining joint torques of a plurality of joints of the foot type robot, sending a movement instruction to the foot type robot, wherein the movement instruction carries the joint torques of the plurality of joints, and the foot type robot controls the plurality of joints to rotate according to the joint torques of the plurality of joints to drive the foot type robot to move.
In one possible implementation manner, the server establishes communication connection with a plurality of joints of the foot robot, the server sends rotation instructions to the plurality of joints of the foot robot according to the determined joint torques of the plurality of joints, the rotation instructions carry the joint torques of the corresponding joints, and the rotation instructions received by the plurality of joints of the foot robot rotate according to the corresponding joint torques to drive the foot robot to move.
It should be noted that, in the embodiment of the present application, the foot robot is described as an execution subject, and in another embodiment, the steps 301 and 308 are executed by the server, after the server acquires the first relationship data corresponding to the constant C whose value is determined and the target foot-landing position, the first relationship data corresponding to the constant C whose value is determined and the target foot-landing position are sent to the foot robot, and the foot robot executes the steps 309 and 311, thereby controlling the movement of the foot robot.
The invention converts the centroid track determination process of the foot robot into a mixed integer quadratic programming problem, optimizes the gait of the foot robot stepping by selecting the position of a target foot-falling point from a plurality of candidate foot-falling points and optimizing the gait of the foot robot stepping by considering the stress condition of the foot robot, the friction force constraint of the foot and the ground contact and the space constraint condition met by the foot stepping in the moving process of the foot robot, thereby ensuring the accuracy of the determined centroid track of the foot robot, being suitable for various gaits (such as biped walking, quadruped running or random gait and the like) of various foot robots (such as biped walking, quadruped running or random gait and the like) in various environments (such as flat ground, uneven ground, slope, stair and the like) and having universality.
The method provided by the embodiment of the application determines target state data of the foot robot at the target position through the candidate foot-landing point positions of the foot robot without detecting the states of all joints of the foot robot, predicts the predicted state data of the foot robot at the target position through the first relation data, determines the constant C in the first relation data and the value of the coefficient beta of each candidate foot-landing point position by minimizing the state data error between the predicted state data and the expected target state data, ensures the accuracy of the value of the constant C and the value of the coefficient beta of each candidate foot-landing point position, determines the corresponding centroid track according to the constant C determined by the value, improves the accuracy of the centroid track of the foot robot, and can also determine the value of the coefficient beta of each candidate foot-landing point position, the method has the advantages that the target foot-falling point position of at least one foot when the foot type robot moves to the target position is determined, the feasibility of moving the foot type robot to the target position is guaranteed, the method can be applied to the foot type robot with any number of feet, and the application range is wide.
At least one foot is constrained to move only in a movable space range through space constraint conditions, and the feasibility of foot movement of the foot type robot is ensured, so that the accuracy of the value of the determined constant C and the coefficient beta of each candidate foot-landing point position is ensured.
And through the created acting force constraint condition, the stress condition of at least one foot of the foot type robot meets the constraint condition, so that the stress condition of the foot type robot meets the requirement, and the accuracy of the determined constant C and the value of the coefficient beta of each candidate foot-landing point position is ensured.
The method has the advantages that any foot of the foot type robot can be limited to only fall on one candidate foot-falling point position in the candidate foot-falling point positions corresponding to the foot at any time point through the coefficient constraint condition of the at least one foot, so that the foot stepping accuracy of the foot type robot is guaranteed, the condition that one foot falls on two candidate foot-falling point positions at the same time is avoided, and the accuracy of the constant C and the value of the coefficient beta of each candidate foot-falling point position is guaranteed.
And limiting the number of feet of the legged robot contacting with the ground at the target position through the third relational data, wherein each foot can only fall on one candidate foot-falling point position, so that the accuracy of the value of the determined constant C and the coefficient beta of each candidate foot-falling point position is ensured.
And (3) ensuring that each foot only steps once in the process that the foot type robot moves from the initial position to the target position through a stepping time sequence constraint condition so as to ensure the accuracy of the value of the determined constant C and the coefficient beta of each candidate foot-falling point position.
And the foot type robot is ensured to have enough time in the stepping process through the created stepping time constraint condition, so that the foot of the foot type robot realizes stepping action within the enough time, the moving feasibility of the foot type robot is ensured, and the accuracy of the determined constant C and the value of the coefficient beta of each candidate foot-falling point position is ensured.
By creating the fifth relation data, the acting force applied by at least one foot configured by the foot type robot when the foot is contacted with the ground is considered, the accuracy of the centroid track of the foot type robot is improved, the foot type robot can move according to the determined centroid track, the feasibility and the efficiency of the determined centroid track are ensured, and the diversity and the universality of the determined centroid track are also ensured.
As shown in fig. 6, the present invention provides a frame diagram of a legged robot system for controlling the movement of a legged robot, and the legged robot system includes a visual perception subsystem 601, a trajectory generation subsystem 602, and a movement control subsystem 603.
The vision perception subsystem 601 acquires a target position and a stepping sequence of the legged robot according to the state data of the legged robot, and transmits the acquired target position and stepping sequence of the legged robot to the trajectory generation subsystem 602.
The trajectory generation subsystem 602 receives the target position and the stepping sequence of the legged robot sent by the vision perception subsystem 601, determines the centroid movement trajectory of the legged robot according to the acquired state data of the legged robot, determines the joint moment of each joint of the legged robot according to the determined centroid movement trajectory of the legged robot, and sends the determined joint moment of each joint of the legged robot to the movement control subsystem 603.
The movement control subsystem 603 receives the determined joint moment of each joint of the foot robot sent by the trajectory generation subsystem 602, controls each joint to rotate according to the determined joint moment of each joint of the foot robot, drives the foot robot to move, monitors state data of the foot robot in real time in the process of controlling the movement of the foot robot, and ensures that the foot robot can stably move.
The above embodiments relate to the first relationship data, the second relationship data and the fourth relationship data, and on the basis of the above embodiments, the following embodiments will describe the creation processes of the above three types of relationship data in detail:
first, a process of creating first relationship data:
1. the stepping sequence of the foot type robot is obtained, and the process that the foot type robot moves from the initial position to the target position is divided into a plurality of continuous moving sub-processes according to the stepping sequence of the foot type robot.
The stepping sequence indicates the stepping sequence among a plurality of feet of the foot type robot, and the step action executed by any foot is called a moving subprocess.
In addition, in order to ensure that a plurality of moving sub-processes are continuous among the plurality of moving sub-processes, for two adjacent moving sub-processes, the ending position of the previous moving sub-process is the same as the starting position of the next moving sub-process.
2. First relationship data is created separately for each of the mobile sub-processes.
In the plurality of moving subprocesses, the moving subprocesses are different, and the influence on the centroid position of the foot type robot is different, so that the constants C corresponding to the moving subprocesses are different. First relationship data is created separately for each mobile sub-process.
In a kth move subprocess of the plurality of move subprocesses, setting the first relationship data as: the centroid position P (t) of the legged robot is a duration matrix E and a constant CkThe constant CkThe following relationship is satisfied:
Figure BDA0002882924780000461
wherein k is a positive integer of not less than 1, CxkConstant C corresponding to the kth mobile subprocesskComponent in the x-axis, CykConstant C corresponding to the kth mobile subprocesskComponent in the y-axis, CzkConstant C corresponding to the kth mobile subprocesskComponent in the z-axis.
The first relationship data corresponding to the kth mobile subprocess can be represented by the following function:
Figure BDA0002882924780000462
Et=[1 t t2 … tn]
Tk-1≤t≤Tk
wherein the P isinitIs a constant vector and is used for representing the initial centroid position of the legged robot at the beginning of any moving period; etRepresenting a duration vector; cxkConstant C representing the correspondence of the kth mobile subprocesskComponent in the x-axis, CykConstant C representing the correspondence of the kth mobile subprocesskComponent in the y-axis, CzkConstant C corresponding to the kth mobile subprocesskComponent in the z-axis, C*k=[C*k,0 C*k,1 C*k,2 C*k,3]TMay represent the x, y, z axes,
Figure BDA0002882924780000463
represents a constant C*kFor a column vector comprising 4 dimensions,
Figure BDA0002882924780000464
representing a set of real numbers in a multi-dimensional space; the movement duration of each movement process is tnN represents the number of the plurality of moving sub-processes, the sum of the moving time lengths of the first k-1 moving processes is
Figure BDA0002882924780000465
The sum of the moving time lengths of the first k moving processes is
Figure BDA0002882924780000471
3. And according to the first relation data of the plurality of moving subprocesses, creating first relation data corresponding to the movement of the legged robot from the initial position to the target position.
Since the moving process of the foot robot from the initial position to the target position is composed of a plurality of moving subprocesses of the foot robot, the constant C in the first relation data corresponding to the movement of the foot robot from the initial position to the target position is the constant C corresponding to the plurality of moving subprocesseskThe components of the components are as follows,that is, the constant C corresponding to each moving subprocess is included in the constant C in the first relation data corresponding to the movement of the legged robot from the initial position to the target positionkComponents in the x, y, z axes.
In one possible implementation, the first relationship data corresponding to the movement of the legged robot from the initial position to the target position can be represented by the following function:
Figure BDA0002882924780000472
C=[C1 C2 … Ck … Cn]T
wherein the P isinitThe constant vector is used for representing the initial centroid position of the legged robot at the beginning of any moving period; etRepresenting a duration vector; c represents a constant in the first relation data corresponding to the movement of the legged robot from the initial position to the target position; c1Denotes the constant, C, corresponding to the first mobile subprocess2Denotes a constant, C, corresponding to the second mobile subprocesskDenotes a constant, C, corresponding to the kth mobile sub-processnDenotes a constant corresponding to the nth mobile subprocess, and T denotes a transposition of the matrix.
In addition, the number of dimensions included in the determination constant C can be determined from the variables in the first relational data. As shown in fig. 5, the movement of the legged robot from the initial position to the target position includes 8 movement subprocesses, which are a movement subprocess 701, a movement subprocess 702, a movement subprocess 703, a movement subprocess 704, a movement subprocess 705, a movement subprocess 706, a movement subprocess 707, and a movement subprocess 708 in the chronological order. The number of components contained in the x, y, and z axes in the constant C is 3, and the time length vector E in the first relational data istIncluding 4 dimension interval durations, the number of dimensions contained in the constant C, 3 × 8 × 4, may be determined to be 96. Since the target position of the previous move subprocess is the same as the start position of the next move subprocess in any two adjacent move subprocesses, the constant C is used for ensuring the continuity of 8 move subprocessesThe number of dimensions indicating the continuity of the 8 movers is 3 × 7 × 3 — 63, where the first 3 indicates the number of components in the x, y, and z axes, 7 indicates that 7 of the 8 movers have the same position, and the second 3 indicates that the state data corresponding to each position includes 3 variables including the centroid position, the centroid velocity, and the centroid acceleration. Since the legged robot specifies the state data of the initial position of the first locomotion subprocess and the state data of the target position of the last locomotion subprocess among the 8 locomotion subprocesses, the degree of dimension of the state data indicating the specified positions of the 8 locomotion subprocesses in the constant C is 3 × 6 — 18. Where 3 denotes the number of components in the x, y, and z axes, and 6 denotes the number of values included in the state data at the two determined positions. Then the first constant CfreeThe dimensional number contained in (1) is 96-63-18 ═ 15.
The embodiment of the present application is only described in the context of creating the first relationship data, and in addition, the centroid velocity corresponding to the centroid position p (t) in the kth moving subprocess can be created according to the first relationship data of the kth moving subprocess
Figure BDA0002882924780000481
Data of relation with interval duration t and centroid acceleration corresponding to centroid position P (t)
Figure BDA0002882924780000487
And the interval duration t.
In a possible implementation manner, the first relation data of the kth moving subprocess is subjected to the first derivative on the interval duration t to obtain the centroid speed corresponding to the centroid position p (t) in the kth moving subprocess
Figure BDA0002882924780000482
And a time interval duration t, which can be expressed as a function of:
Figure BDA0002882924780000483
wherein E isvRepresenting a time matrix by a duration vector EtThe first derivative of the interval duration t is obtained,
Figure BDA0002882924780000484
represents a time matrix EvA row vector of 4 dimensions; k is a positive integer of not less than 1, CxkConstant C corresponding to the kth mobile subprocesskComponent in the x-axis, CykConstant C corresponding to the kth mobile subprocesskComponent in the y-axis, CzkConstant C corresponding to the kth mobile subprocesskComponent in the z-axis.
In a possible implementation manner, the second derivative is performed on the interval duration t by using the first relation data of the kth moving subprocess to obtain the centroid acceleration corresponding to the centroid position p (t) in the kth moving subprocess
Figure BDA0002882924780000488
And a time interval duration t, which can be expressed as a function of:
Figure BDA0002882924780000485
wherein E isaRepresenting a time matrix by a duration vector EtThe second derivative of the interval duration t is obtained.
Figure BDA0002882924780000486
Represents a time matrix EaA row vector of 4 dimensions; k is a positive integer of not less than 1, CxkA third constant C representing the correspondence of the kth mobile subprocesskComponent in the x-axis, CykA third constant C representing the correspondence of the kth mobile subprocesskComponent in the y-axis, CzkA third constant C representing the correspondence of the kth mobile subprocesskComponent in the z-axis.
Second, a process of creating fifth relational data:
1. relational data between the forces to which at least one foot of the legged robot is subjected and the gravitational and angular momenta are created.
In the foot robot, the relation data between the acting force received by at least one foot of the foot robot and the gravity and the angular momentum are stored in the form of descriptive sentences or functions.
In one possible implementation, the data of the relationship between the force to which at least one foot of the legged robot is subjected and the gravity and angular momentum is expressed as the following function:
Figure BDA0002882924780000491
wherein m represents the mass of the legged robot;
Figure BDA0002882924780000492
representing a second derivative of the barycentric position P (t) of the legged robot to the interval duration t, and taking the second derivative as a barycentric acceleration corresponding to the barycentric position P (t) of the legged robot; g represents the acceleration of gravity, which is the acceleration of gravity
Figure BDA0002882924780000493
A column vector representing 3 dimensions of the gravitational acceleration g,
Figure BDA0002882924780000494
a set of real numbers representing a multi-dimensional space; l represents angular momentum of the legged robot
Figure BDA0002882924780000495
A column vector representing 3 dimensions of angular momentum L,
Figure BDA0002882924780000496
a first derivative of the angular momentum L to the interval duration t is shown, and the change quantity of the angular momentum L is shown; y represents the number of feet of the foot type robot contacting with the ground; z'3×3An identity matrix of 3 rows and 3 columns; r isiOf legged robotsThe contact point position of the ith foot in contact with the ground, wherein i is a positive integer not less than 1 and not more than Y;
Figure BDA0002882924780000497
indicating a point of contact riA skew-symmetric matrix of (a);
Figure BDA0002882924780000498
a diagonal symmetry matrix representing the centroid position p (t); f. ofiThe acting force is the acting force of the ith foot of the foot type robot contacting with the ground.
The above relational expression is used for expressing a centroid kinetic equation of the foot type robot, expressing a relation between the movement of the foot type robot and an external force applied to the foot type robot, and the external force applied to the foot type robot conforms to Newton's law and Euler's equation. The gravity of the foot type robot is equal to the sum of all external forces applied to the foot type robot, and the first derivative of the angular momentum of the foot type robot to the time length is equal to the moment applied to the foot type robot.
2. And creating relation data between the acting force and the gravity of at least one foot of the foot type robot according to the relation data between the acting force and the gravity and the angular momentum of at least one foot of the foot type robot.
According to the relation data between the acting force received by at least one foot of the foot type robot and the gravity and the angular momentum, the sum of the acting force received by the foot type robot is equal to the gravity of the foot type robot, namely the relation formula can be obtained
Figure BDA0002882924780000499
And substituting the relation into relation data between the acting force and the gravity and the angular momentum received by at least one foot of the foot type robot to obtain the relation data between the acting force and the gravity received by at least one foot of the foot type robot, wherein the relation data can be expressed by the following functions:
Figure BDA0002882924780000501
Figure BDA0002882924780000502
f0=[f1 f2 … fn]T
wherein m represents the mass of the legged robot;
Figure BDA0002882924780000503
representing a second derivative of the centroid position P (t) of the foot robot to the interval duration t, and taking the second derivative as a centroid acceleration corresponding to the centroid position P (t) of the foot robot; g represents the acceleration of gravity, which is the acceleration of gravity
Figure BDA0002882924780000504
A column vector representing 3 dimensions of the gravitational acceleration g,
Figure BDA0002882924780000505
a set of real numbers representing a multi-dimensional space; l represents angular momentum of the legged robot
Figure BDA0002882924780000506
A column vector representing 3 dimensions of angular momentum L,
Figure BDA0002882924780000507
represents the first derivative of the angular momentum L with respect to the interval duration t;
Figure BDA0002882924780000508
a diagonal symmetry matrix representing the centroid position p (t); f. of0The system is used for representing the sum of the acting forces of at least one foot of the legged robot in contact with the ground; g is a constant matrix
Figure BDA0002882924780000509
The constant matrix G is represented as a matrix of 6 rows and 3Y columns,
Figure BDA00028829247800005010
a set of real numbers representing a multi-dimensional space; z'3×3An identity matrix of 3 rows and 3 columns; r isiThe position of a contact point of the ith foot of the foot type robot, which is contacted with the ground, is represented, and i is a positive integer not less than 1 and not more than Y; y represents the number of feet of the foot type robot contacting with the ground;
Figure BDA00028829247800005011
indicating a point of contact riIs used to form the oblique symmetric matrix.
3. And according to the relation data between the acting force received by at least one foot of the foot type robot and the gravity and the centroid position P (t) of the foot type robot, establishing the relation data between the acting force received by at least one foot of the foot type robot and the centroid position P (t) of the foot type robot.
Wherein, the centroid position P (t) of the foot robot satisfies the following relation:
P(t)=Pinit+Pt
wherein the P isinitIs a constant vector and is used for representing the initial centroid position of the legged robot at the beginning of any moving period; ptAnd the mass center position variation of the foot type robot after the mass center position enters the interval duration t from the starting time point of the planning cycle is represented. In the embodiment of the present application, the initial centroid position PinitThe same as the position of the center of mass included in the state data of the legged robot at the initial position.
A relationship P (t) P satisfied by the centroid position P (t)init+PtSubstituting the relation data between the acting force received by at least one foot of the foot type robot and the gravity into the relation data between the acting force received by at least one foot of the foot type robot and the centroid position P (t) of the foot type robot, wherein the relation data can be expressed by the following functions:
Figure BDA0002882924780000511
wherein G is a constant matrix, the constant matrix
Figure BDA0002882924780000512
The constant matrix G is represented as a matrix of 6 rows and 3Y columns,
Figure BDA0002882924780000513
a set of real numbers representing a multi-dimensional space; f. of0The system is used for representing the sum of the acting forces of at least one foot of the legged robot in contact with the ground; m represents the mass of the legged robot; ptRepresenting the mass center position variation of the mass center position of the legged robot after the mass center position enters the interval duration t from the starting time point of the planning cycle;
Figure BDA0002882924780000514
representing the amount of change P in the position of the center of masstA second derivative of the interval duration t; the P isinitIs a constant vector and is used for representing the initial centroid position of the legged robot at the beginning of any moving period,
Figure BDA0002882924780000515
is a constant vector PinitA skew-symmetric matrix of (a); g represents the acceleration of the gravity,
Figure BDA0002882924780000516
a column vector representing 3 dimensions of the gravitational acceleration g;
Figure BDA0002882924780000517
an oblique symmetry matrix representing the gravitational acceleration g,
Figure BDA0002882924780000518
a skew symmetric matrix representing the amount of change in the centroid position; l represents angular momentum of the legged robot
Figure BDA0002882924780000519
A column vector representing 3 dimensions of angular momentum L,
Figure BDA00028829247800005110
representing one of the angular momentum L to the interval duration tThe second derivative.
4. Fifth relation data is created from relation data between the acting force to which at least one foot of the legged robot is subjected and the position of the center of mass p (t) of the legged robot.
Because the mass center position variation satisfies the relation
Figure BDA00028829247800005111
In the above-mentioned relation data between the acting force applied to at least one foot of the legged robot and the position p (t) of the center of mass of the legged robot,
Figure BDA00028829247800005112
the following relationship is satisfied:
Figure BDA00028829247800005113
wherein the content of the first and second substances,
Figure BDA00028829247800005114
representing the amount of change P in the position of the center of masstThe components in the plane formed by the x and y axes,
Figure BDA00028829247800005115
the corresponding z coordinate is 0;
Figure BDA00028829247800005116
representing the amount of change P in the position of the center of masstA component in the z-axis;
Figure BDA00028829247800005117
the corresponding x and y coordinates are 0;
Figure BDA00028829247800005118
representing the amount of change P in the position of the centroidtA skew-symmetric matrix of components in a plane formed by the x and y axes;
Figure BDA00028829247800005119
representing the amount of change P in the position of the center of masstThe second derivative of the component on the plane formed by the axes x and y to the interval duration t also represents the component of the centroid acceleration on the plane formed by the axes x and y;
Figure BDA00028829247800005120
representing the amount of change P in the position of the centroidtThe second derivative of the component in the z-axis to the interval duration t also represents the component of the centroid acceleration in the z-axis;
Figure BDA00028829247800005121
representing the amount of change P in the position of the center of masstA diagonally symmetric matrix of components in the z-axis;
Figure BDA00028829247800005122
representing the moment about the Z-axis.
Figure BDA00028829247800005123
Indicating a moment in a certain direction within the xy-plane. Due to the fact that
Figure BDA00028829247800005124
And
Figure BDA00028829247800005125
co-linear, then
Figure BDA00028829247800005126
Is 0.
Since the motion of the legged robot in the z-axis direction is stable and the amount of change is small during the motion of the legged robot, the amount of change in the above relational expression can be ignored
Figure BDA0002882924780000521
And
Figure BDA0002882924780000522
is small and can be ignored, at least one foot of the foot type robot receives the acting force and the mass center position P (t) of the foot type robot
Figure BDA0002882924780000523
Can be omitted.
Considering the attitude of the legged robot at the initial time point in a planning period as
Figure BDA0002882924780000524
The attitude of the legged robot at the end point in time is
Figure BDA0002882924780000525
The attitude of the legged robot during the planning cycle changes to
Figure BDA0002882924780000526
The attitude change can be expressed as the attitude of the legged robot from an initial point in time
Figure BDA0002882924780000527
Angle of rotation gamma about unit axis
Figure BDA0002882924780000528
Get the attitude of the end time point as
Figure BDA0002882924780000529
The unit axis gamma and the rotation angle
Figure BDA00028829247800005210
The following relationship is satisfied:
Figure BDA00028829247800005211
Figure BDA00028829247800005212
wherein the content of the first and second substances,
Figure BDA00028829247800005213
and Δ R are matrices of 3 rows and 3 columns; Δ RijThe value of i is 1, 2 or 3 for the element of the ith row and jth column in the attitude change delta R; j takes the value 1, 2 or 3; sin (·) is used to represent a sine function; cos (-) is used to represent the cosine function.
According to a curve interpolation method, carrying out curve difference calculation on the rotation angle theta to obtain relation data theta (t) between the rotation angle theta and the interval time t, and enabling the relation data theta (t) to meet the following relation:
Figure BDA00028829247800005214
wherein, tsDenotes the initial point in time, teIndicates the end time point, θ (t)s) 0 indicates that the rotation angle θ of the legged robot is 0 at the initial time point;
Figure BDA00028829247800005215
representing that the angular velocity of the legged robot is 0 at an initial time point;
Figure BDA00028829247800005216
indicates that the robot has a rotation angle at the end time point of the robot
Figure BDA00028829247800005217
The
Figure BDA00028829247800005218
Is a constant;
Figure BDA00028829247800005219
indicating that the angular velocity of the legged robot is 0 at the end time point.
Creating relation data R (t) between the posture of the foot robot and the interval duration t through the relation data theta (t), wherein the relation data R (t) satisfies the following relation:
Figure BDA00028829247800005220
wherein, IAn identity matrix of 3 rows and 3 columns; sin (·) is used to represent a sine function; cos (-) is used to represent a cosine function; theta (t) is used for expressing the relation between the rotation angle theta of the foot type robot and the interval time t; γ represents a unit axis around which the posture of the foot robot changes;
Figure BDA00028829247800005221
an oblique symmetry matrix being the single axis y;
Figure BDA00028829247800005222
representing the pose of the legged robot at the initial point in time.
With the relationship data r (t), eighth relationship data is created which satisfies the following relationship:
Figure BDA0002882924780000531
Figure BDA0002882924780000532
wherein, I0Representing the moment of inertia of the legged robot about the center of mass; gamma represents a unit axis around which the posture of the legged robot changes; theta (t) is used for expressing the relation between the rotation angle theta of the foot type robot and the interval time t;
Figure BDA0002882924780000533
the device is used for expressing the relation between the angular speed of the foot type robot rotating around the unit axis and the interval duration t;
Figure BDA0002882924780000534
which is used to express the relationship between the angular acceleration of the legged robot rotating around the unit axis and the interval duration t.
Then the relation data between the acting force received by at least one foot of the foot type robot and the centroid position P (t) of the foot type robot is transformed, and the relation data between the acting force received by at least one foot of the foot type robot and the centroid position P (t) of the foot type robot after transformation satisfies the following relation:
Gf0≈H0X′t-Wg
Figure BDA0002882924780000535
wherein G is a constant matrix, the constant matrix
Figure BDA0002882924780000536
The constant matrix G is represented as a matrix of 6 rows and 3Y columns,
Figure BDA0002882924780000537
a set of real numbers representing a multi-dimensional space; f. of0The system is used for representing the sum of the acting forces of at least one foot of the legged robot in contact with the ground; h0Is a constant matrix; wgIs a constant vector; x'tRepresenting the amount of change P in the position of the center of masstAnd acceleration of center of mass
Figure BDA0002882924780000538
A set of variance; m represents the mass of the legged robot; z'3×3An identity matrix of 3 rows and 3 columns; the P isinitIs a constant vector and is used for representing the initial centroid position of the legged robot at the beginning of any moving period;
Figure BDA0002882924780000539
is a constant vector PinitA skew-symmetric matrix of (a); g represents the acceleration of the gravity,
Figure BDA00028829247800005310
a column vector representing 3 dimensions of the gravitational acceleration g;
Figure BDA00028829247800005311
an oblique symmetric matrix representing the gravitational acceleration g.
The centroid acceleration corresponding to the first relation data and the centroid position P (t)
Figure BDA00028829247800005314
Substituting the relation data with the interval duration t into the relation data between the acting force applied to at least one foot of the foot type robot after transformation and the centroid position P (t) of the foot type robot to obtain fifth relation data, wherein the fifth relation data satisfies the following relation:
Gf0≈HC-Wg
Figure BDA00028829247800005312
wherein G is a constant matrix, f0The system is used for representing the sum of the acting forces of at least one foot of the legged robot in contact with the ground; h denotes a coefficient matrix with respect to the interval duration t; c is a constant matrix; wgIs a constant vector; h0Is a constant matrix; etRepresenting a duration vector; eaRepresenting a time matrix by a duration vector EtObtained by taking the 2 nd derivative of the interval duration t,
Figure BDA00028829247800005313
represents a time matrix EaA row vector of 4 dimensions; t denotes the transpose of the vector.
Third, a friction constraint is created.
During the movement of the foot robot, the foot robot is constrained by friction: the friction force of the foot contacting with the ground in the foot type robot is more than 0, and the friction force of the foot is not less than the acting force f of the foot contacting with the groundiThe component force in the direction of the friction force avoids the relative sliding between the foot and the ground, thereby ensuring that the foot type robot can move normally. Acting force f corresponding to at least one foot of foot type robotiAll are restrained by friction force, and satisfy the following relations:
N′i T fi≤0
N′i=-[μini-oi μini+oi μini-ti μini+ti]
wherein, N'iThe vector matrix represents the contact point of the ith foot of the legged robot in contact with the ground; n isiIs the normal vector of the contact point of the ith foot of the legged robot and the ground,
Figure BDA0002882924780000541
represents a normal vector niIs a column vector of 3 dimensions and,
Figure BDA0002882924780000542
a set of real numbers representing a multi-dimensional space; oi、tiTwo tangent vectors on a plane perpendicular to the normal vector of the contact point of the ith foot of the legged robot with the ground, i.e., tangent vector oiAnd tangent vector tiOrthogonal, oi
Figure BDA0002882924780000543
Represents tangent vector oiAnd the tangent vector tiColumn vectors of 3 dimensions each; t denotes the transpose of the vector, μiThe friction coefficient between the ith foot and the ground of the foot type robot.
Because the legged robot is restrained by friction force in the moving process of the legged robot, the direction of the acting force received by the contact between the ith foot in contact with the ground and the ground in the legged robot is in a cone, the contact point of the ith foot and the ground is the vertex of the cone, and the connecting line from the vertex to any point of the base circle of the cone in the cone can be used as the acting force f received by the contact between the ith foot and the groundiIn the direction of (a). In order to avoid introducing non-linear constraint, the cone is approximately in the shape of a rectangular pyramid, and the force f applied to the contact of the ith foot and the groundiThe following relationship is satisfied:
Figure BDA0002882924780000544
wherein, muiIs the coefficient of friction; n isiIs the normal vector of the contact point of the ith foot of the legged robot and the ground,
Figure BDA0002882924780000545
represents a normal vector niIs a column vector of 3 dimensions and,
Figure BDA0002882924780000546
a set of real numbers representing a multi-dimensional space; oi、tiTwo tangent vectors on a plane perpendicular to the normal vector of the contact point of the ith foot of the legged robot with the ground, i.e., tangent vector oiAnd tangent vector tiOrthogonal, oi
Figure BDA0002882924780000547
Represents tangent vector oiAnd the tangent vector tiColumn vectors of 3 dimensions each; t denotes the transpose of the vector;
Figure BDA0002882924780000548
represents the minimum value of the acting force of the ith foot of the foot type robot contacting with the ground in the normal direction,
Figure BDA0002882924780000549
represents the maximum value of the acting force of the ith foot of the foot type robot contacting with the ground in the normal direction,
Figure BDA00028829247800005410
are all larger than 0, and are all larger than 0,
Figure BDA00028829247800005411
Figure BDA0002882924780000551
can be any value set.
Figure BDA0002882924780000552
Normal vectors for representing four sides of a rectangular pyramid。
By the above relational expression, the acting force f received by the contact between the ith foot of the foot type robot and the groundiThe restraint of component force on four sides of the rectangular pyramid and the acting force f applied to the contact between the ith foot of the legged robot and the groundiThe normal component force is restrained, so that the ith foot of the legged robot is contacted with the ground to receive the acting force fiIs limited to a rectangular pyramid.
When the foot type robot moves and is at any position, acting forces corresponding to all feet of the foot type robot are restrained by friction force to satisfy the following relations:
NTf0≤0
Figure BDA0002882924780000553
wherein N represents a vector matrix of contact points of all feet of the legged robot in contact with the ground; f. of0The system is used for representing the sum of the acting forces of at least one foot of the legged robot in contact with the ground; n'1The vector matrix represents the contact point of the 1 st foot of the legged robot in contact with the ground; n'2The vector matrix represents the contact point of the 2 nd foot of the legged robot in contact with the ground; n'YThe vector matrix represents the contact point of the Yth foot of the legged robot in contact with the ground; t denotes the transpose of the vector.
When any foot of the foot type robot is contacted with the ground, the acting force applied by the contact of the foot and the ground meets the acting force constraint condition, and the acting force constraint condition meets the following relation:
Figure BDA0002882924780000554
wherein n isiNormal vector of the contact point of the ith foot of the legged robot with the ground, fiThe acting force of the contact between the ith foot and the ground;
Figure BDA0002882924780000555
the maximum acting force which can be applied when the ith foot of the foot type robot is in contact with the ground.
Fourthly, creating space constraint conditions:
the working space of the foot robot is generally a non-convex area and can be approximated to a convex polyhedron. The convex polyhedron comprises a plurality of faces, each face being represented by the following linear inequality:
Figure BDA0002882924780000556
wherein s isilAn outer normal vector representing the ith face of the convex polyhedron of the ith foot; l is (1, 2, …, L)total),LtotalIs a positive integer not less than 4; x is the number ofiThe coordinate of the position of the foot-falling point of the ith foot of the foot robot under the coordinate system of the shoulder joint of the leg where the ith foot is located is represented; dilAnd the projection value of a vector formed by the origin pointing to any point in the ith surface of the convex polyhedron from the outside of the ith surface in the normal direction is represented. As shown in fig. 4, the coordinate system 404 of the shoulder joint of the leg of the legged robot.
The method comprises the steps of obtaining an initial space constraint condition by connecting linear inequalities of a plurality of surfaces of a convex polyhedron of a foot of the foot type robot, wherein the initial space constraint condition is as follows:
Figure BDA0002882924780000561
Si=[si1,si2,…,sil];
di=[di1,di2,…,dil]T
wherein s isi1An outer normal vector representing the 1 st face of the convex polyhedron of the ith foot; si2An outer normal vector representing the 2 nd face of the convex polyhedron of the ith foot; silOuter of the ith plane of the convex polyhedron workspace representing the ith footA normal vector; siA set of outer normal vectors representing a plurality of faces of a convex polyhedron of the ith foot; x is a radical of a fluorine atomiThe coordinate of the position of the foot-falling point of the ith foot of the foot robot under the coordinate system of the shoulder joint of the leg where the ith foot is located is represented; di1The projection value of the vector which is formed by the origin pointing to any point in the 1 st surface of the convex polyhedron outside the 1 st surface in the normal direction is represented; d is a radical ofi2The projection value of a vector which is formed by any point in the 2 nd surface of the convex polyhedron with the origin point and is normal outside the 2 nd surface is represented; d is a radical ofilRepresenting the normal projection value of a vector formed by the origin pointing to any point in the l & ltth & gt surface of the convex polyhedron outside the l & ltth & gt surface; d is a radical ofiA set of projection values of a vector, which is formed by any point in a plurality of planes of a convex polyhedron of which the origin points to the ith foot, in the normal direction outside the ith plane; t denotes a transpose of the matrix.
In the above inequality, the coordinate of the landing point position of the ith foot of the foot robot is in the coordinate system of the shoulder joint of the leg of the foot robot where the foot of the foot robot is located, and the position of the landing point position of the ith foot of the foot robot in the world coordinate system is converted into the coordinate system of the shoulder joint, that is, the coordinate xiThe following relationship is satisfied:
Figure BDA0002882924780000562
wherein x isiThe coordinate of the position of the foot-falling point of the ith foot of the foot robot under the coordinate system of the shoulder joint of the leg where the ith foot is located is represented; rilRepresenting the posture of a coordinate system of a shoulder joint of the ith foot of the legged robot relative to a body coordinate system of the legged robot; r istRepresenting the body posture of the legged robot; r isiRepresenting the coordinates of the position of the foot-falling point of the ith foot of the foot robot in a world coordinate system; pGRepresenting the position of the centroid of the legged robot in a world coordinate system; pilThe position of the shoulder joint of the ith foot of the legged robot in a body coordinate system of the legged robot is represented; t denotes a transpose of the matrix. Alternatively, position PilPosture RilIs a constant. Optionally, body posture RtEither constant or varying over time in a specified trajectory.
By the first relation data and the coordinate xiSubstituting the satisfied relational expression into the initial space constraint condition to obtain a space constraint condition satisfied by the feet of the foot robot, wherein the space constraint condition satisfies the following relation:
AiC+Biri≤bi
Figure BDA0002882924780000571
Figure BDA0002882924780000572
Figure BDA0002882924780000573
Figure BDA0002882924780000574
wherein A isi、Bi、biAll are coefficient matrixes, and C is a centroid position parameter; r isiRepresenting the coordinates of the position of the foot-falling point of the ith foot of the foot robot in a world coordinate system; siA set of outer normal vectors representing a plurality of faces of a convex polyhedron of the ith foot; rilRepresenting the posture of a coordinate system of a shoulder joint of the ith foot of the legged robot relative to a body coordinate system of the legged robot; rtRepresenting the body posture of the legged robot; t istRepresenting a time matrix; diA set of projection values of a vector which is formed by any point in a plurality of planes of the convex polyhedron of which the origin points to the ith foot and is normal outside the ith plane; pilThe position of the shoulder joint of the ith foot of the legged robot in a body coordinate system of the legged robot is represented; p isinitIs a constant vector for representing the footThe initial centroid position of the robot at the beginning of any movement cycle; etRepresenting a duration vector.
Fifthly, a process of creating second relation data:
selecting N within target moving durationnum+1 sampling time points (t)1,t2,…,tk) If each foot of the foot type robot has a plurality of candidate foot-falling point positions, the foot type robot samples at the sampling time point tkAt least one foot of the foot robot receives acting force on the candidate foot-falling point position of the foot robot, and the acting force satisfies fifth relation data, and the fifth relation data satisfies the following relation:
Figure BDA0002882924780000575
wherein N isfootRepresenting the number of feet of the legged robot; i represents the serial number of the foot type robot; j represents the serial number of the candidate foot-falling point position of the foot type robot; n is a radical ofiRepresenting the number of candidate foot-falling point positions of the ith foot of the foot robot; gi,jIs a constant matrix, fi,j,kActing force of the jth candidate foot-falling point position of the ith foot at the kth sampling time point; hkIs shown at the sampling time point tkA constant matrix of time; c is a constant matrix; wkAt a sampling time point tkA vector of constants of time.
The foot robot is at the sampling time point tkThen, the acting force constraint condition and the friction force constraint condition which are met when the ith foot of the foot robot falls on the jth candidate falling foot point position satisfy the following relations:
Figure BDA0002882924780000576
Figure BDA0002882924780000581
wherein the content of the first and second substances,ni,ja normal vector of a jth candidate foot-falling point position of an ith foot of the foot robot; f. ofi,j,kFor a legged robot at a sampling time tkThe acting force of the ith foot on the position of the jth candidate foot-falling point is measured; beta is ai,j,kFor a legged robot at a sampling time point tkThe coefficient of the ith foot at the position of the jth candidate footfall point;
Figure BDA0002882924780000582
for a legged robot at a sampling time tkThen, the maximum acting force of the jth candidate foot-falling point position of the ith foot; di,jThe friction coefficient matrix of the ith foot of the foot robot at the jth candidate foot-landing point position.
The foot type robot is at the sampling time point tkThe spatial constraint condition satisfied by the ith foot of the foot robot satisfies the following relation:
Figure BDA0002882924780000583
wherein A isi,k、Bi,k、bi,kAre all legged robots at sampling time tkC is a centroid position parameter; r isi,j,kIndicating the foot robot at the sampling time point tkThe coordinates of the jth foot landing point position of the ith foot in the world coordinate system; beta is a betai,j,kIndicating the foot robot at the sampling time point tkThe coefficient of the position of the foot falling point of the jth foot of the ith foot; n is a radical ofiThe number of candidate foot-landing point positions of the ith foot of the foot robot is shown.
And, among the plurality of sampling time points, the first sampling time point is the initial time point, and at the first sampling time point, the coefficient β of the initial foot-drop point of the ith foot of the legged roboti,j,kThe following relationship is satisfied:
βi,j,k=1;(j=0,k=0)
wherein j is 0, which represents the initial foot-drop point of the ith foot of the foot robot; k-0 denotes the first sampling point in time, i.e. the initial point in time.
At the last sampling time point, the coefficient beta of the initial foot-falling point of the ith foot of the foot roboti,j,kThe following relationship is satisfied:
βi,j,k=0;(j=0,k=Nk)
wherein j ═ 0 represents the initial foot drop point of the ith foot of the legged robot; k is NkRepresents the last sampling time point of the plurality of sampling time points, that is, the time point at which the legged robot moves to the target position.
And in the moving process of the foot type robot, at any sampling time point, any foot can only fall on one candidate foot-falling point position, or the foot is in a swing stage, and a coefficient constraint condition of at least one foot is created, wherein the coefficient constraint condition of the at least one foot satisfies the following relation:
Figure BDA0002882924780000591
wherein j represents the serial number of the candidate foot-falling point position of the foot type robot; n is a radical ofiRepresenting the number of candidate foot-falling point positions of the ith foot of the foot robot; beta is ai,j,kAnd the coefficient represents the position of the jth candidate foot-falling point of the ith foot of the legged robot at k sampling time points.
In order to ensure that the feet of the legged robot are all in contact with the ground when the legged robot moves to the target position, third relation data is created, and the third relation data satisfies the following relation:
Figure BDA0002882924780000592
wherein k is NnumRepresenting the last sampling time point in the plurality of sampling time points, namely the time point when the legged robot moves to the target position; n is a radical offootFoot of foot-type robotCounting; i represents the serial number of the foot type robot; j represents the serial number of the candidate foot-falling point position of the foot type robot; n is a radical ofiThe number of candidate foot-falling point positions of the ith foot of the foot type robot is represented; beta is ai,j,kAnd the coefficient represents the position of the jth candidate foot-falling point of the ith foot of the legged robot at k sampling time points.
In order to ensure that the foot of the foot type robot can only take one step in the process of moving the foot type robot from the initial position to the target position, a step timing constraint condition is created, and the step timing constraint condition meets the following relation:
βi,j,k≥βi,j,k+1;(j=0)
βi,j,k≤βi,j,k+1;(j=1,2,…,Ni)
wherein, betai,j,kA coefficient representing the position of the jth candidate foot-falling point of the ith foot of the legged robot at k sampling time points; beta is ai,j,k+1A coefficient representing the position of the jth candidate foot-falling point of the ith foot of the legged robot at k +1 sampling time points; j is 0, which represents the initial foot-falling point position of the ith foot of the foot robot; j is 1, 2, …, NiAnd the j candidate foot-falling point position of the ith foot of the foot robot is represented.
In order to ensure that the leg swing has enough time under the conditions of more sampling time points and small time intervals among the sampling time points, a stepping time length constraint condition is created, and the stepping time length constraint condition satisfies the following relation:
Figure BDA0002882924780000593
wherein j represents the serial number of the candidate foot-falling point position of the foot type robot; n is a radical ofiRepresenting the number of candidate foot-falling point positions of the ith foot of the foot robot; k represents the serial numbers of a plurality of sampling time points; n is a radical ofnumRepresenting the total number of a plurality of sampling periods, betai,j,kRepresents the jth foot of the ith foot of the legged robot at k sampling time pointsThe coefficients of the candidate footfall point positions; n is a radical ofβReference values are indicated.
Acting force f applied to the contact between at least one foot of the legged robot and the ground through each sampling time pointiAnd the fourth relational data, the state data error and the sum of the coefficients beta of the candidate foot-placement positions of the legged robot, creating second relational data which satisfy the following relations:
J=Jgrf+Jlen+Jtgt+Jβ
wherein J represents a target value; j. the design is a squaregrfFor representing the corresponding force f of at least one footiWeighted sum of squares of, JlenWeighted sum of squares, J, for representing a plurality of distancestgtAnd the weighted square sum is used for representing a first difference value between the predicted centroid position and the target centroid position, a second difference value between the predicted centroid speed and the target centroid speed and a third difference value between the predicted centroid acceleration and the target centroid acceleration when the foot type robot is at the target position. J. the design is a squareβA weighted sum of coefficients for candidate contact point locations for at least one foot at a plurality of sampling time points.
After the second relational data are created, the fifth relational data, the acting force constraint condition, the friction force constraint condition, the space constraint condition and the coefficient beta of the initial foot-falling point of the ith foot of the legged robot are created under the plurality of sampling point time pointsi,j,kDetermining a constant C when the target value J is a minimum value and a coefficient beta of each candidate foot-falling point position according to the coefficient constraint condition, the third relation data, the stepping time sequence constraint condition and the stepping duration constraint conditioni,j,kThe value of (A) is as follows:
J=Jgrf+Jlen+Jtgt+Jβ
Figure BDA0002882924780000601
Figure BDA0002882924780000602
Figure BDA0002882924780000603
Figure BDA0002882924780000604
βi,j,k=1;(j=0,k=0)
βi,j,k=0;(j=0,k=Nk)
Figure BDA0002882924780000605
Figure BDA0002882924780000606
βi,j,k≥βi,j,k+1;(j=0)
βi,j,k≤βi,j,k+1;(j=1,2,…,Ni)
Figure BDA0002882924780000611
i=1,2,…,Nfoot
j=0,1,2…,Ni
k=0,1,2…,Nnum
Figure BDA0002882924780000612
wherein J represents a target value; j is a unit ofgrfFor representing the corresponding force f of at least one footiWeighted sum of squares of, JlenWeighted sum of squares, J, for representing a plurality of distancestgtFor indicating that the legged robot is in the target positionAnd when the target mass center acceleration is set, the weighted square sum of a first difference value between the predicted mass center position and the target mass center position, a second difference value between the predicted mass center speed and the target mass center speed and a third difference value between the predicted mass center acceleration and the target mass center acceleration. J. the design is a squareβA weighted sum of coefficients for the initial foot-drop location and candidate contact point location for at least one foot at a plurality of sampling time points.
NfootRepresenting the number of feet of the legged robot; i represents the serial number of the foot type robot; j represents the serial number of the candidate foot-falling point position of the foot type robot; n is a radical ofiRepresenting the number of candidate foot-falling point positions of the ith foot of the foot robot; gi,jIs a constant matrix, fi,j,kActing force of the jth candidate foot-falling point position of the ith foot at the kth sampling time point; hkIs shown at the sampling time point tkA constant matrix of time; c is a centroid position parameter; wkAt a sampling time point tkA vector of constants of time.
ni,jA normal vector of a jth candidate foot-falling point position of an ith foot of the foot robot; f. ofi,j,kFor a legged robot at a sampling time tkWhen the position of the jth foot is not the candidate foot-drop point, the ith foot is subjected to the acting force; beta is ai,j,kFor a legged robot at a sampling time tkThe coefficient of the ith foot at the position of the jth candidate footfall point;
Figure BDA0002882924780000613
for a legged robot at a sampling time point tkThen, the maximum acting force of the jth candidate foot-falling point position of the ith foot; di,jThe friction coefficient matrix of the ith foot of the foot robot at the jth candidate foot-landing point position.
Ai,k、Bi,k、bi,kAre all legged robots at sampling time tkA coefficient matrix of time; r isi,j,kIndicating the foot robot at the sampling time point tkThe coordinates of the jth foot landing point position of the ith foot in the world coordinate system; j equals 0 and represents the initial foot fall of the ith foot of the legged robotA point position; k-0 represents the first sampling time point, i.e. the initial time point; j equals 0 to represent the initial foot-falling point of the ith foot of the foot robot; n is a radical ofnumIndicating the number of a plurality of time segments within the target movement duration, k being NnumRepresenting the last sampling time point in the plurality of sampling time points, namely the time point when the legged robot moves to the target position; beta is ai,j,k+1A coefficient representing the position of the jth candidate foot-falling point of the ith foot of the legged robot at k +1 sampling time points; j is 0, which represents the initial foot-falling point position of the ith foot of the foot robot; j is 1, 2, …, NiRepresenting the position of a jth candidate foot-falling point of an ith foot of the foot robot; n is a radical ofβRepresents a reference value; p (0) ═ 0 denotes that the centroid position variation amount at the initial position of the legged robot, which is determined from the first relational data, is 0;
Figure BDA0002882924780000621
represents an initial centroid velocity v of the legged robot at an initial position determined from the first relationship data0
Figure BDA0002882924780000622
Representing an initial center of mass acceleration a of the legged robot at an initial position determined from the first relationship data0
After k sampling time points are selected in the target moving time, the coefficient beta of the initial foot-falling point position of each foot at a plurality of sampling time points in the process that the foot type robot moves from the initial position to the target position can be determined through the second relation datai,j,kAnd coefficients beta of a plurality of candidate foot-landing point positions of each foot at a plurality of sampling time pointsi,j,kThe value of (a). And, passing coefficients β of initial foot-landing positions of each foot at a plurality of sampling time pointsi,j,kAnd coefficients beta of a plurality of candidate foot-landing point positions of each foot at a plurality of sampling time pointsi,j,kThe step sequence of a plurality of feet of the foot type robot and the target foot-falling point position of the foot type robot can be determined, and the initial position of the foot type robot is determinedIn the process that the starting position moves to the target position, the stepping time and the stepping finishing time of each foot are restricted, so that the stepping duration and the stepping sequence of the feet of the foot type robot are restricted, the stepping gait of the foot type robot is optimized, the target foot-falling position of the foot type robot is optimized, and the moving feasibility of the foot type robot is ensured.
The method for determining the centroid position provided by the embodiment of the application can be suitable for various foot robots, such as biped robots, quadruped robots or hexapod robots; the device can be suitable for various gaits of the foot type robot, such as biped walking, four-foot diagonal gaits, four-foot crawling gaits, six-foot diagonal gaits and the like; can be suitable for various complex environments, such as flat ground, uneven ground, slopes, stairs and the like; any order of the interval duration t can be adopted, and any moving process can be adopted in the process from the initial position to the target position; under the condition that the ground is a plane or the height difference is small, the height of the robot centroid can be kept unchanged, and the movement of the centroid in the plane is planned by only adopting 2 groups of curves; continuity constraints of curve positions, speeds, accelerations and the like can be added according to actual requirements, and independent variables still exist in curve parameters after the constraints are added; when the sampling time points are selected, sampling can be carried out at any position of the centroid position track, the more the number of the sampling time points is, the more reasonable the distribution is, the more reliable the obtained centroid movement track is, but the larger the size of the quadratic programming problem is, the longer the solving time is. In addition, in the second relational data, the acting force applied to at least one foot of the legged robot by contacting the ground and the distance corresponding to the sampling time point all have components in the three directions of the x axis, the y axis and the z axis, and different weights can be selected on the x axis, the y axis and the z axis respectively according to actual conditions to determine the weighted square sum of the acting force and the weighted square sum of the distance. In addition, in the second relation data, besides the ground acting force and the curve oscillation amplitude, the square sum of the acceleration, the square sum of the speed difference of adjacent points, the square sum of the acceleration difference and the like can be considered. Position of contact point: the contact point is not limited to the contact point between the foot of the legged robot and the ground, and is also suitable for the situation that the body, the trunk, the upper limb and other parts of the robot are in contact with the environment. According to the centroid trajectory determination method provided by the embodiment of the application, under the condition that less influence items are reasonably ignored, the centroid position, the centroid speed, the centroid acceleration constraint and the ground friction constraint are fully considered, the centroid trajectory planning problem is converted into a quadratic planning problem, and the centroid trajectory of the foot type robot is determined by utilizing the quadratic planning problem. In the quadratic programming problem, the frictional force constraint and various optimization indexes of the ground contact point are fully considered, and the feasibility and the high efficiency of the generated motion are ensured.
Fig. 8 is a schematic structural diagram of a mass center trajectory determination apparatus according to an embodiment of the present application, and as shown in fig. 8, the apparatus includes:
an obtaining module 801, configured to obtain candidate foot-landing positions of at least one foot configured by the foot robot at a target position, and a coefficient β of each candidate foot-landing position, where a value of the coefficient β is not determined;
a data determining module 802, configured to determine target state data of the legged robot at a target position according to a candidate foot-landing position of at least one foot and a coefficient β of each candidate foot-landing position;
a creating module 803, configured to create first relationship data, where the first relationship data indicates a relationship between an interval duration t and a centroid position p (t) of the legged robot, and the first relationship data includes a constant C whose value is not determined;
the data determining module 802 is further configured to determine predicted state data of the legged robot at the target position according to the target moving time and the first relation data;
a creating module 803, configured to create second relationship data according to a state data error between the target state data and the predicted state data, where the second relationship data indicates a positive correlation between the target value J and the state data error;
and a constant determining module 804, configured to determine, according to the second relationship data, a value of the constant C when the target value J is the minimum value and a coefficient β of each candidate foot-landing point position, and obtain first relationship data corresponding to the constant C whose value is determined, and at least one target foot-landing point position sufficient to the target position.
In one possible implementation, the target state data includes a target centroid location; as shown in fig. 9, the data determination module 802 includes:
a coordinate determination unit 8201, configured to determine the sum of products of the coordinates of each candidate foot placement position and the corresponding coefficient β as the coordinates of the center position of the legged robot;
a first position determination unit 8202 for determining a position above the center position and spaced apart from the center position by the height of the legged robot as a target centroid position based on the coordinates of the center position.
In another possible implementation, as shown in fig. 9, the constant determining module 804 includes:
a condition creating unit 8401 configured to create a spatial constraint condition of the at least one foot according to the first relationship data, where the spatial constraint condition is used to indicate a spatial range in which the at least one foot is movable, and the spatial constraint condition includes a constant C and a coefficient β of each candidate foot-landing point position;
and the value determination unit 8402 is configured to determine, according to the second relationship data, a value of the constant C when the target value J is the minimum value and a coefficient β of each candidate foot-landing point position when the space constraint condition is satisfied.
In another possible implementation, as shown in fig. 9, the constant determining module 804 includes:
a condition creating unit 8401, configured to create an acting force constraint condition, where the acting force constraint condition is used to indicate that an acting force applied to at least one foot in contact with the ground at each corresponding candidate foot-landing point position is not greater than an acting force extreme value corresponding to each candidate foot-landing point position, and the acting force constraint condition includes a coefficient β of each candidate foot-landing point position;
and the value determination unit 8402 is configured to determine, according to the second relationship data, a value of the constant C when the target value J is the minimum value and a coefficient β of each candidate foot-landing point position when the acting force constraint condition is satisfied.
In another possible implementation manner, the value of the coefficient β includes 1 or 0, where 1 represents that the foot of the foot robot falls on the candidate foot-falling point position corresponding to the coefficient β, and 0 represents that the foot of the foot robot does not fall on the candidate foot-falling point position corresponding to the coefficient β;
as shown in fig. 9, the constant determination module 804 includes:
a condition creating unit 8401 for creating a coefficient constraint condition of at least one foot, the coefficient constraint condition being used to indicate that the sum of coefficients β of a plurality of candidate foot-falling point positions of each foot is not more than 1 at any time point in the movement process of the legged robot;
and the value determination unit 8402 is configured to determine, according to the second relationship data, a value of the constant C when the target value J is the minimum value and a coefficient β of each candidate foot-landing point position under the condition that the constraint condition of the coefficient of at least one foot is satisfied.
In another possible implementation, as shown in fig. 9, the constant determining module 804 includes:
a first data creating unit 8403 for creating third correlation data indicating a relationship between the sum of coefficients β of candidate landing point positions of the legged robot when the legged robot is at the target position and the number of legs of the legged robot;
and the value determination unit 8402 is configured to determine, according to the second relation data and the third relation data, a value of the constant C and the coefficient β of each candidate foot-landing point position when the target value J is the minimum value.
In another possible implementation, as shown in fig. 9, the constant determining module 804 includes:
a first selecting unit 8404, configured to select multiple sampling time points within the target moving duration;
a coefficient determining unit 8405 configured to determine a coefficient β of a candidate foot landing point position of at least one foot at each sampling time point;
a condition creating unit 8401, configured to create a stepping timing constraint condition according to a coefficient β of a candidate foot-drop point position of at least one foot at each sampling time point, where the stepping timing constraint condition is used to indicate a relationship between the coefficients β of the candidate foot-drop point position of each foot at a plurality of sampling time points in a process that the legged robot moves from an initial position to a target position;
and the value determination unit 8402 is configured to determine, according to the second relationship data, a value of the constant C when the target value J is the minimum value and a coefficient β of each candidate footfall position under the condition that the step timing constraint condition is satisfied.
In another possible implementation, the step timing constraint is used to indicate that the coefficient β of any candidate landing point position of any foot of the legged robot at the previous sampling time point is not greater than the coefficient β of any candidate landing point position at the next sampling time point.
In another possible implementation, the step timing constraint is used to indicate that the coefficient β of the initial landing point position of any one foot of the legged robot at the previous sampling time point is not less than the coefficient β of the initial landing point position at the next sampling time point.
In another possible implementation manner, the value determining unit 8402 is configured to create a step duration constraint condition, where the step duration constraint condition is used to indicate that the sum of coefficients β of candidate foot landing point positions of the legged robot at multiple sampling time points is smaller than the number of the multiple sampling time points; and according to the second relational data, under the condition that a stepping time sequence constraint condition and a stepping duration constraint condition are met, determining the value of a time constant C with a target value J as a minimum value and the coefficient beta of each candidate foot-falling point position.
In another possible implementation, the step length constraint is used to indicate that the sum of the coefficients β of the candidate foot-drop positions of the legged robot at the plurality of sampling time points is not greater than a reference value, which is less than the number of the plurality of sampling time points.
In another possible implementation, the second relationship data indicates a positive correlation between the target value J and a sum of the state data error and a coefficient β of candidate foot-fall point positions of the foot robot.
In another possible implementation manner, the value of the coefficient β includes 1 or 0, where 1 represents that the feet of the foot type robot fall on the candidate falling foot point position corresponding to the coefficient β, and 0 represents that the feet of the foot type robot do not fall on the candidate falling foot point position corresponding to the coefficient β;
as shown in fig. 9, the constant determination module 804 includes:
a data obtaining unit 8406, configured to obtain first relationship data corresponding to the constant C whose value is determined, where the first relationship data is used to represent a centroid trajectory of the legged robot;
the second position determining unit 8407 is configured to determine, according to a value of the coefficient β of each candidate foot-down point position, a candidate foot-down point position corresponding to the coefficient β whose value is 1 as a target foot-down point position.
In another possible implementation, the target state data includes a target centroid position and the predicted state data includes a predicted centroid position; as shown in fig. 9, a creating module 803 includes:
a difference determination unit 8301 for determining a first difference between the target centroid position and the predicted centroid position;
a setting unit 8302 sets the target value J to the square of the first difference.
In another possible implementation, the target state data includes a target centroid velocity and the predicted state data includes a predicted centroid velocity; as shown in fig. 9, a creating module 803 includes:
a difference determination unit 8301 for determining a second difference between the target centroid velocity and the predicted centroid velocity;
a setting unit 8302 for setting the target value J to the square of the second difference.
In another possible implementation, the target state data includes a target centroid acceleration, and the predicted state data includes a predicted centroid acceleration; as shown in fig. 9, a creating module 803 includes:
a difference determination unit 8301 for determining a third difference between the target centroid acceleration and the predicted centroid acceleration;
a setting unit 8302 for setting the target value J to the square of the third difference.
In another possible implementation, as shown in fig. 9, the creating module 803 includes:
a second selecting unit 8303, configured to select a plurality of sampling time points within the target moving duration;
the data determining unit 8304 is configured to determine fourth relationship data corresponding to each sampling time point according to the interval duration between each sampling time point and the initial time point and the first relationship data, where the fourth relationship data indicates a relationship between a constant C and a sampling centroid position q (C), and the sampling centroid position q (C) indicates a centroid position of the legged robot at the corresponding sampling time point;
a second data creating unit 8305 is configured to create second relationship data according to the state data error and the fourth relationship data, where the second relationship data indicates a positive correlation between the target value J and the state data error and the sampling centroid position q (c).
In another possible implementation, the target state data includes a target centroid position and the predicted state data includes a predicted centroid position; a second data creating unit 8305 for determining a first difference between the target centroid position and the predicted centroid position; the target value J is set to a sum of a first value that is a square of the first difference and a second value that is a weighted sum of squares of a plurality of distances including an initial centroid position of the initial position, a plurality of sampled centroid positions, and a distance between any two adjacent centroid positions of the predicted centroid positions.
In another possible implementation, the target state data includes a target centroid velocity and the predicted state data includes a predicted centroid velocity; a second data creating unit 8305 for determining a second difference between the target centroid speed and the predicted centroid speed; the target value J is set to a sum of a third value and a second value, the third value being a square of the second difference, the second value being a weighted sum of squares of a plurality of distances, the plurality of distances including an initial centroid position of the initial position, a plurality of sampled centroid positions, and a distance between any two adjacent centroid positions of the predicted centroid positions.
In another possible implementation, the target state data includes a target centroid acceleration, and the predicted state data includes a predicted centroid acceleration; a second data creating unit 8305 for determining a third difference between the target centroid acceleration and the predicted centroid acceleration; setting the target value J as a sum of a fourth value and a second value, the fourth value being a square of the third difference, the second value being a weighted sum of squares of a plurality of distances, the plurality of distances including an initial centroid position of the initial position, a plurality of sampled centroid positions, and a distance between any two adjacent centroid positions of the predicted centroid positions.
In another possible implementation, the second relational data are indicative of the target value J and the error of the status data and of the force f to which at least one foot of the legged robot configuration is subjected in contact with the groundiPositive correlation between the quadratic terms of (a); as shown in fig. 9, the constant determination module 804 includes:
a first data creating unit 8403 for creating fifth relation data corresponding to at least one foot of the legged robot configuration, the fifth relation data corresponding to the at least one foot indicating an acting force f corresponding to the at least one foot, respectivelyiIn relation to the interval duration t, force fiIndicating the acting force applied to the ith foot of the foot type robot when the ith foot is in contact with the ground, wherein i is a positive integer, and the fifth relational data comprises a constant C with an undetermined value;
and the value determination unit 8402 is configured to determine, according to the second relationship data and the fifth relationship data, a value of the constant C and the coefficient β of each candidate foot-landing point position when the target value J is the minimum value.
In another possible implementation, the first data creating unit 8403 is configured to create sixth relational data indicating a relationship between the angular momentum L of the legged robot and the interval duration t; creating seventh relationship data indicative of an applied force f corresponding to at least one footi(L) a negative correlation with angular momentum L; and creating fifth relational data corresponding to at least one foot according to the sixth relational data and the seventh relational data.
In another possible implementation, as shown in fig. 9, the constant determining module 804 includes:
a first data creating unit 8403 for creating eighth relationship data, ninth relationship data, and tenth relationship data according to the first relationship data and the initial time point, the eighth relationship data indicating a relationship between an initial centroid position of the legged robot at the initial position and a constant C, the ninth relationship data indicating a relationship between an initial centroid velocity of the legged robot at the initial position and a constant C, and the tenth relationship data indicating a relationship between an initial centroid acceleration of the legged robot at the initial position and a constant C;
and the value determination unit 8402 is configured to determine, according to the eighth relationship data, the ninth relationship data, the tenth relationship data, and the second relationship data, a value of the constant C when the target value J is the minimum value and a coefficient β of each candidate landing point position.
In another possible implementation, predicting the state data includes predicting a centroid position, as shown in fig. 9, and the data determining module 802 includes:
and a third position determination unit 8203, configured to determine, according to the first relationship data, a predicted centroid position of the legged robot after the target movement duration passes through the initial position.
In another possible implementation, the predicting the state data includes predicting a centroid velocity, as shown in fig. 9, the data determining module 802 includes:
a third data creating unit 8204, configured to create relationship data between the interval duration t and the centroid speed of the legged robot according to the first relationship data;
and the speed determining unit 8205 is used for determining the predicted centroid speed of the legged robot after the legged robot passes through the target moving time length from the initial position according to the created relation data.
In another possible implementation, predicting the state data includes predicting a centroid acceleration, as shown in fig. 9, the data determination module 802 includes:
a third data creating unit 8204, configured to create relationship data between the interval duration t and the centroid acceleration of the legged robot according to the first relationship data;
and the acceleration determining unit 8206 is used for determining the predicted centroid acceleration of the legged robot after the legged robot passes through the target moving time length from the initial position according to the created relation data.
In another possible implementation manner, after obtaining the first relationship data corresponding to the constant C whose value is determined, as shown in fig. 9, the apparatus further includes:
a position determining module 805, configured to determine a duration t of the legged robot at any interval according to the first relation data during the movement of the legged robot0Centroid position of time P (t)0);
A torque determination module 806 for determining the torque based on the centroid position P (t)0) Determining joint torques of a plurality of joints of the legged robot;
and the control module 807 is configured to control the joints to rotate according to the joint torques of the joints, so as to drive the foot robot to move.
The present embodiments also provide a legged robot, which includes a processor and a memory, where the memory stores at least one computer program, and the at least one computer program is loaded by the processor and executed to implement the operations performed in the centroid trajectory determination method of the above embodiments.
Fig. 10 shows a schematic structural diagram of a legged robot 1000 according to an exemplary embodiment of the present application. The legged robot 1000 is used to perform the steps performed by the legged robot in the above centroid position determination method.
The legged robot 1000 includes: a processor 1001 and a memory 1002.
Processor 1001 may include one or more processing cores, such as a 4-core processor, an 8-core processor, and so forth. The processor 1001 may be implemented in at least one hardware form of a DSP (Digital Signal Processing), an FPGA (Field-Programmable Gate Array), and a PLA (Programmable Logic Array). The processor 1001 may also include a main processor and a coprocessor, where the main processor is a processor for Processing data in an awake state, and is also referred to as a Central Processing Unit (CPU); a coprocessor is a low power processor for processing data in a standby state. In some embodiments, the processor 1001 may be integrated with a GPU (Graphics Processing Unit), which is responsible for rendering and drawing the content that the display screen needs to display. In some embodiments, the processor 1001 may further include an AI (Artificial Intelligence) processor for processing a computing operation related to machine learning.
Memory 1002 may include one or more computer-readable storage media, which may be non-transitory. Memory 1002 can also include high-speed random access memory, as well as non-volatile memory, such as one or more magnetic disk storage devices, flash memory storage devices. In some embodiments, a non-transitory computer readable storage medium in memory 1002 is used to store at least one computer program for execution by processor 1001 to implement the centroid trajectory determination method provided by the method embodiments herein.
In some embodiments, the legged robot 1000 may further optionally include: a peripheral interface 1003 and at least one peripheral. The processor 1001, memory 1002 and peripheral interface 1003 may be connected by a bus or signal line. Various peripheral devices may be connected to peripheral interface 1003 via a bus, signal line, or circuit board. Specifically, the peripheral device includes: at least one of radio frequency circuitry 1004, display screen 1005, camera assembly 1005, audio circuitry 1007, positioning assembly 1006, and power supply 1007.
The peripheral interface 1003 may be used to connect at least one peripheral related to I/O (Input/Output) to the processor 1001 and the memory 1002. In some embodiments, processor 1001, memory 1002, and peripheral interface 1003 are integrated on the same chip or circuit board; in some other embodiments, any one or two of the processor 1001, the memory 1002, and the peripheral interface 1003 may be implemented on separate chips or circuit boards, which are not limited by this embodiment.
The Radio Frequency circuit 1004 is used for receiving and transmitting RF (Radio Frequency) signals, also called electromagnetic signals. The radio frequency circuitry 1004 communicates with communication networks and other communication devices via electromagnetic signals. The radio frequency circuit 1004 converts an electrical signal into an electromagnetic signal to transmit, or converts a received electromagnetic signal into an electrical signal. Optionally, the radio frequency circuit 1004 includes: an antenna system, an RF transceiver, one or more amplifiers, a tuner, an oscillator, a digital signal processor, a codec chipset, a subscriber identity module card, and so forth. The radio frequency circuit 1004 may communicate with other terminals via at least one wireless communication protocol. The wireless communication protocols include, but are not limited to: the world wide web, metropolitan area networks, intranets, generations of mobile communication networks (2G, 3G, 4G, and 5G), Wireless local area networks, and/or WiFi (Wireless Fidelity) networks. In some embodiments, the rf circuit 1004 may further include NFC (Near Field Communication) related circuits, which are not limited in this application.
The camera assembly 1005 is used to capture images or video. Optionally, camera assembly 1005 includes a front camera and a rear camera. The front camera is arranged on the front panel of the terminal, and the rear camera is arranged on the back of the terminal. In some embodiments, the number of the rear cameras is at least two, and each rear camera is any one of a main camera, a depth-of-field camera, a wide-angle camera and a telephoto camera, so that the main camera and the depth-of-field camera are fused to realize a background blurring function, and the main camera and the wide-angle camera are fused to realize panoramic shooting and VR (Virtual Reality) shooting functions or other fusion shooting functions. In some embodiments, camera assembly 1005 may also include a flash. The flash lamp can be a monochrome temperature flash lamp or a bicolor temperature flash lamp. The double-color-temperature flash lamp is a combination of a warm-light flash lamp and a cold-light flash lamp and can be used for light compensation under different color temperatures.
The positioning component 1006 is used to locate the current geographic position of the legged robot 1000 for navigation or LBS (Location Based Service). The Positioning component 1006 may be a Positioning component based on the Global Positioning System (GPS) in the united states, the beidou System in china, or the galileo System in russia.
The power supply 1007 is used to power the various components in the foot robot 1000. The power source 1007 may be alternating current, direct current, a disposable battery, or a rechargeable battery. When the power source 1007 includes a rechargeable battery, the rechargeable battery may be a wired rechargeable battery or a wireless rechargeable battery. The wired rechargeable battery is a battery charged through a wired line, and the wireless rechargeable battery is a battery charged through a wireless coil. The rechargeable battery may also be used to support fast charge technology.
In some embodiments, the legged robot 1000 also includes one or more sensors 1008. The one or more sensors 1008 include, but are not limited to: acceleration sensor 1009, gyro sensor 1010.
The acceleration sensor 1009 can detect the magnitude of acceleration on three coordinate axes of the coordinate system established with the legged robot 1000. For example, the acceleration sensor 1009 may be configured to detect components of the gravitational acceleration in three coordinate axes. The processor 1001 may be based on the gravitational acceleration signal collected by the acceleration sensor 1009. The acceleration sensor 1009 may also be used for acquisition of motion data of a game or a user.
The gyro sensor 1010 may detect a body direction and a rotation angle of the legged robot 1000, and the gyro sensor 1010 and the acceleration sensor 1009 may cooperate to acquire a 3D motion of the user on the legged robot 1000. The processor 1001 may implement the following functions according to the data collected by the gyro sensor 1010: motion sensing (such as changing the UI according to a user's tilting operation), image stabilization at the time of photographing, game control, and inertial navigation.
Those skilled in the art will appreciate that the configuration shown in fig. 10 does not constitute a limitation of the legged robot 1000, and may include more or fewer components than shown, or combine certain components, or employ a different arrangement of components.
The embodiment of the present application further provides a control device, which includes a processor and a memory, where at least one computer program is stored in the memory, and the at least one computer program is loaded by the processor and executed to implement the operations performed in the centroid trajectory determination method of the above embodiment.
Optionally, the computer device is provided as a server. Fig. 11 is a schematic structural diagram of a server according to an embodiment of the present application, where the server 1100 may generate a relatively large difference due to different configurations or performances, and may include one or more processors (CPUs) 1101 and one or more memories 1102, where the memory 1102 stores at least one computer program, and the at least one computer program is loaded and executed by the processors 1101 to implement the methods provided by the foregoing method embodiments. Of course, the server may also have components such as a wired or wireless network interface, a keyboard, and an input/output interface, so as to perform input/output, and the server may also include other components for implementing the functions of the device, which are not described herein again.
The present application further provides a computer-readable storage medium, in which at least one computer program is stored, and the at least one computer program is loaded and executed by a processor to implement the operations performed in the centroid trajectory determination method of the foregoing embodiments.
Embodiments of the present application also provide a computer program product or a computer program comprising computer program code stored in a computer readable storage medium. The processor of the control apparatus reads the computer program code from the computer-readable storage medium, and the processor executes the computer program code, so that the control apparatus realizes the operations performed in the centroid trajectory determination method as in the above-described embodiments.
It will be understood by those skilled in the art that all or part of the steps for implementing the above embodiments may be implemented by hardware, or may be implemented by a program instructing relevant hardware, where the program may be stored in a computer-readable storage medium, and the above-mentioned storage medium may be a read-only memory, a magnetic disk or an optical disk, etc.
The above description is only an alternative embodiment of the present application and should not be construed as limiting the present application, and any modification, equivalent replacement, or improvement made within the spirit and principle of the present application should be included in the protection scope of the present application.

Claims (15)

1. A method of mass center trajectory determination, the method comprising:
acquiring a candidate foot-landing point position of at least one foot configured by the foot-type robot at a target position and a coefficient beta of each candidate foot-landing point position, wherein the value of the coefficient beta is not determined;
determining target state data of the legged robot at the target position according to the candidate foot-landing point position of the at least one foot and the coefficient beta of each candidate foot-landing point position;
creating first relationship data indicating a relationship between an interval duration t and a centroid position p (t) of the legged robot, the first relationship data including a constant C whose value is undetermined;
determining the predicted state data of the legged robot at the target position according to the target moving duration and the first relation data;
creating second relationship data according to a state data error between the target state data and the predicted state data, the second relationship data indicating a positive correlation between a target value J and the state data error;
and determining values of the constant C and the coefficient beta of each candidate foot-falling point position when the target value J is the minimum value according to the second relation data, and acquiring first relation data corresponding to the constant C with the determined values and the target foot-falling point position of the at least one foot in the target position.
2. The method of claim 1, wherein the target state data includes a target centroid location; the determining the target state data of the legged robot at the target position according to the candidate foot-landing position of the at least one foot and the coefficient beta of each candidate foot-landing position comprises:
determining the sum of products of the coordinates of each candidate foot-falling point position and the corresponding coefficient beta as the coordinates of the central position of the legged robot;
and determining the position above the central position and separated from the central position by the height of the legged robot as the target centroid position according to the coordinates of the central position.
3. The method according to claim 1, wherein the determining, according to the second relationship data, values of the constant C and the coefficient β of each candidate landing position when the target value J is a minimum value includes:
creating a spatial constraint for the at least one foot, the spatial constraint indicating a spatial range in which the at least one foot is movable, according to the first relationship data, the spatial constraint comprising the constant C and a coefficient β for each candidate foot-drop point position;
and determining values of the constant C and the coefficient beta of each candidate foot-landing point position when the target value J is the minimum value under the condition of meeting the space constraint condition according to the second relation data.
4. The method according to claim 1, wherein the determining, according to the second relationship data, values of the constant C and the coefficient β of each candidate landing point position when the target value J is the minimum value includes:
creating an acting force constraint condition, wherein the acting force constraint condition is used for indicating that acting force applied by the at least one foot in contact with the ground at each corresponding candidate foot-falling point position is not more than an acting force extreme value corresponding to each candidate foot-falling point position, and the acting force constraint condition comprises a coefficient beta of each candidate foot-falling point position;
and determining values of the constant C and the coefficient beta of each candidate foot-landing point position when the target value J is the minimum value under the condition of meeting the acting force constraint condition according to the second relation data.
5. The method according to claim 1, wherein the value of the coefficient β includes 1 or 0, wherein 1 represents that the foot of the foot robot falls on the candidate landing foot position corresponding to the coefficient β, and 0 represents that the foot of the foot robot does not fall on the candidate landing foot position corresponding to the coefficient β;
the determining, according to the second relationship data, values of the constant C and the coefficient β of each candidate foot-landing point position when the target value J is the minimum value includes:
creating a coefficient constraint condition for the at least one foot, the coefficient constraint condition being used to indicate that at any point in time during the movement of the legged robot, the sum of coefficients β of a plurality of candidate foot-landing point positions of each foot is not more than 1;
and determining values of the constant C and the coefficient beta of each candidate foot-landing point position when the target value J is the minimum value under the condition that the coefficient constraint condition of the at least one foot is met according to the second relation data.
6. The method according to claim 1, wherein the determining, according to the second relationship data, values of the constant C and the coefficient β of each candidate landing point position when the target value J is the minimum value includes:
creating third correlation coefficient data indicating a relationship between a sum of coefficients β of candidate foot-landing point positions of the legged robot and the number of feet of the legged robot when the legged robot is at a target position;
and determining the values of the constant C and the coefficient beta of each candidate foot-landing point position when the target value J is the minimum value according to the second relation data and the third relation data.
7. The method according to claim 1, wherein the determining, according to the second relationship data, values of the constant C and the coefficient β of each candidate landing point position when the target value J is the minimum value includes:
selecting a plurality of sampling time points in the target moving duration;
determining a coefficient β for a candidate drop point location for the at least one foot at each sampling time point;
creating a stepping time sequence constraint condition according to the coefficient beta of the candidate foot-landing point position of at least one foot at each sampling time point, wherein the stepping time sequence constraint condition is used for indicating the relation of the candidate foot-landing point position of each foot between the coefficients beta of the plurality of sampling time points in the process that the legged robot moves from an initial position to a target position;
and determining the values of the constant C and the coefficient beta of each candidate foot-falling point position when the target value J is the minimum value under the condition of meeting the stepping time sequence constraint condition according to the second relation data.
8. The method of claim 7 wherein the step timing constraint is used to indicate that the coefficient β of any candidate drop point location for any foot of the legged robot at a previous sampling time point is not greater than the coefficient β of any candidate drop point location at a subsequent sampling time point.
9. The method of claim 7 wherein the step timing constraint is used to indicate that the coefficient β of the initial landing point position of any foot of the legged robot at the previous sampling time point is not less than the coefficient β of the initial landing point position at the next sampling time point.
10. The method according to claim 7, wherein the determining, according to the second relationship data, values of the constant C and the coefficient β of each candidate landing point position when the target value J is a minimum value under the condition that the step timing constraint is satisfied includes:
creating a stepping duration constraint condition, wherein the stepping duration constraint condition is used for indicating that the sum of coefficients beta of candidate foot-landing point positions of the legged robot at the plurality of sampling time points is less than the number of the plurality of sampling time points;
and according to the second relation data, under the condition that the stepping time sequence constraint condition and the stepping duration constraint condition are met, determining the values of the constant C and the coefficient beta of each candidate foot-falling point position when the target value J is the minimum value.
11. The method according to claims 1-10, characterized in that the second relation data indicates a positive correlation between the target value J and the sum of the state data error and a coefficient β of candidate foot-fall point positions of the legged robot.
12. A mass center trajectory determination apparatus, characterized in that the apparatus comprises:
the acquisition module is used for acquiring candidate foot-landing positions of at least one foot configured by the foot-type robot at a target position and a coefficient beta of each candidate foot-landing position, wherein the value of the coefficient beta is not determined;
the data determining module is used for determining target state data of the legged robot at the target position according to the candidate foot-landing position of the at least one foot and the coefficient beta of each candidate foot-landing position;
a creating module configured to create first relationship data, where the first relationship data indicates a relationship between an interval duration t and a centroid position p (t) of the legged robot, and the first relationship data includes a constant C whose value is not determined;
the data determination module is further configured to determine predicted state data of the legged robot at the target position according to the target movement duration and the first relation data;
the creating module is further configured to create second relationship data according to a state data error between the target state data and the predicted state data, where the second relationship data indicates a positive correlation between a target value J and the state data error;
and a constant determining module, configured to determine, according to the second relationship data, values of the constant C and the coefficient β of each candidate foot-landing point position when the target value J is a minimum value, and obtain first relationship data corresponding to the constant C whose value is determined, and a target foot-landing point position of the at least one foot at the target position.
13. A legged robot, characterized in that it comprises a processor and a memory, in which at least one computer program is stored, which is loaded and executed by the processor to implement the operations performed in the method for determining a centroid trajectory according to any one of claims 1 to 11.
14. A control apparatus, characterized in that the control apparatus comprises a processor and a memory, in which at least one computer program is stored, which is loaded and executed by the processor to carry out the operations performed in the centroid trajectory determination method according to any one of claims 1 to 11.
15. A computer-readable storage medium, having stored therein at least one computer program which is loaded into and executed by a processor to perform the operations performed in the centroid trajectory determination method as claimed in any one of claims 1 to 11.
CN202110004463.5A 2021-01-04 2021-01-04 Centroid trajectory determination method and device, foot type robot, equipment and medium Pending CN114723807A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110004463.5A CN114723807A (en) 2021-01-04 2021-01-04 Centroid trajectory determination method and device, foot type robot, equipment and medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110004463.5A CN114723807A (en) 2021-01-04 2021-01-04 Centroid trajectory determination method and device, foot type robot, equipment and medium

Publications (1)

Publication Number Publication Date
CN114723807A true CN114723807A (en) 2022-07-08

Family

ID=82234393

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110004463.5A Pending CN114723807A (en) 2021-01-04 2021-01-04 Centroid trajectory determination method and device, foot type robot, equipment and medium

Country Status (1)

Country Link
CN (1) CN114723807A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024051408A1 (en) * 2022-09-07 2024-03-14 腾讯科技(深圳)有限公司 Moving trajectory determining method and apparatus, computer device, and storage medium

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104345735A (en) * 2014-09-30 2015-02-11 同济大学 Robot walking control method based on foothold compensator
CN105700530A (en) * 2016-04-11 2016-06-22 南京埃斯顿自动化股份有限公司 Track planning method for robot joint space conveyor belt following movement
US20180004208A1 (en) * 2015-12-02 2018-01-04 Goertek Inc. Method and device for controlling gait of biped robot
CN111506094A (en) * 2020-04-14 2020-08-07 腾讯科技(深圳)有限公司 Centroid position determining method and device, foot type robot and storage medium
CN112051797A (en) * 2020-09-07 2020-12-08 腾讯科技(深圳)有限公司 Method, device, equipment and medium for controlling motion of foot type robot
CN112114589A (en) * 2020-09-07 2020-12-22 腾讯科技(深圳)有限公司 Method, device, equipment and medium for controlling motion of foot type robot

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104345735A (en) * 2014-09-30 2015-02-11 同济大学 Robot walking control method based on foothold compensator
US20180004208A1 (en) * 2015-12-02 2018-01-04 Goertek Inc. Method and device for controlling gait of biped robot
CN105700530A (en) * 2016-04-11 2016-06-22 南京埃斯顿自动化股份有限公司 Track planning method for robot joint space conveyor belt following movement
CN111506094A (en) * 2020-04-14 2020-08-07 腾讯科技(深圳)有限公司 Centroid position determining method and device, foot type robot and storage medium
CN112051797A (en) * 2020-09-07 2020-12-08 腾讯科技(深圳)有限公司 Method, device, equipment and medium for controlling motion of foot type robot
CN112114589A (en) * 2020-09-07 2020-12-22 腾讯科技(深圳)有限公司 Method, device, equipment and medium for controlling motion of foot type robot

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024051408A1 (en) * 2022-09-07 2024-03-14 腾讯科技(深圳)有限公司 Moving trajectory determining method and apparatus, computer device, and storage medium

Similar Documents

Publication Publication Date Title
CN113534828B (en) Centroid position determining method and device, foot type robot and storage medium
CN112783175B (en) Centroid trajectory determination method and device, foot type robot, equipment and medium
CN112114589B (en) Foot robot motion control method, device, equipment and medium
CN111156998B (en) Mobile robot positioning method based on RGB-D camera and IMU information fusion
García Carrillo et al. Combining stereo vision and inertial navigation system for a quad-rotor UAV
Foxlin Motion tracking requirements and technologies
Ye et al. 6-DOF pose estimation of a robotic navigation aid by tracking visual and geometric features
Cheng et al. Mobile robot indoor dual Kalman filter localisation based on inertial measurement and stereo vision
WO2022261381A1 (en) Localization processing service
Rhudy et al. Unmanned aerial vehicle navigation using wide‐field optical flow and inertial sensors
Zhou et al. Autonomous wireless sensor deployment with unmanned aerial vehicles for structural health monitoring applications
Dor et al. AstroSLAM: Autonomous Monocular Navigation in the Vicinity of a Celestial Small Body--Theory and Experiments
CN114723807A (en) Centroid trajectory determination method and device, foot type robot, equipment and medium
JP2021035002A (en) Image specification system and image specification method
JP7454677B2 (en) Center of mass position determination method, device, footed robot and computer program
Johnson Vision-assisted control of a hovering air vehicle in an indoor setting
Mortezapoor et al. Photogrammabot: an autonomous ROS-based mobile photography robot for precise 3d reconstruction and mapping of large indoor spaces for mixed reality
KR20200069232A (en) Motion capture apparatus based sensor type motion capture system and method thereof
CN116991155A (en) Method, device, computer equipment and storage medium for determining moving track
Liu et al. Optical flow measurement of human walking
Antoshchuk et al. Autopilot model for returning an unmanned aerial vehicle to its starting point in case of electromagnetic noise
Menshchikov et al. Mixed Reality Glasses: Low-Power IoT System for Digital Augmentation of Video Stream in Visual Recognition Applications
Catania Enhancing UAV Autonomous Indoor Flight with Visual Odometry Techniques
Reskó et al. Ubiquitous sensory intelligence in industrial robot programming
Andrews Implementation considerations for vision-aided inertial navigation

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
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 40070351

Country of ref document: HK