CN112123340A - Robot motion control method, device, robot and storage medium - Google Patents

Robot motion control method, device, robot and storage medium Download PDF

Info

Publication number
CN112123340A
CN112123340A CN202011129668.8A CN202011129668A CN112123340A CN 112123340 A CN112123340 A CN 112123340A CN 202011129668 A CN202011129668 A CN 202011129668A CN 112123340 A CN112123340 A CN 112123340A
Authority
CN
China
Prior art keywords
robot
foot
motion
determining
target
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.)
Granted
Application number
CN202011129668.8A
Other languages
Chinese (zh)
Other versions
CN112123340B (en
Inventor
冷晓琨
常琳
何治成
白学林
柯真东
王松
吴雨璁
黄贤贤
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Leju Shenzhen Robotics Co Ltd
Original Assignee
Leju Shenzhen Robotics Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Leju Shenzhen Robotics Co Ltd filed Critical Leju Shenzhen Robotics Co Ltd
Priority to CN202011129668.8A priority Critical patent/CN112123340B/en
Publication of CN112123340A publication Critical patent/CN112123340A/en
Application granted granted Critical
Publication of CN112123340B publication Critical patent/CN112123340B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1656Programme controls characterised by programming, planning systems for manipulators
    • B25J9/1664Programme controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1602Programme controls characterised by the control system, structure, architecture
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1694Programme controls characterised by use of sensors other than normal servo-feedback from position, speed or acceleration sensors, perception control, multi-sensor controlled systems, sensor fusion

Landscapes

  • Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Automation & Control Theory (AREA)
  • Manipulator (AREA)

Abstract

The application provides a robot motion control method, a device, a robot and a storage medium, wherein the robot motion control comprises the following steps: the method comprises the steps of determining a target supporting state of a robot, adopting a target supporting phase controller corresponding to the target supporting state, determining a motion track of the robot according to the target supporting state, adopting the target supporting phase controller to control the robot to move according to the motion track, wherein the robot comprises a first supporting phase controller and a second supporting phase controller, the first supporting phase controller is used for controlling the motion track of the robot in a single-foot supporting state, the second supporting phase controller is used for controlling the motion track of the robot in a double-foot supporting state, and the target supporting phase controller is one of the first supporting phase controller and the second supporting phase controller. The target support phase controller corresponding to the target support state of the robot is adopted to determine the motion track of the robot and control the motion of the robot, so that the deviation between the actual track and the planned track of the robot is reduced, and the control precision of the robot is improved.

Description

Robot motion control method, device, robot and storage medium
Technical Field
The application relates to the technical field of robot control, in particular to a robot motion control method and device, a robot and a storage medium.
Background
With the rapid development of robot technology, robots are widely used in more and more industries, wherein biped robots are a bionic robot capable of realizing biped walking and related actions of the robots.
In the related art, an expected trajectory of the biped robot when the robot walks is generally planned in advance, and the same controller is used for controlling the biped robot to move according to the expected trajectory.
However, the same controller is used for controlling in different walking states, which causes a large deviation between the actual track and the expected track of the robot, so that the control accuracy of the biped robot is low.
Disclosure of Invention
An object of the present application is to provide a method and an apparatus for controlling robot motion, a robot, and a storage medium, so as to solve the problem of low robot control accuracy in the prior art.
In order to achieve the above purpose, the technical solutions adopted in the embodiments of the present application are as follows:
in a first aspect, an embodiment of the present application provides a robot motion control method, including:
determining a target support state of a robot, the target support state including a one-foot support state or a two-foot support state in which at least one of the two feet of the robot has landed;
determining the motion track of the robot according to the target supporting state by adopting a target supporting phase controller corresponding to the target supporting state;
the robot is controlled to move according to the motion track by adopting the target support phase controller, the robot comprises a first support phase controller and a second support phase controller, the first support phase controller is used for controlling the motion track of the robot in the single-foot support state, the second support phase controller is used for controlling the motion track of the robot in the double-foot support state, and the target support phase controller is one of the first support phase controller and the second support phase controller.
Optionally, the determining the target support state of the robot includes:
and determining the target supporting state of the robot according to the current actual motion parameters of the robot.
Optionally, the current actual motion parameters include: a contact force of a sole of the robot with respect to a contact object;
the determining the target supporting state of the robot according to the current actual motion parameters of the robot comprises the following steps:
acquiring contact force of the sole to a contact object in the current sampling period through each pressure sensor arranged on the sole;
and determining that the target supporting state of the robot is the biped supporting state according to the contact force of the current sampling period.
Optionally, the acquiring, by the pressure sensors disposed on the sole, the contact force of the sole to the contact object in the current sampling period includes:
and adding the pressure acquired by each pressure sensor to obtain the contact force of the current sampling period.
Optionally, the determining, according to the contact force of the current sampling period, that the target support state of the robot is the biped support state includes:
filtering the contact force of the current sampling period through a preset low-pass filter to obtain the filtered contact force of the current sampling period;
and if the filtered contact force of the current sampling period is larger than a preset contact force threshold value, determining that the target support state of the robot is the biped support state.
Optionally, the obtaining the filtered contact force of the current sampling period by filtering the contact force of the current sampling period through a preset low-pass filter includes:
and filtering the contact force of the current sampling period through a preset low-pass filter according to the filter coefficient of the low-pass filter and the contact force of the last sampling period of the current sampling period to obtain the filtered contact force of the current sampling period.
Optionally, the determining the motion trajectory of the robot according to the support state includes:
acquiring initial motion parameters of a mass center when the target supporting state of the robot is the double-foot supporting state;
determining an expected motion parameter of the center of mass when the robot leaves the biped supporting state according to a preset control algorithm of the robot;
determining a motion planning coefficient according to the initial motion parameter and the expected motion parameter;
and determining the motion track according to the motion planning coefficient.
Optionally, after determining that the target support state of the robot is the biped support state according to the contact force of the current sampling period, the method further includes:
the obtained actual foot falling parameters of the feet to be landed of the robot with the target support state being the double-foot support state are obtained, and the feet to be landed are the feet which are not landed yet when the target support state of the robot is the double-foot support state;
acquiring an expected foot falling parameter of the foot to be landed according to a preset control algorithm of the robot;
determining a landing planning coefficient of the foot to be landed according to the actual landing parameter and the expected landing parameter;
determining a landing track of the foot to be landed according to the landing planning coefficient of the foot to be landed;
and controlling the foot to be landed to land according to the landing track of the foot to be landed by adopting the target support phase controller corresponding to the double-foot support state.
Optionally, the current actual motion parameters include: a joint angle and a torso angle of the robot;
the determining the target supporting state of the robot according to the current actual motion parameters of the robot comprises the following steps:
acquiring the joint angle through a sensor arranged on a joint of the robot;
acquiring the trunk angle through a sensor arranged on the trunk of the robot;
acquiring the position of the center of mass of the robot and the speed of the center of mass according to the joint angle and the trunk angle;
and determining that the target supporting state of the robot is the single-foot supporting state according to the position of the center of mass and the speed of the center of mass.
Optionally, the determining the target supporting state of the robot as the single-foot supporting state according to the position of the center of mass and the speed of the center of mass includes:
determining the orbital energy of the foot to be emptied of the robot according to the position of the center of mass and the speed of the center of mass, wherein the orbital energy is used for indicating whether the foot to be emptied lifts off the ground;
and if the orbit energy is larger than the preset orbit energy, determining that the target supporting state of the robot is the single-foot supporting state.
Optionally, the determining the orbital energy of the robot to-be-emptied foot according to the position of the center of mass and the speed of the center of mass comprises:
determining the orbital energy from the position of the centroid, the velocity of the centroid, and the height of the centroid to the ground.
Optionally, the determining the motion trajectory of the robot according to the support state includes:
acquiring a motion trail of the centroid;
acquiring the motion trail of the foot to be emptied by adopting a spline interpolation algorithm;
and determining the motion trail of the robot according to the motion trail of the mass center, the motion trail of the foot to be emptied and the positions of the supporting feet of the robot.
Optionally, the obtaining, by using a spline interpolation algorithm, a motion trajectory of the foot to be vacated includes:
acquiring initial motion parameters of the feet to be emptied;
acquiring an expected motion parameter of the foot to be emptied according to a preset control algorithm of the robot;
determining a motion planning coefficient of the foot to be emptied according to the initial motion parameter and the expected motion parameter;
and determining the motion trail of the foot to be emptied according to the motion planning coefficient of the foot to be emptied.
Optionally, the determining the motion trail of the robot according to the motion trail of the centroid, the motion trail of the foot to be emptied and the motion trail of the supporting foot of the robot comprises:
and determining the motion trail of each joint of the robot according to the motion trail of the centroid, the motion trail of the foot to be emptied and the motion trail of the support foot of the robot, wherein the motion trail of the robot comprises the motion trail of each joint.
In a second aspect, another embodiment of the present application provides a robot motion control apparatus, including:
the robot comprises a determining module, a judging module and a control module, wherein the determining module is used for determining a target supporting state of the robot, and the target supporting state comprises a single-foot supporting state or a double-foot supporting state, and at least one of feet of the robot lands on the ground in the double-foot supporting state;
the control module is used for determining the motion trail of the robot according to the target supporting state by adopting a target supporting phase controller corresponding to the target supporting state; the robot is controlled to move according to the motion track by adopting the target support phase controller, the robot comprises a first support phase controller and a second support phase controller, the first support phase controller is used for controlling the motion track of the robot in the single-foot support state, the second support phase controller is used for controlling the motion track of the robot in the double-foot support state, and the target support phase controller is one of the first support phase controller and the second support phase controller.
Optionally, the determining module is specifically configured to:
and determining the target supporting state of the robot according to the current actual motion parameters of the robot.
Optionally, the current actual motion parameters include: a contact force of a sole of the robot with respect to a contact object;
the determining module is specifically configured to:
acquiring contact force of the sole to a contact object in the current sampling period through each pressure sensor arranged on the sole;
and determining that the target supporting state of the robot is the biped supporting state according to the contact force of the current sampling period.
Optionally, the determining module is specifically configured to:
and adding the pressure acquired by each pressure sensor to obtain the contact force of the current sampling period.
Optionally, the determining module is specifically configured to:
filtering the contact force of the current sampling period through a preset low-pass filter to obtain the filtered contact force of the current sampling period;
and if the filtered contact force of the current sampling period is larger than a preset contact force threshold value, determining that the target support state of the robot is the biped support state.
Optionally, the determining module is specifically configured to:
and filtering the contact force of the current sampling period through a preset low-pass filter according to the filter coefficient of the low-pass filter and the contact force of the last sampling period of the current sampling period to obtain the filtered contact force of the current sampling period.
Optionally, the determining module is specifically configured to:
acquiring initial motion parameters of a mass center when the target supporting state of the robot is the double-foot supporting state;
determining an expected motion parameter of the center of mass when the robot leaves the biped supporting state according to a preset control algorithm of the robot;
determining a motion planning coefficient according to the initial motion parameter and the expected motion parameter;
and determining the motion track according to the motion planning coefficient.
Optionally, the method further comprises:
the acquisition module is used for acquiring actual foot falling parameters of feet to be landed of the robot with a target support state of the feet support state, wherein the feet to be landed are feet which are not landed when the target support state of the robot is the feet support state; acquiring an expected foot falling parameter of the foot to be landed according to a preset control algorithm of the robot;
the determining module is further configured to determine a landing planning coefficient of the foot to be landed according to the actual landing parameter and the expected landing parameter;
determining a landing track of the foot to be landed according to the landing planning coefficient of the foot to be landed;
and the control module is used for adopting the target support phase controller corresponding to the double-foot support state to control the foot to be landed to land according to the landing track of the foot to be landed.
Optionally, the current actual motion parameters include: a joint angle and a torso angle of the robot;
the determining module is specifically configured to:
acquiring the joint angle through a sensor arranged on a joint of the robot;
acquiring the trunk angle through a sensor arranged on the trunk of the robot;
acquiring the position of the center of mass of the robot and the speed of the center of mass according to the joint angle and the trunk angle;
and determining that the target supporting state of the robot is the single-foot supporting state according to the position of the center of mass and the speed of the center of mass.
Optionally, the determining module is specifically configured to:
determining the orbital energy of the foot to be emptied of the robot according to the position of the center of mass and the speed of the center of mass, wherein the orbital energy is used for indicating whether the foot to be emptied lifts off the ground;
and if the orbit energy is larger than the preset orbit energy, determining that the target supporting state of the robot is the single-foot supporting state.
Optionally, the determining module is specifically configured to:
determining the orbital energy from the position of the centroid, the velocity of the centroid, and the height of the centroid to the ground.
Optionally, the determining module is specifically configured to:
acquiring a motion trail of the centroid;
acquiring the motion trail of the foot to be emptied by adopting a spline interpolation algorithm;
and determining the motion trail of the robot according to the motion trail of the mass center, the motion trail of the foot to be emptied and the positions of the supporting feet of the robot.
Optionally, the determining module is specifically configured to:
acquiring initial motion parameters of the feet to be emptied;
acquiring an expected motion parameter of the foot to be emptied according to a preset control algorithm of the robot;
determining a motion planning coefficient of the foot to be emptied according to the initial motion parameter and the expected motion parameter;
and determining the motion trail of the foot to be emptied according to the motion planning coefficient of the foot to be emptied.
Optionally, the determining module is specifically configured to:
and determining the motion trail of each joint of the robot according to the motion trail of the centroid, the motion trail of the foot to be emptied and the motion trail of the support foot of the robot, wherein the motion trail of the robot comprises the motion trail of each joint.
In a third aspect, another embodiment of the present application provides a robot, including: a processor, a memory and a bus, the memory storing a computer program executable by the processor, the processor and the memory communicating via the bus when the robot is running, the processor executing the computer program to perform the method according to any of the first aspect.
In a fourth aspect, another embodiment of the present application provides a storage medium having a computer program stored thereon, where the computer program is executed by a robot to perform the method according to any one of the above first aspects.
The robot motion control method, device, robot and storage medium provided by the embodiment of the application, wherein the robot motion control comprises the following steps: the method comprises the steps of determining a target supporting state of the robot, wherein the target supporting state comprises a single-foot supporting state or a double-foot supporting state, at least one of the two feet of the robot is grounded in the double-foot supporting state, adopting a target supporting phase controller corresponding to the target supporting state, determining a motion track of the robot according to the target supporting state, adopting the target supporting phase controller, and controlling the robot to move according to the motion track, wherein the robot comprises a first supporting phase controller and a second supporting phase controller, the first supporting phase controller is used for controlling the motion track of the robot in the single-foot supporting state, the second supporting phase controller is used for controlling the motion track of the robot in the double-foot supporting state, and the target supporting phase controller is one of the first supporting phase controller and the second supporting phase controller. The motion track of the robot is determined and the motion of the robot is controlled by adopting the target support phase controller corresponding to the target support state of the robot, so that the deviation between the actual track and the planned track during the motion of the robot is reduced, and the control precision of the robot is improved.
Drawings
In order to more clearly illustrate the technical solutions of the embodiments of the present application, the drawings that are required to be used in the embodiments will be briefly described below, it should be understood that the following drawings only illustrate some embodiments of the present application and therefore should not be considered as limiting the scope, and for those skilled in the art, other related drawings can be obtained from the drawings without inventive effort.
Fig. 1 is a schematic diagram illustrating an event switching process when a robot walks according to an embodiment of the present application;
fig. 2 is a first flowchart illustrating a robot motion control method according to an embodiment of the present disclosure;
fig. 3 shows a second flowchart of a robot motion control method provided in the embodiment of the present application;
fig. 4 shows a third flowchart of a robot motion control method provided in the embodiment of the present application;
fig. 5 shows a fourth flowchart of a robot motion control method provided in the embodiment of the present application;
fig. 6 shows a fifth flowchart of a robot motion control method provided in an embodiment of the present application;
fig. 7 is a schematic view showing a landing trajectory of a foot to be landed provided by an embodiment of the present application;
fig. 8 shows a sixth flowchart of a robot motion control method provided in an embodiment of the present application;
fig. 9 shows a seventh flowchart of a robot motion control method provided in the embodiment of the present application;
fig. 10 is a schematic structural diagram illustrating a robot motion control device according to an embodiment of the present disclosure;
fig. 11 shows a schematic structural diagram of a robot provided in an embodiment of the present application.
Detailed Description
In order to make the purpose, technical solutions and advantages of the embodiments of the present application clearer, the technical solutions in the embodiments of the present application will be clearly and completely described below with reference to the drawings in the embodiments of the present application, and it should be understood that the drawings in the present application are for illustrative and descriptive purposes only and are not used to limit the scope of protection of the present application. Additionally, it should be understood that the schematic drawings are not necessarily drawn to scale. The flowcharts used in this application illustrate operations implemented according to some embodiments of the present application. It should be understood that the operations of the flow diagrams may be performed out of order, and steps without logical context may be performed in reverse order or simultaneously. One skilled in the art, under the guidance of this application, may add one or more other operations to, or remove one or more operations from, the flowchart.
In addition, the described embodiments are only a part of the embodiments of the present application, and not all of the embodiments. The components of the embodiments of the present application, generally described and illustrated in the figures herein, can be arranged and designed in a wide variety of different configurations. Thus, the following detailed description of the embodiments of the present application, presented in the accompanying drawings, is not intended to limit the scope of the claimed application, but is merely representative of selected embodiments of the application. All other embodiments, which can be derived by a person skilled in the art from the embodiments of the present application without making any creative effort, shall fall within the protection scope of the present application.
It should be noted that in the embodiments of the present application, the term "comprising" is used to indicate the presence of the features stated hereinafter, but does not exclude the addition of further features.
In the prior art, the motion trail of the robot is planned through the same controller, the robot is controlled to move according to the motion trail, the actual trail and the planned trail of the robot have large deviation, the control precision of the robot is low, and in the development process, when the same controller is used, the problems that the design of the controller is complex, the parameter debugging of the controller is complex, and the development efficiency is low exist.
In order to solve the problems, the application provides a robot motion control method, a target support state of a robot is determined, a target support phase controller corresponding to the target support state is adopted to determine a motion track of the robot, the robot motion is controlled, and different control phase controllers are designed according to different support states, so that the deviation between the actual track and the planned track of the robot is reduced, the control precision of the robot is improved, and the controller design and parameter debugging are simpler.
Before the technical solution of the present application is introduced, first, an event switching flow when the robot walks will be described.
Fig. 1 shows a schematic diagram of an event switching process when a robot walks according to an embodiment of the present application, and as shown in fig. 1, the robot walks including a ground-contacting event B and a ground-leaving event C. The landing event B refers to a left foot landing right foot soaring (i.e., a monopod support state) to a bipedal landing (i.e., a bipedal support state) and a right foot landing left foot soaring (i.e., a monopod support state) to a bipedal landing (i.e., a bipedal support state), and the leaving event C refers to a right foot soaring (i.e., a monopod support state) to a left foot landing right foot soaring (i.e., a bipedal support state) and a bipedal landing (i.e., a bipedal support state) to a right foot landing left foot soaring (i.e., a monopod support state).
Wherein fig. 1 also shows an abnormal switching event a, which refers to a right foot soaring from a left foot landing to a right foot landing, a left foot soaring, and a right foot landing to a left foot landing, a right foot landing.
That is, the robot is switched between the bipedal support state and the monopod support state while walking.
Based on the events of the robot walking shown in fig. 1, the following method embodiment will be described.
Fig. 2 shows a schematic flowchart of a robot motion control method according to an embodiment of the present application, where an execution main body of the embodiment may be a robot, and specifically may be a processor in the robot. As shown in fig. 1, the method includes:
s101, determining a target supporting state of the robot.
In the application, a first support phase controller and a second support phase controller are arranged in the robot, and the first support phase controller and the second support phase controller may be physically independent processors or controllers, or may be implemented by combining hardware and software modules in the processors.
The target support state includes a one-foot support state in which at least one of both feet of the robot has landed, that is, a one-foot support state in which one foot of the robot is a support foot, or a two-foot support state in which both feet are both support feet, and at least one of both feet of the robot has landed, that is, at least one of both feet is a landing foot.
The supporting foot and the landing foot are different in that the landing foot is the supporting foot, but the supporting foot is not necessarily the landing foot, for example, the height of the expected landing foot and the ground is 0 mm, but when the robot lands, the robot lands on the obstacle due to the existence of the obstacle, and the height of the obstacle is 10 mm, the foot on the obstacle is the supporting foot and is not the landing foot, or the ground when the robot lands is 10 mm higher than the expected ground.
Wherein, the robot can be biped robot, biped robot can realize the biped walking and relevant action of robot.
And S102, determining the motion track of the robot according to the target supporting state by adopting a target supporting phase controller corresponding to the target supporting state.
And S103, controlling the robot to move according to the motion track by adopting a target support phase controller.
In a possible implementation manner, after the processor of the robot determines the target support state of the robot, the processor may send an execution instruction to the target support phase controller corresponding to the target support state, so that the target support phase controller determines the motion trajectory of the robot according to the target support state and controls the robot to move.
The robot comprises a first supporting phase controller and a second supporting phase controller, the first supporting phase controller is used for controlling the movement track of the robot in a single-foot supporting state, the second supporting phase controller is used for controlling the movement track of the robot in a double-foot supporting state, and the target supporting phase controller is one of the first supporting phase controller and the second supporting phase controller.
In this embodiment, a target support state of the robot is determined, a target support phase controller corresponding to the target support state is adopted, a motion trajectory of the robot is determined according to the target support state, and the target support phase controller is adopted to control the robot to move according to the motion trajectory.
That is, if the target support state is a single-foot support state, determining the motion trajectory of the robot according to the single-foot support state by using a first support phase controller corresponding to the single-foot support state, and controlling the robot to move according to the motion trajectory by using the first support phase controller; and if the target supporting state is a double-foot supporting state, determining the motion track of the robot according to the double-foot supporting state by adopting a second supporting phase controller corresponding to the double-foot supporting state, and controlling the robot to move according to the motion track by adopting the second supporting phase controller.
It should be noted that the motion trajectories determined by the first support phase controller and the second support phase controller are substantially the planned trajectory of the robot.
The robot motion control method provided by the embodiment comprises the following steps: determining a target supporting state of the robot, adopting a target supporting phase controller corresponding to the target supporting state, determining a motion track of the robot according to the target supporting state, adopting the target supporting phase controller, and controlling the motion of the robot according to the motion track. Different control phase controllers are designed according to different supporting states, the target supporting phase controller corresponding to the target supporting state is adopted to determine the motion track of the robot and control the motion of the robot, the deviation between the actual track and the planned track of the robot is reduced, and the control precision of the robot is improved.
Optionally, determining a target support state of the robot comprises:
and determining the target supporting state of the robot according to the current actual motion parameters of the robot.
The actual motion parameters are the current motion parameters of the robot and are used for representing the current motion attributes of the robot, so that the target supporting state of the robot can be determined according to the current actual motion parameters of the robot, and the accuracy of the target supporting state can be improved.
In a possible implementation manner, when the robot is currently in the current support state, the next support state of the robot, that is, the target support state, may be determined according to the current support state and the current actual motion parameters of the robot. The current actual motion parameters of the robot are taken into consideration, so that the accuracy of the target supporting state is improved.
The different target support states correspond to different actual motion parameters, so that the current actual motion parameters of the robot can include two types, one type can include contact force of the sole of the robot relative to a contact object, and the other type can include joint angles and trunk angles of the robot.
The following specifically describes the determination of the target support state of the robot according to the current actual motion parameters of the robot by combining the two actual motion parameters.
In the first case: the current actual motion parameters include: contact force of the sole of the robot against the contact object. Fig. 3 shows a second flowchart of the robot motion control method provided in the embodiment of the present application, and as shown in fig. 3, determining a target support state of the robot according to the current actual motion parameter of the robot includes:
s201, acquiring contact force of the sole to a contact object in the current sampling period through each pressure sensor arranged on the sole.
Wherein the sole may be a sole of at least one of the two feet of the robot. At least one pressure sensor is arranged on the sole of the robot for detecting the contact force of the sole against a contact object, such as the ground or an obstacle.
It should be noted that the at least one pressure sensor may be uniformly disposed on the sole of the foot, or disposed on the sole of the foot according to a preset distribution rule, the manner of disposing the at least one pressure sensor is not particularly limited in this embodiment, and the number of the at least one pressure sensor may be four or three, for example, and the number of the pressure sensors is not particularly limited in this embodiment.
In a possible implementation manner, in each sampling period, the sole-to-contact force of the sampling period can be acquired through the pressure sensors arranged on the sole, and then the sole-to-contact force of the current sampling period can be acquired through the pressure sensors in the current sampling period, wherein the current sampling period can be located in a transition period from a current support state to a target support state of the robot, for example, a single-foot support state in which one foot is a support foot and the other foot is an emptying foot, to a double-foot support state in which both feet are supported.
Optionally, the acquiring, by each pressure sensor disposed on the sole, a contact force of the sole against a contact object in a current sampling period includes:
and adding the pressure acquired by each pressure sensor to obtain the contact force of the current sampling period.
The pressure sensors are used for acquiring the pressure of the sole on a contact object, and the pressure acquired by each pressure sensor is added to obtain the contact force of the current sampling period.
S202, determining that the target supporting state of the robot is a biped supporting state according to the contact force of the current sampling period.
The contact force of the sole to the contact object in the biped supporting state is greater than a preset contact force threshold value, the specific value of the preset contact force threshold value can be obtained according to the actual situation or big data of the robot in the biped supporting state, and the specific value of the preset contact force threshold value is not particularly limited in this embodiment.
The determination that the target support state of the robot is the biped support state according to the contact force of the current sampling period may be that, if the contact force of the current sampling period is greater than a preset contact force threshold value, the determination that the target support state of the robot is the biped support state is made.
The robot motion control method provided by the embodiment comprises the following steps: the contact force of the sole of the foot on the contact object in the current sampling period is acquired through the pressure sensors arranged on the sole of the foot, and the target supporting state of the robot is determined to be a biped supporting state according to the contact force of the sole of the foot on the contact object, so that the target supporting state of the robot can be determined according to the contact force of the sole on the contact object, and the accuracy of the target supporting state is improved.
For example, the following describes the determination of the target supporting state of the robot as the biped supporting state according to the contact force of the current sampling period with reference to the embodiment of fig. 4. Fig. 4 shows a third schematic flowchart of a robot motion control method provided in an embodiment of the present application, and as shown in fig. 4, determining a target support state of the robot as a biped support state according to a contact force in a current sampling period includes:
s301, filtering the contact force of the current sampling period through a preset low-pass filter to obtain the filtered contact force of the current sampling period.
S302, if the contact force after filtering of the current sampling period is larger than a preset contact force threshold value, determining that the target supporting state of the robot is a biped supporting state.
The preset low-pass filter is used for filtering the contact force of the current sampling period to filter low-pass interference data and improve the stability of the contact force of the current sampling period, the preset low-pass filter is used for filtering the contact force of the current sampling period to obtain the filtered contact force of the current sampling period, and if the filtered contact force of the current sampling period is larger than a preset contact force threshold value, the target supporting state of the robot is a biped supporting state.
Optionally, the obtaining the filtered contact force of the current sampling period by filtering the contact force of the current sampling period through a preset low-pass filter includes:
and filtering the contact force of the current sampling period by a preset low-pass filter according to the filter coefficient of the low-pass filter and the contact force of the last sampling period of the current sampling period to obtain the filtered contact force of the current sampling period.
The contact force of the sole to the contact object in the sampling period can be acquired through the pressure sensors arranged on the sole in each sampling period, and then the contact force in the current sampling period can be filtered through the preset low-pass filter according to the contact force in the last sampling period of the current sampling period and the filter coefficient of the low-pass filter, so that the filtered contact force in the current sampling period is obtained.
For example, reference is made to the following formula:
Fzflit[i]=α×Fz[i]+(1-α)×Fzflit[i-1]
wherein, Fzflit[i]For the filtered contact force of the current sampling period, Fzflit[i-1]Alpha is the filter coefficient, the value of i is greater than or equal to 1, if i is equal to 1, the current sampling period is the first sampling period, namely Fzflit[1]=α×Fz[1]+(1-α)×Fzflit[1-1]Wherein, Fzflit[1-1]Equal to 0, and so on, according to the calculation mode, the filtered contact force of the current sampling period can be calculated.
If Fzflit[i]>FzminThe target support state of the robot is a bipedal support state, wherein FzminIs a preset contact force threshold.
Of course, the above formula is merely an example, and in practical applications, the filtering includes, but is not limited to, filtering the contact force of the current sampling period using the above formula.
The robot motion control method provided by the embodiment comprises the following steps: and filtering the contact force of the current sampling period through a preset low-pass filter to obtain the filtered contact force of the current sampling period, and if the filtered contact force of the current sampling period is greater than a preset contact force threshold value, determining that the target support state of the robot is a biped support state. The contact force of the current sampling period is filtered, and when the filtered contact force of the current sampling period is larger than a preset contact force threshold value, the target supporting state of the robot is determined to be a biped supporting state, so that the accuracy of the target supporting state is improved.
For example, the following describes the determination of the motion trajectory of the robot according to the target support state with reference to the embodiment of fig. 5. Fig. 5 is a flowchart illustrating a fourth method for controlling a motion of a robot according to an embodiment of the present application, where as shown in fig. 5, determining a motion trajectory of the robot according to a target support state includes:
s401, acquiring initial motion parameters of a mass center when the target supporting state of the robot is a biped supporting state.
S402, determining the expected motion parameters of the mass center when the robot leaves the biped supporting state according to the preset control algorithm of the robot.
Wherein, the barycenter of the robot is the centre of mass of the robot. The initial motion parameters include at least one of: initial position information, initial velocity, initial acceleration.
The preset control algorithm of the robot refers to a preset motion control algorithm of the robot, and in this embodiment, the motion trajectory of the robot is re-planned on the basis of the preset control algorithm.
In this embodiment, if the target support state of the robot is the biped support state, an initial motion parameter of a center of mass of the robot may be acquired by using a sensor provided in the robot, and an expected motion parameter of the center of mass when the robot leaves the biped support state is determined by using a preset control algorithm of the robot, where the expected motion parameter of the robot refers to a motion parameter of the robot planned when the robot leaves the biped support state according to the preset control algorithm of the robot.
The expected motion parameter of the center of mass when the robot leaves the double-foot supporting state refers to the motion parameter of the center of mass at the moment when the robot is switched from the double-foot supporting state to the single-foot supporting state.
The expected motion parameters include at least one of the following parameters: the expected position information, the expected speed, the expected acceleration, and the expected motion parameter correspond to the initial motion parameter, for example, the initial motion parameter includes the initial position information, the initial speed, and the expected motion parameter includes the expected position information, the expected speed.
And S403, determining a motion planning coefficient according to the initial motion parameter and the expected motion parameter.
And S404, determining a motion track according to the motion planning coefficient.
In a possible implementation manner, the initial motion parameter and the expected motion parameter are used as interpolation boundary conditions, and the quintic spline interpolation processing is performed to determine the motion planning coefficient.
Firstly, constructing a motion planning model under a biped supporting state according to quintic spline interpolation, as follows:
pk(t)=lk+ekt+dkt2+ckt3+bkt4+akt5
where t is the interpolation time, pk(t) is the motion trajectory at time t, ak、bk、ck、dk、ek、lkFor the interpolation coefficient, that is, the motion planning coefficient, the interpolation coefficient may be obtained by setting an interpolation boundary condition, in this embodiment, the interpolation boundary condition includes an initial motion parameter and an expected motion parameter, and the initial motion parameter includes initial position information x0Initial velocity v0Initial acceleration a0The expected motion parameter includes expected position information x1Expected velocity v1Expected acceleration a1
Secondly, setting the total running time T of the interpolation track0
Thirdly, constructing a boundary condition vector:
bound=|x0 x1 v0 v1 a0 a1|T
and fourthly, constructing a quintic spline vector:
Figure BDA0002734717380000141
fifthly, calculating an interpolation coefficient ak、bk、ck、dk、ek、lk
coef=mat-1×bound
Therefore, the product of the inverse vector of the quintic spline vector and the boundary condition vector can be calculated to obtain a six-row and one-column vector, and the interpolation coefficients a corresponding to the elements in the vector respectivelyk、bk、ck、dk、ek、lkWherein T is 0 to T0In the meantime.
And substituting the calculated interpolation coefficient into the motion planning model to obtain the motion track of the robot.
The robot motion control method provided by the embodiment comprises the following steps: the method comprises the steps of obtaining an initial motion parameter of a mass center when a target supporting state of the robot is a biped supporting state, determining an expected motion parameter of the mass center when the robot leaves the biped supporting state according to a preset control algorithm of the robot, determining a motion planning coefficient according to the initial motion parameter and the expected motion parameter, and determining a motion track according to the motion planning coefficient. The initial motion parameters of the mass center when the robot is in the biped supporting state and the expected motion parameters of the mass center when the robot leaves the biped supporting state are taken as consideration factors, so that the accuracy of the motion trail is improved.
For example, after determining that the target support state of the robot is a biped support state according to the contact force of the current sampling cycle, one of the biped of the robot is a grounding foot, and the other biped of the robot may be a support foot, that is, the support foot is on an obstacle, and the support foot may land on the obstacle according to a preset control algorithm of the robot.
To solve this problem, the following describes the technical solution adopted in the present application with reference to the embodiment of fig. 6. Fig. 6 is a schematic flowchart illustrating a fifth flow chart of a robot motion control method provided in an embodiment of the present application, and as shown in fig. 6, after determining that a target support state of the robot is a biped support state according to a contact force of a current sampling period, and before controlling the robot to move according to a motion trajectory by using a target support phase controller, the method further includes:
s501, acquiring actual foot falling parameters of feet to be landed of the robot with the target support state being the double-foot support state.
S502, obtaining expected foot falling parameters of the foot to be landed according to a preset control algorithm of the robot.
If the target supporting state of the robot is a double-foot supporting state, one of the two feet of the robot is landed and the other foot is a foot to be landed in the double-foot supporting state, wherein the foot to be landed is the foot which is not landed yet when the target supporting state of the robot is the double-foot supporting state, namely the supporting foot on the obstacle.
The method comprises the steps of obtaining actual foot falling parameters of feet to be landed of the robot in a double-foot supporting state, namely foot falling parameters on an obstacle, and obtaining expected foot falling parameters of the feet to be landed according to a preset control algorithm of the robot as the feet to be landed land from the obstacle.
Wherein the expected foot-fall parameter comprises at least one of: expected foot drop height, expected foot drop velocity, expected foot drop acceleration.
The actual foot-drop parameter comprises at least one of the following parameters: actual foot-falling height, actual foot-falling speed, actual foot-falling acceleration.
It should be noted that the actual foot-falling speed and the actual foot-falling acceleration may be acquired by a sensor provided on the robot, and the actual foot-falling height may be acquired by a kinematic forward solution.
Wherein the expected foot-landing parameter corresponds to the actual foot-landing parameter. For example, the expected foot-falling parameters include an expected foot-falling height and an expected foot-falling speed, and the actual foot-falling parameters include an actual foot-falling height and an actual foot-falling speed.
And S503, determining a grounding planning coefficient of the foot to be grounded according to the actual foot falling parameter and the expected foot falling parameter.
S504, according to the grounding planning coefficient of the foot to be grounded, the grounding track of the foot to be grounded is determined.
And S505, adopting a target support phase controller corresponding to the support state of the double feet to control the flight feet to land according to the landing tracks of the feet to land.
In a possible implementation mode, the actual foot-landing parameter and the expected foot-landing parameter are taken as interpolation boundary conditions, five times of spline interpolation processing is carried out, and a landing planning coefficient of a foot to be landed is determined.
Firstly, constructing a motion planning model of a foot to be landed according to quintic spline interpolation, as follows:
p1k(t)=l1k+e1kt+d1kt2+c1kt3+b1kt4+a1kt5
where t is the interpolation time, p1k(t) a landing trajectory of the foot to be landed at time t, a1k、b1k、c1k、d1k、e1k、l1kFor interpolation coefficients, i.e. motion planning coefficients, the interpolation coefficients can be interpolated by settingThe value boundary condition is obtained, in this embodiment, the interpolation boundary condition includes an actual foot-landing parameter and an expected foot-landing parameter, and the actual foot-landing parameter includes an actual foot-landing height h0Actual foot falling speed v2Actual foot-falling acceleration a2The expected foot-falling parameter comprises an expected foot-falling height h1Expected foot falling speed v3Expected foot-falling acceleration a3
Secondly, setting the total running time T of the interpolation track of the foot to be landed1
Thirdly, constructing a boundary condition vector:
bound1=|h0 h1 v2 v3 a2 a3|T
and fourthly, constructing a quintic spline vector:
Figure BDA0002734717380000161
fifthly, calculating an interpolation coefficient a1k、b1k、c1k、d1k、e1k、l1k
coef1=mat-1×bound1
Therefore, the product of the inverse vector of the quintic spline vector and the boundary condition vector can be calculated to obtain a six-row and one-column vector, and the interpolation coefficients a corresponding to the elements in the vector respectively1k、b1k、c1k、d1k、e1k、l1kWherein the value of T in the step is from 0 to T1In the meantime.
And substituting the calculated interpolation coefficient into the motion planning model of the foot to be landed to obtain the landing track of the foot to be landed.
In addition, as the target supporting state of the robot is a double-foot supporting state, the target supporting phase controller corresponding to the double-foot supporting state is adopted to control the foot to be landed to land according to the landing track of the foot to be landed.
Taking fig. 7 as an example, fig. 7 shows a schematic diagram of a landing trajectory of a foot to be landed provided by an embodiment of the present application, as shown in fig. 7, an abscissa is time, an ordinate is a height between the foot to be landed and the ground, an expected support trajectory (marked by a solid line) is a motion trajectory of the foot to be landed, determined according to a preset control algorithm of the robot, switched from the landing foot to the support foot, an expected landing trajectory (marked by a dotted line) is a motion trajectory of the foot to be landed, determined according to the preset control algorithm of the robot, switched from the support foot to the landing foot, a moment of the support foot is a moment when the foot to be landed falls on an obstacle, according to the expected trajectory, the expected landing trajectory of the foot to be landed is similar to a parabola during the switching of the support foot to the landing foot, and has a small cushion, and therefore causes a large landing impact, while according to the scheme of the present embodiment, after the landing trajectory (marked, the foot to be landed can land more slowly, and therefore the landing impact can be greatly reduced.
The robot motion control method provided by the embodiment comprises the following steps: the method comprises the steps of obtaining actual foot falling parameters of feet to be landed of a robot with a double-foot supporting state as an obtained target supporting state, obtaining expected foot falling parameters of the feet to be landed according to a preset control algorithm of the robot, determining landing planning coefficients of the feet to be landed according to the actual foot falling parameters and the expected foot falling parameters, determining landing tracks of the feet to be landed according to the landing planning coefficients of the feet to be landed, and controlling the feet to be emptied to land by adopting a target supporting phase controller corresponding to the double-foot supporting state according to the landing tracks of the feet to be landed. By re-planning the landing trajectory of the foot to be landed, the landing impact is reduced.
In the second case: the current actual motion parameters include: joint angle and torso angle of the robot. Fig. 8 shows a sixth flowchart of a robot motion control method provided in an embodiment of the present application, and as shown in fig. 8, determining a target support state of a robot according to a current actual motion parameter of the robot includes:
s601, acquiring the joint angle through a sensor arranged on the joint of the robot.
And S602, acquiring the body angle through a sensor arranged on the body of the robot.
And S603, acquiring the position of the center of mass of the robot and the speed of the center of mass according to the joint angle and the trunk angle.
The sensor provided at the joint of the robot may be, for example, a joint encoder, and each joint angle of each joint of the robot may be acquired by the joint encoder, and may include, for example, a joint angle of an elbow joint, a joint angle of an ankle joint, and the like.
The sensor arranged on the trunk of the robot can be a gyroscope, the angle of the trunk of the robot can be acquired through the gyroscope, and the angle of the trunk is an included angle between the robot body and the ground.
And then taking the joint angle and the trunk angle as input, and adopting a kinematics positive solution to obtain the position of the centroid and the speed of the centroid of the robot, wherein the position of the centroid can be in the form of position coordinates.
And S604, determining that the target supporting state of the robot is a single-foot supporting state according to the position of the mass center and the speed of the mass center.
In a possible implementation manner, if the position of the center of mass of the robot meets a preset position condition and the speed of the center of mass meets a preset speed condition, the target supporting state of the robot is determined to be a single-foot supporting state.
Optionally, determining that the target supporting state of the robot is a single-foot supporting state according to the position of the center of mass and the speed of the center of mass, including:
and determining the orbital energy of the foot to be emptied of the robot according to the position of the center of mass and the speed of the center of mass, wherein the orbital energy is used for indicating whether the foot to be emptied lifts off the ground or not.
And if the track energy is greater than the preset track energy, determining that the target supporting state of the robot is a single-foot supporting state.
The track energy of the foot to be vacated of the robot can be calculated according to the position of the center of mass and the speed of the center of mass, the track energy is used for indicating whether the foot to be vacated is lifted off the ground or not, if the track energy is larger than the preset track energy, the foot to be vacated is lifted off the ground, and the target supporting state of the robot is determined to be a single-foot supporting state.
Optionally, determining the orbital energy of the robot to-be-emptied foot according to the position of the center of mass and the speed of the center of mass, comprising:
and determining the orbit energy according to the position of the mass center, the speed of the mass center and the height from the mass center to the ground.
For example, the orbit energy is calculated as follows:
Figure BDA0002734717380000181
wherein E is orbital energy, v is the centroid velocity, x is the centroid position, g is the acceleration of gravity, z is0And p is the height between the center of mass and the ground, and the expected foot falling position is the foot falling position of the foot to be emptied, which is planned according to a preset control algorithm of the robot.
If E>ErefIt is determined that the ground-off event has occurred, that is, the target support state of the robot is the monopod support state.
It should be noted that, referring to the event switching during robot walking shown in fig. 1, it is known that the robot walking process is substantially switched between the single-foot support state and the double-foot support state, the current support state of the robot is the double-foot support state, and if the track energy of the robot is greater than the preset track energy, it is determined that the robot is switched from the double-foot support state to the single-foot support state.
The robot motion control method provided by the embodiment comprises the following steps: the joint angle is acquired through a sensor arranged on the joint of the robot, the trunk angle is acquired through a sensor arranged on the trunk of the robot, the position of the center of mass of the robot and the speed of the center of mass are acquired according to the joint angle and the trunk angle, and the target supporting state of the robot is determined to be a single-foot supporting state according to the position of the center of mass and the speed of the center of mass. Therefore, the target supporting state of the robot can be determined according to the position of the center of mass of the robot and the speed of the center of mass of the robot, and the accuracy of the target supporting state is improved.
Exemplarily, on the basis of fig. 8, the following describes the determination of the motion trajectory of the robot according to the supporting state in detail with reference to the embodiment of fig. 9. Fig. 9 is a seventh flowchart illustrating a robot motion control method provided in an embodiment of the present application, and as shown in fig. 9, determining a motion trajectory of the robot according to a support state includes:
and S701, acquiring a motion trail of the centroid.
S702, acquiring the motion track of the foot to be emptied by adopting a spline interpolation algorithm.
And S703, determining the motion trail of the robot according to the motion trail of the mass center, the motion trail of the feet to be emptied and the positions of the supporting feet of the robot.
The motion trail of the center of mass of the robot can be obtained by performing integral operation on the acceleration of the center of mass, wherein the acceleration of the center of mass can be obtained by adopting a linear inverted pendulum algorithm, as shown below:
Figure BDA0002734717380000191
wherein q is the acceleration of the center of mass, x is the position of the center of mass, g is the acceleration of gravity, z0The height from the center of mass to the ground, p, the expected foot drop position.
And then, acquiring the motion trail of the foot to be emptied by adopting a spline interpolation algorithm, and determining the motion trail of the robot according to the motion trail of the centroid, the motion trail of the foot to be emptied and the position of the support foot of the robot.
When the robot is switched from a double-foot supporting state to a single-foot supporting state, the positions of the supporting feet are kept unchanged.
Optionally, determining the motion trail of the robot according to the motion trail of the centroid, the motion trail of the foot to be emptied and the position of the support foot of the robot, includes:
and determining the motion trail of each joint of the robot according to the motion trail of the mass center, the motion trail of the foot to be emptied and the positions of the supporting feet of the robot, wherein the motion trail of the robot comprises the motion trail of each joint.
The motion trail of each joint of the robot can be determined by taking the motion trail of the mass center, the motion trail of the foot to be emptied and the position of the supporting foot of the robot as input and adopting inverse kinematics, wherein the motion trail of the robot comprises the motion trail of each joint, namely, the motion of the robot is actually the motion of each joint of the robot.
Optionally, obtaining a motion trajectory of the foot to be vacated by using a spline interpolation algorithm, including:
and acquiring initial motion parameters of the feet to be emptied.
And acquiring the expected motion parameters of the feet to be emptied according to a preset control algorithm of the robot.
And determining the motion planning coefficient of the foot to be emptied according to the initial motion parameters and the expected motion parameters.
And determining the motion track of the foot to be emptied according to the motion planning coefficient of the foot to be emptied.
Wherein the initial motion parameters include at least one of: initial position information, initial velocity, initial acceleration. The expected motion parameters include at least one of the following parameters: the expected position information, the expected speed, the expected acceleration, may also be written as: end position information, end velocity, end acceleration.
The expected movement parameter corresponds to the initial movement parameter, for example, the initial movement parameter includes initial position information and initial speed, and the expected movement parameter includes expected position information and expected speed.
The method comprises the steps that initial motion parameters of the feet to be emptied can be acquired through a sensor arranged on the robot, and expected motion parameters of the feet to be emptied can be acquired according to a preset control algorithm of the robot, wherein the initial motion parameters refer to the motion parameters of the feet to be emptied at the moment when the support state of the two feet of the robot is switched to the support state of the single foot, and the expected motion parameters refer to the motion parameters of the feet to be emptied at the moment when the support state of the single foot of the robot is switched.
In a possible implementation manner, the initial motion parameters and the expected motion parameters are used as interpolation boundary conditions, five times of spline interpolation processing is carried out, and the motion planning parameters of the feet to be vacated are determined.
Firstly, constructing a motion planning model under a biped supporting state according to quintic spline interpolation, as follows:
p2k(t)=l2k+e2kt+d2kt2+c2kt3+b2kt4+a2kt5
where t is the interpolation time, p2k(t) a landing trajectory of the foot to be landed at time t, a2k、b2k、c2k、d2k、e2k、l2kFor the interpolation coefficient, that is, the motion planning coefficient, the interpolation coefficient may be obtained by setting an interpolation boundary condition, in this embodiment, the interpolation boundary condition includes an initial motion parameter and an expected motion parameter, and the initial motion parameter includes initial position information x2Initial velocity v4Initial acceleration a4The expected motion parameter includes expected position information x3Expected velocity v5Expected acceleration a5
Secondly, setting the total running time T of the interpolation track under the supporting state of the feet2
Thirdly, constructing a boundary condition vector:
bound2=|x2 x3 v4 v5 a4 a5|T
and fourthly, constructing a quintic spline vector:
Figure BDA0002734717380000201
fifthly, calculating an interpolation coefficient a2k、b2k、c2k、d2k、e2k、l2k:
coef2=mat-1×bound2
Therefore, the product of the inverse vector of the quintic spline vector and the boundary condition vector can be calculated to obtain a six-row one-column productA vector, interpolation coefficients a corresponding to the elements in the vector respectively2k、b2k、c2k、d2k、e2k、l2kWherein the value of T in the step is from 0 to T2In the meantime.
And substituting the interpolation coefficient into the motion planning model in the double-foot supporting state to obtain the motion track of the feet to be emptied.
The robot motion control method provided by the embodiment comprises the following steps: the method comprises the steps of obtaining a motion track of a mass center, obtaining a motion track of a foot to be emptied by adopting a spline interpolation algorithm, and determining the motion track of the robot according to the motion track of the mass center, the motion track of the foot to be emptied and the position of a supporting foot of the robot. Therefore, the movement track of the center of mass, the movement track of the feet to be emptied and the positions of the supporting feet of the robot are taken as consideration factors, the movement track of the robot under the support of a single foot is determined, and the accuracy of the movement track is improved.
Fig. 10 is a schematic structural diagram of a robot motion control device according to an embodiment of the present application, and as shown in fig. 10, a robot motion control device 80 includes:
a determining module 801, configured to determine a target support state of a robot, where the target support state includes a single-foot support state or a double-foot support state where at least one of the two feet of the robot has landed;
the control module 802 is configured to determine a motion trajectory of the robot according to the target support state by using a target support phase controller corresponding to the target support state; the robot is controlled to move according to the motion track by adopting the target support phase controller, the robot comprises a first support phase controller and a second support phase controller, the first support phase controller is used for controlling the motion track of the robot in the single-foot support state, the second support phase controller is used for controlling the motion track of the robot in the double-foot support state, and the target support phase controller is one of the first support phase controller and the second support phase controller.
Optionally, the determining module 801 is specifically configured to:
and determining the target supporting state of the robot according to the current actual motion parameters of the robot.
Optionally, the current actual motion parameters include: a contact force of a sole of the robot with respect to a contact object;
the determining module 801 is specifically configured to:
acquiring contact force of the sole to a contact object in the current sampling period through each pressure sensor arranged on the sole;
and determining that the target supporting state of the robot is the biped supporting state according to the contact force of the current sampling period.
Optionally, the determining module 801 is specifically configured to:
and adding the pressure acquired by each pressure sensor to obtain the contact force of the current sampling period.
Optionally, the determining module 801 is specifically configured to:
filtering the contact force of the current sampling period through a preset low-pass filter to obtain the filtered contact force of the current sampling period;
and if the filtered contact force of the current sampling period is larger than a preset contact force threshold value, determining that the target support state of the robot is the biped support state.
Optionally, the determining module 801 is specifically configured to:
and filtering the contact force of the current sampling period through a preset low-pass filter according to the filter coefficient of the low-pass filter and the contact force of the last sampling period of the current sampling period to obtain the filtered contact force of the current sampling period.
Optionally, the determining module 801 is specifically configured to:
acquiring initial motion parameters of a mass center when the target supporting state of the robot is the double-foot supporting state;
determining an expected motion parameter of the center of mass when the robot leaves the biped supporting state according to a preset control algorithm of the robot;
determining a motion planning coefficient according to the initial motion parameter and the expected motion parameter;
and determining the motion track according to the motion planning coefficient.
Optionally, the method further comprises:
an obtaining module 803, configured to obtain an actual foot-falling parameter of a foot to be landed of the robot whose target support state is the biped support state, where the foot to be landed is a foot that has not landed yet when the target support state of the robot is the biped support state; acquiring an expected foot falling parameter of the foot to be landed according to a preset control algorithm of the robot;
the determining module 801 is further configured to determine a landing planning coefficient of the foot to be landed according to the actual landing parameter and the expected landing parameter;
determining a landing track of the foot to be landed according to the landing planning coefficient of the foot to be landed;
the control module 802 is configured to control the foot to be landed to land according to the landing trajectory of the foot to be landed by using the target support phase controller corresponding to the dual-foot support state.
Optionally, the current actual motion parameters include: a joint angle and a torso angle of the robot;
the determining module 801 is specifically configured to:
acquiring the joint angle through a sensor arranged on a joint of the robot;
acquiring the trunk angle through a sensor arranged on the trunk of the robot;
acquiring the position of the center of mass of the robot and the speed of the center of mass according to the joint angle and the trunk angle;
and determining that the target supporting state of the robot is the single-foot supporting state according to the position of the center of mass and the speed of the center of mass.
Optionally, the determining module 801 is specifically configured to:
determining the orbital energy of the foot to be emptied of the robot according to the position of the center of mass and the speed of the center of mass, wherein the orbital energy is used for indicating whether the foot to be emptied lifts off the ground;
and if the orbit energy is larger than the preset orbit energy, determining that the target supporting state of the robot is the single-foot supporting state.
Optionally, the determining module 801 is specifically configured to:
determining the orbital energy from the position of the centroid, the velocity of the centroid, and the height of the centroid to the ground.
Optionally, the determining module 801 is specifically configured to:
acquiring a motion trail of the centroid;
acquiring the motion trail of the foot to be emptied by adopting a spline interpolation algorithm;
and determining the motion trail of the robot according to the motion trail of the mass center, the motion trail of the foot to be emptied and the positions of the supporting feet of the robot.
Optionally, the determining module 801 is specifically configured to:
acquiring initial motion parameters of the feet to be emptied;
acquiring an expected motion parameter of the foot to be emptied according to a preset control algorithm of the robot;
determining a motion planning coefficient of the foot to be emptied according to the initial motion parameter and the expected motion parameter;
and determining the motion trail of the foot to be emptied according to the motion planning coefficient of the foot to be emptied.
Optionally, the determining module 801 is specifically configured to:
and determining the motion trail of each joint of the robot according to the motion trail of the centroid, the motion trail of the foot to be emptied and the motion trail of the support foot of the robot, wherein the motion trail of the robot comprises the motion trail of each joint.
The description of the processing flow of each module in the device and the interaction flow between the modules may refer to the related description in the above method embodiments, and will not be described in detail here.
Fig. 11 shows a schematic structural diagram of a robot provided in an embodiment of the present application, and as shown in fig. 11, a robot 90 includes: a processor 901, a memory 902 and a bus 903, wherein the memory 902 stores a computer program executable by the processor 901, when the robot 90 runs, the processor 901 communicates with the memory 902 through the bus 903, and the processor 901 executes the computer program to execute the above method embodiments.
The embodiment of the application also provides a computer readable storage medium, wherein a computer program is stored on the computer readable storage medium, and when the computer program is executed by a robot, the computer program executes the embodiment of the method.
It can be clearly understood by those skilled in the art that, for convenience and brevity of description, the specific working processes of the system and the apparatus described above may refer to corresponding processes in the method embodiments, and are not described in detail in this application. In the several embodiments provided in the present application, it should be understood that the disclosed system, apparatus and method may be implemented in other ways. The above-described apparatus embodiments are merely illustrative, and for example, the division of the modules is merely a logical division, and there may be other divisions in actual implementation, and for example, a plurality of modules or components may be combined or integrated into another system, or some features may be omitted, or not executed. In addition, the shown or discussed mutual coupling or direct coupling or communication connection may be an indirect coupling or communication connection of devices or modules through some communication interfaces, and may be in an electrical, mechanical or other form.
In addition, functional units in the embodiments of the present application may be integrated into one processing unit, or each unit may exist alone physically, or two or more units are integrated into one unit. The functions, if implemented in the form of software functional units and sold or used as a stand-alone product, may be stored in a computer readable storage medium. Based on such understanding, the technical solution of the present invention may be embodied in the form of a software product, which is stored in a storage medium and includes instructions for causing a computer device (which may be a personal computer, a server, or a network device) to execute all or part of the steps of the method according to the embodiments of the present invention. And the aforementioned storage medium includes: a U-disk, a removable hard disk, a Read-Only Memory (ROM), a Random Access Memory (RAM), a magnetic disk or an optical disk, and other various media capable of storing program codes.
The above description is only for the specific embodiments of the present application, but the scope of the present application is not limited thereto, and any person skilled in the art can easily conceive of the changes or substitutions within the technical scope of the present application, and shall be covered by the scope of the present application.

Claims (17)

1. A robot motion control method, comprising:
determining a target support state of a robot, the target support state including a one-foot support state or a two-foot support state in which at least one of the two feet of the robot has landed;
determining the motion track of the robot according to the target supporting state by adopting a target supporting phase controller corresponding to the target supporting state;
the robot is controlled to move according to the motion track by adopting the target support phase controller, the robot comprises a first support phase controller and a second support phase controller, the first support phase controller is used for controlling the motion track of the robot in the single-foot support state, the second support phase controller is used for controlling the motion track of the robot in the double-foot support state, and the target support phase controller is one of the first support phase controller and the second support phase controller.
2. The method of claim 1, wherein the determining a target support state of the robot comprises:
and determining the target supporting state of the robot according to the current actual motion parameters of the robot.
3. The method of claim 2, wherein the current actual motion parameters comprise: a contact force of a sole of the robot with respect to a contact object;
the determining the target supporting state of the robot according to the current actual motion parameters of the robot comprises the following steps:
acquiring contact force of the sole to a contact object in the current sampling period through each pressure sensor arranged on the sole;
and determining that the target supporting state of the robot is the biped supporting state according to the contact force of the current sampling period.
4. The method according to claim 3, wherein the acquiring of the contact force of the sole against the contact object for the current sampling period by the pressure sensors disposed on the sole comprises:
and adding the pressure acquired by each pressure sensor to obtain the contact force of the current sampling period.
5. The method of claim 3, wherein the determining the target support state of the robot as the biped support state according to the contact force of the current sampling period comprises:
filtering the contact force of the current sampling period through a preset low-pass filter to obtain the filtered contact force of the current sampling period;
and if the filtered contact force of the current sampling period is larger than a preset contact force threshold value, determining that the target support state of the robot is the biped support state.
6. The method according to claim 5, wherein the filtering the contact force of the current sampling period through a preset low-pass filter to obtain a filtered contact force of the current sampling period comprises:
and filtering the contact force of the current sampling period through a preset low-pass filter according to the filter coefficient of the low-pass filter and the contact force of the last sampling period of the current sampling period to obtain the filtered contact force of the current sampling period.
7. The method of claim 3, wherein said determining a motion trajectory of the robot from the target support state comprises:
acquiring initial motion parameters of a mass center when the target supporting state of the robot is the double-foot supporting state;
determining an expected motion parameter of the center of mass when the robot leaves the biped supporting state according to a preset control algorithm of the robot;
determining a motion planning coefficient according to the initial motion parameter and the expected motion parameter;
and determining the motion track according to the motion planning coefficient.
8. The method according to any one of claims 3-7, wherein after determining the target support state of the robot as the biped support state according to the contact force of the current sampling period, further comprising:
the obtained actual foot falling parameters of the feet to be landed of the robot with the target support state being the double-foot support state are obtained, and the feet to be landed are the feet which are not landed yet when the target support state of the robot is the double-foot support state;
acquiring an expected foot falling parameter of the foot to be landed according to a preset control algorithm of the robot;
determining a landing planning coefficient of the foot to be landed according to the actual landing parameter and the expected landing parameter;
determining a landing track of the foot to be landed according to the landing planning coefficient of the foot to be landed;
and controlling the foot to be landed to land according to the landing track of the foot to be landed by adopting the target support phase controller corresponding to the double-foot support state.
9. The method of claim 2, wherein the current actual motion parameters comprise: a joint angle and a torso angle of the robot;
the determining the target supporting state of the robot according to the current actual motion parameters of the robot comprises the following steps:
acquiring the joint angle through a sensor arranged on a joint of the robot;
acquiring the trunk angle through a sensor arranged on the trunk of the robot;
acquiring the position of the center of mass of the robot and the speed of the center of mass according to the joint angle and the trunk angle;
and determining that the target supporting state of the robot is the single-foot supporting state according to the position of the center of mass and the speed of the center of mass.
10. The method of claim 9, wherein determining the target support state of the robot as the monopod support state based on the position of the center of mass and the velocity of the center of mass comprises:
determining the orbital energy of the foot to be emptied of the robot according to the position of the center of mass and the speed of the center of mass, wherein the orbital energy is used for indicating whether the foot to be emptied lifts off the ground;
and if the orbit energy is larger than the preset orbit energy, determining that the target supporting state of the robot is the single-foot supporting state.
11. The method of claim 10, wherein determining the orbital energy of the robot to empty the foot based on the position of the center of mass and the velocity of the center of mass comprises:
determining the orbital energy from the position of the centroid, the velocity of the centroid, and the height of the centroid to the ground.
12. The method of claim 9, wherein determining the trajectory of the robot based on the target support state comprises:
acquiring a motion trail of the centroid;
acquiring the motion trail of the foot to be emptied by adopting a spline interpolation algorithm;
and determining the motion trail of the robot according to the motion trail of the mass center, the motion trail of the foot to be emptied and the positions of the supporting feet of the robot.
13. The method according to claim 12, wherein the obtaining the motion trail of the foot to be emptied by adopting a spline interpolation algorithm comprises:
acquiring initial motion parameters of the feet to be emptied;
acquiring an expected motion parameter of the foot to be emptied according to a preset control algorithm of the robot;
determining a motion planning coefficient of the foot to be emptied according to the initial motion parameter and the expected motion parameter;
and determining the motion trail of the foot to be emptied according to the motion planning coefficient of the foot to be emptied.
14. A method according to claim 12 or 13, wherein determining the trajectory of the robot from the trajectory of the centroid, the trajectory of the foot to be emptied and the trajectory of the supporting foot of the robot comprises:
and determining the motion trail of each joint of the robot according to the motion trail of the centroid, the motion trail of the foot to be emptied and the motion trail of the support foot of the robot, wherein the motion trail of the robot comprises the motion trail of each joint.
15. A robot motion control apparatus, comprising:
the robot comprises a determining module, a judging module and a control module, wherein the determining module is used for determining a target supporting state of the robot, and the target supporting state comprises a single-foot supporting state or a double-foot supporting state, and at least one of feet of the robot lands on the ground in the double-foot supporting state;
the control module is used for determining the motion trail of the robot according to the target supporting state by adopting a target supporting phase controller corresponding to the target supporting state; the robot is controlled to move according to the motion track by adopting the target support phase controller, the robot comprises a first support phase controller and a second support phase controller, the first support phase controller is used for controlling the motion track of the robot in the single-foot support state, the second support phase controller is used for controlling the motion track of the robot in the double-foot support state, and the target support phase controller is one of the first support phase controller and the second support phase controller.
16. A robot, comprising: a processor, a memory and a bus, the memory storing a computer program executable by the processor, the processor and the memory communicating via the bus when the robot is running, the processor executing the computer program to perform the method of any of claims 1-14.
17. A storage medium, comprising: the storage medium has stored thereon a computer program which, when executed by a robot, performs the method of any of claims 1-14.
CN202011129668.8A 2020-10-21 2020-10-21 Robot motion control method, device, robot and storage medium Active CN112123340B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011129668.8A CN112123340B (en) 2020-10-21 2020-10-21 Robot motion control method, device, robot and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011129668.8A CN112123340B (en) 2020-10-21 2020-10-21 Robot motion control method, device, robot and storage medium

Publications (2)

Publication Number Publication Date
CN112123340A true CN112123340A (en) 2020-12-25
CN112123340B CN112123340B (en) 2021-08-24

Family

ID=73853015

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011129668.8A Active CN112123340B (en) 2020-10-21 2020-10-21 Robot motion control method, device, robot and storage medium

Country Status (1)

Country Link
CN (1) CN112123340B (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112757301A (en) * 2020-12-30 2021-05-07 乐聚(深圳)机器人技术有限公司 Robot anti-disturbance control method and device, electronic equipment and storage medium
CN113253727A (en) * 2021-05-13 2021-08-13 乐聚(深圳)机器人技术有限公司 Method, device and equipment for determining track of robot and storage medium
CN113377114A (en) * 2021-07-05 2021-09-10 乐聚(深圳)机器人技术有限公司 Foot-type robot foot-falling control method and device and storage medium
CN114683281A (en) * 2022-03-18 2022-07-01 乐聚(深圳)机器人技术有限公司 Motion control method and device for foot type robot, electronic equipment and storage medium

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105511465A (en) * 2015-12-02 2016-04-20 歌尔声学股份有限公司 Gait control method and device for dual-foot robot
CN107561970A (en) * 2017-07-13 2018-01-09 安徽工程大学 The control system and method that a kind of biped supporting zone differentiates
CN108372506A (en) * 2018-05-16 2018-08-07 中南大学 A kind of anthropomorphic robot based on CPG models is adaptively walked framework implementation method
CN110315543A (en) * 2019-07-29 2019-10-11 北京理工大学 A kind of biped robot's gait generates and optimization method
CN111123951A (en) * 2019-12-31 2020-05-08 深圳市优必选科技股份有限公司 Biped robot and track following method and device thereof
CN111176342A (en) * 2020-02-11 2020-05-19 之江实验室 Walking speed adjusting method of humanoid gait of biped robot
CN111240339A (en) * 2020-02-11 2020-06-05 之江实验室 Humanoid gait planning method of biped robot
CN111377004A (en) * 2018-12-28 2020-07-07 深圳市优必选科技有限公司 Biped robot gait control method and biped robot
US20200290209A1 (en) * 2019-03-12 2020-09-17 Honda Motor Co.,Ltd. Control device for robot

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105511465A (en) * 2015-12-02 2016-04-20 歌尔声学股份有限公司 Gait control method and device for dual-foot robot
CN107561970A (en) * 2017-07-13 2018-01-09 安徽工程大学 The control system and method that a kind of biped supporting zone differentiates
CN108372506A (en) * 2018-05-16 2018-08-07 中南大学 A kind of anthropomorphic robot based on CPG models is adaptively walked framework implementation method
CN111377004A (en) * 2018-12-28 2020-07-07 深圳市优必选科技有限公司 Biped robot gait control method and biped robot
US20200290209A1 (en) * 2019-03-12 2020-09-17 Honda Motor Co.,Ltd. Control device for robot
CN110315543A (en) * 2019-07-29 2019-10-11 北京理工大学 A kind of biped robot's gait generates and optimization method
CN111123951A (en) * 2019-12-31 2020-05-08 深圳市优必选科技股份有限公司 Biped robot and track following method and device thereof
CN111176342A (en) * 2020-02-11 2020-05-19 之江实验室 Walking speed adjusting method of humanoid gait of biped robot
CN111240339A (en) * 2020-02-11 2020-06-05 之江实验室 Humanoid gait planning method of biped robot

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112757301A (en) * 2020-12-30 2021-05-07 乐聚(深圳)机器人技术有限公司 Robot anti-disturbance control method and device, electronic equipment and storage medium
CN112757301B (en) * 2020-12-30 2022-05-03 乐聚(深圳)机器人技术有限公司 Robot anti-disturbance control method and device, electronic equipment and storage medium
CN113253727A (en) * 2021-05-13 2021-08-13 乐聚(深圳)机器人技术有限公司 Method, device and equipment for determining track of robot and storage medium
CN113377114A (en) * 2021-07-05 2021-09-10 乐聚(深圳)机器人技术有限公司 Foot-type robot foot-falling control method and device and storage medium
CN114683281A (en) * 2022-03-18 2022-07-01 乐聚(深圳)机器人技术有限公司 Motion control method and device for foot type robot, electronic equipment and storage medium

Also Published As

Publication number Publication date
CN112123340B (en) 2021-08-24

Similar Documents

Publication Publication Date Title
CN112123340B (en) Robot motion control method, device, robot and storage medium
CN111015653B (en) Robot control method, device, computer readable storage medium and robot
CN111880544A (en) Humanoid robot gait planning method and device and humanoid robot
CN111605642B (en) Free fault-tolerant gait planning method and device of hexapod robot and storage medium
CN113064433B (en) Robot stepping control method and device, robot control equipment and storage medium
WO2022135011A1 (en) Method and apparatus for obtaining combined centroid state, humanoid robot, and readable storage medium
WO2022134143A1 (en) Robot state estimation method, apparatus, readable storage medium, and robot
CN112720479B (en) Robot posture control method and device and robot
CN113031579A (en) Walking control method and device of biped robot and biped robot
CN111168672A (en) Robot motion planning method, system, computer device and storage medium
CN112276950B (en) Anti-disturbance model training and control method, device, equipment, robot and medium
JP5679121B2 (en) Robot motion prediction control method and apparatus
CN113843799B (en) Quadruped robot posture reset control method, device and storage medium
CN112757301B (en) Robot anti-disturbance control method and device, electronic equipment and storage medium
US9395726B1 (en) Methods and devices for bound and gallop gaits
CN109866217B (en) Robot mileage positioning method, device, terminal equipment and computer storage medium
US11685049B2 (en) Robot localization using variance sampling
WO2022105023A1 (en) Robot control method and apparatus, and computer readable storage medium, and robot
CN113485323A (en) Flexible formation method for cascaded multiple mobile robots
CN103542864B (en) A kind of inertial navigation fall into a trap step method and device
CN111045428B (en) Obstacle avoidance method, mobile robot, and computer-readable storage medium
CN112697153A (en) Positioning method of autonomous mobile device, electronic device and storage medium
CN116430882A (en) Control method, equipment and medium for realizing independent walking of four-legged robot
CN113858207A (en) Method and device for controlling falling of humanoid robot, electronic device and storage medium
Zhu et al. Experimental approach for high speed walking of biped robot MARI-1

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
GR01 Patent grant
GR01 Patent grant