WO2022134144A1 - 一种机器人质心规划方法、装置、可读存储介质及机器人 - Google Patents

一种机器人质心规划方法、装置、可读存储介质及机器人 Download PDF

Info

Publication number
WO2022134144A1
WO2022134144A1 PCT/CN2020/140563 CN2020140563W WO2022134144A1 WO 2022134144 A1 WO2022134144 A1 WO 2022134144A1 CN 2020140563 W CN2020140563 W CN 2020140563W WO 2022134144 A1 WO2022134144 A1 WO 2022134144A1
Authority
WO
WIPO (PCT)
Prior art keywords
centroid
robot
velocity
point
planning
Prior art date
Application number
PCT/CN2020/140563
Other languages
English (en)
French (fr)
Inventor
葛利刚
刘益彰
陈春玉
谢铮
熊友军
Original Assignee
深圳市优必选科技股份有限公司
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 深圳市优必选科技股份有限公司 filed Critical 深圳市优必选科技股份有限公司
Publication of WO2022134144A1 publication Critical patent/WO2022134144A1/zh
Priority to US18/210,026 priority Critical patent/US20230415333A1/en

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/1602Programme controls characterised by the control system, structure, architecture
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/08Control of attitude, i.e. control of roll, pitch, or yaw
    • G05D1/0891Control of attitude, i.e. control of roll, pitch, or yaw specially adapted for land vehicles
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • G05B19/4155Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by programme execution, i.e. part programme or machine function execution, e.g. selection of a programme
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/40Robotics, robotics mapping to robotics vision
    • G05B2219/40244Walking manipulator with integrated stewart, parallel arm
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/40Robotics, robotics mapping to robotics vision
    • G05B2219/40264Human like, type robot arm

Definitions

  • the present application belongs to the field of robotics, and in particular, relates to a robot centroid planning method, device, computer-readable storage medium, and a robot.
  • embodiments of the present application provide a robot centroid planning method, device, computer-readable storage medium, and robot, so as to solve the problem of poor walking stability of the robot in the prior art.
  • a first aspect of the embodiments of the present application provides a robot centroid planning method, which may include:
  • the planned position of the centroid is corrected according to the amount of change in the position of the centroid, to obtain the corrected planned position of the centroid.
  • the calculating the amount of change in the position of the center of mass of the robot according to the expected zero-moment point and the measured zero-moment point may include:
  • the calculation of the centroid acceleration of the robot according to the expected zero-moment point and the measured zero-moment point may include:
  • centroid acceleration is calculated according to:
  • p x is the desired zero moment point
  • p m is the measured zero moment point
  • K zmp is the preset zero moment point tracking controller parameter
  • g is the acceleration of gravity
  • Z c is the height of the center of mass of the robot , is the centroid acceleration.
  • the calculating the second centroid velocity of the robot at the current moment according to the first centroid velocity, the centroid acceleration and the preset control period may include:
  • the second centroid velocity is calculated according to the following formula:
  • the calculating the second centroid position change of the robot at the current moment according to the first centroid position change, the centroid acceleration, the second centroid velocity and the control period may include:
  • the second centroid position variation is calculated according to the following formula:
  • ⁇ X(k-1) is the change amount of the first centroid position
  • ⁇ X(k) is the change amount of the second centroid position
  • calculating the planned capture point of the robot according to the planned position of the centroid and the planned velocity of the centroid may include:
  • the planned capture points are calculated according to:
  • x plan is the planned position of the centroid, is the planned velocity for the centroid, ⁇ is the preset frequency, and ⁇ plan is the planned capture point;
  • the calculation of the measurement capture point of the robot according to the measured position of the centroid and the measured velocity of the centroid includes:
  • the measurement capture point is calculated according to the following formula:
  • x measure is the centroid measurement position
  • Velocity is measured for the centroid
  • ⁇ measure is the measurement capture point
  • calculating the desired zero moment point of the robot according to the planning capture point and the measurement capture point may include:
  • the desired zero moment point is calculated according to the following formula:
  • K cpcontrol is a preset controller parameter.
  • a second aspect of the embodiments of the present application provides a robot centroid planning device, which may include:
  • a planning capture point calculation module configured to obtain the planned position of the centroid and the planned velocity of the centroid of the robot, and calculate the planned capture point of the robot according to the planned position of the centroid and the planned velocity of the centroid;
  • a measurement capture point calculation module for acquiring the centroid measurement position and centroid measurement velocity of the robot, and calculating the robot's measurement capture point according to the centroid measurement position and the centroid measurement velocity;
  • a desired zero-moment point calculation module configured to calculate the desired zero-moment point of the robot according to the planning capture point and the measurement capture point;
  • a center of mass position change calculation module configured to obtain the measured zero-moment point of the robot, and calculate the center-of-mass position change of the robot according to the expected zero-moment point and the measured zero-moment point;
  • the centroid planning position correction module is configured to correct the centroid planning position according to the change amount of the centroid position to obtain the modified centroid planning position.
  • centroid position variation calculation module may include:
  • centroid acceleration calculation unit configured to calculate the centroid acceleration of the robot according to the expected zero moment point and the measured zero moment point
  • centroid velocity calculation unit is used to obtain the first centroid velocity of the robot at the previous moment, and calculate the second centroid velocity of the robot at the current moment according to the first centroid velocity, the centroid acceleration and the preset control period. centroid velocity;
  • a centroid position change calculation unit configured to obtain the first centroid position change of the robot at the last moment, and calculate the first centroid position change, the centroid acceleration, the second centroid velocity and the The control cycle calculates the variation of the position of the second center of mass of the robot at the current moment.
  • centroid acceleration calculation unit is specifically configured to calculate the centroid acceleration according to the following formula:
  • p x is the desired zero moment point
  • p m is the measured zero moment point
  • K zmp is the preset zero moment point tracking controller parameter
  • g is the acceleration of gravity
  • Z c is the height of the center of mass of the robot , is the centroid acceleration.
  • centroid velocity calculation unit is specifically configured to calculate the second centroid velocity according to the following formula:
  • centroid position change amount calculation unit is specifically configured to calculate the second centroid position change amount according to the following formula:
  • ⁇ X(k-1) is the change amount of the first centroid position
  • ⁇ X(k) is the change amount of the second centroid position
  • the planning capture point calculation module is specifically configured to calculate the planning capture point according to the following formula:
  • x plan is the planned position of the centroid
  • Plan velocity for the centroid
  • ⁇ plan is the planned capture point
  • the measurement capture point calculation module is specifically configured to calculate the measurement capture point according to the following formula:
  • x measure is the centroid measurement position
  • Velocity is measured for the centroid
  • ⁇ measure is the measurement capture point
  • the desired zero-moment point calculation module is specifically configured to calculate the desired zero-moment point according to the following formula:
  • K cpcontrol is a preset controller parameter.
  • a third aspect of the embodiments of the present application provides a computer-readable storage medium, where the computer-readable storage medium stores a computer program, and when the computer program is executed by a processor, implements the steps of any of the foregoing robot centroid planning methods .
  • a fourth aspect of the embodiments of the present application provides a robot, including a memory, a processor, and a computer program stored in the memory and executable on the processor, which is implemented when the processor executes the computer program The steps of any of the above-mentioned robot centroid planning methods.
  • a fifth aspect of the embodiments of the present application provides a computer program product that, when the computer program product runs on a robot, causes the robot to execute the steps of any one of the above-mentioned methods for planning the robot's centroid.
  • the embodiment of the present application has the following beneficial effects: acquires the planned centroid position and centroid planning speed of the robot, and calculates the planning of the robot according to the planned centroid position and the centroid planning velocity Capture point; obtain the centroid measurement position and centroid measurement velocity of the robot, and calculate the robot's measurement capture point according to the centroid measurement position and the centroid measurement velocity; according to the planned capture point and the measurement capture point Calculate the expected zero-moment point of the robot; obtain the measured zero-moment point of the robot, and calculate the position change of the robot's center of mass according to the expected zero-moment point and the measured zero-moment point; The change amount modifies the planned position of the centroid to obtain the revised planned position of the centroid.
  • the desired zero-moment point can be adjusted in time according to the motion state of the robot, and the real-time tracking of the desired zero-moment point can be realized by controlling the position of the center of mass, so that the position of the center of mass can be corrected in time, and the result obtained from the center of mass planning based on this
  • the accuracy is high, which greatly improves the stability of the robot's walking.
  • FIG. 1 is a flowchart of an embodiment of a robot centroid planning method in an embodiment of the present application
  • Figure 2 is a schematic diagram of a linear inverted pendulum model
  • Fig. 3 is a schematic flow chart of calculating the position change of the center of mass of the robot according to the expected zero-moment point and the measured zero-moment point;
  • FIG. 4 is a schematic diagram of a desired zero moment point and a measured zero moment point
  • Fig. 5 is the schematic diagram of the stability control process of the horizontal direction of the robot
  • FIG. 6 is a structural diagram of an embodiment of a robot centroid planning device in an embodiment of the present application.
  • FIG. 7 is a schematic block diagram of a robot in an embodiment of the present application.
  • the term “if” may be contextually interpreted as “when” or “once” or “in response to determining” or “in response to detecting” .
  • the phrases “if it is determined” or “if the [described condition or event] is detected” may be interpreted, depending on the context, to mean “once it is determined” or “in response to the determination” or “once the [described condition or event] is detected. ]” or “in response to detection of the [described condition or event]”.
  • the robots mentioned in the embodiments of the present application are all biped robots.
  • the embodiments of the present application mainly focus on the stability of the robot in the horizontal direction (that is, the travel direction of the robot). Unless otherwise specified, the physical quantities such as the position point, speed, and acceleration mentioned in the embodiments of the present application are all in the travel of the robot. component in the direction.
  • an embodiment of a robot centroid planning method in an embodiment of the present application may include:
  • Step S101 Acquire the planned position of the centroid and the planned velocity of the centroid of the robot, and calculate the planned capture point (CapturePoint, CP) of the robot according to the planned position of the centroid and the planned velocity of the centroid.
  • LIPM Linear Inverted Pendulum Model
  • CP is an important concept in LIPM, and its physical meaning is a support point that can realize the complete rest of the inverted pendulum. That is to say, if the robot landed on the CP during the movement, the center of mass could be completely stationary.
  • ⁇ x represent CP
  • CP can be calculated by the following formula:
  • the centroid position and centroid velocity of the robot can be planned in advance.
  • the specific planning method can adopt any planning method in the prior art according to the actual situation.
  • the planned centroid position and centroid velocity will be The velocity is recorded as the planned position of the centroid and the planned velocity of the centroid, respectively.
  • the CP corresponding to the centroid can be calculated according to the following formula, that is, the planning CP:
  • x plan is the planned position of the centroid
  • ⁇ plan is the planned CP
  • Step S102 Acquire a centroid measurement position and a centroid measurement velocity of the robot, and calculate a measurement capture point of the robot according to the centroid measurement position and the centroid measurement velocity.
  • the position and velocity of the center of mass of the robot can be estimated based on data measured by a six-dimensional force sensor and an inertial measurement unit (Inertial Measurement Unit, IMU) pre-installed on the robot.
  • IMU Inertial Measurement Unit
  • the method may adopt any estimation method in the prior art according to the actual situation.
  • the estimated centroid position and centroid velocity are recorded as centroid measurement position and centroid measurement velocity, respectively.
  • the CP corresponding to the centroid can be measured according to the following formula, that is, the CP is measured:
  • x measure is the centroid measurement position
  • ⁇ m asure is the measured CP.
  • Step S103 Calculate the expected ZMP of the robot according to the planning capture point and the measurement capture point.
  • ⁇ x (t) e ⁇ t ⁇ x (0)+(1-e ⁇ t )p x
  • dT is the time required for ⁇ measure to track ⁇ plan , which can be adjusted according to the actual situation. Then, the above formula can be written as:
  • Step S104 Obtain the measured ZMP of the robot, and calculate the position change of the center of mass of the robot according to the expected ZMP and the measured ZMP.
  • any method in the prior art may be adopted to estimate the actual ZMP of the robot according to the actual situation, and the estimation result is recorded as the measured ZMP here.
  • the change in the position of the center of mass of the robot can be calculated through the process shown in Figure 3:
  • Step S1041 Calculate the centroid acceleration of the robot according to the expected ZMP and the measured ZMP.
  • FIG. 4 is a schematic diagram of the desired ZMP and the measured ZMP.
  • the desired ZMP can be tracked by a ZMP tracking controller as shown in the following formula:
  • p x is the expected ZMP
  • p m is the measured ZMP
  • K zmp is the preset ZMP tracking controller parameter, and its specific value can be set according to the actual situation, is the centroid acceleration.
  • Step S1042 Obtain the first centroid velocity of the robot at the previous moment, and calculate the second centroid velocity of the robot at the current moment according to the first centroid velocity, the centroid acceleration, and a preset control period.
  • the motion control of the robot is performed periodically, and the duration between two adjacent motion controls is a control period, and its specific value can be set according to the actual situation, which is not specifically limited in this embodiment of the present application .
  • the centroid velocity of the robot at the last motion control moment is recorded as the first centroid velocity
  • the centroid velocity of the robot at the current motion control moment is recorded as the second centroid velocity.
  • the second centroid velocity can be calculated according to the following formula:
  • Step S1043 Obtain the first centroid position change of the robot at the last moment, and calculate the robot according to the first centroid position change, the centroid acceleration, the second centroid velocity and the control period The amount of change in the second centroid position at the current moment.
  • the position change of the robot's centroid at the last motion control moment is recorded as the first centroid position change
  • the robot's centroid position change at the current motion control moment is recorded as the second centroid position change.
  • the second centroid position variation can be calculated according to the following formula:
  • ⁇ X(k-1) is the change amount of the first centroid position
  • ⁇ X(k) is the change amount of the second centroid position
  • Step S105 revising the planned position of the centroid according to the change amount of the position of the centroid, to obtain a revised planned position of the centroid.
  • the planned position of the centroid can be modified according to the following formula:
  • ⁇ X is the amount of change in the position of the centroid
  • x c is the corrected planned position of the centroid
  • Figure 5 shows a schematic diagram of the robot's horizontal stability control process.
  • the robot performs centroid trajectory generation and foot end trajectory generation in the gait generation stage.
  • the CP controller of the robot obtains the planning CP according to the planning and measurement of the bipedal feedback.
  • the expected ZMP ie cZMP in the figure
  • the ZMP tracking controller calculates the centroid acceleration according to the expected ZMP and the measured ZMP of the bipedal feedback, and corrects the centroid position accordingly.
  • the closed-loop tracking of the ZMP is realized, and the tracking of the planned CP is also completed in the upper-level control, which ensures the stability of the centroid in the horizontal direction.
  • the desired zero-moment point can be adjusted in time according to the motion state of the robot, and the real-time tracking of the desired zero-moment point can be realized by controlling the position of the center of mass, so that the position of the center of mass can be corrected in time.
  • the accuracy of the results obtained by the centroid planning of the robot is high, which greatly improves the stability of the robot's walking.
  • FIG. 6 shows a structural diagram of an embodiment of a robot centroid planning apparatus provided by an embodiment of the present application.
  • a robot centroid planning device may include:
  • a planning capture point calculation module 601 configured to acquire the planned position of the centroid and the planned velocity of the centroid of the robot, and calculate the planned capture point of the robot according to the planned position of the centroid and the planned velocity of the centroid;
  • a measurement capture point calculation module 602 configured to acquire the centroid measurement position and the centroid measurement velocity of the robot, and calculate the measurement capture point of the robot according to the centroid measurement position and the centroid measurement velocity;
  • a desired zero-moment point calculation module 603 configured to calculate the desired zero-moment point of the robot according to the planning capture point and the measurement capture point;
  • a centroid position change calculation module 604 configured to acquire the measured zero moment point of the robot, and calculate the centroid position change of the robot according to the expected zero moment point and the measured zero moment point;
  • the planned centroid position correction module 605 is configured to correct the planned centroid position according to the change amount of the centroid position to obtain the corrected planned centroid position.
  • centroid position change calculation module may include:
  • centroid acceleration calculation unit configured to calculate the centroid acceleration of the robot according to the expected zero-moment point and the measured zero-moment point;
  • centroid velocity calculation unit is used to obtain the first centroid velocity of the robot at the previous moment, and calculate the second centroid velocity of the robot at the current moment according to the first centroid velocity, the centroid acceleration and the preset control period. centroid velocity;
  • a centroid position change calculation unit configured to obtain the first centroid position change of the robot at the last moment, and calculate the first centroid position change, the centroid acceleration, the second centroid velocity and the The control cycle calculates the amount of change in the position of the second center of mass of the robot at the current moment.
  • centroid acceleration calculation unit is specifically configured to calculate the centroid acceleration according to the following formula:
  • p x is the desired zero moment point
  • p m is the measured zero moment point
  • K zmp is the preset zero moment point tracking controller parameter
  • g is the acceleration of gravity
  • Z c is the height of the center of mass of the robot , is the centroid acceleration.
  • centroid velocity calculation unit is specifically configured to calculate the second centroid velocity according to the following formula:
  • centroid position change amount calculation unit is specifically configured to calculate the second centroid position change amount according to the following formula:
  • ⁇ X(k-1) is the change amount of the first centroid position
  • ⁇ X(k) is the change amount of the second centroid position
  • the planning capture point calculation module is specifically configured to calculate the planning capture point according to the following formula:
  • x plan is the planned position of the centroid
  • Plan velocity for the centroid
  • ⁇ plan is the planned capture point
  • the measurement capture point calculation module is specifically configured to calculate the measurement capture point according to the following formula:
  • x measure is the centroid measurement position
  • Velocity is measured for the centroid
  • ⁇ measure is the measurement capture point
  • the desired zero-moment point calculation module is specifically configured to calculate the desired zero-moment point according to the following formula:
  • K cpcontrol is a preset controller parameter.
  • FIG. 7 shows a schematic block diagram of a robot provided by an embodiment of the present application. For convenience of description, only parts related to the embodiment of the present application are shown.
  • the robot 7 of this embodiment includes a processor 70 , a memory 71 , and a computer program 72 stored in the memory 71 and executable on the processor 70 .
  • the processor 70 executes the computer program 72
  • the steps in each of the above embodiments of the robot centroid planning method are implemented, for example, steps S101 to S105 shown in FIG. 1 .
  • the processor 70 executes the computer program 72
  • the computer program 72 may be divided into one or more modules/units, and the one or more modules/units are stored in the memory 71 and executed by the processor 70 to complete the this application.
  • the one or more modules/units may be a series of computer program instruction segments capable of performing specific functions, and the instruction segments are used to describe the execution process of the computer program 72 in the robot 7 .
  • FIG. 7 is only an example of the robot 7, and does not constitute a limitation to the robot 7. It may include more or less components than the one shown, or combine some components, or different components, such as
  • the robot 7 may also include input and output devices, network access devices, buses, and the like.
  • the processor 70 may be a central processing unit (Central Processing Unit, CPU), or other general-purpose processors, digital signal processors (Digital Signal Processor, DSP), application specific integrated circuits (Application Specific Integrated Circuit, ASIC), Field-Programmable Gate Array (FPGA) or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc.
  • a general purpose processor may be a microprocessor or the processor may be any conventional processor or the like.
  • the memory 71 may be an internal storage unit of the robot 7 , such as a hard disk or a memory of the robot 7 .
  • the memory 71 can also be an external storage device of the robot 7, such as a plug-in hard disk equipped on the robot 7, a smart memory card (Smart Media Card, SMC), a secure digital (Secure Digital, SD) card, Flash card (Flash Card) and so on.
  • the memory 71 may also include both an internal storage unit of the robot 7 and an external storage device.
  • the memory 71 is used to store the computer program and other programs and data required by the robot 7 .
  • the memory 71 may also be used to temporarily store data that has been output or will be output.
  • the disclosed apparatus/robot and method may be implemented in other ways.
  • the device/robot embodiments described above are only illustrative.
  • the division of the modules or units is only a logical function division.
  • the shown or discussed mutual coupling or direct coupling or communication connection may be through some interfaces, indirect coupling or communication connection of devices or units, and may be in electrical, mechanical or other forms.
  • the units described as separate components may or may not be physically separated, and components shown as units may or may not be physical units, that is, may be located in one place, or may be distributed to multiple network units. Some or all of the units may be selected according to actual needs to achieve the purpose of the solution in this embodiment.
  • each functional unit in each embodiment of the present application may be integrated into one processing unit, or each unit may exist physically alone, or two or more units may be integrated into one unit.
  • the above-mentioned integrated units may be implemented in the form of hardware, or may be implemented in the form of software functional units.
  • the integrated modules/units if implemented in the form of software functional units and sold or used as independent products, may be stored in a computer-readable storage medium.
  • the present application can implement all or part of the processes in the methods of the above embodiments, and can also be completed by instructing the relevant hardware through a computer program.
  • the computer program can be stored in a computer-readable storage medium, and the computer When the program is executed by the processor, the steps of the foregoing method embodiments can be implemented.
  • the computer program includes computer program code, and the computer program code may be in the form of source code, object code, executable file or some intermediate form, and the like.
  • the computer-readable storage medium may include: any entity or device capable of carrying the computer program code, a recording medium, a U disk, a removable hard disk, a magnetic disk, an optical disk, a computer memory, a read-only memory (ROM, Read-Only Memory) ), random access memory (RAM, Random Access Memory), electrical carrier signals, telecommunication signals, and software distribution media, etc. It should be noted that the content contained in the computer-readable storage medium may be appropriately increased or decreased according to the requirements of legislation and patent practice in the jurisdiction, for example, in some jurisdictions, according to legislation and patent practice, computer-readable Storage media exclude electrical carrier signals and telecommunications signals.

Landscapes

  • Engineering & Computer Science (AREA)
  • Automation & Control Theory (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Human Computer Interaction (AREA)
  • Manufacturing & Machinery (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Manipulator (AREA)

Abstract

一种机器人质心规划方法,包括:获取机器人的质心规划位置和质心规划速度,并根据质心规划位置和质心规划速度计算机器人的规划捕获点;获取机器人的质心测量位置和质心测量速度,并根据质心测量位置和质心测量速度计算机器人的测量捕获点;根据规划捕获点和测量捕获点计算机器人的期望零力矩点;获取机器人的测量零力矩点,并根据期望零力矩点和测量零力矩点计算机器人的质心位置变化量;根据质心位置变化量对质心规划位置进行修正,得到修正后的质心规划位置。该方法极大提升了机器人行走的稳定性。还提供一种机器人质心规划装置、可读存储介质及机器人。

Description

一种机器人质心规划方法、装置、可读存储介质及机器人
本申请要求于2020年12月24日在中国专利局提交的、申请号为202011547544.1的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
技术领域
本申请属于机器人技术领域,尤其涉及一种机器人质心规划方法、装置、计算机可读存储介质及机器人。
背景技术
在双足机器人的运动控制过程中,水平方向上的质心规划结果会对双足机器人行走的稳定性造成显著影响。但在现有技术中,缺乏对质心位置的及时修正,据此进行的质心规划所得结果准确度往往较低,导致机器人行走的稳定性较差。
技术问题
有鉴于此,本申请实施例提供了一种机器人质心规划方法、装置、计算机可读存储介质及机器人,以解决现有技术中存在的机器人行走的稳定性较差的问题。
技术解决方案
本申请实施例的第一方面提供了一种机器人质心规划方法,可以包括:
获取机器人的质心规划位置和质心规划速度,并根据所述质心规划位置和所述质心规划速度计算所述机器人的规划捕获点;
获取所述机器人的质心测量位置和质心测量速度,并根据所述质心测量位置和所述质心测量速度计算所述机器人的测量捕获点;
根据所述规划捕获点和所述测量捕获点计算所述机器人的期望零力矩点;
获取所述机器人的测量零力矩点,并根据所述期望零力矩点和所述测量零力矩点计算所述机器人的质心位置变化量;
根据所述质心位置变化量对所述质心规划位置进行修正,得到修正后的质心规划位置。
进一步地,所述根据所述期望零力矩点和所述测量零力矩点计算所述机器人的质心位置变化量,可以包括:
根据所述期望零力矩点和所述测量零力矩点计算所述机器人的质心加速度;
获取所述机器人在上一时刻的第一质心速度,并根据所述第一质心速度、所述质心加速度和预设的控制周期计算所述机器人在当前时刻的第二质心速度;
获取所述机器人在上一时刻的第一质心位置变化量,并根据所述第一质心位置变化量、所述质心加速度、所述第二质心速度和所述控制周期计算所述机器人在当前时刻的第二质 心位置变化量。
进一步地,所述根据所述期望零力矩点和所述测量零力矩点计算所述机器人的质心加速度,可以包括:
根据下式计算所述质心加速度:
Figure PCTCN2020140563-appb-000001
其中,p x为所述期望零力矩点,p m为所述测量零力矩点,K zmp为预设的零力矩点跟踪控制器参数,g为重力加速度,Z c为所述机器人的质心高度,
Figure PCTCN2020140563-appb-000002
为所述质心加速度。
进一步地,所述根据所述第一质心速度、所述质心加速度和预设的控制周期计算所述机器人在当前时刻的第二质心速度,可以包括:
根据下式计算所述第二质心速度:
Figure PCTCN2020140563-appb-000003
其中,
Figure PCTCN2020140563-appb-000004
为所述第一质心速度,Δt为所述控制周期,
Figure PCTCN2020140563-appb-000005
为所述第二质心速度。
进一步地,所述根据所述第一质心位置变化量、所述质心加速度、所述第二质心速度和所述控制周期计算所述机器人在当前时刻的第二质心位置变化量,可以包括:
根据下式计算所述第二质心位置变化量:
Figure PCTCN2020140563-appb-000006
其中,ΔX(k-1)为所述第一质心位置变化量,ΔX(k)为所述第二质心位置变化量。
进一步地,所述根据所述质心规划位置和所述质心规划速度计算所述机器人的规划捕获点,可以包括:
根据下式计算所述规划捕获点:
Figure PCTCN2020140563-appb-000007
其中,x plan为所述质心规划位置,
Figure PCTCN2020140563-appb-000008
为所述质心规划速度,ω为预设的频率,ξ plan为所述规划捕获点;
所述根据所述质心测量位置和所述质心测量速度计算所述机器人的测量捕获点,包括:
根据下式计算所述测量捕获点:
Figure PCTCN2020140563-appb-000009
其中,x measure为所述质心测量位置,
Figure PCTCN2020140563-appb-000010
为所述质心测量速度,ξ measure为所述 测量捕获点。
进一步地,所述根据所述规划捕获点和所述测量捕获点计算所述机器人的期望零力矩点,可以包括:
根据下式计算所述期望零力矩点:
p x=K cpcontrolξ plan+(1-K cpcontrolmeasure
其中,K cpcontrol为预设的控制器参数。
本申请实施例的第二方面提供了一种机器人质心规划装置,可以包括:
规划捕获点计算模块,用于获取机器人的质心规划位置和质心规划速度,并根据所述质心规划位置和所述质心规划速度计算所述机器人的规划捕获点;
测量捕获点计算模块,用于获取所述机器人的质心测量位置和质心测量速度,并根据所述质心测量位置和所述质心测量速度计算所述机器人的测量捕获点;
期望零力矩点计算模块,用于根据所述规划捕获点和所述测量捕获点计算所述机器人的期望零力矩点;
质心位置变化量计算模块,用于获取所述机器人的测量零力矩点,并根据所述期望零力矩点和所述测量零力矩点计算所述机器人的质心位置变化量;
质心规划位置修正模块,用于根据所述质心位置变化量对所述质心规划位置进行修正,得到修正后的质心规划位置。
进一步地,所述质心位置变化量计算模块可以包括:
质心加速度计算单元,用于根据所述期望零力矩点和所述测量零力矩点计算所述机器人的质心加速度;
质心速度计算单元,用于获取所述机器人在上一时刻的第一质心速度,并根据所述第一质心速度、所述质心加速度和预设的控制周期计算所述机器人在当前时刻的第二质心速度;
质心位置变化量计算单元,用于获取所述机器人在上一时刻的第一质心位置变化量,并根据所述第一质心位置变化量、所述质心加速度、所述第二质心速度和所述控制周期计算所述机器人在当前时刻的第二质心位置变化量。
进一步地,所述质心加速度计算单元具体用于根据下式计算所述质心加速度:
Figure PCTCN2020140563-appb-000011
其中,p x为所述期望零力矩点,p m为所述测量零力矩点,K zmp为预设的零力矩点跟踪 控制器参数,g为重力加速度,Z c为所述机器人的质心高度,
Figure PCTCN2020140563-appb-000012
为所述质心加速度。
进一步地,所述质心速度计算单元具体用于根据下式计算所述第二质心速度:
Figure PCTCN2020140563-appb-000013
其中,
Figure PCTCN2020140563-appb-000014
为所述第一质心速度,
Figure PCTCN2020140563-appb-000015
为所述质心加速度,Δt为所述控制周期,
Figure PCTCN2020140563-appb-000016
为所述第二质心速度。
进一步地,所述质心位置变化量计算单元具体用于根据下式计算所述第二质心位置变化量:
Figure PCTCN2020140563-appb-000017
其中,ΔX(k-1)为所述第一质心位置变化量,ΔX(k)为所述第二质心位置变化量。
进一步地,所述规划捕获点计算模块具体用于根据下式计算所述规划捕获点:
Figure PCTCN2020140563-appb-000018
其中,x plan为所述质心规划位置,
Figure PCTCN2020140563-appb-000019
为所述质心规划速度,ω为预设的频率,ξ plan为所述规划捕获点。
进一步地,所述测量捕获点计算模块具体用于根据下式计算所述测量捕获点:
Figure PCTCN2020140563-appb-000020
其中,x measure为所述质心测量位置,
Figure PCTCN2020140563-appb-000021
为所述质心测量速度,ξ measure为所述测量捕获点。
进一步地,所述期望零力矩点计算模块具体用于根据下式计算所述期望零力矩点:
p x=K cpcontrolξ plan+(1-K cpcontrolmeasure
其中,K cpcontrol为预设的控制器参数。
本申请实施例的第三方面提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述任一种机器人质心规划方法的步骤。
本申请实施例的第四方面提供了一种机器人,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述任一种机器人质心规划方法的步骤。
本申请实施例的第五方面提供了一种计算机程序产品,当计算机程序产品在机器人上运行时,使得机器人执行上述任一种机器人质心规划方法的步骤。
有益效果
本申请实施例与现有技术相比存在的有益效果是:本申请实施例获取机器人的质心规划位置和质心规划速度,并根据所述质心规划位置和所述质心规划速度计算所述机器人的规划捕获点;获取所述机器人的质心测量位置和质心测量速度,并根据所述质心测量位置和所述质心测量速度计算所述机器人的测量捕获点;根据所述规划捕获点和所述测量捕获点计算所述机器人的期望零力矩点;获取所述机器人的测量零力矩点,并根据所述期望零力矩点和所述测量零力矩点计算所述机器人的质心位置变化量;根据所述质心位置变化量对所述质心规划位置进行修正,得到修正后的质心规划位置。通过本申请实施例,可以根据机器人的运动状态及时对期望零力矩点进行调整,通过质心位置控制实现对期望零力矩点的实时跟踪,从而可以及时修正质心位置,据此进行的质心规划所得结果准确度较高,极大提升了机器人行走的稳定性。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
图1为本申请实施例中一种机器人质心规划方法的一个实施例流程图;
图2为线性倒立摆模型的示意图;
图3为根据期望零力矩点和测量零力矩点计算机器人的质心位置变化量的示意流程图;
图4为期望零力矩点和测量零力矩点的示意图;
图5为机器人的水平方向稳定控制过程的示意图;
图6为本申请实施例中一种机器人质心规划装置的一个实施例结构图;
图7为本申请实施例中一种机器人的示意框图。
本发明的实施方式
为使得本申请的发明目的、特征、优点能够更加的明显和易懂,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,下面所描述的实施例仅仅是本申请一部分实施例,而非全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本申请保护的范围。
应当理解,当在本说明书和所附权利要求书中使用时,术语“包括”指示所描述特征、 整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
还应当理解,在此本申请说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本申请。如在本申请说明书和所附权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。
还应当进一步理解,在本申请说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
如在本说明书和所附权利要求书中所使用的那样,术语“如果”可以依据上下文被解释为“当...时”或“一旦”或“响应于确定”或“响应于检测到”。类似地,短语“如果确定”或“如果检测到[所描述条件或事件]”可以依据上下文被解释为意指“一旦确定”或“响应于确定”或“一旦检测到[所描述条件或事件]”或“响应于检测到[所描述条件或事件]”。
另外,在本申请的描述中,术语“第一”、“第二”、“第三”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
为叙述简便起见,如无特殊说明,本申请实施例中所提及的机器人均为双足机器人。
本申请实施例主要关注机器人在水平方向(即机器人的行进方向)上的稳定性,如无特殊说明,本申请实施例中所提及的位置点、速度、加速度等物理量均为在机器人的行进方向上的分量。
请参阅图1,本申请实施例中一种机器人质心规划方法的一个实施例可以包括:
步骤S101、获取机器人的质心规划位置和质心规划速度,并根据所述质心规划位置和所述质心规划速度计算所述机器人的规划捕获点(CapturePoint,CP)。
在机器人的规划与控制中,通常会采用模型简化的方式来映射复杂的多刚体系统,最经典的简化模型是如图2所示的线性倒立摆模型(Linear Inverted Pendulum Model,LIPM)。以矢状面为例,LIPM动力学方程如下所示:
Figure PCTCN2020140563-appb-000022
其中,
Figure PCTCN2020140563-appb-000023
为机器人的质心加速度,x c为机器人的质心位置,p x为机器人的零力矩点(Zero Moment Point,ZMP),ω为LIPM的自然频率,且
Figure PCTCN2020140563-appb-000024
g为重力加速度,Z c为机器人的质心高度。
CP是LIPM中一个重要的概念,其物理含义是能实现倒立摆完全静止的一个支撑点。也就是说,在运动过程中机器人如果落脚在CP上,那么可以实现质心的完全静止。
用ξ x表示CP,那么根据CP的定义,CP可通过下式计算得到:
Figure PCTCN2020140563-appb-000025
其中,
Figure PCTCN2020140563-appb-000026
为机器人的质心速度。
在本申请实施例中,可以预先对机器人的质心位置和质心速度进行规划,具体的规划方法可以根据实际情况采取现有技术中的任意一种规划方法,此处将规划得到的质心位置和质心速度分别记为质心规划位置和质心规划速度。在规划得到质心规划位置和质心规划速度之后,则可以根据下式与之对应的CP,也即规划CP:
Figure PCTCN2020140563-appb-000027
其中,x plan为所述质心规划位置,
Figure PCTCN2020140563-appb-000028
为所述质心规划速度,ξ plan为所述规划CP。
步骤S102、获取所述机器人的质心测量位置和质心测量速度,并根据所述质心测量位置和所述质心测量速度计算所述机器人的测量捕获点。
在本申请实施例中,可以基于预先安装在机器人上的六维力传感器和惯性测量单元(Inertial Measurement Unit,IMU)所测量得到的数据来对机器人的质心位置和质心速度进行估计,具体的估计方法可以根据实际情况采取现有技术中的任意一种估计方法,此处将估计得到的质心位置和质心速度分别记为质心测量位置和质心测量速度。在得到质心测量位置和质心测量速度之后,则可以根据下式与之对应的CP,也即测量CP:
Figure PCTCN2020140563-appb-000029
其中,x measure为所述质心测量位置,
Figure PCTCN2020140563-appb-000030
为所述质心测量速度,ξ m asure为所述测量CP。
步骤S103、根据所述规划捕获点和所述测量捕获点计算所述机器人的期望ZMP。
对CP的定义式求微分,并将LIPM动力学方程带入,可得:
Figure PCTCN2020140563-appb-000031
求解上述一阶微分方程,可得:
ξ x(t)=e ωtξ x(0)+(1-e ωt)p x
其中,ξ x(0)为初始的CP位置。
假设ξ x(t)为ξ plan,ξ x(0)为ξ measure,代入上式,并进行移向变换,可求得基于CP控制器的期望ZMP:
Figure PCTCN2020140563-appb-000032
Figure PCTCN2020140563-appb-000033
式中dT为ξ measure实现对ξ plan跟踪所需要的时间,可以根据实际情况进行调整,那么,上式可以写成:
p x=K cpcontrolξ plan+(1-K cpcontrolmeasure
通过对K cpcontrol这一控制器参数进行调整,即可改变ξ measure对ξ plan的跟踪效果。
步骤S104、获取所述机器人的测量ZMP,并根据所述期望ZMP和所述测量ZMP计算所述机器人的质心位置变化量。
在本申请实施例中,可以根据实际情况采取现有技术中的任意一种方法对机器人实际的ZMP进行估计,此处将估计结果记为测量ZMP。在已知期望ZMP和测量ZMP的情况下,则可以通过如图3所示的过程对所述机器人的质心位置变化量进行计算:
步骤S1041、根据所述期望ZMP和所述测量ZMP计算所述机器人的质心加速度。
图4所示即为所述期望ZMP和所述测量ZMP的示意图,在本申请实施例中,可以通过如下式所示的ZMP跟踪控制器来实现对所述期望ZMP的跟踪:
Figure PCTCN2020140563-appb-000034
其中,p x为所述期望ZMP,p m为所述测量ZMP,K zmp为预设的ZMP跟踪控制器参数,其具体取值可以根据实际情况进行设置,
Figure PCTCN2020140563-appb-000035
为所述质心加速度。
步骤S1042、获取所述机器人在上一时刻的第一质心速度,并根据所述第一质心速度、所述质心加速度和预设的控制周期计算所述机器人在当前时刻的第二质心速度。
一般地,机器人的运动控制是周期性地进行的,相邻两次运动控制之间的时长即为一个控制周期,其具体取值可以根据实际情况进行设置,本申请实施例对此不作具体限定。为了便于区分,此处将机器人在上一个运动控制的时刻的质心速度记为第一质心速度,将机器人在当前本次的运动控制的时刻的质心速度记为第二质心速度。所述第二质心速度可以根据下式进行计算:
Figure PCTCN2020140563-appb-000036
其中,
Figure PCTCN2020140563-appb-000037
为所述第一质心速度,Δt为所述控制周期,
Figure PCTCN2020140563-appb-000038
为所述第二质心速度。
步骤S1043、获取所述机器人在上一时刻的第一质心位置变化量,并根据所述第一质心位置变化量、所述质心加速度、所述第二质心速度和所述控制周期计算所述机器人在当前时刻的第二质心位置变化量。
为了便于区分,此处将机器人在上一个运动控制的时刻的质心位置变化量记为第一质心位置变化量,将机器人在当前本次的运动控制的时刻的质心位置变化量记为第二质心位置变化量。所述第二质心位置变化量可以根据下式进行计算:
Figure PCTCN2020140563-appb-000039
其中,ΔX(k-1)为所述第一质心位置变化量,ΔX(k)为所述第二质心位置变化量。
通过以上过程,可以不断地对每一个运动控制时刻的质心位置变化量进行迭代更新。
步骤S105、根据所述质心位置变化量对所述质心规划位置进行修正,得到修正后的质心规划位置。
具体地,可以根据下式对所述质心规划位置进行修正:
x c=x plan+ΔX
其中,ΔX为所述质心位置变化量,x c为所述修正后的质心规划位置。
图5所示即为机器人的水平方向稳定控制过程的示意图,机器人在步态生成阶段分别进行质心轨迹生成和足端轨迹生成,机器人的CP控制器根据规划得到的规划CP以及双足反馈的测量CP计算得到期望ZMP(即图中cZMP),ZMP跟踪控制器根据该期望ZMP和双足反馈的测量ZMP计算得到质心加速度,并据此进行质心位置修正。通过对质心位置的修正,实现了ZMP的闭环跟踪,也在上层控制中完成了对规划CP的跟踪,保证了质心在水平方向上的稳定性。
综上所述,通过本申请实施例,可以根据机器人的运动状态及时对期望零力矩点进行调整,通过质心位置控制实现对期望零力矩点的实时跟踪,从而可以及时修正质心位置,据此进行的质心规划所得结果准确度较高,极大提升了机器人行走的稳定性。
应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。
对应于上文实施例所述的一种机器人质心规划方法,图6示出了本申请实施例提供的一种机器人质心规划装置的一个实施例结构图。
本实施例中,一种机器人质心规划装置可以包括:
规划捕获点计算模块601,用于获取机器人的质心规划位置和质心规划速度,并根据所述质心规划位置和所述质心规划速度计算所述机器人的规划捕获点;
测量捕获点计算模块602,用于获取所述机器人的质心测量位置和质心测量速度,并根据所述质心测量位置和所述质心测量速度计算所述机器人的测量捕获点;
期望零力矩点计算模块603,用于根据所述规划捕获点和所述测量捕获点计算所述机器人的期望零力矩点;
质心位置变化量计算模块604,用于获取所述机器人的测量零力矩点,并根据所述期望零力矩点和所述测量零力矩点计算所述机器人的质心位置变化量;
质心规划位置修正模块605,用于根据所述质心位置变化量对所述质心规划位置进行修正,得到修正后的质心规划位置。
进一步地,所述质心位置变化量计算模块可以包括:
质心加速度计算单元,用于根据所述期望零力矩点和所述测量零力矩点计算所述机器人的质心加速度;
质心速度计算单元,用于获取所述机器人在上一时刻的第一质心速度,并根据所述第一质心速度、所述质心加速度和预设的控制周期计算所述机器人在当前时刻的第二质心速度;
质心位置变化量计算单元,用于获取所述机器人在上一时刻的第一质心位置变化量,并根据所述第一质心位置变化量、所述质心加速度、所述第二质心速度和所述控制周期计算所述机器人在当前时刻的第二质心位置变化量。
进一步地,所述质心加速度计算单元具体用于根据下式计算所述质心加速度:
Figure PCTCN2020140563-appb-000040
其中,p x为所述期望零力矩点,p m为所述测量零力矩点,K zmp为预设的零力矩点跟踪控制器参数,g为重力加速度,Z c为所述机器人的质心高度,
Figure PCTCN2020140563-appb-000041
为所述质心加速度。
进一步地,所述质心速度计算单元具体用于根据下式计算所述第二质心速度:
Figure PCTCN2020140563-appb-000042
其中,
Figure PCTCN2020140563-appb-000043
为所述第一质心速度,
Figure PCTCN2020140563-appb-000044
为所述质心加速度,Δt为所述控制周期,
Figure PCTCN2020140563-appb-000045
为所述第二质心速度。
进一步地,所述质心位置变化量计算单元具体用于根据下式计算所述第二质心位置变化量:
Figure PCTCN2020140563-appb-000046
其中,ΔX(k-1)为所述第一质心位置变化量,ΔX(k)为所述第二质心位置变化量。
进一步地,所述规划捕获点计算模块具体用于根据下式计算所述规划捕获点:
Figure PCTCN2020140563-appb-000047
其中,x plan为所述质心规划位置,
Figure PCTCN2020140563-appb-000048
为所述质心规划速度,ω为预设的频率,ξ plan为 所述规划捕获点。
进一步地,所述测量捕获点计算模块具体用于根据下式计算所述测量捕获点:
Figure PCTCN2020140563-appb-000049
其中,x measure为所述质心测量位置,
Figure PCTCN2020140563-appb-000050
为所述质心测量速度,ξ measure为所述测量捕获点。
进一步地,所述期望零力矩点计算模块具体用于根据下式计算所述期望零力矩点:
p x=K cpcontrolξ plan+(1-K cpcontrolmeasure
其中,K cpcontrol为预设的控制器参数。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的装置,模块和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
图7示出了本申请实施例提供的一种机器人的示意框图,为了便于说明,仅示出了与本申请实施例相关的部分。
如图7所示,该实施例的机器人7包括:处理器70、存储器71以及存储在所述存储器71中并可在所述处理器70上运行的计算机程序72。所述处理器70执行所述计算机程序72时实现上述各个机器人质心规划方法实施例中的步骤,例如图1所示的步骤S101至步骤S105。或者,所述处理器70执行所述计算机程序72时实现上述各装置实施例中各模块/单元的功能,例如图6所示模块601至模块605的功能。
示例性的,所述计算机程序72可以被分割成一个或多个模块/单元,所述一个或者多个模块/单元被存储在所述存储器71中,并由所述处理器70执行,以完成本申请。所述一个或多个模块/单元可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述所述计算机程序72在所述机器人7中的执行过程。
本领域技术人员可以理解,图7仅仅是机器人7的示例,并不构成对机器人7的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如所述机器人7还可以包括输入输出设备、网络接入设备、总线等。
所述处理器70可以是中央处理单元(Central Processing Unit,CPU),还可以是其它通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其它可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处 理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
所述存储器71可以是所述机器人7的内部存储单元,例如机器人7的硬盘或内存。所述存储器71也可以是所述机器人7的外部存储设备,例如所述机器人7上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。进一步地,所述存储器71还可以既包括所述机器人7的内部存储单元也包括外部存储设备。所述存储器71用于存储所述计算机程序以及所述机器人7所需的其它程序和数据。所述存储器71还可以用于暂时地存储已经输出或者将要输出的数据。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将所述装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。实施例中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本申请的保护范围。上述系统中单元、模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
在本申请所提供的实施例中,应该理解到,所揭露的装置/机器人和方法,可以通过其它的方式实现。例如,以上所描述的装置/机器人实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通讯连接可以是通过一些接口,装置或单元的间接耦合或通讯连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络 单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的模块/单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读存储介质中。基于这样的理解,本申请实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读存储介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,所述计算机可读存储介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读存储介质不包括电载波信号和电信信号。
以上所述实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围,均应包含在本申请的保护范围之内。

Claims (10)

  1. 一种机器人质心规划方法,其特征在于,包括:
    获取机器人的质心规划位置和质心规划速度,并根据所述质心规划位置和所述质心规划速度计算所述机器人的规划捕获点;
    获取所述机器人的质心测量位置和质心测量速度,并根据所述质心测量位置和所述质心测量速度计算所述机器人的测量捕获点;
    根据所述规划捕获点和所述测量捕获点计算所述机器人的期望零力矩点;
    获取所述机器人的测量零力矩点,并根据所述期望零力矩点和所述测量零力矩点计算所述机器人的质心位置变化量;
    根据所述质心位置变化量对所述质心规划位置进行修正,得到修正后的质心规划位置。
  2. 根据权利要求1所述的机器人质心规划方法,其特征在于,所述根据所述期望零力矩点和所述测量零力矩点计算所述机器人的质心位置变化量,包括:
    根据所述期望零力矩点和所述测量零力矩点计算所述机器人的质心加速度;
    获取所述机器人在上一时刻的第一质心速度,并根据所述第一质心速度、所述质心加速度和预设的控制周期计算所述机器人在当前时刻的第二质心速度;
    获取所述机器人在上一时刻的第一质心位置变化量,并根据所述第一质心位置变化量、所述质心加速度、所述第二质心速度和所述控制周期计算所述机器人在当前时刻的第二质心位置变化量。
  3. 根据权利要求2所述的机器人质心规划方法,其特征在于,所述根据所述期望零力矩点和所述测量零力矩点计算所述机器人的质心加速度,包括:
    根据下式计算所述质心加速度:
    Figure PCTCN2020140563-appb-100001
    其中,p x为所述期望零力矩点,p m为所述测量零力矩点,K zmp为预设的零力矩点跟踪控制器参数,g为重力加速度,Z c为所述机器人的质心高度,
    Figure PCTCN2020140563-appb-100002
    为所述质心加速度。
  4. 根据权利要求2所述的机器人质心规划方法,其特征在于,所述根据所述第一质心速度、所述质心加速度和预设的控制周期计算所述机器人在当前时刻的第二质心速度,包括:
    根据下式计算所述第二质心速度:
    Figure PCTCN2020140563-appb-100003
    其中,
    Figure PCTCN2020140563-appb-100004
    为所述第一质心速度,
    Figure PCTCN2020140563-appb-100005
    为所述质心加速度,Δt为所述控制周期,
    Figure PCTCN2020140563-appb-100006
    为所述第二质心速度。
  5. 根据权利要求2所述的机器人质心规划方法,其特征在于,所述根据所述第一质心位置变化量、所述质心加速度、所述第二质心速度和所述控制周期计算所述机器人在当前时刻的第二质心位置变化量,包括:
    根据下式计算所述第二质心位置变化量:
    Figure PCTCN2020140563-appb-100007
    其中,ΔX(k-1)为所述第一质心位置变化量,
    Figure PCTCN2020140563-appb-100008
    为所述质心加速度,Δt为所述控制周期,
    Figure PCTCN2020140563-appb-100009
    为所述第二质心速度,ΔX(k)为所述第二质心位置变化量。
  6. 根据权利要求1所述的机器人质心规划方法,其特征在于,所述根据所述质心规划位置和所述质心规划速度计算所述机器人的规划捕获点,包括:
    根据下式计算所述规划捕获点:
    Figure PCTCN2020140563-appb-100010
    其中,x plan为所述质心规划位置,
    Figure PCTCN2020140563-appb-100011
    为所述质心规划速度,ω为预设的频率,ξ plan为所述规划捕获点;
    所述根据所述质心测量位置和所述质心测量速度计算所述机器人的测量捕获点,包括:
    根据下式计算所述测量捕获点:
    Figure PCTCN2020140563-appb-100012
    其中,x measure为所述质心测量位置,
    Figure PCTCN2020140563-appb-100013
    为所述质心测量速度,ξ measure为所述测量捕获点。
  7. 根据权利要求1至6中任一项所述的机器人质心规划方法,其特征在于,所述根据所述规划捕获点和所述测量捕获点计算所述机器人的期望零力矩点,包括:
    根据下式计算所述期望零力矩点:
    Figure PCTCN2020140563-appb-100014
    其中,ξ plan为所述规划捕获点,ξ measure为所述测量捕获点,
    Figure PCTCN2020140563-appb-100015
    为预设的控制器参数,p x为所述期望零力矩点。
  8. 一种机器人质心规划装置,其特征在于,包括:
    规划捕获点计算模块,用于获取机器人的质心规划位置和质心规划速度,并根据所述 质心规划位置和所述质心规划速度计算所述机器人的规划捕获点;
    测量捕获点计算模块,用于获取所述机器人的质心测量位置和质心测量速度,并根据所述质心测量位置和所述质心测量速度计算所述机器人的测量捕获点;
    期望零力矩点计算模块,用于根据所述规划捕获点和所述测量捕获点计算所述机器人的期望零力矩点;
    质心位置变化量计算模块,用于获取所述机器人的测量零力矩点,并根据所述期望零力矩点和所述测量零力矩点计算所述机器人的质心位置变化量;
    质心规划位置修正模块,用于根据所述质心位置变化量对所述质心规划位置进行修正,得到修正后的质心规划位置。
  9. 一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至7中任一项所述的机器人质心规划方法的步骤。
  10. 一种机器人,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至7中任一项所述的机器人质心规划方法的步骤。
PCT/CN2020/140563 2020-12-24 2020-12-29 一种机器人质心规划方法、装置、可读存储介质及机器人 WO2022134144A1 (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US18/210,026 US20230415333A1 (en) 2020-12-24 2023-09-19 Center of mass planning method for robot, robot and computer-readable storage medium

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202011547544.1 2020-12-24
CN202011547544.1A CN112731952B (zh) 2020-12-24 2020-12-24 一种机器人质心规划方法、装置、可读存储介质及机器人

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US18/210,026 Continuation US20230415333A1 (en) 2020-12-24 2023-09-19 Center of mass planning method for robot, robot and computer-readable storage medium

Publications (1)

Publication Number Publication Date
WO2022134144A1 true WO2022134144A1 (zh) 2022-06-30

Family

ID=75605167

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2020/140563 WO2022134144A1 (zh) 2020-12-24 2020-12-29 一种机器人质心规划方法、装置、可读存储介质及机器人

Country Status (3)

Country Link
US (1) US20230415333A1 (zh)
CN (1) CN112731952B (zh)
WO (1) WO2022134144A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112731953A (zh) * 2020-12-24 2021-04-30 深圳市优必选科技股份有限公司 机器人控制方法、装置、计算机可读存储介质及机器人

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113283082B (zh) * 2021-05-26 2023-12-15 深圳市优必选科技股份有限公司 质心轨迹生成方法、装置、计算机可读存储介质及机器人
CN113359792A (zh) * 2021-05-27 2021-09-07 深圳市优必选科技股份有限公司 一种双足机器人控制方法、装置、双足机器人及存储介质
CN114489104B (zh) * 2022-01-21 2023-11-10 深圳市优必选科技股份有限公司 机器人迈步控制方法及装置、机器人控制设备和存储介质
CN116619361A (zh) * 2023-05-16 2023-08-22 傅利叶动力(北京)科技有限公司 双足机器人质量分布的方法及双足机器人

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004237403A (ja) * 2003-02-06 2004-08-26 Toyota Motor Corp 歩行ロボットの制御用データ作成装置とzmp位置の計算方法
US20090319082A1 (en) * 2008-06-19 2009-12-24 Samsung Electronics Co., Ltd. Robot and method of controlling walking thereof
CN106707744A (zh) * 2016-10-31 2017-05-24 江苏华航威泰机器人科技有限公司 一种5连杆外骨骼机器人起蹲过程稳定性控制方法
CN108237532A (zh) * 2016-12-23 2018-07-03 深圳光启合众科技有限公司 多足机器人的步态控制方法、装置和机器人
CN109333534A (zh) * 2018-10-23 2019-02-15 广东工业大学 预规划的实时步态控制算法
CN111015653A (zh) * 2019-12-13 2020-04-17 深圳市优必选科技股份有限公司 机器人控制方法、装置、计算机可读存储介质及机器人

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI427558B (zh) * 2010-12-06 2014-02-21 Ind Tech Res Inst 遮蔽骨架之位置估算系統、遮蔽骨架之位置估算方法及遮蔽骨架之重建方法
KR101953113B1 (ko) * 2011-05-30 2019-03-05 삼성전자주식회사 로봇 및 그 제어방법
CN104252173A (zh) * 2013-06-27 2014-12-31 广州中国科学院先进技术研究所 双足步行机器人的步行控制方法
CN108345211A (zh) * 2017-01-23 2018-07-31 深圳市祈飞科技有限公司 双足仿人机器人及其非线性步态规划方法以及控制方法
CN107065867B (zh) * 2017-03-28 2019-05-31 浙江大学 一种面向未知崎岖地形的四足机器人运动规划方法
CN107253194B (zh) * 2017-07-31 2018-04-03 中南大学 一种运载机器人手臂操控多点映射智能控制方法及系统
CN109955928B (zh) * 2017-12-25 2020-10-16 深圳市优必选科技有限公司 一种双足机器人及其等效轨迹生成方法和装置
CN109703645B (zh) * 2018-12-29 2020-05-22 深圳市优必选科技有限公司 机器人质心位置调整方法、装置、机器人和数据存储介质
CN111098300B (zh) * 2019-12-13 2021-06-04 深圳市优必选科技股份有限公司 一种机器人平衡控制方法、装置、可读存储介质及机器人

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004237403A (ja) * 2003-02-06 2004-08-26 Toyota Motor Corp 歩行ロボットの制御用データ作成装置とzmp位置の計算方法
US20090319082A1 (en) * 2008-06-19 2009-12-24 Samsung Electronics Co., Ltd. Robot and method of controlling walking thereof
CN106707744A (zh) * 2016-10-31 2017-05-24 江苏华航威泰机器人科技有限公司 一种5连杆外骨骼机器人起蹲过程稳定性控制方法
CN108237532A (zh) * 2016-12-23 2018-07-03 深圳光启合众科技有限公司 多足机器人的步态控制方法、装置和机器人
CN109333534A (zh) * 2018-10-23 2019-02-15 广东工业大学 预规划的实时步态控制算法
CN111015653A (zh) * 2019-12-13 2020-04-17 深圳市优必选科技股份有限公司 机器人控制方法、装置、计算机可读存储介质及机器人

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112731953A (zh) * 2020-12-24 2021-04-30 深圳市优必选科技股份有限公司 机器人控制方法、装置、计算机可读存储介质及机器人

Also Published As

Publication number Publication date
CN112731952A (zh) 2021-04-30
US20230415333A1 (en) 2023-12-28
CN112731952B (zh) 2022-03-01

Similar Documents

Publication Publication Date Title
WO2022134144A1 (zh) 一种机器人质心规划方法、装置、可读存储介质及机器人
US10852139B2 (en) Positioning method, positioning device, and robot
WO2022134143A1 (zh) 一种机器人状态估计方法、装置、可读存储介质及机器人
CN112731953B (zh) 机器人控制方法、装置、计算机可读存储介质及机器人
WO2022105020A1 (zh) 机器人控制方法、装置、计算机可读存储介质及机器人
WO2022227457A1 (zh) 质心位姿估计方法, 装置, 计算机可读存储介质及机器人
CN113283082B (zh) 质心轨迹生成方法、装置、计算机可读存储介质及机器人
CN104613965B (zh) 一种基于双向滤波平滑技术的步进式行人导航方法
WO2022198995A1 (zh) 步态轨迹规划方法、装置、计算机可读存储介质及机器人
WO2022121003A1 (zh) 机器人控制方法、装置、计算机可读存储介质及机器人
CN111208809A (zh) 机器人步态规划方法及终端设备
WO2022174604A1 (zh) 一种机器人轨迹规划方法、装置、可读存储介质及机器人
WO2022105023A1 (zh) 机器人控制方法、装置、计算机可读存储介质及机器人
WO2022160811A1 (zh) 足式机器人轨迹跟踪方法、设备及可读存储介质
CN114046800B (zh) 一种基于双层滤波框架的高精度里程估计方法
CN109866217B (zh) 机器人里程定位方法、装置、终端设备及计算机存储介质
CN114161402A (zh) 机器人稳定控制方法、模型构建方法、装置和机器人
US20240168486A1 (en) Motion control method and apparatus, robot and readable storage medium
CN117621060A (zh) 一种环境感知的足式机器人落足控制方法及系统
CN112506190B (zh) 一种机器人定位方法、机器人定位装置及机器人
CN113927585B (zh) 一种机器人平衡控制方法、装置、可读存储介质及机器人
CN115727871A (zh) 一种轨迹质量检测方法、装置、电子设备和存储介质
CN113485403B (zh) 机器人的步态规划方法、装置、处理设备及存储介质
CN115107030A (zh) 机器人质心运动规划方法、装置和双足机器人
CN112731954B (zh) 机器人的运动控制方法、装置、机器人及存储介质

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 20966706

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 20966706

Country of ref document: EP

Kind code of ref document: A1

122 Ep: pct application non-entry in european phase

Ref document number: 20966706

Country of ref document: EP

Kind code of ref document: A1