CN111506094A - Centroid position determining method and device, foot type robot and storage medium - Google Patents
Centroid position determining method and device, foot type robot and storage medium Download PDFInfo
- Publication number
- CN111506094A CN111506094A CN202010291278.4A CN202010291278A CN111506094A CN 111506094 A CN111506094 A CN 111506094A CN 202010291278 A CN202010291278 A CN 202010291278A CN 111506094 A CN111506094 A CN 111506094A
- Authority
- CN
- China
- Prior art keywords
- foot
- data
- constant
- relation data
- robot
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 128
- 238000005070 sampling Methods 0.000 claims description 106
- 239000011159 matrix material Substances 0.000 claims description 91
- 239000013598 vector Substances 0.000 claims description 73
- 230000001133 acceleration Effects 0.000 claims description 59
- 230000008569 process Effects 0.000 claims description 58
- 238000013507 mapping Methods 0.000 claims description 24
- 230000015654 memory Effects 0.000 claims description 17
- 230000033001 locomotion Effects 0.000 description 46
- 230000006870 function Effects 0.000 description 26
- 230000008859 change Effects 0.000 description 16
- 238000010586 diagram Methods 0.000 description 16
- 108010084652 homeobox protein PITX1 Proteins 0.000 description 12
- 230000005484 gravity Effects 0.000 description 11
- 230000002093 peripheral effect Effects 0.000 description 10
- 238000004891 communication Methods 0.000 description 8
- 238000012545 processing Methods 0.000 description 8
- 230000009471 action Effects 0.000 description 5
- 230000010355 oscillation Effects 0.000 description 3
- 230000004044 response Effects 0.000 description 3
- 230000016776 visual perception Effects 0.000 description 3
- DSCFFEYYQKSRSV-KLJZZCKASA-N D-pinitol Chemical compound CO[C@@H]1[C@@H](O)[C@@H](O)[C@H](O)[C@H](O)[C@H]1O DSCFFEYYQKSRSV-KLJZZCKASA-N 0.000 description 2
- 241001465754 Metazoa Species 0.000 description 2
- 238000004590 computer program Methods 0.000 description 2
- 230000004438 eyesight Effects 0.000 description 2
- 230000004927 fusion Effects 0.000 description 2
- 230000005021 gait Effects 0.000 description 2
- 230000008447 perception Effects 0.000 description 2
- 238000009877 rendering Methods 0.000 description 2
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000013155 cardiography Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000006641 stabilisation Effects 0.000 description 1
- 238000011105 stabilization Methods 0.000 description 1
- 230000017105 transposition Effects 0.000 description 1
- 210000001364 upper extremity Anatomy 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/08—Control of attitude, i.e. control of roll, pitch, or yaw
- G05D1/0891—Control of attitude, i.e. control of roll, pitch, or yaw specially adapted for land vehicles
Landscapes
- Engineering & Computer Science (AREA)
- Aviation & Aerospace Engineering (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- Manipulator (AREA)
Abstract
The embodiment of the application discloses a method and a device for determining a center of mass position, a foot-type robot and a storage medium, and belongs to the technical field of computers. The method comprises the following steps: acquiring state data of a legged robot at an initial position and state data of the legged robot at a termination position, creating first relation data, creating second relation data corresponding to at least one leg configured by the legged robot, creating third relation data according to the first relation data and the second relation data corresponding to the at least one leg, and determining a first constant C when a target value J is a minimum value according to the third relation datafreeObtaining a first constant C with determined valuefreeCorresponding first relationship data. The first constant C can be determined through the created first relation data, the second relation data corresponding to at least one foot and the third relation datafreeThe corresponding first relation data can be suitable for the legged robot with any number of feet, and the application range is wide.
Description
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 position, a foot-type robot and a storage medium.
Background
A legged robot is a robot that moves by simulating the posture of an animal or human walking, and is generally provided with a plurality of feet, each of which is provided with one or more joints, and moves by controlling the raising or lowering of the feet. When the foot type robot moves, the centroid position of the foot type robot needs to be determined first, so that the lifting or falling of the foot is controlled according to the determined centroid position.
In the related art, a method for determining a centroid position is provided, in which a centroid position of a legged robot is determined by detecting states of joints in each of feet of a legged robot configuration and performing an operation according to the states of the joints in each of the feet. 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 method and a device for determining a centroid position, a foot type robot and a storage medium, which can improve the accuracy of the centroid position. The technical scheme is as follows:
in one aspect, a method for determining a center of mass position is provided, which is applied to a legged robot, and the method includes:
acquiring state data of the legged robot at an initial position and at a final position, wherein the state data at least comprises a centroid position, a centroid speed and a centroid acceleration;
creating first relationship data indicating a relationship between an interval duration t and a centroid position P (t), the interval duration t indicating a duration of an interval between any time point in a process of moving the foot robot from the initial position to the end position and a start time point corresponding to the start position, the centroid position P (t) indicating a centroid position of the foot robot at the interval duration t, the first relationship data including a first constant C with an undetermined valuefreeAnd taking a determined second constant h, wherein the second constant h is determined by the acquired state data;
creating a configuration with said legged robotSecond relation data corresponding to at least one foot, the second relation data corresponding to the at least one foot respectively indicating the centroid position P (t) and the acting force f corresponding to the at least one footi(ii) the relationship between { P (t) }, the force fi{ P (t) } indicates the acting force applied to the foot-type robot when the ith foot at the centroid position P (t) is in contact with the ground, wherein i is a positive integer;
creating third relation data according to the first relation data and second relation data corresponding to the at least one foot, wherein the third relation data indicate the acting force f applied by the target value J when the at least one foot is in contact with the groundiPositive correlation between squares of { p (t) };
determining the first constant C when the target value J is the minimum value according to the third relational datafreeObtaining the first constant C with determined valuefreeAnd the corresponding first relation data.
In another aspect, there is provided a center-of-mass position determination apparatus applied to a legged robot, the apparatus including:
the state data acquisition module is used for acquiring state data of the legged robot at an initial position and state data of the legged robot at a final position, wherein the state data at least comprises a centroid position, a centroid speed and a centroid acceleration;
a relation data creating module, configured to create first relation data, where the first relation data indicates a relation between an interval duration t and a centroid position p (t), the interval duration t indicates a duration of an interval between any time point in a process that the legged robot moves from the initial position to the end position and a start time point corresponding to the start position, the centroid position p (t) indicates a centroid position of the legged robot at the interval duration t, and the first relation data includes a first constant C whose value is not determinedfreeAnd taking a determined second constant h, wherein the second constant h is determined by the acquired state data;
the relational data creating module is also used for creating at least one of the configuration of the legged robotSecond relation data corresponding to at least one foot, the second relation data corresponding to at least one foot respectively indicating the action force f corresponding to the centroid position P (t) and the at least one footi(ii) the relationship between { P (t) }, the force fi{ P (t) } indicates the acting force applied to the foot-type robot when the ith foot at the centroid position P (t) is in contact with the ground, wherein i is a positive integer;
the relation data creating module is further configured to create third relation data according to the first relation data and second relation data corresponding to the at least one foot, wherein the third relation data indicate an acting force f applied to the at least one foot and the ground due to contact of a target value J with the groundiPositive correlation between squares of { p (t) };
a first constant value determination module, configured to determine, according to the third relationship data, the first constant C when the target value J is a minimum valuefreeObtaining the first constant C with determined valuefreeAnd the corresponding first relation data.
In another possible implementation manner, the apparatus further includes:
a mass center 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 joint torque determination module for determining the joint torque according to the centroid position P (t)0) And the termination position, determining joint torques of a plurality of joints of the legged robot;
and the joint 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, the computer device comprising a processor and a memory, the memory having stored therein at least one instruction, the at least one instruction being loaded and executed by the processor to implement the method of centroid position determination as described in the above aspect.
In another aspect, a computer-readable storage medium having stored therein at least one instruction, which is loaded and executed by a processor, to implement a centroid position determination method as described in the above aspect is provided.
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 and the storage medium provided by the embodiment of the application acquire state data of the foot robot at an initial position and state data of the foot robot at a termination position, create first relation data, the first relation data indicate a relation between an interval duration t and a centroid position P (t), create second relation data corresponding to at least one foot configured by the foot robot, and the second relation data corresponding to the at least one foot respectively indicate a centroid position P (t) and an acting force f corresponding to the at least one footiThe relation between { P (t) } and the third relation coefficient data is established according to the first relation data and the second relation data corresponding to at least one foot, and the third relation coefficient data indicates the acting force f applied by the target value J when the at least one foot is in contact with the groundiPositive correlation between squares of { P (t) }, and the first constant C at which the target value J is the minimum value is determined according to the third correlation coefficient datafreeObtaining a first constant C with determined valuefreeCorresponding first relationship data. According to the method provided by the embodiment of the application, the state of each joint of the legged robot does not need to be detected, and the first constant C can be determined through the created first relation data, the second relation data corresponding to at least one foot and the third relation datafreeCorresponding first relation data, the first constant C is reducedfreeThe calculated amount in the corresponding first relation data process can be suitable for the legged robot with any number of feet, and the application range is wide. And by applying the first constant CfreeThe corresponding first relation data can determine the centroid position corresponding to any interval duration in the process that the foot type robot moves from the initial position to the end position, and then determine the centroid moving track of the foot type robot moving from the initial position to the end position, so that the foot type robot can move according to the determined centroid moving trackThe moving ensures the high efficiency of the foot type robot moving.
And by creating the second relation data, the accuracy of the determined centroid position of the legged robot is improved in consideration of the acting force applied by at least one foot configured by the legged robot when the legged robot is contacted with the ground, so that the legged robot can move according to the determined centroid moving track, the feasibility and the high efficiency of the determined centroid moving track are ensured, and the diversity and the universality of the determined centroid moving track are ensured.
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 illustration of an implementation environment provided by an embodiment of the present application;
fig. 2 is a flowchart of a method for determining a centroid position according to an embodiment of the present application;
fig. 3 is a flowchart of a method for determining a centroid position according to an embodiment of the present application;
FIG. 4 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. 5 is a schematic diagram of a moving process of a legged robot according to an embodiment of the present application;
FIG. 6 is a schematic diagram illustrating an offset of a centroid position 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 diagram of state data of a foot machine as a function of interval duration provided by an embodiment of the present application;
FIG. 9 is a schematic diagram of state data of a foot machine as a function of interval duration provided by an embodiment of the present application;
FIG. 10 is a schematic illustration of a foot machine with torque as a function of interval duration provided by an embodiment of the present application;
FIG. 11 is a schematic diagram of the position of the center of mass of a foot machine as a function of the length of the interval provided by an embodiment of the present application;
fig. 12 is a schematic structural diagram of a mass center position determining apparatus according to an embodiment of the present application;
fig. 13 is a schematic structural diagram of a mass center position determining apparatus according to an embodiment of the present application;
fig. 14 is a schematic structural diagram of a terminal according to an embodiment of the present application;
fig. 15 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.
The terms "first," "second," "third," and the like as used herein may be used herein to describe various concepts that 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 elements includes 3 elements, each of which refers to each of the 3 elements, and any one of the 3 elements refers to any one of the 3 elements, which may be a first one, a second one, or a third one.
The centroid position determining method provided by the embodiment of the application can be used for a foot type machineIn the robot, the foot robot creates first relation data by acquiring state data of the foot robot at an initial position and state data of the foot robot at a termination position, creates second relation data corresponding to at least one foot configured by the foot robot, creates third relation data according to the first relation data and the second relation data corresponding to the at least one foot, and determines a first constant C when a target value J is a minimum value according to the third relation datafreeObtaining a first constant C with determined valuefreeCorresponding first relationship data.
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 server 102 may be an independent physical server, a server cluster or a 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 network service, cloud communication, a middleware service, a domain name service, a security service, a CDN, a big data and artificial intelligence platform, and the like.
The legged robot 101 may detect state data of the legged robot at an initial position, send the state data of the initial position to the server 102, the server 102 acquires the state data of the legged robot 101 at the initial position and the state data of the legged robot at an end position, create first relationship data, create second relationship data corresponding to at least one leg configured by the legged robot, create third relationship data according to the first relationship data and the second relationship data corresponding to the at least one leg, and determine a first constant C when a target value J is a minimum value according to the third relationship datafreeObtaining a first constant C with determined valuefreeCorresponding first relationship data. And then the foot type robot is controlled to move according to the determined position of the center of mass.
The method provided by the embodiment of the application can be used for multiple scenes.
For example, in a legged robot movement scenario:
in the moving process of the foot robot, the current position is taken as the initial position, the state data of the initial position and the state data of the termination position which needs to be reached are obtained, the centroid position determining method provided by the embodiment of the application is adopted, first relation data indicating a relation between the position of the center of mass of the legged robot and the length of the interval during the movement of the legged robot from the initial position to the end position can be determined, by which first relation data it can be determined that during the movement, the center of mass moving track of the foot type robot can obtain the joint angle and the joint torque of each joint of the foot type robot in the moving process, therefore, the foot type robot is controlled to move to the termination position according to the obtained joint angle and the joint torque of each joint, and the stability and the reliability of the movement of the foot type robot are improved.
For another example, in a remote control legged robot movement scenario:
in the moving process of the foot robot, the server acquires the state data of the initial position and the state data of the final position of the foot robot in real time, and the centroid position determining method provided by the embodiment of the application is adopted to obtain the first constant C with the determined valuefreeAnd the corresponding first relation data determines the centroid moving track of the foot type robot in the moving process of the foot type robot from the initial position to the end position through the obtained first relation data, and sends the centroid moving track to the foot type robot, so that the centroid of the foot type robot is controlled to move along the centroid moving track, and the mode of remotely controlling the movement of the foot type robot is realized.
Fig. 2 is a flowchart of a mass center position determining method provided in an embodiment of the present application, which is applied to a legged robot, and as shown in fig. 2, the method includes:
201. acquiring state data of the legged robot at an initial position and at a final position, wherein the state data at least comprises a centroid position, a centroid speed and a centroid acceleration.
The legged robot is a robot which simulates the walking posture of an animal or a human being to move, can be provided with at least one foot, and is driven to move by controlling the lifting or falling of the foot. The initial position is the current position of the foot robot, the terminal position is the position to be reached by the foot robot, and the terminal position can be determined by the foot robot according to the environment where the foot robot is located.
The mass center is the mass center of the legged robot, and the mass center position is the specific position of the mass center of the legged robot, and can be represented by coordinates in a coordinate system or vectors. The mass center speed is the moving speed of the mass center of the foot type robot, and the mass center acceleration is the acceleration of the mass center of the foot type robot.
In the embodiment of the present application, before the foot robot starts to move from the initial position to the end position, it is necessary to determine the centroid position of each time point in the process of moving the foot robot from the initial position to the end position, and control the foot robot to move from the initial position to the end position according to the determined centroid position.
202. First relationship data is created, the first relationship data indicating a relationship between the interval duration t and the centroid position p (t).
Wherein, the interval duration t indicates the duration of the interval between any time point in the process that the foot robot moves from the initial position to the ending position and the starting time point corresponding to the starting position, and the centroid position P (t) indicates the centroid position of the foot robot at the interval duration t.
The first relation data comprises a first constant C with undetermined valuefreeAnd taking the determined second constant h, wherein the second constant h is determined by the acquired state data. Wherein the first constant CfreeAnd the second constant h are constants that represent the relationship between the interval duration t and the centroid position p (t), and both can be coefficients of the interval duration t. The second constant h is determined by the mass center position, the mass center speed and the mass center acceleration included in the state data of the foot type robot at the initial position and the state number of the foot type robot at the termination positionAnd determining the position, the speed and the acceleration of the center of mass according to the included position, the speed and the acceleration of the center of mass, and determining the value of the second constant h as the state data of the legged robot at the initial position and the final position are determined.
Due to the first constant C contained in the first relational datafreeThe value of (a) is not determined, so the first relationship data acquired at this time is not determined yet. Subsequently if the first constant CfreeThe centroid position p (t) corresponding to any interval duration t can be obtained through the first relationship data.
203. Creating second relationship data corresponding to at least one foot of the legged robot configuration, the second relationship data corresponding to the at least one foot indicating a centroid position P (t), respectively, an acting force f corresponding to the at least one footi(p (t)) }.
Wherein the acting force fi{ P (t) } indicates the acting force applied to the ith foot of the foot type robot in the mass center position P (t) by contacting with the ground, wherein i is a positive integer.
A legged robot is configured with at least one foot by which the legged robot makes contact with the ground, thereby enabling movement or standing of the legged robot. i is a number indicating the foot of the foot robot, and different feet can be distinguished according to the foot number. When the center of mass of the legged robot is located at the same center of mass position p (t), the acting force applied to different feet of the legged robot contacting with the ground may be different, that is, the acting force f applied to different feet contacting with the groundi{ P (t) } may be different. Thus, second relationship data corresponding to at least one foot is created, respectively.
204. According to the first relation data and the second relation data corresponding to at least one foot, third relation data are created, and the third relation data indicate the acting force f applied by the target value J when the at least one foot is in contact with the groundiPositive correlation between squares of { p (t) }.
Since the first relationship data indicates a relationship between the interval duration t and the centroid position p (t), the second relationship data corresponding to at least one foot indicates the centroid position p (t) corresponding to at least one footActing force fi{ P (t) }, fusing the first relation data and the second relation data, and applying an acting force f to the ground by contacting at least one foot in the fused relation data with the groundiThe square of { P (t) } is taken as the target value J.
The force f to which the target value J is subjected in contact with at least one foot and the groundiThe positive correlation between the squares of { P (t) } refers to the force f to which the target value J is subjected as the at least one foot is in contact with the groundiThe square of { P (t) } becomes larger and larger, the force f received as the at least one foot comes into contact with the groundiThe square of { P (t) } becomes smaller.
205. Determining a first constant C when the target value J is a minimum value according to the third relation coefficient datafreeObtaining a first constant C with determined valuefreeCorresponding first relationship data.
Because the first relation data comprises the first constant C with undetermined valuefreeThe first relation data indicates the relation between the interval duration t and the centroid position P (t), and the second relation data corresponding to at least one foot indicates the centroid position P (t) and the acting force f corresponding to at least one footiThe relation between { P (t) } is to substitute the first relation data into the second relation data for fusion, and the fused relation data includes the first constant C with undetermined valuefreeTaking the square of the fused relation data as the target value J, the third relation data comprises a first constant C with undetermined valuefreeSquare of (d).
When the target value J is the minimum value, the first constant C included in the third correlation data can be determinedfreeWill take the determined first constant CfreeAfter the first relation data is substituted, the centroid position p (t) corresponding to any interval time t can be determined through the first relation data.
The method provided by the embodiment of the application obtains the state data of the legged robot at the initial position and the state data of the legged robot at the termination position, and creates first relation data, wherein the first relation data indicates the interval duration t and the centroid position P (t)Creating second relationship data corresponding to at least one foot of the legged robot configuration, the second relationship data corresponding to the at least one foot indicating a centroid position p (t), respectively, an acting force f corresponding to the at least one footiThe relation between { P (t) } and the third relation coefficient data is established according to the first relation data and the second relation data corresponding to at least one foot, and the third relation coefficient data indicates the acting force f applied by the target value J when the at least one foot is in contact with the groundiPositive correlation between squares of { P (t) }, and the first constant C at which the target value J is the minimum value is determined according to the third correlation coefficient datafreeObtaining a first constant C with determined valuefreeCorresponding first relationship data. According to the method provided by the embodiment of the application, the state of each joint of the legged robot does not need to be detected, and the first constant C can be determined through the created first relation data, the second relation data corresponding to at least one foot and the third relation datafreeCorresponding first relation data, the first constant C is reducedfreeThe calculated amount in the corresponding first relation data process can be suitable for the legged robot with any number of feet, and the application range is wide. And by applying the first constant CfreeThe corresponding first relation data can determine the centroid position corresponding to any interval duration in the process that the foot type robot moves from the initial position to the end position, and then determine the centroid moving track of the foot type robot from the initial position to the end position, so that the foot type robot moves according to the determined centroid moving track, and the moving efficiency of the foot type robot is guaranteed.
And by creating the second relation data, the accuracy of the determined centroid position of the legged robot is improved in consideration of the acting force applied by at least one foot configured by the legged robot when the legged robot is contacted with the ground, so that the legged robot can move according to the determined centroid moving track, the feasibility and the high efficiency of the determined centroid moving track are ensured, and the diversity and the universality of the determined centroid moving track are ensured.
In one possible implementation, creating the first relationship data includes:
a first constant CfreeThe sum of the linear mapping and the second constant h is used as a third constant C with undetermined value;
setting the first relationship data as: centroid position p (t) is the product of third constant C and duration matrix E;
wherein E istRepresenting a duration vector.
In another possible implementation, creating second relationship data corresponding to at least one foot of the legged robot configuration includes:
setting the second relation data corresponding to at least one foot as: acting force f corresponding to ith footi{ P (t) } is the sum of the third constant C and the linear mapping of the fourth constant λ corresponding to the ith foot.
In another possible implementation manner, creating third relationship data according to the first relationship data and the second relationship data includes:
acquiring the moving time required by the foot type robot to move from the initial position to the final position;
selecting a plurality of sampling time points in the moving time length;
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 indicates a first constant CfreeAnd the sampling centroid position Q (C)free) The relation between, the sampling centroid position Q (C)free) Indicating the centroid position of the legged robot at the corresponding sampling time point;
determining fifth relation data corresponding to each sampling time point according to the second relation data and the fourth relation data corresponding to at least one foot, wherein the fifth relation data indicate a first constant CfreeForce f corresponding to at least one footi(ii) the relationship between { P (t) };
creating third relational data based on the fourth relational data and the fifth relational data, the third relational data further indicating a target value J and eachActing force f corresponding to at least one foot corresponding to each sampling time pointi{ P (t) } and sample centroid position Q (C)free) A positive correlation between them.
In another possible implementation manner, creating third relationship data according to the fourth relationship data and the fifth relationship data includes:
setting the target value J to a weighted sum of squares of the plurality of distances and the force f corresponding to at least one footi{ P (t) }, the plurality of distances including the distance between any two adjacent ones of the centroid positions of the initial position, the plurality of sampling centroid positions, and the centroid position of the final position.
In another possible implementation manner, determining fifth relationship data corresponding to each sampling time point according to the second relationship data and the fourth relationship data includes:
determining feet of the legged robot contacting the ground at each sampling time point according to the step sequence of the legged robot, the step time length corresponding to at least one foot and the interval time length between each sampling time point and the starting time point, wherein the step sequence indicates the step sequence among a plurality of feet of the legged robot; the stepping time length corresponding to the feet is the time length from the lifting of the feet to the falling of the feet;
from each sample centroid position Q (C)free) And determining fifth relation data according to the second relation data corresponding to at least one foot and the foot of each sampling time point in contact with the ground.
In another possible implementation manner, creating third relationship data according to the first relationship data and the second relationship data corresponding to the at least one foot includes:
determining a distance between a centroid position of the legged robot at the initial position and a centroid position of the legged robot at the terminal position;
setting the target value J as the force f corresponding to the weighted square of the distance and at least one footiThe sum between the weighted sum of squares of { p (t) }.
In another possible implementation manner, the first constant C with determined value is obtainedfreeAfter the corresponding first relationship data, the method further comprises:
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 a termination position, determining joint torques of a plurality of joints of the legged robot;
and controlling the joints to rotate according to the joint torques of the joints to drive the foot type robot to move.
Fig. 3 is a flowchart of a mass center position determining 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. acquiring state data of the legged robot at an initial position and at a final position, wherein the state data at least comprises a centroid position, a centroid speed and a centroid acceleration.
The mass center is the mass center of the legged robot, and the mass center position is the specific position of the mass center of the legged robot, and can be represented by coordinates in a coordinate system or vectors. The centroid speed is the moving speed of the mass center of the foot type robot, the centroid acceleration is the acceleration of the centroid of the foot type robot, and the centroid speed and the centroid acceleration can be expressed by vectors. For example, in a world coordinate system, the center of mass position of the legged robot is [20, 35, 80], the center of mass velocity is [5, 3, 0], and the center of mass acceleration is [2, 2, 2 ].
In one possible implementation, obtaining the state data of the initial position may include: the foot robot detects the state of the foot robot at the initial position and obtains the state data of the initial position.
In one possible implementation, obtaining the status data of the termination location may include: the foot robot acquires an image of an environment including the moving direction of the foot robot through a visual perception system, performs feature extraction on the image, determines the termination position of the foot robot, and sets state data for the termination position. Here, the state data of the termination position may be arbitrarily set. For example, the visual perception system includes a camera, and the legged robot captures an image of an environment in a moving direction of the legged robot by the camera to obtain an image of the environment including the moving direction of the legged robot.
302. A first constant CfreeAnd the sum of the linear mapping and the second constant h is used as a third constant C with undetermined value.
The third constant C is a constant for representing the relationship between the centroid position p (t) and the interval duration t, and may be represented in a vector form or a matrix form.
First constant CfreeA constant with undetermined value and representing the relation between the interval duration t and the centroid position P (t), and a first constant CfreeThe representation can be in a vector form or a matrix form.
And the second constant h is determined by the acquired state data, and the value of the second constant h is determined because the state data of the legged robot at the initial position and the termination position are determined. The second constant h may be expressed in a vector form or a matrix form. For example, the second constant h may be expressed as h ═ P0V0a0P1V1a1]Wherein P is0Representing the position of the center of mass, V, of the legged robot in the initial position0Representing the center of mass velocity, a, of the legged robot in the initial position0Representing the acceleration of the centre of mass, P, of the legged robot in the initial position1Representing the position of the centre of mass, V, of the legged robot in the end position1Representing the center of mass velocity, a, of the legged robot in the end position1Representing the centroid acceleration of the legged robot at the end position.
Due to the first constant CfreeIf the value of (C) is not determined and the value of the second constant h is determined, the first constant C is setfreeAnd the second constant is subjected to linear mapping, and the value of the obtained third constant C is not determined.
In one possible implementation, this step 302 may include: obtain the first constant CfreeA mapping matrix of the first constant C and a mapping matrix of the second constant hfreeThe sum of the product of the first constant h and the corresponding mapping matrix is taken as a third constant C. I.e. the first constant CfreeA second constant h and a third constant C, satisfying the following relationships:
C=T'Cfree+Qh
wherein T' is a constant matrix for representing a first constant CfreeQ is a constant matrix for representing a mapping matrix of a second constant h. The constant matrix T' may be a 96-row 15-column matrix, the constant matrix Q may be a 96-row 18-column constant matrix, and the first constant CfreeThe second constant h may be a column vector of 15 rows and the second constant h may be a column vector of 18 rows.
303. Setting the first relationship data as: centroid position p (t) is the product of third constant C and duration matrix E.
Wherein the first relationship data indicates a relationship between an interval duration t and a centroid position p (t), the interval duration indicates a duration of an interval between any time point in a process that the foot robot moves from the initial position to the end position and a start time point corresponding to the start position, and the centroid position p (t) indicates a centroid position of the foot robot at the interval duration t. The third constant C with undetermined value is the first constant C with undetermined valuefreeAnd the value of the determined second constant h is obtained, the first relation data comprises a first constant C with an undetermined valuefreeAnd a second constant h. In the legged robot, the first relation data may be stored in the form of a descriptive sentence or a function.
The duration matrix E is used to represent a matrix of interval durations t, and the duration matrix E satisfies the following relationship:
wherein E istRepresenting a duration vector. In the embodiment of the present application, the duration vector EtComprisesThe interval duration t is raised to the power of 3, and in another embodiment, the duration vector EtThe highest power including the interval duration t may be any positive integer not less than 2.
In one possible implementation, the first relationship data may be represented by the following function:
P(t)=Pinit+EC
wherein, PinitIs a constant vector and is used for representing the initial centroid position of the legged robot at the beginning of any moving period; t' is a constant matrix for representing a first constant CfreeQ is a constant matrix for representing a mapping matrix of a second constant h.
Due to the first constant C contained in the first relational datafreeThe value of (a) is not determined, the centroid position P (t) corresponding to any interval duration t cannot be determined through the first relation data, and then if the first constant C is in the following statefreeIf the value of (a) is determined, the centroid position p (t) corresponding to any interval duration t can be obtained through the first relationship data.
In the moving process of the foot robot, the centroid position of the foot robot changes along with the moving interval duration t, the centroid position after the arbitrary interval duration t has a corresponding centroid position variation, the sum of the centroid position variation corresponding to the interval duration t and the initial centroid position of the foot robot when the foot robot starts moving is used as the centroid position P (t) corresponding to the foot robot after the arbitrary interval duration t, so that first relation data indicating the relation between the centroid position P (t) and the interval duration t is determined, and the centroid moving track of the foot robot can be determined through the first relation data.
In the embodiments of the present application, the first constant C is used to determine the first constantfreeDetermining the centroid position P (t) to represent the created first relationship data with a third constant C derived from the second constant h and the duration matrix E, while in another embodiment, the execution is not requiredStep 302-.
304. Setting the second relation data corresponding to at least one foot as: acting force f corresponding to ith footi{ P (t) } is the sum of the third constant C and the linear mapping of the fourth constant λ corresponding to the ith foot.
Wherein, the foot robot is provided with at least one foot, the second relation data corresponding to the ith foot respectively indicate the centroid position P (t) and the acting force f corresponding to the ith footi(ii) relationship between { P (t) }, force fi{ P (t) } indicates the acting force applied to the ith foot of the foot type robot in the mass center position P (t) by contacting with the ground, wherein i is a positive integer. The fourth constant lambda is a constant with an undetermined value and is used for representing the acting force fi{ P (t) } constant of the relationship between centroid position P (t). In the legged robot, the second relation data may be stored in the form of a descriptive sentence or a function.
In the centroid position p (t), the acting force applied to different feet of the foot robot may be the same or different, and the fourth constant λ corresponding to different feet may be the same or different. When the acting force on different feet of the foot type robot is different and the fourth constant lambda corresponding to different feet is the same, the mapping matrixes of the fourth constant lambda corresponding to different feet are different. And the fourth constant λ corresponding to different feet of the legged robot may be different at different centroid positions p (t). For example, a legged robot includes 4 feet, and when the 4 feet of the legged robot are all in contact with the ground, the fourth constant λ corresponding to any one foot includes 6 dimensional variables; when all 3 feet of the legged robot are in contact with the ground, the fourth constant λ corresponding to any one foot in contact with the ground contains 3 dimensional variables.
The second relation data corresponding to at least one foot respectively indicate the action force f of the centroid position P (t) corresponding to at least one footi{ P (t) }, setting, in the first relationship data, as: the centroid position P (t) is the product of the third constant C and the duration matrix E, and the first relation data is substitutedEntering the second relation data corresponding to at least one foot to obtain the acting force f corresponding to at least one footi{ P (t) } is the sum of the third constant C and the linear mapping of the fourth constant λ corresponding to the ith foot.
Determining a first product of a third constant C and a corresponding mapping matrix and a second product of a fourth constant lambda corresponding to the ith foot and the corresponding mapping matrix by obtaining the mapping matrix of the third constant C and the mapping matrix of the fourth constant lambda corresponding to the ith foot, and taking the sum of the first product and the second product as an acting force f corresponding to the ith footi{P(t)}。
Since the legged robot can stand or move by the contact of at least one foot with the ground, and the center of mass of the legged robot is kept at the corresponding center of mass position p (t) by the cooperation between at least one foot, it can be determined that the acting force corresponding to at least one foot of the legged robot has an association relationship with the center of mass position p (t), thereby creating second relationship data corresponding to at least one foot. By creating second relation data corresponding to at least one foot, the subsequently determined centroid position P (t) of the foot type robot conforms to the stress condition of the foot type robot, and the feasibility of the subsequently obtained centroid position P (t) is ensured.
In the embodiment of the present application, the acting force f corresponding to the ith foot is determined by the fourth constant λ corresponding to the ith foot through the third constant Ci{ P (t) }, representing the created second relationship data, and in another embodiment, the step 304 need not be executed, and the second relationship data corresponding to at least one foot may be created in other manners.
305. And acquiring the moving time length required by the foot type robot to move from the initial position to the final position.
The moving time period may be set arbitrarily, such as 15 seconds, 30 seconds, and the like.
In one possible implementation, this step 305 may include: determining the distance between the centroid position corresponding to the initial position and the centroid position corresponding to the end position as the moving distance of the foot type robot from the initial position to the end position, acquiring the moving speed of the foot type robot, and determining the ratio of the moving distance to the moving speed as the moving duration. The moving speed of the legged robot can be set arbitrarily, such as 0.2 meter per second, 0.5 meter per second, and the like.
306. A plurality of sampling time points are selected within the moving duration.
The sampling time point refers to a time point between a starting time point corresponding to the initial position and an ending time point corresponding to the ending 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 starting time point corresponding to the initial position is 0 second, the terminating time point corresponding to the terminating 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 306 may include: the moving time length is divided into a plurality of time segments, and the ending time point of each time segment is taken as a sampling time point. The obtained multiple time periods may be equal or unequal.
307. And determining fourth relation data corresponding to each sampling time point according to the interval duration between each sampling time point and the starting time point and the first relation data.
Wherein the fourth relational data indicates a first constant CfreeAnd the sampling centroid position Q (C)free) The relation between, the sampling centroid position Q (C)free) Indicating the position of the center of mass of the legged robot at the corresponding sampling time point. In the legged robot, the fourth relational data may be stored in the form of descriptive sentences or may be functionalThe form is stored.
The first relation data indicates that the centroid position P (t) is the product of a third constant C and the duration matrix E, and the third constant C comprises a first constant C with undetermined valuefreeSubstituting the interval duration between any sampling time point and the starting time point into a duration matrix E in the first relational data, determining the value of the duration matrix E at any sampling time point, and obtaining fourth relational data corresponding to the sampling time point, wherein the fourth relational data indicates a first constant CfreeAnd the sampling centroid position Q (C)free) The relationship between them. First constant C included in fourth relational datafreeThe values of (a) are not determined, and the values of other constants included in the fourth relational data are determined.
308. And determining fifth relation data corresponding to each sampling time point according to the second relation data and the fourth relation data corresponding to at least one foot.
Wherein the fifth relational data indicates a first constant CfreeForce f corresponding to at least one footi(p (t)) }. Since the fourth relational data indicates the first constant CfreeAnd the sampling centroid position Q (C)free) A second relationship data corresponding to at least one foot indicates a centroid position p (t) and an acting force f corresponding to at least one footiAnd { P (t) }, substituting the fourth relation data corresponding to each sampling time point into the second relation data to obtain the fifth relation data corresponding to each sampling time point. Due to the first constant C included in the fourth relational datafreeIs undetermined, the first constant C included in the second relation datafreeAnd if the value of the fourth constant lambda is not determined, the first constant C in the obtained fifth relational datafreeAnd the value of the fourth constant λ is not determined. In the legged robot, the fifth relational data may be stored in the form of descriptive sentences or in the form of functions.
In one possible implementation, this step 308 may include: according to the stepping sequence of the foot type robot, the stepping time corresponding to at least one footLength and interval duration between each sampling time point and the initial time point, determining the contact feet of the foot type robot with the ground at each sampling time point, and determining the position Q (C) of each sampling mass center according to the positionfree) And determining fifth relation data according to the second relation data corresponding to at least one foot and the foot of each sampling time point in contact with the ground.
The stepping sequence indicates a stepping sequence among a plurality of feet of the foot type robot, and the stepping time length corresponding to the feet is the time length from the lifting to the falling of the feet. The stepping time lengths corresponding to different feet can be the same or different.
The foot in the stepping process corresponding to each sampling time point can be determined through the stepping sequence of the foot type robot, the stepping time length corresponding to at least one foot and the interval time length between each sampling time point and the starting time point, so that the foot of the foot type robot contacting with the ground is determined at each sampling time point. Sampling each centroid position Q (C)free) Substituting the second relation data into the first relation data to obtain the acting force f corresponding to at least one foot of the legged robot contacting with the ground at each sampling time pointi{ P (t) }, fifth relation data is obtained.
For example, the legged robot includes four feet, which are divided into a left front foot, a left rear foot, a right front foot, and a right rear foot, the stepping order is a four-foot support moving centroid, a right rear foot, a right front foot, a four-foot support moving centroid, a four-leg support moving centroid, a left rear foot, a left front foot, and a four-foot support moving centroid, each stepping duration is 1 second, when the sampling time point is 1.5 seconds, it can be determined that the legged robot is in the process of stepping the right rear foot, and the feet currently in contact with the ground are the left front foot, the left rear foot, and the right front foot; when the sampling time point is 3.5 seconds, the process that the foot type robot is in the four-foot support moving mass center can be determined, and the current feet in contact with the ground are a left front foot, a left rear foot, a right front foot and a right rear foot.
309. And creating third relation data according to the fourth relation data and the fifth relation data.
Wherein the third correlation data indicates the target value J and at least one of the foot-to-ground contactForce f received by touchiPositive correlation between squares of { P (t) }, and also indicates the acting force f corresponding to at least one foot corresponding to each sampling time point for the target value Ji{ P (t) } and sample centroid position Q (C)free) A positive correlation between them. In the legged robot, the third correlation data may be stored in the form of a descriptive sentence or a function.
In one possible implementation, this step 309 may include: setting the target value J to a weighted sum of squares of the plurality of distances and the force f corresponding to at least one footiThe sum between the weighted sum of squares of { p (t) }. Wherein the plurality of distances includes a distance between any two adjacent centroid positions of the centroid position of the initial position, the plurality of sampling centroid positions, and the centroid position of the end position.
Wherein the weight of each distance and each force fiThe weights of (P (t) } can be set arbitrarily, and the force fiThe weight of { P (t) } may be the force fi{ P (t) } weight corresponding to the corresponding foot. Determining a square value of the product of each distance and the corresponding weight, taking the sum of the square values corresponding to the plurality of distances as a weighted sum of squares of the plurality of distances, and determining the acting force f corresponding to each footi(p (t)) and the square value of the product of the weights, and the sum of the square values corresponding to the plurality of applied forces is used as the applied force f corresponding to at least one footi{ P (t) } weighted sum of squares.
In one possible implementation, the target data J satisfies the following relationship:
J=Jgrf+Jlen
wherein, JgrfFor representing the corresponding force f of at least one footiWeighted sum of squares of { P (t) }, JlenRepresenting a weighted sum of squares of a plurality of distances.
It should be noted that the embodiment of the present application is described by creating the third correlation data according to a plurality of sampling time points, and in another embodiment, the step 305 and the step 309 need not be executed, and the following steps may be executed instead:
determining the distance between the centroid position of the foot robot at the initial position and the centroid position of the foot robot at the end position, and setting the target value J as the acting force f corresponding to the weighted square value of the distance and at least one footiThe sum between the weighted sum of squares of { p (t) }.
Determining the square value of the product of the distance and the corresponding weight as the weighted square value of the distance, and determining the acting force f corresponding to each footiThe square value of the product of { P (t) } and the corresponding weight, the plurality of forces fiThe sum of the corresponding squared values of { P (t) } is used as the corresponding force f of at least one footi{ P (t) } weighted sum of squares.
310. Determining a first constant C when the target value J is a minimum value according to the third relation coefficient datafreeObtaining a first constant C with determined valuefreeCorresponding first relationship data.
Since the undetermined constants of the target value J include the first constant CfreeTarget value J and first constant CfreeIs in positive correlation, the target value J has a minimum value. The target value J is used for optimizing distribution of acting force received by at least one foot of the foot type robot, the length of a locus of the position of the center of mass can be reflected, oscillation amplitude of the position of the center of mass of the foot type robot is reflected, the distribution of the acting force received by at least one foot of the foot type robot is balanced through the minimum value of the target value J, the oscillation amplitude of the position of the center of mass of the foot type robot is small, stability of the foot type robot in the moving process can be guaranteed, therefore, the minimum value of the target value J is selected, and a corresponding first constant C can be determined through the minimum valuefreeThe value of (a).
By applying a first constant C whose value has been determinedfreeSubstituting the first relational data to obtain a third constant C determined by value, wherein the centroid position P (t) in the first relational data is the product of the third constant C determined by value and the duration matrix E, and the corresponding centroid position P (t) can be determined by any interval duration between the starting time points corresponding to the initial positions.
In addition, the constants with undetermined values in the third correlation coefficient data include a fourth constant λ, and the value of the fourth constant λ when the target data J is minimum can be determined.
In addition, a first constant C is determined by taking a valuefreeCorresponding first relation data takes the interval duration as an abscissa and the centroid position as an ordinate, and a first constant C determined according to the valuefreeAnd establishing a centroid position point corresponding to any interval duration in a coordinate system according to the relation between the centroid position P (t) and the interval duration t in the corresponding first relation data, and connecting a plurality of centroid position points to form a curve, namely the centroid moving track of the foot robot.
311. 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 final position.
The first constant C is determined due to the valuefreeThe values of other constants except the interval duration t in the corresponding first relation data are determined, and then any interval duration t is determined0Substituting the first relation data to obtain the duration t of any interval0Corresponding centroid position P (t)0)。
312. According to the centroid position P (t)0) And a termination 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) End position and inverse kinematics to determine foot typeJoint torques of a plurality of joints during the movement of the robot to the end position.
In one possible implementation, this step 312 may include: joint angles and joint torques of a plurality of joints of the legged robot are determined based on the centroid position P (t0) and the end position. 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.
313. And controlling the joints to rotate according to the joint torques of the joints to drive 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 starting position to the ending 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.
In one possible implementation, this step 313 may include: 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 ending position is described, but in another embodiment, after the legged robot reaches the ending position, the legged robot may further continue to perform the next moving process, and the ending position of the previous moving process is taken as the starting position of the next moving process, and the above-mentioned step 301 and step 313 are performed to move the legged robot to the ending position of the next process, thereby implementing a plurality of continuous moving processes of the legged robot.
In one possible implementation manner, the ending position of the last moving process is taken as the target position of the legged robot, after the ending position of the current moving process of the legged robot is determined, whether the ending position coincides with the target position is detected, in response to the ending position not coinciding with the target position, first state data is set for the ending position, and in response to the ending position coinciding with the target position, second state data is set for the ending 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 ending position is not coincident with the target position, indicating that the legged robot needs to move continuously after reaching the ending position of the current moving process, and executing the next moving process, wherein in order to ensure the moving continuity of the legged robot, the centroid speed and the centroid acceleration of the legged robot are not 0; and in response to the end position coinciding with the target position, indicating that the legged robot reaches the end position of the current moving process, the legged robot stops and does not move any more, 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.
The method provided by the embodiment of the application comprises the steps of obtaining state data of a legged robot at an initial position and state data of the legged robot at a termination position, creating first relation data, indicating the relation between interval duration t and centroid position P (t), creating second relation data corresponding to at least one leg configured by the legged robot, and at leastThe second relation data corresponding to one foot respectively indicate the action force f corresponding to the centroid position P (t) and at least one footi(p (t)) creating third correlation data indicating an acting force f on the at least one foot in contact with the ground for the target value J, based on the first and second correlation dataiPositive correlation between squares of { P (t) }, and the first constant C at which the target value J is the minimum value is determined according to the third correlation coefficient datafreeObtaining a first constant C with determined valuefreeCorresponding first relationship data. According to the method provided by the embodiment of the application, the state of each joint of the legged robot does not need to be detected, and the first constant C can be determined through the created first relation data, the second relation data corresponding to at least one foot and the third relation datafreeCorresponding first relation data, the first constant C is reducedfreeThe calculated amount in the corresponding first relation data process can be suitable for the legged robot with any number of feet, and the application range is wide. And by applying the first constant CfreeThe corresponding first relation data can determine the centroid position corresponding to any interval duration in the process that the foot type robot moves from the initial position to the end position, and then determine the centroid moving track of the foot type robot from the initial position to the end position, so that the foot type robot moves according to the determined centroid moving track, and the moving efficiency of the foot type robot is guaranteed.
And by creating second relation data corresponding to at least one foot, the acting force applied by the contact of at least one foot configured by the foot type robot and the ground is considered, the accuracy of the determined centroid position of the foot type robot is improved, the foot type robot can move according to the determined centroid moving track, the feasibility and the high efficiency of the determined centroid moving track are ensured, and the diversity and the universality of the determined centroid moving track are ensured.
As shown in fig. 4, 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 401, a trajectory generation subsystem 402, and a movement control subsystem 403.
The vision perception subsystem 401 acquires the termination position and the stepping sequence of the legged robot according to the state data of the legged robot, and transmits the acquired termination position and stepping sequence of the legged robot to the trajectory generation subsystem 402.
The trajectory generation subsystem 402 receives the ending position and the stepping sequence of the legged robot sent by the vision perception subsystem 401, 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 403.
The movement control subsystem 403 receives the determined joint moments of the joints of the foot robot sent by the trajectory generation subsystem 402, controls the joints to rotate according to the determined joint moments of the joints 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 move stably.
The above embodiments relate to the first relationship data, the second relationship data and the third relationship data, and on the basis of the above embodiments, the following embodiments will describe the creation processes of the above three 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 termination 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 mobile sub-processes are continuous among the plurality of mobile sub-processes, for two adjacent mobile sub-processes, the end position of the previous mobile sub-process is the same as the start position of the next mobile sub-process.
2. First relationship data is created separately for each of the mobile sub-processes.
Since the moving subprocesses are different among the plurality of moving subprocesses and have different influences on the position of the mass center of the foot type robot, the third constant C corresponding to the moving subprocess is also 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 third constant CkThe product of the third constant CkThe following relationship is satisfied:
wherein 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.
The first relationship data corresponding to the kth mobile subprocess can be represented by the following function:
Et=[1 t t2t3]
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; 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, CzkIndicates the kth mobile stationThird constant C corresponding to the degreekComponent in the z-axis, C*k=[C*k,0C*k,1C*k,2C*k,3]TAnd may represent the x, y, z axes,represents a constant C*kFor a column vector comprising 4 dimensions,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 isThe sum of the movement durations of the first k movement processes is
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 termination position.
Since the moving process of the foot robot from the initial position to the end position is composed of a plurality of moving sub-processes of the foot robot, the third constant C in the first relation data corresponding to the movement of the foot robot from the initial position to the end position is the third constant C corresponding to the plurality of moving sub-processeskThe third constant C corresponding to each moving subprocess is included in the third constant C in the first relation data corresponding to the foot type robot moving from the initial position to the termination positionkComponents in the x, y, z axes.
In one possible implementation, the first relationship data corresponding to the legged robot moving from the initial position to the end position may be represented by the following function:
C=[C1C2... Ck... Cn]T
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; c represents a third constant in the first relation data corresponding to the foot robot moving from the initial position to the termination position; c1A third constant, C, corresponding to the first mobile subprocess2A third constant, C, corresponding to the second mobile subprocesskA third constant, C, corresponding to the kth mobile subprocessnRepresents a third constant corresponding to the nth mobile subprocess, and T represents a transposition of the matrix.
In addition, the degree of dimension included in the determination of the third constant C and the first constant CfreeThe number of dimensions included in (a) may be determined from the variables in the first relationship data. As shown in fig. 5, the movement of the foot robot from the initial position to the final position includes 8 movement subprocesses, which are a movement subprocess 501, a movement subprocess 502, a movement subprocess 503, a movement subprocess 504, a movement subprocess 505, a movement subprocess 506, a movement subprocess 507, and a movement subprocess 508 in the chronological order. The number of components included in the x, y and z axes in the third constant C is 3, and the time length vector E in the first relational datatIncluding the interval duration of 4 dimensions, it may be determined that the number of dimensions 3 × 8 × 4 included in the third constant C is 96, since the ending position of the previous moving subprocess is the same as the starting position of the next moving subprocess in any two adjacent moving subprocesses, and in order to ensure the continuity of 8 moving subprocesses, the number of dimensions for representing the continuity of 8 moving subprocesses in the third constant C is 3 × 7 × 3 63, where the first 3 represents the number of components in the x, y, and z axes, 7 represents 7 identical positions in 8 moving subprocesses, and the second 3 represents that each position corresponds to 3 variables including the centroid position, the centroid velocity, and the centroid accelerationThe position status data is determined, the number of dimensions of the status data representing the determined positions of the 8 locomotion sub-processes in the third constant C is 3 × 6-18, where 3 represents the number of components in the x, y, z axes, and 6 represents the number of values contained in the status data of the two determined positionsfreeThe 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, according to the first relationship data of the kth moving subprocess, sixth relationship data of the kth moving subprocess may be created, where the sixth relationship data indicates centroid acceleration corresponding to the centroid position p (t)And the interval duration t.
In one possible implementation manner, the first relation data of the kth mobile sub-process is subjected to 2-order derivative on the interval duration to obtain sixth relation data of the kth mobile sub-process, and the sixth relation may be represented by the following function:
wherein E isaRepresenting a time matrix by a duration vector EtObtained by taking the 2 nd derivative of the interval duration t,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 second relationship data:
1. seventh relational data is created.
The seventh relational data indicates a relation between an acting force received by the legged robot and the legged robot during movement and a gravity of the legged robot, and in the legged robot, the seventh relational data may be stored in a descriptive form or a functional form.
In one possible implementation, the seventh relationship data may be represented by the following function:
wherein m represents the mass of the legged robot;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 gravityA column vector representing 3 dimensions of the gravitational acceleration g,representing a set of real numbers in a multi-dimensional space, L representing the angular momentum of the legged robotThe column vector representing the angular momentum L as 3 dimensions,the first derivative of angular momentum L to interval time t is shown, the variation of angular momentum L is shown, Y is the number of feet of the foot robot contacting with the ground, and 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;indicating a point of contact riA skew-symmetric matrix of (a);a diagonal symmetry matrix representing the centroid position p (t); f. ofi{ P (t) } is the acting force applied to the contact between the ith foot of the foot-type robot and 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. According to the seventh relational data, eighth relational data is created.
The eighth relational data indicates a relation between an acting force applied to the legged robot during movement and the gravity of the legged robot, and may be stored in the form of descriptive sentences or functions in the legged robot.
The seventh relational data can be used to obtain the relational expression that the total acting force of the foot robot is equal to the gravity of the foot robotSubstituting the relation into the seventh relation data to obtain eighth relation data, wherein the eighth relation data can be represented by the following function:
wherein m represents the mass of the legged robot;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 gravityA column vector representing 3 dimensions of the gravitational acceleration g,representing a set of real numbers in a multi-dimensional space, L representing the angular momentum of the legged robotThe column vector representing the angular momentum L as 3 dimensions,represents the first derivative of the angular momentum L with respect to the interval duration t;a diagonal symmetry matrix representing the centroid position p (t); f. of0{ P (t) } is used for expressing the sum of the acting force of at least one foot of the foot type robot contacting with the ground; g is a constant matrixThe constant matrix G is represented as a matrix of 6 rows and 3Y columns,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;indicating a point of contact riA skew-symmetric matrix of (a);
3. and creating ninth relation data according to the eighth relation data and the centroid position P (t) of the legged robot.
The ninth relation data indicates the relation between the acting force applied to the foot type robot and the centroid position p (t) of the foot type robot, and in the foot type robot, the ninth relation data can be stored in a descriptive statement mode or a functional mode.
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 eighth relational data to obtain ninth relational data, which can be represented by the following function:
wherein G is a constant matrix, the constant matrixThe constant matrix G is represented as a matrix of 6 rows and 3Y columns,a set of real numbers representing a multi-dimensional space; f. of0{ P (t) } forThe sum of the acting force of at least one foot of the legged robot contacting with the ground is represented; m represents the mass of the legged robot; ptRepresenting the mass center position variation of the mass center position of the foot type robot after the interval duration t from the starting time point of the planning period;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,is a constant vector PinitA skew-symmetric matrix of (a); g represents the acceleration of the gravity,a column vector representing 3 dimensions of the gravitational acceleration g;an oblique symmetric matrix representing the acceleration of gravity g,a diagonal symmetric matrix representing the variation of the position of the center of mass, L the angular momentum of the legged robotThe column vector representing the angular momentum L as 3 dimensions,representing the first derivative of the angular momentum L with respect to the interval duration t.
4. From the ninth relational data, tenth relational data is created.
The tenth relation data indicates the relation between the acting force applied to the foot robot and the centroid position p (t) of the foot robot, and in the foot robot, the tenth relation data may be stored in the form of descriptive sentences or functions.
Because the mass center position variation satisfies the relationIn the above-mentioned ninth relational data,the following relationship is satisfied:
wherein,representing the amount of change P in the position of the center of masstThe component in the plane formed by the x and y axes,the corresponding z coordinate is 0;representing the amount of change P in the position of the center of masstA component in the z-axis;the corresponding x and y coordinates are 0;representing the amount of change P in the position of the center of masstA skew-symmetric matrix of components in a plane formed by the x and y axes;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;representing the amount of change P in the position of the center of masstThe 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;representing the amount of change P in the position of the center of masstA diagonally symmetric matrix of components in the z-axis;indicating the moment about the Z-axis,indicating a moment in a certain direction in the xy-plane. Due to the fact thatAndco-linear, thenIs 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 ignoredAndare all small and can be ignored, then the above-mentioned ninth relation dataCan be omitted.
When the posture of the foot type robot changes small in the moving process of the foot type robot, the variation of the corresponding angular momentum of the foot type robotSmall, negligible, then the third item on the right side of the equation in the ninth relational data may be ignored, resulting in tenth relational data that satisfies the following relationship:
Gf0{P(t)}≈HX′t-Wg,
wherein G is a constant matrix, the constant matrixThe constant matrix G is represented as a matrix of 6 rows and 3Y columns,a set of real numbers representing a multi-dimensional space; f. of0{ P (t) } is used for expressing the sum of the acting force of at least one foot of the foot type robot contacting with the ground; h is 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 massA 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;is a constant vector PinitA skew-symmetric matrix of (a); g represents the acceleration of the gravity,a column vector representing 3 dimensions of the gravitational acceleration g;an oblique symmetric matrix representing the gravitational acceleration g.
5. And creating second relation data according to the tenth relation data.
By processing the tenth relationship data, the following relationship can be obtained:
wherein f is0{ P (t) } is used for expressing the sum of the acting force of at least one foot of the foot type robot contacting with the ground; g+Is a constant matrix expressed as a pseudo-inverse of the constant matrix G+Constant matrix representing at least one foot correspondenceGathering; h is a constant matrix; p (t) represents the centroid position;is a second derivative of the centroid position P (t) to the interval duration t, representing the centroid acceleration corresponding to the centroid position P (t); λ represents a fourth constant corresponding to at least one foot of the legged robot; wgIs a constant vector; u is a constant matrix which represents a mapping matrix set corresponding to a fourth constant lambda corresponding to at least one foot.
Through the relational expression, second relational data corresponding to the ith foot of the foot type robot can be obtained, and the following relations are satisfied:
wherein f isi{ P (t) } represents the corresponding force of the ith foot;is a constant matrix, a constant matrixA constant matrix corresponding to the ith foot is represented; h is a constant matrix; p (t) representational substanceA heart position;is a second derivative of the centroid position P (t) to the interval duration t, representing the centroid acceleration corresponding to the centroid position P (t); λ represents a fourth constant corresponding to at least one foot of the legged robot; u shapeiA mapping matrix corresponding to a fourth constant lambda corresponding to the ith foot is represented; wgIs a constant vector.
From the second relational data, it can be seen that the force f corresponding to the ith foot of the legged roboti{ P (t) } is linear with a fourth constant λ.
It should be noted that, in the embodiment of the present application, the centroid position p (t) of the foot-type robot is illustrated in an ideal condition, and in another embodiment, the centroid position p (t) of the foot-type robot has an error, and the centroid position p (t) of the foot-type robot is affected by the foot of the foot-type robot during the moving process of the foot-type robot, so that the centroid position p (t) of the foot-type robot changes within a certain range. In order to improve the accuracy and stability of the obtained centroid position of the legged robot, uncertainty constraints are added to the errors of the centroid position. As shown in fig. 6, one point is taken in each of the positive and negative directions of the x, y, and z axes of the coordinate system, and point 1, point 2, point 3, point 4, point 5, and point 6 are obtained. The six points are used as the vertexes of the polyhedron to obtain the offset P 'of the centroid position of the foot robot'j。
Wherein j is used for representing points acquired on coordinate axes x, y and z and can be 1, 2, 3, 4, 5 and 6; represents an offset coefficient and is a constant; p'jIs shown as foot typeOffset of centroid position of robot on coordinate axis, P'jCorresponds to any one point, P ', of the six points on the coordinate axis'jThe coordinates of (a) may be expressed as (± x, 0, 0), (0, ± y, 0), (0, 0, ± z); pinitIs a constant vector and is used for representing the initial centroid position of the legged robot at the beginning of any moving period; p0Representing the position of the centre of mass, P, of the legged robot in the initial position1Representing the position of the center of mass of the legged robot at the end position,to increase the centroid position after the offset at the beginning of the planning cycle,the center of mass position of the legged robot after the offset is increased corresponding to the initial position is shown,the center of mass position of the legged robot after the offset is increased corresponding to the termination position is shown.
Adding offset P 'to the centroid position of the foot robot'jThereafter, the ninth relational data may be represented by the following function:
wherein G is a constant matrix, the constant matrixThe constant matrix G is represented as a matrix of 6 rows and 3Y columns,a set of real numbers representing a multi-dimensional space; f. of0{ P (t) } is used for expressing the sum of the acting force of at least one foot of the foot type robot contacting with the ground; m represents the mass of the legged robot; z'3×3An identity matrix of 3 rows and 3 columns; g represents the acceleration of the gravity,a column vector representing 3 dimensions of the gravitational acceleration g;an oblique symmetric matrix representing the acceleration of gravity g, PinitIs a constant vector and is used for representing the initial centroid position of the legged robot at the beginning of any moving period,is a constant vector PinitA skew-symmetric matrix of (a); ptRepresenting the mass center position variation of the mass center position of the foot type robot after the interval duration t from the starting time point of the planning period;representing the amount of change P in the position of the center of masstA second derivative of the interval duration t;a skew symmetric matrix representing the amount of change in the centroid position; j is used to indicate points taken on the coordinate axes x, y, z, and may be 1, 2, 3, 4, 5, 6; represents an offset coefficient and is a constant; p'jExpressed as the offset of the centroid position of the legged robot on the coordinate axis.
Adding offset P 'through mass center position of foot type robot'jThe ninth relation data can determine that the acting force applied to the foot robot conforms to the constraint of the friction force when the offset of the centroid position of the foot robot reaches each vertex of the polyhedron, and the acting force applied to the foot robot also conforms to the constraint of the friction force when the offset of the centroid position of the foot robot is inside the polyhedron.
Third, the process of creating third relational data:
and creating third relation data according to the friction force constraint of the legged robot, the fourth relation data and the fifth relation data, and creating third relation data.
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 of { P (t) } in the friction force direction avoids the relative sliding between the foot and the ground, thereby ensuring that the foot type robot can normally move. Acting force f corresponding to at least one foot of foot type roboti{ P (t) } are all constrained by friction, satisfying the following relationship:
wherein n isiIs the normal vector of the contact point of the ith foot of the legged robot and the ground,represents a normal vector niIs a column vector of 3 dimensions and,a set of real numbers representing a multi-dimensional space; t is ti1、ti2Two 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. the tangent vector ti1And tangent vector ti2Orthogonal, ti1、Representing tangent vector ti1And the tangent vector ti2Military is a column vector of 3 dimensions; 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 any point from the vertex to the base circle of the cone in the coneThe connecting lines between the foot and the ground can be used as the acting force f on the contact of the ith foot and the groundiDirection of { P (t) }. 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 groundi{ P (t) } satisfies the following relationship:
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,represents a normal vector niIs a column vector of 3 dimensions and,a set of real numbers representing a multi-dimensional space; t is ti1、ti2Two 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. the tangent vector ti1And tangent vector ti2The two-dimensional orthogonal transmission line is orthogonal,representing tangent vector ti1And the tangent vector ti2Military is a column vector of 3 dimensions; t denotes the transpose of the vector;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,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,are all larger than 0, and are all larger than 0,can be any value set.Normal vectors for representing the 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 groundi{ P (t) } constraint of force components on four sides of the rectangular pyramid, and acting force f applied to the contact of the ith foot of the foot-type robot with the groundi{ P (t) } constraint of normal force component to enable the ith foot of the legged robot to contact with the ground under the action force fiThe direction of { P (t) } is confined within a rectangular pyramid.
Because the foot robot meets the friction force constraint at a plurality of sampling time points, the fourth relational data corresponding to each sampling time point and the fifth relational data corresponding to each sampling time point are substituted into the relational expression to obtain
HfV+Bf≤Df
Wherein HfIs a constant matrix, Bf、DfAre all constant vectors, V represents a variable vector, the variable matrixΛ is a collection of the fourth constant λ corresponding to different feet, and the collection Λ can obtain a general solution of the acting force of the legged robot contacting with the ground under the condition of centroid dynamicsfCan be a matrix of 360 rows and 87 columns, constant vector BfColumn vector, constant vector D, which may be 360 rowsfA column vector of 360 rows may be used.
In addition, the mass center position of the foot robot has an offset P'jThen the above relationship can be expressed as:
Substituting the fourth relation data corresponding to each sampling time point into the fifth relation data to obtain a third relation satisfying the following relation:
the target data J satisfies the following relationship:
J=Jgrf+Jlen
wherein, JgrfFor representing the corresponding force f of at least one footiWeighted sum of squares of { P (t) }, JlenRepresenting a weighted sum of squares of a plurality of distances. J in the third relational datagrfAnd JlenIncludes the square of the variable matrix V, and the variable matrix V satisfies the friction constraint.
Through a quadratic programming solver, the minimum value of the target data J in the third relational data can be obtained, and then the variable matrix V corresponding to the minimum value of the target data J can be obtained, that is, the first constant C corresponding to the minimum value of the target data J is obtainedfreeAnd a fourth constant lambda, thereby obtaining the moving track of the mass center of the legged robot.
The method provided by the embodiment of the application is based on the mass-cardiography of the foot type robot, ignores the parameters which have small influence on the centroid position of the foot type robot, considers the constraints of the centroid position, the speed and the acceleration of the initial position and the termination position on the centroid position, and the constraints of the friction force on the contact between the foot type robot and the ground, converts the determined centroid position into a quadratic programming problem, solves the centroid movement track with high stability, then obtains the joint torque of each joint of the foot type robot according to inverse kinematics by combining the termination position of the foot type robot foot-landing point, and controls the joints to rotate according to the joint torque of the joints to drive the foot type robot to move.
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 multi-leged robots; the device can be suitable for various gaits of the foot type robot, such as biped walking, quadruped running or random 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 from the initial position to the end position; under the condition that the ground is a plane or the height difference is small, the height of the robot mass center can be kept unchanged, and the motion of the mass center in the plane is planned only by adopting 2 groups of curves; the constraint of the state data of the starting position and the state data of the ending position on the centroid position can be determined according to actual requirements, and independent variables are still required to be ensured in curve parameters after the constraint is 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, the distance corresponding to the sampling time point in the third relational data can be determined through a plurality of sampling time points, the distance can comprise components in three directions of an x axis, a y axis and a z axis, and different weights can be selected according to actual conditions; 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. Simplification of the friction cone: any N (N >4) pyramid inscribed in the friction cone can be used for approximation, the larger the value of N is, the more accurate the approximation of the real friction cone is, but the larger the size of the quadratic programming problem is, the longer the solving time is; 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 contact condition between the body, the trunk, the upper limb and other parts of the robot and the environment; centroid position uncertainty constrained polyhedron: any polyhedron meeting the actual requirement can be adopted, the increase of the number of vertexes of the polyhedron can lead to the increase of the size of the quadratic programming problem, and the solving time is increased. Under the condition that the position of the center of mass in a certain single direction is determined and the change is negligible, reducing the dimension of the polyhedron into a parallel polygon; under the condition that the positions of the mass centers in a certain two directions are determined and the change is negligible, the dimension of the polyhedron can be reduced into a straight line; when the positions of the three directional centroids are determined and the change is negligible, the dimension can be reduced to a point.
As shown in fig. 7, the legged robot is configured with 4 legs, and the legged robot moves from an initial position to an end position according to a determined centroid moving trajectory 701.
As shown in fig. 8, the trajectory of the centroid position is generated once per half the stepping cycle for a legged robot whose centroid position, centroid velocity and centroid acceleration are plotted as a function of interval duration. The two curves in each graph represent centroid position curves with the centroid position p (t) contained therein having interval durations t raised to the highest powers of 3 and 6, respectively. The foot type robot is provided with 4 feet, namely a right back foot, a right front foot, a left back foot and a left front foot, the stepping sequence of the foot type robot is to step the right back foot, the right front foot, the left back foot and the left front foot, and each half stepping cycle can be to step the right back foot and the right front foot or to step the left back foot and the left front foot. The legged robot repeatedly performs a stepping process of a plurality of legs in a stepping order, thereby moving the legged robot. As can be seen from fig. 8, the centroid position curves in which the highest powers of the interval durations included in the centroid position p (t) of the legged robot are 3 and 6, respectively, have small deviations, and therefore, it can be determined that the highest power of the interval duration t included in the centroid position p (t) can be any value.
As shown in fig. 9, the trajectory of the centroid position is generated once per stepping cycle for the legged robot, which is a graph of the centroid position, centroid velocity, and centroid acceleration as a function of the interval duration. The two curves in each graph represent centroid position curves with the centroid position p (t) contained therein having interval durations t raised to the highest powers of 3 and 6, respectively. The foot type robot is provided with 4 feet, namely a right back foot, a right front foot, a left back foot and a left front foot, the stepping sequence of the foot type robot is that the right back foot, the right front foot, the left back foot and the left front foot are stepped, and each stepping cycle can be that the right back foot, the right front foot, the left back foot and the left front foot are stepped. The legged robot repeatedly performs a stepping process of a plurality of legs in a stepping order, thereby moving the legged robot. As can be seen from fig. 9, the centroid position curves in which the interval duration t included in the centroid position p (t) is raised to the highest powers of 3 and 6, respectively, have small deviations, and therefore, it can be determined that the interval duration t included in the centroid position p (t) can be raised to the highest power of an arbitrary value.
As shown in fig. 10, when the highest power of the interval duration t included in the centroid position p (t) of the legged robot is 6, the first row of images represents a curve in which the centroid position trajectory is generated once every half stepping cycle of the legged robot, and the total moment and the omitted moment of the legged robot vary with the interval duration; the second row of images represent curves that the center of mass position track is generated once in each stepping cycle of the foot type robot, and the total moment and the omitted moment of the foot type robot change along with the interval duration; as can be seen from fig. 10, the omitted moment portion is close to 0 when determining the centroid position in the above embodiment, which indicates that the moment portion is negligible.
As shown in fig. 11, the legged robot determines the centroid position according to the method for determining the centroid position in the above embodiment, and the centroid position determined for the legged robot and the real centroid position of the legged robot vary with the interval duration. In fig. 11, the first row of images shows a graph in which the centroid position changes with the interval duration when the legged robot moves at a slow speed, and the second row of images shows a graph in which the centroid position changes with the interval duration when the legged robot moves at a fast speed. As can be seen from fig. 11, by the centroid position determining method provided in the foregoing embodiment, the centroid position determined for the foot robot coincides with the true centroid position of the foot robot, so that the centroid position determining method provided in the embodiment of the present application is determined to be accurate.
Fig. 12 is a schematic structural diagram of a mass center position determining apparatus according to an embodiment of the present application, and as shown in fig. 12, the apparatus is applied to a legged robot, and includes:
a state data acquisition module 1201, configured to acquire state data of the legged robot at an initial position and at a final position, where the state data at least includes a centroid position, a centroid velocity, and a centroid acceleration;
a relation data creating module 1202, configured to create first relation data, where the first relation data indicates a relation between an interval duration t and a centroid position p (t), the interval duration t indicates a duration of an interval between any time point in a process that the legged robot moves from an initial position to an end position and a start time point corresponding to the start position, the centroid position p (t) indicates a centroid position of the legged robot at the interval duration t, and the first relation data includes a first constant C whose value is not determinedfreeAnd taking a determined second constant h, wherein the second constant h is determined by the acquired state data;
a relation data creating module 1202, further configured to create second relation data corresponding to at least one foot of the legged robot configuration, the second relation data corresponding to the at least one foot indicating a centroid position p (t), respectively, an acting force f corresponding to the at least one footi(ii) relationship between { P (t) }, force fi{ P (t) } indicates the acting force applied to the ith foot of the foot type robot in the mass center position P (t) by contacting with the ground, wherein i is a positive integer;
the relationship data creating module 1202 is further configured to create third relationship data according to the first relationship data and the second relationship data corresponding to the at least one foot, where the third relationship data indicates an acting force f applied by the target value J when the at least one foot is in contact with the groundiPositive correlation between squares of { p (t) };
a first constant value determination module 1203, configured to determine, according to the third correlation data, a first constant C when the target value J is a minimum valuefreeObtaining a first constant C with determined valuefreeCorresponding first relationship data.
In one possible implementation, as shown in fig. 13, the relationship data creation module 1202 includes:
a constant determination unit 1221 for determining a first constant CfreeThe sum of the linear mapping and the second constant h is used as a third constant C with undetermined value;
a relationship data setting unit 1222 to set the first relationship data to: centroid position p (t) is the product of third constant C and duration matrix E;
wherein E istRepresenting a duration vector.
In another possible implementation, as shown in fig. 13, the relationship data creation module 1202 includes:
the relationship data setting unit 1222, further configured to set the second relationship data corresponding to at least one foot as: acting force f corresponding to ith footi{ P (t) } is the sum of the third constant C and the linear mapping of the fourth constant λ corresponding to the ith foot.
In another possible implementation, as shown in fig. 13, the relationship data creation module 1202 includes:
a moving duration acquiring unit 1223 configured to acquire a moving duration required for the legged robot to move from the initial position to the end position;
a sampling time point selecting unit 1224, configured to select a plurality of sampling time points within the moving time length, where interval time lengths between any two adjacent sampling time points are equal;
a relation data determining unit 1225, configured to determine fourth relation data corresponding to each sampling time point according to the interval duration between each sampling time point and the start time point and the first relation data, where the fourth relation data indicates the first constant CfreeAnd the sampling centroid position Q (C)free) The relation between, the sampling centroid position Q (C)free) Indicating the centroid position of the legged robot at the corresponding sampling time point;
the relationship data determining unit 1225 is further configured to determine fifth relationship data corresponding to each sampling time point according to the second relationship data and the fourth relationship data corresponding to at least one foot, where the fifth relationship data indicates the first constant CfreeForce f corresponding to at least one footi(ii) the relationship between { P (t) };
a relation data creating unit 1226, configured to create third relation data according to the fourth relation data and the fifth relation data, where the third relation data further indicates that the target value J corresponds to each sampling time pointAt least one foot ofi{ P (t) } and sample centroid position Q (C)free) A positive correlation between them.
In another possible implementation, the relation data creating unit 1226 is further configured to set the target value J to a weighted sum of squares of the plurality of distances and the force f corresponding to the at least one footi{ P (t) }, the plurality of distances including the distance between any two adjacent ones of the centroid positions of the initial position, the plurality of sampling centroid positions, and the centroid position of the final position.
In another possible implementation manner, the relational data determining unit 1225 is further configured to determine the feet of the legged robot contacting the ground at each sampling time point according to the step sequence of the legged robot, the step duration corresponding to at least one foot, and the interval duration between each sampling time point and the start time point, where the step sequence indicates the step sequence between the multiple feet of the legged robot; the stepping time length corresponding to the feet is the time length from the lifting of the feet to the falling of the feet; from each sample centroid position Q (C)free) And determining fifth relation data according to the second relation data corresponding to at least one foot and the foot of each sampling time point in contact with the ground.
In another possible implementation manner, as shown in fig. 13, the apparatus further includes:
a centroid position determining module 1204, configured to determine, according to the first relationship data, a time duration t of the legged robot at any interval during the movement of the legged robot0Centroid position of time P (t)0);
A joint torque determination module 1205 for determining the center of mass P (t)0) And a termination position, determining joint torques of a plurality of joints of the legged robot;
and the joint control module 1206 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.
Fig. 14 shows a schematic structural diagram of a legged robot 1400 provided in an exemplary embodiment of the present application. The legged robot 1400 is used to perform the steps performed by the legged robot in the above centroid position determination method.
In general, the legged robot 1400 includes: a processor 1401, and a memory 1402.
In some embodiments, the legged robot 1400 may further include: a peripheral device interface 1403 and at least one peripheral device. The processor 1401, the memory 1402, and the peripheral device interface 1403 may be connected by buses or signal lines. Each peripheral device may be connected to the peripheral device interface 1403 via a bus, signal line, or circuit board. Specifically, the peripheral device includes: at least one of radio frequency circuitry 1404, camera assembly 1405, positioning assembly 1406, and power supply 1407.
The peripheral device interface 1403 can be used to connect at least one peripheral device related to I/O (Input/Output) to the processor 1401 and the memory 1402. In some embodiments, the processor 1401, memory 1402, and peripheral interface 1403 are integrated on the same chip or circuit board; in some other embodiments, any one or both of the processor 1401, the memory 1402, and the peripheral device interface 1403 may be implemented on a separate chip or circuit board, which is not limited in this embodiment.
The Radio Frequency circuit 1404 is used for receiving and transmitting RF (Radio Frequency) signals, also called electromagnetic signals. The radio frequency circuitry 1404 communicates with communication networks and other communication devices via electromagnetic signals. The rf circuit 1404 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 1404 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 1404 may communicate with other legged robots through at least one wireless communication protocol. The wireless communication protocols include, but are not limited to: metropolitan area networks, various generation mobile communication networks (2G, 3G, 4G, and 5G), Wireless local area networks, and/or WiFi (Wireless Fidelity) networks. In some embodiments, the radio frequency circuit 1404 may further include NFC (Near Field Communication) related circuits, which are not limited in this application.
The camera assembly 1405 is used to capture images or video. Optionally, the camera assembly 1405 includes a front camera and a rear camera. Generally, the front camera is disposed on the front panel of the legged robot 1400, and the rear camera is disposed on the rear surface of the legged robot 1400. 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 1405 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 at different color temperatures.
The Positioning component 1406 is used to locate the current geographic location of the legged robot 1400 for navigation or L BS (L position Based Service). the Positioning component 1406 may be a Positioning component Based on the united states GPS (Global Positioning System), the beidou System of china, the graves System of russia, or the galileo System of the european union.
A power supply 1407 is used to power the various components in the foot robot 1400. The power source 1407 may be alternating current, direct current, disposable or rechargeable. When the power source 1407 comprises a rechargeable battery, the rechargeable battery can support wired or wireless charging. The rechargeable battery may also be used to support fast charge technology.
In some embodiments, the legged robot 1400 also includes one or more sensors 1408. The one or more sensors 1408 include, but are not limited to: acceleration sensor 1409, and gyro sensor 1410.
The acceleration sensor 1409 can detect the magnitude of acceleration on three coordinate axes of the coordinate system established by the legged robot 1400. For example, the acceleration sensor 1409 may be used to detect the components of the gravitational acceleration in three coordinate axes. The processor 1401 may be based on the gravitational acceleration signal collected by the acceleration sensor 1409. The acceleration sensor 1409 may also be used for acquisition of motion data of an application or user.
The gyro sensor 1410 may detect a body direction and a rotation angle of the legged robot 1400, and the gyro sensor 1410 and the acceleration sensor 1409 may cooperate to collect a 3D motion of the user on the legged robot 1400. The processor 1401, based on the data collected by the gyro sensor 1410, may perform the following functions: motion sensing (such as changing the UI according to a tilt operation of the user), image stabilization at the time of photographing, application control, and inertial navigation.
Those skilled in the art will appreciate that the configuration shown in fig. 14 does not constitute a limitation of the legged robot 1400, and may include more or fewer components than shown, or combine certain components, or employ a different arrangement of components.
Fig. 15 is a schematic structural diagram of a server 1500 according to an embodiment of the present application, where the server 1500 may generate a relatively large difference due to different configurations or performances, and may include one or more processors (CPUs) 1501 and one or more memories 1502, where at least one instruction is stored in the memory 1502, and the at least one instruction is loaded and executed by the processor 1501 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 embodiment of the present application further provides a legged robot, where the computer device includes a processor and a memory, and the memory stores at least one instruction, and the at least one instruction is loaded and executed by the processor, so as to implement the centroid position determining method of the foregoing embodiment.
The embodiment of the present application further provides a computer-readable storage medium, where at least one instruction is stored in the computer-readable storage medium, and the at least one instruction is loaded and executed by a processor to implement the centroid position determining method of the foregoing embodiment.
The embodiment of the present application further provides a computer program, where at least one instruction is stored in the computer program, and the at least one instruction is loaded and executed by a processor to implement the centroid position determining method of the foregoing embodiment.
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 position determination, applied to a legged robot, the method comprising:
acquiring state data of the legged robot at an initial position and at a final position, wherein the state data at least comprises a centroid position, a centroid speed and a centroid acceleration;
creating first relationship data indicating a relationship between an interval duration t and a centroid position P (t), the interval duration t indicating a duration of an interval between any time point in a process of moving the foot robot from the initial position to the end position and a start time point corresponding to the start position, the centroid position P (t) indicating a centroid position of the foot robot at the interval duration t, the first relationship data including a first constant C with an undetermined valuefreeAnd taking a determined second constant h, wherein the second constant h is determined by the acquired state data;
creating second relationship data corresponding to at least one foot of the legged robot configuration, the second relationship data corresponding to the at least one foot indicating the centroid position P (t), respectively, an acting force f corresponding to the at least one footi(ii) the relationship between { P (t) }, the force fi{ P (t) } indicates the acting force applied to the foot-type robot when the ith foot at the centroid position P (t) is in contact with the ground, wherein i is a positive integer;
according to the first switchThe system data and the second relation data corresponding to the at least one foot, and third relation data are created, wherein the third relation data indicate the acting force f applied by the target value J and the at least one foot contacting with the groundiPositive correlation between squares of { p (t) };
determining the first constant C when the target value J is the minimum value according to the third relational datafreeObtaining the first constant C with determined valuefreeAnd the corresponding first relation data.
2. The method of claim 1, wherein creating the first relationship data comprises:
the first constant CfreeThe sum of the linear mapping of the first constant h and the second constant h is used as a third constant C with undetermined value;
setting the first relationship data as: the centroid position p (t) is the product of the third constant C and a duration matrix E;
wherein, E istRepresenting a duration vector.
3. The method of claim 2, wherein the creating second relationship data corresponding to at least one foot of the legged robot configuration comprises:
setting the second relation data corresponding to the at least one foot as: acting force f corresponding to the ith footi{ P (t) } is the sum of the third constant C and a linear mapping of the fourth constant λ corresponding to the ith foot.
4. The method of claim 1, wherein creating third relational data from the first relational data and the second relational data comprises:
acquiring the moving time length required by the foot type robot to move from the initial position to the termination position;
selecting a plurality of sampling time points in the moving duration;
determining fourth relation data corresponding to each sampling time point according to the interval duration between each sampling time point and the starting time point and the first relation data, wherein the fourth relation data indicate the first constant CfreeAnd the sampling centroid position Q (C)free) The sampling centroid position Q (C)free) Indicating a centroid position of the legged robot at a corresponding sampling time point;
determining fifth relation data corresponding to each sampling time point according to the second relation data and the fourth relation data corresponding to the at least one foot, wherein the fifth relation data indicate the first constant CfreeForce f corresponding to the at least one footi(ii) the relationship between { P (t) };
creating the third relation data according to the fourth relation data and the fifth relation data, wherein the third relation data also indicates the acting force f corresponding to the target numerical value J and at least one foot corresponding to each sampling time pointi{ P (t) } and sample centroid position Q (C)free) A positive correlation between them.
5. The method of claim 4, wherein creating the third relational data from the fourth relational data and the fifth relational data comprises:
setting the target value J to a weighted sum of squares of a plurality of distances and a force f corresponding to the at least one footi{ P (t) }, the plurality of distances including a distance between any two adjacent ones of the centroid position of the initial position, the plurality of sample centroid positions, and the centroid position of the end position.
6. The method according to claim 4, wherein the determining fifth relationship data corresponding to each sampling time point according to the second relationship data and the fourth relationship data corresponding to the at least one foot comprises:
determining the feet of the legged robot contacting the ground at each sampling time point according to the step sequence of the legged robot, the step time length corresponding to at least one foot and the interval time length between each sampling time point and the starting time point, wherein the step sequence indicates the step sequence among the feet of the legged robot; the stepping time length corresponding to the foot is the time length from the lifting to the falling of the foot;
according to said each sampling centroid position Q (C)free) And determining the fifth relation data according to the second relation data corresponding to the at least one foot and the foot of each sampling time point in contact with the ground.
7. The method according to any one of claims 1 to 6, wherein said obtaining of said first constant C whose value has been determinedfreeAfter the corresponding first relationship data, 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 termination position, determining joint torques of a plurality of joints of the legged robot;
and controlling the joints to rotate according to the joint torques of the joints to drive the foot type robot to move.
8. A center-of-mass position determination apparatus, applied to a legged robot, comprising:
the state data acquisition module is used for acquiring state data of the legged robot at an initial position and state data of the legged robot at a final position, wherein the state data at least comprises a centroid position, a centroid speed and a centroid acceleration;
a relation data creating module, configured to create first relation data, where the first relation data indicates a relation between an interval duration t and a centroid position p (t), the interval duration t indicates a duration of an interval between any time point in a process that the legged robot moves from the initial position to the end position and a start time point corresponding to the start position, the centroid position p (t) indicates a centroid position of the legged robot at the interval duration t, and the first relation data includes a first constant C whose value is not determinedfreeAnd taking a determined second constant h, wherein the second constant h is determined by the acquired state data;
the relation data creating module is further configured to create second relation data corresponding to at least one foot of the foot robot configuration, wherein the second relation data corresponding to the at least one foot respectively indicate the centroid position p (t) and the acting force f corresponding to the at least one footi(ii) the relationship between { P (t) }, the force fi{ P (t) } indicates the acting force applied to the foot-type robot when the ith foot at the centroid position P (t) is in contact with the ground, wherein i is a positive integer;
the relation data creating module is further configured to create third relation data according to the first relation data and second relation data corresponding to the at least one foot, wherein the third relation data indicate an acting force f applied to the at least one foot and the ground due to contact of a target value J with the groundiPositive correlation between squares of { p (t) };
a first constant value determination module, configured to determine, according to the third relationship data, the first constant C when the target value J is a minimum valuefreeObtaining the first constant C with determined valuefreeAnd the corresponding first relation data.
9. The apparatus of claim 8, wherein the relationship data creation module comprises:
a constant determination unit for determining the first constant CfreeLinearity with the second constant hThe sum of the mappings is used as a third constant C with undetermined value;
a relationship data setting unit configured to set the first relationship data to: the centroid position p (t) is the product of the third constant C and a duration matrix E;
wherein, E istRepresenting a duration vector.
10. The apparatus of claim 9, wherein the relationship data creation module comprises:
the relationship data setting unit is further configured to set second relationship data corresponding to the at least one foot as: acting force f corresponding to the ith footi{ P (t) } is the sum of the third constant C and a linear mapping of the fourth constant λ corresponding to the ith foot.
11. The apparatus of claim 8, wherein the relationship data creation module comprises:
a moving duration acquiring unit, configured to acquire a moving duration required for the legged robot to move from the initial position to the end position;
a sampling time point selecting unit for selecting a plurality of sampling time points within the moving duration;
a relation data determining unit, configured to determine fourth relation data corresponding to each sampling time point according to an interval duration between each sampling time point and the start time point and the first relation data, where the fourth relation data indicates the first constant CfreeAnd the sampling centroid position Q (C)free) The sampling centroid position Q (C)free) Indicating a centroid position of the legged robot at a corresponding sampling time point;
the relationship data determination unit is also used for determining the relationship data according to the relationship dataDetermining fifth relation data corresponding to each sampling time point according to second relation data and fourth relation data corresponding to at least one foot, wherein the fifth relation data indicates the first constant CfreeForce f corresponding to the at least one footi(ii) the relationship between { P (t) };
a relation data creating unit, configured to create the third relation data according to the fourth relation data and the fifth relation data, where the third relation data further indicates an acting force f corresponding to the target value J and at least one foot corresponding to each sampling time pointi{ P (t) } and sample centroid position Q (C)free) A positive correlation between them.
12. The apparatus according to claim 11, wherein the relational data creating unit is further configured to set the target value J to a weighted sum of squares of a plurality of distances and an acting force f corresponding to the at least one footi{ P (t) }, the plurality of distances including a distance between any two adjacent ones of the centroid position of the initial position, the plurality of sample centroid positions, and the centroid position of the end position.
13. The apparatus of claim 11, wherein the relational data determining unit is further configured to determine the foot of the legged robot contacting the ground at each of the sampling time points based on a stepping order of the legged robot, a stepping time duration corresponding to the at least one foot, and an interval time duration between the each of the sampling time points and the start time point, the stepping order indicating a stepping order between a plurality of feet of the legged robot; the stepping time length corresponding to the foot is the time length from the lifting to the falling of the foot; according to said each sampling centroid position Q (C)free) And determining the fifth relation data according to the second relation data corresponding to the at least one foot and the foot of each sampling time point in contact with the ground.
14. A legged robot, characterized in that the computer device comprises a processor and a memory, in which at least one instruction is stored, which is loaded and executed by the processor to implement the method of determining the position of the center of mass according to any of claims 1 to 7.
15. A computer-readable storage medium having stored therein at least one instruction, which is loaded and executed by a processor, to implement the centroid position determining method as claimed in any one of claims 1 to 7.
Priority Applications (6)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010291278.4A CN111506094A (en) | 2020-04-14 | 2020-04-14 | Centroid position determining method and device, foot type robot and storage medium |
CN202011503026.XA CN113534828B (en) | 2020-04-14 | 2020-12-17 | Centroid position determining method and device, foot type robot and storage medium |
JP2022539318A JP7454677B2 (en) | 2020-04-14 | 2021-04-13 | Center of mass position determination method, device, footed robot and computer program |
EP21787912.1A EP4043991A4 (en) | 2020-04-14 | 2021-04-13 | Method and device for determining barycenter position, legged robot, and storage medium |
PCT/CN2021/086937 WO2021208917A1 (en) | 2020-04-14 | 2021-04-13 | Method and device for determining barycenter position, legged robot, and storage medium |
US17/743,296 US20220274254A1 (en) | 2020-04-14 | 2022-05-12 | Barycenter position determining method and apparatus, legged robot, and storage medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010291278.4A CN111506094A (en) | 2020-04-14 | 2020-04-14 | Centroid position determining method and device, foot type robot and storage medium |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111506094A true CN111506094A (en) | 2020-08-07 |
Family
ID=71864614
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010291278.4A Pending CN111506094A (en) | 2020-04-14 | 2020-04-14 | Centroid position determining method and device, foot type robot and storage medium |
CN202011503026.XA Active CN113534828B (en) | 2020-04-14 | 2020-12-17 | Centroid position determining method and device, foot type robot and storage medium |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011503026.XA Active CN113534828B (en) | 2020-04-14 | 2020-12-17 | Centroid position determining method and device, foot type robot and storage medium |
Country Status (1)
Country | Link |
---|---|
CN (2) | CN111506094A (en) |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
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 |
CN112783175A (en) * | 2021-01-04 | 2021-05-11 | 腾讯科技(深圳)有限公司 | Centroid trajectory determination method and device, foot type robot, equipment and medium |
WO2021208917A1 (en) * | 2020-04-14 | 2021-10-21 | 腾讯科技(深圳)有限公司 | Method and device for determining barycenter position, legged robot, and storage medium |
CN114137954A (en) * | 2021-10-14 | 2022-03-04 | 深圳鹏行智能研究有限公司 | Quadruped robot centroid trajectory planning method and device and storage medium |
WO2022089195A1 (en) * | 2020-10-26 | 2022-05-05 | 腾讯科技(深圳)有限公司 | Legged robot motion control method and apparatus, device, medium and program |
WO2022089247A1 (en) * | 2020-10-26 | 2022-05-05 | 腾讯科技(深圳)有限公司 | Method and apparatus for controlling movement of legged robot, and device, medium and program |
CN114571463A (en) * | 2022-03-28 | 2022-06-03 | 达闼机器人股份有限公司 | Action detection method and device, readable storage medium and electronic equipment |
CN114723807A (en) * | 2021-01-04 | 2022-07-08 | 腾讯科技(深圳)有限公司 | Centroid trajectory determination method and device, foot type robot, equipment and medium |
WO2024051408A1 (en) * | 2022-09-07 | 2024-03-14 | 腾讯科技(深圳)有限公司 | Moving trajectory determining method and apparatus, computer device, and storage medium |
US12130632B2 (en) | 2020-09-07 | 2024-10-29 | Tencent Technology (Shenzhen) Company Limited | Legged robot motion control method, apparatus, and device, and storage medium |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101687631B1 (en) * | 2010-01-18 | 2016-12-20 | 삼성전자주식회사 | Walking control apparatus of robot and method for controlling the same |
KR101795852B1 (en) * | 2015-06-26 | 2017-11-10 | 국방과학연구소 | Apparatus and method for controlling attitude of wearable robot in slope |
CN109311159B (en) * | 2016-04-29 | 2022-03-25 | 软银机器人欧洲公司 | Mobile robot with enhanced balanced motion and behavior capabilities |
CN106547206B (en) * | 2016-06-29 | 2019-08-06 | 中南大学 | A kind of multi-foot robot dynamic stability quantitative judgement method based on strength of one's legs algorithm for estimating |
CN108237532B (en) * | 2016-12-23 | 2020-11-27 | 深圳光启合众科技有限公司 | Gait control method and device of multi-legged robot and robot |
CN107065908A (en) * | 2017-04-14 | 2017-08-18 | 中国北方车辆研究所 | A kind of method for planning the quiet gait fuselage movement locus of quadruped robot |
-
2020
- 2020-04-14 CN CN202010291278.4A patent/CN111506094A/en active Pending
- 2020-12-17 CN CN202011503026.XA patent/CN113534828B/en active Active
Cited By (23)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2021208917A1 (en) * | 2020-04-14 | 2021-10-21 | 腾讯科技(深圳)有限公司 | Method and device for determining barycenter position, legged 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 |
US12130632B2 (en) | 2020-09-07 | 2024-10-29 | Tencent Technology (Shenzhen) Company Limited | Legged robot motion control method, apparatus, and device, and storage medium |
CN112114589B (en) * | 2020-09-07 | 2024-02-09 | 腾讯科技(深圳)有限公司 | Foot robot motion control method, device, equipment and medium |
WO2022048472A1 (en) * | 2020-09-07 | 2022-03-10 | 腾讯科技(深圳)有限公司 | Legged robot movement control method, apparatus and device, and medium |
WO2022048266A1 (en) * | 2020-09-07 | 2022-03-10 | 腾讯科技(深圳)有限公司 | Method, apparatus and device for controlling movement of legged robot, and medium |
CN112051797B (en) * | 2020-09-07 | 2023-12-26 | 腾讯科技(深圳)有限公司 | Foot robot motion control method, device, equipment and medium |
EP4105756A4 (en) * | 2020-09-07 | 2023-10-18 | Tencent Technology (Shenzhen) Company Limited | Method, apparatus and device for controlling movement of legged robot, and medium |
CN114474034A (en) * | 2020-10-26 | 2022-05-13 | 腾讯科技(深圳)有限公司 | Method, device, equipment and medium for controlling motion of foot type robot |
CN114489092A (en) * | 2020-10-26 | 2022-05-13 | 腾讯科技(深圳)有限公司 | Method, device, equipment and medium for controlling motion of foot type robot |
CN114489092B (en) * | 2020-10-26 | 2023-07-18 | 腾讯科技(深圳)有限公司 | Foot robot motion control method, device, equipment and medium |
WO2022089247A1 (en) * | 2020-10-26 | 2022-05-05 | 腾讯科技(深圳)有限公司 | Method and apparatus for controlling movement of legged robot, and device, medium and program |
EP4109198A4 (en) * | 2020-10-26 | 2023-10-18 | Tencent Technology (Shenzhen) Company Limited | Method and apparatus for controlling movement of legged robot, and device, medium and program |
CN114474034B (en) * | 2020-10-26 | 2024-05-28 | 腾讯科技(深圳)有限公司 | Foot robot motion control method, device, equipment and medium |
WO2022089195A1 (en) * | 2020-10-26 | 2022-05-05 | 腾讯科技(深圳)有限公司 | Legged robot motion control method and apparatus, device, medium and program |
EP4144487A4 (en) * | 2020-10-26 | 2024-01-03 | Tencent Technology (Shenzhen) Company Limited | Legged robot motion control method and apparatus, device, medium and program |
CN112783175A (en) * | 2021-01-04 | 2021-05-11 | 腾讯科技(深圳)有限公司 | Centroid trajectory determination method and device, foot type robot, equipment and medium |
CN114723807A (en) * | 2021-01-04 | 2022-07-08 | 腾讯科技(深圳)有限公司 | Centroid trajectory determination method and device, foot type robot, equipment and medium |
CN114137954A (en) * | 2021-10-14 | 2022-03-04 | 深圳鹏行智能研究有限公司 | Quadruped robot centroid trajectory planning method and device and storage medium |
CN114571463B (en) * | 2022-03-28 | 2023-10-20 | 达闼机器人股份有限公司 | Motion detection method and device, readable storage medium and electronic equipment |
CN114571463A (en) * | 2022-03-28 | 2022-06-03 | 达闼机器人股份有限公司 | Action detection method and device, readable storage medium and electronic equipment |
WO2024051408A1 (en) * | 2022-09-07 | 2024-03-14 | 腾讯科技(深圳)有限公司 | Moving trajectory determining method and apparatus, computer device, and storage medium |
Also Published As
Publication number | Publication date |
---|---|
CN113534828A (en) | 2021-10-22 |
CN113534828B (en) | 2022-12-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111506094A (en) | Centroid position determining method and device, foot type robot and storage medium | |
CN111156998B (en) | Mobile robot positioning method based on RGB-D camera and IMU information fusion | |
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 | |
García Carrillo et al. | Combining stereo vision and inertial navigation system for a quad-rotor UAV | |
CN112051797B (en) | Foot robot motion control method, device, equipment and medium | |
Koch et al. | Multi-robot localization and mapping based on signed distance functions | |
KR102198851B1 (en) | Method for generating three dimensional model data of an object | |
Ye et al. | 6-DOF pose estimation of a robotic navigation aid by tracking visual and geometric features | |
Tomažič et al. | Fusion of visual odometry and inertial navigation system on a smartphone | |
CN111083633B (en) | Mobile terminal positioning system, establishment method thereof and positioning method of mobile terminal | |
CN114092646A (en) | Model generation method and device, computer equipment and storage medium | |
CN113784767A (en) | Thermopile array fusion tracking | |
US20220274254A1 (en) | Barycenter position determining method and apparatus, legged robot, and storage medium | |
CN114723807A (en) | Centroid trajectory determination method and device, foot type robot, equipment and medium | |
JP2022108823A (en) | Search support system and search support program | |
KR102565444B1 (en) | Method and apparatus for identifying object | |
CN115480483A (en) | Method, device, equipment and medium for identifying kinetic parameters of robot | |
Mossel et al. | SmartCopter: Enabling autonomous flight in indoor environments with a smartphone as on-board processing unit | |
EP4390594A1 (en) | Moving trajectory determining method and apparatus, computer device, and storage medium | |
Ahangar Arzati | Design and control of DermDrone; a micro-sized quadrotor for dermatology applications with RL-based optimization | |
CN114791284B (en) | Calibration method and device of electronic compass in robot and robot | |
Sanchez-Lopez et al. | Fuseon: A low-cost portable multi sensor fusion research testbed for robotics | |
CN111133274A (en) | Method for estimating the motion of an object moving in an environment and a magnetic field | |
US20240198532A1 (en) | Method for robot teleoperation control, robot, and electronic device |
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: 40027867 Country of ref document: HK |
|
WD01 | Invention patent application deemed withdrawn after publication | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20200807 |