Robot control method and device, chip product, equipment and storage medium
The robot control method facilitates seamless switching between footed and wheeled motions in hybrid robots by using coaxial wheels and feet, enhancing adaptability and efficiency.
Patent Information
- Application Number
- CN202411281495.X
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-09-12
- Publication Date
- 2024-12-10
- Estimated Expiration
- 2044-09-12
AI Technical Summary
Existing foot-wheel hybrid robots face challenges in efficiently switching between footed and wheeled motions in complex scenarios, necessitating a solution for seamless transitions.
A robot control method and device that enables a foot-wheel hybrid robot to switch from foot-supporting to wheel-supporting states by coordinating mechanical legs with coaxial wheels and feet, allowing the robot to stand on a support surface using only mechanical wheels.
Enables flexible task performance by allowing the robot to adapt its support mode, improving adaptability and efficiency in various environments.
Smart Images

Figure CN119098958A_ABST
Abstract
Description
Technical Field
[0001] The embodiments of the present application relate to the field of artificial intelligence technology, and in particular to a robot control method, device, chip product, equipment and storage medium. Background Art
[0002] With the development of robot control technology, some organizations and scientific research institutions have successively launched wheel-legged robots with mechanical feet (hereinafter referred to as foot-wheel hybrid robots). Foot-wheel hybrid robots can not only rely on mechanical wheels alone to perform wheeled movements such as gliding and gait walking, but can also rely on mechanical wheels and mechanical feet at the same time to stably perform foot-type movements such as gait walking and climbing stairs.
[0003] However, for some complex scenarios involving both wheeled motion and footed motion, how to enable a foot-wheel hybrid robot to switch from footed motion to wheeled motion is an urgent problem that needs to be solved. Summary of the invention
[0004] The embodiments of the present application provide a robot control method, device, chip product, equipment and storage medium. The technical solution provided by the embodiments of the present application may include the following contents.
[0005] According to one aspect of an embodiment of the present application, a control method of a robot is provided, wherein the robot comprises a body, two outer mechanical legs connected to the body via hip joints, and at least one inner mechanical leg, wherein a hip joint corresponding to the at least one inner mechanical leg is located between hip joints corresponding to the two outer mechanical legs, a rotation center of the hip joint corresponding to the outer mechanical leg and a rotation center of the hip joint corresponding to the inner mechanical leg are located in the same vertical plane, and at least one of the mechanical legs of the robot is provided with a pair of coaxial mechanical wheels and a mechanical foot at a foot away from the hip joint; the method comprises:
[0006] Standing on a support surface in a foot-supporting state, wherein in the foot-supporting state, the robot stands by assisting the mechanical wheels with the mechanical feet;
[0007] The mechanical foot is moved to be away from the support surface, so that the robot is transformed from the foot support state to the wheel support state to stand on the support surface, wherein in the wheel support state, the robot stands only by the mechanical wheels.
[0008] According to one aspect of an embodiment of the present application, a control device of a robot is provided, the robot comprising a body, two outer mechanical legs connected to the body via hip joints, and at least one inner mechanical leg, the hip joint corresponding to the at least one inner mechanical leg is located between the hip joints corresponding to the two outer mechanical legs, the rotation center of the hip joint corresponding to the outer mechanical leg and the rotation center of the hip joint corresponding to the inner mechanical leg are located in the same vertical plane, at least one of the mechanical legs of the robot has a foot away from the hip joint and is provided with a pair of coaxial mechanical wheels and a mechanical foot; the device comprises:
[0009] A robot standing module, used for standing on a support surface in a foot-supporting state, wherein in the foot-supporting state, the robot stands by assisting the mechanical wheels with the mechanical feet;
[0010] A state conversion module is used to move the mechanical foot away from the support surface, so that the robot is converted from the foot support state to the wheel support state and stands on the support surface, wherein in the wheel support state, the robot stands only by the mechanical wheels.
[0011] According to one aspect of an embodiment of the present application, a chip product is provided, in which a computer program is stored. The computer program is loaded and executed by a processor to implement the above-mentioned robot control method.
[0012] According to one aspect of an embodiment of the present application, a computer device is provided, which includes a processor and a memory, wherein a computer program is stored in the memory, and the computer program is loaded and executed by the processor to implement the above-mentioned robot control method.
[0013] According to one aspect of an embodiment of the present application, a computer-readable storage medium is provided, in which a computer program is stored. The computer program is loaded and executed by a processor to implement the above-mentioned robot control method.
[0014] According to one aspect of the embodiments of the present application, a computer program product is provided, the computer program product comprising a computer program, the computer program being stored in a computer-readable storage medium. A processor of a computer device reads the computer program from the computer-readable storage medium, and the processor executes the computer program, so that the computer device executes the control method of the robot.
[0015] The technical solution provided by the embodiments of the present application may have the following beneficial effects:
[0016] For a robot having an inner mechanical leg and an outer mechanical leg connected to a body through a hip joint, since the hip joint corresponding to the inner mechanical leg is located between the hip joints corresponding to the two outer mechanical legs, and there is at least one mechanical leg with a pair of coaxial mechanical wheels and mechanical feet provided at the foot away from the hip joint, when the robot stands on a support surface with the assistance of mechanical wheels by the mechanical feet, the inner mechanical leg and the outer mechanical leg can be coordinated to move the mechanical foot coaxial with the mechanical wheel to leave the support surface, so that the robot can stand on the support surface only by the mechanical wheels to enter a wheel support state. This enables the wheel-legged robot with mechanical feet to have the function of switching from a foot support state to a wheel support state, so that the robot can perform different tasks by switching states, thereby improving the flexibility of the robot. BRIEF DESCRIPTION OF THE DRAWINGS
[0017] In order to more clearly illustrate the technical solutions in the embodiments of the present application, the drawings required for use in the description of the embodiments will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present application. For ordinary technicians in this field, other drawings can be obtained based on these drawings without creative work.
[0018] Figure 1 is a schematic diagram of a robot control system provided by an embodiment of the present application;
[0019] Figure 2 is a schematic diagram of a quadrupedal foot-wheel hybrid robot provided by an embodiment of the present application;
[0020] Figure 3 is a schematic diagram of a four-wheel support state and a four-legged support state provided by an embodiment of the present application;
[0021] Figure 4 is a flow chart of a robot control method provided by an embodiment of the present application;
[0022] Figure 5 is a flow chart of a robot control method provided by another embodiment of the present application;
[0023] Figure 6 is a schematic diagram of a wheel support state switching to a ready state provided by an embodiment of the present application;
[0024] Figure 7 is a schematic diagram of switching from a ready state to a first state provided by an embodiment of the present application;
[0025] Figure 8 is a schematic diagram of switching from a first state to a second state provided by an embodiment of the present application;
[0026] Fig. 9is a schematic diagram of switching from the second state to the wheel support state provided by an embodiment of the present application;
[0027] Fig.10 is a schematic diagram of switching from a wheel support state to a wheel motion state provided by an embodiment of the present application;
[0028] Fig.11 is a schematic diagram of switching from a four-legged support state to a four-wheel support state provided by an embodiment of the present application;
[0029] Fig.12 is a block diagram of a control device of a robot provided by an embodiment of the present application;
[0030] Fig.13 is a block diagram of a control device of a robot provided by another embodiment of the present application;
[0031] Fig.14 It is a simplified structural block diagram of a computer device provided by an embodiment of the present application. DETAILED DESCRIPTION
[0032] In order to make the objectives, technical solutions and advantages of the present application clearer, the implementation methods of the present application will be further described in detail below with reference to the accompanying drawings.
[0033] The technical solutions provided in the embodiments of the present application mainly involve robotics technology in artificial intelligence technology, such as mainly involving intelligent control of robots. Robots are mechanical and electronic devices that can imitate certain human skills and are combined using mechanical transmission and modern microelectronics technology. Robots are developed on the basis of electronic, mechanical and information technology. Robots do not necessarily have to look like humans. As long as they can independently complete the tasks and commands assigned to them by humans, they are members of the robot family. A robot is an automated machine that has some intelligent capabilities similar to those of humans or organisms, such as perception, planning, movement and coordination 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 technical level. Mobile robots and robot vision and touch technologies are typical representatives.
[0034] In the technical solution provided in the embodiment of the present application, the executor of each step may be a computer device, which may refer to an electronic device with data calculation, processing and storage capabilities.
[0035] Optionally, the computer device may be a PC (Personal Computer) device such as a desktop computer or a laptop computer for controlling the robot; or a server for controlling the robot. The server may be an independent physical server, a server cluster or a distributed system composed of multiple physical servers, or a cloud server providing cloud computing services. The computer device and the robot may be connected via a physical line, a network, etc. For example, refer to Figure 1 In the robot control system 100, the computer device 101 can determine the expected task of the robot 103 (such as the expected task can include the expected acceleration / expected joint angle of each part of the robot 103 in the operation space of the robot 103) according to the reference movement trajectory set of the robot 103 (such as the reference movement trajectory of each part of the robot 103, and the reference movement trajectory includes the reference position at each control moment), and then calculate the expected joint torque set corresponding to the robot 103 based on the expected task, and control the movement of the robot 103 (such as each joint motor) through the network 102 according to the expected joint torque set. For example, the computer device 101 can control the robot 103 to switch from the foot support state to the wheel support state and stand on the support surface according to the expected joint torque set of the robot 103, so that the robot 103 switches from being able to perform foot-type movement to being able to perform wheel-type movement. In the wheel support state, the robot 103 stands only by mechanical wheels, and in the foot support state, the robot 103 stands by mechanical wheels assisted by mechanical feet.
[0036] Optionally, the computer device may also be a robot itself, that is, the execution subject of each step in the technical solution provided in the embodiment of the present application is a robot. Figure 1 , the computer device 101 can send the expected task (or reference movement trajectory set) of the robot 103 to the robot 103 through the network 102, and the robot 103 calculates the corresponding expected joint torque set according to the expected task (or reference movement trajectory set), and then moves according to the expected joint torque set. Optionally, the robot 103 can also automatically plan the reference movement trajectory set according to the real environment, and calculate the expected task corresponding to the reference movement trajectory set, so as to switch the support state in the real environment (such as switching from the foot support state to the wheel support state) to perform different tasks, which is not limited in the embodiments of the present application.
[0037] In some embodiments, the robot in the embodiments of the present application may include a foot-wheel hybrid robot. A foot-wheel hybrid robot refers to a wheel-legged robot with mechanical feet, and a wheel-legged robot refers to a legged robot with wheels as feet (i.e., a robot that moves based on mechanical legs). Optionally, a foot-wheel hybrid robot refers to a legged robot with a pair of mechanical wheels and mechanical feet on its feet, which is not limited in the embodiments of the present application. For example, refer to Figure 1 The robot 103 is a quadruped foot-wheel hybrid robot. The robot 103 has four mechanical legs, and the foot of each mechanical leg is provided with a pair of coaxial mechanical wheels and mechanical feet. The foot-wheel hybrid robot can perform wheeled motions such as sliding, gait walking, climbing stairs, crossing obstacles, waving, picking up objects, and carrying through mechanical wheels alone, or can perform footed motions such as gait walking, climbing stairs, crossing obstacles, marking time, waving, picking up objects, and carrying through mechanical wheels with the assistance of mechanical feet, which is not limited in the present embodiment.
[0038] In one example, reference Figure 1 The wheeled hybrid robot (i.e., robot 103) in the present embodiment may include a body 106, two outer mechanical legs connected to the body 106 via hip joints, and at least one inner mechanical leg. The two outer mechanical legs of the robot 103 form a first mechanical leg group 104, and the at least one inner mechanical leg of the robot 103 may form a second mechanical leg group 105. The two outer mechanical legs are respectively located on both sides of the central axis (i.e., sagittal plane) of the robot 103. Optionally, the two outer mechanical legs may be the two outermost mechanical legs of the robot 103.
[0039] The mechanical legs of the robot 103 are arranged side by side, that is, the rotation center of the hip joint corresponding to the outer mechanical leg of the robot 103 and the rotation center of the hip joint corresponding to the inner mechanical leg are located in the same vertical plane, such as the rotation axis of the hip joint corresponding to the first mechanical leg group 104 and the rotation axis of the hip joint corresponding to the second mechanical leg group 105 are located in the same vertical plane. The rotation center refers to a point on the rotation axis of the hip joint.
[0040] Optionally, the hip joint corresponding to at least one inner mechanical leg is located between the hip joints corresponding to the two outer mechanical legs, that is, at least one inner mechanical leg is completely located between the two outer mechanical legs. For example, in the case where the second mechanical leg group 105 includes two inner mechanical legs, the two outer mechanical legs in the first mechanical leg group 104 can be respectively arranged on both sides of the second mechanical leg group 105, that is, the two inner mechanical legs in the second mechanical leg group 105 can be arranged between the two outer mechanical legs in the first mechanical leg group 104.
[0041] Exemplarily, the robot 103 may be a four-legged foot-wheel hybrid robot, such as the robot 103 including two outer mechanical legs and two inner mechanical legs; the robot 103 may be a three-legged foot-wheel hybrid robot, such as the robot 103 including two outer mechanical legs and one inner mechanical leg, which is not limited in the embodiments of the present application. The robot 103 may stand on the support surface through the mechanical wheels on the outer mechanical legs or the inner mechanical legs, or may slide on the support surface through the mechanical wheels on the outer mechanical legs or the mechanical wheels on the inner mechanical legs, or may move on the support surface (i.e., gait walking) by controlling the first mechanical leg group 104 and the second mechanical leg group 105 to swing alternately, or may switch between foot-type movement and wheel-type movement by rotating the mechanical feet, which is not limited in the embodiments of the present application. Among them, the mechanical feet of the robot 103 may assist the mechanical wheels so that the robot 103 can perform foot-type movement more stably.
[0042] Optionally, the waist of the fuselage 106 is provided with a pitch joint and a roll joint, and the fuselage 106 can be controlled to rotate (such as pitching forward and backward, and rolling left and right) through the pitch joint and the roll joint. The mechanical legs can be controlled to rotate through the hip joint, and each mechanical leg can be extended and retracted independently. In one example, the mechanical legs corresponding to the first mechanical leg group 104 move synchronously, and the mechanical legs corresponding to the second mechanical leg group 105 move synchronously; the mechanical wheels corresponding to the first mechanical leg group 104 move synchronously, and the mechanical wheels corresponding to the second mechanical leg group 105 move synchronously.
[0043] Optionally, at least one of the mechanical legs of the foot-wheel hybrid robot is provided with a pair of coaxial mechanical wheels and mechanical feet at the foot away from the hip joint, that is, at least one foot has a rotation axis of the corresponding mechanical wheel and a rotation axis of the corresponding mechanical foot located on the same straight line. Exemplarily, all the mechanical legs of the robot 103 are provided with a pair of coaxial mechanical wheels and mechanical feet; or, some of the mechanical legs of the robot 103 are provided with a pair of coaxial mechanical wheels and mechanical feet.
[0044] For example, taking a quadrupedal foot-wheel hybrid robot as an example, each mechanical leg corresponding to the quadrupedal foot-wheel hybrid robot may be provided with a pair of coaxial mechanical wheels and mechanical feet; or, for the two mechanical leg groups corresponding to the quadrupedal foot-wheel hybrid robot, each mechanical leg in one and only one mechanical leg group is provided with a pair of coaxial mechanical wheels and mechanical feet; or, for the two mechanical leg groups corresponding to the quadrupedal foot-wheel hybrid robot, one mechanical leg in each mechanical leg group is provided with a pair of coaxial mechanical wheels and mechanical feet; or, for each mechanical leg corresponding to the quadrupedal foot-wheel hybrid robot, one and only one mechanical leg is provided with a pair of coaxial mechanical wheels and mechanical feet. The embodiments of the present application are not limited to this.
[0045] Each mechanical wheel can be driven independently, and each mechanical foot can rotate independently. The mechanical foot can be set on the left side of the mechanical wheel, or on the right side of the mechanical wheel, or the mechanical wheel can be set in a hollowed-out area at the root of the mechanical foot in a hollowed-out style, which is not limited in the embodiment of the present application.
[0046] The embodiment of the present application does not limit the size of the mechanical wheel and the mechanical foot. For example, the diameters of the mechanical wheels are the same, the lengths of the mechanical feet are the same, and the lengths of the mechanical feet can be 1.5 times or 2 times the diameter of the mechanical wheel. The embodiment of the present application does not limit the style of the mechanical foot. For example, the style of the mechanical foot can include at least one of the following: a foot-like style, a rectangular style, and a triangular style.
[0047] The mechanical foot can be used to assist the mechanical wheel to make the robot stand more stably on the support surface. Optionally, without the need for the mechanical foot, the mechanical foot can be rotated to coincide with the mechanical leg, or can be rotated to be perpendicular to the mechanical leg, or can be rotated to any angle that does not affect the contact between the mechanical foot and the support surface, which is not limited in the embodiments of the present application. In the case where the mechanical foot is needed, the mechanical foot can be rotated to contact the support surface to support the robot standing on the support surface together with the mechanical wheel.
[0048] For example, refer to Figure 1 Taking a quadrupedal hybrid robot with wheels and feet as an example, when a pair of coaxial mechanical wheels and mechanical feet are provided on each mechanical leg corresponding to the robot 103, if any mechanical wheel contacts the support surface, the mechanical foot coaxial with the mechanical wheel can be used to assist the mechanical wheel to support the robot 103 to stand; or, when a pair of coaxial mechanical wheels and mechanical feet are provided on each mechanical leg in one and only one mechanical leg group, if a mechanical leg group without a mechanical foot is used for support, the robot 103 can be supported to stand only by the mechanical wheels corresponding to the mechanical leg group. If the mechanical leg group of the mechanical foot is used for support, the robot 103 can be supported to stand by relying on the mechanical wheels and mechanical feet corresponding to the mechanical leg group; or, if there is only one mechanical leg with a pair of coaxial mechanical wheels and mechanical feet, if there is no mechanical leg group of the mechanical foot for support, the robot 103 can be supported to stand only by relying on the mechanical wheels corresponding to the mechanical leg group; if there is a mechanical leg group of the mechanical foot for support, the robot 103 can be supported to stand by relying on the mechanical wheels and one mechanical foot corresponding to the mechanical leg group, and the embodiment of the present application does not limit this. For the sake of convenience, the following will take the example of each foot of the robot being provided with a pair of coaxial mechanical wheels and mechanical feet as an example to illustrate the technical solution provided by the embodiment of the present application.
[0049] In some embodiments, reference Figure 2, which is a schematic diagram of the structure of a quadrupedal wheeled hybrid robot provided by an embodiment of the present application. The quadrupedal wheeled hybrid robot 200 may include: a body (including a waist 207, a trunk 208, a head 209 and an upper limb 210), a hip joint 211 and mechanical legs (such as an outer mechanical leg 201 and an inner mechanical leg 202).
[0050] The quadrupedal hybrid robot 200 has four mechanical legs: two outer mechanical legs 201 (recorded as a first mechanical leg group) and two inner mechanical legs 202 (recorded as a second mechanical leg group). The two inner mechanical legs 202 are located between the two outer mechanical legs 201. All four mechanical legs can move along the Figure 2 The four mechanical legs can be symmetrically distributed on both sides of the sagittal plane 206 .
[0051] The feet of the four mechanical legs are each equipped with a pair of coaxial mechanical wheels 203 and mechanical feet 204, that is, the rotation axis corresponding to the mechanical wheel 203 and the rotation axis corresponding to the mechanical foot 204 are located in the same straight line, and the mechanical foot 204 is installed on the outside of the mechanical wheel 203. Each mechanical wheel 203 can be driven independently (which can be achieved by the corresponding wheel joint), and each mechanical foot 204 can also be driven independently (which can be achieved by the corresponding ankle joint).
[0052] The quadrupedal wheeled hybrid robot 200 can stand up by the mechanical wheels on the two inner mechanical legs 202 or the mechanical wheels on the two outer mechanical legs 201, so as to be in a two-wheel supported state; the quadrupedal wheeled hybrid robot 200 can also stand up by the mechanical wheels on the two inner mechanical legs 202 and the mechanical wheels on the two outer mechanical legs 201 at the same time, so as to be in a four-wheel supported state. The two-wheel supported state and the four-wheel supported state can be collectively referred to as the wheel supported state, which is not limited to the embodiments of the present application.
[0053] The quadrupedal foot-wheel hybrid robot 200 can stand by the mechanical wheels and mechanical feet on the two inner mechanical legs 202 or the mechanical wheels and mechanical feet on the two outer mechanical legs 201, so as to be in a double-legged support state; the quadrupedal foot-wheel hybrid robot 200 can also stand by the mechanical wheels and mechanical feet on the two inner mechanical legs 202 and the mechanical wheels and mechanical feet on the two outer mechanical legs 201 at the same time, so as to be in a quadrupedal support state. The double-legged support state and the quadrupedal support state can be collectively referred to as the foot support state, which is not limited to the embodiments of the present application.
[0054] In the embodiment of the present application, when there is at least one mechanical foot assisting mechanical wheels to support the robot to stand, it can be determined that the robot is in a foot-supported state; when the robot stands only by mechanical wheels, it can be determined that the robot is in a wheel-supported state.
[0055] Optionally, the two inner mechanical legs 202 may be implemented as a whole, that is, the quadrupedal wheeled hybrid robot 200 may be implemented as a tripod wheeled hybrid robot having only one inner mechanical leg.
[0056] The other end of each mechanical leg away from the foot is connected to the hip joint 211, and each mechanical leg can rotate around its own hip joint 211 and maintain linkage. In the embodiment of the present application, the rotation axes of each hip joint 211 corresponding to the quadrupedal wheeled hybrid robot 200 are located in the same vertical plane 205, and the rotation planes of each mechanical leg corresponding to the quadrupedal wheeled hybrid robot 200 are parallel. The hip joints 211 corresponding to the two inner mechanical legs 202 are located between the hip joints 211 corresponding to the two outer mechanical legs 201, and the four hip joints 211 are symmetrically distributed on both sides of the sagittal plane 206.
[0057] Optionally, the hip joints 211 corresponding to the quadrupedal wheeled hybrid robot 200 may be coaxial, that is, the rotation axes of the hip joints 211 are located in the same straight line. The hip joints 211 corresponding to the quadrupedal wheeled hybrid robot 200 may also be coaxial, such as the hip joints 211 corresponding to the two inner mechanical legs 202 are coaxial, and the hip joints 211 corresponding to the two outer mechanical legs 201 are coaxial, but the hip joints 211 corresponding to the two inner mechanical legs 202 are not coaxial with the hip joints 211 corresponding to the two outer mechanical legs 201.
[0058] In one example, the hip joints 211 corresponding to the two outer mechanical legs 201 share the same drive motor, so that the two outer mechanical legs 201 move synchronously; the hip joints 211 corresponding to the two inner mechanical legs 202 share the same drive motor, so that the two inner mechanical legs 202 move synchronously. In a feasible example, each hip joint 211 corresponding to the quadrupedal foot-wheel hybrid robot 200 can also be independently driven by its own corresponding drive motor, which is not limited in the embodiment of the present application.
[0059] The fuselage of the quadrupedal wheeled hybrid robot 200 may include a waist 207, a torso 208, a head 209 and an upper limb 210. Among them, each hip joint 211 corresponding to the quadrupedal wheeled hybrid robot 200 is connected to the same end of the waist 207, and the other end of the waist 207 is connected to one end of the torso 208. Two rotation axes are arranged on the waist 207: a pitch rotation axis (a pitch joint may be arranged correspondingly) that enables the torso 208 to pitch, and a side swing rotation axis (a side swing joint may be arranged correspondingly) that enables the torso 208 to side swing, the side swing joint and the pitch joint are designed in series, and are at the upper end of the pitch joint and connected to the torso 208. The rotating fuselage in the embodiment of the present application may refer to the process of rotating the pitch joint around the pitch rotation axis to rotate the torso 208.
[0060] The other end of the torso 208 is connected to the head 209 and the upper limb 210, and the upper limb 210 can be an upper limb with multiple degrees of freedom. In some embodiments, an end effector, such as a mechanical gripper, a suction cup, etc., is deployed on the upper limb 210. A data acquisition device can be deployed in the head 209 to perceive the real environment, such as an image acquisition device, a video shooting device, an IMU (Inertial Measurement Unit, inertial measurement unit), etc. Among them, the IMU can be placed at the geometric center of the torso 208, the center point of the hip joint, etc., which can be used to measure the actual acceleration, actual attitude angular velocity, actual Euler angle, actual position, actual angle, actual angular velocity, etc. of the torso 208.
[0061] In some feasible examples, a workstation can also be deployed in the quadrupedal-wheel hybrid robot 200, and the workstation can be used to control the movement of various parts of the robot, such as controlling various joints to make various parts move. The workstation can be implemented as a NUC (Next Unit of Computing) small computer.
[0062] Optionally, the corresponding hip joints, ankle joints, wheel joints, telescopic joints, pitch joints and roll joints of the quadruped-foot-wheel hybrid robot 200 can be independently driven by their respective corresponding drive motors.
[0063] In the technical solution provided in the embodiment of the present application, the mechanical wheels, mechanical feet, mechanical legs, body (including IMU), and various joints (including 2 hip joints, 4 ankle joints, 4 wheel joints, 4 telescopic joints, 1 pitch joint and 1 roll joint) of the quadrupedal foot-wheel hybrid robot 200 are necessary hardware for the control algorithm, and the rest are non-essential hardware.
[0064] Compared with the bipedal wheeled hybrid robot, the quadrupedal wheeled hybrid robot has a more stable structure and a stronger ability to resist external impact disturbances. Compared with the hexapod wheeled hybrid robot, it has fewer redundant joints and a lower design complexity. It can bear large loads, pass through narrow spaces, and perform tasks on objects of different heights. The quadrupedal wheeled leg robot has a strong ability to adapt to the environment.
[0065] The robot control method provided in the embodiment of the present application can be applied to any scenario that requires switching from a foot support state to a wheel support state, such as switching from a gait walking task to a sliding task, switching from a four-wheel support state to a four-legged support state or a two-legged support state, switching from a two-wheel support state to a four-legged support state or a two-legged support state, etc.
[0066] For example, refer to Figure 3In the quadruped support state, the four mechanical feet of the quadruped-wheel hybrid robot 300 are all in contact with the support surface, so that the quadruped-wheel hybrid robot 300 can stand on the support surface with the assistance of the four mechanical wheels 301 through the four mechanical feet 302, and the angle between the first mechanical leg group 303 (composed of two outer mechanical legs) and the second mechanical leg group 304 (composed of two inner mechanical legs) is zero. In the case where the quadruped-wheel hybrid robot 300 is required to perform wheeled tasks such as gliding, gait walking, striding state, standing, etc., the quadruped-wheel hybrid robot 300 can be converted from the quadruped support state to the four-wheel support state by coordinating the inner mechanical legs and the outer mechanical legs, and adjusting the ankle joints corresponding to the four mechanical feet 302. In the four-wheel support state, the quadruped-wheel hybrid robot 300 stands on the support surface only through the four mechanical wheels 301, and the four mechanical feet 302 are in a retracted state, that is, not in contact with the support surface. The quadrupedal foot-wheel hybrid robot 300 in the four-wheel support state is more suitable for performing wheeled tasks, and wheeled tasks may refer to tasks that the robot completes in the wheel support state.
[0067] This allows the robot to perform different tasks by switching states, improving the flexibility of the robot, which is conducive to improving the robot's adaptability to the environment and the versatility of the robot. In addition, in the wheel-supported state, the robot can slide quickly through the mechanical wheels, thereby improving the robot's movement efficiency.
[0068] The following will use a method embodiment to illustrate the control method of the robot provided in the embodiment of the present application. For the contents not described in the method embodiment, reference can be made to the above embodiment.
[0069] Please refer to Figure 4 , which shows a flow chart of a robot control method provided by an embodiment of the present application. In the embodiment of the present application, the robot control method is described by taking the robot as an example of the execution subject of each step. The method may include the following steps (401-402):
[0070] Step 401, standing on a support surface in a foot-support state, wherein in the foot-support state, the robot stands by using mechanical feet to assist mechanical wheels.
[0071] In the embodiment of the present application, the initial state of the robot is the foot-support state, which refers to the state where the robot is kept standing by the mechanical wheels assisted by the mechanical feet. In the foot-support state, the mechanical wheels and the mechanical feet jointly support the robot. The foot-support state can be used to constrain the position and posture of various parts of the robot so that the robot can keep standing by the mechanical wheels and mechanical feet at the same time, especially the mechanical wheels and mechanical feet of the robot.
[0072] Exemplarily, the foot support state can be used to constrain the robot's mechanical wheels and mechanical feet to contact the support surface to form support for the robot so that the robot can remain standing. Optionally, the foot support state can also be used to constrain at least one of the following: the robot's body remains vertical, and the angle between the inner mechanical leg and the outer mechanical leg is not zero or is zero, which is not limited in the embodiments of the present application.
[0073] Optionally, when there is at least one mechanical foot assisting the mechanical wheel to support the robot to stand, it can be determined that the robot is in a foot support state. In one example, the foot support state includes at least one of the following: a four-legged support state and a two-legged support state. The four-legged support state refers to a state where the robot is standing by assisting the mechanical wheels with four mechanical feet, and the two-legged support state refers to a state where the robot is standing by assisting the mechanical wheels with two mechanical feet.
[0074] Taking a four-legged foot-wheel hybrid robot as an example, in the four-legged support state, the robot can stand on the support surface with the four mechanical feet assisting the four mechanical feet respectively. The angle between the first mechanical leg group and the second mechanical leg group of the robot can be zero, which is recorded as the four-legged overlapping support state. The angle between the first mechanical leg group and the second mechanical leg group of the robot can also be non-zero, which is recorded as the four-legged non-overlapping support state. Compared with the four-legged overlapping support state, the robot can stand more stably in the four-legged non-overlapping support state. In the two-legged support state, the robot can rely on the two mechanical feet corresponding to the first mechanical leg group or the two mechanical feet corresponding to the second mechanical leg group to assist the mechanical wheels to keep standing.
[0075] For example, refer to Figure 3 The quadrupedal-foot-wheel hybrid robot 300 stands on the supporting surface in a quadruped supporting state. In the quadruped supporting state, the quadrupedal-foot-wheel hybrid robot 300 maintains standing by means of four mechanical feet 302 assisting four mechanical wheels 301. The body of the quadrupedal-foot-wheel hybrid robot 300 remains vertical, that is, the waist remains vertical. The arms of the quadrupedal-foot-wheel hybrid robot 300 are bent and placed on both sides of the body. The angle between the first mechanical leg group 303 and the second mechanical leg group 304 of the quadrupedal-foot-wheel hybrid robot 300 is zero, and they are close together to form a stable support for the quadrupedal-foot-wheel hybrid robot 300.
[0076] The robot in the embodiment of the present application is the same as that in the above embodiment. For the contents not described in the embodiment of the present application, reference can be made to the above embodiment, which will not be repeated here. For ease of understanding, the embodiment of the present application is described by taking a quadrupedal wheel hybrid robot as an example.
[0077] The above-mentioned support surface refers to a surface for the robot to move, such as a surface for supporting the robot to stand. In the embodiment of the present application, the support surface may include only one plane, such as a flat ground, a road, etc., or the support surface may include multiple planes of different heights, such as stairs, a road surface with a shoulder, a ground with a pit, etc., which is not limited in the embodiment of the present application.
[0078] In the embodiment of the present application, the fuselage may refer to the waist (base) of the robot, and the parts above the waist (such as the torso, head and upper limbs) forming a whole. For example, during the movement of the robot, the torso, head and upper limbs of the robot can be controlled so as not to rotate at all times, so as to form a whole with the waist of the robot to move, that is, the rotation of the fuselage is controlled by controlling the pitch joint and roll joint of the waist.
[0079] The waist of the robot can be implemented as the base of the robot's body, and the body can move based on the waist. When the waist is stable, the body can also move stably. The body can be implemented as a fixed base or a mobile platform, and the waist can be stabilized by keeping the waist of the robot vertical.
[0080] Optionally, the waist being vertical may mean that the central axis of the waist is parallel to the direction of gravity, that is, the upper surface of the waist (the surface close to the body) is horizontal, thereby providing a stable platform for the body, so that the robot is not easy to tip over during movement. Figure 3 The body of the quadrupedal-wheeled hybrid robot 300 remains vertical (that is, the waist remains vertical) so that the quadrupedal-wheeled hybrid robot 300 is not easy to fall over during movement.
[0081] Step 402, moving the mechanical foot away from the support surface, so that the robot switches from the foot support state to the wheel support state and stands on the support surface, wherein in the wheel support state, the robot stands only by the mechanical wheels.
[0082] In the embodiment of the present application, the state that the robot needs to convert to is the wheel-supported state, which refers to a state where the robot can stand only by relying on mechanical wheels. The wheel-supported state can be used to constrain the position and posture of various parts of the robot so that the robot can stand only by relying on mechanical wheels, especially the mechanical wheels and mechanical feet of the robot.
[0083] Exemplarily, the wheel support state can be used to constrain the robot's mechanical wheels to contact the support surface to form support for the robot so that the robot remains standing, and to constrain the robot's mechanical feet from contacting the support surface. Optionally, the wheel support state can also be used to constrain at least one of the following: the robot's body remains vertical, the angle between the inner mechanical leg and the outer mechanical leg is not zero or is zero, and the embodiments of the present application are not limited to this. The body remains vertical can refer to keeping the central axis of the body parallel to the direction of gravity (i.e., the vertical direction).
[0084] In one example, the wheel support state includes at least one of the following: a four-wheel support state and a two-wheel support state. The four-wheel support state refers to a state where the vehicle is kept standing only by four mechanical wheels, and the two-wheel support state refers to a state where the vehicle is kept standing only by two mechanical wheels.
[0085] Take a four-legged foot-wheel hybrid robot as an example. In the four-wheel support state, the robot can stand on the support surface with four mechanical feet. The angle between the first mechanical leg group and the second mechanical leg group of the robot can be zero, which is recorded as a four-wheel overlapping support state. The angle between the first mechanical leg group and the second mechanical leg group of the robot can also be non-zero, which is recorded as a four-wheel non-overlapping support state. Compared with the four-wheel overlapping support state, the robot can stand more stably in the four-wheel non-overlapping support state. In the two-wheel support state, the robot can only rely on the two mechanical wheels corresponding to the first mechanical leg group or the two mechanical wheels corresponding to the second mechanical leg group to keep standing.
[0086] For example, refer to Figure 3 The quadrupedal wheeled hybrid robot 300 stands on the support surface 303 in a four-wheel support state. In the four-wheel support state, the quadrupedal wheeled hybrid robot 300 is kept standing only by four mechanical wheels 301. The body of the quadrupedal wheeled hybrid robot 300 is kept vertical, that is, the waist is kept vertical. The arms of the quadrupedal wheeled hybrid robot 300 are bent and placed on both sides of the body. The angle between the first mechanical leg group 303 and the second mechanical leg group 304 of the quadrupedal wheeled hybrid robot 300 is not zero, and is naturally forked to form a stable support for the quadrupedal wheeled hybrid robot 300.
[0087] In one example, the process of making the robot switch from the foot support state to the wheel support state and stand on the support surface can be referred to as a state switching task. The state switching task is correspondingly provided with a preparation state, and the robot can first be switched from the foot support state to the preparation state, and then the robot can be switched from the preparation state to the wheel support state. The purpose of setting the preparation state is to adjust the robot to a suitable state for state switching, so that the robot can stably switch from the foot support state to the wheel support state. For example, refer to Figure 5 , step 402 can also include the following sub-steps.
[0088] Step 402a, by adjusting at least one of the joint angle of the hip joint and the telescopic amount of the telescopic joint of the robot, the robot is transformed from a foot support state to a ready state standing on the support surface, wherein the hip joint is used to control the rotation of the robot's mechanical legs, and the telescopic joint is used to adjust the length of the robot's mechanical legs. In the ready state, the robot satisfies at least one of the following: the angle between the first mechanical leg group and the second mechanical leg group is zero, the telescopic amount of the telescopic joint is greater than the lower limit of the telescopic amount and less than the preset telescopic amount threshold, and the body is vertical.
[0089] The rotation of the hip joint can be controlled by adjusting the joint angle of the hip joint, and the rotation of the hip joint can drive the mechanical leg to rotate, so that the rotation of the mechanical leg can be controlled by adjusting the joint angle of the hip joint, and then the angle between the first mechanical leg group and the second mechanical leg group can be adjusted. The extension and retraction of the telescopic joint can be controlled by adjusting the extension amount of the telescopic joint, and the extension and retraction of the telescopic joint can affect the length of the mechanical leg, so that the length of the mechanical leg can be controlled by adjusting the extension amount of the telescopic joint. The rotation of the fuselage can be controlled by the pitch joint and the roll joint.
[0090] Exemplarily, by adjusting the joint angle of the hip joint, the angle between the first mechanical leg group and the second mechanical leg group is made zero. Adjusting the angle between the first mechanical leg group and the second mechanical leg group to zero is conducive to the mechanical foot corresponding to one mechanical leg group being able to assist in supporting the robot in the process of controlling the mechanical feet of the two mechanical leg groups to leave the ground one after another, thereby maintaining the stability of the robot.
[0091] By adjusting the extension amount of the telescopic joint, the extension amount of the telescopic joint is made greater than the lower limit of the extension amount and less than the preset extension amount threshold. The extension amount is used to indicate the stretching degree of the telescopic joint, the lower limit of the extension amount is used to indicate the minimum stretching degree of the telescopic joint, at which time the length of the mechanical leg is the minimum (i.e., the lower limit of the length), and the upper limit of the extension amount refers to the maximum stretching degree of the telescopic joint, at which time the length of the mechanical leg is the maximum (i.e., the upper limit of the length).
[0092] The embodiment of the present application does not limit the preset telescopic amount threshold, which can be set and adjusted according to actual use requirements. For example, the preset telescopic amount threshold can be set to a smaller value, that is, the joint angle of the telescopic joint is adjusted to a smaller value, so that the center of mass of the robot is located at a lower height, which is conducive to improving the stability of the robot when performing state switching tasks. In addition, the embodiment of the present application limits the telescopic amount of the robot's telescopic joint in the ready state to above the lower limit of the telescopic amount, so that the mechanical leg is at a suitable length, which can avoid the problem that the mechanical leg is at the lower limit of the length and cannot continue to shorten, thereby avoiding affecting the length adjustment of the mechanical leg. For example, the telescopic amount of the telescopic joint in the ready state can be adjusted to a target telescopic amount including at least one of the following: 4 cm, 5 cm, 6 cm.
[0093] When the angle between the first mechanical leg group and the second mechanical leg group, and the extension amount of the extension joint are determined, the height of the fuselage is also determined. Optionally, the fuselage can be made vertical by adjusting the pitch joint and the roll joint.
[0094] In one example, according to the positions and postures of various parts of the robot in the foot support state, at least one of the following can be adjusted adaptively: the joint angle of the hip joint corresponding to the first mechanical leg group, the joint angle of the hip joint corresponding to the second mechanical leg group, the extension amount of the telescopic joint corresponding to the first mechanical leg group, the extension amount of the telescopic joint corresponding to the second mechanical leg group, the joint angle of the pitch joint, and the joint angle of the side swing joint, so that the robot can be transformed from the foot support state to the ready state and stand on the support surface. Exemplarily, the process of transforming the foot support state to the ready state includes at least one of the following:
[0095] 1. Adjust at least one of the joint angles of the hip joints corresponding to the first mechanical leg group and the joint angles of the hip joints corresponding to the second mechanical leg group, so that the robot switches from a foot support state to a ready state and stands on the support surface.
[0096] Optionally, the joint angle of the hip joint on the mechanical leg is the target joint angle when the two mechanical leg groups are brought together. In the quadruped support state, if the joint angle of the hip joint corresponding to one and only one mechanical leg group is the target joint angle, then only the joint angle of the hip joint corresponding to the other mechanical leg group needs to be adjusted to the target joint angle. If the joint angles of the hip joints corresponding to the two mechanical leg groups are not the target joint angles, then the joint angles of the hip joints corresponding to the two mechanical leg groups need to be adjusted to the target joint angle. If the joint angles of the hip joints corresponding to the two mechanical leg groups are both the target joint angles, then the joint angles of the hip joints corresponding to the two mechanical leg groups do not need to be adjusted.
[0097] For example, refer to Figure 6 In the four-legged support state, if the telescopic amount of the telescopic joints on each mechanical leg of the four-legged foot-wheel hybrid robot 300 is between the lower limit value of the telescopic amount and the preset telescopic amount threshold, and the body is vertical, it is only necessary to adjust the joint angle of the hip joint corresponding to the first mechanical leg group 303 and the joint angle of the hip joint corresponding to the second mechanical leg group 304 to the target joint angle at the same time, so as to adjust the angle between the first mechanical leg group 303 and the second mechanical leg group 304 to zero, so that the four-legged foot-wheel hybrid robot 300 is converted from the foot support state to the ready state.
[0098] 2. Adjust at least one of the telescopic amount of the telescopic joint corresponding to the first mechanical leg group and the telescopic amount of the telescopic joint corresponding to the second mechanical leg group, so that the robot switches from the foot support state to the ready state and stands on the support surface.
[0099] Optionally, in the quadruped support state, if the telescopic amount of the telescopic joint corresponding to one and only one mechanical leg group is between the lower limit value of the telescopic amount and the preset telescopic amount threshold, then it is only necessary to adjust the telescopic amount of the telescopic joint corresponding to the other mechanical leg group to between the lower limit value of the telescopic amount and the preset telescopic amount threshold. If the telescopic amounts of the telescopic joints corresponding to the two mechanical leg groups are not between the lower limit value of the telescopic amount and the preset telescopic amount threshold, then the telescopic amounts of the telescopic joints corresponding to the two mechanical leg groups need to be adjusted to between the lower limit value of the telescopic amount and the preset telescopic amount threshold. If the telescopic amounts of the telescopic joints corresponding to the two mechanical leg groups are between the lower limit value of the telescopic amount and the preset telescopic amount threshold, then the telescopic amounts of the telescopic joints corresponding to the two mechanical leg groups do not need to be adjusted.
[0100] For example, refer to Figure 6 In the four-legged support state, if the joint angles of the hip joints on each mechanical leg of the four-legged and wheeled hybrid robot 300 are the target joint angles and the body is vertical, it is only necessary to adjust the telescopic amount of the telescopic joints corresponding to the first mechanical leg group 303 and the telescopic amount of the telescopic joints corresponding to the second mechanical leg group 304 to the target telescopic amount (such as 5 cm) at the same time to adjust the height of the body to a preset height, so that the four-legged and wheeled hybrid robot 300 is converted from the foot support state to the ready state.
[0101] 3. By simultaneously adjusting the joint angle of the hip joint corresponding to the first mechanical leg group, the joint angle of the hip joint corresponding to the second mechanical leg group, the extension amount of the telescopic joint corresponding to the first mechanical leg group, and the extension amount of the telescopic joint corresponding to the second mechanical leg group, the robot is transformed from the foot support state to the ready state and stands on the support surface.
[0102] For example, refer to Figure 6 In the four-legged support state, if the joint angle of the hip joint on each mechanical leg of the four-legged foot-wheel hybrid robot 300 is not the target joint angle, the telescopic amount of the telescopic joint on each mechanical leg is not the target telescopic amount, and the body is vertical, it is necessary to adjust the joint angle of the hip joint corresponding to the first mechanical leg group 303 and the joint angle of the hip joint corresponding to the second mechanical leg group 304 to the target joint angle, and adjust the telescopic amount of the telescopic joint corresponding to the first mechanical leg group 303 and the telescopic amount of the telescopic joint corresponding to the second mechanical leg group 304 to the target telescopic amount, so that the four-legged foot-wheel hybrid robot 300 is converted from the foot support state to the ready state.
[0103] In the embodiment of the present application, during the movement of the robot, the body of the robot always remains vertical, that is, the pitch joint and the roll joint are controlled not to rotate.
[0104] In one example, in the ready state, the robot may satisfy: the angle between the first mechanical leg group and the second mechanical leg group is zero; in the ready state, the robot may also satisfy: the telescopic amount of the telescopic joint is greater than the lower limit value of the telescopic amount and less than the preset telescopic amount threshold; in the ready state, the robot may also satisfy: the angle between the first mechanical leg group and the second mechanical leg group is zero, and the telescopic amount of the telescopic joint of the robot is greater than the lower limit value of the telescopic amount and less than the preset telescopic amount threshold; in the ready state, the robot may also satisfy: the angle between the first mechanical leg group and the second mechanical leg group is zero, the telescopic amount of the telescopic joint of the robot is greater than the lower limit value of the telescopic amount and less than the preset telescopic amount threshold, and the body is vertical, and the embodiments of the present application are not limited to this.
[0105] In some embodiments, reference Figure 6 In the preparation state, the angle between the first mechanical leg group 303 and the second mechanical leg group 304 is zero, and they are close together. The telescopic amount of the telescopic joint of the quadrupedal wheeled hybrid robot 300 is greater than the lower limit of the telescopic amount and less than the preset telescopic amount threshold (such as the telescopic amount of the telescopic joint is 5 cm), and the body of the quadrupedal wheeled hybrid robot 300 is vertical.
[0106] Optionally, the length of each mechanical leg can be reduced by reducing the telescopic amount of each telescopic joint of the quadrupedal-wheeled hybrid robot 300, so that the quadrupedal-wheeled hybrid robot 300 is transformed from the foot support state to the ready state to stand on the support surface, such as lowering the height of the center of mass of the quadrupedal-wheeled hybrid robot 300, which is beneficial to the motion stability of the quadrupedal-wheeled hybrid robot 300. Among them, the body of the quadrupedal-wheeled hybrid robot 300 remains vertical. At this time, the center of mass of the quadrupedal-wheeled hybrid robot 300 falls within the support area of the quadrupedal-wheeled hybrid robot 300, so that the quadrupedal-wheeled hybrid robot 300 can stand stably. The above-mentioned support area can be an area enclosed by the contact points between the quadrupedal-wheeled hybrid robot 300 and the support surface (such as the contact points between each mechanical wheel 301 and each mechanical foot 302 and the support surface respectively).
[0107] Step 402b, by adjusting the joint angle of the robot's ankle joint, the mechanical foot is moved away from the support surface, so that the robot is transformed from the ready state to the wheel support state and stands on the support surface, wherein the ankle joint is used to control the rotation of the mechanical foot.
[0108] By adjusting the joint angle of the ankle joint of the robot, the rotation of the ankle joint can be controlled, and the rotation of the ankle joint can be used to drive the rotation of the mechanical foot, thereby achieving the control of the rotation of the mechanical foot by adjusting the joint angle of the ankle joint of the robot.
[0109] Optionally, in the case where the robot has only one mechanical foot, the joint angle of the ankle joint on the mechanical foot is adjusted to move the mechanical foot away from the support surface, so that the robot is transformed from the ready state to the wheel-supported state and stands on the support surface.
[0110] When the robot has multiple mechanical feet, the joint angles of the ankle joints on some of the mechanical feet are adjusted to move the part of the mechanical feet away from the supporting surface, so that the robot is transformed from the ready state to the wheel-supported state and stands on the supporting surface.
[0111] In one example, when the robot performs a state switching task, the body of the robot remains vertical; when the robot performs a task of switching from a ready state to a wheel-supported state, the height of the body of the robot remains unchanged.
[0112] To summarize, the technical solution provided in the embodiments of the present application is for a robot having an inner mechanical leg and an outer mechanical leg connected to a body through a hip joint. Since the hip joint corresponding to the inner mechanical leg is located between the hip joints corresponding to the two outer mechanical legs, and there is at least one mechanical leg with a pair of coaxial mechanical wheels and mechanical feet provided at the foot away from the hip joint, when the robot stands on a support surface with the assistance of mechanical wheels by mechanical feet, the inner mechanical leg and the outer mechanical leg can be coordinated to move the mechanical foot coaxial with the mechanical wheel to leave the support surface, so that the robot can stand on the support surface only by the mechanical wheels to enter a wheel support state. This enables the wheel-legged robot with mechanical feet to have the function of switching from a foot support state to a wheel support state, so that the robot can perform different tasks by switching states, thereby improving the flexibility of the robot.
[0113] In some embodiments, when the robot performs a task of switching from a ready state to a wheel-supported state, a plurality of intermediate states may be set for the robot to guide the robot to switch stably from the ready state to the wheel-supported state.
[0114] Optionally, different intermediate states may be set for the robot with respect to the distribution state of the mechanical feet. For example, the distribution state of the mechanical feet includes at least one of the following: at least one inner mechanical leg and at least one outer mechanical leg are provided with mechanical feet (i.e., both the first mechanical leg group and the second mechanical leg group are provided with mechanical feet), and only one of the first mechanical leg group and the second mechanical leg group is provided with mechanical feet.
[0115] For example, when the robot has only one mechanical foot, the mechanical foot can be set on the inner mechanical leg or on the outer mechanical leg. When the robot has multiple mechanical feet, some of the mechanical feet can be set on the inner mechanical leg, and the other mechanical feet can be set on the outer mechanical leg. The upper limit of the number of mechanical feet corresponding to the first mechanical leg group is 2, which is not limited in the embodiments of the present application.
[0116] For example, refer to Figure 3 , the first mechanical leg group 303 and the second mechanical leg group 304 of the quadruped-foot-wheel hybrid robot 300 are both provided with mechanical feet. Optionally, only the first mechanical leg group 303 of the quadruped-foot-wheel hybrid robot 300 may be provided with mechanical feet, or only the second mechanical leg group 304 of the quadruped-foot-wheel hybrid robot 300 may be provided with mechanical feet, which is not limited in the embodiment of the present application.
[0117] Optionally, in the foot-support state, all mechanical feet of the robot are in contact with the support surface.
[0118] In one example, when mechanical feet are provided on at least one inner mechanical leg and at least one outer mechanical leg, the above step 402b may further include the following content.
[0119] 1. Control the robot to transform from a ready state to a first state and stand on a support surface, wherein in the first state, the projection point of the robot's center of mass on the support surface along the vertical direction falls within the projection area of the mechanical foot corresponding to the auxiliary mechanical leg group on the support surface, and the joint angle of the ankle joint of the main mechanical leg group is rotated to a first joint angle, and the first joint angle is used to prevent the mechanical foot from contacting the support surface during the movement of the robot.
[0120] The purpose of setting the first state is to adjust the joint angle of the ankle joint of the main mechanical leg group to a suitable joint angle so that the mechanical foot of the main mechanical leg group can leave the support surface and switch the main mechanical leg group from the foot support state to the wheel support state.
[0121] Optionally, when at least one inner mechanical leg and at least one outer mechanical leg are provided with mechanical feet, that is, when both the first mechanical leg group and the second mechanical leg group are provided with mechanical feet, one mechanical leg group of the first mechanical leg group and the second mechanical leg group is a main mechanical leg group, and the other mechanical leg group is an auxiliary mechanical leg group. When the first mechanical leg group is the main mechanical leg group, the second mechanical leg group is the auxiliary mechanical leg group, and when the second mechanical leg group is the main mechanical leg group, the first mechanical leg group is the auxiliary mechanical leg group.
[0122] For example, refer to Figure 7In the preparation state, the first mechanical leg group 303 can be used as the main mechanical leg group, and the second mechanical leg group 304 can be used as the auxiliary mechanical leg group, or the first mechanical leg group 303 can be used as the auxiliary mechanical leg group, and the second mechanical leg group 304 can be used as the main mechanical leg group.
[0123] In the first state, the joint angle of the ankle joint of the main mechanical leg group is rotated to the first joint angle so that the mechanical foot of the main mechanical leg group does not contact the support surface. The above-mentioned first joint angle can be set according to an empirical value, which can be any joint angle that makes the mechanical foot of the main mechanical leg group not contact the support surface during the movement of the robot. For example, the joint angle close to the lower limit of the ankle joint angle can be set as the first joint angle. The lower limit of the ankle joint angle can refer to the joint angle when the mechanical foot can be lifted to the highest height, and the upper limit of the ankle joint angle can refer to the joint angle when the mechanical foot can move to the lowest height.
[0124] In one example, when the mechanical wheel corresponding to the main mechanical leg group is provided with an active state and a locked state, the joint angle that makes the mechanical wheel in the active state can be determined as the first joint angle, so that the mechanical wheel corresponding to the main mechanical leg group can roll. Among them, in the active state, the mechanical wheel can rotate, and in the locked state, the mechanical wheel cannot rotate. When the ankle joint of the mechanical wheel rotates to less than a certain angle, the mechanical wheel switches from the locked state to the active state. For example, for a quadrupedal foot-wheel hybrid robot, the mechanical wheel on its corresponding inner mechanical leg can be provided with an active state and a locked state, and the mechanical wheel on its corresponding outer mechanical leg is not provided with an active state and a locked state (such as always rotatable). The active state and the locked state can be achieved by a special structure, which is not limited in the embodiments of the present application.
[0125] Optionally, when the mechanical wheels corresponding to the main mechanical leg group are set to an active state and a locked state, rotating the joint angle of the ankle joint of the main mechanical leg group to a first joint angle can make the mechanical wheels of the main mechanical leg group in an active state, thereby allowing the mechanical wheels of the main mechanical leg group to move in a rolling manner.
[0126] Optionally, after the mechanical foot of the main mechanical leg group leaves the support surface, the projection point of the robot's center of mass on the support surface in the vertical direction automatically falls within the projection area of the mechanical foot corresponding to the auxiliary mechanical leg group on the support surface. The center of gravity of the robot refers to the point where the gravity of the robot is concentrated. The center of mass of the robot is the weighted average of the mass position with respect to its mass. If the gravity is uniform, the center of mass and the center of gravity may coincide. In an embodiment of the present application, the center of mass of the robot is located on the waist of the robot, such as at the center point of the waist. The projection point of the center point of the waist on the support surface in the vertical direction can be controlled to fall within the projection area of the mechanical foot corresponding to the main mechanical leg group on the support surface, thereby controlling the projection point of the robot's center of mass on the support surface in the vertical direction to fall within the projection area of the mechanical foot corresponding to the main mechanical leg group on the support surface.
[0127] Exemplarily, after the mechanical foot of the main mechanical leg group leaves the supporting surface, the robot tilts slightly in the direction of the mechanical foot corresponding to the auxiliary mechanical leg group so that the projection point of the robot's center of mass along the vertical direction on the supporting surface falls within the projection area of the mechanical foot corresponding to the auxiliary mechanical leg group on the supporting surface.
[0128] In one feasible example, the projection point of the center point of the waist along the vertical direction on the support surface can be controlled to fall at the position of the target distance in front of the mechanical wheel corresponding to the auxiliary mechanical leg group, so that the projection point of the center of mass of the robot along the vertical direction on the support surface falls at the center of the projection area of the mechanical foot corresponding to the main mechanical leg group on the support surface. The target position can be determined based on the size of the mechanical foot, such as determining the target distance with half the length of the mechanical foot, such as 4 cm, 5 cm, 6 cm, etc., which is not limited in the embodiments of the present application. Among them, the position of the waist can be adjusted based on the hip joint and the telescopic joint.
[0129] Adjust the projection point of the robot's center of mass on the support surface in the vertical direction to fall within the projection area of the mechanical foot corresponding to the auxiliary mechanical leg group on the support surface, so that the main mechanical leg group can be converted to the wheel support state while the auxiliary mechanical leg group can be used to enable the robot to maintain stable standing and maintain stability with the help of the auxiliary mechanical leg group in subsequent movements.
[0130] In one example, the ankle joints of the main mechanical leg group may be rotated only in a direction close to the body to control the robot to transform from the ready state to the first state to stand on the support surface.
[0131] Exemplarily, by rotating the ankle joint of the main mechanical leg group in a direction close to the fuselage, the joint angle of the ankle joint of the main mechanical leg group can be rotated to a first joint angle, so that the mechanical foot of the main mechanical leg group is separated from the supporting surface and lifted to a specified position.
[0132] Optionally, during the process of controlling the robot to switch from the preparation state to the first state, the height of the robot body may remain unchanged and the body may remain vertical.
[0133] For example, refer to Figure 7 Taking the quadrupedal-wheeled hybrid robot 300 in the ready state as an example, the ankle joint of the first mechanical leg group 303 (i.e., the main mechanical leg group) is rotated counterclockwise to adjust the joint angle of the ankle joint of the first mechanical leg group 303 to the first joint angle, and the height of the body of the quadrupedal-wheeled hybrid robot 300 is controlled to remain unchanged, and the body of the quadrupedal-wheeled hybrid robot 300 is controlled to remain vertical, so that the quadrupedal-wheeled hybrid robot 300 is transformed from the ready state to the first state.
[0134] In the first state, the projection point of the center of mass of the quadrupedal-foot-wheel hybrid robot 300 on the support surface along the vertical direction falls within the projection area of the mechanical feet of the second mechanical leg group 304 on the support surface. The friction between the mechanical feet 302 and the mechanical wheels 301 of the second mechanical leg group 304 and the support surface can keep the quadrupedal-foot-wheel hybrid robot 300 stable in the forward direction.
[0135] In a feasible example, the ready state can be merged into the first state, that is, in the process of controlling the robot to transition from the foot support state to the ready state, only the ankle joint of the main mechanical leg group is rotated in a direction close to the fuselage to control the robot to directly transition from the ready state to the first state standing on the support surface.
[0136] 2. Control the robot to transform from a first state to a second state and stand on the support surface, wherein, in the second state, the angle between the main mechanical leg group and the auxiliary mechanical leg group is greater than zero and less than a preset angle threshold, and the projection point of the robot's center of mass on the support surface along the vertical direction falls within the robot's support area, and the support area refers to the area enclosed by the contact points between the robot and the support surface.
[0137] The purpose of setting the second state is to adjust the projection point of the robot's center of mass on the support surface in the vertical direction to fall within the support area of the robot, so as to release the mechanical feet of the auxiliary mechanical leg group, so that the robot can rotate the mechanical feet of the auxiliary mechanical leg group to leave the support surface while maintaining stable standing, which is beneficial to improving the robot's movement stability.
[0138] The above-mentioned preset angle threshold can be set and adjusted according to actual use requirements, and the embodiments of the present application do not limit this. Adjusting the angle between the first mechanical leg group and the second mechanical leg group to be greater than zero and less than the preset angle threshold can make the first mechanical leg group and the second mechanical leg group naturally diverge, so that a triangular support can be formed for the fuselage, which is conducive to improving the movement stability of the robot and making it less likely to tip over.
[0139] In an embodiment of the present application, the center of mass of the robot is located on the waist of the robot, such as at the center point of the waist. The projection point of the center point of the waist on the support surface along the vertical direction can be controlled to fall within the support area of the robot, thereby controlling the projection point of the center point of the waist on the support surface along the vertical direction to fall within the support area of the robot.
[0140] Exemplarily, the projection point of the center point of the waist along the vertical direction on the support surface can be controlled to fall at a position between the mechanical wheels corresponding to the main mechanical leg group and the mechanical wheels corresponding to the auxiliary mechanical leg group, such as the middle position between the mechanical wheels corresponding to the main mechanical leg group and the mechanical wheels corresponding to the auxiliary mechanical leg group, so that the projection point of the robot's center of mass along the vertical direction on the support surface falls at the center of the robot's support area, and the robot's center of mass is located between the two mechanical leg groups, thereby ensuring the stability of the robot.
[0141] In one example, while keeping the contact point between the mechanical wheel corresponding to the auxiliary mechanical leg group and the support surface unchanged, the hip joint of the main mechanical leg group can be rotated in the forward direction of the robot, and the hip joint of the auxiliary mechanical leg group can be rotated in the opposite direction of the forward direction, so as to control the robot to transform from a first state to a second state and stand on the support surface.
[0142] Optionally, the contact point between the mechanical foot and the mechanical wheel corresponding to the auxiliary mechanical leg group and the support surface remains unchanged by rotating the hip joint of the main mechanical leg group in the forward direction of the robot and rotating the hip joint of the auxiliary mechanical leg group in the opposite direction of the forward direction, and adjusting the ankle joint and wheel joint corresponding to the auxiliary mechanical leg group accordingly. The hip joint of the main mechanical leg group is rotated in the forward direction of the robot and the hip joint of the auxiliary mechanical leg group is rotated in the opposite direction of the forward direction, so that the angle between the main mechanical leg group and the auxiliary mechanical leg group is adjusted to between zero and a preset angle threshold, and since the adjustment of each hip joint can make the fuselage move in the forward direction, the projection point of the center of mass of the robot on the support surface in the vertical direction can be adjusted to fall within the support area of the robot.
[0143] By rotating the hip joint of the main mechanical leg group in the forward direction of the robot, the mechanical wheel of the main mechanical leg group can be moved to a position at a preset value from the mechanical wheel of the auxiliary mechanical leg group, and the preset value may include at least one of the following: 50 cm, 55 cm, 60 cm, 70 cm, and the preset value is not limited in the embodiment of the present application. The fuselage can be moved to a position at a distance of 1 / 2 of the preset value from the mechanical wheel of the auxiliary mechanical leg group, so that the projection point of the center of mass of the robot on the support surface in the vertical direction falls at the center of the support area of the robot.
[0144] In one example, when the mechanical wheel corresponding to the auxiliary mechanical leg group is set with an active state and a locked state, since the mechanical foot corresponding to the auxiliary mechanical leg group is always parallel to the supporting surface and the joint angle of its corresponding ankle joint can lock the mechanical wheel corresponding to the auxiliary mechanical leg group (that is, the mechanical wheel is controlled in a locked state), the auxiliary mechanical leg group can still keep the contact point between the mechanical wheel and the supporting surface unchanged through the friction between the mechanical foot and the mechanical wheel and the supporting surface respectively.
[0145] Optionally, in the process of controlling the robot to switch from the first state to the second state, the height of the robot body can be kept unchanged, and the body can be kept vertical. While keeping the height of the robot body unchanged, the length of the auxiliary mechanical leg group and the length of the main mechanical leg group can be adaptively adjusted by telescopic joints.
[0146] For example, refer to Figure 8 , taking the quadrupedal wheeled hybrid robot 300 in the first state as an example, while keeping the contact point between the mechanical wheel corresponding to the second mechanical leg group 304 (i.e., the auxiliary mechanical leg group) and the support surface unchanged, the hip joint corresponding to the first mechanical leg group 303 (i.e., the main mechanical leg group) is rotated in the forward direction (in this process, the first joint angle is kept unchanged) to adjust the distance between the contact point between the first mechanical leg group 303 and the support surface and the contact point between the second mechanical leg group 303 and the support surface to a preset value (e.g., 60 cm), so that the angle between the first mechanical leg group 303 and the second mechanical leg group 304 is adjusted to be greater than zero and less than the preset angle threshold. At the same time, the hip joint corresponding to the second mechanical leg group 304 is rotated in the opposite direction of the forward direction, so that the projection point of the center of mass of the quadrupedal wheeled hybrid robot 300 on the support surface in the vertical direction falls within the support area of the quadrupedal wheeled hybrid robot 300.
[0147] The length of each mechanical leg is adaptively adjusted to keep the height of the body of the quadruped and wheeled hybrid robot 300 unchanged and the body vertical, so that the quadruped and wheeled hybrid robot 300 is converted from the first state to the second state.
[0148] 3. Control the robot to transform from the second state to the wheel support state and stand on the support surface, wherein, in the wheel support state, the mechanical feet corresponding to the auxiliary mechanical leg group are rotated to leave the support surface, so that the mechanical wheels corresponding to the auxiliary mechanical leg group and the mechanical wheels corresponding to the main mechanical leg group form support for the robot.
[0149] In the second state, the mechanical foot corresponding to the auxiliary mechanical leg group has not yet left the ground, and the mechanical foot corresponding to the auxiliary mechanical leg group can be moved off the ground by adjusting the ankle joint of the auxiliary mechanical leg group. For example, the ankle joint of the auxiliary mechanical leg group can be rotated only in a direction close to the fuselage to control the robot to switch from the second state to the wheel support state and stand on the support surface.
[0150] By rotating the ankle joint of the auxiliary mechanical leg group in a direction close to the fuselage, the mechanical foot corresponding to the auxiliary mechanical leg group can be moved away from the ground. Alternatively, by rotating the ankle joint of the auxiliary mechanical leg group in a direction away from the fuselage, the joint angle of the ankle joint of the auxiliary mechanical leg group can be rotated to a first joint angle, so that the mechanical foot corresponding to the auxiliary mechanical leg group does not contact the support surface during the subsequent movement of the robot.
[0151] Optionally, when the mechanical wheels corresponding to the auxiliary mechanical leg group are set with an active state and a locked state, if the joint angle of the ankle joint of the auxiliary mechanical leg group is rotated to a first joint angle, the mechanical wheels corresponding to the auxiliary mechanical leg group can be switched to the active state, so that the mechanical wheels corresponding to the auxiliary mechanical leg group support wheeled movement.
[0152] For example, refer to Fig. 9 Taking the quadrupedal foot-wheel hybrid robot 300 in the second state as an example, only the ankle joint of the second mechanical leg group 304 (i.e., the auxiliary mechanical leg group) is rotated counterclockwise to adjust the joint angle of the ankle joint of the second mechanical leg group 304 to the first joint angle, so that the mechanical foot of the second mechanical leg group 304 is separated from the supporting surface, thereby transforming the quadrupedal foot-wheel hybrid robot 300 from the second state to the wheel support state.
[0153] Optionally, the remaining parts of the quadruped-wheel hybrid robot 300 remain unchanged.
[0154] In the embodiment of the present application, when mechanical feet are provided on both the inner and outer mechanical legs, the main mechanical leg group is first converted to the wheel support state, and then the auxiliary mechanical leg group is converted to the wheel support state. After the main mechanical leg group is converted to the wheel support state, the auxiliary mechanical leg group can provide stable support for the robot, and in the process of switching the auxiliary mechanical leg group to the wheel support state, the center of mass of the robot falls within the support area of the robot, and the angle between the main mechanical leg group and the auxiliary mechanical leg group is not zero, thereby providing stability for the auxiliary mechanical leg group to switch to the wheel support state, thereby enabling the robot to stably realize the conversion from the ready state to the wheel support state, which is beneficial to improving the stability of the robot in executing state switching tasks.
[0155] In an example, when only one of the first mechanical leg group and the second mechanical leg group is provided with a mechanical foot, the above step 402b may further include the following content.
[0156] 1. Control the robot to transform from a ready state to a first state and stand on a support surface, wherein in the first state, the angle between the target mechanical leg group and the non-target mechanical leg group is greater than zero and less than a preset angle threshold, and the projection point of the robot's center of mass on the support surface along the vertical direction falls within the robot's support area, and the support area refers to the area enclosed by the contact points between the robot and the support surface.
[0157] In the embodiment of the present application, the purpose of setting the first state is to adjust the projection point of the robot's center of mass on the support surface in the vertical direction to fall within the support area of the robot, so as to release the mechanical feet of the non-mechanical leg group, so that the robot can rotate the mechanical feet of the non-mechanical leg group to leave the support surface while maintaining stable standing, which is beneficial to improving the robot's movement stability.
[0158] Optionally, when only one of the first mechanical leg group and the second mechanical leg group is provided with a mechanical foot, the mechanical leg group provided with the mechanical foot is the target mechanical leg group, and the mechanical leg group not provided with the mechanical foot is the non-target mechanical leg group.
[0159] For example, when the first mechanical leg group is provided with a mechanical foot, and the second mechanical leg group is not provided with a mechanical foot, the first mechanical leg group can be determined as a target mechanical leg group, and the second mechanical leg group can be determined as a non-target mechanical leg group. When the second mechanical leg group is provided with a mechanical foot, and the first mechanical leg group is not provided with a mechanical foot, the second mechanical leg group can be determined as a target mechanical leg group, and the first mechanical leg group can be determined as a non-target mechanical leg group.
[0160] The above-mentioned preset angle threshold can be set and adjusted according to actual use requirements, and the embodiments of the present application do not limit this. Adjusting the angle between the first mechanical leg group and the second mechanical leg group to be greater than zero and less than the preset angle threshold can make the first mechanical leg group and the second mechanical leg group naturally diverge, so that a triangular support can be formed for the fuselage, which is conducive to improving the movement stability of the robot and making it less likely to tip over.
[0161] Optionally, the projection point of the center point of the waist on the support surface in the vertical direction can be controlled to fall within the support area of the robot, thereby controlling the projection point of the center point of the waist on the support surface in the vertical direction to fall within the support area of the robot. Exemplarily, the projection point of the center point of the waist on the support surface in the vertical direction can be controlled to fall between the mechanical wheels corresponding to the target mechanical leg group and the mechanical wheels corresponding to the non-target mechanical leg group, such as the middle position between the mechanical wheels corresponding to the target mechanical leg group and the mechanical wheels corresponding to the non-target mechanical leg group, so that the projection point of the center of mass of the robot on the support surface in the vertical direction falls at the center of the support area of the robot, and the center of mass of the robot is located between the two mechanical leg groups, thereby ensuring the stability of the robot.
[0162] In one example, while keeping the contact point between the mechanical wheel corresponding to the target mechanical leg group and the support surface unchanged, the hip joint of the non-target mechanical leg group can be rotated in the forward direction of the robot, and the hip joint of the target mechanical leg group can be rotated in the opposite direction of the forward direction, so as to control the robot to transition from the ready state to the first state standing on the support surface.
[0163] Optionally, the contact point between the mechanical foot and the mechanical wheel corresponding to the target mechanical leg group and the support surface remains unchanged by rotating the hip joint of the non-target mechanical leg group in the forward direction of the robot and rotating the hip joint of the target mechanical leg group in the opposite direction of the forward direction, and adjusting the ankle joint and wheel joint corresponding to the target mechanical leg group accordingly. The hip joint of the non-target mechanical leg group is rotated in the forward direction of the robot and the hip joint of the target mechanical leg group is rotated in the opposite direction of the forward direction, so that the angle between the target mechanical leg group and the non-target mechanical leg group is adjusted to between zero and a preset angle threshold, and since the adjustment of each hip joint can move the fuselage in the forward direction, the projection point of the center of mass of the robot on the support surface in the vertical direction can be adjusted to fall within the support area of the robot.
[0164] The hip joint of the non-target mechanical leg group is rotated in the forward direction of the robot, and the mechanical wheel of the non-target mechanical leg group can be moved to a position with a preset value away from the mechanical wheel of the target mechanical leg group. The preset value may include at least one of the following: 50 cm, 55 cm, 60 cm, 70 cm, and the preset value is not limited in the embodiment of the present application. The fuselage can be moved to a position with a distance of 1 / 2 of the preset value from the mechanical wheel of the target mechanical leg group, so that the projection point of the center of mass of the robot on the support surface in the vertical direction falls at the center of the support area of the robot.
[0165] In one example, when the mechanical wheel corresponding to the target mechanical leg group is set with an active state and a locked state, since the mechanical foot corresponding to the target mechanical leg group is always parallel to the support surface, and the joint angle of its corresponding ankle joint can lock the mechanical wheel corresponding to the target mechanical leg group (that is, the mechanical wheel is controlled in a locked state), the target mechanical leg group can still control the contact point between the mechanical wheel and the support surface to remain unchanged through the friction between the mechanical foot and the mechanical wheel and the support surface respectively.
[0166] Optionally, in the process of controlling the robot to switch from the first state to the second state, the height of the robot body can be kept unchanged, and the body can be kept vertical. While keeping the height of the robot body unchanged, the length of the target mechanical leg group and the length of the non-target mechanical leg group can be adaptively adjusted by telescopic joints.
[0167] For example, refer to Figure 8, when the second mechanical leg group 304 is the target mechanical leg group (i.e., it has mechanical feet) and the first mechanical leg group 303 is the non-target mechanical leg group (i.e., it does not have mechanical feet), while keeping the contact point between the mechanical wheel corresponding to the second mechanical leg group 304 and the support surface unchanged, rotate the hip joint corresponding to the first mechanical leg group 303 in the forward direction to adjust the distance between the contact point between the first mechanical leg group 303 and the support surface and the contact point between the second mechanical leg group 304 and the support surface to a preset value (e.g., 60 cm), so that the angle between the first mechanical leg group 303 and the second mechanical leg group 304 is adjusted to be greater than zero and less than the preset angle threshold. At the same time, rotate the hip joint corresponding to the second mechanical leg group 304 in the opposite direction of the forward direction, so that the projection point of the center of mass of the quadrupedal foot-wheel hybrid robot 300 on the support surface along the vertical direction falls within the support area of the quadrupedal foot-wheel hybrid robot 300.
[0168] The length of each mechanical leg is adaptively adjusted to keep the height of the body of the quadruped and wheeled hybrid robot 300 unchanged and the body vertical, so that the quadruped and wheeled hybrid robot 300 is transformed from the ready state to the first state and stands on the support surface.
[0169] The contents not described in the embodiments of the present application can be referred to the above embodiments and will not be repeated here.
[0170] 2. Control the robot to transform from the first state to the wheel support state and stand on the support surface, wherein, in the wheel support state, the mechanical feet corresponding to the target mechanical leg group are rotated to leave the support surface, so that the mechanical wheels corresponding to the target mechanical leg group and the mechanical wheels corresponding to the non-target mechanical leg group form support for the robot.
[0171] In the first state, the mechanical foot corresponding to the target mechanical leg group has not yet left the ground, and the mechanical foot corresponding to the target mechanical leg group can be moved off the ground by adjusting the ankle joint of the target mechanical leg group. For example, the ankle joint of the target mechanical leg group can be rotated only in a direction close to the fuselage to control the robot to switch from the first state to the wheel support state and stand on the support surface.
[0172] By rotating the ankle joint of the target mechanical leg group in a direction close to the fuselage, the mechanical foot corresponding to the target mechanical leg group can be moved away from the ground. Alternatively, by rotating the ankle joint of the target mechanical leg group in a direction away from the fuselage, the joint angle of the ankle joint of the target mechanical leg group can be rotated to a first joint angle, so that the mechanical foot corresponding to the target mechanical leg group does not contact the support surface during the subsequent movement of the robot.
[0173] Optionally, when the mechanical wheels corresponding to the target mechanical leg group are set with an active state and a locked state, if the joint angle of the ankle joint of the target mechanical leg group is rotated to a first joint angle, the mechanical wheels corresponding to the target mechanical leg group can be switched to the active state, thereby enabling the mechanical wheels corresponding to the target mechanical leg group to support wheeled movement.
[0174] For example, refer to Fig. 9 , when the second mechanical leg group 304 is the target mechanical leg group (i.e., it has a mechanical foot) and the first mechanical leg group 303 is the non-target mechanical leg group (i.e., it does not have a mechanical foot), it is only necessary to rotate the ankle joint of the second mechanical leg group 304 counterclockwise to adjust the joint angle of the ankle joint of the second mechanical leg group 304 to the first joint angle, so that the mechanical foot of the second mechanical leg group 304 is separated from the support surface. After the mechanical foot of the second mechanical leg group 304 is moved to be separated from the support surface, the mechanical wheels corresponding to the second mechanical leg group 304 and the mechanical wheels corresponding to the first mechanical leg group 303 form support for the quadruped foot-wheel hybrid robot 300, so that the quadruped foot-wheel hybrid robot 300 is transformed from the first state to the wheel support state.
[0175] Optionally, the remaining parts of the quadruped-wheel hybrid robot 300 remain unchanged.
[0176] In the embodiment of the present application, when only one of the first mechanical leg group and the second mechanical leg group is provided with a mechanical foot, after the center of mass of the robot is adjusted to fall within the support area of the robot, the angle between the target mechanical leg group and the non-target mechanical leg group is adjusted to be non-zero, and the non-target mechanical leg group is maintained in a foot support state, the mechanical foot of the target mechanical leg group is adjusted to be off the ground, thereby providing stability for the target mechanical leg group to switch to a wheel support state, thereby enabling the robot to stably realize the transition from the ready state to the wheel support state, which is beneficial to improving the stability of the robot in executing state switching tasks.
[0177] In a feasible example, for a robot in a foot-supported state, when only part of the mechanical feet are in contact with the support surface, the technical solution provided in the above embodiment can be used according to the distribution of the part of the mechanical feet to enable the robot to switch from the ready state to the wheel-supported state. In the case where the robot has only one mechanical foot, a solution can be used to first adjust the robot to a stable state through a non-target mechanical leg group, and then adjust the mechanical foot of the target mechanical leg group, so as to ensure the stability of the robot when performing state switching tasks.
[0178] In one example, after the robot is transformed from a foot-supported state to a wheel-supported state and stands on a support surface, the length of the mechanical legs can be adjusted by telescopic joints on the mechanical legs, and the angle between the inner mechanical legs and the outer mechanical legs can be adjusted by hip joints on the mechanical legs to lower the height of the robot's center of mass, so that the robot is transformed from a wheel-supported state to a wheeled motion state and stands on the support surface, wherein in the wheeled motion state, the robot performs tasks only by standing on the support surface with its mechanical wheels.
[0179] The wheeled motion state may refer to a state for performing wheeled motion. Fig.10 , by adjusting the length of the first mechanical leg group 303 through the telescopic joint corresponding to the first mechanical leg group 303, adjusting the length of the second mechanical leg group 304 through the telescopic joint corresponding to the second mechanical leg group 304, and adjusting the angle between the first mechanical leg group 303 and the second mechanical leg group 304 through the hip joint corresponding to the first mechanical leg group 303 and the hip joint corresponding to the second mechanical leg group 304, so as to reduce the height of the center of mass of the quadrupedal wheel-foot hybrid robot 300, so that the quadrupedal wheel-foot hybrid robot 300 is transformed from the wheel support state to the wheeled motion state and stands on the support surface. In the wheeled motion state, the quadrupedal wheel-foot hybrid robot 300 is more suitable for performing wheeled tasks such as gliding, gait walking, and carrying objects.
[0180] The embodiment of the present application can make the robot more suitable for wheeled movement by lowering the height of the center of mass of the robot.
[0181] In some embodiments, reference Fig.11 , taking the quadruped-wheel hybrid robot 1100 as an example, the technical solution provided by the embodiment of the present application is explained, and the embodiment of the present application may also include the following contents.
[0182] Phase 1: Control the robot to transition from the quadruped support state to the first state.
[0183] The first mechanical leg group 1101 (outer mechanical leg): keep the contact point between the first mechanical leg group 1101 and the support surface unchanged; adjust the telescopic amount of the telescopic joint corresponding to the first mechanical leg group 1101 to 5 cm to reduce the length of the outer mechanical leg; rotate the ankle joint of the first mechanical leg group 1101 counterclockwise, and adjust the joint angle of the ankle joint of the first mechanical leg group 1101 to the first joint angle, so that the mechanical foot of the first mechanical leg group 1101 is adjusted to be away from the support surface (the projection point of the center of mass of the quadrupedal foot-wheel hybrid robot 1100 on the support surface along the vertical direction automatically falls within the projection area of the mechanical foot of the second mechanical leg group 1102 on the support surface).
[0184] Second mechanical leg group 1102 (inner mechanical leg): keep the contact point between the second mechanical leg group 1102 and the support surface unchanged; adjust the telescopic amount of the telescopic joint corresponding to the second mechanical leg group 1102 to 5 cm to reduce the length of the inner mechanical leg.
[0185] The fuselage 1103: remains vertical; under the influence of each telescopic joint, the height of the fuselage 1103 is reduced (that is, the height of the center of mass of the quadrupedal wheeled hybrid robot 1100 is reduced).
[0186] The second stage: controlling the robot to transition from the first state to the second state.
[0187] First mechanical leg group 1101 (outer mechanical leg): rotate the first mechanical leg group 1101 counterclockwise so that the contact point between the first mechanical leg group 1101 and the support surface moves to a position 60 cm in front of the contact point between the second mechanical leg group 1102 and the support surface; adjust the length of the first mechanical leg group 1101 accordingly.
[0188] Second mechanical leg group 1102 (inner mechanical leg): keep the contact point between the mechanical wheel corresponding to the second mechanical leg group 1102 and the supporting surface unchanged; rotate the second mechanical leg group 1102 clockwise so that the angle between the second mechanical leg group 1102 and the first mechanical leg group 1101 is adjusted to between zero and a preset angle threshold; adjust the length of the second mechanical leg group 1102 adaptively.
[0189] The fuselage 1103: remains vertical; under the action of each hip joint and each telescopic joint, the fuselage 1103 (such as the center of the waist) moves to a position 30 cm in front of the contact point between the second mechanical leg group 1102 and the support surface, so that the center of mass of the quadrupedal wheeled hybrid robot 1100 falls at the center of the support area of the quadrupedal wheeled hybrid robot 1100; under the action of each hip joint and each telescopic joint, the height of the fuselage 1103 remains unchanged.
[0190] The third stage: controlling the robot to transform from the second state to the four-wheel support state.
[0191] The first robotic leg group 1101 (outer robotic legs): remain motionless.
[0192] Second mechanical leg group 1102 (inner mechanical leg): only rotate the ankle joint of the second mechanical leg group 1102 counterclockwise to adjust the joint angle of the ankle joint of the second mechanical leg group 1102 to the first joint angle, so that the mechanical foot of the second mechanical leg group 1102 is adjusted to leave the support surface.
[0193] Body 1103: Remain still.
[0194] To summarize, the technical solution provided in the embodiments of the present application is for a robot having an inner mechanical leg and an outer mechanical leg connected to a body through a hip joint. Since the hip joint corresponding to the inner mechanical leg is located between the hip joints corresponding to the two outer mechanical legs, and there is at least one mechanical leg with a pair of coaxial mechanical wheels and mechanical feet provided at the foot away from the hip joint, when the robot stands on a support surface with the assistance of mechanical wheels by mechanical feet, the inner mechanical leg and the outer mechanical leg can be coordinated to move the mechanical foot coaxial with the mechanical wheel to leave the support surface, so that the robot can stand on the support surface only by the mechanical wheels to enter a wheel support state. This enables the wheel-legged robot with mechanical feet to have the function of switching from a foot support state to a wheel support state, so that the robot can perform different tasks by switching states, thereby improving the flexibility of the robot.
[0195] In some embodiments, after determining the various states involved in controlling the robot to transition from a foot-support state to a wheel-support state (i.e., the above-mentioned state switching task) (such as the above-mentioned preparation state, the first state, and the second state), the reference movement trajectories of various parts of the robot can be planned according to the various states to obtain a reference movement trajectory set of the robot, and then the transition from the foot-support state to the wheel-support state is controlled based on the reference movement trajectory set of the robot.
[0196] Exemplarily, the reference movement trajectory set of the robot includes at least one of the following: a reference movement trajectory of the body, a reference movement trajectory of the mechanical foot, a reference movement trajectory of the mechanical wheel, and a reference movement trajectory of the body posture. The reference movement trajectory of the mechanical foot may include the reference movement trajectory of the mechanical foot in the first mechanical leg group, and the reference movement trajectory of the mechanical foot in the second mechanical leg group. The reference movement trajectory of the mechanical wheel may include the reference movement trajectory of the mechanical wheel in the first mechanical leg group, and the reference movement trajectory of the mechanical wheel in the second mechanical leg group.
[0197] The reference movement trajectory includes reference positions at multiple control moments required to control the robot to switch from a foot-supported state to a wheel-supported state. The reference position refers to the planned position. The control moment refers to the moment when the robot is controlled by a control signal. The control moments are arranged at specified time intervals. The specified time intervals can be set and adjusted according to actual use requirements. For example, if the specified time interval is 0.002s, a control signal is sent to the robot every 0.002s to control the movement of the robot. The embodiment of the present application does not limit the number of the above-mentioned multiple control moments, which can be set and adjusted according to actual use requirements.
[0198] In the embodiment of the present application, one or more reference movement trajectories can be selected according to the task requirements to control the robot to switch from the foot support state to the wheel support state. For example, the robot can be controlled to switch from the foot support state to the wheel support state based on the reference movement trajectory of the body, the reference movement trajectory of the mechanical foot, the reference movement trajectory of the mechanical wheel, and the reference change trajectory of the body's posture.
[0199] The following will describe the process of obtaining each reference movement trajectory.
[0200] Reference moving trajectory of the mechanical wheel:
[0201] The reference movement trajectory of the mechanical wheel is used to guide the movement of the entire mechanical leg group (including the mechanical wheel, the mechanical leg and the mechanical foot). For example, the reference movement trajectory of the mechanical wheel includes the reference position of the mechanical wheel at each control moment to guide the mechanical leg group to move according to the reference movement trajectory of the mechanical wheel.
[0202] The reference movement trajectory of the mechanical wheel is obtained by planning the movement trajectory of the mechanical wheel according to the support surface. Optionally, the reference movement trajectory in the embodiment of the present application can be obtained by using a spline curve interpolation method. Exemplarily, the position of the mechanical wheel in each of the above states can be interpolated by using a spline curve interpolation method to obtain the reference movement trajectory of the mechanical wheel. The position of the mechanical wheel in each state can be obtained based on the size of the support surface, the size of the robot, and the position planning required for the task.
[0203] Optionally, each mechanical wheel corresponds to a reference movement track. In the case where the mechanical legs in the same mechanical leg group move synchronously, each mechanical leg group may correspond to a reference movement track of a mechanical wheel.
[0204] For example, refer to Fig.11 , taking the quadruped and wheel hybrid robot 1100 as an example, for each mechanical wheel of the quadruped and wheel hybrid robot 1100, for the first stage, the spline curve interpolation method can be used to interpolate the position of the mechanical wheel in the quadruped support state with the position of the mechanical wheel in the first state, so as to obtain the reference movement trajectory of the mechanical wheel in the first stage. For the second stage, the spline curve interpolation method can be used to interpolate the position of the mechanical wheel in the first state with the position of the mechanical wheel in the second state, so as to obtain the reference movement trajectory of the mechanical wheel in the second stage. For the third stage, the spline curve interpolation method can be used to interpolate the position of the mechanical wheel in the second state with the position of the mechanical wheel in the four-wheel support state, so as to obtain the reference movement trajectory of the mechanical wheel in the third stage. Then, the reference movement trajectory of the mechanical wheel in the first stage to the reference movement trajectory of the mechanical wheel in the third stage are sequentially combined to obtain the reference movement trajectory of the mechanical wheel.
[0205] Optionally, the position of the mechanical wheel may be characterized by the position of the center point of the mechanical wheel, or by the position of the contact point between the mechanical wheel and the support surface, which is not limited in the embodiments of the present application.
[0206] For example, the movement of the first mechanical leg group 1101 can be controlled by the reference movement trajectory of the mechanical wheels in the first mechanical leg group 1101. For example, the reference movement trajectory of the mechanical wheels in the first mechanical leg group 1101 can be used to guide the contact point between the first mechanical leg group 1101 and the support surface to first remain stationary, then move to the right, and then remain stationary again.
[0207] The second mechanical leg group 1102 can be controlled to move by the reference movement trajectory of the mechanical wheels in the second mechanical leg group 1102. For example, the reference movement trajectory of the mechanical wheels in the second mechanical leg group 1102 can be used to guide the contact point between the second mechanical leg group 1102 and the support surface to always remain stationary.
[0208] Reference movement trajectory of the robot foot:
[0209] The reference movement trajectory of the mechanical foot is used to guide the movement of the mechanical foot. For example, the reference movement trajectory of the mechanical foot includes the reference position of the mechanical foot at each control moment to guide the mechanical foot to move according to the reference movement trajectory of the mechanical foot. Optionally, each mechanical foot corresponds to a reference movement trajectory; or, each mechanical leg group corresponds to a reference movement trajectory of a mechanical foot, which is not limited in the embodiments of the present application.
[0210] The reference movement trajectory of the mechanical foot can be obtained by planning the movement trajectory of the mechanical foot according to the support surface. For example, the position of the mechanical foot in each of the above states can be interpolated by using a spline curve interpolation method to obtain the reference movement trajectory of the mechanical foot. The position of the mechanical foot can be represented by the position of the center point of the mechanical foot, or by the position of the toe of the mechanical foot, which is not limited in the embodiments of the present application.
[0211] For example, refer to Fig.11, taking the quadruped and wheeled hybrid robot 1100 as an example, for each mechanical foot of the quadruped and wheeled hybrid robot 1100, for the first stage, the spline curve interpolation method can be used to interpolate the position of the mechanical foot in the quadruped support state with the position of the mechanical foot in the first state, so as to obtain the reference movement trajectory of the mechanical foot in the first stage. For the second stage, the spline curve interpolation method can be used to interpolate the position of the mechanical foot in the first state with the position of the mechanical foot in the second state, so as to obtain the reference movement trajectory of the mechanical foot in the second stage. For the third stage, the spline curve interpolation method can be used to interpolate the position of the mechanical foot in the second state with the position of the mechanical foot in the four-wheel support state, so as to obtain the reference movement trajectory of the mechanical foot in the third stage. Then, the reference movement trajectory of the mechanical foot in the first stage to the reference movement trajectory of the mechanical foot in the third stage are sequentially combined to obtain the reference movement trajectory of the mechanical foot.
[0212] For example, the mechanical foot corresponding to the first mechanical leg group 1101 can be controlled to move by the reference movement trajectory of the mechanical foot in the first mechanical leg group 1101. For example, the reference movement trajectory of the mechanical foot in the first mechanical leg group 1101 can be used to guide the mechanical foot in the first mechanical leg group 1101 to rotate counterclockwise first and then remain stationary.
[0213] The mechanical foot corresponding to the second mechanical leg group 1102 can be controlled to move by the reference movement trajectory of the mechanical foot in the second mechanical leg group 1102. For example, the reference movement trajectory of the mechanical foot in the second mechanical leg group 1102 can be used to guide the mechanical foot in the second mechanical leg group 1102 to first remain stationary and then rotate counterclockwise.
[0214] Reference movement trajectory of the fuselage:
[0215] The reference movement trajectory of the fuselage is used to guide the movement of the fuselage. For example, the reference movement trajectory of the fuselage includes the reference position of the fuselage at each control moment to guide the fuselage to move according to the reference movement trajectory of the fuselage. In the embodiment of the present application, the position of the fuselage can be represented by the position of the waist, such as the center point of the waist to represent the position of the fuselage. In the embodiment of the present application, the position of the waist can refer to the position of the center of mass of the robot.
[0216] The reference movement trajectory of the fuselage is obtained by planning the movement trajectory of the support surface to the fuselage. For example, the position of the fuselage in each of the above states can be interpolated using a spline curve interpolation method to obtain the reference movement trajectory of the fuselage.
[0217] For example, refer to Fig.11, taking the quadruped and wheel hybrid robot 1100 as an example, for the first stage, the spline curve interpolation method can be used to interpolate the position of the fuselage in the four-legged support state with the position of the fuselage in the first state, so as to obtain the reference movement trajectory of the fuselage in the first stage. For the second stage, the spline curve interpolation method can be used to interpolate the position of the fuselage in the first state with the position of the fuselage in the second state, so as to obtain the reference movement trajectory of the fuselage in the second stage. For the third stage, the spline curve interpolation method can be used to interpolate the position of the fuselage in the second state with the position of the fuselage in the four-wheel support state, so as to obtain the reference movement trajectory of the fuselage in the third stage. Then, the reference movement trajectory of the fuselage in the first stage to the reference movement trajectory of the fuselage in the third stage are sequentially combined to obtain the reference movement trajectory of the fuselage.
[0218] For example, the movement of the fuselage 1103 can be controlled by the reference movement trajectory of the fuselage 1103. For example, the reference movement trajectory of the fuselage 1103 can be used to guide the fuselage 1103 to move downward first and then keep the height unchanged.
[0219] In one example, the reference movement trajectory of the fuselage is used to control the center of mass of the robot to be located within the support area of the robot, which refers to the area enclosed by the contact points between the robot and the support surface. For example, the reference movement trajectory of the fuselage 1103 can be used to control the center of mass of the quadrupedal-foot-wheel hybrid robot 1100 to fall within the support area of the quadrupedal-foot-wheel hybrid robot 1100, so that the quadrupedal-foot-wheel hybrid robot 1100 can stably switch from a quadruped support state to a four-wheel support state.
[0220] Reference change trajectory of the fuselage's attitude:
[0221] The reference change trajectory of the posture of the body refers to the reference change trajectory of the posture of the waist of the robot, which can be used to describe the posture change of the waist of the robot. The reference change trajectory of the posture includes the reference posture of the waist at each control moment. Optionally, the posture of the body can be represented by the posture of the waist.
[0222] The posture of the waist can be expressed by Euler angles, such as the Euler angles composed of roll, pitch and yaw of the waist. The above-mentioned posture reference change trajectory can refer to the Euler angle reference movement trajectory corresponding to the waist of the robot, and the Euler angle reference movement trajectory includes the reference Euler angles (i.e., reference posture) at each control moment.
[0223] Optionally, when the reference posture is represented by the Euler angles of the waist, the Euler angles of the waist are always zero, that is, during the process of the robot switching from the foot support state to the wheel support state, the waist always remains vertical (that is, the body always remains vertical), which is beneficial to reducing the control complexity of the robot.
[0224] For example, refer to Fig.11 Taking the quadruped and wheeled hybrid robot 1100 as an example, the posture reference change trajectory of the waist of the quadruped and wheeled hybrid robot 1100 can be determined as the posture reference change trajectory of the fuselage 1103, and the posture reference change trajectory of the fuselage 1103 can be used to guide the fuselage 1103 to always remain vertical.
[0225] In some embodiments, after obtaining the reference movement trajectory set of the robot, the robot's dynamics can be used to control the robot to switch from the foot support state to the wheel support state and stand on the support surface. For example, according to the reference movement trajectory of each part of the robot, the expected acceleration of each part of the robot is determined, and each joint of the robot is controlled based on the expected acceleration, so that the robot switches from the foot support state to the wheel support state and stands on the support surface. The embodiment of the present application may also include the following contents:
[0226] 1. For any control moment corresponding to the robot, based on the reference movement trajectory set of the robot, obtain the first expected task of the robot at the control moment, wherein the first expected task includes the expected acceleration of each part of the robot in the operation space of the robot, and the first expected task is used to control the robot to switch from the foot support state to the wheel support state and stand on the support surface.
[0227] In the embodiment of the present application, the expected task refers to the task that the robot is expected to perform in the operating space, such as the task set for each part of the robot according to the above-mentioned state switching task. The expected task can be a task for the position, speed and acceleration of each part of the robot. Exemplarily, the above-mentioned first expected task can refer to the task set for the acceleration of each part of the robot. The first expected task can be obtained according to the robot and the real environment where the robot is located. For example, according to the size of the support surface, the size of each part of the robot and the structure of the robot, the acceleration expected for each part of the robot is planned, and the first expected task corresponding to the scene can be obtained. Among them, for each part, the acceleration expected is the expected acceleration of the part, and the expected acceleration of a part can be used to indicate the acceleration expected to be achieved by the part. The expected acceleration refers to the acceleration used to actually control the robot, not the reference value.
[0228] Optionally, the first expected task corresponds to the complete process of the robot switching from the foot support state to the wheel support state, that is, including the above-mentioned multiple stages (such as multiple state transition processes). If the complete process corresponds to multiple control moments, the first expected task may include the expected acceleration of each part of the robot under the multiple controls. Exemplarily, the first expected task of the robot at the control moment can be obtained based on the reference movement trajectory set under the constraints of the robot's dynamics.
[0229] The robot can control the movement of various parts of the robot through the various expected accelerations in the above-mentioned first expected task, so that the robot can switch from a foot-support state to a wheel-support state. For example, the robot can control the robot's mechanical leg group (such as including mechanical legs, mechanical feet, mechanical wheels) and body (such as including waist, torso, head, and mechanical arms) through the expected accelerations in the above-mentioned first expected task, so that the robot can switch from a foot-support state to a wheel-support state.
[0230] The robot can control the robot to move along the reference movement trajectory of each part through the expected acceleration of each part to switch from the foot support state to the wheel support state. Exemplarily, the first expected task may include at least one of the following: the expected foot acceleration of the mechanical foot, the expected wheel acceleration of the mechanical wheel, the expected leg acceleration of the mechanical leg, the expected body acceleration of the fuselage, and the expected angular acceleration of the fuselage.
[0231] For example, the desired acceleration of the foot can be used to control the rotation of the mechanical foot, the desired acceleration of the wheel can be used to control the rolling of the mechanical wheel and control the extension and retraction of the mechanical leg, the desired acceleration of the leg can be used to control the rotation of the mechanical leg, the desired acceleration of the fuselage can be used to control the movement of the fuselage, and the desired angular acceleration of the fuselage can be used to control the rotation of the fuselage.
[0232] In the embodiment of the present application, one or more expected accelerations may be selected according to the task requirements to control the robot to switch from the foot support state to the wheel support state. For example, the robot may be controlled to switch from the foot support state to the wheel support state based on the foot expected acceleration, the wheel expected acceleration, the body expected acceleration, and the body expected angular acceleration.
[0233] The operating space of the robot may refer to the Cartesian space corresponding to the robot. In the task-oriented whole body control of the robot, the Cartesian space corresponding to the robot may be referred to as the operating space of the robot. In the embodiment of the present application, each position in the operating space of the robot may be characterized based on the world coordinate system of the robot.
[0234] Exemplarily, the robot's world coordinate system can be constructed with the contact point between the robot's foot (such as a mechanical wheel) and the support surface in the initial state (such as the above-mentioned foot support state) as the origin, the horizontal direction as the x-axis direction, the vertical direction as the z-axis direction, and the direction perpendicular to both the horizontal and vertical directions as the y-axis direction. The position of the robot in the operating space can be characterized based on the three-dimensional coordinates of the robot in the world coordinate system. Optionally, the calculation processes in the embodiments of the present application all occur in the robot's world coordinate system.
[0235] Optionally, the expected acceleration included in the first expected task can be calculated by a feedback controller based on the reference movement trajectory of each part of the robot and the actual state of the robot, such as a PD (Proportion-Differentiation) feedback controller, and other feedback controllers.
[0236] In one example, the first expected task includes an expected acceleration of the fuselage, and the process of acquiring the expected acceleration of the fuselage may include the following contents:
[0237] (1) According to the reference movement trajectory of the fuselage, the reference position, reference velocity and reference acceleration of the fuselage at the control time are obtained.
[0238] According to the control moment, the corresponding reference position can be determined from the reference movement trajectory of the fuselage, and then the reference speed and reference acceleration can be obtained based on the reference position, such as determining the first-order derivative of the reference position with respect to time as the reference speed, and determining the second-order derivative of the reference position with respect to time as the reference acceleration. Among them, the reference acceleration is different from the expected acceleration. It is a planning value and is not directly used to control the robot.
[0239] Optionally, the reference velocity and reference acceleration of the fuselage may both be set to zero.
[0240] (2) A PD feedback controller is used to calculate the expected acceleration of the fuselage at the control time according to the reference position, reference velocity and reference acceleration of the fuselage at the control time, as well as the actual position and actual velocity of the fuselage at the control time.
[0241] Optionally, based on the IMU on the fuselage, the acceleration, angular velocity and posture (i.e., actual Euler angle) of the fuselage can be measured, and then combined with the actual angles and actual accelerations of all joints of the robot, as well as the contact points between the robot and the support surface, the actual position, actual velocity, actual posture and actual angular velocity of the fuselage in the world coordinate system can be obtained by using the state estimation algorithm. If the relative position, relative velocity and relative angular velocity between the hip joint center point and the IMU of the hip joint are known, the state of the hip joint center point can be calculated according to the state of the fuselage (i.e., the actual position, actual velocity, actual posture and actual angular velocity of the fuselage in the world coordinate system).
[0242] In an embodiment of the present application, the center point of the hip joint is the origin of the floating base coordinate system of the robot. According to the state of the center point of the hip joint, the state of the floating base coordinate system can be obtained. Combined with the actual angles and actual angular velocities of all joints of the robot, the forward kinematics model of the full model of the robot can be used to calculate the actual position, actual speed, actual posture and actual angular velocity of all the connecting rods corresponding to the robot in the world coordinate system. All the connecting rods include the waist, and the actual position and actual speed of the waist in the operating space can be obtained. Among them, the actual position refers to the actual position of the fuselage, which is the true value, and the actual speed refers to the actual speed of the fuselage, which is the true value. The variant of the forward kinematics model can be used to indicate the relationship between the acceleration of the robot in the operating space and the speed and acceleration of the robot in the joint space of the robot.
[0243] For example, the expected acceleration of the fuselage can be expressed as follows:
[0244]
[0245] in, is the expected acceleration of the fuselage at the control time t, and are the reference acceleration, reference velocity and reference position of the fuselage in the operating space at the control time t, and are the actual position and actual speed of the fuselage in the operating space at the control time t, k p,base and k d,base They correspond to the proportional coefficient and differential coefficient for the body position respectively. By calculating the desired body acceleration through the PD feedback controller, the robustness of the robot controller can be improved.
[0246] In one example, the first expected task includes an expected angular acceleration of the fuselage, and the process of acquiring the expected angular acceleration of the fuselage may include the following contents:
[0247] (1) According to the reference change trajectory of the fuselage's attitude, obtain the reference attitude, reference attitude velocity, and reference attitude acceleration of the fuselage at the control moment.
[0248] According to the control moment, the corresponding reference attitude can be determined from the reference change trajectory of the fuselage attitude, and then the reference attitude velocity and reference attitude acceleration can be obtained based on the reference attitude, such as determining the first-order derivative of the reference attitude with respect to time as the reference attitude velocity, and determining the second-order derivative of the reference attitude with respect to time as the reference attitude acceleration.
[0249] Exemplarily, when the fuselage is always kept vertical, if the reference attitude is represented by the Euler angle of the waist, the Euler angle of the waist is always zero, that is, the reference attitude, the reference attitude velocity and the reference attitude acceleration are all always zero.
[0250] For example, the reference attitude, reference attitude velocity, and reference attitude acceleration of the fuselage at the control moment can be expressed as follows:
[0251] and
[0252] (2) A PD feedback controller is used to calculate the expected angular acceleration of the fuselage at the control time according to the reference attitude acceleration, reference attitude velocity and reference attitude of the fuselage at the control time, as well as the actual attitude and actual attitude velocity of the fuselage at the control time.
[0253] Optionally, based on the IMU information on the waist, the actual posture (ie, actual Euler angle) and actual posture velocity (ie, actual Euler angle velocity) of the fuselage can be calculated.
[0254] For example, the desired angular acceleration of the fuselage can be expressed as follows:
[0255]
[0256] in, is the desired angular acceleration of the fuselage at the control time t, and are the reference attitude, reference attitude velocity and reference attitude acceleration of the fuselage in the operating space at the control time t, and are the actual posture and actual posture velocity of the fuselage in the operating space at the control time t, k p,euler and k d,euler They correspond to the proportional coefficient and differential coefficient for the fuselage attitude respectively.
[0257] In one example, the first expected task may also include the expected wheel acceleration of each mechanical wheel. For each mechanical wheel, the process of obtaining the expected wheel acceleration may include the following contents:
[0258] (1) According to the reference moving trajectory of the mechanical wheel, the reference position, reference velocity and reference acceleration of the mechanical wheel at the control time are obtained.
[0259] According to the control moment, the corresponding reference position can be determined from the reference movement trajectory of the mechanical wheel, and then the reference speed and reference acceleration can be obtained based on the reference position, such as determining the first-order derivative of the reference position with respect to time as the reference speed, and determining the second-order derivative of the reference position with respect to time as the reference acceleration.
[0260] Optionally, the reference speed and reference acceleration of the mechanical wheel at each control moment may both be set to zero.
[0261] Optionally, the embodiment of the present application expects that there is pure rolling motion between the mechanical wheel and the support surface without relative sliding motion. Therefore, the expected acceleration of the mechanical wheel with respect to the support surface is always zero, which is recorded as Among them, N C It represents the number of contact forces corresponding to the robot, that is, the product of the number of contact points and the dimension of a single contact force. The contact point refers to the point where the robot contacts the support surface. For example, there may be one contact point between the mechanical wheel and the support surface.
[0262] (2) A PD feedback controller is used to calculate the expected acceleration of the mechanical wheel at the control time according to the reference position, reference speed and reference acceleration of the mechanical wheel at the control time, as well as the actual position and actual speed of the mechanical wheel at the control time.
[0263] Optionally, based on the IMU on the robot, the actual joint angles and actual joint angular accelerations of all joints of the robot can be measured, and then combined with the contact points between the robot and the supporting surface, the state estimation algorithm (or forward kinematics) can be used to obtain the actual position and actual speed of the mechanical wheel in the world coordinate system.
[0264] For example, the wheel expected acceleration can be expressed as follows:
[0265]
[0266] in, is the expected wheel acceleration at control time t, and are the reference acceleration, reference velocity and reference position of the mechanical wheel in the operating space at the control time t, and are the actual position and actual speed of the mechanical wheel in the operating space at the control time t, k p,wheel and k d,wheel They correspond to the proportional coefficient and differential coefficient for the mechanical wheel position respectively.
[0267] In one example, the first expected task may also include an expected acceleration of each mechanical foot. Then, for each mechanical foot, the process of obtaining the expected acceleration of the foot may include the following contents:
[0268] (1) According to the reference movement trajectory of the robotic foot, the reference position, reference velocity, and reference acceleration of the robotic foot at the control moment are obtained.
[0269] According to the control moment, the corresponding reference position can be determined from the reference movement trajectory of the mechanical foot, and then the reference speed and reference acceleration can be obtained based on the reference position, such as determining the first-order derivative of the reference position with respect to time as the reference speed, and determining the second-order derivative of the reference position with respect to time as the reference acceleration.
[0270] Optionally, the reference speed and reference acceleration of the mechanical foot at each control moment may both be set to zero.
[0271] (2) A PD feedback controller is used to calculate the expected acceleration of the mechanical foot at the control moment according to the reference position, reference velocity and reference acceleration of the mechanical foot at the control moment, as well as the actual position and actual velocity of the mechanical foot at the control moment.
[0272] Optionally, based on the IMU on the fuselage, the joint acceleration, joint angular velocity and actual posture (i.e., actual Euler angle) of the fuselage can be measured, and then combined with the actual joint angles, actual joint angular accelerations of all joints of the robot, and the contact points between the robot and the supporting surface, the state estimation algorithm can be used to obtain the actual position and actual posture of the fuselage and the mechanical leg in the world coordinate system, and then based on information such as the rotation angle and joint angular velocity of the ankle joint, the actual position and actual speed of the mechanical foot at the control moment can be determined, among which the actual position and actual speed of the toe of the mechanical foot at the control moment can be determined as the actual position and actual speed of the mechanical foot at the control moment.
[0273] For example, the expected acceleration can be expressed as follows:
[0274]
[0275] in, is the expected acceleration at the control time t, and are the reference acceleration, reference velocity and reference position of the robot foot in the operating space at the control time t, and are the actual position and actual speed of the robot foot in the operating space at the control time t, k p,foot and k d,foot They correspond to the proportional coefficient and differential coefficient for the position of the mechanical foot respectively.
[0276] Exemplarily, the first desired task of the robot at control time t can be expressed as follows:
[0277]
[0278] in, including the desired wheel acceleration of each mechanical wheel of the robot, including the desired wheel acceleration of each mechanical wheel of the robot, Includes the desired acceleration of each mechanical wheel of the robot relative to the support surface.
[0279] 2. Obtain a first expected torque set corresponding to the first expected task, where the first expected torque set includes first expected torques for controlling each joint of the robot.
[0280] Optionally, each expected acceleration in the first expected task can be converted into a corresponding expected torque, so as to control the movement of each joint through the expected torque, so as to control the robot to switch from a foot support state to a wheel support state and stand on the support surface. For example, the first expected torque set includes at least one of the following: the first expected torque corresponding to the hip joint, ankle joint, wheel joint, telescopic joint, pitch joint and sway joint, respectively, and the first expected torque can be used to control the joint to rotate or telescope.
[0281] In one example, the first desired task can be used for task-oriented whole body control of the robot, that is, considering the mass, inertia and other dynamic information of all the links of the robot, mobilizing all degrees of freedom of the robot, and controlling the robot to complete one or more set tasks.
[0282] For example, based on the rigid body dynamics of the robot, the whole body dynamics model of the robot in the joint space system can be expressed as follows:
[0283]
[0284] in, represents the robot's joint space inertia matrix, represents the joint space offset force vector of the robot, which is the sum of the Coriolis force, centrifugal force and gravity corresponding to the robot. represents the robot's selection matrix, represents the Jacobian matrix of the contact points between the robot and the support surface, represents the torque vector of the robot's joints, represents the contact force vector of the robot, Represents the generalized position vector, generalized velocity vector and generalized acceleration vector at each degree of freedom of the robot, N G Represents the total degree of freedom of the robot, that is, the floating basis degree of freedom N F and joint degrees of freedom N J sum, N C Indicates the number of contact forces corresponding to the robot, that is, the number of contact points n C With the dimension N of a single contact force D ∈{0, 1, 2, 3}.
[0285] by Figure 3 Taking the quadrupedal-foot-wheel hybrid robot in as an example, the connecting rod of the quadrupedal-foot-wheel hybrid robot 300 may include 4 mechanical legs, 4 mechanical wheels, 4 mechanical feet, and a fuselage (waist, trunk, upper limbs and head as a whole). Among them, the joints of the quadrupedal-foot-wheel hybrid robot 300 may include 2 hip joints (two inner mechanical legs share one hip joint, and two outer mechanical legs share one hip tube joint), the telescopic joints corresponding to the 4 mechanical legs, the wheel joints of the 4 mechanical wheels, the ankle joints of the 4 mechanical feet, and 1 pitch joint and 1 lateral swing joint corresponding to the fuselage. Optionally, the robot's joint degrees of freedom are the degrees of freedom corresponding to the above 16 joints.
[0286] The floating base degrees of freedom refer to the six degrees of freedom of the robot's floating base coordinate system in the world coordinate system, namely, position px-py-pz and posture yaw-roll-pitch. The floating base coordinate system is constructed with the rotation center of the hip joint as the origin, and the coordinate axis direction of the floating base coordinate system in the initial state is the same as that of the world coordinate system. The number of contact points can refer to the number of contact points between the mechanical legs (including mechanical wheels and mechanical feet) and the support surface. For example, when the robot stands on the support surface through two sets of mechanical legs, the number of contact points is at least 4 (each mechanical leg corresponds to at least 2 contact points).
[0287] The above-mentioned whole-body kinematics model may refer to a variation of the forward kinematics model of the robot, and the variation of the forward kinematics model is used to indicate the relationship between the acceleration of the robot in the operation space and the velocity and acceleration of the robot in the joint space of the robot.
[0288] Alternatively, from rigid body dynamics, a variant of the forward kinematics model can be expressed as follows:
[0289]
[0290] in, represents the acceleration of the robot in the operating space at the control time t, and They represent the velocity and acceleration of the robot in the joint space, that is, the generalized position vector and generalized velocity vector at each degree of freedom of the robot, J t and Represents the Jacobian matrix and the first-order derivative of the Jacobian matrix corresponding to the state switching task t (i.e., task space).
[0291] Exemplarily, the process of obtaining the first desired torque set of the robot at each control moment may include the following contents:
[0292] (1) Based on the whole-body dynamics model and the whole-body kinematics model, a dynamics equation to be solved is constructed, and the dynamics equation to be solved takes the acceleration of the robot in the joint space as an unknown variable.
[0293] For example, the whole body dynamics model and the whole body kinematics model are combined, and the dynamics equation to be solved after simplification can be expressed as follows:
[0294]
[0295] in, is an unknown variable, and the rest are known variables.
[0296] The above is the construction process of the dynamic equation to be solved, which is a preset step and only needs to be constructed once before the calculation process of the first expected torque set. The first expected torque set at each subsequent control moment can be obtained by applying the dynamic equation to be solved.
[0297] (2) Substitute the first expected task into the dynamic equation to be solved and calculate the first expected torque set.
[0298] Optionally, the robot is also subject to the physical limitations of the robot's body structure and the drive motor during movement. In order to improve the rationality and accuracy of the first desired torque set, the present application also sets constraints in the process of solving the first desired torque set. Exemplarily, the process of solving the dynamic equation to be solved can be as follows:
[0299] The acceleration of the robot in the operation space in the dynamic equation to be solved is replaced by the first desired task to obtain an intermediate dynamic equation.
[0300] Optionally, the above The acceleration of the robot in the operation space in the dynamic equation to be solved By substituting, we can obtain the intermediate kinetic equation.
[0301] The joint physical constraint expression and friction constraint expression of the robot are constructed. The joint physical constraint expression is used to constrain each joint of the robot. The contact force between the robot and the supporting surface under the constraint of the friction constraint expression satisfies the friction cone constraint.
[0302] Optionally, according to the actual physical characteristics of the robot's drive motor, the joint torque τ in the unknown variable is limited, that is, the joint physical constraint expression can be: τ lb ≤τ≤τ ub ; where τ lb and τ ub Respectively represent the minimum and maximum values of the joint motor torque.
[0303] Optionally, the contact force between the foot of the robot leg and the supporting surface should satisfy the friction cone constraint. In order to reduce nonlinearity, the friction cone can be approximated as a friction angle cone, and the friction constraint expression can be:
[0304]
[0305] Among them, n x 、n y and n z They represent the unit orthogonal basis along the contact surface in the world coordinate system, μ i represents the friction coefficient corresponding to the i-th contact force, f i represents the ith contact force, f z,lb and f z,ub Respectively represent the minimum and maximum values of the non-negative positive pressure perpendicular to the contact surface. Among them, each foot corresponds to a contact force, which can refer to the superimposed force of the mechanical wheel and the mechanical foot (such as the mechanical foot assisting the mechanical wheel to stand), or the contact force corresponding to the mechanical wheel alone (such as wheeled motion), which is not limited in the embodiments of the present application.
[0306] Under the constraints of the robot's joint physical constraint expressions and friction constraint expressions, a first desired torque set is calculated based on the intermediate dynamics equations.
[0307] Alternatively, the intermediate kinetic equation can be rewritten in the form of AX = B;
[0308] in,
[0309] The essence of the solution process of AX=B is to find the solution of the linear equations. Here, the quadratic programming optimization method can be used to construct the objective function of the intermediate dynamics equation.
[0310] Alternatively, the objective function of the intermediate kinetic equation can be expressed as follows:
[0311] J = min(AX-B) T Q(AX-B)+X T RX;
[0312] Among them, Q and R represent weight matrices.
[0313] Under the constraints of the robot's joint physical constraint expression and friction constraint expression, the first desired torque set is obtained by minimizing the objective function as the optimization goal. For example, through the quadratic programming optimizer, under the constraints of the robot's joint physical constraint expression and friction constraint expression, the unknown variable X can be obtained by minimizing the objective function as the optimization goal, and the joint torque τ in the unknown variable X can be directly determined as the first desired torque set, which is recorded as
[0314] by Figure 3 Taking the quadrupedal foot-wheel hybrid robot 300 as an example, the first desired torque set may include two hip joints (each hip joint corresponds to a mechanical leg group), four extension joints of the mechanical legs, four wheel joints of the mechanical wheels, four ankle joints of the mechanical feet, and the first desired torques corresponding to one pitch joint and one roll joint, respectively.
[0315] Alternatively, if the robot model structure is relatively simple, the robot's whole-body dynamics model and whole-body kinematics model are also relatively simple, and the intermediate dynamics equation can be solved directly by using the matrix pseudo-inverse method, that is, X = A -1 B, to obtain the first desired moment set.
[0316] 3. According to the first desired torque set, the mechanical foot is moved away from the support surface, so that the robot is transformed from the foot support state to the wheel support state and stands on the support surface.
[0317] For any control moment, the first expected torque set includes the first expected torque of each joint of the robot, and the first expected torque is used to control the joint to rotate. At any control moment, only the joint motors corresponding to each joint need to be driven according to the first expected torque of each joint at the control moment, so as to achieve the following of the first expected task, that is, to move the mechanical foot away from the support surface, so that the robot is transformed from the foot support state to the wheel support state and stands on the support surface.
[0318] To summarize, the technical solution provided in the embodiments of the present application, by adopting the robot's whole-body dynamic model and whole-body kinematic model, can accurately obtain the first expected moment set corresponding to the reference movement trajectory set according to the robot's reference movement trajectory set, and then can accurately control the robot to switch from a foot-supported state to a wheel-supported state and stand on a support surface according to the first expected moment set, thereby improving the control accuracy of the robot.
[0319] In addition, under the constraints of the robot's joint physical constraint expressions and friction constraint expressions, the intermediate dynamic equations are solved to obtain a reasonable and accurate first desired moment set, which can further improve the robot's control accuracy.
[0320] In some embodiments, after obtaining the reference movement trajectory set of the robot, the robot's kinematics can also be used to control the robot to perform tasks. For example, according to the reference movement trajectory of each part of the robot, the expected joint angles of each part of the robot are determined, so as to control each joint of the robot based on the expected joint angle so that the robot performs the task. The embodiments of the present application may also include the following contents:
[0321] 1. For any control moment corresponding to the robot, based on the reference movement trajectory set of the robot, obtain the second expected task of the robot at the control moment, wherein the second expected task includes the reference positions of various parts of the robot in the operation space of the robot, and the second expected task is used to control the robot to switch from a foot-supported state to a wheel-supported state and stand on the support surface.
[0322] The above-mentioned second expected task may refer to a task set for the position of each part of the robot. The second expected task can be planned according to the robot and the real environment where the robot is located. For example, according to the size of the support surface, the size of each part of the robot and the structure of the robot, the expected position of each part of the robot is planned, and the second expected task corresponding to the scene can be obtained. Among them, for each part, the planned position is the reference position of the part. The reference position of a part can be used to indicate the planned position of the part, and the reference position is the planning value.
[0323] Optionally, the second desired task also corresponds to the complete process of the robot switching from the foot support state to the wheel support state, that is, including the above-mentioned multiple stages (such as multiple state transition processes). If the complete process corresponds to multiple control moments, the second desired task may include the reference positions of various parts of the robot under the multiple controls.
[0324] The robot can control the movement of various parts of the robot through the various reference positions in the above-mentioned second expected task, so that the robot can switch from a foot-support state to a wheel-support state and stand on a support surface. For example, the robot can control the robot's mechanical leg group (such as including mechanical legs, mechanical feet, mechanical wheels) and body (such as including waist, torso, head, and mechanical arms) through the reference positions in the above-mentioned second expected task, so that the robot can switch from a foot-support state to a wheel-support state and stand on a support surface.
[0325] The robot can be controlled to move along the reference movement trajectory of each part through the reference position of each part. Exemplarily, the second desired task may include at least one of the following: the reference position of the mechanical foot, the reference position of the mechanical wheel, the reference position of the mechanical leg, the reference position of the fuselage, and the reference posture of the fuselage.
[0326] For example, the reference position of the mechanical foot can be used to guide the mechanical foot to rotate, the reference position of the mechanical wheel can be used to guide the mechanical wheel to roll and guide the mechanical leg to extend and retract, the reference position of the mechanical leg can be used to guide the mechanical leg to rotate, the reference position of the fuselage can be used to guide the movement of the fuselage, and the reference posture of the fuselage can be used to guide the rotation of the fuselage.
[0327] The embodiment of the present application can select the reference position of one or more parts to control the robot to move according to the task requirements. For example, the robot can control the robot to switch from the foot support state to the wheel support state and stand on the support surface based on the reference position of each mechanical foot, the reference position of each mechanical wheel, and the reference position and reference posture of the body.
[0328] In one example, the second desired task may include a reference position of the fuselage, a reference attitude of the fuselage, a reference position of the mechanical wheels, and a reference position of the mechanical feet.
[0329] Reference position of the fuselage: The reference position of the fuselage at the control time can be determined from the reference movement trajectory of the fuselage according to the control time, which is recorded as
[0330] Reference posture of the fuselage: The reference posture of the fuselage at the control time can be determined from the reference change trajectory of the fuselage posture according to the control time, which is recorded as Optionally, during the movement of the robot, the body is always kept vertical, and if the reference posture is represented by the Euler angle of the waist, the Euler angle of the waist is always zero.
[0331] Reference position of mechanical wheel: For each mechanical wheel, the reference position of the mechanical wheel at the control time can be determined from the reference movement trajectory of the mechanical wheel according to the control time, which is recorded as
[0332] Reference position of the mechanical foot: For each mechanical foot, the reference position of the mechanical foot at the control time can be determined from the reference movement trajectory of the mechanical foot according to the control time, which is recorded as
[0333] Exemplarily, the second desired task of the robot at control time t can be expressed as follows:
[0334]
[0335] in, Including the reference positions of the robot's various mechanical wheels, Includes the reference positions of each mechanical foot of the robot.
[0336] 2. Obtain an expected joint angle set corresponding to the second expected task, where the expected joint angle set includes expected joint angles for controlling each joint of the robot.
[0337] In an embodiment of the present application, the expected joint angle set corresponding to the second expected task includes at least one of the following: the expected joint angles corresponding to the hip joint, ankle joint, wheel joint, telescopic joint, pitch joint and roll joint, respectively.
[0338] The expected joint angle refers to the angle to which the joint is expected to rotate. The expected joint angles corresponding to the hip joint, wheel joint and telescopic joint are related to the reference position of the mechanical wheel, the expected joint angles corresponding to the ankle joint are related to the reference position of the mechanical foot, and the expected joint angles corresponding to the pitch joint and roll joint are related to the reference position of the fuselage.
[0339] In one example, the whole body kinematics model of the robot may be used to calculate the desired joint angle set corresponding to the second desired task. Exemplarily, the embodiments of the present application may also include the following contents.
[0340] (1) Based on the whole-body kinematic model of the robot, a first kinematic model and a second kinematic model are obtained. The first kinematic model is used to indicate the relationship between the positions of various parts of the robot in the operation space and the angles of various joints of the robot in the joint space of the robot. The second kinematic model is used to indicate the relationship between the speeds of various parts of the robot in the operation space and the angular velocities of various joints of the robot in the joint space.
[0341] The whole-body kinematic model of a robot is a mathematical expression that describes the robot's motion state and position relationship. The robot's motion state can be represented by the angles of its joints. The whole-body kinematic model includes a forward kinematic model and a kinematic model. The forward kinematic model determines the robot's position by the robot's joint angles. The embodiment of the present application determines the first kinematic model and the second kinematic model based on the forward kinematic model.
[0342] Exemplarily, the forward kinematics model can be directly determined as the first kinematics model, denoted as x=f(q), where x is the position of each part of the robot in the operating space, and q is the angle of each joint of the robot in the joint space of the robot.
[0343] The variant of the forward kinematics model can be determined as the second kinematics model, denoted as in, is the speed of each part of the robot in the operating space, The angular velocity of each joint of the robot in the robot's joint space.
[0344] (2) Based on the first kinematic model and the second kinematic model, a kinematic equation to be solved is constructed, wherein the kinematic equation to be solved uses the joint angles of each joint of the robot in the joint space as unknown variables.
[0345] Exemplarily, the first kinematic model and the second kinematic model are combined, and the kinematic equation to be solved after simplification can be expressed as follows:
[0346]
[0347] Among them, q cmd is the expected joint angle set corresponding to each joint, J t is the Jacobian Matrix corresponding to the second desired task t, q act is the actual joint angle set corresponding to each joint, which can be obtained from the joint motor encoder feedback corresponding to the joint, x des is the second desired task t (i.e., the reference position of the parts corresponding to each joint), x act is the actual position of the parts corresponding to each joint.
[0348] The second line of the kinematic equation to be solved gives (the first-order derivative of the reference position of each joint corresponding to the part with respect to time (i.e., the reference velocity)), and (ie, the first-order derivative of the expected joint angle set with respect to time). It should be noted that the positions in the embodiments of the present application are all characterized based on the world coordinate system.
[0349] Among them, q act 、x des 、x act and is a known variable. By solving the kinematic equation to be solved, the unknown variable q can be obtained. cmd . For example, the q cmd It may include the expected joint angles corresponding to each hip joint, each ankle joint, each wheel joint, each telescopic joint, pitch joint and roll joint of the robot at the control moment.
[0350] (3) The second expected task of the robot at the control time is substituted into the kinematic equation to be solved, and the expected joint angle set of the robot at the control time is calculated.
[0351] Optionally, the movement of the joint is also subject to the physical limitations of the joint motor corresponding to the joint. In order to improve the rationality and accuracy of obtaining the desired joint angle set, the embodiment of the present application also sets constraints in the process of solving the desired joint angle set. Exemplarily, the calculation process of the kinematic equation to be solved can be as follows:
[0352] The positions of the various parts of the robot in the operation space in the kinematic equation to be solved are replaced by the second desired task of the robot at the control time to obtain the intermediate kinematic equation. des Replace with the second desired task The intermediate kinematic equation can be obtained.
[0353] Construct the joint physical constraint expression of the robot, which is used to constrain each joint of the robot. Optionally, according to the actual physical characteristics of the joint motor of the robot, the expected joint angle set q in the unknown variable is cmd The line limit, that is, the physical constraint expression of the joint can be: 1B ≤q cmd ≤q ub ; Among them, q lB and q ub Respectively represent the minimum and maximum values of the joint angles of the joint motors.
[0354] Under the constraints of the joint physical constraint expression, based on the intermediate kinematics equation, the desired joint angle set corresponding to the robot at the control moment is calculated. Optionally, a quadratic programming optimization method is used to construct the objective function of the intermediate kinematics equation; under the constraints of the joint physical constraint expression, the desired joint angle set corresponding to the robot at the control moment is calculated with minimization of the objective function as the optimization goal.
[0355] Exemplarily, the objective function of the intermediate kinematic equation is constructed by a linear quadratic programming regulator (LQR, LinearQuadraticRegulator), and under the constraints of the joint physical constraint expression, the desired joint angle set corresponding to the robot at the control moment is calculated with the minimization of the objective function as the optimization goal. The linear quadratic programming regulator is constructed based on the quadratic programming optimization method (Quadratic Programming), and its essence is: under linear constraints, find a multidimensional vector that minimizes (or maximizes) the quadratic objective function of the multidimensional vector.
[0356] For example, first rewrite the intermediate kinematic equation into the form of AX = B;
[0357] in,
[0358] The essence of the solution process of AX=B is to find the solution of the linear equations. A and B are known variables, and X is an unknown variable. Here, a linear quadratic programming regulator can be used to construct the objective function of the intermediate kinematic equation.
[0359] Alternatively, the objective function of the intermediate kinematic equation can be expressed as follows:
[0360] Z=(AX-B) T W1(AX-B)+X T W2X;
[0361] Among them, W1 and W2 represent weight matrices.
[0362] Through the linear quadratic programming optimizer, under the constraints of the robot's joint physical constraint expression, the unknown variable X can be obtained by minimizing the objective function as the optimization goal. cmd Determined as the desired set of joint angles.
[0363] Alternatively, if the robot model structure is relatively simple, the robot's whole-body dynamics model (such as a forward kinematics model) is also relatively simple, and the intermediate kinematics equation can be solved directly by using the matrix inversion method, that is, X = A -1 B, to obtain the desired joint angle set.
[0364] The first term in the above objective function represents the kinematic relationship, and the second term is to make the expected joint angle smaller to save energy. The linear quadratic programming optimizer is used to calculate the expected joint angle, which can ensure that the robot's movement conforms to the kinematic relationship while making the expected joint angle of the joint relatively small, thereby saving energy.
[0365] 3. According to the desired joint angle set, the mechanical foot is moved away from the support surface, so that the robot switches from the foot support state to the wheel support state and stands on the support surface.
[0366] Optionally, each desired joint angle in the desired joint angle set can be converted into a corresponding desired torque, so as to control the movement of each joint through the desired torque, so that the robot can be transformed from a foot-supported state to a wheel-supported state and stand on the support surface.
[0367] (1) A PD feedback controller is used to calculate a second expected torque set corresponding to the expected joint angle set according to the expected joint angle set, the actual joint angle set corresponding to each joint, and the actual joint angular velocity set corresponding to each joint. The second expected torque set includes the second expected torque for controlling each joint of the robot.
[0368] Exemplarily, the second desired moment set may be expressed as follows:
[0369]
[0370] in, is the desired joint angle set, is the actual joint angle set, is the actual joint angular velocity set, k p,q and They correspond to the proportional coefficient of position feedback and the differential coefficient of speed feedback respectively.
[0371] k p,q and The tracking accuracy of the expected joint angle can be ensured, thereby improving the robot's motion stability and accuracy. Following the expected joint angle can effectively avoid the problem of poor force control transparency caused by following the expected acceleration, that is, when a small torque is given, the joint does not move, and when the torque is greater than a certain value, the joint moves violently under the drive of a larger force.
[0372] (2) According to the second desired torque set, the mechanical foot is moved away from the support surface, so that the robot switches from the foot support state to the wheel support state and stands on the support surface.
[0373] The second desired torque set includes the second desired torque of each joint of the robot at the control moment, and the second desired torque is used to control the rotation of the joint. At any control moment, only the joint motors corresponding to each joint need to be driven according to the second desired torque of each joint at the control moment, so as to achieve the following of the second desired task, that is, to move the mechanical foot away from the support surface, so that the robot is transformed from the foot support state to the wheel support state and stands on the support surface.
[0374] To summarize, the technical solution provided in the embodiments of the present application, by adopting the robot's whole-body kinematic model, can accurately obtain the expected joint angle set corresponding to performing the second expected task based on the robot's reference movement trajectory set, and then can accurately control the robot to switch from a foot-supported state to a wheel-supported state and stand on a support surface based on the expected joint angle set, thereby improving the control accuracy of the robot.
[0375] In addition, under the constraints of the robot's joint physical constraint expressions, solving the intermediate kinematic equations can obtain a reasonable and accurate set of expected joint angles, which can further improve the robot's control accuracy.
[0376] In some embodiments, after obtaining the first expected torque set corresponding to the first expected task and the second expected torque set corresponding to the second expected task, the embodiment of the present application may also adopt a force-position hybrid method to control the movement of the robot based on the first expected torque set and the second expected torque set. Then the embodiment of the present application may also include the following contents:
[0377] 1. Obtain a reference movement trajectory set of the robot, where the reference movement trajectory set includes at least one of the following: a reference movement trajectory of the body, a reference movement trajectory of the mechanical feet, a reference movement trajectory of the mechanical wheels, and a reference movement trajectory of the body.
[0378] 2. For any control moment corresponding to the robot, under the dynamic constraints of the robot, based on the reference movement trajectory set, a first expected torque set of the robot at the control moment is obtained, and the first expected torque set includes the first expected torque for controlling each joint of the robot.
[0379] 3. Under the kinematic constraints of the robot, based on the reference movement trajectory set, a second expected torque set of the robot at the controlled moment is obtained, and the second expected torque set includes the second expected torque for controlling each joint of the robot.
[0380] Optionally, the method for obtaining the reference movement trajectory set, the first expected torque set and the second expected torque set is the same as that described in the above embodiment. The contents not described in the embodiments of the present application can refer to the above embodiment and will not be repeated here.
[0381] 4. Based on the first desired torque set and the second desired torque set, a mixed desired torque set is obtained by weighted summation. The mixed desired torque set is used to control the robot to switch from a wheel support state to a foot support state and stand on the support surface.
[0382] Optionally, the embodiment of the present application applies a first desired torque set and a second desired torque set together on the robot to control the robot to transition from a foot-supported state to a wheel-supported state and stand on a support surface, such as determining a mixed desired torque set for ultimately controlling the robot in a complementary manner.
[0383] Exemplarily, the mixed desired moment set can be expressed as follows:
[0384]
[0385] Among them, α is the first desired moment set The weight coefficient of (1-α) is the second desired moment set For example, α can be taken as 80%, that is, The weight coefficient is 80%, The weighting factor is 20%.
[0386] After obtaining the mixed desired torque set, the mechanical foot can be moved away from the support surface according to the mixed desired torque set, so that the robot is transformed from a foot support state to a wheel support state and stands on the support surface.
[0387] The mixed expected torque set includes the mixed expected torque of each joint of the robot, and the mixed expected torque is used to control the rotation of the joint. At any control moment, only the joint motors corresponding to each joint need to be driven according to the mixed expected torque of each joint at the control moment, so as to realize the common following of the first expected task and the second expected task, that is, the robot can move under the guidance of the first expected task and the second expected task, such as following each expected acceleration corresponding to the first expected task, and following each reference position corresponding to the second expected task, so as to realize the control of the robot.
[0388] In summary, the technical solution provided by the embodiment of the present application, by making the first expected task (i.e. expected acceleration) and the second expected task (i.e. reference position) act on the robot together, under the joint action of the expected acceleration and the reference position, not only can the joints of the robot have better dynamic performance, but also can take into account the tracking accuracy of the joint angles of the joints, thereby effectively improving the control stability and control accuracy of the robot. In addition, controlling the robot based on the mixed expected torque set can not only make the robot maintain the posture of the body, but also make the robot's movements soft, so that it can smoothly complete the switch from the foot support state to the wheel support state.
[0389] In some embodiments, reference Fig.11 , taking the quadruped-wheel hybrid robot 1100 as an example, the technical solution provided in the embodiment of the present application is explained.
[0390] In an embodiment of the present application, the above-mentioned first desired torque set or the second desired torque set or the mixed desired torque set can be used to control the movement of the quadrupedal foot-wheel hybrid robot 1100 in each stage, so that the quadrupedal foot-wheel hybrid robot 1100 switches from a wheel support state to a foot support state and stands on the support surface.
[0391] Phase 1: Control the robot to transition from the quadruped support state to the first state.
[0392] First mechanical leg group 1101 (outer mechanical legs):
[0393] By using the desired torque (such as the first desired torque or the second desired torque or the mixed desired torque) of the wheel joint of the first mechanical leg group 1101, the mechanical wheels of the first mechanical leg group 1101 are controlled not to roll, so as to keep the contact point between the first mechanical leg group 1101 and the support surface unchanged;
[0394] The telescopic joints of the first mechanical leg group 1101 are controlled to be telescopic by the desired torque of the telescopic joints of the first mechanical leg group 1101, so as to adjust the telescopic amount of the telescopic joints corresponding to the first mechanical leg group 1101 to 5 cm;
[0395] Through the desired torque of the ankle joint of the first mechanical leg group 1101, the ankle joint of the first mechanical leg group 1101 is controlled to rotate counterclockwise, and the joint angle of the ankle joint of the first mechanical leg group 1101 is adjusted to the first joint angle, so that the mechanical foot of the first mechanical leg group 1101 is adjusted to leave the support surface.
[0396] Second mechanical leg group 1102 (inner mechanical legs):
[0397] By means of the desired torque of the wheel joint of the second mechanical leg group 1102, the mechanical wheels of the second mechanical leg group 1102 are controlled not to roll, so as to keep the contact point between the second mechanical leg group 1102 and the support surface unchanged;
[0398] The desired torque of the telescopic joint of the second robotic leg group 1102 is used to control the telescopic joint of the second robotic leg group 1102 to adjust the telescopic amount of the corresponding telescopic joint of the second robotic leg group 1102 to 5 cm.
[0399] Body 1103: Through the desired torques corresponding to the pitch joint and the roll joint of the body 1103 respectively, the pitch joint and the roll joint of the body 1103 are controlled not to rotate so that the body 1103 remains vertical; under the influence of each telescopic joint, the height of the fuselage 1103 is reduced (that is, the height of the center of mass of the quadrupedal foot-wheel hybrid robot 1100 is reduced).
[0400] The second stage: controlling the robot to transition from the first state to the second state.
[0401] First mechanical leg group 1101 (outer mechanical legs):
[0402] The hip joint of the first mechanical leg group 1101 is controlled to rotate counterclockwise through the desired torque of the hip joint of the first mechanical leg group 1101, so that the contact point between the first mechanical leg group 1101 and the support surface moves to a position 60 cm in front of the contact point between the second mechanical leg group 1102 and the support surface;
[0403] The desired torque of the telescopic joint of the first mechanical leg group 1101 is used to control the telescopic joint of the first mechanical leg group 1101 to adjust the length of the first mechanical leg group 1101 .
[0404] Second mechanical leg group 1102 (inner mechanical legs):
[0405] By means of the desired torque of the wheel joint of the second mechanical leg group 1102, the mechanical wheels of the second mechanical leg group 1102 are controlled not to roll, so as to keep the contact point between the mechanical wheels corresponding to the second mechanical leg group 1102 and the support surface unchanged;
[0406] By means of the desired torque of the hip joint of the second mechanical leg group 1102, the hip joint of the second mechanical leg group 1102 is controlled to rotate clockwise, so that the angle between the second mechanical leg group 1102 and the first mechanical leg group 1101 is adjusted to between zero and a preset angle threshold;
[0407] The desired torque of the telescopic joint of the second mechanical leg group 1102 is used to control the telescopic joint of the second mechanical leg group 1102 to adjust the length of the second mechanical leg group 1102 .
[0408] Body 1103: Through the desired torques corresponding to the pitch joints and roll joints of the body 1103 respectively, the pitch joints and roll joints of the body 1103 are controlled not to rotate, so that the body 1103 remains vertical; under the action of each hip joint and each telescopic joint, the body 1103 (such as the center of the waist) is moved to a position 30 cm in front of the contact point between the second mechanical leg group 1102 and the supporting surface, so that the center of mass of the quadrupedal wheeled hybrid robot 1100 falls at the center of the supporting area of the quadrupedal wheeled hybrid robot 1100; under the action of each hip joint and each telescopic joint, the height of the body 1103 remains unchanged.
[0409] The third stage: controlling the robot to transform from the second state to the four-wheel support state.
[0410] The first mechanical leg group 1101 (outer mechanical leg): the first mechanical leg group 1101 is controlled to remain stationary through the desired torques corresponding to the hip joint, telescopic joint, ankle joint and wheel joint of the first mechanical leg group 1101 respectively.
[0411] The second mechanical leg group 1102 (inner mechanical leg): only through the desired torque corresponding to the ankle joint of the second mechanical leg group 1102, the ankle joint of the second mechanical leg group 1102 is rotated counterclockwise to adjust the joint angle of the ankle joint of the second mechanical leg group 1102 to the first joint angle, so that the mechanical foot of the second mechanical leg group 1102 is adjusted to leave the support surface.
[0412] Fuselage 1103: Fuselage 1103 is controlled to remain stationary through the desired torques corresponding to the hip joints, the desired torques corresponding to the telescopic joints, the desired torques corresponding to the wheel joints, the desired torques of the pitch joints and the desired torques of the roll joints.
[0413] To summarize, the technical solution provided in the embodiments of the present application is for a robot having an inner mechanical leg and an outer mechanical leg connected to a body through a hip joint. Since the hip joint corresponding to the inner mechanical leg is located between the hip joints corresponding to the two outer mechanical legs, and there is at least one mechanical leg with a pair of coaxial mechanical wheels and mechanical feet provided at the foot away from the hip joint, when the robot stands on a support surface with the assistance of mechanical wheels by mechanical feet, the inner mechanical leg and the outer mechanical leg can be coordinated to move the mechanical foot coaxial with the mechanical wheel to leave the support surface, so that the robot can stand on the support surface only by the mechanical wheels to enter a wheel support state. This enables the wheel-legged robot with mechanical feet to have the function of switching from a foot support state to a wheel support state, so that the robot can perform different tasks by switching states, thereby improving the flexibility of the robot.
[0414] The following is an embodiment of the device of the present application, which can be used to execute the embodiment of the method of the present application. For details not disclosed in the embodiment of the device of the present application, please refer to the embodiment of the method of the present application.
[0415] refer to Fig.12 , which shows a block diagram of a robot control device provided by an embodiment of the present application. The device has the function of implementing the above-mentioned robot control method, and the function can be implemented by hardware, or by hardware executing corresponding software. The device can be the computer device introduced above (such as a foot-wheel hybrid robot), or it can be placed in a computer device. Fig.12 As shown, the device 1200 includes: a robot standing module 1201 and a state transition module 1202.
[0416] The robot standing module 1201 is used to stand on a supporting surface in a wheel-supported state, wherein in the wheel-supported state, the robot stands only by the mechanical wheels.
[0417] The state transition module 1202 is used to move the mechanical foot to contact the support surface, so that the robot is transformed from the wheel support state to the foot support state and stands on the support surface, wherein in the foot support state, the robot stands with the assistance of the mechanical foot on the mechanical wheels.
[0418] In some embodiments, the at least one inner mechanical leg forms a second mechanical leg group; Fig.13 As shown, the state conversion module 1202 includes: a preparation state conversion submodule 1202a and a wheel support state conversion submodule 1202b.
[0419] The preparation state conversion submodule 1202a is used to convert the robot from the foot support state to the preparation state standing on the support surface by adjusting at least one of the joint angle of the hip joint and the extension amount of the extension joint of the robot, wherein the hip joint is used to control the rotation of the mechanical legs of the robot, and the extension joint is used to adjust the length of the mechanical legs of the robot. In the preparation state, the robot satisfies at least one of the following: the angle between the first mechanical leg group and the second mechanical leg group is zero, the extension amount of the extension joint is greater than the lower limit value of the extension amount and less than the preset extension amount threshold, and the body is vertical.
[0420] The wheel support state conversion submodule 1202b is used to move the mechanical foot away from the support surface by adjusting the joint angle of the ankle joint of the robot, so that the robot is converted from the ready state to the wheel support state and stands on the support surface, wherein the ankle joint is used to control the rotation of the mechanical foot.
[0421] In some embodiments, when the mechanical foot is provided on at least one of the inner mechanical legs and at least one of the outer mechanical legs, one of the first mechanical leg group and the second mechanical leg group is a main mechanical leg group and the other mechanical leg group is an auxiliary mechanical leg group; the wheel support state conversion submodule 1202b is further used to:
[0422] Controlling the robot to transform from the ready state to a first state to stand on the support surface, wherein in the first state, the projection point of the center of mass of the robot on the support surface along the vertical direction falls within the projection area of the mechanical foot corresponding to the auxiliary mechanical leg group on the support surface, and the joint angle of the ankle joint of the main mechanical leg group is rotated to a first joint angle, and the first joint angle is used to prevent the mechanical foot from contacting the support surface during the movement of the robot;
[0423] Controlling the robot to switch from the first state to a second state to stand on the support surface, wherein in the second state, the angle between the main mechanical leg group and the auxiliary mechanical leg group is greater than zero and less than a preset angle threshold, and the projection point of the center of mass of the robot on the support surface along the vertical direction falls within the support area of the robot, and the support area refers to the area enclosed by the contact points between the robot and the support surface;
[0424] Control the robot to transform from the second state to the wheel support state and stand on the support surface, wherein, in the wheel support state, the mechanical feet corresponding to the auxiliary mechanical leg group are rotated to be separated from the support surface, so that the mechanical wheels corresponding to the auxiliary mechanical leg group and the mechanical wheels corresponding to the main mechanical leg group form support for the robot.
[0425] In some embodiments, the wheel support state conversion submodule 1202b is further used to rotate the ankle joint of the main mechanical leg group only in a direction close to the fuselage to control the robot to convert from the ready state to the first state standing on the support surface.
[0426] In some embodiments, the wheel support state conversion submodule 1202b is also used to rotate the hip joint of the main mechanical leg group in the forward direction of the robot and rotate the hip joint of the auxiliary mechanical leg group in the opposite direction of the forward direction while keeping the contact point between the mechanical wheel corresponding to the auxiliary mechanical leg group and the support surface unchanged, so as to control the robot to convert from the first state to the second state standing on the support surface.
[0427] In some embodiments, the wheel support state conversion submodule 1202b is further used to rotate the ankle joint of the auxiliary mechanical leg group only in a direction close to the fuselage to control the robot to convert from the second state to the wheel support state to stand on the support surface.
[0428] In some embodiments, when only one of the first mechanical leg group and the second mechanical leg group is provided with the mechanical foot, the mechanical leg group provided with the mechanical foot is the target mechanical leg group, and the mechanical leg group not provided with the mechanical foot is the non-target mechanical leg group; the wheel support state conversion submodule 1202b is further used to:
[0429] Controlling the robot to switch from the preparation state to a first state to stand on the support surface, wherein in the first state, the angle between the target mechanical leg group and the non-target mechanical leg group is greater than zero and less than a preset angle threshold, and the projection point of the center of mass of the robot on the support surface along the vertical direction falls within the support area of the robot, and the support area refers to the area enclosed by the contact points between the robot and the support surface;
[0430] Control the robot to transform from the first state to the wheel support state and stand on the support surface, wherein, in the wheel support state, the mechanical feet corresponding to the target mechanical leg group are rotated to be separated from the support surface, so that the mechanical wheels corresponding to the target mechanical leg group and the mechanical wheels corresponding to the non-target mechanical leg group form support for the robot.
[0431] In some embodiments, the wheel support state conversion submodule 1202b is also used to rotate the hip joints of the non-target mechanical leg group in the forward direction of the robot and to rotate the hip joints of the target mechanical leg group in the opposite direction of the forward direction while keeping the contact point between the mechanical wheel corresponding to the target mechanical leg group and the support surface unchanged, so as to control the robot to convert from the ready state to the first state standing on the support surface.
[0432] In some embodiments, the wheel support state conversion submodule 1202b is further used to rotate the ankle joint of the target mechanical leg group only in a direction close to the fuselage to control the robot to convert from the first state to the wheel support state and stand on the support surface.
[0433] In some embodiments, Fig.13As shown, the device 1200 further includes: a mass center height adjustment module 1203. The mass center height adjustment module 1203 is used to adjust the length of the mechanical leg through the telescopic joint on the mechanical leg, and adjust the angle between the inner mechanical leg and the outer mechanical leg through the hip joint on the mechanical leg, so as to lower the height of the mass center of the robot, so that the robot is transformed from the wheel support state to the wheel motion state and stands on the support surface, wherein in the wheel motion state, the robot performs tasks by standing on the support surface only by the mechanical wheels.
[0434] In some embodiments, Fig.13 As shown, the device 1200 further includes: a movement trajectory acquisition module 1204 and a desired torque acquisition module 1205 .
[0435] The movement trajectory acquisition module 1204 is used to acquire a reference movement trajectory set of the robot, wherein the reference movement trajectory set includes at least one of the following: a reference movement trajectory of the body, a reference movement trajectory of the mechanical feet, a reference movement trajectory of the mechanical wheels, and a reference posture change trajectory of the body.
[0436] The expected torque acquisition module 1205 is used to obtain, for any control moment corresponding to the robot, a first expected torque set of the robot at the control moment under the dynamic constraints of the robot based on the reference movement trajectory set, wherein the first expected torque set includes a first expected torque for controlling each joint of the robot.
[0437] The expected torque acquisition module 1205 is also used to obtain a second expected torque set of the robot at the control moment based on the reference movement trajectory set under the kinematic constraints of the robot, and the second expected torque set includes a second expected torque for controlling each joint of the robot.
[0438] The desired torque acquisition module 1205 is also used to obtain a mixed desired torque set based on the weighted sum of the first desired torque set and the second desired torque set, and the mixed desired torque set is used to control the robot to switch from the foot support state to the wheel support state and stand on the support surface.
[0439] In some embodiments, the reference movement trajectory of the body is used to control the center of mass of the robot to be located within the support area of the robot, and the support area refers to the area enclosed by the contact points between the robot and the support surface.
[0440] To summarize, the technical solution provided in the embodiments of the present application is for a robot having an inner mechanical leg and an outer mechanical leg connected to a body through a hip joint. Since the hip joint corresponding to the inner mechanical leg is located between the hip joints corresponding to the two outer mechanical legs, and there is at least one mechanical leg with a pair of coaxial mechanical wheels and mechanical feet provided at the foot away from the hip joint, when the robot stands on a support surface with the assistance of mechanical wheels by mechanical feet, the inner mechanical leg and the outer mechanical leg can be coordinated to move the mechanical foot coaxial with the mechanical wheel to leave the support surface, so that the robot can stand on the support surface only by the mechanical wheels to enter a wheel support state. This enables the wheel-legged robot with mechanical feet to have the function of switching from a foot support state to a wheel support state, so that the robot can perform different tasks by switching states, thereby improving the flexibility of the robot.
[0441] It should be noted that the device provided in the above embodiment, when implementing its functions, is only illustrated by the division of the above functional modules. In actual applications, the above functions can be assigned to different functional modules as needed, that is, the internal structure of the device is divided into different functional modules to complete all or part of the functions described above. In addition, the device and method embodiments provided in the above embodiment belong to the same concept, and the specific implementation process is detailed in the method embodiment, which will not be repeated here.
[0442] Please refer to Fig.14 , which shows a simplified structural block diagram of a computer device 1400 provided in one embodiment of the present application. The computer device 1400 can be any electronic device with data calculation, processing and storage functions. The computer device 1400 can be used to implement the robot control method provided in the above embodiment.
[0443] Typically, the computer device 1400 includes a processor 1401 and a memory 1402 .
[0444] Processor 1401 may include one or more processing cores, such as a 4-core processor, an 8-core processor, and the like. Processor 1401 may be implemented in at least one hardware form of DSP (Digital Signal Processing), FPGA (Field Programmable Gate Array), and PLA (Programmable Logic Array). Processor 1401 may also include a main processor and a coprocessor. The main processor is a processor for processing data in an awake state, also known as a CPU (Central Processing Unit); the coprocessor is a low-power processor for processing data in a standby state. In some embodiments, processor 1401 may be integrated with a GPU (Graphics Processing Unit), which is responsible for rendering and drawing the content to be displayed on the display screen. In some embodiments, processor 1401 may also include an AI processor for processing computing operations related to machine learning.
[0445] The memory 1402 may include one or more computer-readable storage media, which may be non-transitory. The memory 1402 may also include a high-speed random access memory, and a non-volatile memory, such as one or more disk storage devices, flash memory storage devices. In some embodiments, the non-transitory computer-readable storage medium in the memory 1402 is used to store a computer program, which is configured to be executed by one or more processors to implement the control method of the robot.
[0446] Those skilled in the art will understand that Fig.14 The structure shown in the figure does not constitute a limitation on the computer device 1400, and the computer device 1400 may include more or less components than shown in the figure, or combine some components, or adopt a different component arrangement.
[0447] In some embodiments, a chip is also provided, in which a computer program is stored, and the computer program is loaded and executed by a processor to implement the above-mentioned robot control method.
[0448] In some embodiments, a computer-readable storage medium is also provided, in which a computer program is stored. When the computer program is executed by a processor of a computer device, the control method of the robot is implemented.
[0449] Optionally, the computer readable storage medium may include: ROM (Read-Only Memory), RAM (Random-Access Memory), SSD (Solid State Drives) or optical disks, etc. Among them, the random access memory may include ReRAM (Resistance Random Access Memory) and DRAM (Dynamic Random Access Memory).
[0450] In some embodiments, a computer program product is further provided, the computer program product comprising a computer program, the computer program being stored in a computer-readable storage medium. A processor of a computer device reads the computer program from the computer-readable storage medium, and the processor executes the computer program, so that the computer device executes the above-mentioned robot control method.
[0451] It should be noted that, before collecting the relevant data of the user and during the process of collecting the relevant data of the user, the embodiment of the present application can display a prompt interface, a pop-up window or output a voice prompt information, and the prompt interface, pop-up window or voice prompt information is used to prompt the user that the relevant data is currently being collected, so that the present application only starts to execute the relevant steps of obtaining the relevant data of the user after obtaining the confirmation operation issued by the user to the prompt interface or pop-up window, otherwise (that is, when the confirmation operation issued by the user to the prompt interface or pop-up window is not obtained), the relevant steps of obtaining the relevant data of the user are terminated, that is, the relevant data of the user is not obtained. In other words, all user data collected by this application are processed strictly in accordance with the requirements of the laws and regulations of relevant countries, and the informed consent or separate consent of the subject of personal information is obtained with the consent and authorization of the user. The subsequent data use and processing behavior is carried out within the scope of authorization of laws and regulations and the subject of personal information, and the collection, use and processing of relevant user data need to comply with the relevant laws, regulations and standards of relevant countries and regions. For example, the actual location, real environment, robot, etc. involved in this application are all obtained with full authorization.
[0452] It should be understood that the "multiple" mentioned in this article refers to two or more. "And / or" describes the association relationship of associated objects, indicating that three relationships may exist. For example, A and / or B can represent: A exists alone, A and B exist at the same time, and B exists alone. The character " / " generally indicates that the objects associated before and after are in an "or" relationship. In addition, the step numbers described in this article only illustrate a possible execution sequence between the steps. In some other embodiments, the above steps may not be executed in the order of the numbers, such as two steps with different numbers are executed at the same time, or two steps with different numbers are executed in the opposite order to the diagram. The embodiments of the present application are not limited to this.
[0453] The above description is only an exemplary embodiment of the present application and is not intended to limit the present application. Any modifications, equivalent substitutions, improvements, etc. made within the spirit and principles of the present application shall be included in the protection scope of the present application.
Claims
1. A robot control method, characterized in that: The robot comprises a body, two outer mechanical legs connected to the body via hip joints, and at least one inner mechanical leg, wherein the hip joint corresponding to the at least one inner mechanical leg is located between the hip joints corresponding to the two outer mechanical legs, the rotation center of the hip joint corresponding to the outer mechanical leg and the rotation center of the hip joint corresponding to the inner mechanical leg are located in the same vertical plane, and at least one of the mechanical legs of the robot is provided with a pair of coaxial mechanical wheels and a mechanical foot at a foot away from the hip joint; the method comprises: Standing on a support surface in a foot-supporting state, wherein in the foot-supporting state, the robot stands by assisting the mechanical wheels with the mechanical feet; The mechanical foot is moved to be away from the support surface, so that the robot is transformed from the foot support state to the wheel support state to stand on the support surface, wherein in the wheel support state, the robot stands only by the mechanical wheels.
2. The method according to claim 1, characterized in that The two outer mechanical legs form a first mechanical leg group, and the at least one inner mechanical leg forms a second mechanical leg group; The step of moving the mechanical foot away from the support surface so that the robot switches from the foot support state to the wheel support state and stands on the support surface comprises: By adjusting at least one of the joint angle of the hip joint and the telescopic amount of the telescopic joint of the robot, the robot is transformed from the foot support state to the ready state to stand on the support surface, wherein the hip joint is used to control the rotation of the robot's mechanical legs, and the telescopic joint is used to adjust the length of the robot's mechanical legs. In the ready state, the robot satisfies at least one of the following: the angle between the first mechanical leg group and the second mechanical leg group is zero, the telescopic amount of the telescopic joint is greater than the lower limit of the telescopic amount and less than the preset telescopic amount threshold, and the body is vertical; By adjusting the joint angle of the ankle joint of the robot, the mechanical foot is moved to be away from the support surface, so that the robot is transformed from the ready state to the wheel support state and stands on the support surface, wherein the ankle joint is used to control the rotation of the mechanical foot.
3. The method according to claim 2, characterized in that In the case where the mechanical foot is provided on at least one of the inner mechanical legs and at least one of the outer mechanical legs, one of the first mechanical leg group and the second mechanical leg group is a main mechanical leg group, and the other mechanical leg group is an auxiliary mechanical leg group; The method of adjusting the joint angle of the ankle joint of the robot to move the mechanical foot away from the support surface so that the robot is transformed from the ready state to the wheel support state and stands on the support surface comprises: Controlling the robot to transform from the ready state to a first state to stand on the support surface, wherein in the first state, the projection point of the center of mass of the robot on the support surface along the vertical direction falls within the projection area of the mechanical foot corresponding to the auxiliary mechanical leg group on the support surface, and the joint angle of the ankle joint of the main mechanical leg group is rotated to a first joint angle, and the first joint angle is used to prevent the mechanical foot from contacting the support surface during the movement of the robot; Controlling the robot to switch from the first state to a second state to stand on the support surface, wherein in the second state, the angle between the main mechanical leg group and the auxiliary mechanical leg group is greater than zero and less than a preset angle threshold, and the projection point of the center of mass of the robot on the support surface along the vertical direction falls within the support area of the robot, and the support area refers to the area enclosed by the contact points between the robot and the support surface; Control the robot to transform from the second state to the wheel support state and stand on the support surface, wherein, in the wheel support state, the mechanical feet corresponding to the auxiliary mechanical leg group are rotated to be separated from the support surface, so that the mechanical wheels corresponding to the auxiliary mechanical leg group and the mechanical wheels corresponding to the main mechanical leg group form support for the robot.
4. The method according to claim 3, characterized in that The controlling the robot to switch from the preparation state to the first state standing on the support surface comprises: The ankle joints of the main mechanical leg group are rotated only in a direction close to the body to control the robot to transform from the ready state to the first state to stand on the support surface.
5. The method according to claim 3 or 4, characterized in that: The controlling the robot to switch from the first state to the second state standing on the support surface comprises: While keeping the contact point between the mechanical wheel corresponding to the auxiliary mechanical leg group and the supporting surface unchanged, the hip joint of the main mechanical leg group is rotated in the forward direction of the robot, and the hip joint of the auxiliary mechanical leg group is rotated in the opposite direction of the forward direction, so as to control the robot to transform from the first state to the second state and stand on the supporting surface.
6. The method according to any one of claims 3 to 5, characterized in that: The controlling the robot to switch from the second state to the wheel-supported state and stand on the support surface comprises: The ankle joints of the auxiliary robot leg group are rotated only in a direction close to the fuselage to control the robot to transform from the second state to the wheel support state to stand on the support surface.
7. The method according to claim 2, characterized in that In the case that only one of the first mechanical leg group and the second mechanical leg group is provided with the mechanical foot, the mechanical leg group provided with the mechanical foot is the target mechanical leg group, and the mechanical leg group not provided with the mechanical foot is the non-target mechanical leg group; The method of adjusting the joint angle of the ankle joint of the robot to move the mechanical foot away from the support surface so that the robot is transformed from the ready state to the wheel support state and stands on the support surface comprises: Controlling the robot to switch from the preparation state to a first state to stand on the support surface, wherein in the first state, the angle between the target mechanical leg group and the non-target mechanical leg group is greater than zero and less than a preset angle threshold, and the projection point of the center of mass of the robot on the support surface along the vertical direction falls within the support area of the robot, and the support area refers to the area enclosed by the contact points between the robot and the support surface; Control the robot to transform from the first state to the wheel support state and stand on the support surface, wherein, in the wheel support state, the mechanical feet corresponding to the target mechanical leg group are rotated to be separated from the support surface, so that the mechanical wheels corresponding to the target mechanical leg group and the mechanical wheels corresponding to the non-target mechanical leg group form support for the robot.
8. The method according to claim 7, characterized in that The controlling the robot to switch from the preparation state to the first state standing on the support surface comprises: While keeping the contact point between the mechanical wheel corresponding to the target mechanical leg group and the supporting surface unchanged, the hip joint of the non-target mechanical leg group is rotated in the forward direction of the robot, and the hip joint of the target mechanical leg group is rotated in the opposite direction of the forward direction, so as to control the robot to transform from the ready state to the first state standing on the supporting surface.
9. The method according to claim 7 or 8, characterized in that: The controlling the robot to switch from the first state to the wheel-supported state and stand on the support surface comprises: The ankle joint of the target robot leg group is rotated only in a direction close to the fuselage to control the robot to transform from the first state to the wheel support state to stand on the support surface.
10. The method according to any one of claims 1 to 9, characterized in that: After the mechanical foot is moved away from the support surface so that the robot is switched from the foot support state to the wheel support state and stands on the support surface, the method further comprises: The length of the mechanical leg is adjusted by the telescopic joint on the mechanical leg, and the angle between the inner mechanical leg and the outer mechanical leg is adjusted by the hip joint on the mechanical leg to lower the height of the center of mass of the robot, so that the robot is transformed from the wheel-supported state to the wheeled motion state and stands on the support surface, wherein, in the wheeled motion state, the robot performs tasks by standing on the support surface only by the mechanical wheels.
11. The method according to any one of claims 1 to 10, characterized in that: The method further comprises: Acquire a reference movement trajectory set of the robot, wherein the reference movement trajectory set includes at least one of the following: a reference movement trajectory of the body, a reference movement trajectory of the mechanical foot, a reference movement trajectory of the mechanical wheel, and a reference posture change trajectory of the body; For any control moment corresponding to the robot, under the constraint of the dynamics of the robot, based on the reference movement trajectory set, a first expected torque set of the robot at the control moment is obtained, wherein the first expected torque set includes a first expected torque for controlling each joint of the robot; Under the kinematic constraints of the robot, based on the reference movement trajectory set, a second desired torque set of the robot at the control moment is obtained, wherein the second desired torque set includes a second desired torque for controlling each joint of the robot; Based on the first desired torque set and the second desired torque set, a mixed desired torque set is obtained by weighted summation, and the mixed desired torque set is used to control the robot to switch from the foot-supported state to the wheel-supported state to stand on the support surface.
12. The method according to claim 11, characterized in that The reference movement trajectory of the body is used to control the center of mass of the robot to be located within the support area of the robot, and the support area refers to the area enclosed by the contact points between the robot and the support surface.
13. A robot control device, characterized in that: The robot comprises a body, two outer mechanical legs connected to the body via hip joints, and at least one inner mechanical leg, wherein the hip joint corresponding to the at least one inner mechanical leg is located between the hip joints corresponding to the two outer mechanical legs, the rotation center of the hip joint corresponding to the outer mechanical leg and the rotation center of the hip joint corresponding to the inner mechanical leg are located in the same vertical plane, and at least one of the mechanical legs of the robot is provided with a pair of coaxial mechanical wheels and a mechanical foot at a foot away from the hip joint; the device comprises: A robot standing module, used for standing on a support surface in a foot-supporting state, wherein in the foot-supporting state, the robot stands by assisting the mechanical wheels with the mechanical feet; A state conversion module is used to move the mechanical foot away from the support surface, so that the robot is converted from the foot support state to the wheel support state and stands on the support surface, wherein in the wheel support state, the robot stands only by the mechanical wheels.
14. A chip product, characterized in that: The chip product stores a computer program, which is loaded and executed by a processor to implement the robot control method according to any one of claims 1 to 12.
15. A computer device, characterized in that: The computer device includes a processor and a memory, wherein a computer program is stored in the memory, and the computer program is loaded and executed by the processor to implement the robot control method according to any one of claims 1 to 12.
16. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores a computer program, and the computer program is loaded and executed by a processor to implement the robot control method according to any one of claims 1 to 12.
17. A computer program product, characterized in that The computer program product comprises a computer program, the computer program is stored in a computer-readable storage medium, and a processor reads and executes the computer program from the computer-readable storage medium to implement the robot control method according to any one of claims 1 to 12.
Citation Information
Patent Citations
Multi-motion-state robot and motion state switching control method thereof
CN115056880A
Multi-legged robot
CN212950902U
Mobile robot
US20080135312A1
Biped Mobile Mechanism
US20090114460A1
Energy Efficient Legged Mobile robot
US20220395974A1
Cited By
Robot control method and apparatus, and robot and storage medium
WO2026158023A1
