A plantar robot control method and device, a terminal device, and a storage medium
By calculating the actual rotation angle and force characteristics of the robot joints, and using the DH matrix and force perturbation function, the problems of high cost and external force interference in legged robot control are solved, and low-cost, precise posture control is achieved.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- HANGZHOU INNOVATION RES INST OF BEIJING UNIV OF AERONAUTICS & ASTRONAUTICS
- Filing Date
- 2023-12-21
- Publication Date
- 2026-08-04
AI Technical Summary
Existing control methods for legged robots suffer from high costs and susceptibility to external interference in reducing control errors, especially the limitations of joint drive devices and the difficulty in effectively addressing errors caused by external force disturbances.
By calculating the actual rotation angle of the joints, the robot's current posture and force characteristics are obtained using accelerometers and pressure sensors. Combined with the DH matrix and force disturbance error function, the rotation angle of the joints under external force interference is calculated, and the joint posture is adjusted to reduce control error.
It enables precise control of robot posture under low-cost conditions, reduces control errors caused by external interference, and improves the accuracy and stability of robot control.
Smart Images

Figure CN117885087B_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of robotics, and more particularly to a foot robot control method, apparatus, terminal device, and storage medium. Background Technology
[0002] Legged robots have broad application prospects in many fields. The control error of legged robots is mainly affected by mechanical errors and external force interference. Mechanical errors stem from manufacturing and the precision limitations of joint actuators (such as servo motors), which may lead to joint angle deviations. External force interference, such as ground friction and collision forces, can also affect the robot's posture and increase control errors. In the existing technology, the main way to reduce control errors is to improve the control precision of the joint drive device. This is achieved by using high-precision digital servo motors and geared motors with high-precision encoders as the drive joints of the robot's legs, using posture sensors located on the robot's base, and performing closed-loop control of the robot's motion based on PID algorithms. However, this optimization method greatly increases the hardware cost of the robot, and under the premise that the robot joints are subjected to force, force disturbance errors that are positively correlated with external forces will still occur. Therefore, how to reduce the control errors generated by the robot during the control process in a low-cost manner is an urgent problem to be solved. Summary of the Invention
[0003] This invention provides a foot robot control method, device, terminal equipment, and storage medium. The method can achieve the purpose of controlling the posture of the robot to be controlled by calculating the actual rotation angle of each joint.
[0004] An embodiment of the present invention provides a control method for a plantar robot, comprising:
[0005] Obtain the current posture, joint connection characteristics, and expected joint rotation angle of the foot robot to be controlled;
[0006] The posture difference is calculated based on the current posture, the connection characteristics of each joint, and the expected rotation angle of the joint;
[0007] Based on the force characteristics of each joint and the function used to characterize the mapping relationship between the joint rotation angle and the external force disturbance, calculate the joint rotation angle of each joint when subjected to external force disturbance.
[0008] Based on the preset mechanical error, the joint rotation angle of each joint when subjected to external force interference, the expected joint rotation angle of each joint, and the posture difference, the actual rotation angle of each joint is calculated.
[0009] The robot's posture is controlled based on the actual rotation angle of each joint.
[0010] Furthermore, obtaining the expected rotation angle of each joint includes:
[0011] Acquire the robot's preset posture data;
[0012] Based on the preset posture data, the expected rotation angle of each joint is calculated.
[0013] Furthermore, the foot robot includes: a first accelerometer located at the torso, a second accelerometer located at each joint, and a third accelerometer located at each foot.
[0014] The process of obtaining the current posture of the plantar robot to be controlled includes:
[0015] Acquire data from the first accelerometer, each of the second accelerometers, and each of the third accelerometers;
[0016] The current posture of the robot to be controlled is calculated based on the acquired acceleration sensor data.
[0017] Furthermore, the joint connection characteristics of the foot robot to be controlled include:
[0018] The length of each joint and component information of the parts that are directly connected to the joint;
[0019] The posture difference is calculated based on the connection characteristics of each joint, the expected rotation angle of the joints, and the current posture of the foot robot to be controlled, including:
[0020] A DH matrix is constructed based on the length of each joint, component information, and the expected rotation angle of the joint.
[0021] The posture difference is calculated based on the constructed DH matrix and the current posture of the plantar robot to be controlled.
[0022] Furthermore, the joint includes: a first joint connected to the sole of the foot via a link, the remaining joints located on the leg of the foot robot, and a plurality of pressure sensors located on each sole;
[0023] The calculation of the force characteristics corresponding to each joint includes:
[0024] When the joint to be calculated is the first joint, the force data collected by the pressure sensors located at each foot sole is obtained, and the first force characteristic of the foot sole is calculated based on the force data, and the first force characteristic is used as the force characteristic of the first joint.
[0025] When the joint to be calculated is not the first joint, the force characteristics of the joint to be calculated are calculated based on the robot's current posture, the force characteristics of the previous joint, the weight of the joint to be calculated, and the joint connection characteristics.
[0026] Further, the step of calculating the first force characteristic of the sole of the foot based on the force data includes:
[0027] Based on the force data, a resultant force vector is generated;
[0028] Acquire the current gravitational acceleration data from the plantar accelerometer and generate a gravitational acceleration vector;
[0029] The resultant force vector is superimposed with the gravitational acceleration vector to obtain the superimposed resultant force vector;
[0030] The superimposed resultant force vector is mapped to the force characteristics of the robot's leg sole.
[0031] This application also provides a foot robot control device, including:
[0032] The data acquisition module is used to acquire the current posture, joint connection characteristics, and expected joint rotation angle of the foot robot to be controlled.
[0033] The attitude difference calculation module is used to calculate the attitude difference based on the current attitude, the connection characteristics of each joint, and the expected rotation angle of the joint.
[0034] The joint disturbance rotation angle calculation module calculates the joint rotation angle of each joint when it is subjected to external force disturbance, based on the force characteristics of each joint and the function used to characterize the mapping relationship between the joint rotation angle and the external force disturbance.
[0035] The actual rotation angle calculation module is used to calculate the actual rotation angle of each joint based on the preset mechanical error, the joint rotation angle of each joint when subjected to external force interference, the expected joint rotation angle of each joint, and the posture difference.
[0036] The attitude control module is used to control the attitude of the robot to be controlled based on the actual rotation angle of each joint.
[0037] This application also provides a terminal device, including:
[0038] One or more processors;
[0039] A memory, coupled to the processor, for storing one or more programs;
[0040] When the one or more programs are executed by the one or more processors, the one or more processors implement the plantar robot control method as described in the above embodiments of the invention.
[0041] This application also provides a computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, implements the plantar robot control method as described in the above embodiments.
[0042] The following benefits can be obtained by implementing the present invention:
[0043] This invention calculates the attitude difference between the preset attitude and the actual attitude of the foot robot based on its current posture, the connection characteristics of each joint, and the expected rotation angle of the joints. Then, based on the force characteristics of each joint and the function used to characterize the mapping relationship between the joint rotation angle and external force interference, it calculates the joint rotation angle of each joint when subjected to external force interference. Based on the mechanical error of the foot robot itself, the calculated joint rotation angle of each joint when subjected to external force interference, the expected joint rotation angle, and the attitude difference, it calculates the actual rotation angle of each joint. Thus, by constructing a method for calculating the joint rotation angle of the foot robot, only the basic data of the foot robot needs to be obtained to calculate the actual rotation angle of each joint. Therefore, the attitude of the foot robot to be controlled can be controlled based on the actual joint rotation angle, thereby achieving the purpose of foot robot attitude control. Attached Figure Description
[0044] To more clearly illustrate the technical solution of this application, the drawings used in the embodiments will be briefly introduced below. Obviously, the drawings described below are only some embodiments of this application. For those skilled in the art, other drawings can be obtained from these drawings without creative effort.
[0045] Figure 1 This is a flowchart illustrating a plantar robot control method provided in a certain embodiment of this application;
[0046] Figure 2 This is a schematic diagram of the structure of a plantar robot provided in one embodiment of this application;
[0047] Figure 3 This is a schematic diagram of the circular foot structure of a foot robot provided in a certain embodiment of this application;
[0048] Figure 4 This is a schematic diagram of the polygonal foot structure of a foot robot provided in a certain embodiment of this application;
[0049] Figure 5This is a schematic diagram of the structure of a plantar robot control device provided in a certain embodiment of this application;
[0050] Figure 6 This is a schematic diagram of the structure of a terminal device provided in a certain embodiment of this application.
[0051] Explanation of reference numerals in the attached figures:
[0052] 2-1 Accelerometer located on the torso 2-2 Joint 2-3 First joint 2-3-1 Link 2-4 Accelerometer located on the sole of the foot 2-5 Pressure sensor located on the sole of the foot 2-6 Sole of the foot 2-7; Detailed Implementation
[0053] To make the objectives, technical solutions, and advantages of this application clearer, the technical solutions of this application will be clearly and completely described below with reference to the accompanying drawings of the embodiments. Obviously, the described embodiments are only some embodiments of this application, not all embodiments. Based on the embodiments of this application, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of this application.
[0054] Unless otherwise defined, all technical and scientific terms used herein have the same meaning as commonly understood by one of ordinary skill in the art to which this application pertains; the terminology used herein is for the purpose of describing particular embodiments only and is not intended to limit the application; the terms “comprising” and “having”, and any variations thereof, in the specification, claims, and foregoing description of the drawings are intended to cover non-exclusive inclusion.
[0055] In the description of the embodiments of this application, technical terms such as "first" and "second" are used only to distinguish different objects and should not be construed as indicating or implying relative importance or implicitly specifying the number, specific order, or primary and secondary relationship of the indicated technical features. In the description of the embodiments of this application, "multiple" means two or more, unless otherwise explicitly defined.
[0056] In this document, the term "embodiment" means that a particular feature, structure, or characteristic described in connection with an embodiment may be included in at least one embodiment of this application. The appearance of this phrase in various places throughout the specification does not necessarily refer to the same embodiment, nor is it a separate or alternative embodiment mutually exclusive with other embodiments. It will be explicitly and implicitly understood by those skilled in the art that the embodiments described herein can be combined with other embodiments.
[0057] In the description of the embodiments in this application, the term "and / or" is merely a description of the relationship between related objects, indicating that three relationships can exist. For example, A and / or B can represent: A existing alone, A and B existing simultaneously, or B existing alone. Additionally, the character " / " in this document generally indicates that the preceding and following related objects have an "or" relationship.
[0058] In the description of the embodiments of this application, the term "multiple" refers to two or more (including two), similarly, "multiple sets" refers to two or more (including two sets), and "multiple pieces" refers to two or more (including two pieces).
[0059] In the description of the embodiments of this application, unless otherwise expressly specified and limited, technical terms such as "installation," "connection," "joining," and "fixing" should be interpreted broadly. For example, they can refer to a fixed connection, a detachable connection, or an integral part; they can refer to a mechanical connection or an electrical connection; they can refer to a direct connection or an indirect connection through an intermediate medium; they can refer to the internal communication of two components or the interaction between two components. For those skilled in the art, the specific meaning of the above terms in the embodiments of this application can be understood according to the specific circumstances.
[0060] S1. Obtain the current posture, joint connection characteristics, and expected joint rotation angle of the foot robot to be controlled;
[0061] In a preferred embodiment, obtaining the expected joint rotation angle of each joint 2-3 includes:
[0062] Acquire the robot's preset posture data;
[0063] Based on the preset posture data, the expected joint rotation angles of each joint 2-3 are calculated.
[0064] Indicatively, when controlling the posture of a foot robot, it is necessary to first obtain the robot's preset posture data. After obtaining the preset posture data, the robot's preset posture data is inversely solved using geometric methods or Jacobian matrices to obtain the expected rotation angle θ of each joint 2-3. i ;
[0065] Specifically, the preset posture is customized by the user, such as: standing posture, walking posture, half-squatting posture, etc.
[0066] In a preferred embodiment, the foot robot includes: a first accelerometer located at the torso 2-1, a second accelerometer located at each joint 2-3, and a third accelerometer located at each foot 2-7.
[0067] The process of obtaining the current posture of the plantar robot to be controlled includes:
[0068] Acquire data from the first accelerometer, each of the second accelerometers, and each of the third accelerometers;
[0069] The current posture of the robot to be controlled is calculated based on the acquired accelerometer data.
[0070] like Figure 2 As shown, schematically, the foot robot includes a torso 2-1, several feet 2-7 and several joints 2-3. In order to obtain the current posture of the robot, a 9-axis accelerometer is placed at the torso 2-1 and at the ends of each movable joint 2-3, and a 9-axis accelerometer is placed at the center of gravity of each foot 2-7.
[0071] Specifically, by acquiring acceleration sensor data at the torso 2-1, the ends of each joint 2-3, and the center of gravity of each foot 2-7, the acceleration value of each corresponding part of the acceleration sensor is calculated based on the acquired data. Based on the acceleration value of each part, the angle change of each joint 2-3 is calculated, and the angle changes of each joint 2-3 are combined to calculate the current posture of the robot to be controlled.
[0072] S2. Calculate the posture difference based on the current posture, the connection characteristics of each joint, and the expected rotation angle of the joint;
[0073] In a preferred embodiment, the joint connection characteristics of the foot robot to be controlled include:
[0074] The length of each joint 2-3 and component information of the parts directly connected to joint 2-3;
[0075] The posture difference is calculated based on the connection characteristics of each joint, the expected rotation angle of the joints, and the current posture of the foot robot to be controlled, including:
[0076] Based on the length of each joint 2-3, component information, and the expected rotation angle of the joint, a DH matrix is constructed;
[0077] The posture difference is calculated based on the constructed DH matrix and the current posture of the plantar robot to be controlled.
[0078] Indicatively, after obtaining the connection characteristics of each joint 2-3 of the robot to be controlled, that is, after obtaining the length of each joint 2-3 of the robot to be controlled and the component information of the parts directly connected to the joint 2-3, a DH matrix is constructed based on the length of each joint 2-3, the component information and the expected rotation angle of the joint 2-3. The user-defined plantar robot posture data and the current posture of the robot to be controlled that has been calculated are compared, and the posture difference Δ is calculated.
[0079] Specifically, the constructed DH matrix is represented as follows:
[0080] D(θ1)·D(θ2)·D(θ3)·D(θ4)...D(θ n (1)
[0081] Where D is the DH matrix, and θ i ,i∈[1,n] represents the expected rotation angle of each joint 2-3;
[0082] Specifically, the component information of the parts that are directly connected to the joints 2-3 includes the length of the connecting rods 2-4 that are connected to each joint 2-3 and the type of the parts that are connected to each joint 2-3.
[0083] S3. Based on the force characteristics of each joint 2-3 and the function used to characterize the mapping relationship between the joint rotation angle and the external force disturbance, calculate the joint rotation angle of each joint 2-3 when subjected to external force disturbance.
[0084] In a preferred embodiment, the joint 2-3 includes: a first joint 2-3-1 connected to the foot 2-7 via a link 2-4, the remaining joints 2-3 located on the leg of the foot robot, and a plurality of pressure sensors located at each foot 2-7;
[0085] The calculation of the force characteristics corresponding to each joint 2-3 includes:
[0086] When the joint to be calculated is the first joint 2-3-1, the force data collected by the pressure sensors located at each foot 2-7 is obtained. Based on the force data, the first force characteristic of the foot 2-7 is calculated, and the first force characteristic is used as the force characteristic of the first joint 2-3-1.
[0087] When the joint to be calculated is not the first joint 2-3-1, the force characteristics of the joint to be calculated are calculated based on the robot's current posture, the force characteristics of the previous joint of the joint to be calculated, the weight of the joint to be calculated, and the joint connection characteristics.
[0088] In a preferred embodiment, calculating the first force characteristics of the sole 2-7 based on the force data includes:
[0089] Based on the force data, a resultant force vector is generated;
[0090] Acquire the current gravitational acceleration data from the plantar accelerometers 2-7 and generate a gravitational acceleration vector;
[0091] The resultant force vector is superimposed with the gravitational acceleration vector to obtain the superimposed resultant force vector;
[0092] The superimposed resultant force vector is mapped to the force characteristics of the robot's leg soles 2-7;
[0093] Indicative, such as Figure 2 As shown, the foot robot includes a torso 2-1, an accelerometer 2-2 located at the torso, several joints 2-3, a first joint 2-3-1, a link 2-4, an accelerometer 2-5 located at the foot, a pressure sensor 2-6 located at the foot, and a foot 2-6. Each leg is composed of several joints 2-3, several links 2-4, and a foot 2-7. In order to calculate the force characteristics of each joint based on the pressure generated on the foot 2-7 when the robot contacts the ground, several pressure sensors are placed on each foot 2-7 of the foot robot.
[0094] Indicative, such as Figure 3 as well as Figure 4 As shown, the shape of each foot 2-7 of the foot robot can be circular or polygonal;
[0095] Specifically, when the sole 2-7 is circular, n pressure sensors (n≥4) are placed at the edge of the circular sole 2-7; when the sole 2-7 is an X-sided polygon, n pressure sensors (n=X) are placed at the edge of the X-sided polygonal sole 2-7.
[0096] Specifically, taking a foot 2-7 of a foot robot as an example, the process of obtaining the force characteristics of each joint 2-3 in the leg corresponding to this foot 2-7 is explained:
[0097] 1) When the joint to be calculated is the first joint 2-3-1, the force data collected by the pressure sensor located at the sole 2-7 is obtained. Based on the force data, the first force characteristic of the sole 2-7 is calculated, and the first force characteristic is used as the force characteristic of the first joint.
[0098] Specifically, when the robot comes into contact with the ground, it collects n pressure data F from n pressure sensors on the soles of its feet (positions 2-7). ii∈[1,N], and based on the collected n pressure data, generate the resultant force vector of external forces acting on the sole of the foot. Among them, the Then, acquire the gravitational acceleration data from the current plantar accelerometers 2-7, and generate a gravitational acceleration vector. The result and Superimpose the forces to obtain the resultant force vector. The result The force characteristics of the foot 2-7 of the robot leg are mapped to the force characteristics of the first joint 2-3-1 connected to the foot 2-7 by a link 2-4.
[0099] 2) When the joint to be calculated is not the first joint 2-3-1, the force characteristics of the joint to be calculated are calculated based on the robot's current posture, the force characteristics of the previous joint of the joint to be calculated, the weight of the joint to be calculated, and the joint connection characteristics.
[0100] Indicatively, after calculating the force characteristics of the first joint 2-3-1 connected to the foot via a link 2-4, the force characteristics of the joint 2-3 to be calculated are obtained based on the robot's current posture data, the force characteristics of the previous joint of the joint 2-3 to be calculated, the weight of the joint 2-3 to be calculated, the length of the current joint 2-3, and the length of the link 2-4 connected to the current joint.
[0101] Specifically, if we need to calculate the force characteristic λ2 of the second joint 2-3, the required data includes: the robot's current posture data, the force characteristic λ1 of the first joint 2-3-1, the weight of the second joint 2-3, the length of the second joint 2-3, and the length of the link connected to the second joint 2-3. Then, using the above data, the force characteristic λ2 of the second joint 2-3 can be calculated.
[0102] In a schematic way, after obtaining the force characteristics of each joint 2-3, the joint rotation angle of each joint 2-3 when subjected to external force interference is calculated through a function that characterizes the mapping relationship between the joint rotation angle and the external force interference.
[0103] Specifically, the function used to characterize the mapping relationship between the joint rotation angle and external force interference is the force disturbance error function f. By applying a linearly changing external force to a single servo motor and observing the difference between its driving angle and the actual rotation angle, the force disturbance error function f is further obtained through experimental fitting.
[0104] S4. Based on the preset mechanical error, the joint rotation angle of each joint 2-3 when subjected to external force interference, the expected joint rotation angle of each joint 2-3 and the posture difference, calculate the actual rotation angle of each joint 2-3.
[0105] Indicatively, by obtaining the pre-known mechanical error φ, the expected joint rotation angle of each joint 2-3, the posture difference, and the calculated joint rotation angle of each joint 2-3 under external force interference, a system of equations is constructed. By solving this system of equations, the actual rotation angle β of each joint 2-3 is obtained. i ;
[0106] Specifically, the system of equations is as follows:
[0107] D(θ1)·D(θ2)...D(θ n )-D(β1)·D(β2)...D(β n )=Δ (2)
[0108] β i / β i+1 =[φ+f(λ) i )] / [φ+f(λ i+1 (3)
[0109] Where D is the DH matrix, θ i ,i∈[1,n] represents the expected rotation angle of the i-th joint, β i ,i∈[1,n] represents the actual rotation angle of the i-th joint to be calculated, β i+1 ,i∈[1,n) represents the actual rotation angle of the (i+1)th joint to be calculated, φ represents the known mechanical error, and Δ represents the known attitude difference;
[0110] Therefore, by combining formulas (2) and (3), the actual rotation angle β of each joint 2-3 can be calculated. i .
[0111] S5. Perform posture control on the robot to be controlled based on the actual rotation angle of each joint 2-3.
[0112] Specifically, after calculating the actual rotation angle β of each joint 2-3... i Then, by controlling the servo motor PWM, the joint rotation angle of each joint 2-3 is adjusted so that the rotation angle of each joint 2-3 of the robot is consistent with the preset rotation angle, thereby enabling precise control of the robot's posture.
[0113] Please see Figure 5 One embodiment of this application also provides a foot robot control device, comprising:
[0114] The data acquisition module is used to acquire the current posture, joint connection characteristics, and expected joint rotation angle of the foot robot to be controlled.
[0115] The attitude difference calculation module is used to calculate the attitude difference based on the current attitude, the connection characteristics of each joint, and the expected rotation angle of the joint.
[0116] The joint disturbance rotation angle calculation module calculates the joint rotation angle of each joint when it is subjected to external force disturbance, based on the force characteristics of each joint and the function used to characterize the mapping relationship between the joint rotation angle and the external force disturbance.
[0117] The actual rotation angle calculation module is used to calculate the actual rotation angle of each joint based on the preset mechanical error, the joint rotation angle of each joint when subjected to external force interference, the expected joint rotation angle of each joint, and the posture difference.
[0118] The attitude control module is used to control the attitude of the robot to be controlled based on the actual rotation angle of each joint.
[0119] Please see Figure 6 One embodiment of this application also provides a terminal device, including:
[0120] One or more processors;
[0121] A memory, coupled to the processor, for storing one or more programs;
[0122] When the one or more programs are executed by the one or more processors, the one or more processors implement the plantar robot control method as described above.
[0123] The processor controls the overall operation of the terminal device to complete all or part of the steps of the foot robot control method described above. The memory stores various types of data to support the operation of the terminal device. This data may include, for example, instructions for any application or method used to operate on the terminal device, as well as application-related data. The memory can be implemented using any type of volatile or non-volatile storage device or a combination thereof, such as Static Random Access Memory (SRAM), Electrically Erasable Programmable Read-Only Memory (EEPROM), Erasable Programmable Read-Only Memory (EPROM), Programmable Read-Only Memory (PROM), Read-Only Memory (ROM), magnetic storage, flash memory, magnetic disk, or optical disk.
[0124] In an exemplary embodiment, the terminal device may be implemented by one or more application-specific integrated circuits (ASICs), digital signal processors (DSPs), digital signal processing devices (DSPDs), programmable logic devices (PLDs), field-programmable gate arrays (FPGAs), controllers, microcontrollers, microprocessors, or other electronic components to execute the plantar robot control method as described in any of the above embodiments and achieve the same technical effects as the above methods.
[0125] In another exemplary embodiment, a computer-readable storage medium including a computer program is also provided. When executed by a processor, the computer program implements the steps of the plantar robot control method as described in any of the foregoing embodiments. For example, the computer-readable storage medium may be the aforementioned memory including the computer program, which may be executed by a processor of a terminal device to perform the plantar robot control method as described in any of the foregoing embodiments and achieve the same technical effects as the described method.
[0126] The above description represents the preferred embodiments of the present invention. It should be noted that those skilled in the art can make various improvements and modifications without departing from the principles of the present invention, and these improvements and modifications are also considered to be within the scope of protection of the present invention.
Claims
1. A plantar robot control method characterized by, include: Obtain the current posture, joint connection characteristics, and expected joint rotation angle of the foot robot to be controlled; The posture difference is calculated based on the current posture, the connection characteristics of each joint, and the expected rotation angle of the joint; Based on the force characteristics of each joint and the function used to characterize the mapping relationship between the joint rotation angle and the external force disturbance, calculate the joint rotation angle of each joint when subjected to external force disturbance. Based on the preset mechanical error, the joint rotation angle of each joint when subjected to external force interference, the expected joint rotation angle of each joint, and the posture difference, the actual rotation angle of each joint is calculated. Based on the actual rotation angle of each joint, perform attitude control on the robot to be controlled; The joint includes: a first joint connected to the sole of the foot via a link, the remaining joints located on the leg of the foot robot, and a number of pressure sensors located on each sole. The calculation of the force characteristics corresponding to each joint includes: When the joint to be calculated is the first joint, the force data collected by the pressure sensors located at each foot sole is obtained, and the first force characteristic of the foot sole is calculated based on the force data, and the first force characteristic is used as the force characteristic of the first joint. When the joint to be calculated is not the first joint, the force characteristics of the joint to be calculated are calculated based on the robot's current posture, the force characteristics of the previous joint, the weight of the joint to be calculated, and the joint connection characteristics. The calculation of the first force characteristic of the sole of the foot based on the force data includes: Based on the force data, a resultant force vector is generated; Acquire the current gravitational acceleration data from the plantar accelerometer and generate a gravitational acceleration vector; The resultant force vector is superimposed with the gravitational acceleration vector to obtain the superimposed resultant force vector; The superimposed resultant force vector is mapped to the force characteristics of the robot's leg sole; The actual rotation angle is calculated using the following formula: Where D is the DH matrix. Let be the expected rotation angle of the i-th joint. Let be the actual rotation angle of the i-th joint to be calculated. This represents the actual rotation angle of the (i+1)th joint to be calculated. Given the mechanical error, Given the attitude difference, Let i be the force characteristics of the i-th joint. Let be the force disturbance error function.
2. The foot robot control method as described in claim 1, characterized in that, Obtaining the expected rotation angle of each joint includes: Acquire the robot's preset posture data; Based on the preset posture data, the expected rotation angle of each joint is calculated.
3. The foot robot control method as described in claim 1, characterized in that, The foot robot includes: a first accelerometer located at the torso, a second accelerometer located at each joint, and a third accelerometer located at each foot. The process of obtaining the current posture of the plantar robot to be controlled includes: Acquire data from the first accelerometer, each of the second accelerometers, and each of the third accelerometers; The current posture of the robot to be controlled is calculated based on the acquired acceleration sensor data.
4. The foot robot control method as described in claim 3, characterized in that, The joint connection characteristics of the foot robot to be controlled include: The length of each joint and component information of the parts that are directly connected to the joint; The posture difference is calculated based on the connection characteristics of each joint, the expected rotation angle of the joints, and the current posture of the foot robot to be controlled, including: A DH matrix is constructed based on the length of each joint, component information, and the expected rotation angle of the joint. The posture difference is calculated based on the constructed DH matrix and the current posture of the plantar robot to be controlled.
5. A foot robot control device, characterized in that, include: The data acquisition module is used to acquire the current posture, joint connection characteristics, and expected joint rotation angle of the foot robot to be controlled. The attitude difference calculation module is used to calculate the attitude difference based on the current attitude, the connection characteristics of each joint, and the expected rotation angle of the joint. The joint disturbance rotation angle calculation module calculates the joint rotation angle of each joint when it is subjected to external force disturbance, based on the force characteristics of each joint and the function used to characterize the mapping relationship between the joint rotation angle and the external force disturbance. The actual rotation angle calculation module is used to calculate the actual rotation angle of each joint based on the preset mechanical error, the joint rotation angle of each joint when subjected to external force interference, the expected joint rotation angle of each joint, and the posture difference. The attitude control module is used to control the attitude of the robot to be controlled based on the actual rotation angle of each joint. The joint includes: a first joint connected to the sole of the foot via a link, the remaining joints located on the leg of the foot robot, and several pressure sensors located on each sole. The calculation of the force characteristics corresponding to each joint includes: When the joint to be calculated is the first joint, the force data collected by the pressure sensors located at each foot sole is obtained, and the first force characteristic of the foot sole is calculated based on the force data, and the first force characteristic is used as the force characteristic of the first joint. When the joint to be calculated is not the first joint, the force characteristics of the joint to be calculated are calculated based on the robot's current posture, the force characteristics of the previous joint, the weight of the joint to be calculated, and the joint connection characteristics. The calculation of the first force characteristic of the sole of the foot based on the force data includes: Based on the force data, a resultant force vector is generated; Acquire the current gravitational acceleration data from the plantar accelerometer and generate a gravitational acceleration vector; The resultant force vector is superimposed with the gravitational acceleration vector to obtain the superimposed resultant force vector; The superimposed resultant force vector is mapped to the force characteristics of the robot's leg sole; The actual rotation angle is calculated using the following formula: Where D is the DH matrix. Let be the expected rotation angle of the i-th joint. Let be the actual rotation angle of the i-th joint to be calculated. This represents the actual rotation angle of the (i+1)th joint to be calculated. Given the mechanical error, Given the attitude difference, Let i be the force characteristics of the i-th joint. Let be the force disturbance error function.
6. A terminal device, characterized in that, include: One or more processors; A memory, coupled to the processor, for storing one or more programs; When the one or more programs are executed by the one or more processors, the one or more processors implement the plantar robot control method as described in any one of claims 1-4.
7. A computer-readable storage medium having a computer program stored thereon, characterized in that, When the computer program is executed by the processor, it implements the plantar robot control method as described in any one of claims 1-4.