WO2022227426A1 - 一种步态规划方法、装置、计算机可读存储介质及机器人 - Google Patents

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

Info

Publication number
WO2022227426A1
WO2022227426A1 PCT/CN2021/125047 CN2021125047W WO2022227426A1 WO 2022227426 A1 WO2022227426 A1 WO 2022227426A1 CN 2021125047 W CN2021125047 W CN 2021125047W WO 2022227426 A1 WO2022227426 A1 WO 2022227426A1
Authority
WO
WIPO (PCT)
Prior art keywords
robot
leg length
leg
trajectory
length
Prior art date
Application number
PCT/CN2021/125047
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 深圳市优必选科技股份有限公司
Priority to US17/678,030 priority Critical patent/US11926056B2/en
Publication of WO2022227426A1 publication Critical patent/WO2022227426A1/zh

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0212Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory
    • G05D1/0221Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory involving a learning process
    • 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
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0212Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory
    • G05D1/0223Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory involving speed control of the vehicle

Definitions

  • the present application belongs to the field of robotics, and in particular, relates to a gait planning method, device, computer-readable storage medium, and robot.
  • the embodiments of the present application provide a gait planning method, a device, a computer-readable storage medium, and a robot, so as to solve the problem that the existing gait planning method is difficult to ensure the stability of the robot in sports scenarios such as jumping or running.
  • the problem is a problem that the existing gait planning method is difficult to ensure the stability of the robot in sports scenarios such as jumping or running.
  • a first aspect of the embodiments of the present application provides a gait planning method, which may include:
  • the trajectory planning of the leg length of the robot is performed according to the reference leg length, the variation range of the leg length and a preset cyclic excitation function.
  • the trajectory planning for the leg length of the robot according to the reference leg length, the variation range of the leg length and a preset cyclic excitation function may include:
  • the trajectory planning of the legs of the robot is carried out according to the following formula:
  • l 0 is the reference leg length
  • A is the variation range of the leg length
  • f is the cyclic excitation function
  • t is the time variable
  • l is the double Legs are long.
  • the trajectory planning for the leg length of the robot according to the reference leg length, the variation range of the leg length and a preset cyclic excitation function may include:
  • ⁇ 2 is the phase difference between the first extreme point and the second extreme point
  • the first extreme point is the trajectory point corresponding to the maximum value of the left leg of the robot
  • the The second extreme point is the trajectory point corresponding to when the length of the right leg of the robot reaches the maximum value
  • l L is the length of the left leg of the robot.
  • the trajectory planning for the leg length of the robot according to the reference leg length, the variation range of the leg length and a preset cyclic excitation function may include:
  • d is the preset interpolation function
  • S is the preset starting point
  • B 2 is the preset landing point of the right leg
  • D 1 and D 2 are when the length of the right leg of the robot is equal to the reference leg length
  • l R is the length of the right leg of the robot.
  • the interpolation function can be set according to the following formula:
  • x 0 , v 0 , a 0 , and t 0 are the position, velocity, acceleration, and time corresponding to D 1 , respectively
  • x 1 , v 1 , a 1 , and t 1 are the position, velocity, and acceleration corresponding to point D 2 , respectively and time
  • q 0 , q 1 , q 2 , q 3 , q 4 , and q 5 are the respective undetermined coefficients of the fifth-order polynomial.
  • the first aspect may also include:
  • the linear equation system is solved to obtain each undetermined coefficient of the fifth-order polynomial.
  • the cyclic excitation function can be set according to the following formula:
  • T is the preset period
  • sign is the sign function
  • c is the preset constant
  • tanh is the hyperbolic tangent function
  • is the preset phase
  • represents the absolute value of s.
  • a second aspect of the embodiments of the present application provides a gait planning device, which may include:
  • the parameter determination module is used to determine the reference leg length of the robot and the variation range of the leg length;
  • the leg length planning module is configured to perform trajectory planning on the leg length of the robot according to the reference leg length, the variation range of the leg length and the preset cyclic excitation function.
  • the leg length planning module may include:
  • the jumping double-leg planning unit is used to plan the trajectory of the double-leg length of the robot according to the following formula during the support period of the jumping motion of the robot:
  • l 0 is the reference leg length
  • A is the variation range of the leg length
  • f is the cyclic excitation function
  • t is the time variable
  • l is the double Legs are long.
  • the leg length planning module may include:
  • the running left leg planning unit is used to plan the trajectory of the left leg of the robot according to the following formula when the robot is running:
  • ⁇ 2 is the phase difference between the first extreme point and the second extreme point
  • the first extreme point is the trajectory point corresponding to the maximum value of the left leg of the robot
  • the The second extreme point is the trajectory point corresponding to when the length of the right leg of the robot reaches the maximum value
  • l L is the length of the left leg of the robot.
  • the leg length planning module may include:
  • the running right leg planning unit is used to plan the trajectory of the right leg of the robot according to the following formula when the robot is running:
  • d is the preset interpolation function
  • S is the preset starting point
  • B 2 is the preset landing point of the right leg
  • D 1 and D 2 are when the length of the right leg of the robot is equal to the reference leg length
  • l R is the length of the right leg of the robot.
  • the leg length planning module may include:
  • the interpolation function setting unit is used to set the interpolation function according to the following formula:
  • x 0 , v 0 , a 0 , and t 0 are the position, velocity, acceleration, and time corresponding to D 1 , respectively
  • x 1 , v 1 , a 1 , and t 1 are the position, velocity, and acceleration corresponding to point D 2 , respectively and time
  • q 0 , q 1 , q 2 , q 3 , q 4 , and q 5 are the respective undetermined coefficients of the fifth-order polynomial.
  • the leg length planning module may include:
  • the undetermined coefficient solving unit is used to construct a linear equation system shown in the following formula, and solve the linear equation system to obtain each undetermined coefficient of the fifth-order polynomial:
  • the leg length planning module may include:
  • T is the preset period
  • sign is the sign function
  • c is the preset constant
  • tanh is the hyperbolic tangent function
  • is the preset phase
  • represents the absolute value of s.
  • 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 above gait 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, and the processor implements the computer program when the processor executes the computer program.
  • the steps of any of the above gait planning methods are described.
  • a fifth aspect of the embodiments of the present application provides a computer program product, which, when the computer program product runs on a robot, enables the robot to perform any of the steps of the above-mentioned gait planning method.
  • the beneficial effects of the embodiments of the present application compared with the prior art are: the embodiments of the present application perform trajectory planning on the leg lengths of the robots during motion according to the characteristics of motion scenarios such as jumping or running of the robot, so that the leg lengths of the robots change. Adapting to the movement process, greatly improves the stability of the robot in sports scenes such as jumping or running.
  • Figure 1 is a schematic diagram of three gait stages of a robot
  • Fig. 2 is the schematic diagram of excitation basis function
  • Fig. 3 is the contrast schematic diagram of the second cyclic excitation function and the first cyclic excitation function
  • Fig. 4 is the model schematic diagram when the robot performs jumping motion
  • FIG. 5 is a schematic diagram of a leg length curve and a contact force curve when the robot performs a jumping motion
  • Fig. 6 is the model schematic diagram when the robot carries out running movement
  • FIG. 7 is a schematic diagram of a leg length curve when the robot performs a running motion
  • FIG. 8 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 gait of the robot can be divided into three stages as shown in FIG. 1 , wherein, the stage in which both legs are in contact with the ground is the double-leg support stage, and the stage in which only one leg is in contact with the ground is The single-leg support period, when both legs are not in contact with the ground, is the flight period.
  • the gait of the robot is the cyclic switching between the legs supporting period and the flying period, namely: the double-leg supporting period ⁇ the flying period ⁇ the double-leg supporting period ⁇ the flying period ⁇ ....
  • the gait of the robot is a cyclic switch between the single-leg support period and the vacant period, and the left and right legs alternate as support legs in each single-leg support period, that is, the single-leg support period (support leg left leg) ⁇ flight period ⁇ single-leg support period (support leg is right leg) ⁇ flight period ⁇ single-leg support period (support leg is left leg) ⁇ flight period ⁇ single-leg support period (support leg is right leg) ⁇ Flying period ⁇ ..., or: Single-leg support period (supporting leg is right leg) ⁇ Flying period ⁇ Single-leg support period (supporting leg is left leg) ⁇ Flying period ⁇ Single-leg support period (supporting leg is right leg) ⁇ Flying Period ⁇ Single-leg support period (the supporting leg is the left leg) ⁇ Evacuation period ⁇ ....
  • the trajectory planning of the leg length of the robot during the movement process can be carried out according to the characteristics of the robot jumping or running and other movement scenarios, so that the change of the leg length of the robot can be adapted to the movement process, thereby improving the robot's performance in jumping or running. Stability in sports scenes such as running.
  • the reference leg length and the variation range of the leg length of the robot can be determined.
  • the reference leg length may be denoted as l 0
  • the variation range of the leg length may be denoted as A.
  • the specific values of the two may be set according to the actual physical structure of the robot, which are not specifically limited in the embodiments of the present application.
  • the trajectory planning of the leg length of the robot can be performed according to the reference leg length, the variation range of the leg length and the preset cyclic excitation function.
  • this cyclic excitation function can be recorded as the first cyclic excitation function. The first cyclic excitation function will make the robot slow down when it starts to vacate, and cannot effectively vacate to a higher height.
  • Figure 2 shows a sawtooth function with a period of 2 and a phase of 0, which is denoted as an excitation basis function here.
  • an excitation basis function here.
  • the following formula can be constructed based on this excitation basis function
  • mod is a remainder function
  • T is a preset period
  • sign is a sign function
  • c is a preset constant
  • tanh is a hyperbolic tangent function
  • represents the absolute value of s
  • is a preset phase.
  • f(t, ⁇ ) can be abbreviated as f(t).
  • this cyclic excitation function can be recorded as the second cyclic excitation function.
  • FIG. 3 is a schematic diagram showing the comparison between the second cyclic excitation function and the first cyclic excitation function, wherein the solid line shows the first cyclic excitation function, and the dotted line shows the second cyclic excitation function. It can be seen from the figure that in the first 1/4 cycle, the value of the second loop excitation function is greater than the value of the first loop excitation function, indicating that the speed when using the second loop excitation function is greater; moreover, at the peak, The value change of the second loop excitation function is relatively gentle, indicating that the second loop excitation function is relatively stable in the air, and is more suitable for sports scenes such as jumping and running.
  • the robot When the robot performs a jumping motion, the robot can be simplified to an inverted pendulum model as shown in Figure 4, where m is the mass of the robot, l is the length of the robot's legs, and during the jumping motion, the length of the left leg of the robot The leg length is the same as that of the right leg, both are l, and F z is the contact force between the robot and the ground.
  • the trajectory planning of the robot's legs and leg lengths can be carried out according to the following formula:
  • the robot When the robot is running, the robot can be simplified to the model shown in Figure 6, where l L is the length of the left leg of the robot, and l R is the length of the right leg of the robot.
  • Figure 7 shows a schematic diagram of the leg length curve of the robot when it runs.
  • S is the starting point
  • A1 is the landing point of the robot's right leg
  • A2 is the landing point of the robot's left leg
  • B1 is the landing point of the robot's left leg
  • B2 is the landing point of the robot's right leg
  • C1 and C 2 is the trajectory point corresponding to the length of the left leg of the robot being equal to the reference leg length
  • D 1 and D 2 are the corresponding trajectory points when the leg length of the right leg of the robot is equal to the reference leg length.
  • the motion trajectory of the left leg l L is C 1 ⁇ B 1 ⁇ A 2 ⁇ C 2
  • the motion trajectory of the right leg l R is S ⁇ A 1 ⁇ D 1 ⁇ D 2 ⁇ B 2 .
  • the length of the flight period can be calculated according to the following formula:
  • T flight is the duration of the flight period.
  • ⁇ 2 is the phase difference between the first extreme point and the second extreme point
  • the first extreme point is the trajectory point corresponding to the maximum value of the left leg of the robot
  • the second extreme point is The trajectory point corresponding to the maximum length of the right leg of the robot, and it satisfies:
  • the duration of the support period can be calculated according to the following formula:
  • T support is the duration of the support period.
  • the trajectory of segment B 1 ⁇ A 2 can be extended to C 1 ⁇ B 1 ⁇ A 2 ⁇ C 2 ; 1
  • the trajectory of S ⁇ A 1 can be extended to S ⁇ A 1 ⁇ D 1 ; in order to ensure the stability of the landing of the right leg at B 2 , the trajectory of S ⁇ A 1 ⁇ D 1 can be translated to D 2 ⁇ B 2 .
  • trajectory planning of the left leg length of the robot can be carried out according to the following formula:
  • the trajectory planning of the right leg of the robot can be done according to the following formula:
  • d is a preset interpolation function.
  • the interpolation function can be set according to the following formula:
  • x 0 , v 0 , a 0 , and t 0 are the position, velocity, acceleration, and time corresponding to D 1 respectively, and their specific values can be obtained according to the planning of the S ⁇ D 1 segment
  • x 1 , v 1 , a 1 , t 1 are the position, velocity, acceleration and time corresponding to point D 2 respectively
  • their specific values can be obtained according to the planning of D 2 ⁇ B 2 segment
  • q 0 , q 1 , q 2 , q 3 , q 4 and q 5 are the undetermined coefficients of the quintic polynomial, respectively.
  • each undetermined coefficient can be obtained, and the trajectory planning of the right leg length in the segment D 1 ⁇ D 2 can also be determined.
  • the embodiment of the present application performs trajectory planning for the leg length of the robot during the motion process, so that the change of the leg length of the robot is adapted to the motion process, which greatly improves the robot's performance in the motion process. Stability in sports scenes such as jumping or running.
  • a gait planning device in the embodiments of the present application may include:
  • the parameter determination module is used to determine the reference leg length of the robot and the variation range of the leg length;
  • the leg length planning module is configured to perform trajectory planning on the leg length of the robot according to the reference leg length, the variation range of the leg length and the preset cyclic excitation function.
  • the leg length planning module may include:
  • the jumping double-leg planning unit is used to plan the trajectory of the double-leg length of the robot according to the following formula during the support period of the jumping motion of the robot:
  • l 0 is the reference leg length
  • A is the variation range of the leg length
  • f is the cyclic excitation function
  • t is the time variable
  • l is the double Legs are long.
  • the leg length planning module may include:
  • the running left leg planning unit is used to carry out trajectory planning to the left leg length of the robot according to the following formula when the robot is running:
  • ⁇ 2 is the phase difference between the first extreme point and the second extreme point
  • the first extreme point is the trajectory point corresponding to the maximum value of the left leg of the robot
  • the The second extreme point is the trajectory point corresponding to when the length of the right leg of the robot reaches the maximum value
  • l L is the length of the left leg of the robot.
  • the leg length planning module may include:
  • the running right leg planning unit is used to plan the trajectory of the right leg of the robot according to the following formula when the robot is running:
  • d is the preset interpolation function
  • S is the preset starting point
  • B 2 is the preset landing point of the right leg
  • D 1 and D 2 are when the length of the right leg of the robot is equal to the reference leg length
  • l R is the length of the right leg of the robot.
  • the leg length planning module may include:
  • the interpolation function setting unit is used to set the interpolation function according to the following formula:
  • x 0 , v 0 , a 0 , and t 0 are the position, velocity, acceleration, and time corresponding to D 1 , respectively
  • x 1 , v 1 , a 1 , and t 1 are the position, velocity, and acceleration corresponding to point D 2 , respectively and time
  • q 0 , q 1 , q 2 , q 3 , q 4 , and q 5 are the respective undetermined coefficients of the fifth-order polynomial.
  • the leg length planning module may include:
  • the undetermined coefficient solving unit is used to construct a linear equation system shown in the following formula, and solve the linear equation system to obtain each undetermined coefficient of the fifth-order polynomial:
  • the leg length planning module may include:
  • mod is the remainder function
  • T is the preset period
  • sign is the sign function
  • c is the preset constant
  • tanh is the hyperbolic tangent function
  • is the preset phase
  • represents the absolute value of s.
  • FIG. 8 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 8 of this embodiment includes a processor 80 , a memory 81 , and a computer program 82 stored in the memory 81 and executable on the processor 80 .
  • the processor 80 executes the computer program 82, the steps in each of the above-mentioned embodiments of the gait planning method are implemented.
  • the processor 80 executes the computer program 82, the functions of the modules/units in the above-mentioned device embodiments are implemented.
  • the computer program 82 may be divided into one or more modules/units, and the one or more modules/units are stored in the memory 81 and executed by the processor 80 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 82 in the robot 8 .
  • FIG. 8 is only an example of the robot 8, and does not constitute a limitation to the robot 8. It may include more or less components than the one shown in the figure, or combine some components, or different components, such as The robot 8 may also include input and output devices, network access devices, buses, and the like.
  • the processor 80 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 81 may be an internal storage unit of the robot 8 , such as a hard disk or a memory of the robot 8 .
  • the memory 81 can also be an external storage device of the robot 8, such as a plug-in hard disk equipped on the robot 8, a smart memory card (Smart Media Card, SMC), a secure digital (Secure Digital, SD) card, Flash card (Flash Card) and so on.
  • the memory 81 may also include both an internal storage unit of the robot 8 and an external storage device.
  • the memory 81 is used to store the computer program and other programs and data required by the robot 8 .
  • the memory 81 can 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 displayed 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)
  • Aviation & Aerospace Engineering (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Manipulator (AREA)

Abstract

一种步态规划方法、装置、计算机可读存储介质及机器人。该方法包括:确定机器人的基准腿长和腿长变化幅度;根据基准腿长、腿长变化幅度和预设的循环激励函数对机器人的腿长进行轨迹规划。通过该方法,可以根据机器人跳跃或者奔跑等运动场景的特点,对机器人在运动过程中的腿长进行轨迹规划,使得机器人的腿长变化与运动过程相适应,大大提高了机器人在跳跃或者奔跑等运动场景中的稳定性。

Description

一种步态规划方法、装置、计算机可读存储介质及机器人
本申请要求于2021年04月30日在中国专利局提交的、申请号为202110479948.X的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
技术领域
本申请属于机器人技术领域,尤其涉及一种步态规划方法、装置、计算机可读存储介质及机器人。
背景技术
在仿人机器人的研究中,已有的步态规划方法针对的大多是机器人行走的场景,能够使得机器人较为稳定地行走。然而,在机器人跳跃或者奔跑等运动场景中,这些步态规划方法的适用性较差,难以保证机器人的稳定性。
技术问题
有鉴于此,本申请实施例提供了一种步态规划方法、装置、计算机可读存储介质及机器人,以解决现有的步态规划方法难以保证机器人在跳跃或者奔跑等运动场景中的稳定性的问题。
技术解决方案
本申请实施例的第一方面提供了一种步态规划方法,可以包括:
确定机器人的基准腿长和腿长变化幅度;
根据所述基准腿长、所述腿长变化幅度和预设的循环激励函数对所述机器人的腿长进行轨迹规划。
在第一方面的一种具体实现中,所述根据所述基准腿长、所述腿长变化幅度和预设的循环激励函数对所述机器人的腿长进行轨迹规划,可以包括:
在所述机器人进行跳跃运动的支撑期,根据下式对所述机器人的双腿腿长进行轨迹规划:
l=l 0+Af(t)
其中,l 0为所述基准腿长,A为所述腿长变化幅度,f为所述循环激励函数,且f∈[-1,1],t为时间变量,l为所述机器人的双腿腿长。
在第一方面的一种具体实现中,所述根据所述基准腿长、所述腿长变化幅度和预设的循环激励函数对所述机器人的腿长进行轨迹规划,可以包括:
在所述机器人进行奔跑运动时,根据下式对所述机器人的左腿腿长进行轨迹规划:
l L=l 0+Af(t,-φ 2)
其中,φ 2为第一极值点与第二极值点之间的相位差,所述第一极值点为所述机器人的左腿腿长取得最大值时所对应的轨迹点,所述第二极值点为所述机器人的右腿腿长取得最大值时所对应的轨迹点,l L为所述机器人的左腿腿长。
在第一方面的一种具体实现中,所述根据所述基准腿长、所述腿长变化幅度和预设的循环激励函数对所述机器人的腿长进行轨迹规划,可以包括:
在所述机器人进行奔跑运动时,根据下式对所述机器人的右腿腿长进行轨迹规划:
Figure PCTCN2021125047-appb-000001
其中,d为预设的插值函数,S为预设的起始点,B 2为预设的右腿着陆点,D 1和D 2为所述机器人的右腿腿长等于所述基准腿长时所对应的轨迹点,l R为所述机器人的右腿腿长。
在第一方面的一种具体实现中,所述插值函数可以根据下式进行设置:
d(x 0,x 1,v 0,v 1,a 0,a 1,t 0,t 1,t)=q 0+q 1t+q 2t 2+q 3t 3+q 4t 4+q 5t 5
其中,x 0、v 0、a 0、t 0分别为D 1对应的位置、速度、加速度以及时间,x 1、v 1、a 1、t 1分别为D 2点对应的位置、速度、加速度以及时间,q 0、q 1、q 2、q 3、q 4和q 5分别为五次多项式的各个待定系数。
在第一方面的一种具体实现中,还可以包括:
构建如下式所示的线性方程组:
Ax=b
Figure PCTCN2021125047-appb-000002
Figure PCTCN2021125047-appb-000003
Figure PCTCN2021125047-appb-000004
x=[q 5,q 4,q 3,q 2,q 1,q 0] T
b=[x 0,v 0,a 0,x 1,v 1,a 1] T
对所述线性方程组进行求解,得到所述五次多项式的各个待定系数。
在第一方面的一种具体实现中,所述循环激励函数可以根据下式进行设置:
f(t,φ)=sign(s)h(|s|)
Figure PCTCN2021125047-appb-000005
s=2*mod((t+φ)/T+1/2,1)–1
其中,mod为求余函数,T为预设的周期,sign为符号函数,c为预设的常数,tanh为双曲正切函数,φ为预设的相位,|s|代表s的绝对值。
本申请实施例的第二方面提供了一种步态规划装置,可以包括:
参数确定模块,用于确定机器人的基准腿长和腿长变化幅度;
腿长规划模块,用于根据所述基准腿长、所述腿长变化幅度和预设的循环激励函数对所述机器人的腿长进行轨迹规划。
在第二方面的一种具体实现中,所述腿长规划模块可以包括:
跳跃双腿规划单元,用于在所述机器人进行跳跃运动的支撑期,根据下式对所述机器人的双腿腿长进行轨迹规划:
l=l 0+Af(t)
其中,l 0为所述基准腿长,A为所述腿长变化幅度,f为所述循环激励函数,且f∈[-1,1],t为时间变量,l为所述机器人的双腿腿长。
在第二方面的一种具体实现中,所述腿长规划模块可以包括:
奔跑左腿规划单元,用于在所述机器人进行奔跑运动时,根据下式对所述机器人的左腿腿长进行轨迹规划:
l L=l 0+Af(t,-φ 2)
其中,φ 2为第一极值点与第二极值点之间的相位差,所述第一极值点为所述机器人的 左腿腿长取得最大值时所对应的轨迹点,所述第二极值点为所述机器人的右腿腿长取得最大值时所对应的轨迹点,l L为所述机器人的左腿腿长。
在第二方面的一种具体实现中,所述腿长规划模块可以包括:
奔跑右腿规划单元,用于在所述机器人进行奔跑运动时,根据下式对所述机器人的右腿腿长进行轨迹规划:
Figure PCTCN2021125047-appb-000006
其中,d为预设的插值函数,S为预设的起始点,B 2为预设的右腿着陆点,D 1和D 2为所述机器人的右腿腿长等于所述基准腿长时所对应的轨迹点,l R为所述机器人的右腿腿长。
在第二方面的一种具体实现中,所述腿长规划模块可以包括:
插值函数设置单元,用于根据下式对所述插值函数进行设置:
d(x 0,x 1,v 0,v 1,a 0,a 1,t 0,t 1,t)=q 0+q 1t+q 2t 2+q 3t 3+q 4t 4+q 5t 5
其中,x 0、v 0、a 0、t 0分别为D 1对应的位置、速度、加速度以及时间,x 1、v 1、a 1、t 1分别为D 2点对应的位置、速度、加速度以及时间,q 0、q 1、q 2、q 3、q 4和q 5分别为五次多项式的各个待定系数。
在第二方面的一种具体实现中,所述腿长规划模块可以包括:
待定系数求解单元,用于构建如下式所示的线性方程组,并对所述线性方程组进行求解,得到所述五次多项式的各个待定系数:
Ax=b
Figure PCTCN2021125047-appb-000007
Figure PCTCN2021125047-appb-000008
Figure PCTCN2021125047-appb-000009
x=[q 5,q 4,q 3,q 2,q 1,q 0] T
b=[x 0,v 0,a 0,x 1,v 1,a 1] T
在第二方面的一种具体实现中,所述腿长规划模块可以包括:
循环激励函数设置单元,用于根据下式对所述循环激励函数进行设置:
f(t,φ)=sign(s)h(|s|)
Figure PCTCN2021125047-appb-000010
s=2*mod((t+φ)/T+1/2,1)–1
其中,mod为求余函数,T为预设的周期,sign为符号函数,c为预设的常数,tanh为双曲正切函数,φ为预设的相位,|s|代表s的绝对值。
本申请实施例的第三方面提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述任一种步态规划方法的步骤。
本申请实施例的第四方面提供了一种机器人,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述任一种步态规划方法的步骤。
本申请实施例的第五方面提供了一种计算机程序产品,当计算机程序产品在机器人上运行时,使得机器人执行上述任一种步态规划方法的步骤。
有益效果
本申请实施例与现有技术相比存在的有益效果是:本申请实施例根据机器人跳跃或者奔跑等运动场景的特点,对机器人在运动过程中的腿长进行轨迹规划,使得机器人的腿长变化与运动过程相适应,大大提高了机器人在跳跃或者奔跑等运动场景中的稳定性。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
图1为机器人的三种步态阶段的示意图;
图2为激励基函数的示意图;
图3为第二循环激励函数和第一循环激励函数的对比示意图;
图4为机器人进行跳跃运动时的模型示意图;
图5为机器人进行跳跃运动时的腿长曲线及接触力曲线示意图;
图6为机器人进行奔跑运动时的模型示意图;
图7为机器人进行奔跑运动时的腿长曲线示意图;
图8为本申请实施例中一种机器人的示意框图。
本发明的实施方式
为使得本申请的发明目的、特征、优点能够更加的明显和易懂,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,下面所描述的实施例仅仅是本申请一部分实施例,而非全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本申请保护的范围。
应当理解,当在本说明书和所附权利要求书中使用时,术语“包括”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
还应当理解,在此本申请说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本申请。如在本申请说明书和所附权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。
还应当进一步理解,在本申请说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
如在本说明书和所附权利要求书中所使用的那样,术语“如果”可以依据上下文被解释为“当...时”或“一旦”或“响应于确定”或“响应于检测到”。类似地,短语“如果确定”或“如果检测到[所描述条件或事件]”可以依据上下文被解释为意指“一旦确定”或“响应于确定”或“一旦检测到[所描述条件或事件]”或“响应于检测到[所描述条件或事件]”。
另外,在本申请的描述中,术语“第一”、“第二”、“第三”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
在本申请实施例中,可以将机器人的步态划分为如图1所示的三种阶段,其中,双腿均与地面接触的阶段为双腿支撑期,只有一条腿与地面接触的阶段为单腿支撑期,双腿均 不与地面接触的阶段为腾空期。
对于稳定的跳跃过程而言,机器人的步态就是双腿支撑期与腾空期的循环切换,即:双腿支撑期→腾空期→双腿支撑期→腾空期→…。
对于稳定的奔跑过程而言,机器人的步态就是单腿支撑期与腾空期的循环切换,且在各个单腿支撑期左腿和右腿交替作为支撑腿,即:单腿支撑期(支撑腿为左腿)→腾空期→单腿支撑期(支撑腿为右腿)→腾空期→单腿支撑期(支撑腿为左腿)→腾空期→单腿支撑期(支撑腿为右腿)→腾空期→…,或者:单腿支撑期(支撑腿为右腿)→腾空期→单腿支撑期(支撑腿为左腿)→腾空期→单腿支撑期(支撑腿为右腿)→腾空期→单腿支撑期(支撑腿为左腿)→腾空期→…。
在本申请实施例中,可以根据机器人跳跃或者奔跑等运动场景的特点,对机器人在运动过程中的腿长进行轨迹规划,使得机器人的腿长变化与运动过程相适应,从而提高机器人在跳跃或者奔跑等运动场景中的稳定性。
具体地,首先可以确定机器人的基准腿长和腿长变化幅度。
此处可以将基准腿长记为l 0,将腿长变化幅度记为A,两者的具体取值均可以根据机器人的实际物理结构进行设置,本申请实施例对其不作具体限定。
然后可以根据基准腿长、腿长变化幅度和预设的循环激励函数对机器人的腿长进行轨迹规划。
此处可以将循环激励函数记为f,该函数随着时间变量t进行循环的周期变化,且f∈[-1,1],该函数可以根据实际情况进行设置,例如,可以设置f(t)=sinwt,其中w为预设的圆频率,其具体取值可以根据实际情况进行设置,本申请实施例对其不作具体限定。为了便于区分,可以将这种循环激励函数记为第一循环激励函数,第一循环激励函数会使得机器人在开始腾空时的速度较慢,并不能有效地腾空到更高的高度。
图2所示为一个周期为2,相位为0的锯齿函数,此处将其记为激励基函数,在本申请实施例的一种具体实现中,可以基于这一激励基函数构造出如下式所示的循环激励函数:
f(t,φ)=sign(s)h(|s|)
Figure PCTCN2021125047-appb-000011
s=2*mod((t+φ)/T+1/2,1)–1
其中,mod为求余函数,T为预设的周期,sign为符号函数,c为预设的常数,且c>1.6,其具体取值可以根据实际情况进行设置,本申请实施例对其不作具体限定,tanh为双曲正切函数,|s|代表s的绝对值,φ为预设的相位,当φ为0时,可以将f(t,φ)简写为f(t)。为了便于区分,可以将这种循环激励函数记为第二循环激励函数。
图3所示即为第二循环激励函数和第一循环激励函数的对比示意图,其中,实线所示为第一循环激励函数,虚线所示为第二循环激励函数。从图中可以看出,在前1/4周期中,第二循环激励函数的值大于第一循环激励函数的值,说明使用第二循环激励函数时的速度更大;而且,在峰值处,第二循环激励函数的值变化较为平缓,说明第二循环激励函数在腾空时较为稳定,更加适合跳跃及奔跑等运动场景。
当机器人进行跳跃运动时,可以将机器人简化为如图4所示的倒立摆模型,其中,m为机器人的质量,l为机器人的双腿腿长,在跳跃运动时,机器人的左腿腿长和右腿腿长是相同的,均为l,F z为机器人与地面的接触力,图(a)所示为双腿支撑期的情况,此时F z>0,图(b)所示为腾空期的情况,此时F z=0。
在机器人进行跳跃运动时,可以根据下式对机器人的双腿腿长进行轨迹规划:
l=l 0+Af(t)
结果如图5上图中的粗线所示。
在机器人的双腿腿长变化的过程中,机器人与地面的接触力也会随之变化,如下式所示:
Figure PCTCN2021125047-appb-000012
其中,g为重力加速度。
结果如图5下图中的粗线所示,图中的K表示腾空点,φ 1表示腾空时刻的相位移动。
但考虑到在实际场景中,机器人与地面的接触力在腾空期恒为0,因此,可以仅在双腿支撑期时按照图5中的粗线所示进行运动,而在腾空期时按照图5中的细线所示进行运动,此时腿长遵循抛物线运动,即竖直上抛的自由落体运动。
当机器人进行奔跑运动时,可以将机器人简化为如图6所示的模型,其中,l L为机器人的左腿腿长,l R为机器人的右腿腿长。
图7所示为机器人进行奔跑运动时的腿长曲线示意图。其中,S为起始点,A 1为机器人的右腿腾空点,A 2为机器人的左腿腾空点,B 1为机器人的左腿着陆点,B 2为机器人的右腿着陆点,C 1和C 2为机器人的左腿腿长等于基准腿长时所对应的轨迹点,D 1和D 2为机器人的右腿腿长等于基准腿长时所对应的轨迹点。左腿l L的运动轨迹为C 1→B 1→A 2→C 2,右腿l R的运动轨迹为S→A 1→D 1→D 2→B 2
从S到A 1(S→A 1)为右腿支撑期,在此期间可以根据下式对机器人的右腿腿长进行轨迹规划:
l R=l 0+Af(t)
由于腾空期的自由落地性质,可以根据下式计算出腾空期的时长:
Figure PCTCN2021125047-appb-000013
其中,
Figure PCTCN2021125047-appb-000014
为机器人在A 1点的竖直速度,T flight为腾空期的时长。
从B 1到A 2(B 1→A 2)为左腿支撑期,在此期间可以根据下式对机器人的左腿腿长进行轨迹规划:
l L=l 0+Af(t,-φ 2)
其中,φ 2为第一极值点与第二极值点之间的相位差,第一极值点为机器人的左腿腿长取得最大值时所对应的轨迹点,第二极值点为机器人的右腿腿长取得最大值时所对应的轨迹点,且满足:
Figure PCTCN2021125047-appb-000015
由此可以根据下式计算出支撑期的时长:
Figure PCTCN2021125047-appb-000016
其中,T support即为支撑期的时长。
进一步地,为了保证左腿在B 1着陆的稳定性(即轨迹平滑),可以将B 1→A 2段的轨迹拓展到C 1→B 1→A 2→C 2;为了保证右腿在A 1腾空的稳定性,可以将S→A 1段的轨迹拓展到S→A 1→D 1;为了保证右腿在B 2着陆的稳定性,可以将S→A 1→D 1段的轨迹平移到D 2→B 2
综合以上分析,可以根据下式对机器人的左腿腿长进行轨迹规划:
l L=l 0+Af(t,-φ 2),C 1→B 1→A 2→C 2
可以根据下式对机器人的右腿腿长进行轨迹规划:
Figure PCTCN2021125047-appb-000017
其中,d为预设的插值函数。在本申请实施例的一种具体实现中,该插值函数可以根据下式进行设置:
d(x 0,x 1,v 0,v 1,a 0,a 1,t 0,t 1,t)=q 0+q 1t+q 2t 2+q 3t 3+q 4t 4+q 5t 5
其中,x 0、v 0、a 0、t 0分别为D 1对应的位置、速度、加速度以及时间,其具体取值可以根据S→D 1段的规划得到,x 1、v 1、a 1、t 1分别为D 2点对应的位置、速度、加速度以及时间,其具体取值可以根据D 2→B 2段的规划得到,q 0、q 1、q 2、q 3、q 4和q 5分别为五次多项式的各个待定系数。
为了求解出各个待定系数,可以构建如下式所示的线性方程组:
Ax=b
Figure PCTCN2021125047-appb-000018
Figure PCTCN2021125047-appb-000019
Figure PCTCN2021125047-appb-000020
x=[q 5,q 4,q 3,q 2,q 1,q 0] T
b=[x 0,v 0,a 0,x 1,v 1,a 1] T
对该线性方程组进行求解,即可得到各个待定系数,则右腿腿长在D 1→D 2段的轨迹规划也可确定。
综上所述,本申请实施例根据机器人跳跃或者奔跑等运动场景的特点,对机器人在运动过程中的腿长进行轨迹规划,使得机器人的腿长变化与运动过程相适应,大大提高了机器人在跳跃或者奔跑等运动场景中的稳定性。
应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。
对应于上文实施例所述的一种步态规划方法,本申请实施例中的一种步态规划装置可以包括:
参数确定模块,用于确定机器人的基准腿长和腿长变化幅度;
腿长规划模块,用于根据所述基准腿长、所述腿长变化幅度和预设的循环激励函数对所述机器人的腿长进行轨迹规划。
在本申请实施例的一种具体实现中,所述腿长规划模块可以包括:
跳跃双腿规划单元,用于在所述机器人进行跳跃运动的支撑期,根据下式对所述机器人的双腿腿长进行轨迹规划:
l=l 0+Af(t)
其中,l 0为所述基准腿长,A为所述腿长变化幅度,f为所述循环激励函数,且f∈[-1,1],t为时间变量,l为所述机器人的双腿腿长。
在本申请实施例的一种具体实现中,所述腿长规划模块可以包括:
奔跑左腿规划单元,用于在所述机器人进行奔跑运动时,根据下式对所述机器人的左 腿腿长进行轨迹规划:
l L=l 0+Af(t,-φ 2)
其中,φ 2为第一极值点与第二极值点之间的相位差,所述第一极值点为所述机器人的左腿腿长取得最大值时所对应的轨迹点,所述第二极值点为所述机器人的右腿腿长取得最大值时所对应的轨迹点,l L为所述机器人的左腿腿长。
在本申请实施例的一种具体实现中,所述腿长规划模块可以包括:
奔跑右腿规划单元,用于在所述机器人进行奔跑运动时,根据下式对所述机器人的右腿腿长进行轨迹规划:
Figure PCTCN2021125047-appb-000021
其中,d为预设的插值函数,S为预设的起始点,B 2为预设的右腿着陆点,D 1和D 2为所述机器人的右腿腿长等于所述基准腿长时所对应的轨迹点,l R为所述机器人的右腿腿长。
在本申请实施例的一种具体实现中,所述腿长规划模块可以包括:
插值函数设置单元,用于根据下式对所述插值函数进行设置:
d(x 0,x 1,v 0,v 1,a 0,a 1,t 0,t 1,t)=q 0+q 1t+q 2t 2+q 3t 3+q 4t 4+q 5t 5
其中,x 0、v 0、a 0、t 0分别为D 1对应的位置、速度、加速度以及时间,x 1、v 1、a 1、t 1分别为D 2点对应的位置、速度、加速度以及时间,q 0、q 1、q 2、q 3、q 4和q 5分别为五次多项式的各个待定系数。
在本申请实施例的一种具体实现中,所述腿长规划模块可以包括:
待定系数求解单元,用于构建如下式所示的线性方程组,并对所述线性方程组进行求解,得到所述五次多项式的各个待定系数:
Ax=b
Figure PCTCN2021125047-appb-000022
Figure PCTCN2021125047-appb-000023
Figure PCTCN2021125047-appb-000024
x=[q 5,q 4,q 3,q 2,q 1,q 0] T
b=[x 0,v 0,a 0,x 1,v 1,a 1] T
在本申请实施例的一种具体实现中,所述腿长规划模块可以包括:
循环激励函数设置单元,用于根据下式对所述循环激励函数进行设置:
f(t,φ)=sign(s)h(|s|)
Figure PCTCN2021125047-appb-000025
s=2*mod((t+φ)/T+1/2,1)–1
其中,mod为求余函数,T为预设的周期,sign为符号函数,c为预设的常数,tanh为双 曲正切函数,φ为预设的相位,|s|代表s的绝对值。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的装置,模块和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
图8示出了本申请实施例提供的一种机器人的示意框图,为了便于说明,仅示出了与本申请实施例相关的部分。
如图8所示,该实施例的机器人8包括:处理器80、存储器81以及存储在所述存储器81中并可在所述处理器80上运行的计算机程序82。所述处理器80执行所述计算机程序82时实现上述各个步态规划方法实施例中的步骤。或者,所述处理器80执行所述计算机程序82时实现上述各装置实施例中各模块/单元的功能。
示例性的,所述计算机程序82可以被分割成一个或多个模块/单元,所述一个或者多个模块/单元被存储在所述存储器81中,并由所述处理器80执行,以完成本申请。所述一个或多个模块/单元可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述所述计算机程序82在所述机器人8中的执行过程。
本领域技术人员可以理解,图8仅仅是机器人8的示例,并不构成对机器人8的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如所述机器人8还可以包括输入输出设备、网络接入设备、总线等。
所述处理器80可以是中央处理单元(Central Processing Unit,CPU),还可以是其它通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其它可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
所述存储器81可以是所述机器人8的内部存储单元,例如机器人8的硬盘或内存。所述存储器81也可以是所述机器人8的外部存储设备,例如所述机器人8上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。进一步地,所述存储器81还可以既包括所述机器人8的内部存储单元也包括外部存储设备。所述存储器81用于存储所述计算机程序以及所述机器人8所需的其它程序和数据。所述存储器81还可以用于暂时地存储已经输出或者将要输出的数据。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将所述装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。实施例中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本申请的保护范围。上述***中单元、模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可 以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
在本申请所提供的实施例中,应该理解到,所揭露的装置/机器人和方法,可以通过其它的方式实现。例如,以上所描述的装置/机器人实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个***,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通讯连接可以是通过一些接口,装置或单元的间接耦合或通讯连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的模块/单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读存储介质中。基于这样的理解,本申请实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读存储介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,所述计算机可读存储介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读存储介质不包括电载波信号和电信信号。
以上所述实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围,均应包含在本申请的保护范围之内。

Claims (10)

  1. 一种步态规划方法,其特征在于,包括:
    确定机器人的基准腿长和腿长变化幅度;
    根据所述基准腿长、所述腿长变化幅度和预设的循环激励函数对所述机器人的腿长进行轨迹规划。
  2. 根据权利要求1所述的步态规划方法,其特征在于,所述根据所述基准腿长、所述腿长变化幅度和预设的循环激励函数对所述机器人的腿长进行轨迹规划,包括:
    在所述机器人进行跳跃运动的支撑期,根据下式对所述机器人的双腿腿长进行轨迹规划:
    l=l 0+Af(t)
    其中,l 0为所述基准腿长,A为所述腿长变化幅度,f为所述循环激励函数,且f∈[-1,1],t为时间变量,l为所述机器人的双腿腿长。
  3. 根据权利要求1所述的步态规划方法,其特征在于,所述根据所述基准腿长、所述腿长变化幅度和预设的循环激励函数对所述机器人的腿长进行轨迹规划,包括:
    在所述机器人进行奔跑运动时,根据下式对所述机器人的左腿腿长进行轨迹规划:
    l L=l 0+Af(t,-φ 2)
    其中,l 0为所述基准腿长,A为所述腿长变化幅度,f为所述循环激励函数,且f∈[-1,1],t为时间变量,φ 2为第一极值点与第二极值点之间的相位差,所述第一极值点为所述机器人的左腿腿长取得最大值时所对应的轨迹点,所述第二极值点为所述机器人的右腿腿长取得最大值时所对应的轨迹点,l L为所述机器人的左腿腿长。
  4. 根据权利要求1所述的步态规划方法,其特征在于,所述根据所述基准腿长、所述腿长变化幅度和预设的循环激励函数对所述机器人的腿长进行轨迹规划,包括:
    在所述机器人进行奔跑运动时,根据下式对所述机器人的右腿腿长进行轨迹规划:
    Figure PCTCN2021125047-appb-100001
    其中,l 0为所述基准腿长,A为所述腿长变化幅度,f为所述循环激励函数,且f∈[-1,1],t为时间变量,φ 2为第一极值点与第二极值点之间的相位差,所述第一极值点为所述机器人的左腿腿长取得最大值时所对应的轨迹点,所述第二极值点为所述机器人的右腿腿长取得最大值时所对应的轨迹点,d为预设的插值函数,S为预设的起始点,B 2为预设的右腿着陆点,D 1和D 2为所述机器人的右腿腿长等于所述基准腿长时所对应的轨迹点,l R为所述机器人的右腿腿长。
  5. 根据权利要求4所述的步态规划方法,其特征在于,所述插值函数根据下式进行设置:
    d(x 0,x 1,v 0,v 1,a 0,a 1,t 0,t 1,t)=q 0+q 1t+q 2t 2+q 3t 3+q 4t 4+q 5t 5
    其中,x 0、v 0、a 0、t 0分别为D 1对应的位置、速度、加速度以及时间,x 1、v 1、a 1、t 1分别为D 2点对应的位置、速度、加速度以及时间,q 0、q 1、q 2、q 3、q 4和q 5分别为五次多项式的各个待定系数。
  6. 根据权利要求5所述的步态规划方法,其特征在于,还包括:
    构建如下式所示的线性方程组:
    Ax=b
    Figure PCTCN2021125047-appb-100002
    Figure PCTCN2021125047-appb-100003
    Figure PCTCN2021125047-appb-100004
    x=[q 5,q 4,q 3,q 2,q 1,q 0] T
    b=[x 0,v 0,a 0,x 1,v 1,a 1] T
    对所述线性方程组进行求解,得到所述五次多项式的各个待定系数。
  7. 根据权利要求1至6中任一项所述的步态规划方法,其特征在于,所述循环激励函数根据下式进行设置:
    f(t,φ)=sign(s)h(|s|)
    Figure PCTCN2021125047-appb-100005
    s=2*mod((t+φ)/T+1/2,1)–1
    其中,mod为求余函数,T为预设的周期,sign为符号函数,c为预设的常数,tanh为双曲正切函数,t为时间变量,φ为预设的相位,f为所述循环激励函数,|s|代表s的绝对值。
  8. 一种步态规划装置,其特征在于,包括:
    参数确定模块,用于确定机器人的基准腿长和腿长变化幅度;
    腿长规划模块,用于根据所述基准腿长、所述腿长变化幅度和预设的循环激励函数对所述机器人的腿长进行轨迹规划。
  9. 一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至7中任一项所述的步态规划方法的步骤。
  10. 一种机器人,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至7中任一项所述的步态规划方法的步骤。
PCT/CN2021/125047 2021-04-30 2021-10-20 一种步态规划方法、装置、计算机可读存储介质及机器人 WO2022227426A1 (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US17/678,030 US11926056B2 (en) 2021-04-30 2022-02-23 Gait planning method and robot using the same and computer readable storage medium

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202110479948.X 2021-04-30
CN202110479948.XA CN113253724B (zh) 2021-04-30 2021-04-30 一种步态规划方法、装置、计算机可读存储介质及机器人

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US17/678,030 Continuation US11926056B2 (en) 2021-04-30 2022-02-23 Gait planning method and robot using the same and computer readable storage medium

Publications (1)

Publication Number Publication Date
WO2022227426A1 true WO2022227426A1 (zh) 2022-11-03

Family

ID=77223340

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2021/125047 WO2022227426A1 (zh) 2021-04-30 2021-10-20 一种步态规划方法、装置、计算机可读存储介质及机器人

Country Status (3)

Country Link
US (1) US11926056B2 (zh)
CN (1) CN113253724B (zh)
WO (1) WO2022227426A1 (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113253724B (zh) * 2021-04-30 2024-05-21 深圳市优必选科技股份有限公司 一种步态规划方法、装置、计算机可读存储介质及机器人
CN115981346B (zh) * 2023-03-20 2024-06-07 深圳鹏行智能研究有限公司 机器人控制方法以及机器人

Citations (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1974871B1 (en) * 2005-12-12 2010-12-15 Honda Motor Co., Ltd. Gait creation device of leg-type mobile robot
CN103197671A (zh) * 2012-01-04 2013-07-10 中国人民解放军第二炮兵工程学院 一种仿人机器人步态规划及合成方法
US9156159B2 (en) * 2012-03-08 2015-10-13 Disney Enterprises Inc. Robot cyclic locomotion using a dynamic object
CN107958221A (zh) * 2017-12-08 2018-04-24 北京理工大学 一种基于卷积神经网络的人体运动步态分类方法
CN108175635A (zh) * 2017-12-07 2018-06-19 宁波杰曼智能科技有限公司 一种基于稳定性准则的下肢康复外骨骼机器人步态规划方法
US10081104B1 (en) * 2015-09-15 2018-09-25 Boston Dynamics, Inc. Determination of robotic step path
CN110842921A (zh) * 2019-11-19 2020-02-28 山东大学 四足机器人大坡度地形或高障碍物攀爬跨越的步态规划方法
US20200117198A1 (en) * 2018-10-12 2020-04-16 Boston Dynamics, Inc. Terrain Aware Step Planning System
CN111208809A (zh) * 2018-11-21 2020-05-29 深圳市优必选科技有限公司 机器人步态规划方法及终端设备
CN111736615A (zh) * 2020-08-04 2020-10-02 深圳市优必选科技股份有限公司 一种步态规划方法、装置、计算机可读存储介质及机器人
CN112060075A (zh) * 2020-07-21 2020-12-11 深圳先进技术研究院 步态生成网络的训练方法、训练设备以及存储介质
CN112572453A (zh) * 2020-12-21 2021-03-30 广州大学 机器人在斜坡行走的步态规划方法、装置、设备及介质
CN112720462A (zh) * 2020-12-09 2021-04-30 深圳先进技术研究院 一种机器人的轨迹规划***和方法
CN113253724A (zh) * 2021-04-30 2021-08-13 深圳市优必选科技股份有限公司 一种步态规划方法、装置、计算机可读存储介质及机器人

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7295892B2 (en) * 2002-12-31 2007-11-13 Massachusetts Institute Of Technology Speed-adaptive control scheme for legged running robots
JP4332393B2 (ja) * 2003-09-16 2009-09-16 株式会社国際電気通信基礎技術研究所 2足歩行移動体および2足歩行制御方法
JP4644833B2 (ja) * 2004-03-31 2011-03-09 株式会社国際電気通信基礎技術研究所 2足歩行移動装置
US11278433B2 (en) * 2005-03-31 2022-03-22 Massachusetts Institute Of Technology Powered ankle-foot prosthesis
US10307272B2 (en) * 2005-03-31 2019-06-04 Massachusetts Institute Of Technology Method for using a model-based controller for a robotic leg
JP5284923B2 (ja) * 2009-10-28 2013-09-11 本田技研工業株式会社 脚式移動ロボットの制御装置
US9120512B2 (en) * 2010-04-22 2015-09-01 Honda Motor Co., Ltd. Control device and gait generating device for bipedal mobile robot
US9221177B2 (en) * 2012-04-18 2015-12-29 Massachusetts Institute Of Technology Neuromuscular model-based sensing and control paradigm for a robotic leg
CN102736628B (zh) * 2012-06-12 2014-05-07 华中科技大学 一种具有环境适应性的足式机器人稳定性控制方法及***
US9387588B1 (en) * 2014-08-25 2016-07-12 Google Inc. Handling gait disturbances with asynchronous timing
US9618937B1 (en) * 2014-08-25 2017-04-11 Google Inc. Slip detection using robotic limbs
JP6356033B2 (ja) * 2014-09-29 2018-07-11 本田技研工業株式会社 移動体の制御装置
US10052062B2 (en) * 2015-02-12 2018-08-21 Hrl Laboratories, Llc System and method for assistive gait intervention and fall prevention
WO2017190213A1 (en) * 2016-05-02 2017-11-09 Michael Kelly Dynamic motion simulation methods and systems
CN109478251B (zh) * 2017-05-23 2021-01-05 安徽寒武纪信息科技有限公司 处理方法及加速装置
WO2019060791A1 (en) * 2017-09-22 2019-03-28 North Carolina State University HIP EXOSQUELET
CN112698650B (zh) * 2020-12-16 2024-05-07 深圳市优必选科技股份有限公司 仿人机器人的类人步态控制方法、装置、设备及存储介质

Patent Citations (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1974871B1 (en) * 2005-12-12 2010-12-15 Honda Motor Co., Ltd. Gait creation device of leg-type mobile robot
CN103197671A (zh) * 2012-01-04 2013-07-10 中国人民解放军第二炮兵工程学院 一种仿人机器人步态规划及合成方法
US9156159B2 (en) * 2012-03-08 2015-10-13 Disney Enterprises Inc. Robot cyclic locomotion using a dynamic object
US10081104B1 (en) * 2015-09-15 2018-09-25 Boston Dynamics, Inc. Determination of robotic step path
CN108175635A (zh) * 2017-12-07 2018-06-19 宁波杰曼智能科技有限公司 一种基于稳定性准则的下肢康复外骨骼机器人步态规划方法
CN107958221A (zh) * 2017-12-08 2018-04-24 北京理工大学 一种基于卷积神经网络的人体运动步态分类方法
US20200117198A1 (en) * 2018-10-12 2020-04-16 Boston Dynamics, Inc. Terrain Aware Step Planning System
CN111208809A (zh) * 2018-11-21 2020-05-29 深圳市优必选科技有限公司 机器人步态规划方法及终端设备
CN110842921A (zh) * 2019-11-19 2020-02-28 山东大学 四足机器人大坡度地形或高障碍物攀爬跨越的步态规划方法
CN112060075A (zh) * 2020-07-21 2020-12-11 深圳先进技术研究院 步态生成网络的训练方法、训练设备以及存储介质
CN111736615A (zh) * 2020-08-04 2020-10-02 深圳市优必选科技股份有限公司 一种步态规划方法、装置、计算机可读存储介质及机器人
CN112720462A (zh) * 2020-12-09 2021-04-30 深圳先进技术研究院 一种机器人的轨迹规划***和方法
CN112572453A (zh) * 2020-12-21 2021-03-30 广州大学 机器人在斜坡行走的步态规划方法、装置、设备及介质
CN113253724A (zh) * 2021-04-30 2021-08-13 深圳市优必选科技股份有限公司 一种步态规划方法、装置、计算机可读存储介质及机器人

Also Published As

Publication number Publication date
CN113253724A (zh) 2021-08-13
CN113253724B (zh) 2024-05-21
US20220355479A1 (en) 2022-11-10
US11926056B2 (en) 2024-03-12

Similar Documents

Publication Publication Date Title
WO2022227426A1 (zh) 一种步态规划方法、装置、计算机可读存储介质及机器人
CN111179311B (zh) 多目标跟踪方法、装置及电子设备
CN109883423B (zh) 基于卡尔曼滤波的定位方法、***、设备及存储介质
WO2022198994A1 (zh) 一种机械臂运动规划方法、装置、可读存储介质及机械臂
WO2022134144A1 (zh) 一种机器人质心规划方法、装置、可读存储介质及机器人
WO2019183750A1 (zh) 一种惯量传感器的校正方法、装置、终端设备和存储介质
CN111736615B (zh) 一种步态规划方法、装置、计算机可读存储介质及机器人
WO2022198993A1 (zh) 一种机械臂运动规划方法、装置、可读存储介质及机械臂
CN108470364A (zh) 一种曲线拟合方法和装置
CN111288995B (zh) 移动机器人的路径规划方法、路径规划装置及终端设备
CN110287229A (zh) 一种数据统计处理方法及装置
CN106248100A (zh) 一种计步方法和终端
CN110634183A (zh) 地图构建方法、装置和无人设备
WO2021056450A1 (zh) 图像模板的更新方法、设备及存储介质
CN109870172B (zh) 计步检测方法、装置、设备及存储介质
CN106303190A (zh) 变焦跟踪曲线矫正方法及装置
CN107360547B (zh) 一种室内定位中静止状态下防止定位抖动的聚类处理方法
CN112720455A (zh) 最优关节加速度与减速度计算方法、装置及其应用
US20230064815A1 (en) Gait control method, biped robot, and computer-readable storage medium
CN114454981B (zh) 双足机器人的弹跳运动控制方法、装置及双足机器人
CN112734810B (zh) 一种障碍物追踪方法及装置
CN109582300A (zh) 基于路径的代码变更分析方法、装置及设备
CN105979119A (zh) 一种红外摇臂跟踪运动数据的滤波方法和终端
CN103023654A (zh) 智能遥控***识别过程中的去除抖动方法及装置
TWI766522B (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: 21938889

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: 21938889

Country of ref document: EP

Kind code of ref document: A1