WO2022199080A1 - 机器人迈步控制方法、装置、机器人控制设备及存储介质 - Google Patents
机器人迈步控制方法、装置、机器人控制设备及存储介质 Download PDFInfo
- Publication number
- WO2022199080A1 WO2022199080A1 PCT/CN2021/131892 CN2021131892W WO2022199080A1 WO 2022199080 A1 WO2022199080 A1 WO 2022199080A1 CN 2021131892 W CN2021131892 W CN 2021131892W WO 2022199080 A1 WO2022199080 A1 WO 2022199080A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- step size
- leg
- robot
- biped robot
- current
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Ceased
Links
Images
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/02—Control of position or course in two dimensions
- G05D1/021—Control of position or course in two dimensions specially adapted to land vehicles
- G05D1/0212—Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory
- G05D1/0223—Control 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
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Program-controlled manipulators
- B25J9/16—Program controls
- B25J9/1602—Program controls characterised by the control system, structure, architecture
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B62—LAND VEHICLES FOR TRAVELLING OTHERWISE THAN ON RAILS
- B62D—MOTOR VEHICLES; TRAILERS
- B62D57/00—Vehicles characterised by having other propulsion or other ground- engaging means than wheels or endless track, alone or in addition to wheels or endless track
- B62D57/02—Vehicles characterised by having other propulsion or other ground- engaging means than wheels or endless track, alone or in addition to wheels or endless track with ground-engaging propulsion means, e.g. walking members
- B62D57/032—Vehicles characterised by having other propulsion or other ground- engaging means than wheels or endless track, alone or in addition to wheels or endless track with ground-engaging propulsion means, e.g. walking members with alternately or sequentially lifted supporting base and legs; with alternately or sequentially lifted feet or skid
Definitions
- the present application relates to the technical field of robot control, and in particular, to a method, a device, a robot control device, and a storage medium for controlling the movement of a robot.
- biped robot control is an important research direction in the field of robot control technology.
- the biped robot is usually subject to external interference (for example, external push, external strong wind environment interference, etc.) and/or internal interference (for example, the increase of the weight of the robot head, the disconnection of the robot arm, etc. ) and there is instability and cannot maintain equilibrium.
- external interference for example, external push, external strong wind environment interference, etc.
- internal interference for example, the increase of the weight of the robot head, the disconnection of the robot arm, etc.
- the purpose of this application includes providing a robot step control method, device, robot control device and storage medium, which can smoothly process the step trajectory corresponding to the robot's steady growth, so that the biped robot can move according to the processed steps. After the step trajectory is running, the balance state is restored, and the step phenomenon of the biped robot is avoided, and the operation reliability of the robot is improved.
- the present application provides a robot step control method, the method comprising:
- the current swinging leg of the biped robot is controlled to move according to the planned trajectory of the leg.
- the moving step size includes the current step size of the biped robot relative to the horizontal plane in the pitch direction and the roll direction respectively
- the body balance prediction step size includes the biped robot’s current step size
- the balance desired step size includes the to-be-implemented step size of the biped robot in the pitch direction and the roll direction relative to the horizontal plane, wherein the attribution The current step size, the estimated step size, and the to-be-implemented step size in the pitch direction correspond to each other, and the current step size, the estimated step size, and the to-be-implemented step size belonging to the roll direction correspond to each other;
- the step of performing smooth transition processing on the body balance prediction step length according to the current movement step length of the biped robot, and obtaining a balance desired step length corresponding to the body balance prediction step length includes:
- the preset position influence coefficient is used to represent the influence weight value of the corresponding step size difference in the estimated step size smoothing process
- the preset speed influence coefficient is used to represent the corresponding current step size in the estimated step size smoothing process Influence weight value in the process
- the expected acceleration and the step control frame duration of the biped robot calculate the expected walking speed matching the corresponding estimated step size
- the current step size to be realized corresponding to the corresponding estimated step size of the biped robot is calculated.
- leg planning trajectory is expressed by the following equations:
- XL is used to represent the projected position of the planned leg trajectory relative to the horizontal plane in the pitch direction
- Y L is used to represent the projected position of the planned trajectory of the leg relative to the horizontal plane in the roll direction
- Z L is represented by is used to represent the leg position of the leg planning trajectory in the vertical direction
- L x is used to represent the to-be-implemented step size of the biped robot in the pitch direction relative to the horizontal plane
- L y is used to represent the biped
- T is used to represent the gait cycle of the biped robot
- t is used to represent the motion moment of the biped robot
- a, b, c and d are used for is the preset coefficient of the leg lift height of the biped robot.
- the step of controlling the current swinging leg of the biped robot to move according to the planned leg trajectory includes:
- the swing leg is controlled to move according to the target position of the end of the swing leg.
- the present application provides a robot step control device, the device comprising:
- the body balance detection module is used to detect whether the biped robot is currently in an unbalanced state
- a predicted step length obtaining module configured to obtain the current corresponding body balance predicted step length of the biped robot when it is detected that the biped robot is currently in an unbalanced state
- a step size smoothing processing module configured to perform smooth transition processing on the body balance prediction step size according to the current movement step size of the biped robot, and obtain a balance desired step size corresponding to the body balance prediction step size;
- a leg trajectory planning module configured to determine the current leg planning trajectory of the biped robot according to the desired balance step size
- a leg motion control module configured to control the current swinging leg of the biped robot to move according to the planned leg trajectory.
- the moving step size includes the current step size of the biped robot relative to the horizontal plane in the pitch direction and the roll direction respectively
- the body balance prediction step size includes the biped robot’s current step size
- the balance desired step size includes the to-be-implemented step size of the biped robot in the pitch direction and the roll direction relative to the horizontal plane, wherein the attribution The current step size, the estimated step size, and the to-be-implemented step size in the pitch direction correspond to each other, and the current step size, the estimated step size, and the to-be-implemented step size belonging to the roll direction correspond to each other;
- the step smoothing processing module includes:
- Step difference calculation submodule for each active step included in the moving step, calculate the step difference between the active step and the corresponding estimated step;
- the acceleration calculation submodule is used for calculating the corresponding estimated value according to the step difference value, the current step speed corresponding to the moving direction to which the current step size belongs, the preset position influence coefficient and the preset speed influence coefficient.
- the expected acceleration of step size matching wherein the preset position influence coefficient is used to represent the influence weight value of the corresponding step size difference in the estimated step size smoothing process, and the preset speed influence coefficient is used to represent the corresponding current step size The value of the influence weight of the speed in the smoothing process of the estimated step size;
- a walking speed calculation submodule used for calculating the expected walking speed matching the corresponding estimated step length according to the current walking speed, the desired acceleration and the step control frame duration of the biped robot;
- a step size calculation submodule used for calculating the current step to be implemented corresponding to the corresponding estimated step size of the biped robot according to the current step size, the desired step speed and the step control frame duration long.
- leg planning trajectory is expressed by the following equations:
- XL is used to represent the projected position of the planned leg trajectory relative to the horizontal plane in the pitch direction
- Y L is used to represent the projected position of the planned trajectory of the leg relative to the horizontal plane in the roll direction
- Z L is represented by is used to represent the leg position of the leg planning trajectory in the vertical direction
- L x is used to represent the to-be-implemented step size of the biped robot in the pitch direction relative to the horizontal plane
- L y is used to represent the biped
- T is used to represent the gait cycle of the biped robot
- t is used to represent the motion moment of the biped robot
- a, b, c and d are used for is the preset coefficient of the leg lift height of the biped robot.
- the leg motion control module includes:
- a leg end position determination submodule used for determining the desired position of the leg end corresponding to the current moment in the leg planning trajectory
- the swing end position determination submodule is used to load the desired position of the end of the leg onto the current swing leg of the biped robot to obtain the corresponding target position of the end of the swing leg;
- the swinging leg movement control submodule is used to control the swinging leg to move according to the target position of the end of the swinging leg.
- the present application provides a robot control device, comprising a processor and a memory, where the memory stores a computer program executable by the processor, and the processor can execute the computer program to implement the foregoing embodiments
- the present application provides a storage medium on which a computer program is stored, and when the computer program is executed by a processor, implements the robot step control method described in any one of the foregoing embodiments.
- the current body balance prediction step length of the biped robot is obtained accordingly, and the body balance prediction step length of the biped robot is calculated according to the current movement step length of the biped robot. Then, a smooth transition process is performed to obtain the desired balance step length corresponding to the body balance prediction step length, and then the leg planning trajectory corresponding to the balance expected step length is obtained, and finally the current swing leg of the biped robot is controlled according to the leg planning trajectory. It can make the biped robot return to a balanced state, avoid the phenomenon of robot step, and improve the reliability of robot operation.
- 1 is a schematic diagram of the composition of a robot control device provided by an embodiment of the present application.
- FIG. 2 is a schematic diagram of a step of a bipedal robot provided by an embodiment of the present application
- FIG. 3 is a schematic flowchart of a method for controlling a robot step according to an embodiment of the present application
- Figure 4 is a schematic diagram of the force acting on the biped robot in the pitch direction
- Figure 5 is a schematic diagram of the force acting on the biped robot in the rolling direction
- FIG. 6 is a schematic flowchart of the sub-steps included in step S230 in FIG. 3;
- FIG. 7 is a schematic diagram of a walking process of a biped robot
- FIG. 8 is a schematic flowchart of the sub-steps included in step S240 in FIG. 3;
- FIG. 9 is a schematic diagram of the composition of a robot step control device provided by an embodiment of the present application.
- FIG. 10 is a schematic diagram of the composition of the step smoothing processing module in FIG. 9;
- FIG. 11 is a schematic diagram of the composition of the leg motion control module in FIG. 9 .
- Icons 10-robot control equipment; 11-memory; 12-processor; 13-communication unit; 100-robot step control device; 110-body balance detection module; 120-prediction step size acquisition module; 130-step size smoothing processing Module; 140-leg trajectory planning module; 150-leg motion control module; 131-step difference calculation sub-module; 132-acceleration calculation sub-module; 133-step speed calculation sub-module; 134-step step calculation Sub-module; 151 - Leg end position determination sub-module; 152 - Swing end position determination sub-module; 153 - Swing leg motion control sub-module.
- FIG. 1 is a schematic diagram of the composition of a robot control device 10 provided by an embodiment of the present application.
- the robot control device 10 is used to control the running state of the biped robot, and when the biped robot loses its balance, the robot control device 10 can be used to restore the balance of the robot corresponding to the dimensional stability.
- the step trajectory is smoothed, and then the smoothed step trajectory is used to control the running of the biped robot, so as to restore the balance of the biped robot, and reduce the step trajectory used by the biped robot when restoring the balance and the loss of balance.
- the difference between the walking trajectories used at the same time can avoid the step phenomenon of the biped robot and improve the reliability of the robot.
- the robot control device 10 can be connected with the biped robot by remote communication, and can also be integrated with the biped robot, so as to realize the operation control function of the biped robot.
- the robot control device 10 may include a memory 11 , a processor 12 , a communication unit 13 and a robot step control device 100 .
- the elements of the memory 11 , the processor 12 and the communication unit 13 are directly or indirectly electrically connected to each other to realize data transmission or interaction.
- the elements of the memory 11 , the processor 12 and the communication unit 13 can be electrically connected to each other through one or more communication buses or signal lines.
- the memory 11 may be, but not limited to, a random access memory (Random Access Memory, RAM), a read only memory (Read Only Memory, ROM), a programmable read only memory (Programmable Read-Only Memory) Memory, PROM), Erasable Programmable Read-Only Memory (EPROM), Electrically Erasable Read-Only Memory (Electric Erasable Programmable Read-Only Memory, EEPROM), etc.
- RAM Random Access Memory
- ROM read only memory
- PROM programmable read only memory
- EPROM Erasable Programmable Read-Only Memory
- EEPROM Electrically Erasable Read-Only Memory
- the processor 12 may be an integrated circuit chip with signal processing capability.
- the processor 12 may be a general-purpose processor, including a central processing unit (Central Processing Unit, CPU), a graphics processing unit (Graphics Processing Unit, GPU), a network processor (Network Processor, NP), a digital signal processor (DSP) ), an application specific integrated circuit (ASIC), an off-the-shelf programmable gate array (FPGA) or other programmable logic device, at least one of a discrete gate or transistor logic device, a discrete hardware component.
- the general-purpose processor may be a microprocessor, or the processor may also be any conventional processor, etc., and may implement or execute the methods, steps, and logical block diagrams disclosed in the embodiments of this application.
- the communication unit 13 is configured to establish a communication connection between the robot control device 10 and other electronic devices through a network, and to send and receive data through the network, wherein the network includes a wired communication network and a wireless Communications network.
- the robot control device 10 may obtain the desired motion trajectory information for the biped robot from the job planning device through the communication unit 13, and send motion control instructions to the biped robot through the communication unit 13 , so that the biped robot moves according to the motion control instruction.
- the robot step control device 100 includes at least one software function module that can be stored in the memory 11 or in the operating system of the robot control device 10 in the form of software or firmware.
- the processor 12 may be configured to execute executable modules stored in the memory 11 , such as software function modules and computer programs included in the robot stepping control device 100 .
- the robot control device 10 can use the robot step control device 100 to smoothly process the step trajectory corresponding to the required dimensional stability when the biped robot is unstable, so that after the biped robot runs according to the processed step trajectory, It can correspond to restore the balance state while avoiding the step phenomenon of the biped robot, and improve the reliability of the robot operation.
- FIG. 1 is only a schematic diagram of the composition of the robot control device 10 , and the robot control device 10 may further include more or less components than those shown in FIG. 1 , or have A different configuration from that shown in Figure 1.
- Each component shown in FIG. 1 may be implemented in hardware, software, or a combination thereof.
- the robot's step movement can be described with reference to the step diagram of the biped robot shown in FIG. 2 .
- the biped robot has a double-leg support state and a single-leg support state during the entire step process.
- both legs of the biped robot can be used as support legs to support the biped robot to maintain a standing state;
- the biped robot is in a single-leg support state In the state, one leg of the biped robot will be used as a support leg to support the biped robot to maintain a standing state, and the other leg of the biped robot will be used as a swing leg that needs to change the movement trajectory.
- the movement trajectory change of the swinging leg includes the leg end position changes caused by the swinging leg raising operation, the swinging leg flying operation and the swinging leg landing operation.
- the ground when the sole of a support leg of the biped robot is in contact with the ground, the ground can be used as the origin of the world coordinate system to establish a Cartesian right-hand coordinate system, so that the positive direction of the X axis represents the forward direction of the biped robot. Make the positive direction of the Z axis face vertically upwards.
- the pitch plane formed by the X axis and the Z axis is the plane on which the biped robot can perform the pitch change operation
- the roll plane formed by the Y axis and the Z axis is the plane that the biped robot can perform. The plane of the roll change operation.
- any direction in the pitch plane is the pitch direction of the biped robot for pitching motion
- any direction in the roll plane is the roll direction for the biped robot to perform the roll motion.
- the angle between the pitching direction and the positive direction of the Z-axis is the pitch angle of the biped robot for the pitching motion
- the angle between the rolling direction and the positive direction of the Z-axis is the rolling direction of the bipedal robot.
- the roll angle of the movement is the pitch direction of the biped robot for pitching motion.
- the biped robot can determine the position distribution of its components in the whole world coordinate system based on the Cartesian right-hand coordinate system, and after receiving the motion control instruction, based on the Cartesian right-hand coordinate system The part moves to a specific position.
- the robot control device 10 in order to ensure that the robot control device 10 can perform smooth processing on the swing trajectory corresponding to the dimensionally stable length for restoring the balance of the robot when the biped robot loses its balance, and use the smoothed swing trajectory to control the bipedal robot.
- the operation of the biped robot can restore the balance of the biped robot, and at the same time, the step phenomenon of the biped robot can be avoided, and the operation reliability of the robot can be improved.
- FIG. 3 is a schematic flowchart of a robot step control method provided by an embodiment of the present application.
- the robot step control method may include steps S210 to S250.
- Step S210 detecting whether the biped robot is currently in an unbalanced state.
- the robot control device 10 can acquire the running state of the biped robot through sensing devices such as force sensors and attitude sensors installed on the biped robot, and Analysis to determine whether the biped robot is currently in an unbalanced state.
- the robot control device 10 obtains the attitude angle of the biped robot through the attitude sensor, the obtained attitude angle can be compared with the preset attitude angle threshold, and the size of the attitude angle can be compared in the When the size of the attitude angle is greater than or equal to the preset attitude angle threshold, it is determined that the biped robot is currently in an unbalanced state.
- the robot control device 10 obtains the force magnitude of the biped robot through the force sensor, the obtained force magnitude can be compared with the preset force threshold, and the magnitude of the force force obtained can be compared with the preset force threshold.
- the force is greater than or equal to the preset force threshold, it is determined that the biped robot is currently in an unbalanced state.
- step S220 when it is detected that the biped robot is currently in an unbalanced state, the current body balance prediction step length corresponding to the biped robot is obtained.
- the body balance prediction step size is used to represent the predicted step size that the biped robot should show when it recovers from an unbalanced state to a balanced state.
- the body balance prediction step size can be calculated by the robot control device 10, and can also be obtained by the robot control device 10 from other step size prediction devices through a network.
- the biped robot when the computer body balance predicts the step length, can be abstractly expressed as an inverted pendulum model in advance, and all the masses of the biped robot can be concentrated in the At the center of mass, the two legs of the biped robot are regarded as two massless telescopic pendulum rods, so that the force condition of the biped robot can be effectively expressed through the inverted pendulum model.
- the swing leg capture (Capture Point) algorithm can be used to characterize the balance recovery requirements of the biped robot to effectively constrain the step size of the biped robot in the process of walking, so as to preliminarily predict The corresponding body balance prediction step size.
- the force condition of the biped robot can be expressed by using FIG. 4 and FIG. 5 .
- the biped robot in an unbalanced state will be subjected to the force component of the destabilizing force along the attitude change direction in the pitch direction. At this time, the biped robot is in the pitch direction.
- the size of the first target speed can be calculated by the formula to express, where is used to represent the pitch angular velocity of the torso of the biped robot in the pitch direction, ⁇ is used to represent the pitch angle of the torso of the biped robot in the pitch direction, L is used to represent the leg length of the biped robot , l is used to represent the foot length of the biped robot, v 1 is used to represent the first target speed of the biped robot in the pitch direction, v d1 is used to represent the desired speed of the biped robot in the pitch direction , v push1 is used to represent the speed of the biped robot under the action of the force component corresponding to the pitch direction.
- the biped robot in an unbalanced state will be subjected to the force component of the destabilizing force along the posture change direction in the roll direction.
- the biped robot is in the lateral direction
- the magnitude of the second target speed in the rolling direction can be calculated using the formula to express, where is used to represent the roll angular velocity of the torso of the biped robot in the roll direction, ⁇ is used to represent the roll angle of the torso of the biped robot in the roll direction, d is used to represent the biped robot The width of the sole of the foot, L is used to represent the leg length of the biped robot, v 2 is used to represent the second target speed of the biped robot in the roll direction, and v d2 is used to represent the biped robot in the horizontal direction.
- the expected velocity in the roll direction, v push2 is used to represent the velocity of the biped robot under the action of the force component corresponding to the roll direction.
- the corresponding calculated body balance prediction step size can be regarded as composed of two step size components.
- the body balance prediction step size includes the relative position of the biped robot in the pitch direction.
- Step S230 performing smooth transition processing on the body balance prediction step length according to the current movement step length of the biped robot, to obtain a balance desired step length corresponding to the body balance prediction step length.
- the moving step size is used to indicate the step size used by the biped robot in an unbalanced state.
- the moving step size can be shown in the force diagrams shown in FIG. 4 and FIG. 5 .
- a step size component is separated from each of them, so that the moving step size can be regarded as composed of two step size components.
- the moving step size includes the current step of the biped robot relative to the horizontal plane in the pitch direction. , and the current step size of the biped robot relative to the horizontal plane in the roll direction.
- the robot control device 10 When the robot control device 10 performs smooth processing on the step trajectory corresponding to the dimensional steady length for restoring the balance of the robot, it can directly perform smooth transition processing on the dimensional steady length, and then use the step corresponding to the smoothed step length.
- the trajectory is used as the step trajectory that the biped robot should really use when restoring balance, so that while restoring the balance of the biped robot, the stepping trajectory used by the biped robot when restoring balance and the walking trajectory used when losing balance can be reduced.
- the difference between the trajectories can avoid the step phenomenon of the biped robot and improve the reliability of the robot.
- the basic idea of PID Proportion-Intergral-Differential, proportional-integral-derivative
- the balance desired step size will also be composed of two step size components, the balance desired step size may include the to-be-achieved step size of the biped robot relative to the horizontal plane in the pitch direction, and the biped robot in the The step size to be achieved relative to the horizontal plane in the roll direction.
- the current step size, estimated step size, and to-be-implemented step size belonging to the pitch direction will correspond to each other, while the current step size, estimated step size, and to-be-implemented step size belonging to the roll direction will be correspond to each other.
- the step S230 may include sub-steps S231 to S234.
- Sub-step S231 for each active step included in the moving step, calculate the step difference between the active step and the corresponding estimated step.
- the current step size and the body balance prediction step size included in the current step size and corresponding to the pitch direction can be obtained. Estimate the difference between the steps, and obtain the step difference corresponding to the pitch direction.
- the estimated step size corresponding to the roll direction included in the current step size and the body balance prediction step size can be obtained The difference between , and the step difference corresponding to the roll direction is obtained.
- Sub-step S232 Calculate the expected acceleration matching the corresponding estimated step size according to the step size difference, the current step speed corresponding to the moving direction to which the current step size belongs, the preset position influence coefficient and the preset speed influence coefficient.
- the current walking speed is used to represent the stepping speed in the corresponding moving direction currently exhibited by the biped robot in an unbalanced state, wherein the moving direction may include a moving direction corresponding to the pitching direction.
- the preset position influence coefficient is used to represent the influence weight value of the corresponding step size difference in the estimated step size smoothing process
- the preset speed influence coefficient is used to represent the corresponding current walking speed in the estimated step size Influence weight value during smoothing.
- the speed direction is X axis negative direction and the speed value is equal to the current step speed
- the product value between the direction speed and the preset speed influence coefficient is finally used as the expected acceleration matching the estimated step size corresponding to the pitch direction.
- the speed direction is the negative direction of the Y axis
- the speed value is equal to the current step speed
- the product value between the speed and the preset speed influence coefficient, and finally the sum of the aforementioned two product values is used as the expected acceleration that matches the estimated step size corresponding to the roll direction.
- Sub-step S233 according to the current walking speed, the expected acceleration and the step control frame duration of the biped robot, calculate the expected walking speed matching the corresponding estimated step length.
- the swing control frame duration is used to represent the unit control duration when the biped robot performs the swing motion.
- the swing control frame duration and the expected acceleration corresponding to the pitch direction may be preferentially calculated. acceleration), and then add the calculated product value to the current step speed in the moving direction corresponding to the pitch direction (the positive direction of the X axis) to obtain the estimated step corresponding to the pitch direction.
- the expected walking speed that matches the looks.
- the swing control frame duration and the expected acceleration corresponding to the roll direction can be preferentially calculated. desired acceleration), and then add the calculated product value to the current step speed in the moving direction (positive Y-axis direction) corresponding to the roll direction to obtain the Expected walking speed that matches the estimated step size.
- sub-step S234 according to the current step size, the expected walking speed and the duration of the swing control frame, the current step size to be realized corresponding to the corresponding estimated step size of the biped robot is calculated.
- the product value between the swing control frame duration and the expected step speed corresponding to the pitch direction may be calculated first, and then the calculated The product value of , and the current step size corresponding to the pitch direction are added to obtain the to-be-implemented step size that currently matches the estimated step size corresponding to the pitch direction of the biped robot.
- the product value between the swing control frame duration and the expected step speed corresponding to the roll direction can be calculated first, and then the calculated product value and The current step size corresponding to the roll direction is added to obtain the to-be-implemented step size currently matching the estimated step size corresponding to the roll direction of the biped robot.
- the present application can obtain a desired balance step length that can be correlated with the current moving step length of the biped robot, which avoids stepping steps and meets the body balance requirement by executing the above sub-steps S231 to S234.
- step S240 the current leg planning trajectory of the biped robot is determined according to the desired balance step length.
- the biped robot when the biped robot is in the state of bipedal support, there is a bipedal support period (the time period corresponding to the DSP in FIG. 7 ).
- the swinging legs of the bipedal robot As shown in Figure 7, the dashed leg is not yet off the ground, and it can also play a supporting role to a certain extent; and when the biped robot is in a single-leg support state, there is a corresponding single-leg support period (as shown in Figure 7).
- the time period corresponding to SSP in 7), the single-leg support period will also be composed of the swing leg lift period (the time period corresponding to SSP1 in Figure 7) and the swing leg vacant period (SSP2 in Figure 7).
- the gait cycle required for a biped robot to complete a swing operation will consist of a double-leg support period and a single-leg support period. It can be seen that the leg planning trajectory of the biped robot is related to the step size and the robot gait cycle selected by the biped robot. At this time, the leg planning trajectory can be expressed by the following equations:
- XL is used to represent the projected position of the planned leg trajectory relative to the horizontal plane in the pitch direction
- Y L is used to represent the projected position of the planned trajectory of the leg relative to the horizontal plane in the roll direction
- Z L is represented by is used to represent the leg position of the leg planning trajectory in the vertical direction
- L x is used to represent the to-be-implemented step size of the biped robot in the pitch direction relative to the horizontal plane
- L y is used to represent the biped
- T is used to represent the gait cycle of the biped robot
- t is used to represent the motion moment of the biped robot
- a, b, c and d are used for is the preset coefficient of the leg lift height of the biped robot.
- the desired balance step size can be substituted into the above equations to obtain the desired balance step size.
- Step S250 controlling the current swinging leg of the biped robot to move according to the planned leg trajectory.
- the robot control device 10 determines the specific leg planning trajectory that the biped robot should currently use for restoring balance, it will correspondingly control the swing legs of the biped robot according to the specific leg planning trajectory.
- the legs are moved with planned trajectories, so that the biped robot can return to a balanced state, avoid the phenomenon of robot stepping steps, and improve the operation reliability of the robot.
- FIG. 8 is a schematic flowchart of sub-steps included in step S240 in FIG. 3 .
- the step S240 may include sub-steps S241 to S243.
- Sub-step S241 Determine the desired position of the end of the leg corresponding to the current moment in the leg planning trajectory.
- Sub-step S242 load the desired position of the end of the leg to the current swinging leg of the biped robot to obtain the corresponding target position of the end of the swinging leg.
- Sub-step S243 controlling the swinging leg to move according to the target position of the end of the swinging leg.
- the desired position of the end of the leg may be calibrated in the current Cartesian right-hand coordinate system, and then the calibrated position may be used as the target position of the end of the swinging leg.
- the present application can perform smooth processing on the swing trajectory corresponding to the required dimensional stability when the biped robot is unstable by performing the above steps S210 to S250, so that the biped robot can run according to the processed step trajectory. It can correspond to restore the balance state while avoiding the step phenomenon of the biped robot, and improve the reliability of the robot operation.
- the robot control device 10 controls the biped robot to restore balance, it can further avoid the generation of the step phenomenon of the robot by continuously executing the above-mentioned robot step control method multiple times in one gait cycle. , to ensure that the biped robot can return to the equilibrium state stably.
- the present application in order to ensure that the robot control device 10 can execute the above-mentioned robot step control method through the robot step control device 100 , the present application implements the aforementioned functions by dividing the robot step control device 100 into functional modules.
- the specific composition of the robot step control device 100 provided by the present application will be described below accordingly.
- FIG. 9 is a schematic diagram of the composition of the robot stepping control device 100 provided by the embodiment of the application.
- the robot step control device 100 may include a body balance detection module 110 , a predicted step size acquisition module 120 , a step size smoothing processing module 130 , a leg trajectory planning module 140 and a leg motion control module 150 .
- the body balance detection module 110 is used to detect whether the biped robot is currently in an unbalanced state.
- the predicted step size obtaining module 120 is configured to obtain the current corresponding body balance predicted step size of the biped robot when it is detected that the biped robot is currently in an unbalanced state.
- the step size smoothing processing module 130 is configured to perform smooth transition processing on the body balance prediction step size according to the current moving step size of the biped robot, and obtain a balance desired step size corresponding to the body balance prediction step size.
- the leg trajectory planning module 140 is configured to determine the current leg planning trajectory of the biped robot according to the desired step size for balance.
- the leg motion control module 150 is configured to control the current swinging leg of the biped robot to move according to the planned leg trajectory.
- FIG. 10 is a schematic diagram of the composition of the step size smoothing processing module 130 in FIG. 9 .
- the moving step size includes the current step size of the biped robot relative to the horizontal plane in the pitch direction and the roll direction respectively
- the body balance prediction step size includes the biped robot's current step size in pitch direction and roll direction.
- the estimated step size relative to the horizontal plane in the direction and the roll direction, the balance desired step size includes the to-be-achieved step size of the biped robot in the pitch direction and the roll direction relative to the horizontal plane, which belongs to the pitch direction
- the current step size, the estimated step size, and the to-be-implemented step size in the direction correspond to each other, and the currently used step size, the estimated step size, and the to-be-implemented step size belonging to the roll direction correspond to each other. Therefore, the step size smoothing processing module 130 may include a step size difference calculation sub-module 131 , an acceleration calculation sub-module 132 , a step speed calculation sub-module 133 and a stride step size calculation sub-module 134 .
- the step size difference calculation sub-module 131 is configured to calculate, for each current step size included in the movement step size, a step size difference value between the current step size and the corresponding estimated step size.
- the acceleration calculation sub-module 132 is used to calculate and match the corresponding estimated step size according to the step size difference, the current step speed corresponding to the moving direction to which the current step size belongs, the preset position influence coefficient and the preset speed influence coefficient The expected acceleration of Influence weight value in the process.
- the walking speed calculation sub-module 133 is configured to calculate the expected walking speed matching the corresponding estimated step size according to the current walking speed, the expected acceleration and the duration of the step control frame of the biped robot.
- the swing step size calculation sub-module 134 is configured to calculate the current step size to be realized corresponding to the corresponding estimated step size of the biped robot according to the current step size, the expected step speed and the swing control frame duration.
- leg planning trajectory is expressed by the following equations:
- XL is used to represent the projected position of the planned leg trajectory relative to the horizontal plane in the pitch direction
- Y L is used to represent the projected position of the planned trajectory of the leg relative to the horizontal plane in the roll direction
- Z L is represented by is used to represent the leg position of the leg planning trajectory in the vertical direction
- L x is used to represent the to-be-implemented step size of the biped robot in the pitch direction relative to the horizontal plane
- L y is used to represent the biped
- T is used to represent the gait cycle of the biped robot
- t is used to represent the motion moment of the biped robot
- a, b, c and d are used for is the preset coefficient of the leg lift height of the biped robot.
- FIG. 11 is a schematic diagram of the composition of the leg motion control module 150 in FIG. 9 .
- the leg movement control module 150 may include a leg end position determination submodule 151 , a swing end position determination submodule 152 and a swing leg movement control submodule 153 .
- the leg end position determination sub-module 151 is used to determine the desired position of the leg end corresponding to the current moment in the leg planning trajectory.
- the swing end position determination sub-module 152 is used to load the desired position of the end of the leg onto the current swing leg of the biped robot to obtain the corresponding target position of the end of the swing leg.
- the swinging leg movement control sub-module 153 is used to control the swinging leg to move according to the target position of the end of the swinging leg.
- each block in the flowchart or block diagrams may represent a module, segment, or portion of code that contains one or more functions for implementing the specified logical function(s) executable instructions. It should also be noted that, in some alternative implementations, the functions noted in the block may occur out of the order noted in the figures.
- each block of the block diagrams and/or flowchart illustrations, and combinations of blocks in the block diagrams and/or flowchart illustrations can be implemented in dedicated hardware-based systems that perform the specified functions or actions , or can be implemented in a combination of dedicated hardware and computer instructions.
- each functional module in each embodiment of the present application may be integrated together to form an independent part, or each module may exist independently, or two or more modules may be integrated to form an independent part.
- the functions are implemented in the form of software function modules and sold or used as independent products, they can be stored in a storage medium.
- the computer software product is stored in a storage medium, including Several instructions are used to cause a computer device (which may be a personal computer, a server, or a network device, etc.) to execute all or part of the steps of the methods described in the various embodiments of the present application.
- the aforementioned storage medium includes: U disk, mobile hard disk, Read-Only Memory (ROM, Read-Only Memory), Random Access Memory (RAM, Random Access Memory), magnetic disk or optical disk and other media that can store program codes .
- the present application when the present application detects that the biped robot is currently in an unbalanced state, it will correspondingly obtain the current status of the biped robot.
- a smooth transition is performed on the predicted step of body balance to obtain the desired balance step corresponding to the predicted step of body balance, and then the desired step of balance is obtained.
Landscapes
- Engineering & Computer Science (AREA)
- Mechanical Engineering (AREA)
- Automation & Control Theory (AREA)
- Chemical & Material Sciences (AREA)
- Combustion & Propulsion (AREA)
- Transportation (AREA)
- Robotics (AREA)
- Aviation & Aerospace Engineering (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Manipulator (AREA)
Abstract
机器人迈步控制方法、装置、机器人控制设备和存储介质,检测双足机器人当前是否处于非平衡状态(S210),在检测到双足机器人当前处于非平衡状态的情况下,会相应地获取双足机器人当前的机体平衡预测步长(S220),并根据双足机器人当前移动步长对机体平衡预测步长进行平滑过渡处理,得到与机体平衡预测步长对应的平衡期望步长(S230),继而得到与平衡期望步长对应的腿部规划轨迹(S240),最后控制双足机器人当前的摆动腿按照腿部规划轨迹进行运动(S250);机器人迈步控制装置包括:机体平衡检测模块(110)、预测步长获取模块(120)、步长平滑处理模块(130)、腿部轨迹规划模块(140)和腿部运动控制模块(150);机器人控制设备(10)包括处理器(12)和存储器(11);存储介质上存储有计算机程序;使双足机器人能够恢复到平衡状态,并避免出现机器人迈步阶跃现象,提升机器人运行可靠性。
Description
相关申请的交叉引用
本申请要求于2021年3月22日提交中国专利局的申请号为202110303627.4、名称为“机器人迈步控制方法、装置、机器人控制设备及存储介质”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
本申请涉及机器人控制技术领域,具体而言,涉及一种机器人迈步控制方法、装置、机器人控制设备及存储介质。
随着科学技术的不断发展,机器人技术因具有极大的研究价值及应用价值受到了各行各业的广泛重视,其中双足机器人控制便是机器人控制技术领域中的一项重要研究方向。而在双足机器人的实际控制过程中,双足机器人通常会受到外部干扰(例如,外部推动、外界大风环境干扰等)和/或内部干扰(例如,机器人头部重量增加、机器人手臂断开等)而存在失稳现象,无法保持平衡状态。
申请内容
有鉴于此,本申请的目的包括提供一种机器人迈步控制方法、装置、机器人控制设备及存储介质,能够对机器人维稳步长所对应的迈步轨迹进行平滑处理,使双足机器人在按照处理后的迈步轨迹运行后对应恢复平衡状态的同时,避免出现双足机器人迈步阶跃现象,提升机器人运行可靠性。
为了实现上述目的,本申请实施例采用的技术方案如下:
第一方面,本申请提供一种机器人迈步控制方法,所述方法包括:
检测双足机器人当前是否处于非平衡状态;
在检测到所述双足机器人当前处于非平衡状态的情况下,获取所述双足机器人当前对应的机体平衡预测步长;
根据所述双足机器人当前移动步长对所述机体平衡预测步长进行平滑过渡处理,得到与所述机体平衡预测步长对应的平衡期望步长;
根据所述平衡期望步长确定所述双足机器人当前的腿部规划轨迹;
控制所述双足机器人当前的摆动腿按照所述腿部规划轨迹进行运动。
在可选的实施方式中,所述移动步长包括所述双足机器人在俯仰方向以及横滚方向上各自相对于水平面的现用步长,所述机体平衡预测步长包括所述双足机器人在俯仰方 向以及横滚方向上各自相对于水平面的预估步长,所述平衡期望步长包括所述双足机器人在俯仰方向以及横滚方向上各自相对于水平面的待实现步长,其中归属于俯仰方向的现用步长、预估步长、待实现步长相互对应,归属于横滚方向的现用步长、预估步长、待实现步长相互对应;
所述根据所述双足机器人当前移动步长对所述机体平衡预测步长进行平滑过渡处理,得到与所述机体平衡预测步长对应的平衡期望步长的步骤,包括:
针对所述移动步长所包括的每个现用步长,计算该现用步长与对应预估步长之间的步长差值;
根据所述步长差值、与该现用步长所属移动方向对应的当前步移速度、预设位置影响系数以及预设速度影响系数,计算与所述对应预估步长匹配的期望加速度,其中所述预设位置影响系数用于表示对应步长差值在预估步长平滑过程中的影响权重数值,所述预设速度影响系数用于表示对应当前步移速度在预估步长平滑过程中的影响权重数值;
根据所述当前步移速度、所述期望加速度以及所述双足机器人的迈步控制帧时长,计算与所述对应预估步长匹配的期望步移速度;
根据该现用步长、所述期望步移速度和所述迈步控制帧时长,计算所述双足机器人当前与所述对应预估步长对应的待实现步长。
在可选的实施方式中,所述腿部规划轨迹采用如下方程组进行表达:
其中,X
L用于表示所述腿部规划轨迹在俯仰方向上相对于水平面的投影位置,Y
L用于表示所述腿部规划轨迹在横滚方向上相对于水平面的投影位置,Z
L用于表示所述腿部规划轨迹在竖直方向上的腿部位置,L
x用于表示所述双足机器人在俯仰方向上相对于水平面的待实现步长,L
y用于表示所述双足机器人在横滚方向上相对于水平面的待实现步长,T用于表示所述双足机器人的步态周期,t用于表示所述双足机器人的运动时刻,a、b、c及d用于表示所述双足机器人的抬腿高度预设系数。
在可选的实施方式中,所述控制所述双足机器人当前的摆动腿按照所述腿部规划轨迹进行运动的步骤,包括:
在所述腿部规划轨迹中确定与当前时刻对应的腿部末端期望位置;
将所述腿部末端期望位置加载到所述双足机器人当前的摆动腿上,得到对应的摆动腿末端目标位置;
按照所述摆动腿末端目标位置控制所述摆动腿进行运动。
第二方面,本申请提供一种机器人迈步控制装置,所述装置包括:
机体平衡检测模块,用于检测双足机器人当前是否处于非平衡状态;
预测步长获取模块,用于在检测到所述双足机器人当前处于非平衡状态的情况下,获取所述双足机器人当前对应的机体平衡预测步长;
步长平滑处理模块,用于根据所述双足机器人当前移动步长对所述机体平衡预测步长进行平滑过渡处理,得到与所述机体平衡预测步长对应的平衡期望步长;
腿部轨迹规划模块,用于根据所述平衡期望步长确定所述双足机器人当前的腿部规划轨迹;
腿部运动控制模块,用于控制所述双足机器人当前的摆动腿按照所述腿部规划轨迹进行运动。
在可选的实施方式中,所述移动步长包括所述双足机器人在俯仰方向以及横滚方向上各自相对于水平面的现用步长,所述机体平衡预测步长包括所述双足机器人在俯仰方向以及横滚方向上各自相对于水平面的预估步长,所述平衡期望步长包括所述双足机器人在俯仰方向以及横滚方向上各自相对于水平面的待实现步长,其中归属于俯仰方向的现用步长、预估步长、待实现步长相互对应,归属于横滚方向的现用步长、预估步长、待实现步长相互对应;
所述步长平滑处理模块包括:
步长差值计算子模块,用于针对所述移动步长所包括的每个现用步长,计算该现用步长与对应预估步长之间的步长差值;
加速度计算子模块,用于根据所述步长差值、与该现用步长所属移动方向对应的当前步移速度、预设位置影响系数以及预设速度影响系数,计算与所述对应预估步长匹配的期望加速度,其中所述预设位置影响系数用于表示对应步长差值在预估步长平滑过程中的影响权重数值,所述预设速度影响系数用于表示对应当前步移速度在预估步长平滑过程中的影响权重数值;
步移速度计算子模块,用于根据所述当前步移速度、所述期望加速度以及所述双足机器人的迈步控制帧时长,计算与所述对应预估步长匹配的期望步移速度;
迈步步长计算子模块,用于根据该现用步长、所述期望步移速度和所述迈步控制帧时长,计算所述双足机器人当前与所述对应预估步长对应的待实现步长。
在可选的实施方式中,所述腿部规划轨迹采用如下方程组进行表达:
其中,X
L用于表示所述腿部规划轨迹在俯仰方向上相对于水平面的投影位置,Y
L用于表示所述腿部规划轨迹在横滚方向上相对于水平面的投影位置,Z
L用于表示所述腿部规划轨迹在竖直方向上的腿部位置,L
x用于表示所述双足机器人在俯仰方向上相对于水平面的待实现步长,L
y用于表示所述双足机器人在横滚方向上相对于水平面的待实现步长,T用于表示所述双足机器人的步态周期,t用于表示所述双足机器人的运动时刻,a、b、c及d用于表示所述双足机器人的抬腿高度预设系数。
在可选的实施方式中,所述腿部运动控制模块包括:
腿部末端位置确定子模块,用于在所述腿部规划轨迹中确定与当前时刻对应的腿部末端期望位置;
摆动末端位置确定子模块,用于将所述腿部末端期望位置加载到所述双足机器人当前的摆动腿上,得到对应的摆动腿末端目标位置;
摆动腿运动控制子模块,用于按照所述摆动腿末端目标位置控制所述摆动腿进行运动。
第三方面,本申请提供一种机器人控制设备,包括处理器和存储器,所述存储器存储有能够被所述处理器执行的计算机程序,所述处理器可执行所述计算机程序,实现前述实施方式中任意一项所述的机器人迈步控制方法。
第四方面,本申请提供一种存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时,实现前述实施方式中任意一项所述的机器人迈步控制方法。
本申请实施例的有益效果包括以下内容:
本申请在检测到双足机器人当前处于非平衡状态的情况下,会相应地获取双足机器人当前的机体平衡预测步长,并根据所述双足机器人当前移动步长对所述机体平衡预测步长进行平滑过渡处理,得到与所述机体平衡预测步长对应的平衡期望步长,继而得到与平衡期望步长对应的腿部规划轨迹,最后控制双足机器人当前的摆动腿按照腿部规划轨迹进行运动,从而使双足机器人能够恢复到平衡状态,并避免出现机器人迈步阶跃现象,提升机器人运行可靠性。
为使本申请的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
为了更清楚地说明本申请实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1为本申请实施例提供的机器人控制设备的组成示意图;
图2为本申请实施例提供的双足机器人的迈步示意图;
图3为本申请实施例提供的机器人迈步控制方法的流程示意图;
图4为双足机器人在俯仰方向上的受力示意图;
图5为双足机器人在横滚方向上的受力示意图;
图6为图3中的步骤S230包括的子步骤的流程示意图;
图7为双足机器人的行走过程示意图;
图8为图3中的步骤S240包括的子步骤的流程示意图;
图9为本申请实施例提供的机器人迈步控制装置的组成示意图;
图10为图9中的步长平滑处理模块的组成示意图;
图11为图9中的腿部运动控制模块的组成示意图。
图标:10-机器人控制设备;11-存储器;12-处理器;13-通信单元;100-机器人迈步控制装置;110-机体平衡检测模块;120-预测步长获取模块;130-步长平滑处理模块;140-腿部轨迹规划模块;150-腿部运动控制模块;131-步长差值计算子模块;132-加速度计算子模块;133-步移速度计算子模块;134-迈步步长计算子模块;151-腿部末端位置确定子模块;152-摆动末端位置确定子模块;153-摆动腿运动控制子模块。
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本申请实施例的组件可以以各种不同的配置来布置和设计。
因此,以下对在附图中提供的本申请的实施例的详细描述并非旨在限制要求保护的本申请的范围,而是仅仅表示本申请的选定实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
在本申请的描述中,需要理解的是,术语“中心”、“上”、“下”、“左”、“右”、“竖 直”、“水平”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,或者是该申请产品使用时惯常摆放的方位或位置关系,或者是本领域技术人员惯常理解的方位或位置关系,仅是为了便于描述本申请和简化描述,而不是指示或暗示所指的设备或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本申请的限制。
此外,术语“第一”和“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本申请中的具体含义。
下面结合附图,对本申请的一些实施方式作详细说明。在不冲突的情况下,下述的实施例及实施例中的特征可以相互结合。
请参照图1,图1是本申请实施例提供的机器人控制设备10的组成示意图。在本申请实施例中,所述机器人控制设备10用于对双足机器人的运行状态进行控制,并能在所述双足机器人失去平衡时,对用于恢复机器人平衡的维稳步长所对应的迈步轨迹进行平滑处理,而后使用平滑后的迈步轨迹控制双足机器人运行,从而在让所述双足机器人恢复平衡的同时,减小双足机器人在恢复平衡时所使用的迈步轨迹和在失去平衡时使用的行走轨迹之间的差异,避免出现双足机器人迈步阶跃现象,提升机器人运行可靠性。其中,所述机器人控制设备10可以与双足机器人远程通信连接,也可以与所述双足机器人集成在一起,用以实现对所述双足机器人的运行控制功能。
在本实施例中,所述机器人控制设备10可以包括存储器11、处理器12、通信单元13及机器人迈步控制装置100。其中,所述存储器11、所述处理器12及所述通信单元13各个元件相互之间直接或间接地电性连接,以实现数据的传输或交互。例如,所述存储器11、所述处理器12及所述通信单元13这些元件相互之间可通过一条或多条通讯总线或信号线实现电性连接。
在本实施例中,所述存储器11可以是,但不限于,随机存取存储器(Random Access Memory,RAM),只读存储器(Read Only Memory,ROM),可编程只读存储器(Programmable Read-Only Memory,PROM),可擦除只读存储器(Erasable Programmable Read-Only Memory,EPROM),电可擦除只读存储器(Electric Erasable Programmable Read-Only Memory,EEPROM)等。其中,所述存储器11用于存储计算机程序,所述处理器12在接收到执行指令后,可相应地执行所述计算机程序。
在本实施例中,所述处理器12可以是一种具有信号的处理能力的集成电路芯片。所述处理器12可以是通用处理器,包括中央处理器(Central Processing Unit,CPU)、图形处理器(Graphics Processing Unit,GPU)及网络处理器(Network Processor,NP)、数字信号处理器(DSP)、专用集成电路(ASIC)、现成可编程门阵列(FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件中的至少一种。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等,可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。
在本实施例中,所述通信单元13用于通过网络建立所述机器人控制设备10与其他电子设备之间的通信连接,并通过所述网络收发数据,其中所述网络包括有线通信网络及无线通信网络。例如,所述机器人控制设备10可以通过所述通信单元13从作业规划设备处获取针对所述双足机器人的期望运动轨迹信息,并通过所述通信单元13向所述双足机器人发送运动控制指令,使所述双足机器人按照所述运动控制指令进行运动。
在本实施例中,所述机器人迈步控制装置100包括至少一个能够以软件或固件的形式存储于所述存储器11中或者在所述机器人控制设备10的操作系统中的软件功能模块。所述处理器12可用于执行所述存储器11存储的可执行模块,例如所述机器人迈步控制装置100所包括的软件功能模块及计算机程序等。所述机器人控制设备10可通过所述机器人迈步控制装置100对与双足机器人失稳时所需维稳步长对应的迈步轨迹进行平滑处理,使双足机器人在按照处理后的迈步轨迹运行后,能够对应恢复平衡状态的同时,避免出现双足机器人迈步阶跃现象,提升机器人运行可靠性。
可以理解的是,图1所示的框图仅为所述机器人控制设备10的一种组成示意图,所述机器人控制设备10还可包括比图1中所示更多或者更少的组件,或者具有与图1所示不同的配置。图1中所示的各组件可以采用硬件、软件或其组合实现。
而对双足机器人来说,可以参照图2所示的双足机器人的迈步示意图对机器人迈步运动进行描述。在本实施例中,所述双足机器人在整个迈步过程中存在双腿支撑状态,以及单腿支撑状态。其中,当所述双足机器人处于双腿支撑状态时,所述双足机器人的双腿都可作为支撑腿用以支撑所述双足机器人保持站立状态;当所述双足机器人处于单腿支撑状态时,所述双足机器人的一条腿将作为支撑腿用以支撑所述双足机器人保持站立状态,所述双足机器人的另一条腿将作为需要进行移动轨迹变化的摆动腿。其中,摆动腿的移动轨迹变化包括摆动腿抬腿操作、摆动腿腾空操作以及摆动腿落脚操作各自引起的腿部末端位置变化。
其中,当双足机器人的某个支撑腿的足底与地面接触时,可以将地面作为世界坐标系的原点,建立笛卡尔右手坐标系,使X轴的正方向代表双足机器人的前进方向,使Z轴的正方向垂直地面向上。此时,由X轴与Z轴所构成的俯仰面即为所述双足机器人能够作出俯仰变化操作的平面,由Y轴与Z轴所构成的横滚面即为所述双足机器人能够作出横滚变化操作的平面。处于所述俯仰面内的任意方向即为所述双足机器人进行俯仰运动的俯仰方向,处于所述横滚面内的任意方向即为所述双足机器人进行横滚运动的横滚方向。而俯仰方向与Z轴正方向之间的夹角即为所述双足机器人进行俯仰运动的俯仰角,横滚方向与Z轴正方向之间的夹角即为所述双足机器人进行横滚运动的横滚角。
由此,所述双足机器人可基于上述笛卡尔右手坐标系确定自身各部件在整个世界坐标系中的位置分布状况,并在接收到运动控制指令后,基于该笛卡尔右手坐标系将机器人各部件移动到特定位置。
在本申请中,为确保所述机器人控制设备10能够在双足机器人失去平衡时,对用于恢复机器人平衡的维稳步长所对应的迈步轨迹进行平滑处理,并使用平滑后的迈步轨迹控制双足机器人运行,让双足机器人恢复平衡,同时避免出现双足机器人迈步阶跃现象,提升机器人运行可靠性,本申请实施例提供一种对双足机器人迈步操作进行控制的方法实现前述目的。下面对本申请提供的机器人迈步控制方法进行详细描述。
请参照图3,图3是本申请实施例提供的机器人迈步控制方法的流程示意图。在本申请实施例中,所述机器人迈步控制方法可以包括步骤S210~步骤S250。
步骤S210,检测双足机器人当前是否处于非平衡状态。
在本实施例中,所述机器人控制设备10可通过安装在所述双足机器人身上的力传感器、姿态传感器等传感器件,获取所述双足机器人的运行状态,而后通过对所述运行状态进行分析,以确定所述双足机器人当前是否处于非平衡状态。
以姿态传感器为例,若所述机器人控制设备10通过所述姿态传感器获取到所述双足机器人的姿态角度大小,可将得到的姿态角度大小与预设姿态角阈值进行比较,并在所述姿态角度大小大于或等于所述预设姿态角阈值时,判定所述双足机器人当前处于非平衡状态。
以力传感器为例,若所述机器人控制设备10通过所述力传感器获取到所述双足机器人的受力大小,可将得到的受力大小与预设力阈值进行比较,并在所述受力大小大于或等于所述预设力阈值时,判定所述双足机器人当前处于非平衡状态。
步骤S220,在检测到双足机器人当前处于非平衡状态的情况下,获取双足机器人当前对应的机体平衡预测步长。
在本实施例中,所述机体平衡预测步长用于表示预测出的所述双足机器人从非平衡 状态恢复到平衡状态时应当表现出的步长大小。其中,所述机体平衡预测步长可由所述机器人控制设备10计算得到,也可由所述机器人控制设备10通过网络从其他步长预测设备处获取。
在本实施例的一种实施方式中,在计算机体平衡预测步长时,可预先将双足机器人当作一个倒立摆模型进行抽象化表达,此时可将双足机器人的所有质量都集中在质心处,并将双足机器人的两条腿视作无质量的两个伸缩摆杆,从而通过该倒立摆模型对双足机器人的受力状况进行有效表达。而后,可采用摆动腿落点捕获(Capture Point)算法表征对双足机器人的平衡恢复需求,来对所述双足机器人在迈步行走过程中表现出的步长大小进行有效约束,从而初步预测出对应的机体平衡预测步长。
其中,双足机器人的受力状况可采用图4及图5进行表达。在图4所示的受力示意图中,处于非平衡状态下的双足机器人会受到沿姿态变化方向的失稳作用力在俯仰方向上的作用力分量,此时该双足机器人在俯仰方向上的第一目标速度大小可采用式子
进行表达,其中
用于表示所述双足机器人的躯干在俯仰方向上的俯仰角速度,θ用于表示所述双足机器人的躯干在俯仰方向上的俯仰角度,L用于表示所述双足机器人的腿部长度,l用于表示所述双足机器人的脚掌长度,v
1用于表示该双足机器人在俯仰方向上的第一目标速度大小,v
d1用于表示该双足机器人在俯仰方向上的期望速度,v
push1用于表示该双足机器人在俯仰方向所对应的作用力分量的作用下产生的速度大小。
而在图5所示的受力示意图中,处于非平衡状态下的双足机器人会受到沿姿态变化方向的失稳作用力在横滚方向上的作用力分量,此时该双足机器人在横滚方向上的第二目标速度大小可采用式子
进行表达,其中
用于表示所述双足机器人的躯干在横滚方向上的横滚角速度,γ用于表示所述双足机器人的躯干在横滚方向上的横滚角度,d用于表示所述双足机器人的脚掌宽度,L用于表示所述双足机器人的腿部长度,v
2用于表示该双足机器人在横滚方向上的第二目标速度大小,v
d2用于表示该双足机器人在横滚方向上的期望速度,v
push2用于表示该双足机器人在横滚方向所对 应的作用力分量的作用下产生的速度大小。
因此,当采用摆动腿落点捕获(Capture Point)算法对上述第一目标速度大小的计算公式及第二目标速度大小的计算公式进行处理,以完成对双足机器人在迈步行走过程中表现出的步长大小进行有效约束后,对应计算出的机体平衡预测步长可以被视为由两个步长分量组成,此时所述机体平衡预测步长包括所述双足机器人在俯仰方向上相对于水平面的预估步长,以及所述双足机器人在横滚方向上相对于水平面的预估步长。
步骤S230,根据双足机器人当前移动步长对机体平衡预测步长进行平滑过渡处理,得到与机体平衡预测步长对应的平衡期望步长。
在本实施例中,所述移动步长用于表示所述双足机器人在处于非平衡状态下使用的步长大小,此时该移动步长可在图4及图5所示的受力示意图中各自分离出一个步长分量,使该移动步长可以被视为由两个步长分量组成,此时所述移动步长包括所述双足机器人在俯仰方向上相对于水平面的现用步长,以及所述双足机器人在横滚方向上相对于水平面的现用步长。
所述机器人控制设备10在对用于恢复机器人平衡的维稳步长所对应的迈步轨迹进行平滑处理时,可直接通过对维稳步长进行平滑过渡处理,进而采用平滑得到的步长所对应的迈步轨迹作为双足机器人恢复平衡时真正应当使用的迈步轨迹,从而在让所述双足机器人恢复平衡的同时,减小双足机器人在恢复平衡时所使用的迈步轨迹和在失去平衡时使用的行走轨迹之间的差异,避免出现双足机器人迈步阶跃现象,提升机器人运行可靠性。
在本实施例的一种实施方式中,可借用PID(Proportion-Intergral-Differential,比例-积分-微分)控制算法的基本思路,结合所述双足机器人当前移动步长对机体平衡预测步长进行平滑过渡处理,从而最终得到能够与所述双足机器人当前移动步长相互关联的避免迈步阶跃且符合机体平衡需求的平衡期望步长。其中,所述平衡期望步长也将由两个步长分量组成,所述平衡期望步长可以包括所述双足机器人在俯仰方向上相对于水平面的待实现步长,以及所述双足机器人在横滚方向上相对于水平面的待实现步长。在此情况下,归属于俯仰方向的现用步长、预估步长、待实现步长将相互对应,而归属于横滚方向的现用步长、预估步长、待实现步长将相互对应。
此时,请参照图6,所述步骤S230可以包括子步骤S231~子步骤S234。
子步骤S231,针对移动步长所包括的每个现用步长,计算该现用步长与对应预估步长之间的步长差值。
在本实施例中,针对所述移动步长所包括的与俯仰方向对应的现用步长,可通过求取该现用步长和所述机体平衡预测步长所包括的与俯仰方向对应的预估步长之间的差 值,得到与俯仰方向对应的步长差值。
针对所述移动步长所包括的与横滚方向对应的现用步长,可通过求取该现用步长和所述机体平衡预测步长所包括的与横滚方向对应的预估步长之间的差值,得到与横滚方向对应的步长差值。
子步骤S232,根据步长差值、与该现用步长所属移动方向对应的当前步移速度、预设位置影响系数以及预设速度影响系数,计算与对应预估步长匹配的期望加速度。
在本实施例中,所述当前步移速度用于表示所述双足机器人当前在非平衡状态下表现出的对应移动方向上的迈步速度,其中所述移动方向可以包括与俯仰方向相对应的X轴正方向,以及与横滚方向相对应的Y轴正方向。其中,所述预设位置影响系数用于表示对应步长差值在预估步长平滑过程中的影响权重数值,所述预设速度影响系数用于表示对应当前步移速度在预估步长平滑过程中的影响权重数值。
此时,针对与俯仰方向对应的预估步长来说,需要优先求解出与所述俯仰方向对应的移动方向(X轴正方向)上的当前步移速度的反向速度(速度方向为X轴负方向且速度值与所述当前步移速度大小相等),而后计算与俯仰方向相关的步长差值和预设位置影响系数之间的积值,并计算与俯仰方向相关的所述反向速度和预设速度影响系数之间的积值,最后将前述两个积值之和作为与所述俯仰方向对应的预估步长相匹配的期望加速度。
针对与横滚方向对应的预估步长来说,需要优先求解出与横滚方向对应的移动方向(Y轴正方向)上的当前步移速度的反向速度(速度方向为Y轴负方向且速度值与所述当前步移速度大小相等),而后计算与横滚方向相关的步长差值和预设位置影响系数之间的积值,并计算与横滚方向相关的所述反向速度和预设速度影响系数之间的积值,最后将前述两个积值之和作为与所述横滚方向对应的预估步长相匹配的期望加速度。
子步骤S233,根据当前步移速度、期望加速度以及双足机器人的迈步控制帧时长,计算与对应预估步长匹配的期望步移速度。
在本实施例中,所述迈步控制帧时长用于表示所述双足机器人在执行迈步运动时的单位控制时长。此时,针对与俯仰方向对应的预估步长来说,可优先计算所述迈步控制帧时长和与所述俯仰方向对应的期望加速度(即与俯仰方向所对应的预估步长相匹配的期望加速度)之间的积值,而后将计算出的积值和与俯仰方向对应的移动方向(X轴正方向)上的当前步移速度进行相加,得到所述与俯仰方向对应的预估步长相匹配的期望步移速度。
针对与横滚方向对应的预估步长来说,可优先计算所述迈步控制帧时长和与所述横滚方向所对应的期望加速度(即与横滚方向所对应的预估步长相匹配的期望加速度)之 间的积值,而后将计算出的积值和与横滚方向对应的移动方向(Y轴正方向)上的当前步移速度进行相加,得到所述与横滚方向对应的预估步长相匹配的期望步移速度。
子步骤S234,根据该现用步长、期望步移速度和迈步控制帧时长,计算双足机器人当前与对应预估步长对应的待实现步长。
在本实施例中,针对与俯仰方向对应的预估步长来说,可优先计算所述迈步控制帧时长和与所述俯仰方向对应的期望步移速度之间的积值,而后将计算出的积值和与俯仰方向对应的现用步长进行相加,得到所述双足机器人当前与俯仰方向所对应的预估步长相匹配的待实现步长。
针对与横滚方向对应的预估步长来说,可优先计算所述迈步控制帧时长和与所述横滚方向对应的期望步移速度之间的积值,而后将计算出的积值和与横滚方向对应的现用步长进行相加,得到所述双足机器人当前与横滚方向所对应的预估步长相匹配的待实现步长。
由此,本申请可通过执行上述子步骤S231~子步骤S234,得到能够与所述双足机器人当前移动步长相互关联的避免迈步阶跃且符合机体平衡需求的平衡期望步长。
请再次参照图3,步骤S240,根据平衡期望步长确定双足机器人当前的腿部规划轨迹。
在本实施例中,结合参照图7,双足机器人在处于双腿支撑状态时存在一个双腿支撑期(如图7中的DSP所对应的时间段),此时双足机器人的摆动腿(如图7中获得虚线腿部)尚未离开地面,也能在一定程度上起到支撑作用;而当所述双足机器人处于单腿支撑状态时,则相应地存在一个单腿支撑期(如图7中的SSP所对应的时间段),此时单腿支撑期也将由摆动腿抬腿期(如图7中的SSP1所对应的时间段)、摆动腿腾空期(如图7中的SSP2所对应的时间段)以及摆动腿落脚期(如图7中的SSP3所对应的时间段)组成。因此,双足机器人在完成一个迈步操作时所需的步态周期将由一个双腿支撑期及一个单腿支撑期组成。由此可知,所述双足机器人的腿部规划轨迹便与双足机器人选择使用的步长大小以及机器人步态周期存在关联关系,此时所述腿部规划轨迹可采用如下方程组进行表达:
其中,X
L用于表示所述腿部规划轨迹在俯仰方向上相对于水平面的投影位置,Y
L用于表示所述腿部规划轨迹在横滚方向上相对于水平面的投影位置,Z
L用于表示所述腿 部规划轨迹在竖直方向上的腿部位置,L
x用于表示所述双足机器人在俯仰方向上相对于水平面的待实现步长,L
y用于表示所述双足机器人在横滚方向上相对于水平面的待实现步长,T用于表示所述双足机器人的步态周期,t用于表示所述双足机器人的运动时刻,a、b、c及d用于表示所述双足机器人的抬腿高度预设系数。其中,a、b、c及d均为常数。
因此,当所述机器人控制设备10得到所述双足机器人当前在处于非平衡状态下所对应的平衡期望步长后,可将所述平衡期望步长代入到上述方程组中,以求得所述双足机器人当前应当使用的用于恢复平衡的具体腿部规划轨迹。
步骤S250,控制双足机器人当前的摆动腿按照腿部规划轨迹进行运动。
在本实施例中,当所述机器人控制设备10确定出所述双足机器人当前应当使用的用于恢复平衡的具体腿部规划轨迹后,会相应地控制双足机器人的摆动腿按照所述具体腿部规划轨迹进行移动,以使所述双足机器人能够恢复到平衡状态,并避免出现机器人迈步阶跃现象,提升机器人运行可靠性。
可选地,请参照图8,图8是图3中的步骤S240包括的子步骤的流程示意图。在本实施例中,所述步骤S240可以包括子步骤S241~子步骤S243。
子步骤S241,在腿部规划轨迹中确定与当前时刻对应的腿部末端期望位置。
子步骤S242,将腿部末端期望位置加载到双足机器人当前的摆动腿上,得到对应的摆动腿末端目标位置。
子步骤S243,按照摆动腿末端目标位置控制摆动腿进行运动。
其中,可在当前笛卡尔右手坐标系下对所述腿部末端期望位置进行位置标定,而后将标定的位置作为所述摆动腿末端目标位置。
由此,本申请可通过执行上述步骤S210~步骤S250,对与双足机器人失稳时所需维稳步长对应的迈步轨迹进行平滑处理,使双足机器人在按照处理后的迈步轨迹运行后,能够对应恢复平衡状态的同时,避免出现双足机器人迈步阶跃现象,提升机器人运行可靠性。
可以理解的是,所述机器人控制设备10在控制所述双足机器人恢复平衡时,可以通过在一个步态周期内连续执行多次上述的机器人迈步控制方法,进一步避免机器人迈步阶跃现象的产生,确保所述双足机器人能够安稳地恢复到平衡状态。
在本申请中,为确保所述机器人控制设备10能够通过所述机器人迈步控制装置100执行上述机器人迈步控制方法,本申请通过对所述机器人迈步控制装置100进行功能模块划分的方式实现前述功能。下面对本申请提供的机器人迈步控制装置100的具体组成进行相应描述。
请参照图9,图9是申请实施例提供的机器人迈步控制装置100的组成示意图。在本申请实施例中,所述机器人迈步控制装置100可以包括机体平衡检测模块110、预测步长获取模块120、步长平滑处理模块130、腿部轨迹规划模块140及腿部运动控制模块150。
机体平衡检测模块110,用于检测双足机器人当前是否处于非平衡状态。
预测步长获取模块120,用于在检测到双足机器人当前处于非平衡状态的情况下,获取双足机器人当前对应的机体平衡预测步长。
步长平滑处理模块130,用于根据双足机器人当前移动步长对机体平衡预测步长进行平滑过渡处理,得到与机体平衡预测步长对应的平衡期望步长。
腿部轨迹规划模块140,用于根据平衡期望步长确定双足机器人当前的腿部规划轨迹。
腿部运动控制模块150,用于控制双足机器人当前的摆动腿按照所述腿部规划轨迹进行运动。
可选地,请参照图10,图10是图9中的步长平滑处理模块130的组成示意图。在本实施例中,所述移动步长包括所述双足机器人在俯仰方向以及横滚方向上各自相对于水平面的现用步长,所述机体平衡预测步长包括所述双足机器人在俯仰方向以及横滚方向上各自相对于水平面的预估步长,所述平衡期望步长包括所述双足机器人在俯仰方向以及横滚方向上各自相对于水平面的待实现步长,其中归属于俯仰方向的现用步长、预估步长、待实现步长相互对应,归属于横滚方向的现用步长、预估步长、待实现步长相互对应。因此,所述步长平滑处理模块130可以包括步长差值计算子模块131、加速度计算子模块132、步移速度计算子模块133及迈步步长计算子模块134。
步长差值计算子模块131,用于针对移动步长所包括的每个现用步长,计算该现用步长与对应预估步长之间的步长差值。
加速度计算子模块132,用于根据步长差值、与该现用步长所属移动方向对应的当前步移速度、预设位置影响系数以及预设速度影响系数,计算与对应预估步长匹配的期望加速度,其中预设位置影响系数用于表示对应步长差值在预估步长平滑过程中的影响权重数值,预设速度影响系数用于表示对应当前步移速度在预估步长平滑过程中的影响权重数值。
步移速度计算子模块133,用于根据当前步移速度、期望加速度以及双足机器人的迈步控制帧时长,计算与对应预估步长匹配的期望步移速度。
迈步步长计算子模块134,用于根据该现用步长、期望步移速度和迈步控制帧时长,计算双足机器人当前与对应预估步长对应的待实现步长。
在本实施例中,所述腿部规划轨迹采用如下方程组进行表达:
其中,X
L用于表示所述腿部规划轨迹在俯仰方向上相对于水平面的投影位置,Y
L用于表示所述腿部规划轨迹在横滚方向上相对于水平面的投影位置,Z
L用于表示所述腿部规划轨迹在竖直方向上的腿部位置,L
x用于表示所述双足机器人在俯仰方向上相对于水平面的待实现步长,L
y用于表示所述双足机器人在横滚方向上相对于水平面的待实现步长,T用于表示所述双足机器人的步态周期,t用于表示所述双足机器人的运动时刻,a、b、c及d用于表示所述双足机器人的抬腿高度预设系数。
可选地,请参照图11,图11是图9中的腿部运动控制模块150的组成示意图。在本实施例中,所述腿部运动控制模块150可以包括腿部末端位置确定子模块151、摆动末端位置确定子模块152及摆动腿运动控制子模块153。
腿部末端位置确定子模块151,用于在腿部规划轨迹中确定与当前时刻对应的腿部末端期望位置。
摆动末端位置确定子模块152,用于将腿部末端期望位置加载到双足机器人当前的摆动腿上,得到对应的摆动腿末端目标位置。
摆动腿运动控制子模块153,用于按照摆动腿末端目标位置控制摆动腿进行运动。
需要说明的是,本申请实施例所提供的机器人迈步控制装置100,其基本原理及产生的技术效果与前述的机器人迈步控制方法相同。为简要描述,本实施例部分未提及之处,可参考上述的针对机器人迈步控制方法的描述内容。
在本申请所提供的实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本申请的实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实 现。
另外,在本申请各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
综上所述,在本申请提供的机器人迈步控制方法、装置、机器人控制设备及存储介质中,本申请在检测到双足机器人当前处于非平衡状态的情况下,会相应地获取双足机器人当前的机体平衡预测步长,并根据所述双足机器人当前移动步长对所述机体平衡预测步长进行平滑过渡处理,得到与所述机体平衡预测步长对应的平衡期望步长,继而得到与平衡期望步长对应的腿部规划轨迹,最后控制双足机器人当前的摆动腿按照腿部规划轨迹进行运动,从而使双足机器人能够恢复到平衡状态,并避免出现机器人迈步阶跃现象,提升机器人运行可靠性。
以上所述,仅为本申请的各种实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应当以权利要求的保护范围为准。
Claims (10)
- 一种机器人迈步控制方法,其特征在于,所述方法包括:检测双足机器人当前是否处于非平衡状态;在检测到所述双足机器人当前处于非平衡状态的情况下,获取所述双足机器人当前对应的机体平衡预测步长;根据所述双足机器人当前移动步长对所述机体平衡预测步长进行平滑过渡处理,得到与所述机体平衡预测步长对应的平衡期望步长;根据所述平衡期望步长确定所述双足机器人当前的腿部规划轨迹;控制所述双足机器人当前的摆动腿按照所述腿部规划轨迹进行运动。
- 根据权利要求1所述的方法,其特征在于,所述移动步长包括所述双足机器人在俯仰方向以及横滚方向上各自相对于水平面的现用步长,所述机体平衡预测步长包括所述双足机器人在俯仰方向以及横滚方向上各自相对于水平面的预估步长,所述平衡期望步长包括所述双足机器人在俯仰方向以及横滚方向上各自相对于水平面的待实现步长,其中归属于俯仰方向的现用步长、预估步长、待实现步长相互对应,归属于横滚方向的现用步长、预估步长、待实现步长相互对应;所述根据所述双足机器人当前移动步长对所述机体平衡预测步长进行平滑过渡处理,得到与所述机体平衡预测步长对应的平衡期望步长的步骤,包括:针对所述移动步长所包括的每个现用步长,计算该现用步长与对应预估步长之间的步长差值;根据所述步长差值、与该现用步长所属移动方向对应的当前步移速度、预设位置影响系数以及预设速度影响系数,计算与所述对应预估步长匹配的期望加速度,其中所述预设位置影响系数用于表示对应步长差值在预估步长平滑过程中的影响权重数值,所述预设速度影响系数用于表示对应当前步移速度在预估步长平滑过程中的影响权重数值;根据所述当前步移速度、所述期望加速度以及所述双足机器人的迈步控制帧时长,计算与所述对应预估步长匹配的期望步移速度;根据该现用步长、所述期望步移速度和所述迈步控制帧时长,计算所述双足机器人当前与所述对应预估步长对应的待实现步长。
- 根据权利要求1-3中任意一项所述的方法,其特征在于,所述控制所述双足机器人当前的摆动腿按照所述腿部规划轨迹进行运动的步骤,包括:在所述腿部规划轨迹中确定与当前时刻对应的腿部末端期望位置;将所述腿部末端期望位置加载到所述双足机器人当前的摆动腿上,得到对应的摆动腿末端目标位置;按照所述摆动腿末端目标位置控制所述摆动腿进行运动。
- 一种机器人迈步控制装置,其特征在于,所述装置包括:机体平衡检测模块,用于检测双足机器人当前是否处于非平衡状态;预测步长获取模块,用于在检测到所述双足机器人当前处于非平衡状态的情况下,获取所述双足机器人当前对应的机体平衡预测步长;步长平滑处理模块,用于根据所述双足机器人当前移动步长对所述机体平衡预测步长进行平滑过渡处理,得到与所述机体平衡预测步长对应的平衡期望步长;腿部轨迹规划模块,用于根据所述平衡期望步长确定所述双足机器人当前的腿部规划轨迹;腿部运动控制模块,用于控制所述双足机器人当前的摆动腿按照所述腿部规划轨迹进行运动。
- 根据权利要求5所述的装置,其特征在于,所述移动步长包括所述双足机器人在俯仰方向以及横滚方向上各自相对于水平面的现用步长,所述机体平衡预测步长包括所述双足机器人在俯仰方向以及横滚方向上各自相对于水平面的预估步长,所述平衡期望步长包括所述双足机器人在俯仰方向以及横滚方向上各自相对于水平面的待实现步长, 其中归属于俯仰方向的现用步长、预估步长、待实现步长相互对应,归属于横滚方向的现用步长、预估步长、待实现步长相互对应;所述步长平滑处理模块包括:步长差值计算子模块,用于针对所述移动步长所包括的每个现用步长,计算该现用步长与对应预估步长之间的步长差值;加速度计算子模块,用于根据所述步长差值、与该现用步长所属移动方向对应的当前步移速度、预设位置影响系数以及预设速度影响系数,计算与所述对应预估步长匹配的期望加速度,其中所述预设位置影响系数用于表示对应步长差值在预估步长平滑过程中的影响权重数值,所述预设速度影响系数用于表示对应当前步移速度在预估步长平滑过程中的影响权重数值;步移速度计算子模块,用于根据所述当前步移速度、所述期望加速度以及所述双足机器人的迈步控制帧时长,计算与所述对应预估步长匹配的期望步移速度;迈步步长计算子模块,用于根据该现用步长、所述期望步移速度和所述迈步控制帧时长,计算所述双足机器人当前与所述对应预估步长对应的待实现步长。
- 根据权利要求5-7中任意一项所述的装置,其特征在于,所述腿部运动控制模块包括:腿部末端位置确定子模块,用于在所述腿部规划轨迹中确定与当前时刻对应的腿部末端期望位置;摆动末端位置确定子模块,用于将所述腿部末端期望位置加载到所述双足机器人当前的摆动腿上,得到对应的摆动腿末端目标位置;摆动腿运动控制子模块,用于按照所述摆动腿末端目标位置控制所述摆动腿进行运动。
- 一种机器人控制设备,其特征在于,包括处理器和存储器,所述存储器存储有能够被所述处理器执行的计算机程序,所述处理器可执行所述计算机程序,实现权利要求1-4中任意一项所述的机器人迈步控制方法。
- 一种存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时,实现权利要求1-4中任意一项所述的机器人迈步控制方法。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US18/090,457 US12311545B2 (en) | 2021-03-22 | 2022-12-28 | Walking control method, biped robot and computer-readable storage medium |
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN202110303627.4 | 2021-03-22 | ||
| CN202110303627.4A CN113064433B (zh) | 2021-03-22 | 2021-03-22 | 机器人迈步控制方法、装置、机器人控制设备及存储介质 |
Related Child Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| US18/090,457 Continuation US12311545B2 (en) | 2021-03-22 | 2022-12-28 | Walking control method, biped robot and computer-readable storage medium |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| WO2022199080A1 true WO2022199080A1 (zh) | 2022-09-29 |
Family
ID=76562714
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/CN2021/131892 Ceased WO2022199080A1 (zh) | 2021-03-22 | 2021-11-19 | 机器人迈步控制方法、装置、机器人控制设备及存储介质 |
Country Status (3)
| Country | Link |
|---|---|
| US (1) | US12311545B2 (zh) |
| CN (1) | CN113064433B (zh) |
| WO (1) | WO2022199080A1 (zh) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN113064433A (zh) * | 2021-03-22 | 2021-07-02 | 深圳市优必选科技股份有限公司 | 机器人迈步控制方法、装置、机器人控制设备及存储介质 |
Families Citing this family (10)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN113552880B (zh) * | 2021-07-14 | 2023-08-04 | 中国北方车辆研究所 | 一种双足轮式机器人平衡控制方法 |
| CN113524190B (zh) * | 2021-07-26 | 2022-07-29 | 深圳市优必选科技股份有限公司 | 机器人足端碰撞稳定控制方法、装置和足式机器人 |
| CN114489104B (zh) * | 2022-01-21 | 2023-11-10 | 深圳市优必选科技股份有限公司 | 机器人迈步控制方法及装置、机器人控制设备和存储介质 |
| CN114200947B (zh) * | 2022-02-15 | 2022-06-10 | 之江实验室 | 一种双足机器人的仿人步态规划方法、系统及装置 |
| CN116175549B (zh) * | 2022-12-12 | 2026-03-20 | 安徽省配天机器人集团有限公司 | 轨迹规划方法、装置、电子设备及存储介质 |
| CN116931580A (zh) * | 2023-08-24 | 2023-10-24 | 上海开普勒探索机器人有限公司 | 双足机器人步态生成方法、指令生成方法、装置及机器人 |
| CN116872217B (zh) * | 2023-09-04 | 2023-11-17 | 深圳市普渡科技有限公司 | 机器人控制方法、装置、机器人和存储介质 |
| CN117207203B (zh) * | 2023-11-08 | 2024-02-23 | 北京小米机器人技术有限公司 | 机器人控制方法、装置、机器人及存储介质 |
| US20250162147A1 (en) * | 2023-11-17 | 2025-05-22 | Mitsubishi Electric Research Laboratories, Inc. | System and Method for Controlling a Multi-Legged Robot |
| CN119472748B (zh) * | 2024-11-05 | 2025-10-24 | 广州小鹏汽车科技有限公司 | 双足机器人的控制方法、电子设备及存储介质 |
Citations (12)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20100161116A1 (en) * | 2008-12-22 | 2010-06-24 | Samsung Electronics Co., Ltd. | Robot and method of controlling balance thereof |
| CN105511465A (zh) * | 2015-12-02 | 2016-04-20 | 歌尔声学股份有限公司 | 一种双足机器人的步态控制方法和装置 |
| CN105608309A (zh) * | 2015-12-11 | 2016-05-25 | 杭州南江机器人股份有限公司 | 一种双足机器人步行规划和控制方法 |
| CN108098760A (zh) * | 2016-11-24 | 2018-06-01 | 广州映博智能科技有限公司 | 一种新的双足机器人行走控制装置及方法 |
| CN109202901A (zh) * | 2018-08-29 | 2019-01-15 | 厦门理工学院 | 一种双足机器人爬楼梯步态规划方法、装置及机器人 |
| CN109807884A (zh) * | 2018-12-29 | 2019-05-28 | 江苏集萃智能制造技术研究所有限公司 | 一种基于惯性导航系统的双足机器人步态稳定性控制方法 |
| CN111290389A (zh) * | 2020-02-25 | 2020-06-16 | 北京理工大学 | 一种双足机器人落脚位置控制系统与方法 |
| CN111730595A (zh) * | 2020-06-28 | 2020-10-02 | 常州工学院 | 一种斜坡条件下双足机器人步态稳定控制方法 |
| CN111880544A (zh) * | 2020-08-07 | 2020-11-03 | 深圳市优必选科技股份有限公司 | 仿人机器人步态规划方法、装置和仿人机器人 |
| WO2020233050A1 (zh) * | 2019-11-26 | 2020-11-26 | 浙江大学 | 一种双足机器人不平整路面动态跑步步态实现方法 |
| CN112051735A (zh) * | 2020-08-19 | 2020-12-08 | 大连理工大学 | 仿人机器人步行控制方法 |
| CN113064433A (zh) * | 2021-03-22 | 2021-07-02 | 深圳市优必选科技股份有限公司 | 机器人迈步控制方法、装置、机器人控制设备及存储介质 |
Family Cites Families (9)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| KR20120069333A (ko) * | 2010-12-20 | 2012-06-28 | 삼성전자주식회사 | 로봇의 보행 제어 장치 및 그 제어 방법 |
| US8942848B2 (en) * | 2011-07-06 | 2015-01-27 | Florida Institute for Human and Machine Cognition | Humanoid robot that can dynamically walk with limited available footholds in the presence of disturbances |
| KR20130078886A (ko) * | 2012-01-02 | 2013-07-10 | 현대자동차주식회사 | 보행로봇의 균형제어방법 |
| US9044859B2 (en) * | 2013-10-31 | 2015-06-02 | Disney Enterprises, Inc. | Method for gait generation and tracking control for a bipedal walking robot |
| US11247738B2 (en) * | 2019-05-24 | 2022-02-15 | Disney Enterprises, Inc. | Legged high-dexterity self-balancing capable robot actor |
| CN111605642B (zh) * | 2020-06-11 | 2021-05-04 | 哈尔滨工业大学 | 六足机器人的自由容错步态规划方法、装置及存储介质 |
| CN113031639B (zh) * | 2021-03-22 | 2024-03-12 | 深圳市优必选科技股份有限公司 | 机器人步长处理方法、装置、机器人控制设备及存储介质 |
| CN113359800B (zh) * | 2021-06-30 | 2024-08-09 | 深圳市优必选科技股份有限公司 | 机器人行走控制方法、装置、机器人控制设备及存储介质 |
| CN114248855B (zh) * | 2021-12-20 | 2022-10-21 | 北京理工大学 | 双足机器人空间域步态规划与控制的方法 |
-
2021
- 2021-03-22 CN CN202110303627.4A patent/CN113064433B/zh active Active
- 2021-11-19 WO PCT/CN2021/131892 patent/WO2022199080A1/zh not_active Ceased
-
2022
- 2022-12-28 US US18/090,457 patent/US12311545B2/en active Active
Patent Citations (12)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20100161116A1 (en) * | 2008-12-22 | 2010-06-24 | Samsung Electronics Co., Ltd. | Robot and method of controlling balance thereof |
| CN105511465A (zh) * | 2015-12-02 | 2016-04-20 | 歌尔声学股份有限公司 | 一种双足机器人的步态控制方法和装置 |
| CN105608309A (zh) * | 2015-12-11 | 2016-05-25 | 杭州南江机器人股份有限公司 | 一种双足机器人步行规划和控制方法 |
| CN108098760A (zh) * | 2016-11-24 | 2018-06-01 | 广州映博智能科技有限公司 | 一种新的双足机器人行走控制装置及方法 |
| CN109202901A (zh) * | 2018-08-29 | 2019-01-15 | 厦门理工学院 | 一种双足机器人爬楼梯步态规划方法、装置及机器人 |
| CN109807884A (zh) * | 2018-12-29 | 2019-05-28 | 江苏集萃智能制造技术研究所有限公司 | 一种基于惯性导航系统的双足机器人步态稳定性控制方法 |
| WO2020233050A1 (zh) * | 2019-11-26 | 2020-11-26 | 浙江大学 | 一种双足机器人不平整路面动态跑步步态实现方法 |
| CN111290389A (zh) * | 2020-02-25 | 2020-06-16 | 北京理工大学 | 一种双足机器人落脚位置控制系统与方法 |
| CN111730595A (zh) * | 2020-06-28 | 2020-10-02 | 常州工学院 | 一种斜坡条件下双足机器人步态稳定控制方法 |
| CN111880544A (zh) * | 2020-08-07 | 2020-11-03 | 深圳市优必选科技股份有限公司 | 仿人机器人步态规划方法、装置和仿人机器人 |
| CN112051735A (zh) * | 2020-08-19 | 2020-12-08 | 大连理工大学 | 仿人机器人步行控制方法 |
| CN113064433A (zh) * | 2021-03-22 | 2021-07-02 | 深圳市优必选科技股份有限公司 | 机器人迈步控制方法、装置、机器人控制设备及存储介质 |
Non-Patent Citations (2)
| Title |
|---|
| SATOSHI, I ET AL.: "Design and adaptive balance control of a biped robot with fewer actuators for slope walking", MECHATRONICS, vol. 49, 28 February 2018 (2018-02-28), pages 56 - 66, XP085415510, ISSN: 0957-4158, DOI: 10.1016/j.mechatronics.2017.11.007 * |
| ZHOU JIANGCHEN, XIAOHUI XIAO: "Walking gaits planning with variable footstep length of biped robot based on variable center-of-mass height", JOURNAL OF CENTRAL SOUTH UNIVERSITY(SCIENCE AND TECHNOLOGY), ZHONGNAN DAXUE, CHANGSHA, CN, vol. 51, no. 4, 26 April 2020 (2020-04-26), CN , pages 944 - 952, XP055970105, ISSN: 1672-7207, DOI: 10.11817/j.issn.1672-7207.2020.04.009 * |
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN113064433A (zh) * | 2021-03-22 | 2021-07-02 | 深圳市优必选科技股份有限公司 | 机器人迈步控制方法、装置、机器人控制设备及存储介质 |
| CN113064433B (zh) * | 2021-03-22 | 2023-08-18 | 深圳市优必选科技股份有限公司 | 机器人迈步控制方法、装置、机器人控制设备及存储介质 |
Also Published As
| Publication number | Publication date |
|---|---|
| US12311545B2 (en) | 2025-05-27 |
| US20230202027A1 (en) | 2023-06-29 |
| CN113064433B (zh) | 2023-08-18 |
| CN113064433A (zh) | 2021-07-02 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| WO2022199080A1 (zh) | 机器人迈步控制方法、装置、机器人控制设备及存储介质 | |
| US11230001B2 (en) | Biped robot gait control method and biped robot | |
| WO2022199058A1 (zh) | 机器人步长处理方法、装置、机器人控制设备及存储介质 | |
| CN111168672B (zh) | 机器人运动规划方法、系统、计算机设备和存储介质 | |
| WO2023273107A1 (zh) | 机器人行走控制方法、装置、机器人控制设备及存储介质 | |
| CN108469827A (zh) | 一种适用于物流仓储系统的自动导引车全局路径规划方法 | |
| WO2022247170A1 (zh) | 机器人平衡控制方法、装置、机器人控制设备及存储介质 | |
| WO2025102514A1 (zh) | 足式机器人规划与控制方法、装置、机器人及存储介质 | |
| CN114489104A (zh) | 机器人迈步控制方法及装置、机器人控制设备和存储介质 | |
| CN104613965B (zh) | 一种基于双向滤波平滑技术的步进式行人导航方法 | |
| US20250328140A1 (en) | Motion control method for robot, electronic device, and computer-readable storage medium | |
| WO2022134131A1 (zh) | 一种机器人姿态控制方法、装置及机器人 | |
| WO2022160811A1 (zh) | 足式机器人轨迹跟踪方法、设备及可读存储介质 | |
| WO2024230069A1 (zh) | 一种机器人的控制方法、装置、存储介质及电子设备 | |
| WO2025107364A1 (zh) | 双足机器人的运动规划 | |
| CN113524195B (zh) | 机器人落脚位置控制方法、装置、电子设备及存储介质 | |
| Ficht et al. | Direct centroidal control for balanced humanoid locomotion | |
| JP7221833B2 (ja) | 非線形モデル予測制御装置 | |
| CN115480581B (zh) | 机器人控制方法、机器人控制系统及机器人 | |
| CN120962680A (zh) | 机器人手臂运动控制方法、装置、设备、机器人及介质 | |
| CN119260742B (zh) | 多肢体外骨骼行走平衡控制方法、装置、设备及存储介质 | |
| CN113848881A (zh) | 一种消防车路径规划方法、系统、终端以及存储介质 | |
| CN112744315A (zh) | 适用动态行走和非周期步行的腿式机器人稳定性判据方法 | |
| CN119088013B (zh) | 基于nurbs曲线的双足机器人落足点规划方法、计算机可读存储介质、足部装置 | |
| Zhu et al. | Adaptive Adjustment of Factor’s Weight for a Multi-Sensor SLAM |
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: 21932688 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: 21932688 Country of ref document: EP Kind code of ref document: A1 |







