Biped robot control method, electronic device, storage medium and program product

By collecting the current and expectations of two -footed robot, determine its relative movement position and swing angle, solve the problem of poor control effects in existing technologies, and achieve precise control of double -footed robots.

CN119356384AActive Publication Date: 2025-01-24GUANGZHOU PENGXING INTELLIGENT TECHNOLOGY CO LTD
View PDF 5 Cites 0 Cited by

Patent Information

Application Number
CN202411517529.0
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-10-28
Publication Date
2025-01-24
Estimated Expiration
2044-10-28

AI Technical Summary

Technical Problem

The prior art cannot achieve precise control of the running distance and angle of bipedal robots, resulting in poor control effects.

Method used

By collecting the current posture and desired posture of the bipedal robot, its relative movement position and relative swing angle are determined, and the operation of the bipedal robot is controlled based on these parameters.

Benefits of technology

It achieves precise control of the bipedal robot and ensures that it can operate as expected, thereby solving the problem of poor control effects.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119356384A_ABST
    Figure CN119356384A_ABST
Patent Text Reader

Abstract

The invention discloses a control method of a biped robot, electronic equipment, a storage medium and a program product. The method comprises the steps that in response to a received control instruction of the biped robot, the current posture of the biped robot is collected, and the control instruction carries the expected posture of the biped robot; the relative movement position and the relative swing angle of the biped robot are determined based on the current posture and the expected posture, the relative movement position is used for representing the stepping relative position of the supporting foot and the swing foot on the plane where the biped robot is located, and the relative swing angle is used for representing the stepping relative angle of the supporting foot and the swing foot on the plane; the supporting legs are used for supporting the biped robot to be in a stable state, and the swinging legs are used for controlling the biped robot to reach an expected posture; and controlling the biped robot to operate based on the relative movement position and the relative swing angle. The technical problem that the control effect on the biped robot is poor in the prior art is solved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of robot control, and in particular to a control method, electronic equipment, storage medium and program product of a biped robot. Background Art

[0002] With the continuous development of the field of intelligent control, the operation of remote-controlled bipedal robots is also facing many challenges. In related technologies, imitation learning is used to realize the remote control of bipedal robots. However, by using existing planning and control methods to realize the walking ability of bipedal robots from scratch, it is impossible to achieve precise control of the running distance and running angle of the bipedal robots, which results in poor control effect of the bipedal robots in related technologies.

[0003] To address the above-mentioned problems, no effective solution has been proposed yet. Summary of the invention

[0004] The embodiments of the present invention provide a control method, electronic device, storage medium and program product of a biped robot, so as to at least solve the technical problem of poor control effect of the biped robot in the related art.

[0005] According to one aspect of an embodiment of the present invention, a control method for a bipedal robot is provided, comprising: in response to receiving a control instruction of the bipedal robot, collecting the current posture of the bipedal robot, wherein the control instruction carries the desired posture of the bipedal robot; determining the relative movement position and relative swing angle of the bipedal robot based on the current posture and the desired posture, wherein the relative movement position is used to represent the relative position of the supporting foot and the swinging foot when walking on the plane where the bipedal robot is located, and the relative swing angle is used to represent the relative angle of the supporting foot and the swinging foot when walking on the plane, the supporting foot is used to support the bipedal robot in a stable state, and the swinging foot is used to control the bipedal robot to reach the desired posture; and controlling the operation of the bipedal robot based on the relative movement position and the relative swing angle.

[0006] Furthermore, the relative movement position and relative swing angle of the bipedal robot are determined based on the current posture and the expected posture, including: taking the orientation of the bipedal robot in the current posture as the first preset axis, and constructing a preset coordinate system with the center of mass of the bipedal robot as the coordinate origin, wherein the second preset axis in the preset coordinate system is in the same horizontal plane as the first preset axis and is perpendicular to each other, and the third preset axis in the preset coordinate system is perpendicular to the horizontal plane where the first preset axis is located; determining the relative movement position based on the current posture, the expected posture and the preset coordinate system; determining the relative swing angle based on the current posture, the expected posture and the third preset axis.

[0007] Furthermore, the relative moving position is determined based on the current posture, the expected posture and the preset coordinate system, including: determining the first coordinate position of the supporting foot in the preset coordinate system based on the current posture, and determining the second coordinate position of the swinging foot in the preset coordinate system; determining the third coordinate position of the swinging foot in the preset coordinate system based on the expected posture; determining the relative initial distance between the supporting foot and the swinging foot based on the first coordinate position and the second coordinate position; and determining the relative moving position based on the third coordinate position and the relative initial distance.

[0008] Furthermore, the relative swing angle is determined based on the current posture, the expected posture and the third preset axis, including: determining a first rotation angle of the supporting foot relative to the third preset axis based on the current posture, and determining a second rotation angle of the swing foot relative to the third preset axis; determining a third rotation angle of the swing foot relative to the third preset axis based on the expected posture; determining a relative initial angle of the supporting foot and the swing foot based on the first rotation angle and the second rotation angle; and determining a relative swing angle based on the third rotation angle and the relative initial angle.

[0009] Furthermore, the operation of the bipedal robot is controlled based on the relative moving position and the relative swing angle, including: inputting the relative moving position and the relative swing angle into a state machine, using the state machine to plan the operation of the bipedal robot, and obtaining a target stepping state of the bipedal robot, wherein the state machine is used to represent the stepping state transition relationship of the bipedal robot from a current posture to a desired posture; and controlling the operation of the bipedal robot based on the target stepping state.

[0010] Furthermore, the relative moving position and the relative swing angle are input into a state machine, and the state machine is used to plan the operation of the bipedal robot to obtain a target stepping state of the bipedal robot, including: constructing a landing interval of the swing foot based on the position information of the supporting foot; inputting the relative moving position and the relative swing angle into a state machine, and the state machine is used to plan the operation of the bipedal robot to obtain multiple stepping states of the bipedal robot, wherein the landing position of the swing foot is different in different stepping states; and screening multiple stepping states based on the landing interval to obtain a target stepping state.

[0011] Furthermore, the operation of the bipedal robot is controlled based on the target stepping state, including: constructing an operation trajectory of the bipedal robot based on the target stepping state and the target swing time of the swinging foot, wherein the target swing time is used to represent the swing time of the swinging foot of the bipedal robot from the current posture to the expected posture; and controlling the operation of the bipedal robot based on the operation trajectory.

[0012] According to another aspect of an embodiment of the present invention, there is further provided an electronic device, comprising: a memory storing an executable program; and a processor for running the program, wherein the control method of the bipedal robot is executed when the program is running.

[0013] According to another aspect of an embodiment of the present invention, a computer-readable storage medium is further provided, the computer-readable storage medium including a stored executable program, wherein when the executable program runs, the device where the computer-readable storage medium is located is controlled to execute the above-mentioned bipedal robot control method.

[0014] According to another aspect of an embodiment of the present invention, a computer program product is provided, including a computer program, and when the computer program is executed by a processor, the control method of the bipedal robot is implemented.

[0015] In an embodiment of the present invention, by responding to receiving a control instruction of a bipedal robot, the current posture of the bipedal robot is collected, and then the relative movement position and relative swing angle of the bipedal robot are determined based on the current posture and the expected posture, and finally the purpose of controlling the operation of the bipedal robot is achieved based on the relative movement position and the relative swing angle. It is easy to notice that the expected posture is carried by the control instruction. After obtaining the expected posture and the current posture of the bipedal robot, the relative movement position and the relative swing angle of the bipedal robot are determined according to the relative stepping position and the relative stepping angle between the supporting foot and the swing foot of the bipedal robot, and then the operation of the bipedal robot is controlled according to the relative movement position and the relative swing angle. The above process achieves the purpose of accurately controlling the bipedal robot to operate according to the expected target by obtaining the relative movement position and the relative swing angle of the bipedal robot, thereby realizing the technical effect of remotely and accurately controlling the motion trajectory of the bipedal robot, and thus solving the technical problem of poor control effect of the bipedal robot in the related technology. BRIEF DESCRIPTION OF THE DRAWINGS

[0016] The drawings described herein are used to provide a further understanding of the present invention and constitute a part of this application. The exemplary embodiments of the present invention and their descriptions are used to explain the present invention and do not constitute an improper limitation of the present invention. In the drawings:

[0017] Figure 1 is a flow chart of a control method of a biped robot according to an embodiment of the present invention;

[0018] Figure 2 is a schematic diagram of a preset coordinate system of a control method for a biped robot according to an embodiment of the present invention;

[0019] Figure 3 is a schematic diagram of a stepping state of a control method for a biped robot according to an embodiment of the present invention;

[0020] Figure 4 is a schematic diagram of a foot landing interval according to a control method of a biped robot according to an embodiment of the present invention;

[0021] Figure 5is a flow chart of an optional control method of a biped robot according to an embodiment of the present invention;

[0022] Figure 6 Schematic diagram of a control device for a bipedal robot according to an embodiment of the present invention. DETAILED DESCRIPTION

[0023] In order to enable those skilled in the art to better understand the scheme of the present invention, the technical scheme in the embodiments of the present invention will be clearly and completely described below in conjunction with the drawings in the embodiments of the present invention. Obviously, the described embodiments are only part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without creative work should fall within the scope of protection of the present invention.

[0024] It should be noted that the terms "first", "second", etc. in the specification and claims of the present invention and the above-mentioned drawings are used to distinguish similar objects, and are not necessarily used to describe a specific order or sequence. It should be understood that the data used in this way can be interchanged where appropriate, so that the embodiments of the present invention described herein can be implemented in an order other than those illustrated or described herein. In addition, the terms "including" and "having" and any variations thereof are intended to cover non-exclusive inclusions, for example, a process, method, system, product or device that includes a series of steps or units is not necessarily limited to those steps or units that are clearly listed, but may include other steps or units that are not clearly listed or inherent to these processes, methods, products or devices.

[0025] According to an embodiment of the present invention, an embodiment of a control method for a bipedal robot is provided. It should be noted that the steps shown in the flowchart of the accompanying drawings can be executed in a computer system such as a set of computer executable instructions, and although a logical order is shown in the flowchart, in some cases, the steps shown or described can be executed in an order different from that shown here.

[0026] Figure 1 is a flow chart of a control method of a biped robot according to an embodiment of the present invention. Figure 1 As shown, the method comprises the following steps:

[0027] Step S102, in response to receiving a control instruction of the bipedal robot, collecting the current posture of the bipedal robot, wherein the control instruction carries the desired posture of the bipedal robot.

[0028] The control instructions in the above steps are used to describe the signals sent by the control system to guide the actions or behaviors of the bipedal robot to achieve specific tasks or goals. The types of control instructions may include but are not limited to acquisition control instructions, position control instructions, posture control instructions, and speed control instructions. The specific control instructions should be determined according to actual needs and are not limited here.

[0029] The control instructions in the above steps may include but are not limited to those issued by a control system such as a motion capture system or a remote controller:

[0030] In the motion capture system scenario, the motion capture system captures the movements of the motion capture actor and converts the current movements of the motion capture actor into control instructions and sends them to the bipedal robot. When the bipedal robot receives the control instructions, it first collects the current posture of the bipedal robot at this time, and starts running according to the current movement of the bipedal robot's motion capture actor contained in the control instructions, that is, the expected posture, until the expected posture is reached.

[0031] In the remote control scenario, the remote control operation instructions are converted into control instructions and sent to the bipedal robot. When the bipedal robot receives the control instructions, it first collects the current posture of the bipedal robot, and starts running according to the remote control operation instructions of the bipedal robot contained in the control instructions, that is, the expected posture, until it reaches the expected posture.

[0032] The control system for issuing the control instructions above is only an example, and the specific control system should be determined according to the actual situation and is not limited here.

[0033] The bipedal robot in the above steps is used to describe a robot with two legs that can imitate the way humans walk. The types of bipedal robots may include but are not limited to bionic robots, industrial robots, etc. The specific type of bipedal robot should be determined according to actual needs and is not limited here. The functions of bipedal robots may include but are not limited to search and rescue, family services, entertainment performances, etc.

[0034] The current posture in the above steps is used to describe the actual position and angle of the bipedal robot at the current moment. The current posture is the basis for controlling the action of the bipedal robot and is crucial to planning the next action of the bipedal robot. The current posture may include but is not limited to the current position, current direction, current supporting foot and current angle of the bipedal robot. The specific type of current posture can be determined according to actual needs and is not limited here.

[0035] The expected posture in the above steps is used to describe the target position and angle that the control system expects the bipedal robot to reach. The expected posture can be used to guide the bipedal robot on how to adjust its movements to achieve the goal. The types of expected postures may include but are not limited to the target position, target angle, target direction, target movement, etc. of the bipedal robot. The specific expected posture can be determined according to actual needs and is not limited here.

[0036] In the above steps, the current posture of the biped robot is collected, and the collection method may include but is not limited to the following methods:

[0037] The first method, sensor acquisition, can obtain the current posture of the biped robot through various sensors such as joint angle sensors and accelerometers.

[0038] The second method, visual acquisition, can determine the current posture of the bipedal robot through a camera and a three-dimensional spatial coordinate system.

[0039] The above collection methods are only examples. The specific collection method should be determined according to the actual situation of the control system and is not limited here.

[0040] The response in the above steps is used to describe the reaction of the bipedal robot to the instructions issued by the control system. The response may include but is not limited to responding to the collection instruction to collect the current posture of the bipedal robot; responding to the control instruction to control the bipedal robot to achieve the desired posture, etc. The specific response needs to be determined according to the needs of the control system and is not limited here.

[0041] In an optional embodiment, when a control instruction is received, the control system first collects the current posture of the bipedal robot in real time to ensure accurate monitoring of the dynamic state of the bipedal robot; then, based on the collected current posture and the desired posture carried in the control instruction, the action of the bipedal robot is further controlled. The above process can control the bipedal robot in real time and accurately through real-time monitoring and adjustment, and at the same time, based on the difference between the current posture and the desired posture, the bipedal robot can be dynamically adjusted, thereby improving the adaptive ability of the bipedal robot.

[0042] Step S104, determining the relative moving position and relative swing angle of the bipedal robot based on the current posture and the desired posture, wherein the relative moving position is used to indicate the relative positions of the supporting foot and the swinging foot when walking on the plane where the bipedal robot is located, and the relative swinging angle is used to indicate the relative angle of the supporting foot and the swinging foot when walking on the plane, the supporting foot is used to support the bipedal robot in a stable state, and the swinging foot is used to control the bipedal robot to reach the desired posture.

[0043] The relative moving position in the above steps is used to describe the relative positions of the supporting foot and the swing foot on the plane where the robot is located in the gait planning of the bipedal robot. The relative moving position can be used to determine the specific position where the swing foot should step to achieve a smooth transition of the gait.

[0044] The relative swing angle in the above steps is used to describe the relative angle between the supporting foot and the swing foot on the plane in the gait planning of the biped robot. The relative swing angle is used to determine the rotation direction and angle of the swing foot during the step to achieve a smooth gait and balance of the robot.

[0045] The supporting foot in the above steps is used to describe the foot that is currently in contact with the ground and provides support in the gait of the biped robot. The supporting foot can be used to maintain the balance and stability of the robot and is the basis of gait conversion.

[0046] The swing foot in the above steps is used to describe the foot that is not in contact with the ground and is ready to take a step in the gait of the biped robot. The swing foot can be used to realize the gait transition and change the position and posture of the robot by taking a step.

[0047] In an optional embodiment, the current posture of the biped robot needs to be determined first, and then the relative movement position and relative swing angle to be achieved are calculated based on the current posture and the expected posture, and then the gait of the biped robot is adjusted by the relative movement position and relative swing angle, so that the biped robot can achieve smooth walking and turning. This control strategy helps the robot maintain balance in different terrains and conditions, and can flexibly respond to changes in the external environment.

[0048] Step S106, controlling the movement of the biped robot based on the relative moving position and the relative swing angle.

[0049] The control methods for controlling the operation of the bipedal robot in the above steps may include but are not limited to the following methods:

[0050] The first method uses neural network control to calculate the relative movement position and relative swing angle based on the neural network, and controls the operation of the bipedal robot based on the calculation results.

[0051] The second method is to use fuzzy logic control and fuzzy set theory to deal with the uncertainty and ambiguity in the operation of the bipedal robot, and adjust the center of gravity and posture of the bipedal robot to achieve smooth operation of the bipedal robot.

[0052] The third method, hybrid control, can combine different control methods to improve the performance of the overall control method.

[0053] The above control methods are only examples, and the specific control methods need to be determined based on actual conditions.

[0054] In an embodiment of the present invention, by responding to receiving a control instruction of a bipedal robot, the current posture of the bipedal robot is collected, and then the relative movement position and relative swing angle of the bipedal robot are determined based on the current posture and the expected posture, and finally the purpose of controlling the operation of the bipedal robot is achieved based on the relative movement position and the relative swing angle. It is easy to notice that the expected posture is carried by the control instruction. After obtaining the expected posture and the current posture of the bipedal robot, the relative movement position and the relative swing angle of the bipedal robot are determined according to the relative stepping position and the relative stepping angle between the supporting foot and the swing foot of the bipedal robot, and then the operation of the bipedal robot is controlled according to the relative movement position and the relative swing angle. The above process achieves the purpose of accurately controlling the bipedal robot to operate according to the expected target by obtaining the relative movement position and the relative swing angle of the bipedal robot, thereby realizing the technical effect of remotely and accurately controlling the motion trajectory of the bipedal robot, and thus solving the technical problem of poor control effect of the bipedal robot in the related technology.

[0055] Optionally, the relative movement position and relative swing angle of the bipedal robot are determined based on the current posture and the expected posture, including: taking the orientation of the bipedal robot in the current posture as the first preset axis, and constructing a preset coordinate system with the center of mass of the bipedal robot as the coordinate origin, wherein the second preset axis in the preset coordinate system is in the same horizontal plane as the first preset axis and is perpendicular to each other, and the third preset axis in the preset coordinate system is perpendicular to the horizontal plane where the first preset axis is located; determining the relative movement position based on the current posture, the expected posture and the preset coordinate system; determining the relative swing angle based on the current posture, the expected posture and the third preset axis.

[0056] The above-mentioned first preset axis is used to describe the orientation of the current posture of the bipedal robot. The first preset axis can be used as a reference direction of the coordinate system to help define the movement direction of the robot on the horizontal plane. The types of the first preset axis may include but are not limited to the forward direction, backward direction or any other direction of the bipedal robot. The specific first preset axis needs to be determined based on the design and current posture of the bipedal robot, and is not limited here.

[0057] The above-mentioned second preset axis is used to describe a coordinate axis that is in the same horizontal plane as the first preset axis and is perpendicular to each other. It usually refers to the lateral direction of the bipedal robot. The second preset axis can be used to define the lateral movement of the bipedal robot on the horizontal plane, and together with the first preset axis, it constitutes a horizontal coordinate system. The types of the second preset axis may include but are not limited to the left or right direction of the bipedal robot. The specific second preset axis needs to be determined according to the direction of the first preset axis, and is not limited here.

[0058] The above-mentioned third preset axis is a coordinate axis used to describe a horizontal plane perpendicular to the first preset axis and the second preset axis. The third preset axis can be used to define the vertical movement of the bipedal robot, and together with the first preset axis and the second preset axis, it constitutes a preset coordinate system. The types of the third preset axis may include but are not limited to vertically upward or downward. The specific third preset axis needs to be determined according to the movement requirements of the robot and is not limited here.

[0059] The above-mentioned center of mass is used to describe the balance point of the mass distribution of the bipedal robot. It is the equivalent concentration point of all the mass of the bipedal robot. The center of mass serves as the coordinate origin of the preset coordinate system, which helps to determine the balance and movement of the robot. The position of the center of mass can be determined according to the design and load conditions of the bipedal robot, and is not limited here.

[0060] In an optional embodiment, firstly, based on the current posture of the bipedal robot, a coordinate system with the orientation of the bipedal robot as the first preset axis is determined, and the origin of the coordinate system is set at the center of mass of the bipedal robot. In the above coordinate system, the second preset axis and the first preset axis are on the same horizontal plane and perpendicular to each other, while the third preset axis is perpendicular to the horizontal plane. Through this coordinate system, the moving position and swing angle of the desired posture of the bipedal robot relative to the current posture can be calculated. This method helps the bipedal robot to accurately adjust its position and posture when performing tasks to adapt to different environments and task requirements, thereby improving the flexibility and adaptability of the bipedal robot.

[0061] In an optional embodiment, Figure 2 is a schematic diagram of a preset coordinate system of a control method for a biped robot according to an embodiment of the present invention, such as Figure 2 As shown, the preset coordinate system includes an x-axis, a y-axis, a z-axis and an origin O, the x-axis, the y-axis, and the z-axis correspond to the first preset axis, the second preset axis, and the third preset axis respectively, and the origin O corresponds to the center of mass of the bipedal robot.

[0062] Optionally, the relative moving position is determined based on the current posture, the expected posture and the preset coordinate system, including: determining the first coordinate position of the supporting foot in the preset coordinate system based on the current posture, and determining the second coordinate position of the swinging foot in the preset coordinate system; determining the third coordinate position of the swinging foot in the preset coordinate system based on the expected posture; determining the relative initial distance between the supporting foot and the swinging foot based on the first coordinate position and the second coordinate position; and determining the relative moving position based on the third coordinate position and the relative initial distance.

[0063] The first coordinate position mentioned above is used to describe the position of the supporting foot in the preset coordinate system. The first coordinate position can be used to determine the current position of the supporting foot, which is the basis for calculating the moving path and gait.

[0064] The second coordinate position mentioned above is used to describe the position of the swinging foot in the preset coordinate system. The second coordinate position can be used to determine the current position of the swinging foot, and then facilitate the determination of the relative initial distance between the swinging foot and the supporting foot.

[0065] The third coordinate position mentioned above is used to describe the target position of the swing foot in the preset coordinate system under the expected posture. The third coordinate position can be used to determine the position that the swing foot needs to reach, and is the target point in gait planning.

[0066] The above relative initial distance is used to describe the initial distance between the supporting foot and the swinging foot in the current posture. The relative initial distance can be used to calculate the moving path of the swinging foot from the current position to the target position.

[0067] In an optional embodiment, first, the specific positions of the supporting foot and the swinging foot in the preset coordinate system, i.e., the first coordinate position and the second coordinate position, are calculated according to the current posture. Then, the target position of the swinging foot in the preset coordinate system, i.e., the third coordinate position, is calculated according to the desired posture. The relative initial distance between the supporting foot and the swinging foot is determined by comparing the initial positions of the two. Finally, the relative movement required for the supporting foot and the swinging foot is calculated in combination with the target position and the relative initial distance of the swinging foot to achieve a smooth transition from the current posture to the desired posture. The above method helps to improve the accuracy and efficiency of robots or automated equipment when performing tasks, especially in scenarios that require precise control of movement and posture adjustment.

[0068] Optionally, the relative swing angle is determined based on the current posture, the expected posture and the third preset axis, including: determining a first rotation angle of the supporting foot relative to the third preset axis based on the current posture, and determining a second rotation angle of the swing foot relative to the third preset axis; determining a third rotation angle of the swing foot relative to the third preset axis based on the expected posture; determining a relative initial angle of the supporting foot and the swing foot based on the first rotation angle and the second rotation angle; determining the relative swing angle based on the third rotation angle and the relative initial angle.

[0069] The above-mentioned first rotation angle is used to describe the rotation angle of the supporting foot relative to the third preset axis. The first rotation angle describes the position of the supporting foot relative to the body of the bipedal robot in the vertical plane. The first rotation angle may include but is not limited to a positive first rotation angle or a reverse first rotation angle. The specific first rotation angle needs to be determined based on the rotation direction of the supporting foot relative to the vertical axis. It is not limited here. The first rotation angle can be used to determine the current position and direction of the supporting foot.

[0070] The above-mentioned second rotation angle is used to describe the rotation angle of the swing foot relative to the third preset axis. The second rotation angle describes the position of the swing foot relative to the robot body in the vertical plane. The second rotation angle may include but is not limited to a positive second rotation angle or a reverse second rotation angle. The specific second rotation angle needs to be determined according to the rotation direction of the swing foot relative to the vertical axis. No limitation is made here. The second rotation angle can be used to help determine the current position and direction of the swing foot.

[0071] The above-mentioned third rotation angle is used to describe the rotation angle of the swing foot relative to the third preset axis determined based on the expected posture. The third rotation angle describes the position that the swing foot should reach when it reaches the expected posture. The size of the third rotation angle is determined by the rotation direction of the swing foot relative to the vertical axis when the swing foot is in the expected posture. It is not limited here. The third rotation angle can be used to provide target position information of the swing foot.

[0072] The above-mentioned relative initial angle is used to describe the initial angle difference between the supporting foot and the swinging foot, which is calculated based on the first rotation angle and the second rotation angle. The size of the relative initial angle is determined by the relative position of the supporting foot and the swinging foot, and is not limited here. The relative initial angle can be used to provide the current relative position information between the supporting foot and the swinging foot.

[0073] In an optional embodiment, first, the rotation angles of the supporting foot and the swinging foot relative to the third preset axis are determined based on the current posture, that is, the first rotation angle and the second rotation angle are determined; then, according to the desired posture, the angle of the swinging foot relative to the third preset axis, that is, the third rotation angle, is calculated; then, the relative initial angle between the supporting foot and the swinging foot is determined by the first rotation angle and the second rotation angle; finally, the relative swinging angle that needs to be adjusted between the supporting foot and the swinging foot is calculated in combination with the third rotation angle and the relative initial angle of the swinging foot to achieve a smooth gait transition. The above process can enable the bipedal robot to adapt to different walking conditions, such as uneven ground or situations where obstacles need to be crossed, by dynamically adjusting the relative angles of the supporting foot and the swinging foot. It can also accurately control the gait of the bipedal robot to ensure stability and efficiency during walking, while helping to reduce energy consumption and improve the smoothness and naturalness of walking.

[0074] Optionally, the operation of the bipedal robot is controlled based on the relative moving position and the relative swing angle, including: inputting the relative moving position and the relative swing angle into a state machine, using the state machine to plan the operation of the bipedal robot, and obtaining a target stepping state of the bipedal robot, wherein the state machine is used to represent the stepping state transition relationship of the bipedal robot from a current posture to a desired posture; and controlling the operation of the bipedal robot based on the target stepping state.

[0075] The above-mentioned state machine is used to describe the transition of the bipedal robot from one state to another. The types of state machines may include but are not limited to finite state machines, extended state machines or hierarchical state machines. The specific state machine can be determined according to actual needs and is not limited here. The role of the state machine may include but is not limited to managing and controlling the behavior and action sequence of the bipedal robot, ensuring that the bipedal robot can make correct responses based on input and current state, etc.

[0076] The above-mentioned operation planning is used to describe the generation of a series of actions or paths for the bipedal robot so that it can safely and effectively reach the target position and posture from the current position and posture. The operation planning may include but is not limited to static planning and dynamic planning. The specific operation planning needs to be determined according to the actual situation of the system and the environment, and is not limited here. The role of the operation planning may include but is not limited to ensuring that the action sequence of the bipedal robot is feasible and avoiding instability during operation.

[0077] The above-mentioned target stepping state is used to describe the position and posture that the biped robot is expected to reach after performing a series of actions. The target stepping state may include but is not limited to the position, angle and balance state of the biped robot's feet. The target stepping state may include but is not limited to the single-step target stepping state and the continuous target stepping state. The specific target stepping state can be determined according to actual needs and is not limited here. The role of the target stepping state may include but is not limited to clarifying the action goal and helping the biped robot plan the path.

[0078] In an optional embodiment, the relative moving position and relative swing angle of the bipedal robot are first determined, and then input into the state machine. The state machine can plan a series of target stepping states based on the relative moving position and relative swing angle information of the bipedal robot. These states represent the transition path of the robot from the current posture to the desired posture. The role of the state machine is to simulate and predict the robot's stepping behavior in different states, so as to ensure that each step is accurate and effective. In this way, the bipedal robot can respond to environmental changes more flexibly and efficiently, achieve more natural and stable walking, and thus be able to better perform tasks in complex and changing environments.

[0079] In an optional embodiment, Figure 3 is a schematic diagram of a stepping state of a control method of a biped robot according to an embodiment of the present invention, such as Figure 3As shown in the figure, the circle on the left side of the figure represents the relative swing angle between the left and right feet of the bipedal robot, where the relative swing angle = 0.3; the four circles in the figure except the circle on the left side respectively represent the relative movement positions between the two feet when the bipedal robot is in four positions, namely the relative movement position of the center circle = (0, 0.2), the relative movement position of the upper circle = (-0.1, 0.2), the relative movement position of the lower circle = (0.1, 0.2), and the relative movement position of the right circle = (0, 0.3); the arrows between the circles represent specific stepping actions of the bipedal robot, including right-right, left-left, right-left, left-right, right front, left rear, right rear, left front, right original, and left original. The above relative movement positions and relative swing angles are only examples. The specific values ​​need to be determined according to actual conditions and are not limited here.

[0080] In the preset coordinate system, the bipedal robot stands at the origin. At this time, the coordinates of the right foot of the bipedal robot are (0,-0.1), and the coordinates of the left foot are (0,0.1). At this time, the relative movement position between the left and right feet is (0,0.2). If the left foot steps 0.1m to the left, the relative movement position between the left and right feet is (0,0.3). Similarly, if the bipedal robot steps 0.1m backward from the left foot, the relative movement position between the left and right feet is (-0.1,0.2). If the bipedal robot steps 0.1m backward from the left foot, the relative movement position between the left and right feet is (0.1,0.2). Here, the relative movement position is only an example. The specific relative swing angle can be determined according to the actual situation and is not limited here. The relative swing angle is the left foot coordinate minus the right foot coordinate. Figure 3 The relative swing angle is 0.3. In addition, when the bipedal robot stands at attention, when both feet are facing the same direction, the relative swing angle = 0, when the feet are facing outward, the relative swing angle is > 0, and when the feet are facing inward, the relative swing angle is < 0, etc. The relative swing angle here is only an example. The specific relative swing angle can be determined according to the actual situation and is not limited here.

[0081] In addition to the above actions, Figure 3 The stepping action marked on the middle arrow can also enable the bipedal robot to reach a relative moving position. Each relative moving position can be transmitted to each other through stepping actions, such as "right right" means the right foot steps to the right, or steps out to the right with the eight characters turned outward, "left left" means the left foot steps to the left, "right left" means the right foot steps to the left, "left in place" means the left foot steps in place, and "right in place" means the right foot steps in place. The above stepping actions are only examples. The specific stepping actions can be adjusted according to actual conditions and are not limited here.

[0082] Optionally, the relative movement position and the relative swing angle are input into a state machine, and the state machine is used to plan the operation of the bipedal robot to obtain a target stepping state of the bipedal robot, including: constructing a landing interval of the swing foot based on the position information of the supporting foot; inputting the relative movement position and the relative swing angle into a state machine, and the state machine is used to plan the operation of the bipedal robot to obtain multiple stepping states of the bipedal robot, wherein the landing position of the swing foot is different in different stepping states; and screening multiple stepping states based on the landing interval to obtain a target stepping state.

[0083] The above-mentioned landing interval is used to describe the area where the swinging foot can safely land during the walking of the bipedal robot. The landing interval may include but is not limited to a circular landing interval, an elliptical landing interval, etc. The specific landing interval is determined by the actual terrain environment and the robot requirements, and is not limited here. The role of the landing interval may include but is not limited to ensuring the safety of the bipedal robot and avoiding collisions with obstacles.

[0084] The above-mentioned multiple stepping states are used to describe a series of different walking gaits that a bipedal robot may adopt under a given relative moving position and relative swing angle. The multiple stepping states may include but are not limited to various stepping parameters such as step length, step height, step width, and speed. The specific stepping state needs to be determined according to actual needs and is not limited here. The role of multiple stepping states may include but is not limited to providing multiple walking plans so that the bipedal robot can adapt to different environmental conditions.

[0085] In an optional embodiment, first, the relative moving position and the swing angle are input into the state machine. The state machine plans a series of possible stepping states for the robot based on these input data. Each stepping state includes a potential landing position of the swinging foot, which is determined based on the position information of the current supporting foot. Then, the state machine will filter these stepping states according to the preset landing interval. Through the screening, those stepping states that do not meet the landing interval requirements can be excluded. Finally, the state machine will select one or more stepping states that meet the landing interval requirements as the target stepping states. These target stepping states will guide the bipedal robot to perform the next walking action to ensure that it maintains balance and efficiency during the movement. The above process, through the screening mechanism of the state machine, can ensure that every step of the robot is safe and effective, thereby improving the robot's walking performance and adaptability.

[0086] In an optional embodiment, Figure 4 is a schematic diagram of a footfall interval of a control method for a bipedal robot according to an embodiment of the present invention. Figure 4 As shown, Figure 4The left side is the left foot landing area, which is the semicircle with a radius of 0.2m and a radius of 0.05m inside and outside the semicircle with the left foot support position as the center. Figure 4 The right side is the right foot landing area. The right foot landing area is inside the semicircle with a radius of 0.2m and outside the semicircle with a radius of 0.05m, with the right foot support position as the center. The landing area is shown as the shaded part in the figure. To facilitate viewing of relevant data, the landing area on the left and right sides is represented by half of the shade respectively. The above radius range is only an example. The specific radius size can be determined according to actual conditions and is not limited here.

[0087] Optionally, the operation of the bipedal robot is controlled based on the target stepping state, including: constructing an operation trajectory of the bipedal robot based on the target stepping state and a target swing time of the swinging foot, wherein the target swing time is used to represent the swing time of the swinging foot of the bipedal robot from a current posture to a desired posture; and controlling the operation of the bipedal robot based on the operation trajectory.

[0088] The above-mentioned target swing time is used to describe the time required for the swinging foot of the biped robot to reach the desired posture from the current posture. The types of target swing time may include fast target swing time, slow target swing time, uniform target swing time, etc. The specific target swing time needs to be determined according to the actual target and is not limited here. The role of the target swing time may include but is not limited to calculating the movement speed and acceleration of the swinging foot, ensuring that the swinging foot can reach the target position on time, etc.

[0089] The above-mentioned running trajectory is used to describe the path of the position, velocity and acceleration of the two feet, joints or parts of the bipedal robot changing over time when performing a specific task. The types of motion trajectories may include but are not limited to linear motion trajectories, curved motion trajectories, compound motion trajectories, etc. The specific type of motion trajectory needs to be determined according to actual conditions and is not limited here. The role of the motion trajectory may include but is not limited to ensuring that the bipedal robot can move in a predetermined manner and avoid collisions.

[0090] In an optional embodiment, in order to ensure that the robot can move efficiently according to the predetermined target step state, it is first required to determine the running trajectory of the bipedal robot based on the target step state and the target swing time of the swinging foot. The above motion trajectory is combined with the target swing time to ensure that the bipedal robot reaches the desired position within the predetermined time, and then the bipedal robot is controlled to reach the target position based on the motion trajectory. The above process generates a control strategy by combining the target step state and the target swing time, so that the bipedal robot can plan its walking trajectory more intelligently and optimize its motion performance, so that it can achieve more natural and efficient walking whether on flat ground or in complex terrain.

[0091] In an optional embodiment, Figure 5 is a flow chart of an optional control method of a biped robot according to an embodiment of the present invention, such as Figure 5 As shown, in the control method, the current posture and expected posture of the bipedal robot are first obtained through a motion capture system or a remote control; then a planning strategy is obtained based on the current posture and the expected posture, including an expected leg swing trajectory and an expected body trajectory; then a foot-end posture tracking control signal is obtained through a leg swing controller, and a body posture tracking control signal is obtained through a body controller; then the foot-end posture tracking control signal and the body posture tracking control signal are input into the whole-body control system to obtain a torque; finally, the motor controls the operation of the bipedal robot according to the obtained torque, thereby realizing the control of the operating state of the bipedal robot.

[0092] The current posture and expected posture of the bipedal robot can be obtained by the motion capture system or remote control, including but not limited to the following methods:

[0093] In the motion capture system scenario, the motion capture system captures the movements of the motion capture actor and converts the current movements of the motion capture actor into control instructions and sends them to the bipedal robot. When the bipedal robot receives the control instructions, it first collects the current posture of the bipedal robot at this time, and starts running according to the current movements of the motion capture actor contained in the control instructions, that is, the expected posture of the bipedal robot. At this time, the current posture and expected posture of the bipedal robot are obtained.

[0094] In the remote control scenario, the remote control operation instructions are converted into control instructions and sent to the bipedal robot. When the bipedal robot receives the control instructions, it first collects the current posture of the bipedal robot, and starts running according to the remote control operation instructions contained in the control instructions, that is, the expected posture of the bipedal robot. At this time, the current posture and expected posture of the bipedal robot are obtained.

[0095] The above-mentioned method of obtaining the current posture of the biped robot may include but is not limited to a motion capture system and a remote controller. The specific method of obtaining the current posture may be determined according to actual conditions and is not limited here.

[0096] According to another aspect of an embodiment of the present invention, a control device for a bipedal robot is also provided, which can execute the control method for a bipedal robot provided in the above embodiment. The specific implementation method and preferred application scenario are the same as those in the above embodiment and will not be repeated here.

[0097] Figure 6 is a schematic diagram of a control device for a biped robot according to an embodiment of the present invention. Figure 6As shown, the device includes: an acquisition module 602, which is used to acquire the current posture of the bipedal robot in response to receiving a control instruction of the bipedal robot, wherein the control instruction carries the desired posture of the bipedal robot; a determination module 604, which is used to determine the relative movement position and relative swing angle of the bipedal robot based on the current posture and the desired posture, wherein the relative movement position is used to represent the relative position of the supporting foot and the swinging foot when walking on the plane where the bipedal robot is located, and the relative swinging angle is used to represent the relative angle of the supporting foot and the swinging foot when walking on the plane, the supporting foot is used to support the bipedal robot in a stable state, and the swinging foot is used to control the bipedal robot to reach the desired posture; a control module 606, which controls the operation of the bipedal robot based on the relative movement position and the relative swinging angle.

[0098] Optionally, the determination module includes: a construction unit, used to construct a preset coordinate system with the orientation of the bipedal robot in the current posture as the first preset axis and the center of mass of the bipedal robot as the coordinate origin, wherein the second preset axis in the preset coordinate system is in the same horizontal plane as the first preset axis and is perpendicular to each other, and the third preset axis in the preset coordinate system is perpendicular to the horizontal plane where the first preset axis is located; a first determination unit, determining the relative moving position based on the current posture, the expected posture and the preset coordinate system; a second determination unit, determining the relative swing angle based on the current posture, the expected posture and the third preset axis.

[0099] Optionally, the first determination unit includes: a first determination subunit, used to determine the first coordinate position of the supporting foot in a preset coordinate system based on the current posture, and determine the second coordinate position of the swinging foot in the preset coordinate system; a second determination subunit, used to determine the third coordinate position of the swinging foot in the preset coordinate system based on the expected posture; a third determination subunit, used to determine the relative initial distance between the supporting foot and the swinging foot based on the first coordinate position and the second coordinate position; and a fourth determination subunit, used to determine the relative moving position based on the third coordinate position and the relative initial distance.

[0100] Optionally, the second determination unit includes: a fifth determination subunit, used to determine a first rotation angle of the supporting foot relative to a third preset axis based on a current posture, and to determine a second rotation angle of the swing foot relative to the third preset axis; a sixth determination subunit, used to determine a third rotation angle of the swing foot relative to the third preset axis based on an expected posture; a seventh determination subunit, used to determine a relative initial angle of the supporting foot and the swing foot based on the first rotation angle and the second rotation angle; and an eighth determination subunit, used to determine a relative swing angle based on the third rotation angle and the relative initial angle.

[0101] Optionally, the control module includes: an operation unit, used to input the relative movement position and the relative swing angle into a state machine, use the state machine to plan the operation of the bipedal robot, and obtain a target stepping state of the bipedal robot, wherein the state machine is used to represent the stepping state transition relationship of the bipedal robot from a current posture to a desired posture; a control unit, used to control the operation of the bipedal robot based on the target stepping state.

[0102] Optionally, the operation unit includes: a first construction subunit, used to construct a landing interval of the swing foot based on the position information of the supporting foot; an operation subunit, used to input the relative movement position and the relative swing angle into a state machine, and use the state machine to plan the operation of the bipedal robot to obtain multiple step states of the bipedal robot, wherein the landing position of the swing foot is different in different step states; and a screening subunit, used to screen multiple step states based on the landing interval to obtain a target step state.

[0103] Optionally, the control unit includes: a second construction subunit, used to construct the running trajectory of the bipedal robot based on the target stepping state and the target swing time of the swinging foot, wherein the target swing time is used to indicate the swing time of the swinging foot of the bipedal robot from the current posture to the expected posture; and a control subunit, used to control the operation of the bipedal robot based on the running trajectory.

[0104] According to another aspect of an embodiment of the present invention, there is further provided an electronic device, comprising: a memory storing an executable program; and a processor for running the program, wherein the method in each embodiment of the present invention is executed when the program is running.

[0105] According to another aspect of an embodiment of the present invention, a computer-readable storage medium is provided. The computer-readable storage medium includes a stored program. When the program is executed, a processor of a device is controlled to execute the methods of various embodiments of the present invention.

[0106] The computer storage medium in the above steps can be a medium used to store certain discontinuous physical quantities in a computer memory, and the computer storage medium mainly includes semiconductors, magnetic cores, magnetic drums, magnetic tapes, laser disks, etc. The stored program included in the computer-readable storage medium can be a set of instructions that can be recognized and executed by a computer, running on an electronic computer, and is an information tool that meets certain needs of people.

[0107] According to another aspect of an embodiment of the present invention, a computer program product is provided, including a computer program. When the computer program is executed by a processor, the method in each embodiment of the present invention is implemented.

[0108] The serial numbers of the above embodiments of the present invention are only for description and do not represent the advantages or disadvantages of the embodiments.

[0109] In the above embodiments of the present invention, the description of each embodiment has its own emphasis. For parts that are not described in detail in a certain embodiment, reference can be made to the relevant descriptions of other embodiments.

[0110] In the several embodiments provided in this application, it should be understood that the disclosed technical content can be implemented in other ways. Among them, the device embodiments described above are only schematic. For example, the division of the units can be a logical function division. There may be other division methods in actual implementation. For example, multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the mutual coupling or direct coupling or communication connection shown or discussed can be through some interfaces, indirect coupling or communication connection of units or modules, which can be electrical or other forms.

[0111] The units described as separate components may or may not be physically separated, and the components shown as units may or may not be physical units, that is, they may be located in one place or distributed on multiple units. Some or all of the units may be selected according to actual needs to achieve the purpose of the present embodiment.

[0112] In addition, each functional unit in each embodiment of the present invention may be integrated into one processing unit, or each unit may exist physically separately, or two or more units may be integrated into one unit. The above-mentioned integrated unit may be implemented in the form of hardware or in the form of software functional units.

[0113] If the integrated unit is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present invention, in essence, or the part that contributes to the prior art, or all or part of the technical solution can be embodied in the form of a software product. The computer software product is stored in a storage medium, including several instructions for a computer device (which can be a personal computer, server or network device, etc.) to perform all or part of the steps of the method described in each embodiment of the present invention. The aforementioned storage medium includes: U disk, read-only memory (ROM, Read-Only Memory), random access memory (RAM, Random Access Memory), mobile hard disk, disk or optical disk, etc. Various media that can store program codes.

[0114] The above is only a preferred embodiment of the present invention. It should be pointed out that for ordinary technicians in this technical field, several improvements and modifications can be made without departing from the principle of the present invention. These improvements and modifications should also be regarded as the scope of protection of the present invention.

Claims

1. A control method for a bipedal robot, characterized in that: include: In response to receiving a control instruction of the bipedal robot, collecting a current posture of the bipedal robot, wherein the control instruction carries a desired posture of the bipedal robot; Determine the relative movement position and relative swing angle of the bipedal robot based on the current posture and the desired posture, wherein the relative movement position is used to represent the relative position of the supporting foot and the swinging foot in the plane where the bipedal robot is located, and the relative swinging angle is used to represent the relative angle of the supporting foot and the swinging foot in the plane, the supporting foot is used to support the bipedal robot in a stable state, and the swinging foot is used to control the bipedal robot to reach the desired posture; The biped robot is controlled to operate based on the relative movement position and the relative swing angle.

2. The control method of the biped robot according to claim 1, characterized in that: Determining a relative moving position and a relative swing angle of the biped robot based on the current posture and the expected posture includes: A preset coordinate system is constructed with the orientation of the bipedal robot in the current posture as a first preset axis and the center of mass of the bipedal robot as a coordinate origin, wherein a second preset axis in the preset coordinate system is in the same horizontal plane as the first preset axis and is perpendicular to each other, and a third preset axis in the preset coordinate system is perpendicular to the horizontal plane where the first preset axis is located; Determining the relative movement position based on the current posture, the desired posture and the preset coordinate system; The relative swing angle is determined based on the current posture, the desired posture and the third preset axis.

3. The control method of the biped robot according to claim 2, characterized in that: Determining the relative movement position based on the current posture, the expected posture and the preset coordinate system includes: Determine a first coordinate position of the supporting foot in the preset coordinate system based on the current posture, and determine a second coordinate position of the swinging foot in the preset coordinate system; Determining a third coordinate position of the swing foot in the preset coordinate system based on the expected posture; Determining a relative initial distance between the supporting foot and the swinging foot based on the first coordinate position and the second coordinate position; The relative movement position is determined based on the third coordinate position and the relative initial distance.

4. The control method of the biped robot according to claim 2, characterized in that: Determining the relative swing angle based on the current posture, the expected posture and the third preset axis includes: Determine a first rotation angle of the support foot relative to the third preset axis based on the current posture, and determine a second rotation angle of the swing foot relative to the third preset axis; determining a third rotation angle of the swing foot relative to the third preset axis based on the desired posture; determining a relative initial angle between the supporting foot and the swinging foot based on the first rotation angle and the second rotation angle; The relative swing angle is determined based on the third rotation angle and the relative initial angle.

5. The control method of the biped robot according to claim 1, characterized in that: Controlling the biped robot to operate based on the relative moving position and the relative swing angle includes: Inputting the relative movement position and the relative swing angle into a state machine, and using the state machine to plan the operation of the bipedal robot to obtain a target stepping state of the bipedal robot, wherein the state machine is used to represent a stepping state transition relationship of the bipedal robot from the current posture to the desired posture; The biped robot is controlled to operate based on the target stepping state.

6. The control method of the biped robot according to claim 5, characterized in that: Inputting the relative moving position and the relative swing angle into a state machine, using the state machine to perform operation planning for the bipedal robot, and obtaining a target stepping state of the bipedal robot, includes: Constructing a landing interval of the swing foot based on the position information of the supporting foot; Inputting the relative moving position and the relative swing angle into the state machine, and using the state machine to perform operation planning for the bipedal robot to obtain a plurality of stepping states of the bipedal robot, wherein the landing position of the swinging foot is different in different stepping states; The plurality of step states are screened based on the footfall interval to obtain the target step state.

7. The control method of the biped robot according to claim 5, characterized in that: Controlling the bipedal robot to operate based on the target stepping state includes: Constructing a running trajectory of the bipedal robot based on the target stepping state and the target swinging time of the swinging foot, wherein the target swinging time is used to represent the swinging time of the swinging foot of the bipedal robot from the current posture to the expected posture; The biped robot is controlled to run based on the running trajectory.

8. An electronic device, characterized in that: include: A memory storing an executable program; A processor, configured to run the program, wherein the program executes the method according to any one of claims 1 to 7 when running.

9. A computer-readable storage medium, characterized in that: The computer-readable storage medium includes a stored executable program, wherein when the executable program is executed, the device where the storage medium is located is controlled to execute the method according to any one of claims 1 to 7.

10. A computer program product, characterized in that The invention comprises a computer program which, when executed by a processor, implements the method according to any one of claims 1 to 7.

Citation Information

Patent Citations

  • Closed-loop motion control method of four-feet robot

    CN108572553A

  • Humanoid robot gait planning method and device and humanoid robot

    CN111880544A

  • Robot state value adjusting method and robot

    CN115709471A

  • Robot control method and device, storage medium and equipment

    CN117621075A

  • Robot, motion control method and device thereof and storage medium

    CN118025366A