Control Method, Apparatus, Robot and Storage Medium of Quadruped Robot
By obtaining terrain information and controlling joint torque, the four-legged robot realizes random footing movement in complex environments, solving the problem of motion instability and improving stability and display effect.
Patent Information
- Application Number
- CN202210877945.6
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-07-25
- Publication Date
- 2025-07-25
- Estimated Expiration
- 2042-07-25
AI Technical Summary
Existing four-legged robots are unstable in complex environments and it is difficult to achieve stable random footing movements.
By obtaining the topographic information of the environment in which the four-legged robot is located, several candidate footing points are determined, and the moment of the joint is controlled, so that the four-legged robot can perform random footing movements at these points.
Improves the movement stability and display effect of the four-legged robot in complex environments.
Smart Images

Figure CN116985111B_ABST
Abstract
Description
Technical Field
[0001] The embodiments of the present application relate to the technical field of robot control, and particularly to a control method, device, robot and storage medium for a quadruped robot. Background Art
[0002] With the development of artificial intelligence technology, some organizations and research institutions have successively launched a variety of robots capable of autonomous walking, such as biped robots, quadruped robots, etc.
[0003] Taking the quadruped robot as an example, most of the current research on quadruped robots focuses on the design of the body structure, and relatively less research has been done on its motion control. As a result, the current quadruped robots basically only have the ability to move in a quadruped crawling manner in a simple environment.
[0004] In a relatively complex environment, how the quadruped robot can move stably is an important technical problem that needs to be solved urgently at present. Summary of the Invention
[0005] The present application provides a control method, device, robot and storage medium for a quadruped robot, which can enable the quadruped robot to perform random footfall movements in a complex environment. The technical solutions are as follows:
[0006] According to one aspect of the present application, a control method for a quadruped robot is provided. The method includes:
[0007] Obtain the terrain information of the environment where the quadruped robot is located, where the terrain information includes a plurality of candidate footfall points;
[0008] Determine a plurality of expected footfall points among the plurality of candidate footfall points, where the expected footfall points are the footfall points that support the quadruped robot to move in the environment;
[0009] Control the torque of at least one joint among the plurality of joints so that the quadruped robot performs random footfall movements on the plurality of expected footfall points, and the expected footfall points in the random footfall movements have randomness or irregularity.
[0010] According to one aspect of the present application, a control device for a quadruped robot is provided. The device includes:
[0011] An obtaining module, configured to obtain the terrain information of the environment where the quadruped robot is located, where the terrain information includes a plurality of candidate footfall points;
[0012] A determining module, configured to determine a plurality of expected footfall points among the plurality of candidate footfall points, where the expected footfall points are the footfall points that support the quadruped robot to move in the environment;
[0013] A control module, configured to control the torque of at least one joint among the plurality of joints, so that the quadruped robot performs a random landing movement on the plurality of desired landing points, and the desired landing points in the random landing movement have randomness or irregularity.
[0014] According to another aspect of the present application, there is provided a quadruped robot, which includes a processor and a memory. At least one instruction is stored in the memory, and the at least one instruction is loaded and executed by the processor to implement the control method of the quadruped robot as described above.
[0015] According to another aspect of the present application, there is provided a computer storage medium. At least one computer program is stored in the computer-readable storage medium, and the at least one computer program is loaded and executed by a processor to implement the control method of the quadruped robot as described in the above aspect.
[0016] According to another aspect of the present application, there is provided a computer program product. The computer program product includes a computer program, and the computer program is stored in a computer-readable storage medium; the computer program is read and executed by a processor of a computer device, so that the computer device executes the control method of the quadruped robot as described in the above aspect.
[0017] According to another aspect of the present application, there is provided a chip, which includes a programmable logic circuit or a program, and a device installed with the chip is used to implement the control method of the quadruped robot as described above.
[0018] The beneficial effects brought by the technical solution provided by the present application at least include:
[0019] By obtaining the terrain information of the environment where the quadruped robot is located, determining a plurality of desired landing points that support the quadruped robot to move in the environment among a plurality of candidate landing points; controlling the torque of at least one joint among the plurality of joints, so that the quadruped robot performs a random landing movement on the plurality of desired landing points. Based on the terrain information of the environment where the quadruped robot is located, the present application enables the quadruped robot to stably achieve a random landing movement in a complex environment, improving the stability and display effect of the quadruped robot when moving in a complex environment. Description of the Drawings
[0020] In order to more clearly illustrate the technical solutions in the embodiments of the present application, the following will briefly introduce the drawings required for the description of the embodiments. Obviously, the following drawings are only some embodiments of the present application. For those of ordinary skill in the art, other drawings can be obtained based on these drawings without creative efforts.
[0021] Figure 1 It is a schematic diagram of the control method of a quadruped robot provided by an exemplary embodiment of the present application;
[0022] Figure 2 It is a robot control framework diagram provided by an exemplary embodiment of the present application;
[0023] Figure 3 It is a schematic structural diagram of a quadruped robot provided by an exemplary embodiment of the present application;
[0024] Figure 4 It is a flowchart of the control method of a quadruped robot provided by an exemplary embodiment of the present application;
[0025] Figure 5 It is a flowchart of the control method of a quadruped robot provided by an exemplary embodiment of the present application;
[0026] Figure 6 It is a schematic diagram of a plum blossom pile environment provided by an exemplary embodiment of the present application;
[0027] Figure 7 It is a quadruped robot provided by an exemplary embodiment of the present application in Figure 6 The top view schematic diagram of the quadruped offset dancing in the plum blossom pile environment shown;
[0028] Figure 8 It is a quadruped robot provided by an exemplary embodiment of the present application in Figure 6 The top view schematic diagram of the biped offset dancing in the plum blossom pile environment shown;
[0029] Figure 9 It is a quadruped robot provided by an exemplary embodiment of the present application in Figure 6 The top view schematic diagram of the single - foot offset dancing in the plum blossom pile environment shown;
[0030] Figure 10 It is a quadruped robot provided by an exemplary embodiment of the present application in Figure 6 The top view schematic diagram of the movement in the plum blossom pile environment shown;
[0031] Figure 11 It is a schematic diagram of the leg mechanical structure with 3 joint motors on the foot provided by an exemplary embodiment of the present application;
[0032] Figure 12 It is a block diagram of the control device of a quadruped robot provided by an exemplary embodiment of the present application;
[0033] Figure 13 It is a schematic diagram of the structure of a computer device provided by an exemplary embodiment of the present application. Detailed implementation manners
[0034] To make the objectives, technical solutions, and advantages of this application clearer, the following will further describe the embodiments of this application in detail with reference to the accompanying drawings.
[0035] First, a brief introduction to several terms related to the embodiments of this application:
[0036] Artificial Intelligence (AI) is the theory, method, technology, and application system that uses digital computers or machines controlled by digital computers to simulate, extend, and expand human intelligence, perceive the environment, acquire knowledge, and use knowledge to obtain the best results. In other words, artificial intelligence is a comprehensive technology in computer science that attempts to understand the essence of intelligence and produce a new intelligent machine that can react in a way similar to human intelligence. Artificial intelligence also studies the design principles and implementation methods of various intelligent machines to enable the machines to have the functions of perception, reasoning, and decision-making.
[0037] Artificial intelligence technology is an interdisciplinary subject with a wide range of fields involved, including both hardware-level and software-level technologies. The basic technologies of artificial intelligence generally include technologies such as sensors, dedicated artificial intelligence chips, cloud computing, distributed storage, big data processing technology, operation / interaction systems, and mechatronics. The software technologies of artificial intelligence mainly include several major directions such as computer vision technology, speech processing technology, natural language processing technology, and machine learning / deep learning.
[0038] With the research and progress of artificial intelligence technology, artificial intelligence technology has been studied and applied in multiple fields. For example, common ones include smart homes, smart wearable devices, virtual assistants, smart speakers, smart marketing, driverless, autonomous driving, drones, robots, smart healthcare, smart customer service, etc. It is believed that with the development of technology, artificial intelligence technology will be applied in more fields and play an increasingly important role.
[0039] The technical solution of this application mainly relates to the robotics technology in artificial intelligence technology, and mainly relates to robot intelligent control.
[0040] Among them, a robot is a mechatronic device composed of mechanical transmission and modern microelectronics technology, which can imitate certain skills of humans or animals. Robots are developed on the basis of electronics, machinery, and information technology. A robot does not necessarily have to look like a human. As long as it can autonomously complete the tasks and commands given by humans, it belongs to the family of robots. A robot is an automated machine that has some intelligent capabilities similar to humans or living organisms, such as perception capabilities, planning capabilities, motion capabilities, and cooperation capabilities. It is an automated machine with high flexibility. With the development of computer technology and artificial intelligence technology, robots have been greatly improved in terms of function and technology level. Mobile robots and technologies such as robot vision and touch are typical representatives.
[0041] The embodiment of the present application provides a technical solution for a control method of a quadruped robot, as Figure 1 shown in the schematic diagram of the control method of the quadruped robot. This method can be executed by the robot or the control device. The method includes:
[0042] Exemplarily, the quadruped robot includes a base part 1, four feet 2 provided on the base part 1, and several joints corresponding to the four feet. Taking the environment where the quadruped robot is located as an example of plum blossom piles, the quadruped robot obtains the plane coordinate information and height information of the plum blossom piles; the quadruped robot determines several desired landing points 4 from several candidate landing points 3 based on the motion mode; the quadruped robot controls the torque of at least one joint among several joints so that the quadruped robot performs a random landing motion on several desired landing points 4.
[0043] The terrain information includes several candidate landing points 3 that are raised, and the candidate landing points 3 include at least one plum blossom pile.
[0044] The candidate landing point 3 refers to a landing point that can provide support in the environment. For example, each plum blossom pile can be used as a candidate landing point 3.
[0045] The desired landing point 4 refers to a landing point that supports the movement of the quadruped robot in the environment. For example, the desired landing points 4 determined on the plum blossom piles based on the motion mode of the quadruped robot.
[0046] Optionally, the desired landing point 4 includes all the candidate landing points 3, or the desired landing point 4 includes a subset (that is, a part) of all the candidate landing points 3.
[0047] Exemplarily, the quadruped robot controls the torque of at least one joint among several joints so that the quadruped robot performs a random landing motion on several desired landing points 4 based on the basic motion mode.
[0048] Among them, the basic movement mode is the movement mode of the quadruped robot in the non-random footfall movement mode.
[0049] Optionally, the basic movement mode includes at least one of the following movement modes:
[0050] Moving in the first direction. For example, the quadruped robot drives itself to move in the first direction by controlling the swinging of its four legs.
[0051] Circling in the second direction. For example, the quadruped robot drives itself to circle by controlling its four legs to rotate in the same direction.
[0052] The four feet contract inward. For example, the quadruped robot controls its four legs to contract to the bottom of the base part.
[0053] The four feet extend outward. For example, the quadruped robot controls its four legs to extend outward.
[0054] Two of the four feet contract inward. For example, the quadruped robot controls any two of its four legs to contract to the bottom of the base part.
[0055] Two of the four feet extend outward. For example, the quadruped robot controls any two of its four legs to extend away from the base part.
[0056] One of the four feet contracts inward. For example, the quadruped robot controls any one of its four legs to contract to the bottom of the base part.
[0057] One of the four feet extends outward. For example, the quadruped robot controls any one of its four legs to extend away from the base part.
[0058] The base part sways back and forth. For example, when the quadruped robot controls the movement of its four legs, the base part sways back and forth, producing a nodding effect.
[0059] The four feet move in a varying step frequency manner. For example, when the quadruped robot controls the movement of its four legs, it moves with a varying step frequency.
[0060] The four feet move in a varying gait manner. For example, when the quadruped robot controls the movement of its four legs, it moves in a varying gait manner, such as a straight gait or an S-shaped gait.
[0061] In summary, the method provided in this embodiment determines a number of desired footholds that support the quadruped robot to move in the environment from a number of candidate footholds by obtaining the terrain information of the plum blossom pile environment where the quadruped robot is located; controls the torque of at least one joint among a number of joints, so that the quadruped robot performs random foothold movement on a number of desired footholds. Based on the terrain information of the environment where the quadruped robot is located, this application enables the quadruped robot to stably achieve random foothold movement in a complex environment, improving the stability and display effect of the quadruped robot when moving in a complex environment.
[0062] Please refer to Figure 2 , which shows a control framework diagram of a quadruped robot provided by an exemplary embodiment of the present application. In one example, as Figure 2 shown, take the quadruped robot control scenario as an example. The implementation environment of this solution may include a quadruped robot 10 and a control device 20 (optional).
[0063] Exemplarily, as Figure 2 shown, the quadruped robot 10 includes: a fuselage 101 (which can also be called a base or chassis) and a leg mechanical structure 102. A controller of the quadruped robot 10 is provided inside the fuselage 101. The fuselage 101 issues instructions to the leg mechanical structure 102 to control the activities of the leg mechanical structure 102. A plurality of joints are provided on the leg mechanical structure 102, and one joint motor or multiple joint motors can be provided at each joint. Taking one leg mechanical structure in the leg mechanical structure 102 as an example, joints 103 and 104 are provided on the leg mechanical structure, where one joint motor is provided at joint 103 and two joint motors are provided at joint 104.
[0064] The control device 20 may include but is not limited to mobile phones, computers, intelligent voice interaction devices, intelligent home appliances, vehicle terminals, aircraft, etc.; alternatively, the control device 20 may also be a server. The control device 20 can be used to control the quadruped robot 10.
[0065] The quadruped robot 10 and the control device 20 can communicate with each other through a network, such as a wireless network, a wired network, etc.
[0066] Exemplarily, after obtaining the motion state and terrain of the quadruped robot 10 at the current moment, the control device 20 can predict the motion state of the quadruped robot 10 at the next moment according to the motion state and terrain, and control the motion of the quadruped robot 10 based on the predicted motion state, so that the quadruped robot 10 can accurately and efficiently execute actions.
[0067] Optionally, this process can also be completed by the quadruped robot 10. For example, the quadruped robot 10 predicts the motion state at the next moment based on the motion state and terrain at the current moment, and executes the motion based on the predicted motion state. The execution subject of the control of the robot in the embodiments of the present application is not limited.
[0068] Figure 3 FIG. 4 shows a schematic structural diagram of a quadruped robot provided by an exemplary embodiment of the present application. The quadruped robot 10 includes a base part 110, front legs 120, and rear legs 130. The base part 110 is connected to the front legs 120 and the rear legs 130. Optionally, the front legs 120 and the rear legs 130 are the same or different. The front legs 120 are divided into a left front leg and a right front leg. Optionally, the left front leg and the right front leg are the same or different; the rear legs 130 are divided into a left rear leg and a right rear leg. Optionally, the left rear leg and the right rear leg are the same or different.
[0069] In the embodiments of the present application, the case where the front legs 120 and the rear legs 130 are the same, the left front leg and the right front leg of the front legs 120 are the same, and the left rear leg and the right rear leg of the rear legs 130 are the same is used as an example for illustrative purposes, but it does not mean to limit the leg structure of the quadruped robot.
[0070] The front legs 120 include a first left leg link 1201, a second left leg link 1202, a first right leg link 1203, and a second right leg link 1204; the rear legs 130 include a third left leg link 1301, a fourth left leg link 1302, a third right leg link 1303, and a fourth right leg link 1304. The first end of the first left leg link 1201 is connected to the base part 110, and the second end of the first left leg link 1201 is connected to the first end of the second left leg link 1202 to form a first left leg rotating pair; the first end of the first right leg link 1203 is connected to the base part 110, and the second end of the first right leg link 1203 is connected to the first end of the second right leg link 1204 to form a first right leg rotating pair. The first end of the third left leg link 1301 is connected to the base part 110, and the second end of the third left leg link 1301 is connected to the first end of the fourth left leg link 1302 to form a second left leg rotating pair; the first end of the third right leg link 1303 is connected to the base part 110, and the second end of the third right leg link 1303 is connected to the first end of the fourth right leg link 1304 to form a second right leg rotating pair.
[0071] The front legs 120 and the rear legs 130 have a plurality of joints. The front legs 120 have at least one joint, and the rear legs 130 have at least one joint. In some embodiments, the front legs 120 have a first hip joint 1205 and a first knee joint 1206, and the rear legs 130 have a second hip joint 1305 and a second knee joint 1306.
[0072] Figure 4 is a flowchart of a control method for a quadruped robot provided by an exemplary embodiment of the present application. This method can be executed by the quadruped robot 10 or the control device 20 in the above-described Figure 2 illustrated embodiment.
[0073] This method includes:
[0074] Step 402: Obtain the terrain information of the environment where the quadruped robot is located.
[0075] The quadruped robot includes a base part, four feet arranged on the base part, and a plurality of joints corresponding to the four feet.
[0076] The terrain information includes a plurality of candidate footholds that are raised.
[0077] A candidate foothold refers to a foothold in the environment that can provide support. Taking the plum blossom pile environment as an example, the plum blossom piles are the footholds that can provide support in the plum blossom pile environment, and the gaps between the plum blossom piles are the footholds that cannot provide support.
[0078] The terrain information refers to the information corresponding to a complex environment, which is different from simple terrain information. For example, simple terrain information can be a flat ground, a slope with a certain gradient, or a terrain environment with a certain pattern or rule.
[0079] The complex environment is an irregular or unruly environment. In a complex environment, the quadruped robot can only rely on the positions of specific footholds in the complex environment to complete its movement in the complex environment.
[0080] For example, taking the plum blossom pile environment as an example, the raised plum blossom piles in the plum blossom pile environment are candidate footholds. Among them, the height, thickness, spacing distance, and arrangement method of each plum blossom pile are different, and the quadruped robot can only move in the plum blossom pile environment by stepping on the plum blossom piles.
[0081] Step 404: Determine a plurality of desired footholds among the plurality of candidate footholds.
[0082] A desired foothold is a foothold that supports the movement of the quadruped robot in the environment.
[0083] Optionally, the desired footholds are all of the candidate footholds, or, the desired footholds are part of the candidate footholds, but not limited thereto. The embodiments of the present application do not make specific limitations in this regard.
[0084] Step 406: Control the torque of at least one of the plurality of joints so that the quadruped robot makes a random landing movement on the plurality of desired footholds.
[0085] The basic movement mode refers to a way of achieving directional movement through a preset program or a preset path.
[0086] For example, controlling the four legs of a quadruped robot to walk or run forward, or controlling the four legs of the quadruped robot to draw a circle in the same direction to achieve the turning of the quadruped robot, but not limited to this.
[0087] Random foothold movement (which can also be called dancing) refers to adding random actions on the basis of directed movement to obtain a random, or irregular, or unruly movement mode. The expected footholds in random foothold movement have randomness or irregularity.
[0088] For example, adding irregular movements on the basis of controlling the quadruped robot to perform regular movements, so as to enable the quadruped robot to still run smoothly in an irregular or unruly complex environment. For example, when controlling the quadruped robot to turn in a circle, that is, controlling the four legs of the quadruped robot to perform circular movements along set trajectories respectively, but in a complex environment, the turning movement of the quadruped robot may be forced to stop due to the complex environment; therefore, on this basis, a random offset is added to each leg, so that the random foothold movement of the quadruped robot can perform adaptive movements in an irregular or unruly complex environment.
[0089] A robot may include multiple joints, and each joint is used to connect two different parts of the robot, so that by applying a torque to the joint, the relative position relationship between the two parts connected by the joint can be changed.
[0090] For example, in a quadruped robot, the base part of the quadruped robot and the four legs are connected by several joints. Each leg of the quadruped robot can be a whole or composed of at least two parts. Applying corresponding torques to each joint respectively, so that each joint generates movement, and finally realizing controlling the quadruped robot to perform at least two kinds of movements.
[0091] Optionally, the quadruped robot controls the joint movement of the quadruped robot through joint control information. The joint control information can control each joint of the quadruped robot individually or control each joint of the quadruped robot collectively. The embodiments of the present application do not make specific limitations on this.
[0092] In summary, the method provided in this embodiment determines several expected footholds that support the quadruped robot to move in the environment among several candidate footholds by obtaining the terrain information of the environment where the quadruped robot is located; controlling the torque of at least one joint among several joints, so that the quadruped robot performs random foothold movement on several expected footholds. Based on the terrain information of the environment where the quadruped robot is located, the present application enables the quadruped robot to stably realize random foothold movement in a complex environment, and improves the stability of the quadruped robot when moving in a complex environment.
[0093] Figure 5 is a flowchart of a control method for a quadruped robot provided by an exemplary embodiment of the present application. This method can be executed by the quadruped robot 10 or the control device 20 in the above Figure 2 illustrated embodiment.
[0094] This method includes:
[0095] Step 502: Obtain the terrain information of the environment where the quadruped robot is located.
[0096] The quadruped robot includes a base part, four feet arranged on the base part, and several joints corresponding to the four feet.
[0097] The terrain information includes several candidate footholds.
[0098] A candidate foothold refers to a foothold in the environment that can provide support.
[0099] Optionally, taking the plum blossom pile environment as an example, the candidate footholds are at least one raised plum blossom pile in the plum blossom pile environment, and the feet of the quadruped robot are prohibited from stepping on the gap between two adjacent plum blossom piles.
[0100] Exemplarily, the quadruped robot obtains the terrain information of the environment where it is located through a camera and / or a motion capture device and / or a positioning device. Among them, the terrain information includes the plane coordinate information and height information of the candidate footholds.
[0101] For example, the quadruped robot captures a picture of the environment where it is located through a camera, and converts the picture of the environment where the quadruped robot is located into terrain information that the quadruped robot can understand.
[0102] Or, the environment where the quadruped robot is located is explored by using a motion capture device, and the exploration information is converted into terrain information that the quadruped robot can understand through the motion capture device.
[0103] Or, the terrain information of the environment where the quadruped robot is located is directly input to the quadruped robot.
[0104] The terrain information that the quadruped robot can understand can be expressed as:
[0105]
[0106] In the formula, h is the height information of the candidate foothold, n is the outer normal information of the candidate foothold (i.e., the direction information of the candidate foothold), is the plane coordinate information of the candidate foothold.
[0107] For example, taking Figure 6Taking the plum blossom stake environment shown as an example, the plum blossom stakes in the plum blossom stake environment are candidate footholds 601. The quadruped robot supports the feet of the quadruped robot through the plum blossom stakes in the plum blossom stake environment, thereby enabling the quadruped robot to pass through the plum blossom stake environment.
[0108] Optionally, the height, thickness, spacing distance, and arrangement method of each plum blossom stake in the plum blossom stake environment may be different, and the embodiments of the present application do not make specific limitations on this.
[0109] Step 504: Determine a number of expected footholds among a number of candidate footholds.
[0110] The expected foothold is the foothold that supports the quadruped robot to move in the environment.
[0111] Optionally, the expected foothold is all of the candidate footholds, or, the expected foothold is part of the candidate footholds, but not limited to this. The embodiments of the present application do not make specific limitations on this.
[0112] In a possible implementation manner, the quadruped robot determines the trajectory footholds based on the movement trajectory in the basic movement mode; the quadruped robot offsets the trajectory footholds according to the offset amount to obtain the offset footholds; the quadruped robot selects the candidate foothold closest to the offset foothold among a number of candidate footholds and determines it as the expected foothold when performing random foothold movement based on the basic movement mode.
[0113] Among them, the offset amount is determined within the selection range with the trajectory foothold as the reference position and the activity range of the joint.
[0114] Optionally, when the distance between the plane coordinates of the offset foothold and the plane coordinates of the candidate foothold is the closest, the candidate foothold is determined as the expected foothold when performing random foothold movement based on the basic movement mode.
[0115] For example, the plane coordinates of the offset foothold are P 偏移 =[x; y; 0], then the determination formula of the expected foothold P 期待 can be expressed as:
[0116] p 期待 ={p|min(||p 偏移 -([1; 1; 0]p) T ||), p∈p 候选}
[0117] In the formula, P 偏移 is the offset foothold; P 候选 is the set of a number of candidate footholds in the terrain information; P is a candidate foothold; P 期待 is the expected foothold.
[0118] The basic motion mode is the motion mode of the quadruped robot in the non-random footfall motion mode.
[0119] Optionally, the basic motion mode includes at least one of the following motion modes:
[0120] Moving in a first direction. For example, the quadruped robot drives itself to move in the first direction by controlling the swing of its four legs.
[0121] Circling in a second direction. For example, the quadruped robot drives itself to circle by controlling its four legs to rotate in the same direction.
[0122] The four feet contract inwardly. For example, the quadruped robot controls its four legs to contract to the bottom of the base part.
[0123] The four feet extend outwardly. For example, the quadruped robot controls its four legs to extend outward.
[0124] Two of the four feet contract inwardly. For example, the quadruped robot controls any two of its four legs to contract to the bottom of the base part.
[0125] Two of the four feet extend outwardly. For example, the quadruped robot controls any two of its four legs to extend away from the base part.
[0126] One of the four feet contracts inwardly. For example, the quadruped robot controls any one of its four legs to contract to the bottom of the base part.
[0127] One of the four feet extends outwardly. For example, the quadruped robot controls any one of its four legs to extend away from the base part.
[0128] The base part sways back and forth. For example, when the quadruped robot controls the movement of its four legs, the base part sways back and forth, producing a nodding effect.
[0129] The four feet move in a variable step frequency manner. For example, when the quadruped robot controls the movement of its four legs, it moves with a variable step frequency.
[0130] The four feet move in a variable gait manner. For example, when the quadruped robot controls the movement of its four legs, it moves in a variable gait manner, such as a straight-line gait or an S-shaped gait.
[0131] In a possible implementation, the quadruped robot controls the torque of at least one of several joints so that the quadruped robot moves based on the basic motion mode at several desired footfall points.
[0132] Exemplarily, based on the movement trajectory of the quadruped robot in the basic movement mode, the quadruped robot determines the trajectory landing points of the quadruped robot; the quadruped robot selects the candidate landing point closest to the trajectory landing point from several candidate landing points and determines it as the expected landing point when moving based on the basic movement mode.
[0133] Optionally, when the distance between the planar coordinates of the trajectory landing point and the planar coordinates of the candidate landing point is less than the second distance threshold, the candidate landing point is determined as the expected landing point when moving based on the basic movement mode.
[0134] For example, the planar coordinates of the trajectory landing point are P 轨迹 =[x; y; 0], then the determination formula for the expected landing point P 期待 can be expressed as:
[0135] p 期待 ={p|min(||p 轨迹 -([1; 1; 0]p) T ||), p ∈ p 候选}
[0136] In the formula, P 轨迹 is the trajectory landing point; P 候选 is the set of several candidate landing points of the protrusions in the terrain information; P is a candidate landing point; P 期待 is the expected landing point.
[0137] Step 506: Control the torque of at least one of several joints so that the quadruped robot performs random landing movement based on the basic movement mode at several expected landing points.
[0138] The robot may include multiple joints, and each joint is used to connect two different parts of the robot, so that by applying torque to the joint, the relative position relationship between the two parts connected by the joint can change.
[0139] Random landing movement refers to the way in which the quadruped robot changes the shape and movement of the quadruped robot by changing the positions of the four feet, or the center of mass position of the base part, or simultaneously changing the positions of the four feet and the center of mass position of the base part. The expected landing points in random landing movement are random or irregular.
[0140] Optionally, the cases where the trajectory landing point is offset according to the offset amount to obtain the offset landing point include the following types, but are not limited to this, and the embodiments of the present application do not make specific limitations on this.
[0141] Type 1: The trajectory landing points corresponding to each of the four feet are offset by the offset corresponding to each foot to obtain the offset landing points corresponding to each foot.
[0142] Optionally, the trajectory landing point corresponding to the first foot among the four feet is offset by the first offset corresponding to the first foot to obtain the first offset landing point corresponding to the first foot; the trajectory landing point corresponding to the second foot among the four feet is offset by the second offset corresponding to the second foot to obtain the second offset landing point corresponding to the second foot; the trajectory landing point corresponding to the third foot among the four feet is offset by the third offset corresponding to the third foot to obtain the third offset landing point corresponding to the third foot; the trajectory landing point corresponding to the fourth foot among the four feet is offset by the fourth offset corresponding to the fourth foot to obtain the fourth offset landing point corresponding to the fourth foot.
[0143] Optionally, the first offset, the second offset, the third offset, and the fourth offset may be equal, unequal, or not completely equal, and the embodiments of the present application do not make specific limitations thereon.
[0144] Optionally, the first offset, the second offset, the third offset, and the fourth offset are set by themselves, or the offset is randomly generated within the range of motion of the joints corresponding to their respective feet, and the embodiments of the present application do not make specific limitations thereon.
[0145] Type 2: The trajectory landing points corresponding to each of the two diagonal feet are offset by the offset corresponding to each foot to obtain the offset landing points corresponding to each foot. Among them, the two diagonal feet are two feet located on the same diagonal among the four feet.
[0146] Optionally, the trajectory landing points of the first foot and the second foot among the four feet are offset by the first offset corresponding to the first foot to obtain the first offset landing point corresponding to the first foot; the trajectory landing point corresponding to the second foot is offset by the second offset corresponding to the second foot to obtain the second offset landing point corresponding to the second foot; the third foot and the fourth foot among the four feet are fixed at the corresponding third trajectory landing point and fourth trajectory landing point.
[0147] Type 3: The trajectory landing point corresponding to a single foot is offset by the offset corresponding to the single foot to obtain the offset landing point corresponding to the single foot; where the single foot is one of the four feet.
[0148] Optionally, the trajectory landing point of the first foot among the four feet is offset according to a first offset corresponding to the first foot to obtain a first offset landing point corresponding to the first foot; the second foot, the third foot, and the fourth foot among the four feet are fixed at corresponding second trajectory landing points, third trajectory landing points, and fourth trajectory landing points.
[0149] Optionally, the quadruped robot randomly generates an offset within the range of the joint's range of motion with the trajectory landing point as the reference position.
[0150] Figure 7 Shows the top-down schematic diagram of the quadruped robot involved in the embodiment of the present application dancing with quadruped offsets in the Figure 6 plum blossom pile environment shown, as Figure 7 shown, the white circles in the figure represent the candidate landing points 703, the square is the base part 701 of the quadruped robot, the circles connected to the square represent the four feet on the base part 701, the circles where the feet are located represent the expected landing points 704, and the black arrows represent the foot offset directions.
[0151] As Figure 7 shown in Figure (a) in, the basic movement mode of the quadruped robot is to circle. On the basis of the circular movement, the quadruped robot offsets the trajectory landing point corresponding to each foot among the four feet towards the bottom of the base part 701 of the quadruped robot according to the offset corresponding to each foot, Figure 7 the positions where the four feet are located in Figure (a) in are the offset landing points 702 corresponding to each foot; as Figure 7 shown in Figure (b) in, when the distance between the plane coordinates of the offset landing point 702 and the plane coordinates of the candidate landing point 703 is the closest, the candidate landing point 703 is determined as the expected landing point 704 when dancing based on the circular movement mode, so that the quadruped robot dances based on the circular movement mode on a number of expected landing points 704.
[0152] As Figure 7 shown in Figure (c) in, the basic movement mode of the quadruped robot is to circle. On the basis of the circular movement, the quadruped robot offsets the trajectory landing point corresponding to each foot among the four feet towards the outside of the base part 701 of the quadruped robot according to the offset corresponding to each foot, Figure 7 the positions where the four feet are located in Figure (c) in are the offset landing points 702 corresponding to each foot; as Figure 7 shown in Figure (d) in, when the distance between the plane coordinates of the offset landing point 702 and the plane coordinates of the candidate landing point 703 is the closest, the candidate landing point 703 is determined as the expected landing point 704 when dancing based on the circular movement mode, so that the quadruped robot dances based on the circular movement mode on a number of expected landing points 704.
[0153] Figure 8 shows a top - down schematic view of a quadruped robot involved in an embodiment of the present application dancing with two - foot offset in the plum - blossom pile environment shown in Figure 6 As shown in Figure 8 In the figure, the white circles represent candidate landing points 803, the square is the base part 801 of the quadruped robot, the circles connected to the square represent the four feet on the base part 801, the circles where the feet are located represent the expected landing points 804, and the black arrows represent the foot - offset directions.
[0154] As Figure 8 shown in Figure (a) in Figure 8 , the basic movement mode of the quadruped robot is to circle. On the basis of the circular movement, the quadruped robot offsets the corresponding trajectory landing points of two symmetric feet among the four feet towards the bottom of the base part 801 of the quadruped robot according to the offset amount corresponding to each foot. Figure 8 In Figure (a) in
[0155] the positions where the two symmetric offset feet are located are the corresponding offset landing points 802, and the positions where the two non - offset feet are located are the corresponding trajectory landing points 805; as Figure 8 shown in Figure (b) in Figure 8 , when the distance between the plane coordinates of the offset landing point 802 and the plane coordinates of the candidate landing point 803 is the closest, the candidate landing point 803 is determined as the expected landing point 804 when dancing based on the circular movement mode. When the distance between the plane coordinates of the non - offset trajectory landing point 805 and the plane coordinates of the candidate landing point 803 is the closest, the candidate landing point 803 is determined as the expected landing point 804 corresponding to the non - offset trajectory landing point 805 when dancing based on the circular movement mode. Thus, the quadruped robot dances on a number of expected landing points 804 based on the circular movement mode. Figure 8As shown in figure (d), when the distance between the planar coordinates of the offset landing point 802 and the planar coordinates of the candidate landing point 803 is the closest, the candidate landing point 803 is determined as the expected landing point 804 for dancing based on the circular motion mode. When the distance between the planar coordinates of the non-offset trajectory landing point 805 and the planar coordinates of the candidate landing point 803 is the closest, the candidate landing point 803 is determined as the expected landing point 804 corresponding to the non-offset trajectory landing point 805 for dancing based on the circular motion mode. Thereby enabling the quadruped robot to dance based on the circular motion mode on a number of expected landing points 804.
[0156] Figure 9 shows a top-down schematic view of a single-foot offset dance of a quadruped robot involved in an embodiment of the present application in Figure 6 the plum blossom pile environment shown, as Figure 9 shown, the white circles in the figure represent candidate landing points 903, the square is the base part 901 of the quadruped robot, the circles connected to the square represent the four feet on the base part 901, the circles where the feet are located represent the expected landing points 904, and the black arrows represent the foot offset directions.
[0157] As Figure 9 shown in figure (a), the basic motion mode of the quadruped robot is circular motion. Based on the circular motion, the quadruped robot offsets the trajectory landing point corresponding to one of the four feet by the offset amount corresponding to that foot towards the bottom of the base part 901 of the quadruped robot. Figure 9 In figure (a), the position of the single offset foot is the corresponding offset landing point 902, and the positions of the three non-offset feet are the corresponding trajectory landing points 905; as Figure 9 shown in figure (b), when the distance between the planar coordinates of the offset landing point 902 and the planar coordinates of the candidate landing point 903 is the closest, the candidate landing point 903 is determined as the expected landing point 904 for dancing based on the circular motion mode. When the distance between the planar coordinates of the non-offset trajectory landing point 905 and the planar coordinates of the candidate landing point 903 is the closest, the candidate landing point 903 is determined as the expected landing point 904 corresponding to the non-offset trajectory landing point 905 for dancing based on the circular motion mode. Thereby enabling the quadruped robot to dance based on the circular motion mode on a number of expected landing points 904.
[0158] As Figure 9 shown in figure (c), the basic motion mode of the quadruped robot is circular motion. Based on the circular motion, the quadruped robot offsets the trajectory landing point 902 corresponding to a single foot among the four feet by the offset amount corresponding to that foot towards the outside of the base part 901 of the quadruped robot. Figure 9The position of a single foot in sub - figure (c) is the offset landing point 902 corresponding to the foot, and the position of the non - offset foot is the corresponding trajectory landing point 905; as Figure 9 shown in sub - figure (d) of Figure 9 , when the distance between the planar coordinates of the offset landing point 902 and the planar coordinates of the candidate landing point 903 is the closest, the candidate landing point 903 is determined as the expected landing point 904 for dancing based on the circular - motion style. When the distance between the planar coordinates of the non - offset trajectory landing point 905 and the planar coordinates of the candidate landing point 903 is the closest, the candidate landing point 903 is determined as the expected landing point 904 corresponding to the non - offset trajectory landing point 905 for dancing based on the circular - motion style. Thus, the quadruped robot dances on a number of expected landing points 904 based on the circular - motion style.
[0159] It should be noted that the foot offset amount corresponding to the quadruped robot can be set uniformly, or set individually, or randomly generated within the range of the joint's range of motion, but is not limited to this. The embodiments of the present application do not make specific limitations on this.
[0160] It can be understood that the motion mode of the quadruped robot can add motion instructions for front - back - left - right movement on the basis of dancing based on the basic motion mode, so as to enhance the display effect.
[0161] The motion mode of the quadruped robot can add motion instructions for changing the posture of the base part on the basis of dancing based on the basic motion mode, so as to produce a swaying - head - and - body display effect.
[0162] The motion mode of the quadruped robot can add motion instructions for changing the step frequency and / or changing the motion gait on the basis of dancing based on the basic motion mode, so as to enhance the display effect.
[0163] Step 508: Control the torque of at least one of a number of joints so that the quadruped robot moves on a number of expected landing points based on the basic motion mode.
[0164] The robot may include multiple joints, and each joint is used to connect two different parts of the robot. Thus, by applying torque to the joint, the relative position relationship between the two parts connected by the joint can be changed.
[0165] Exemplarily, the quadruped robot controls the torque of at least one of a number of joints so that the quadruped robot moves on a number of expected landing points based on the basic motion mode.
[0166] Figure 10 shows a top - view schematic diagram of the quadruped robot involved in the embodiments of the present application moving in Figure 6 the plum - blossom - pile environment shown in, asFigure 10 As shown, the white circles in the figure represent the candidate landing points 1003, the square is the base part 1001 of the quadruped robot, the circles connected to the square represent the four feet on the base part 1001, and the circles where the feet are located represent the expected landing points 1004.
[0167] As Figure 10 shown in FIG. (a), the basic movement mode of the quadruped robot is to circle. Based on the circular movement, the four feet of the quadruped robot move according to the trajectory landing points 1002 corresponding to each foot; as Figure 10 shown in FIG. (b), when the distance between the plane coordinates of the trajectory landing point 1002 and the plane coordinates of the candidate landing point 1003 is less than the second distance threshold, the candidate landing point 1003 is determined as the expected landing point 1004 for moving based on the circular movement mode, so that the quadruped robot moves based on the circular movement mode on a number of expected landing points 1004.
[0168] In summary, the method provided in this embodiment determines a number of expected landing points that support the quadruped robot to move in the environment from a number of candidate landing points by obtaining the terrain information of the environment where the quadruped robot is located; controls the torque of at least one joint among a number of joints so that the quadruped robot performs random landing movement based on the basic movement mode on a number of expected landing points, or so that the quadruped robot moves based on the basic movement mode on a number of expected landing points. Based on the terrain information of the environment where the quadruped robot is located, the present application enables the quadruped robot to stably achieve random landing movement in a complex environment, improving the stability and display effect of the quadruped robot when moving in a complex environment.
[0169] Exemplarily, taking the leg mechanical structure with 3 joint motors for one foot of the quadruped robot as an example, as Figure 11 shown, the local position coordinates of the first joint 1102 in the local coordinate system of the chassis 1101 of the quadruped robot can be recorded as (L1, L2, 0), the local position coordinates of the second joint 1103 in the local coordinate system of the first joint 1102 can be recorded as (0, L3, 0), the local position coordinates of the third joint 1104 in the local coordinate system of the second joint 1103 can be recorded as (0, 0, -L4), and the local position coordinates of the landing point 1105 in the local coordinate system of the third joint 1104 can be recorded as (0, 0, -L5). Determine the body attitude of the quadruped robot based on the motor rotation angles of the quadruped robot.
[0170] The motor rotation angles of the quadruped robot can be obtained by calling the following system of equations:
[0171]
[0172] Among them, θ1, θ2, and θ3 are the motor rotation angles of the limbs in the figure respectively. x, y, and z are the local position coordinates of the landing points in the local coordinate system of the chassis.
[0173] The current body attitude refers to the body attitude of the quadruped robot in the current cycle. Optionally, the current body attitude can be represented by Euler angles or by quaternions. The current joint motor rotation angle refers to the rotation angle of the joint motor of the quadruped robot in the current cycle.
[0174] Optionally, the target motor rotation angles of the m joint motors in the current cycle can be calculated based on the policy network in the robot control model, and the specific content can be as follows: Through the policy network, data processing is performed on the current state, the historical states of the previous j cycles, the historical actions of the previous i cycles, and the reference states of the next k cycles to obtain the offset target rotation angles of the m joint motors in the current cycle; Determine the reference motor rotation angles of the m joint motors corresponding to the robot in the next cycle from the reference state sequence; Calculate the weighted sum of the offset target rotation angles of the m joint motors in the current cycle and the reference motor rotation angles of the m joint motors corresponding to the next cycle to obtain the target motor rotation angles of the m joint motors in the current cycle.
[0175] It should be noted that the information (including but not limited to terrain information), data (including but not limited to data for analysis, stored data, displayed data, etc.), and signals involved in this application are all authorized by the object or fully authorized by all parties, and the collection, use, and processing of relevant data need to comply with the relevant laws, regulations, and standards of relevant countries and regions.
[0176] Figure 12 The structural block diagram of the control device of the quadruped robot provided by an exemplary embodiment of the present application is shown. This device can be implemented as all or part of the quadruped robot through software, hardware, or a combination of both. This device includes:
[0177] An acquisition module 1201, configured to acquire the terrain information of the environment where the quadruped robot is located, and the terrain information includes a plurality of candidate landing points;
[0178] A determination module 1202, configured to determine a plurality of desired landing points from the plurality of candidate landing points, and the desired landing points are the landing points that support the quadruped robot to move in the environment;
[0179] A control module 1203, configured to control the torque of at least one joint of the plurality of joints, so that the quadruped robot performs random landing motion on the plurality of desired landing points, and the desired landing points in the random landing motion have randomness or irregularity.
[0180] In a possible implementation, the control module 1203 is configured to control the torque of at least one of the plurality of joints, so that the quadruped robot performs a random landing motion on the plurality of desired landing points based on a basic motion mode.
[0181] Wherein, the basic motion mode includes at least one of the following motion modes:
[0182] Moving in a first direction. For example, the quadruped robot controls the four legs to swing, thereby driving the quadruped robot to move in the first direction;
[0183] Circling in a second direction. For example, the quadruped robot controls the four legs to rotate in the same direction, thereby driving the quadruped robot to circle;
[0184] The four feet contract inwardly. For example, the quadruped robot controls the four legs to contract to the bottom of the base part;
[0185] The four feet extend outwardly. For example, the quadruped robot controls the four legs to extend outward;
[0186] Two of the four feet contract inwardly. For example, the quadruped robot controls any two of the four legs to contract to the bottom of the base part;
[0187] Two of the four feet extend outwardly. For example, the quadruped robot controls any two of the four legs to extend away from the base part;
[0188] A single foot of the four feet contracts inwardly. For example, the quadruped robot controls any one of the four legs to contract to the bottom of the base part;
[0189] A single foot of the four feet extends outwardly. For example, the quadruped robot controls any one of the four legs to extend away from the base part;
[0190] The base part sways back and forth. For example, when the quadruped robot controls the four legs to move, the base part sways back and forth, producing a nodding effect;
[0191] The four feet move in a manner of changing step frequency. For example, when the quadruped robot controls the four legs to move, it moves with a changing step frequency;
[0192] The four feet move in a manner of changing gait. For example, when the quadruped robot controls the four legs to move, it moves in a manner of changing gait, such as a straight gait, an S-shaped gait.
[0193] In a possible implementation, the determination module 1202 is configured to determine the trajectory landing points of the quadruped robot based on the motion trajectory of the quadruped robot in the basic motion mode.
[0194] Offset the footfall point of the trajectory according to the offset amount to obtain an offset footfall point;
[0195] Select the candidate footfall point closest to the offset footfall point from the several candidate footfall points, and determine it as the expected footfall point when performing a random footfall movement based on the basic movement mode;
[0196] Wherein, the offset amount is an offset amount determined within the selection range with the footfall point of the trajectory as the reference position and the range of motion of the joint.
[0197] In a possible implementation manner, the determining module 1202 is configured to determine the candidate footfall point as the expected footfall point when performing a random footfall movement based on the basic movement mode when the distance between the planar coordinates of the offset footfall point and the planar coordinates of the candidate footfall point is the closest.
[0198] In a possible implementation manner, the determining module 1202 is configured to offset the footfall point of the trajectory corresponding to each of the four feet according to the offset amount corresponding to each foot to obtain an offset footfall point corresponding to each foot.
[0199] In a possible implementation manner, the determining module 1202 is configured to offset the footfall point of the trajectory corresponding to each of the two diagonal feet according to the offset amount corresponding to each foot to obtain an offset footfall point corresponding to each foot;
[0200] Wherein, the two diagonal feet are two feet located on the same diagonal among the four feet.
[0201] In a possible implementation manner, the determining module 1202 is configured to offset the footfall point of the trajectory corresponding to a single foot according to the offset amount corresponding to the single foot to obtain an offset footfall point corresponding to the single foot;
[0202] Wherein, the single foot is one of the four feet.
[0203] In a possible implementation manner, the determining module 1202 is configured to randomly generate the offset amount within the selection range with the footfall point of the trajectory as the reference position and the range of motion of the joint.
[0204] In a possible implementation manner, the control module 1203 is configured to control the torque of at least one of the several joints so that the quadruped robot moves based on the basic movement mode at the several expected footfall points.
[0205] In a possible implementation, a determination module 1202 is configured to determine the trajectory landing points of the quadruped robot based on the movement trajectory of the quadruped robot in the basic movement mode.
[0206] In a possible implementation, the determination module 1202 is configured to select, from the several candidate landing points, the candidate landing point that is closest to the trajectory landing point, and determine it as the desired landing point when moving based on the basic movement mode.
[0207] In a possible implementation, the determination module 1202 is configured to, when the distance between the planar coordinates of the trajectory landing point and the planar coordinates of the candidate landing point is less than a second distance threshold, determine the candidate landing point as the desired landing point when moving based on the basic movement mode.
[0208] In a possible implementation, an acquisition module 1201 is configured to acquire the terrain information of the environment where the quadruped robot is located through a camera and / or a motion capture device and / or a positioning device.
[0209] Figure 13 FIG. shows a block diagram of a computer device 1300 according to an exemplary embodiment of the present application. This computer device can be implemented as the server in the above solution of the present application. The image computer device 1300 includes a central processing unit (CPU) 1301, a system memory 1304 including a random access memory (RAM) 1302 and a read-only memory (ROM) 1303, and a system bus 1305 connecting the system memory 1304 and the central processing unit 1301. The image computer device 1300 further includes a mass storage device 1306 for storing an operating system 1309, an application program 1310, and other program modules 1311.
[0210] The mass storage device 1306 is connected to the central processing unit 1301 through a mass storage controller (not shown) connected to the system bus 1305. The mass storage device 1306 and its associated computer-readable medium provide non-volatile storage for the image computer device 1300. That is to say, the mass storage device 1306 can include a computer-readable medium (not shown) such as a hard disk or a compact disc read-only memory (CD-ROM) drive.
[0211] Without loss of generality, the computer-readable medium may include a computer storage medium and a communication medium. The computer storage medium includes volatile and non-volatile, removable and non-removable media implemented by any method or technology for storing information such as computer-readable instructions, data structures, program modules, or other data. The computer storage medium includes RAM, ROM, erasable programmable read-only memory (EPROM), electrically-erasable programmable read-only memory (EEPROM), flash memory or other solid-state storage technologies, CD-ROM, digital versatile disc (DVD) or other optical storage, magnetic tape cartridges, magnetic tapes, disk storage or other magnetic storage devices. Of course, those skilled in the art will know that the computer storage medium is not limited to the above several types. The above-mentioned system memory 1304 and mass storage device 1306 can be collectively referred to as memory.
[0212] According to various embodiments of the present disclosure, the image computer device 1300 may also be run by a remote computer on a network connected through a network such as the Internet. That is, the image computer device 1300 may be connected to the network 1308 through the network interface unit 1307 connected to the system bus 1305, or rather, the network interface unit 1307 may also be used to connect to other types of networks or remote computer systems (not shown).
[0213] The memory further includes at least one segment of computer program, and the at least one segment of computer program is stored in the memory. The central processing unit 1301 implements the control method of the quadruped robot shown in the above various embodiments by executing the at least one segment of program.
[0214] An embodiment of the present application also provides a quadruped robot, which includes a processor and a memory. At least one instruction is stored in the memory, and the at least one instruction is loaded and executed by the processor to implement the control method of the quadruped robot provided in the above method embodiments.
[0215] An embodiment of the present application also provides a computer-readable storage medium, in which at least one program is stored, and the at least one program is loaded and executed by the processor to implement the control method of the quadruped robot provided in the above method embodiments.
[0216] The embodiments of the present application further provide a computer program product, which includes a computer program stored in a computer-readable storage medium; the computer program is read and executed by a processor of a computer device, so that the computer device executes the control method of the quadruped robot provided in the above method embodiments.
[0217] The embodiments of the present application further provide a chip, which includes a programmable logic circuit or program, and the device installed with the chip is used to implement the control method of the quadruped robot as described above.
[0218] It can be understood that in the specific implementation manner of the present application, for the data, historical data, and portraits and other object data processing related to the identity or characteristics of the object, when the above embodiments of the present application are applied to specific products or technologies, the permission or consent of the object needs to be obtained, and the collection, use, and processing of the relevant data need to comply with the relevant laws, regulations, and standards of the relevant countries and regions.
[0219] It should be understood that the "plurality" mentioned herein refers to two or more. "And / or" describes the association relationship of associated objects, indicating that three relationships can exist. For example, A and / or B can represent: A exists alone, A and B exist simultaneously, and B exists alone. The character " / " generally represents an "or" relationship between the associated objects before and after.
[0220] Those of ordinary skill in the art can understand that all or part of the steps to implement the above embodiments can be completed by hardware, or can be completed by a program instructing the relevant hardware. The program can be stored in a computer-readable storage medium, and the above-mentioned storage medium can be a read-only memory, a magnetic disk, or an optical disk, etc.
[0221] The above are only optional embodiments of the present application, and are not intended to limit the present application. Any modifications, equivalent replacements, improvements, etc. made within the spirit and principle of the present application shall be included in the protection scope of the present application.
Claims
1. A control method for a quadruped robot, characterized in that The quadruped robot includes a base part, four feet provided on the base part, and a plurality of joints corresponding to the four feet. The method includes: Obtaining terrain information of the environment where the quadruped robot is located, where the terrain information includes a plurality of candidate landing points; Determining a plurality of desired landing points among the plurality of candidate landing points, where the desired landing points are the landing points that support the quadruped robot to move in the environment; Controlling the torque of at least one of the plurality of joints so that the quadruped robot performs a random landing movement on the plurality of desired landing points. The random landing movement is a movement method obtained by adding random actions to a directed movement to obtain a random, or irregular, or non - regular movement method. The desired landing points in the random landing movement have randomness or irregularity.
2. The method according to claim 1, characterized in that, The controlling the torque of at least one of the plurality of joints so that the quadruped robot performs a random landing movement on the plurality of desired landing points includes: Controlling the torque of at least one of the plurality of joints so that the quadruped robot performs the random landing movement on the plurality of desired landing points based on a basic movement method.
3. The method according to claim 2, wherein The basic movement method includes at least one of the following movement methods: Moving in a first direction; Circling in a second direction; The four feet contract inward; The four feet extend outward; Two of the four feet contract inward; Two of the four feet extend outward; A single one of the four feet contracts inward; A single one of the four feet extends outward; The base part shakes reciprocally; The four feet move in a manner of changing step frequency; The four feet move in a manner of changing gait.
4. The method according to claim 2, wherein The determining a plurality of desired landing points among the plurality of candidate landing points includes: Based on the movement trajectory of the quadruped robot in the basic movement method, determining the trajectory landing points of the quadruped robot; Offsetting the trajectory landing points by an offset amount to obtain offset landing points; Selecting, among the plurality of candidate landing points, the candidate landing point closest to the offset landing point and determining it as the desired landing point when performing the random landing movement based on the basic movement method; Wherein, the offset amount is an offset amount determined within a selection range with the trajectory landing point as the reference position and the activity range of the joint.
5. The method according to claim 4, wherein The selecting, among the plurality of candidate landing points, the candidate landing point closest to the offset landing point and determining it as the desired landing point when performing the random landing movement based on the basic movement method includes: When the distance between the plane coordinates of the offset landing point and the plane coordinates of the candidate landing point is the closest, determining the candidate landing point as the desired landing point when performing the random landing movement based on the basic movement method.
6. The method according to claim 4, wherein The offsetting the trajectory landing points by an offset amount to obtain offset landing points includes: Offset the footprint corresponding to each of the four feet by the offset corresponding to each foot to obtain an offset footprint corresponding to each foot.
7. The method according to claim 4, characterized in that, The offsetting the footprint by the offset to obtain an offset footprint includes: Offset the footprint corresponding to each of the two diagonal feet by the offset corresponding to each foot to obtain an offset footprint corresponding to each foot; Wherein, the two diagonal feet are two feet located on the same diagonal line among the four feet.
8. The method according to claim 4, wherein The offsetting the footprint by the offset to obtain an offset footprint includes: Offset the footprint corresponding to a single foot by the offset corresponding to the single foot to obtain an offset footprint corresponding to the single foot; Wherein, the single foot is one of the four feet.
9. The method according to any one of claims 4 to 8, characterized in that The method further includes: Randomly generate the offset within the selection range with the footprint as the reference position and the range of motion of the joint.
10. The method according to any one of claims 4 to 8, characterized in that The method further includes: Control the torque of at least one of the plurality of joints so that the quadruped robot moves based on the basic motion mode at the plurality of desired footprints.
11. The method according to claim 2, wherein The determining a plurality of desired footprints among the plurality of candidate footprints includes: Determine the footprint of the quadruped robot based on the motion trajectory of the quadruped robot in the basic motion mode; Select the candidate footprint closest to the footprint among the plurality of candidate footprints and determine it as the desired footprint when moving based on the basic motion mode.
12. The method according to claim 11, wherein The selecting the candidate footprint closest to the footprint among the plurality of candidate footprints and determining it as the desired footprint when moving based on the basic motion mode includes: When the distance between the planar coordinates of the footprint and the planar coordinates of the candidate footprint is less than a second distance threshold, determine the candidate footprint as the desired footprint when moving based on the basic motion mode.
13. The method according to any one of claims 1 to 4, characterized in that, The obtaining the terrain information of the environment where the quadruped robot is located includes: Obtain the terrain information of the environment where the quadruped robot is located through a camera and / or a motion capture device.
14. A control device for a quadruped robot, characterized in that, The quadruped robot includes a base portion, four feet provided on the base portion, and a plurality of joints corresponding to the four feet. The device includes: An acquisition module for acquiring terrain information of the environment where the quadruped robot is located, the terrain information including a plurality of candidate footprints; A determination module for determining a plurality of desired footprints among the plurality of candidate footprints, the desired footprints being the footprints that support the quadruped robot to move in the environment; A control module for controlling the torque of at least one of the plurality of joints, so that the quadruped robot performs a random landing motion on the plurality of expected landing points. The random landing motion refers to a random, or irregular, or unruly motion mode obtained by adding random actions to a directed motion. The expected landing points in the random landing motion have randomness or irregularity.
15. A quadruped robot, characterized in that, The quadruped robot includes a processor and a memory. At least one instruction is stored in the memory. The at least one instruction is loaded and executed by the processor to implement the control method of the quadruped robot according to any one of claims 1 to 13.
16. A computer-readable storage medium, characterized in that, At least one computer program is stored in the computer-readable storage medium. The at least one computer program is loaded and executed by a processor to implement the control method of the quadruped robot according to any one of claims 1 to 13.
17. A computer program product, characterized in that, The computer program product includes a computer program. The computer program is stored in a computer-readable storage medium. The computer program is read and executed by a processor of a computer device, so that the computer device executes the control method of the quadruped robot according to any one of claims 1 to 13.
18. A chip, characterized in that, The chip includes a programmable logic circuit or program. The device installed with the chip is used to implement the control method of the quadruped robot according to any one of claims 1 to 13.
Citation Information
Patent Citations
Hexapod robot gait planning method based on depth reinforcement learning
CN107562052A