Robot footfall detection method, device, computer equipment and storage medium

By generating and analyzing the target curve in real time, combining joint current and angle changes, we judge the robot's footing moment and adjust the center of gravity, the problem of complexity and low efficiency of footing detection in the existing technology is solved, and efficient control of the robot's smooth landing is achieved.

CN115213909BActive Publication Date: 2025-01-14LEJU (SHENZHEN) ROBOTICS TECH CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202211040151.0
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-08-29
Publication Date
2025-01-14
Estimated Expiration
2042-08-29

AI Technical Summary

Technical Problem

In the prior art, robot foot detection relies on pressure sensors, resulting in an increase in the complexity of the robot foot structure and the sensor life affects the detection performance, making it difficult to achieve accurate foot detection without increasing the structural complexity.

Method used

By controlling the robot to perform preset actions, collect parameter information in real time to generate a target curve, and judge the landing moment based on the target curve and standard curve, adjust the center of gravity to achieve smooth landing, and use joint current information and angle change analysis to determine the landing moment and sole type.

Benefits of technology

It realizes fast and accurate landing time detection without changing the robot's sole structure, improving the detection efficiency and accuracy of landing control.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115213909B_ABST
    Figure CN115213909B_ABST
Patent Text Reader

Abstract

The present application provides a robot landing detection method, device, computer equipment and storage medium, which relate to the field of robot technology. The method generates a target curve at each moment when the target robot is executing a preset action, and analyzes the target curve and the standard curve generated at the current moment at each moment, so as to accurately determine the landing moment of the target robot. Among them, the robot's landing moment detection can be quickly realized by curve analysis without changing the robot's sole structure, thereby improving the detection efficiency of the landing moment. In addition, based on the detected landing moment, the center of gravity is adjusted through the joint current information at the landing moment, so that the robot can be controlled to land more smoothly in a more expected state, thereby improving the accuracy of the robot's landing control.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of robotics technology, and more specifically, to a robot foothold detection method, device, computer equipment, and storage medium. Background Art

[0002] Detecting the footing status of a legged robot can assist in adjusting the walking status of the robot so that the robot can run more smoothly.

[0003] In the prior art, when performing foot placement detection on a legged robot, a pressure sensor is usually added to the sole of the robot to determine the foot placement status based on the magnitude of the detected pressure.

[0004] However, the size and installation position of the sensor affect the structural complexity of the robot's foot, and the service life of the sensor will affect the performance of the robot's footing detection. Summary of the invention

[0005] The purpose of the present application is to provide a robot footfall detection method, device, computer equipment and storage medium to address the deficiencies in the above-mentioned prior art, so as to achieve accurate footfall detection without increasing the complexity of the robot's foot sole structure.

[0006] To achieve the above purpose, the technical solution adopted in the embodiment of the present application is as follows:

[0007] In a first aspect, an embodiment of the present application provides a robot foot landing detection method, comprising:

[0008] Controlling the target robot to perform a preset action, and generating a target curve for executing the preset action in real time according to target parameter information collected in real time during the target robot performing the preset action;

[0009] Determining whether the current moment is the landing moment of the target robot according to the target curve generated at the current moment and the standard curve for executing the preset action;

[0010] If so, the center of gravity of the target robot at the landing moment is adjusted according to the joint current information of the target robot at the landing moment, and the target robot is controlled to land according to the adjusted center of gravity.

[0011] Optionally, generating a target curve for executing the preset action in real time according to the collected target parameter information includes:

[0012] Generating in real time an actual joint angle curve for executing the preset action according to the joint angle information at each moment in the execution process acquired in real time;

[0013] According to the joint current information at each moment in the execution process acquired in real time, an actual joint current curve for executing the preset action is generated in real time.

[0014] Optionally, the determining whether the current moment is before the landing moment of the target robot according to the target curve generated at the current moment and the standard curve for executing the preset action comprises:

[0015] The experimental robot is controlled to perform the preset action, and a standard curve for performing the preset action is generated according to the target parameter information collected during the execution process. The experimental robot is a real robot or a simulated robot, and the experimental robot has the same structure as the target robot; the standard curve for performing the preset action includes: a standard joint angle curve for performing the preset action, and a standard joint current curve for performing the preset action.

[0016] Optionally, determining whether the current moment is the landing moment of the target robot according to the target curve generated at the current moment and the standard curve for executing the preset action includes:

[0017] Comparing the actual joint angle curve generated at the current moment with the standard joint angle curve to determine whether the actual joint angle curve has a sudden change at the current moment;

[0018] If so, and the sudden change of the actual joint current curve meets the preset condition, the current moment is determined to be the landing moment of the target robot.

[0019] Optionally, adjusting the center of gravity of the target robot at the landing moment according to the joint current information of the target robot at the landing moment, and controlling the target robot to land according to the adjusted center of gravity, comprises:

[0020] Determine the landing foot of the target robot according to the change information of the joint angular velocity and the change information of the joint angle of the target robot in the time period of the landing moment;

[0021] Determining the joint torque of the target robot according to the joint current information of the target robot at the landing moment;

[0022] Determining a contact point of the sole of the landing foot according to the joint torque;

[0023] The target robot is controlled to adjust its center of gravity to the target position indicated by the foot contact point, and lands according to the adjusted center of gravity.

[0024] Optionally, determining the landing foot of the target robot according to the change information of the joint angular velocity and the change information of the joint angle of the target robot in the time period of the landing moment includes:

[0025] If the joint angular velocity of the target robot decreases during the period of the landing moment, and the joint angle meets the first mutation condition, then it is determined that the landing sole of the target robot is the forefoot;

[0026] If the joint angular velocity of the target robot increases during the period of the landing moment, and the joint angle meets the second mutation condition, it is determined that the landing sole of the target robot is the rear sole.

[0027] Optionally, generating a standard curve for executing the preset action according to the target parameter information collected during the execution process includes:

[0028] Using a preset joint friction model, the target parameter information is corrected to obtain parameter information under different wear states;

[0029] The standard curves under different wear states are generated according to the parameter information under different wear states.

[0030] Optionally, it also includes:

[0031] If the actual joint angle curve suddenly changes at the current moment, and the sudden change of the actual joint current curve does not meet the preset conditions, the landing moment of the target robot is re-determined based on the comparison result of the actual joint angle curve with the standard joint angle curve.

[0032] In a second aspect, an embodiment of the present application further provides a robot footfall detection device, including: a generation module, a determination module and a control module;

[0033] The generating module is used to control the target robot to perform a preset action, and to generate a target curve for performing the preset action in real time according to the target parameter information collected in real time during the process of the target robot performing the preset action;

[0034] The determination module is used to determine whether the current moment is the landing moment of the target robot according to the target curve generated at the current moment and the standard curve for executing the preset action;

[0035] The control module is used to adjust the center of gravity of the target robot at the landing moment according to the joint current information of the target robot at the landing moment, and control the target robot to land according to the adjusted center of gravity.

[0036] Optionally, the generating module is specifically used to generate in real time an actual joint angle curve for executing the preset action according to the joint angle information at each moment in the execution process acquired in real time;

[0037] According to the joint current information at each moment in the execution process acquired in real time, an actual joint current curve for executing the preset action is generated in real time.

[0038] Optionally, the generation module is also used to control the experimental robot to perform the preset action, and generate a standard curve for executing the preset action based on the target parameter information collected during the execution process. The experimental robot is a real robot or a simulated robot, and the experimental robot has the same structure as the target robot; the standard curve for executing the preset action includes: a standard joint angle curve for executing the preset action, and a standard joint current curve for executing the preset action.

[0039] Optionally, the determination module is specifically used to compare the actual joint angle curve generated at the current moment with the standard joint angle curve to determine whether the actual joint angle curve has a sudden change at the current moment;

[0040] If so, and the sudden change of the actual joint current curve meets the preset condition, the current moment is determined to be the landing moment of the target robot.

[0041] Optionally, the control module is specifically used to determine the landing foot of the target robot according to the change information of the joint angular velocity and the change information of the joint angle of the target robot in the time period of the landing moment;

[0042] Determining the joint torque of the target robot according to the joint current information of the target robot at the landing moment;

[0043] Determining a contact point of the sole of the landing foot according to the joint torque;

[0044] The target robot is controlled to adjust its center of gravity to the target position indicated by the foot contact point, and lands according to the adjusted center of gravity.

[0045] Optionally, the determination module is specifically configured to determine that the landing sole of the target robot is the forefoot if the joint angular velocity of the target robot decreases during the period of the landing moment and the joint angle meets the first mutation condition;

[0046] If the joint angular velocity of the target robot increases during the period of the landing moment, and the joint angle meets the second mutation condition, it is determined that the landing sole of the target robot is the rear sole.

[0047] Optionally, the generating module is specifically used to adopt a preset joint friction model to modify the target parameter information to obtain parameter information under different wear states;

[0048] The standard curves under different wear states are generated according to the parameter information under different wear states.

[0049] Optionally, the determination module is also used to re-determine the landing time of the target robot based on the comparison result of the actual joint angle curve with the standard joint angle curve if the actual joint angle curve suddenly changes at the current moment and the sudden change of the actual joint current curve does not meet the preset conditions.

[0050] In a third aspect, an embodiment of the present application provides a computer device, comprising: a processor, a storage medium and a bus, wherein the storage medium stores machine-readable instructions executable by the processor. When the computer device is running, the processor and the storage medium communicate through the bus, and the processor executes the machine-readable instructions to perform the steps of the method provided in the first aspect.

[0051] In a fourth aspect, an embodiment of the present application provides a computer-readable storage medium having a computer program stored thereon, and when the computer program is executed by a processor, the steps of the method provided in the first aspect are executed.

[0052] The beneficial effects of this application are:

[0053] The present application provides a robot landing detection method, device, computer equipment and storage medium. The method generates a target curve at each moment when the target robot is performing a preset action, and analyzes the target curve and the standard curve generated at the current moment at each moment, so as to accurately determine the landing moment of the target robot. Among them, the robot's landing moment detection can be quickly realized by curve analysis without changing the robot's sole structure, thereby improving the detection efficiency of the landing moment. In addition, based on the detected landing moment, the center of gravity is adjusted through the joint current information at the landing moment, so that the robot can be controlled to land more smoothly in a more expected state, thereby improving the accuracy of the robot's landing control. BRIEF DESCRIPTION OF THE DRAWINGS

[0054] In order to more clearly illustrate the technical solutions of the embodiments of the present application, the drawings required for use in the embodiments will be briefly introduced below. It should be understood that the following drawings only show certain embodiments of the present application and therefore should not be regarded as limiting the scope. For ordinary technicians in this field, other related drawings can be obtained based on these drawings without paying creative work.

[0055] Figure 1 A schematic diagram of a flow chart of a robot foot landing detection method provided in an embodiment of the present application;

[0056] Figure 2 A schematic diagram of a flow chart of another robot foot landing detection method provided in an embodiment of the present application;

[0057] Figure 3 A flowchart of another robot foot placement detection method provided in an embodiment of the present application;

[0058] Figure 4 A schematic diagram of a joint angle curve provided in an embodiment of the present application;

[0059] Figure 5 A schematic diagram of a flow chart of another robot foot landing detection method provided in an embodiment of the present application;

[0060] Figure 6 A flowchart of another robot foot placement detection method provided in an embodiment of the present application;

[0061] Figure 7 A schematic diagram of a robot foot landing detection device improved in an embodiment of the present application;

[0062] Figure 8 A schematic diagram of the structure of a computer device provided in an embodiment of the present application. DETAILED DESCRIPTION

[0063] To make the purpose, technical scheme and advantages of the embodiments of the present application clearer, the technical scheme in the embodiments of the present application will be clearly and completely described below in conjunction with the drawings in the embodiments of the present application. It should be understood that the drawings in the present application only serve the purpose of explanation and description and are not used to limit the scope of protection of the present application. In addition, it should be understood that the schematic drawings are not drawn in real proportion. The flowchart used in this application shows the operations implemented according to some embodiments of the present application. It should be understood that the operations of the flowchart can be implemented out of sequence, and the steps without logical context can be reversed in order or implemented simultaneously. In addition, those skilled in the art can add one or more other operations to the flowchart under the guidance of the content of the present application, or remove one or more operations from the flowchart.

[0064] In addition, the described embodiments are only a part of the embodiments of the present application, rather than all the embodiments. The components of the embodiments of the present application described and shown in the drawings here can be arranged and designed in various configurations. Therefore, the following detailed description of the embodiments of the present application provided in the drawings is not intended to limit the scope of the application claimed for protection, but merely represents the selected embodiments of the present application. Based on the embodiments of the present application, all other embodiments obtained by those skilled in the art without making creative work belong to the scope of protection of the present application.

[0065] In order to enable those skilled in the art to use the contents of this application, the following implementation is given in conjunction with the specific application scenario of "controlling a robot to perform walking movements". For those skilled in the art, the general principles defined herein can be applied to other embodiments and application scenarios without departing from the spirit and scope of this application. Although this application is mainly described around controlling a robot to perform walking movements, it should be understood that this is only an exemplary embodiment. This application can be applied to any other scenario. For example, this application can be used to control a robot to perform going up and down stairs, stepping on the spot, etc.

[0066] It should be noted that the term "comprising" will be used in the embodiments of the present application to indicate the existence of the features declared thereafter, but does not exclude the addition of other features.

[0067] Figure 1 A flowchart of a robot foot placement detection method provided in an embodiment of the present application; the execution subject of this method can be a processor that comes with the robot, or a processor or controller that is independent of the robot. Figure 1 As shown, the method may include:

[0068] S101, controlling a target robot to execute a preset action, and generating a target curve for executing the preset action in real time according to target parameter information collected in real time during the process of the target robot executing the preset action.

[0069] The target robot here can be any robot that is actually running in the actual application scenario. For example, in the scenario of controlling the robot to walk, the target robot can be any robot that can perform walking actions. Or in the scenario of training the robot to simulate walking, the target robot can be any robot to be trained.

[0070] This embodiment takes the scenario of training a robot to land smoothly as an example. When the robot is walking, in order to make it land smoothly, it is necessary to detect the landing state of the robot, and adjust the operating state of the robot according to the landing state so that it can land smoothly. The landing state may include: landing time, location of the landing point, etc.

[0071] Optionally, the target robot can be controlled to perform a preset action, where the preset action may be walking, and during the process of the target robot performing the preset action, target parameter information of the target robot when performing the preset action is collected in real time, where the parameter information may refer to the joint operation parameters of the target robot.

[0072] It is worth noting that the target parameter information here is collected in real time, that is, it is collected at every moment, and the process of generating the target curve for executing the preset action is also performed in real time, that is, the target curve for executing the preset action at the current moment can be generated at every moment. In this case, a part of the target curve generated for executing the preset action at the next moment will overlap with the target curve generated for executing the preset action at the previous moment.

[0073] S102: Determine whether the current moment is the landing moment of the target robot according to the target curve generated at the current moment and the standard curve for executing the preset action.

[0074] In some embodiments, at any moment, it can be determined whether the current moment is the landing moment of the target robot based on the target curve generated at the current moment and the standard curve for executing the preset action.

[0075] That is, in the process of the target robot executing the preset action, the target curve of the current moment must be generated at each moment, and each moment must be analyzed based on the target curve generated at the current moment and the standard curve for executing the preset action to determine whether the current moment is the landing moment of the target robot. In this way, each landing moment of the target robot in the process of executing the preset action can be accurately detected to avoid missed detection.

[0076] It is worth noting here that the standard curve for executing the preset action is different from the target curve for executing the preset action. The standard curve may not be collected in real time, but a complete curve generated in advance, that is, a complete standard curve is directly generated after the preset action is executed.

[0077] S103: If yes, adjusting the center of gravity of the target robot at the landing moment according to the joint current information of the target robot at the landing moment, and controlling the target robot to land according to the adjusted center of gravity.

[0078] If the current moment is the landing moment of the target robot, that is, the feet of the target robot are about to touch the ground at this moment, at this time, the center of gravity of the target robot at the landing moment can be adjusted according to the joint current information of the target robot at the landing moment (that is, according to the current moment), and the robot can be controlled to land according to the adjusted center of gravity, so that the target robot can land smoothly in a state that is more in line with expectations.

[0079] It is worth noting that when the current moment is detected as the landing moment, the center of gravity adjustment operation is immediately performed according to the center of gravity adjustment method at that moment, and the target robot is controlled to land smoothly. When a new landing moment is detected afterwards, the center of gravity is also adjusted at the new landing moment in the same way to control the target robot to land smoothly.

[0080] This method can adjust the robot by performing real-time detection in real time so that it can land smoothly at each landing moment, so that the entire operation process meets the expected operation state.

[0081] In summary, the robot landing detection method provided in this embodiment generates a target curve at each moment when the target robot is executing a preset action, and analyzes the target curve and the standard curve generated at the current moment at each moment, so as to accurately determine the landing moment of the target robot. Among them, the robot's landing moment detection can be quickly realized by curve analysis without changing the robot's sole structure, thereby improving the detection efficiency of the landing moment. In addition, based on the detected landing moment, the center of gravity is adjusted through the joint current information at the landing moment, so that the robot can be controlled to land more smoothly in a more expected state, thereby improving the accuracy of the robot's landing control.

[0082] Figure 2 A flow chart of another robot foot landing detection method provided in an embodiment of the present application; Optionally, in step S101, a target curve for executing a preset action is generated in real time according to the collected target parameter information, which may include:

[0083] S201. Generate in real time an actual joint angle curve for executing a preset action according to the joint angle information at each moment in the execution process collected in real time.

[0084] For any moment, the actual joint angle curve for executing the preset action at the current moment is generated based on the joint angle information collected at the current moment and combined with the actual joint angle curve generated at the previous moment.

[0085] That is to say, at each moment (except the first moment), an actual joint angle curve for executing the preset action at that moment is generated.

[0086] For example: if it is the first moment, there is only joint angle information at one moment, and the curve cannot be generated; if it is the second moment, the actual joint angle curve for executing the preset action at the second moment can be generated based on the joint angle information collected at the second moment and the joint angle information collected at the first moment; and if it is the third moment, the actual joint angle curve for executing the preset action at the third moment can be generated based on the joint angle information collected at the third moment and the actual joint angle curve for executing the preset action at the second moment that has been generated. And so on, the actual joint angle curves for executing the preset action at each moment are obtained.

[0087] S202 , generating in real time an actual joint current curve for executing a preset action according to the joint current information at each moment in the execution process acquired in real time.

[0088] Similarly, the joint current curve is similar. For any moment, the actual joint current curve for executing the preset action at the current moment is generated based on the joint current information collected at the current moment and the actual joint current curve generated at the previous moment.

[0089] That is to say, at each moment (except the first moment), an actual joint current curve for performing the preset action at that moment is generated.

[0090] For example: if it is the first moment, there is only joint current information at one moment, and the curve cannot be generated; if it is the second moment, the actual joint current curve for performing the preset action at the second moment can be generated based on the joint current information collected at the second moment and the joint current information collected at the first moment; and if it is the third moment, the actual joint current curve for performing the preset action at the third moment can be generated based on the joint current information collected at the third moment and the actual joint current curve for performing the preset action at the second moment that has been generated. And so on, the actual joint current curves for performing the preset action at each moment are obtained.

[0091] It is worth noting that the "joints" in the joint angle information and the joint current information here refer to the foot joints of the target robot, and in this embodiment, may refer to the ankle joints.

[0092] Optionally, in step S102, based on the target curve generated at the current moment and the standard curve for performing the preset action, it is determined whether the current moment is before the landing moment of the target robot. The method may also include: controlling the experimental robot to perform the preset action, and generating a standard curve for performing the preset action based on the target parameter information collected during the execution process. The experimental robot is a real robot or a simulated robot, and the experimental robot and the target robot have the same structure; the standard curve for performing the preset action includes: a standard joint angle curve for performing the preset action, and a standard joint current curve for performing the preset action.

[0093] In one achievable manner, the generation of the standard curve may be generated by executing a preset action on the experimental robot. Similarly, controlling the experimental robot to execute the preset action specifically controls the experimental robot to execute the same preset action as the target robot, and collects target parameter information of the experimental robot at each moment during the execution of the preset action to generate a standard curve for executing the preset action. The target parameter information here may also include: joint angle information and joint current information.

[0094] It should be noted that the structure of the experimental robot is the same as that of the target robot, so that a standard curve can be obtained for analyzing the landing of the target robot. When the structure of the target robot changes, the structure of the experimental robot must also change.

[0095] The generated standard curve includes a standard joint angle curve for executing a preset action and a standard joint current curve for executing a preset action. In the process of controlling the experimental robot to execute the preset action, a standard joint angle curve and a standard joint current curve are generated as a whole.

[0096] Optionally, in actual applications, the target curve generated for executing the preset action may not be limited to only including the actual joint angle curve and the actual joint current curve, but may also be an actual joint angular velocity curve, etc. When the type of the generated target curve changes, the generated standard curve must also be consistent with the type of the target curve.

[0097] Figure 3 A flowchart of another robot landing detection method provided in an embodiment of the present application; Optionally, in step S102, determining whether the current moment is the landing moment of the target robot according to the target curve generated at the current moment and the standard curve for performing the preset action may include:

[0098] S301, comparing the actual joint angle curve generated at the current moment with the standard joint angle curve to determine whether the actual joint angle curve has a sudden change at the current moment.

[0099] Figure 4A schematic diagram of a joint angle curve provided in an embodiment of the present application. Assuming that the current moment is moment a, the actual joint angle curve generated at the current moment and the standard joint angle curve are plotted in a coordinate system to facilitate curve analysis and comparison.

[0100] Based on the drawn actual joint angle curve and the standard joint angle curve, it is possible to clearly and conveniently determine directly from the comparison result whether the actual joint angle curve has a sudden change at the current moment. It can refer to whether the actual joint angle curve has a sudden change compared with the standard joint angle curve at the current moment.

[0101] In some embodiments, judgment may not be made by curve comparison, but can be made directly based on the actual joint angle at the current moment and the standard joint angle at the current moment. If the difference between the actual joint angle at the current moment and the standard joint angle is greater than a preset value, it can also be judged that the current moment is a data mutation moment.

[0102] S302: If yes, and the sudden change of the actual joint current curve meets the preset condition, the current moment is determined as the landing moment of the target robot.

[0103] Continuing to explain in the form of curve comparison, when the above judgment shows that the actual joint angle curve at the current moment has undergone a sudden change, a secondary judgment can be further made based on the actual joint current curve at the current moment and the standard joint current curve. Here, the actual joint current curve at the current moment and the standard joint current curve can also be drawn in the same coordinate system to facilitate curve comparison.

[0104] Optionally, when it is determined that the actual joint current curve at the current moment has also undergone a mutation compared to the standard joint current curve, and the mutation meets the expected mutation (it may mean that the difference between the actual joint current at the current moment and the standard joint current meets the expected difference), the previous moment can be determined as the landing moment of the target robot.

[0105] Figure 5 A flow chart of another robot landing detection method provided by an embodiment of the present application; optionally, in step S103, adjusting the center of gravity of the target robot at the landing moment according to the joint current information of the target robot at the landing moment, and controlling the robot to land according to the adjusted center of gravity may include:

[0106] S501. Determine the landing foot of the target robot according to the change information of the joint angular velocity and the change information of the joint angle of the target robot during the time period of the landing moment.

[0107] In some embodiments, it is possible to first determine which sole of the target robot landed on based on information on changes in the joint angular velocity and joint angle of the target robot within a small time range before and after the landing moment.

[0108] Alternatively, the landing sole of the target robot may be determined based on information on changes in the joint angular velocity and joint angle of the target robot at the landing moment compared to a moment before the landing moment.

[0109] S502: Determine the joint torque of the target robot according to the joint current information of the target robot at the landing moment.

[0110] Optionally, the joint torque of the target robot can be indirectly measured based on the joint current information of the target robot at the moment of landing, wherein when the joint current increases, the joint torque also increases accordingly. Specifically, the joint torque can be calculated by referring to the existing joint torque calculation method through the joint current information.

[0111] S503: Determine the contact point of the sole of the landing foot according to the joint torque.

[0112] Optionally, according to the calculated joint torque, the contact point between the sole of the target robot's foot and the ground when the robot lands, that is, the sole contact point, can be determined.

[0113] Generally, the greater the joint torque, the farther the foot contact point is from the center of the foot. Conversely, the smaller the joint torque, the closer the foot contact point is to the center of the foot.

[0114] S504: Control the target robot to adjust its center of gravity to the target position indicated by the foot contact point, and land according to the adjusted center of gravity.

[0115] Based on the position of the foot contact point determined above, the center of gravity of the target robot can be adjusted so that the target robot can land stably.

[0116] In one achievable manner, the center of gravity of the target robot can be adjusted to a position close to the point where the sole of the foot touches the ground. In a preferred manner, the center of gravity of the target robot can be adjusted to a position close to and directly above the point where the sole of the foot touches the ground. The adjustment of the center of gravity of the target robot can be achieved by controlling the movement of other joints of the upper body of the target robot.

[0117] Optionally, in step S501, determining the landing foot of the target robot according to the change information of the joint angular velocity and the change information of the joint angle of the target robot in the time period of the landing moment may include:

[0118] If the joint angular velocity of the target robot decreases during the period of the landing moment, and the joint angle meets the first mutation condition, it is determined that the landing sole of the target robot is the forefoot.

[0119] In some embodiments, when the joint angular velocity of the target robot decreases during the time period of the landing moment, and the joint angle satisfies the first mutation condition, it can be determined that the landing sole of the target robot is the forefoot. The first mutation condition can refer to the upward acceleration mutation of the joint angle, which can be directly seen from the joint angle curve.

[0120] If the joint angular velocity of the target robot increases during the period of the landing moment, and the joint angle meets the second mutation condition, it is determined that the landing sole of the target robot is the back sole.

[0121] In some embodiments, when it is determined that the joint angular velocity of the target robot increases during the period of the landing moment, and the joint angle satisfies the second mutation condition, it can be determined that the landing sole of the target robot is the back sole. The second mutation condition may refer to a downward acceleration mutation of the joint angle.

[0122] Figure 6 A flowchart of another robot foot landing detection method provided in an embodiment of the present application; Optionally, in the above steps, generating a standard curve for executing a preset action according to the target parameter information collected during the execution process may include:

[0123] S601. Using a preset joint friction model, correct the target parameter information to obtain parameter information under different wear states.

[0124] Taking into account that the robot is affected by some external friction during operation, which will affect the generated standard curve, the generated standard curve does not remain unchanged. The preset joint friction model can be used to correct the target parameter information generated during the experimental robot's execution of the preset action to obtain parameter information under different wear conditions.

[0125] Optionally, some possible friction factors may be used to adjust the target parameter information to obtain parameter information under different wear conditions.

[0126] S602: Generate standard curves under different wear states according to parameter information under different wear states.

[0127] Optionally, for the parameter information under each wear state, a standard curve under each wear state may be generated, including: a standard joint angle curve under each wear state and a standard joint current curve under each wear state.

[0128] In actual use, when comparing the actual joint angle (or current) curve of the target robot at the current moment with the standard joint angle (or current) curve, it is necessary to select a standard curve that matches the wear condition of the current target robot for comparison based on the wear condition of the target robot at the current moment.

[0129] Optionally, the method of the present application may also include: if the actual joint angle curve suddenly changes at the current moment, and the sudden change of the actual joint current curve does not meet the preset conditions, then the landing time of the target robot is re-determined based on the comparison result of the actual joint angle curve with the standard joint angle curve.

[0130] In some embodiments, when judging the landing moment, if the actual joint angle curve changes suddenly at the current moment, but the sudden change of the actual joint current curve does not meet the preset conditions, then if the current moment is judged as the landing moment, the possibility of misjudgment is relatively high.

[0131] Optionally, continuous judgment can be made based on the comparison results of the actual joint angle curve at a later moment with the standard joint angle curve, and a new landing time can be re-determined based on the mutation of the actual joint angle curve, until the mutations of the actual joint angle curve and the actual joint current curve meet the requirements, then it can be determined that the current moment is the landing time.

[0132] By combining comparative analysis of multiple curves, the accuracy of the determined landing moment can be improved.

[0133] Optionally, this method can also be applied to footed robots going up and down stairs. When the height of the stairs is unknown, this method can detect the height of the stairs and calculate the actual height that the robot's feet should raise or lower through an algorithm, making going up and down stairs smoother and more controllable.

[0134] In summary, the robot landing detection method provided in the embodiment of the present application generates a target curve at each moment when the target robot is executing a preset action, and analyzes the target curve and the standard curve generated at the current moment at each moment, so as to accurately determine the landing moment of the target robot. Among them, the robot's landing moment detection can be quickly realized by curve analysis without changing the robot's sole structure, thereby improving the detection efficiency of the landing moment. In addition, based on the detected landing moment, the center of gravity is adjusted through the joint current information at the landing moment, so that the robot can be controlled to land more smoothly in a more expected state, thereby improving the accuracy of the robot's landing control.

[0135] The following describes the devices, equipment, storage media, etc. used to execute the robot footstep detection method provided in this application. The specific implementation process and technical effects are mentioned above and will not be repeated below.

[0136] Figure 7 The schematic diagram of a robot foot detection device improved in the embodiment of the present application, the functions implemented by the robot foot detection device correspond to the steps performed by the above method. The device can be understood as the above processor or controller, or as a component independent of the above processor that implements the functions of the present application under the control of the processor, such as Figure 7 As shown, the device may include: a generating module 710, a determining module 720 and a controlling module 730;

[0137] A generating module 710 is used to control the target robot to perform a preset action, and to generate a target curve for performing the preset action in real time according to the target parameter information collected in real time during the process of the target robot performing the preset action;

[0138] A determination module 720 is used to determine whether the current moment is the landing moment of the target robot according to the target curve generated at the current moment and the standard curve for executing the preset action;

[0139] The control module 730 is used to adjust the center of gravity of the target robot at the landing moment according to the joint current information of the target robot at the landing moment, and control the robot to land according to the adjusted center of gravity.

[0140] Optionally, the generating module 710 is specifically used to generate in real time an actual joint angle curve for executing a preset action according to the joint angle information at each moment of the execution process acquired in real time;

[0141] According to the joint current information at each moment in the execution process acquired in real time, the actual joint current curve for executing the preset action is generated in real time.

[0142] Optionally, the generation module 710 is also used to control the experimental robot to perform preset actions, and generate a standard curve for executing the preset actions based on the target parameter information collected during the execution process. The experimental robot is a real robot or a simulated robot, and the experimental robot and the target robot have the same structure; the standard curve for executing the preset action includes: a standard joint angle curve for executing the preset action, and a standard joint current curve for executing the preset action.

[0143] Optionally, the determination module 720 is specifically used to compare the actual joint angle curve generated at the current moment with the standard joint angle curve to determine whether the actual joint angle curve has a sudden change at the current moment;

[0144] If so, and the sudden change of the actual joint current curve meets the preset conditions, the current moment is determined to be the landing moment of the target robot.

[0145] Optionally, the control module 730 is specifically configured to determine the landing foot of the target robot according to the change information of the joint angular velocity and the change information of the joint angle of the target robot in the time period of the landing moment;

[0146] Determine the joint torque of the target robot according to the joint current information of the target robot at the moment of landing;

[0147] According to the joint torque, determine the contact point of the sole of the foot when landing;

[0148] The target robot is controlled to adjust its center of gravity to the target position indicated by the point where the sole touches the ground, and lands according to the adjusted center of gravity.

[0149] Optionally, the determination module 720 is specifically configured to determine that the landing sole of the target robot is the forefoot if the joint angular velocity of the target robot decreases during the period of the landing moment and the joint angle meets the first mutation condition;

[0150] If the joint angular velocity of the target robot increases during the period of the landing moment, and the joint angle meets the second mutation condition, it is determined that the landing sole of the target robot is the back sole.

[0151] Optionally, the generating module 710 is specifically used to modify the target parameter information using a preset joint friction model to obtain parameter information under different wear states;

[0152] According to the parameter information under different wear conditions, standard curves under different wear conditions are generated.

[0153] Optionally, the determination module 720 is also used to re-determine the landing time of the target robot based on the comparison result between the actual joint angle curve and the standard joint angle curve if the actual joint angle curve suddenly changes at the current moment and the sudden change of the actual joint current curve does not meet the preset conditions.

[0154] The above-mentioned device is used to execute the method provided by the aforementioned embodiment, and its implementation principle and technical effect are similar, which will not be repeated here.

[0155] The above modules may be one or more integrated circuits configured to implement the above methods, such as one or more application specific integrated circuits (ASIC), or one or more digital singnal processors (DSP), or one or more field programmable gate arrays (FPGA). For another example, when a module is implemented in the form of a processing element scheduling program code, the processing element may be a general-purpose processor, such as a central processing unit (CPU) or other processor that can call program code. For another example, these modules may be integrated together and implemented in the form of a system-on-a-chip (SOC).

[0156] The above modules can be connected or communicated with each other via a wired connection or a wireless connection. The wired connection may include a metal cable, an optical cable, a hybrid cable, etc., or any combination thereof. The wireless connection may include a connection in the form of a LAN, a WAN, Bluetooth, a ZigBee, or NFC, or any combination thereof. Two or more modules may be combined into a single module, and any one module may be divided into two or more units. Those skilled in the art will clearly understand that for the convenience and simplicity of description, the specific working process of the system and device described above can refer to the corresponding process in the method embodiment, and will not be repeated in this application.

[0157] Figure 8 A schematic diagram of the structure of a computer device provided in an embodiment of the present application, the device may include: a processor 801 and a memory 802.

[0158] The memory 802 is used to store programs, and the processor 801 calls the programs stored in the memory 802 to execute the above method embodiment. The specific implementation method and technical effect are similar and will not be repeated here.

[0159] Among them, the memory 802 stores program code, and when the program code is executed by the processor 801, the processor 801 executes various steps in the robot foothold detection method according to various exemplary embodiments of the present application described in the above "Exemplary Method" section of this specification.

[0160] Processor 801 can be a general-purpose processor, such as a central processing unit (CPU), a digital signal processor (DigitalSignal Processor, DSP), an application-specific integrated circuit (Application Specific Integrated Circuit, ASIC), a field programmable gate array (Field Programmable Gate Array, FPGA) or other programmable logic devices, discrete gates or transistor logic devices, discrete hardware components, and can implement or execute the various methods, steps and logic block diagrams disclosed in the embodiments of the present application. A general-purpose processor can be a microprocessor or any conventional processor, etc. The steps of the method disclosed in conjunction with the embodiments of the present application can be directly embodied as a hardware processor to be executed, or a combination of hardware and software modules in the processor can be executed.

[0161] The memory 802 is a non-volatile computer-readable storage medium that can be used to store non-volatile software programs, non-volatile computer executable programs and modules. The memory may include at least one type of storage medium, such as a flash memory, a hard disk, a multimedia card, a card-type memory, a random access memory (Random Access Memory, RAM), a static random access memory (Static Random Access Memory, SRAM), a programmable read-only memory (Programmable Read Only Memory, PROM), a read-only memory (Read Only Memory, ROM), an electrically erasable programmable read-only memory (Electrically Erasable Programmable Read-Only Memory, EEPROM), a magnetic memory, a disk, an optical disk, etc. The memory is any other medium that can be used to carry or store a desired program code in the form of an instruction or data structure and can be accessed by a computer, but is not limited thereto. The memory 802 in the embodiment of the present application can also be a circuit or any other device that can realize a storage function, for storing program instructions and / or data.

[0162] Optionally, the present application also provides a program product, such as a computer-readable storage medium, including a program, which is used to execute the above method embodiment when executed by a processor.

[0163] In the several embodiments provided in the present application, it should be understood that the disclosed devices and methods can be implemented in other ways. For example, the device embodiments described above are only schematic. For example, the division of the units is only a logical function division. There may be other division methods in actual implementation, 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.

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

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

[0166] The above-mentioned integrated unit implemented in the form of a software functional unit can be stored in a computer-readable storage medium. The above-mentioned software functional unit is stored in a storage medium, including a number of instructions for a computer device (which can be a personal computer, a server, or a network device, etc.) or a processor (English: processor) to perform some steps of the method described in each embodiment of the present application. The aforementioned storage medium includes: U disk, mobile hard disk, read-only memory (English: Read-Only Memory, abbreviated: ROM), random access memory (English: Random Access Memory, abbreviated: RAM), disk or optical disk and other media that can store program codes.

Claims

1. A robot footfall detection method, characterized in that: include: Controlling the target robot to perform a preset action, and generating a target curve for executing the preset action in real time according to target parameter information collected in real time during the target robot performing the preset action; The target curve includes: an actual joint angle curve and an actual joint current curve; Determine whether the current moment is the landing moment of the target robot according to the target curve generated at the current moment and the standard curve for executing the preset action; the standard curve for executing the preset action includes: a standard joint angle curve for executing the preset action and a standard joint current curve for executing the preset action; If yes, adjusting the center of gravity of the target robot at the landing moment according to the joint current information of the target robot at the landing moment, and controlling the target robot to land according to the adjusted center of gravity; The step of determining whether the current moment is the landing moment of the target robot according to the target curve generated at the current moment and the standard curve for executing the preset action comprises: Comparing the actual joint angle curve generated at the current moment with the standard joint angle curve to determine whether the actual joint angle curve has a sudden change at the current moment; If yes, and the sudden change of the actual joint current curve meets the preset condition, then the current moment is determined to be the landing moment of the target robot; The step of adjusting the center of gravity of the target robot at the landing moment according to the joint current information of the target robot at the landing moment, and controlling the target robot to land according to the adjusted center of gravity, comprises: Determine the landing foot of the target robot according to the change information of the joint angular velocity and the change information of the joint angle of the target robot in the time period of the landing moment; Determining the joint torque of the target robot according to the joint current information of the target robot at the landing moment; Determining a contact point of the sole of the landing foot according to the joint torque; The target robot is controlled to adjust its center of gravity to the target position indicated by the foot contact point, and lands according to the adjusted center of gravity.

2. The method according to claim 1, characterized in that Generating a target curve for executing the preset action in real time according to the collected target parameter information includes: Generating in real time an actual joint angle curve for executing the preset action according to the joint angle information at each moment in the execution process acquired in real time; According to the joint current information at each moment in the execution process acquired in real time, an actual joint current curve for executing the preset action is generated in real time.

3. The method according to claim 2, characterized in that The step of determining whether the current moment is before the landing moment of the target robot according to the target curve generated at the current moment and the standard curve for executing the preset action comprises: The experimental robot is controlled to execute the preset action, and a standard curve for executing the preset action is generated according to the target parameter information collected during the execution process. The experimental robot is a real robot or a simulation robot, and the experimental robot has the same structure as the target robot.

4. The method according to claim 1, characterized in that The step of determining the landing foot of the target robot according to the change information of the joint angular velocity and the change information of the joint angle of the target robot in the time period of the landing moment includes: If the joint angular velocity of the target robot decreases during the period of the landing moment, and the joint angle meets the first mutation condition, then it is determined that the landing sole of the target robot is the forefoot; If the joint angular velocity of the target robot increases during the period of the landing moment, and the joint angle meets the second mutation condition, it is determined that the landing sole of the target robot is the rear sole.

5. The method according to claim 3, characterized in that: The step of generating a standard curve for executing the preset action according to the target parameter information collected during the execution process includes: Using a preset joint friction model, the target parameter information is corrected to obtain parameter information under different wear states; The standard curves under different wear states are generated according to the parameter information under different wear states.

6. The method according to claim 1, characterized in that Also includes: If the actual joint angle curve suddenly changes at the current moment, and the sudden change of the actual joint current curve does not meet the preset conditions, the landing moment of the target robot is re-determined based on the comparison result of the actual joint angle curve with the standard joint angle curve.

7. A robot foot landing detection device, characterized in that: include: Generation module, determination module and control module; A generating module, used to control the target robot to perform a preset action, and to generate a target curve for performing the preset action in real time according to target parameter information collected in real time during the process of the target robot performing the preset action; The target curve includes: an actual joint angle curve and an actual joint current curve; A determination module, used to determine whether the current moment is the landing moment of the target robot according to the target curve generated at the current moment and the standard curve for executing the preset action; the standard curve for executing the preset action includes: a standard joint angle curve for executing the preset action and a standard joint current curve for executing the preset action; a control module, for adjusting the center of gravity of the target robot at the landing moment according to the joint current information of the target robot at the landing moment, and controlling the target robot to land according to the adjusted center of gravity; The determination module is specifically used to compare the actual joint angle curve generated at the current moment with the standard joint angle curve to determine whether the actual joint angle curve has a sudden change at the current moment; If yes, and the sudden change of the actual joint current curve meets the preset condition, then the current moment is determined to be the landing moment of the target robot; The control module is specifically used to determine the landing foot of the target robot according to the change information of the joint angular velocity and the change information of the joint angle of the target robot in the time period of the landing moment; Determining the joint torque of the target robot according to the joint current information of the target robot at the landing moment; Determining a contact point of the sole of the landing foot according to the joint torque; The target robot is controlled to adjust its center of gravity to the target position indicated by the foot contact point, and lands according to the adjusted center of gravity.

8. A computer device, characterized in that: include: A processor, a storage medium and a bus, wherein the storage medium stores program instructions executable by the processor, and when the computer device is running, the processor communicates with the storage medium through the bus, and the processor executes the program instructions to perform the steps of the robot footfall detection method as described in any one of claims 1 to 6.

9. A computer-readable storage medium, characterized in that: The storage medium stores a computer program, and when the computer program is executed by the processor, the steps of the robot footfall detection method according to any one of claims 1 to 6 are executed.

Citation Information

Patent Citations

  • Foot-type robot motion control method and device, equipment and medium

    CN112051797A

  • Robot swinging leg ground-falling detection method and device and robot

    CN112975966A