Robot control method and apparatus, readable storage medium and robot

Through the inverse kinematic analytical relationship, the expected stroke length of the robot ankle linear motor is determined and its movement is controlled, which solves the problem of low efficiency in the control of ankle posture angle of the robot in the prior art, and achieves a more efficient control effect.

WO2025112145A1PCT designated stage expired Publication Date: 2025-06-05UBTECH ROBOTICS CORP LTD

Patent Information

Application Number
PCT/CN2023/141929
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Priority Date
2023-11-28
Filing Date
2023-12-26
Publication Date
2025-06-05

AI Technical Summary

Technical Problem

In the prior art, the control efficiency of ankle attitude angle of the robot is low and it is difficult to meet the actual task requirements.

Method used

By obtaining the expected ankle angle of the robot, the expected stroke length of the linear motor is determined based on the inverse kinematic analytical relationship, and the linear motor movement is controlled according to the expected stroke length to achieve control of the ankle attitude angle.

Benefits of technology

The control efficiency of the robot's ankle posture angle can better meet the actual task needs.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN2023141929_05062025_PF_FP_ABST
    Figure CN2023141929_05062025_PF_FP_ABST
Patent Text Reader

Abstract

A robot (5) control method and apparatus, a readable storage medium and a robot (5). The robot (5) control method comprises: acquiring an expected attitude angle of an ankle of a robot (5) (S101); determining an expected stroke length of a linear motor of the ankle on the basis of the expected attitude angle (S102); and, according to the expected stroke length, controlling the linear motor to move (S103).
Need to check novelty before this filing date? Find Prior Art

Description

Robot control method, device, readable storage medium and robot

[0001] This application claims priority to the Chinese patent application filed with the China Patent Office on November 28, 2023, with application number 202311612875.2 and invention name “A robot control method, device, readable storage medium and robot”, the entire contents of which are incorporated by reference into this application. Technical Field

[0002] The present application relates to the field of robotics technology, and in particular to a robot control method, device, computer-readable storage medium, and robot. Background Art

[0003] When a robot is performing a task, it is sometimes necessary to control the posture angle of the robot's ankle so that it can complete the desired task.

[0004] However, the ankle structure of humanoid robots is often relatively complex, making it difficult to control. In existing technologies, complex algorithms or models are often used to control them, which has low control efficiency and is difficult to meet actual task requirements. Technical issues

[0005] In view of this, the embodiments of the present application provide a robot control method, device, computer-readable storage medium and robot to solve the problem in the prior art that when controlling the posture angle of the robot's ankle, the control efficiency is low and it is difficult to meet actual task requirements. Technical Solutions

[0006] A first aspect of an embodiment of the present application provides a robot control method, which may include:

[0007] Get the desired posture angle of the robot's ankle;

[0008] determining a desired stroke length of the linear motor of the ankle according to the desired posture angle;

[0009] The linear motor is controlled to move according to the desired stroke length.

[0010] In a specific implementation of the first aspect, determining the expected stroke length of the linear motor of the ankle according to the expected posture angle may include:

[0011] Determining a desired stroke length of the linear motor of the ankle according to the desired posture angle based on an inverse kinematics analytical relationship;

[0012] The inverse kinematics analytical relationship is a pre-established analytical relationship between the posture angle of the ankle and the stroke length of the linear motor.

[0013] In a specific implementation of the first aspect, before determining the expected stroke length of the linear motor of the ankle according to the expected posture angle based on the inverse kinematics analytical relationship, the method may further include:

[0014] determining the spatial structure of the ankle;

[0015] The inverse kinematics analytical relationship is established according to the spatial structure of the ankle.

[0016] In a specific implementation of the first aspect, the inverse kinematics analytical relationship is an inverse kinematics analytical expression, wherein the inverse kinematics analytical expression uses the posture angle of the ankle as an input and the stroke length of the linear motor as an output;

[0017] Determining the expected stroke length of the linear motor of the ankle according to the expected posture angle based on the inverse kinematics analytical relationship may include:

[0018] The desired attitude angle is substituted as an input into the inverse kinematics analytical formula for calculation, and the desired stroke length is determined based on the calculated output.

[0019] In a specific implementation of the first aspect, determining the expected stroke length according to the calculated output may include:

[0020] A value within the stroke length range of the linear motor is selected from the calculated output as the expected stroke length.

[0021] In a specific implementation of the first aspect, the inverse kinematics analytical relationship is an analytical relationship correspondence table, wherein the analytical relationship correspondence table records the correspondence between each posture angle of the ankle and each stroke length of the linear motor;

[0022] Determining the expected stroke length of the linear motor of the ankle according to the expected posture angle based on the inverse kinematics analytical relationship may include:

[0023] Querying the stroke length corresponding to the desired attitude angle in the analytical relationship correspondence table;

[0024] The stroke length corresponding to the expected posture angle found in the analytical relationship correspondence table is determined as the expected stroke length.

[0025] In a specific implementation of the first aspect, after controlling the linear motor to move according to the desired stroke length, the method may further include:

[0026] Get the measured attitude angle of the ankle;

[0027] Calculating an angular error between the measured attitude angle and the desired attitude angle;

[0028] If the angle error is less than a preset angle error threshold, it is determined that the posture control of the ankle is completed.

[0029] A second aspect of the embodiments of the present application provides a robot control device, which may include:

[0030] A desired posture angle acquisition module is used to obtain the desired posture angle of the robot's ankle;

[0031] an expected stroke length determining module, configured to determine an expected stroke length of the linear motor of the ankle according to the expected posture angle;

[0032] A motion control module is used to control the linear motor to move according to the desired stroke length.

[0033] In a specific implementation of the second aspect, the expected stroke length determination module may include:

[0034] an inverse kinematics analysis unit, configured to determine a desired stroke length of the linear motor of the ankle according to the desired posture angle based on an inverse kinematics analysis relationship;

[0035] The inverse kinematics analytical relationship is a pre-established analytical relationship between the posture angle of the ankle and the stroke length of the linear motor.

[0036] In a specific implementation of the second aspect, the expected stroke length determination module may further include:

[0037] The inverse kinematics analytical relationship establishing unit is used to determine the spatial structure of the ankle; and establish the inverse kinematics analytical relationship according to the spatial structure of the ankle.

[0038] In a specific implementation of the second aspect, the inverse kinematics analytical relationship is an inverse kinematics analytical expression, wherein the inverse kinematics analytical expression uses the posture angle of the ankle as an input and the stroke length of the linear motor as an output;

[0039] The inverse kinematics analysis unit may include:

[0040] a calculation subunit, configured to substitute the desired attitude angle as an input into the inverse kinematics analytical expression for calculation;

[0041] The first determining subunit is configured to determine the expected stroke length according to the calculated output.

[0042] In a specific implementation of the second aspect, the expected stroke length determination subunit may be specifically configured to select, from the calculated output, a value within a range of the stroke length of the linear motor as the expected stroke length.

[0043] In a specific implementation of the second aspect, the inverse kinematics analytical relationship is an analytical relationship correspondence table, wherein the analytical relationship correspondence table records the correspondence between each posture angle of the ankle and each stroke length of the linear motor;

[0044] The inverse kinematics analysis unit may include:

[0045] A query subunit, configured to query the analytical relationship correspondence table for a stroke length corresponding to the desired attitude angle;

[0046] The second determining subunit is configured to determine the stroke length corresponding to the expected posture angle found in the analytical relationship correspondence table as the expected stroke length.

[0047] In a specific implementation of the second aspect, the robot control device may further include:

[0048] The verification module is used to obtain the measured posture angle of the ankle; calculate the angle error between the measured posture angle and the expected posture angle; if the angle error is less than a preset angle error threshold, determine that the posture control of the ankle is completed.

[0049] A third aspect of an embodiment of the present application provides a computer-readable storage medium, wherein the computer-readable storage medium stores a computer program, and when the computer program is executed by a processor, the steps of any one of the above-mentioned robot control methods are implemented.

[0050] The fourth aspect of an embodiment of the present application provides a robot, comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor implements the steps of any one of the above-mentioned robot control methods when executing the computer program.

[0051] A fifth aspect of the embodiments of the present application provides a computer program product, which, when run on a robot, enables the robot to execute the steps of any one of the above-mentioned robot control methods. Beneficial effects

[0052] Compared to the prior art, the embodiments of the present application have the following advantages: the embodiments of the present application obtain the desired attitude angle of the robot's ankle; determine the desired stroke length of the ankle's linear motor based on the desired attitude angle; and control the linear motor to move according to the desired stroke length. Through the embodiments of the present application, the attitude angle of the robot's ankle is converted into the stroke length of the ankle's linear motor. Control of the ankle's attitude angle is achieved by controlling the stroke length of the linear motor, resulting in high control efficiency and helping to meet actual task requirements. BRIEF DESCRIPTION OF THE DRAWINGS

[0053] In order to more clearly illustrate the technical solutions in the embodiments of the present application, the following briefly introduces the drawings required for use in the embodiments or descriptions of the prior art. 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 any creative work.

[0054] FIG1 is a flow chart of an embodiment of a robot control method according to an embodiment of the present application;

[0055] FIG2 is a schematic diagram of a parallel ankle structure;

[0056] FIG3 is a schematic diagram of the verification results on the simulation platform;

[0057] FIG4 is a structural diagram of an embodiment of a robot control device according to an embodiment of the present application;

[0058] FIG5 is a schematic block diagram of a robot in an embodiment of the present application. Modes for Carrying Out the Invention

[0059] In order to make the purpose, features, and advantages of the invention of this application more obvious and easy to understand, the technical solutions in the embodiments of this application will be clearly and completely described below in conjunction with the drawings in the embodiments of this application. Obviously, the embodiments described below are only part of the embodiments of this application, not all of the embodiments. Based on the embodiments in this application, all other embodiments obtained by ordinary technicians in this field without making creative work are within the scope of protection of this application.

[0060] It will be understood that when used in this specification and the appended claims, the term "comprising" indicates the presence of described features, integers, steps, operations, elements and / or components, but does not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components and / or groups thereof.

[0061] It should also be understood that the terms used in this specification are for the purpose of describing specific embodiments only and are not intended to limit the present application. As used in this specification and the appended claims, the singular forms "a," "an," and "the" are intended to include the plural forms unless the context clearly indicates otherwise.

[0062] It should be further understood that the term "and / or" used in this specification and the appended claims refers to and includes any and all possible combinations of one or more of the associated listed items.

[0063] As used in this specification and the appended claims, the term "if" can be interpreted as "when" or "upon" or "in response to determining" or "in response to detecting," depending on the context. Similarly, the phrase "if it is determined" or "if [described condition or event] is detected" can be interpreted as meaning "upon determination" or "in response to determining" or "upon detection of [described condition or event]" or "in response to detecting [described condition or event]," depending on the context.

[0064] In addition, in the description of the present application, the terms "first", "second", "third", etc. are only used to distinguish the description and cannot be understood as indicating or implying relative importance.

[0065] When a robot is performing a task, it is sometimes necessary to control the posture angle of the robot's ankle so that it can complete the desired task.

[0066] However, the ankle structure of humanoid robots is often relatively complex, making it difficult to control. In existing technologies, complex algorithms or models are often used to control them, which has low control efficiency and is difficult to meet actual task requirements.

[0067] In an embodiment of the present application, the attitude angle of the robot's ankle can be converted into the stroke length of the ankle's linear motor. The control of the ankle's attitude angle is achieved by controlling the stroke length of the linear motor, which has high control efficiency and helps to meet actual task requirements.

[0068] The execution subject of the embodiment of the present application is a robot, including but not limited to any humanoid robot or other robot with an ankle structure.

[0069] Referring to FIG1 , an embodiment of a robot control method in an embodiment of the present application may include:

[0070] Step S101: Obtain the desired posture angle of the robot's ankle.

[0071] In the embodiment of the present application, the ankle posture angle may include but is not limited to a pitch angle and / or a roll angle.

[0072] The expected posture angle is the posture angle that the ankle needs to reach to complete the expected task. It can be obtained in advance by performing motion planning on the ankle using any motion planning algorithm in the prior art, and the embodiments of the present application do not specifically limit it.

[0073] Step S102: Determine the expected stroke length of the ankle linear motor according to the expected posture angle.

[0074] Among them, the linear motor is a transmission device that directly converts electrical energy into linear motion mechanical energy without the need for any intermediate conversion mechanism. In the embodiment of the present application, the posture angle of the ankle can be controlled by the linear motion of the linear motor.

[0075] The stroke length of the linear motor is the position change of the linear motor compared to its initial position, and the expected stroke length is the stroke length of the linear motor when the ankle posture angle reaches the expected posture angle.

[0076] In the embodiment of the present application, an inverse kinematics analytical relationship can be pre-established. After obtaining the desired ankle posture angle, the desired stroke length of the ankle linear motor can be determined based on the inverse kinematics analytical relationship. The inverse kinematics analytical relationship is a pre-established analytical relationship between the ankle posture angle and the stroke length of the linear motor.

[0077] Specifically, when establishing the inverse kinematics analytical relationship, the spatial structure of the ankle may be determined first, and then the inverse kinematics analytical relationship may be established based on the spatial structure of the ankle.

[0078] FIG2 shows a schematic diagram of a possible parallel ankle structure. As shown in the figure, the origin of the ankle (denoted as O) is the first passive ball joint located on the footboard, and the first passive ball joint is connected to the support frame. The forward direction of the ankle is the positive direction of the x-axis, the left direction of the ankle, that is, the forward direction of the ankle is rotated 90 degrees counterclockwise on the horizontal plane, which is the positive direction of the y-axis, and the vertical upward direction is the positive direction of the z-axis. The support frame is provided with two parallel left and right motion axes in the vertical direction, and the left and right linear motors perform linear motion on these two motion axes respectively. The left linear motor (its position is denoted as A1) is connected to the left first joint (its position is denoted as B1) through the left first connecting rod, and the left first joint is connected to the left second joint (its position is denoted as C1) through the left second connecting rod. The left second joint is the second passive ball joint located on the footboard. Similarly, the right linear motor (its position is marked as A2) is connected to the right first joint (its position is marked as B2) through the right first connecting rod, and the right first joint is connected to the right second joint (its position is marked as C2) through the right second connecting rod. The right second joint is the second passive ball joint located on the foot plate.

[0079] Taking the connection structure of the linear motor on the left as an example, it has the following geometric relationship:

[0080] in, That is

[0081] The initial position of the left linear motor is recorded as The above formula can be expressed as:

[0082] in, is the position change vector of the left linear motor compared to its initial position.

[0083] When the robot's ankle is in the initial state, its pitch angle and roll angle When both are 0, the position of the second joint on the left is but It can be expressed as:

[0084] Among them, R x is the rotation matrix around the x-axis, R y is the rotation matrix around the y-axis, which can be expressed as:

[0085] make You can get:

[0086] Squaring both sides of the above equation, we can get:

[0087] Since the square of the vector modulus is equal to the sum of the squares of the vector components in all directions, then:

[0088] (a x1 -L x1 ) 2 +(a y1 -L y1 ) 2 +(a z1 -L z1 ) 2 =l rod1 2

[0089] Among them, a x1 、a y1 、a z1 They are The x-axis component, y-axis component and z-axis component, L x1 、L y1 、L z1 They are The x-axis component, y-axis component and z-axis component, l rod1 is the length of the second connecting rod on the left.

[0090] Since the linear motor of the ankle can only move up and down along the z-axis, L x1 =0,L y1 =0, we can get:

[0091] a x1 2 +a y1 2 +(a z1 -L z1 ) 2 =l rod1 2

[0092] Solving the above equation, we can get the expression of the stroke length of the linear motor on the left:

[0093] Similarly, the expression for the stroke length of the linear motor on the right can be obtained as:

[0094] Among them, a x2 、a y2 、a z2 They are The x-axis component, y-axis component and z-axis component of is the position of the second joint on the right side of the ankle in the initial state, L x2 、L y2 、Lz2 They are The x-axis component, y-axis component and z-axis component of is the position change vector of the right linear motor compared to its initial position, l rod2 is the length of the second connecting rod on the right.

[0095] The above expression is an inverse kinematics analytical formula with the ankle posture angle as input and the linear motor stroke length as output.

[0096] It should be noted that the above-mentioned parallel ankle structure is only an example. For other ankle spatial structures, the corresponding inverse kinematics analytical formula can also be established by referring to the above-mentioned analysis process, which will not be described in detail in the embodiments of the present application.

[0097] In one specific implementation of the present invention, the inverse kinematics analytical expression can be directly used as the inverse kinematics analytical relationship, the desired attitude angle can be substituted into the inverse kinematics analytical expression as the input, and the desired stroke length can be determined based on the calculated output. Specifically, a value within the linear motor's stroke length range can be selected from the calculated output as the desired stroke length.

[0098] In another specific implementation of the embodiment of the present application, an analytical relationship correspondence table can also be constructed based on the inverse kinematics analytical expression. The analytical relationship correspondence table records the correspondence between various ankle posture angles and various stroke lengths of the linear motor, as shown in the following table:

[0099] Specifically, the attitude angle 1 is substituted as the input quantity into the inverse kinematics analytical formula for calculation, and the value within the stroke length range of the linear motor is selected from the calculated output quantity, which is the stroke length 1, thereby establishing a corresponding relationship between the attitude angle 1 and the stroke length 1, and the attitude angle 2 is substituted as the input quantity into the inverse kinematics analytical formula for calculation, and the value within the stroke length range of the linear motor is selected from the calculated output quantity, which is the stroke length 2, thereby establishing a corresponding relationship between the attitude angle 2 and the stroke length 2, and so on, the corresponding relationship between each attitude angle and each stroke length of the linear motor can be established, that is, the construction of the analytical relationship correspondence table is completed, and the analytical relationship correspondence table is used as the inverse kinematics analytical relationship.

[0100] When determining a desired stroke length based on a desired attitude angle, the stroke length corresponding to the desired attitude angle can be looked up in the analytical relationship table, and the stroke length corresponding to the desired attitude angle found in the analytical relationship table can be determined as the desired stroke length. In this way, the analytical calculation process can be replaced by a table lookup process, which has higher processing efficiency.

[0101] Step S103: Control the linear motor to move according to the desired stroke length.

[0102] After the desired stroke length is determined, the linear motor can be controlled to move to a position corresponding to the desired stroke length, thereby driving the connecting rod to make the ankle posture angle reach the desired posture angle.

[0103] In order to verify the effect of the motion control, after step S103 , a measured posture angle of the ankle may be obtained, wherein the measured posture angle is an actual posture angle measured by a preset sensor.

[0104] The angle error between the measured posture angle and the desired posture angle is then calculated. If the angle error is less than a preset angle error threshold, it can be determined that the posture control of the ankle is complete. The angle error threshold can be set according to actual conditions and is not specifically limited in the present embodiment.

[0105] FIG3 is a schematic diagram of the verification results on the simulation platform. The upper figure is a comparison diagram of the pitch angle, and the lower figure is a comparison diagram of the roll angle. It can be seen from the figure that the measured attitude angle and the expected attitude angle are basically consistent, which confirms the effectiveness of the method of the present application.

[0106] In summary, the embodiments of the present application obtain the desired attitude angle of the robot's ankle; determine the desired stroke length of the ankle's linear motor based on the desired attitude angle; and control the linear motor to move according to the desired stroke length. Through the embodiments of the present application, the attitude angle of the robot's ankle is converted into the stroke length of the ankle's linear motor. Control of the ankle's attitude angle is achieved by controlling the stroke length of the linear motor, resulting in high control efficiency and helping to meet actual task requirements.

[0107] It should be understood that the size of the serial numbers of the steps in the above embodiments does not mean the order of execution. The execution order of each process should be determined by its function and internal logic, and should not constitute any limitation on the implementation process of the embodiments of this application.

[0108] Corresponding to the robot control method described in the above embodiment, FIG4 shows a structural diagram of an embodiment of a robot control device provided in an embodiment of the present application.

[0109] In this embodiment, a robot control device may include:

[0110] The desired posture angle acquisition module 401 is used to obtain the desired posture angle of the robot's ankle;

[0111] an expected stroke length determining module 402, configured to determine an expected stroke length of the ankle linear motor according to the expected posture angle;

[0112] The motion control module 403 is configured to control the linear motor to move according to the desired stroke length.

[0113] In a specific implementation of the embodiment of the present application, the expected stroke length determination module may include:

[0114] an inverse kinematics analysis unit, configured to determine a desired stroke length of the linear motor of the ankle according to the desired posture angle based on an inverse kinematics analysis relationship;

[0115] The inverse kinematics analytical relationship is a pre-established analytical relationship between the posture angle of the ankle and the stroke length of the linear motor.

[0116] In a specific implementation of the embodiment of the present application, the expected stroke length determination module may further include:

[0117] The inverse kinematics analytical relationship establishing unit is used to determine the spatial structure of the ankle; and establish the inverse kinematics analytical relationship according to the spatial structure of the ankle.

[0118] In a specific implementation of the embodiment of the present application, the inverse kinematics analytical relationship is an inverse kinematics analytical expression, wherein the inverse kinematics analytical expression uses the posture angle of the ankle as an input and the stroke length of the linear motor as an output;

[0119] The inverse kinematics analysis unit may include:

[0120] a calculation subunit, configured to substitute the desired attitude angle as an input into the inverse kinematics analytical expression for calculation;

[0121] The first determining subunit is configured to determine the expected stroke length according to the calculated output.

[0122] In a specific implementation of the embodiment of the present application, the expected stroke length determination subunit may be specifically configured to select, from the calculated output, a value within the stroke length range of the linear motor as the expected stroke length.

[0123] In a specific implementation of the embodiment of the present application, the inverse kinematics analytical relationship is an analytical relationship correspondence table, which records the correspondence between each posture angle of the ankle and each stroke length of the linear motor;

[0124] The inverse kinematics analysis unit may include:

[0125] A query subunit, configured to query the analytical relationship correspondence table for a stroke length corresponding to the desired attitude angle;

[0126] The second determining subunit is configured to determine the stroke length corresponding to the expected posture angle found in the analytical relationship correspondence table as the expected stroke length.

[0127] In a specific implementation of the embodiment of the present application, the robot control device may further include:

[0128] The verification module is used to obtain the measured posture angle of the ankle; calculate the angle error between the measured posture angle and the expected posture angle; if the angle error is less than a preset angle error threshold, determine that the posture control of the ankle is completed.

[0129] Those skilled in the art will clearly understand that, for the convenience and brevity of description, the specific working processes of the above-described devices, modules and units can refer to the corresponding processes in the aforementioned method embodiments and will not be repeated here.

[0130] In the above embodiments, the description of each embodiment has its own focus. For parts that are not described or recorded in detail in a certain embodiment, reference can be made to the relevant description of other embodiments.

[0131] Figure 5 shows a schematic block diagram of a robot provided in an embodiment of the present application. For ease of explanation, only the parts related to the embodiment of the present application are shown.

[0132] As shown in FIG5 , the robot 5 of this embodiment includes a processor 50, a memory 51, and a computer program 52 stored in the memory 51 and executable on the processor 50. When the processor 50 executes the computer program 52, it implements the steps described in the various robot control method embodiments, such as steps S101 to S103 shown in FIG1 . Alternatively, when the processor 50 executes the computer program 52, it implements the functions of the modules / units in the various device embodiments described above, such as the functions of modules 401 to 403 shown in FIG4 .

[0133] For example, the computer program 52 may be divided into one or more modules / units, which are stored in the memory 51 and executed by the processor 50 to implement the present application. The one or more modules / units may be a series of computer program instruction segments capable of performing specific functions, and the instruction segments are used to describe the execution process of the computer program 52 in the robot 5.

[0134] Those skilled in the art will understand that Figure 5 is merely an example of the robot 5 and does not constitute a limitation on the robot 5. The robot 5 may include more or fewer components than shown in the figure, or a combination of certain components, or different components. For example, the robot 5 may also include input and output devices, network access devices, buses, etc.

[0135] The processor 50 may be a central processing unit (CPU), or other general-purpose processors, digital signal processors (DSP), application-specific integrated circuits (ASIC), field-programmable gate arrays (FPGA), or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. The general-purpose processor may be a microprocessor or any conventional processor.

[0136] The memory 51 can be an internal storage unit of the robot 5, such as a hard drive or memory of the robot 5. The memory 51 can also be an external storage device of the robot 5, such as a plug-in hard drive, a Smart Media Card (SMC), a Secure Digital (SD) card, a flash memory card, etc. equipped on the robot 5. Furthermore, the memory 51 can include both an internal storage unit of the robot 5 and an external storage device. The memory 51 is used to store the computer program and other programs and data required by the robot 5. The memory 51 can also be used to temporarily store data that has been output or is about to be output.

[0137] Those skilled in the art can clearly understand that, for the convenience and brevity of description, only the division of the above-mentioned functional units and modules is used as an example for illustration. In actual applications, the above-mentioned functions can be distributed and completed by different functional units and modules as needed, that is, the internal structure of the device can be divided into different functional units or modules to complete all or part of the functions described above. The functional units and modules in the embodiment can be integrated into one processing unit, or each unit can exist physically alone, or two or more units can be integrated into one unit. The above-mentioned integrated unit can be implemented in the form of hardware or in the form of software functional units. In addition, the specific names of the functional units and modules are only for the convenience of distinguishing each other, and are not used to limit the scope of protection of this application. The specific working process of the units and modules in the above-mentioned system can refer to the corresponding process in the aforementioned method embodiment, and will not be repeated here.

[0138] In the above embodiments, the description of each embodiment has its own focus. For parts that are not described or recorded in detail in a certain embodiment, reference can be made to the relevant description of other embodiments.

[0139] Those skilled in the art will appreciate that the units and algorithm steps of each example described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, or a combination of computer software and electronic hardware. Whether these functions are performed in hardware or software depends on the specific application and design constraints of the technical solution. Professional and technical personnel can use different methods to implement the described functions for each specific application, but such implementation should not be considered beyond the scope of this application.

[0140] In the embodiments provided in this application, it should be understood that the disclosed devices / robots and methods can be implemented in other ways. For example, the device / robot embodiments described above are merely schematic. For example, the division of the modules or units is merely a logical function division. In actual implementation, there may be other division methods, such as multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the mutual coupling or direct coupling or communication connection shown or discussed can be through some interfaces, indirect coupling or communication connection of devices or units, which can be electrical, mechanical or other forms.

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

[0142] In addition, the functional units in the various embodiments of the present application may be integrated into a single processing unit, or each unit may exist physically separately, or two or more units may be integrated into a single unit. The aforementioned integrated units may be implemented in the form of hardware or software functional units.

[0143] If the integrated module / unit is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the present application implements all or part of the process in the above-mentioned embodiment method, and can also be completed by instructing the relevant hardware through a computer program. The computer program can be stored in a computer-readable storage medium, and when the computer program is executed by the processor, it can implement the steps of the above-mentioned various method embodiments. Among them, the computer program includes computer program code, and the computer program code can be in source code form, object code form, executable file or some intermediate form. The computer-readable storage medium may include: any entity or device capable of carrying the computer program code, recording medium, USB flash drive, mobile hard disk, magnetic disk, optical disk, computer memory, read-only memory (ROM), random access memory (RAM), electric carrier signal, telecommunication signal and software distribution medium. It should be noted that the content contained in the computer-readable storage medium can be appropriately increased or decreased according to the requirements of legislation and patent practice in the jurisdiction. For example, in some jurisdictions, according to legislation and patent practice, computer-readable storage media do not include electric carrier signals and telecommunication signals.

[0144] The above-described embodiments are only used to illustrate the technical solutions of the present application, rather than to limit them. Although the present application has been described in detail with reference to the aforementioned embodiments, those skilled in the art should understand that they can still modify the technical solutions described in the aforementioned embodiments, or make equivalent replacements for some of the technical features therein. These modifications or replacements do not deviate the essence of the corresponding technical solutions from the spirit and scope of the technical solutions of the various embodiments of the present application, and should all be included in the scope of protection of the present application.

Claims

1. A robot control method, characterized in that, it includes: Obtain the desired attitude angle of the ankle of the robot; Determine the desired stroke length of the linear motor of the ankle according to the desired attitude angle; Control the linear motor to move according to the desired stroke length.

2. The robot control method according to claim 1, characterized in that, The step of determining the desired stroke length of the linear motor of the ankle according to the desired attitude angle includes: Based on the inverse kinematics analysis relationship, determine the desired stroke length of the linear motor of the ankle according to the desired attitude angle; wherein, the inverse kinematics analysis relationship is the pre-established analysis relationship between the attitude angle of the ankle and the stroke length of the linear motor.

3. The robot control method according to claim 2, characterized in that, Before determining the desired stroke length of the linear motor of the ankle according to the desired attitude angle based on the inverse kinematics analysis relationship, it further includes: Determine the spatial structure of the ankle; Establish the inverse kinematics analysis relationship according to the spatial structure of the ankle.

4. The robot control method according to claim 2, characterized in that, The inverse kinematics analysis relationship is an inverse kinematics analytical formula, and the inverse kinematics analytical formula takes the attitude angle of the ankle as the input quantity and the stroke length of the linear motor as the output quantity; The step of determining the desired stroke length of the linear motor of the ankle according to the desired attitude angle based on the inverse kinematics analysis relationship includes: Substitute the desired attitude angle as the input quantity into the inverse kinematics analytical formula for calculation, and determine the desired stroke length according to the calculated output quantity.

5. The robot control method according to claim 4, characterized in that, The step of determining the desired stroke length according to the calculated output quantity includes: Select the value within the stroke length range interval of the linear motor from the calculated output quantity as the desired stroke length.

6. The robot control method according to claim 2, characterized in that, The inverse kinematics analysis relationship is an analysis relationship correspondence table, and the analysis relationship correspondence table records the correspondence relationship between each attitude angle of the ankle and each stroke length of the linear motor; The step of determining the desired stroke length of the linear motor of the ankle according to the desired attitude angle based on the inverse kinematics analysis relationship includes: Query the stroke length corresponding to the desired attitude angle in the analysis relationship correspondence table; Determine the stroke length corresponding to the desired attitude angle queried in the analysis relationship correspondence table as the desired stroke length.

7. The robot control method according to any one of claims 1 to 6, characterized in that, After controlling the linear motor to move according to the desired stroke length, it further includes: Obtain the measured attitude angle of the ankle; Calculate the angle error between the measured attitude angle and the desired attitude angle; If the angle error is less than the preset angle error threshold, it is determined that the attitude control of the ankle is completed.

8. A robot control device, characterized in that, it includes: An expected attitude angle acquisition module, configured to acquire the expected attitude angle of the ankle of the robot; An expected stroke length determination module, configured to determine the expected stroke length of the linear motor of the ankle according to the expected attitude angle; A motion control module, configured to control the linear motor to move according to the expected stroke length.

9. A computer-readable storage medium storing a computer program, characterized in that, when the computer program is executed by a processor, the steps of the robot control method according to any one of claims 1 to 7 are implemented.

10. A robot, comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, characterized in that, when the processor executes the computer program, the steps of the robot control method according to any one of claims 1 to 7 are implemented.

Citation Information

Patent Citations

  • Inverse kinematics solving method of high-energy-efficiency lightweight structure biped robot

    CN111914416A

  • Robot gait planning method and device, readable storage medium and robot

    CN112947398A

  • Ankle assisting exoskeleton and control method thereof

    CN113081701A

  • Robot stepping control method and device, robot control equipment and storage medium

    CN114489104A

  • Robot foot connecting structure, control method and equipment thereof and storage medium

    CN116495074A

Cited By

  • Robot control method and device, readable storage medium and robot

    CN117549302A