Method and device for observing length of hydraulic muscle of robot, robot and simulation system of robot

By setting up a static memory space in the physics engine to store the initial identification information of the muscle actuator, the problems of low system efficiency and crashes in the observation of hydraulic muscle length are solved, and efficient and stable observation of hydraulic muscle length is achieved.

CN121821377APending Publication Date: 2026-04-10WUHAN ZHENYOU TECHNOLOGY CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2026-01-21
Publication Date
2026-04-10

AI Technical Summary

Technical Problem

Existing technologies for observing the length of hydrodynamic muscles have the risk of low system operating efficiency and system crashes, especially the system crash problem caused by the query function returning a null pointer when the muscle driver is unnamed.

Method used

By setting up a static memory space in the physics engine to store the initial identification information of the muscle driver, and storing it in the static memory space after calculating the target muscle length, the target identification information is generated to export the muscle length report, avoiding memory reallocation and ensuring the uniqueness and availability of the identification information.

Benefits of technology

The efficiency of the physics engine was improved, the stability of the system was ensured, system crashes were avoided, and efficient observation of the length of hydraulic muscles was achieved.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN121821377A_ABST
    Figure CN121821377A_ABST
Patent Text Reader

Abstract

The invention provides a hydraulic muscle length observation method and device of a robot, the robot and a simulation system of the robot, and the method comprises the steps: inputting simulation parameters of the robot into a physical engine based on multi-body dynamics, and obtaining a hydraulic muscle simulation model of the robot; acquiring initial identification information of the muscle driver; storing the initial identification information in a static memory space preset by a physical engine; determining a currently running target muscle driver in the muscle drivers, and calculating the muscle length of a target simulated tendon corresponding to the target muscle driver by the physical engine; storing the muscle length in a static memory space, and generating target identification information of the target muscle driver in the static memory space according to the muscle length and the initial identification information; and exporting the target identification information from the static memory space, and generating a muscle length report of the target simulated tendon. According to the invention, the operation efficiency of the physical engine can be improved while the length observation of the hydraulic muscle is realized.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of robot control technology, and in particular to a method, device, robot and simulation system for observing the length of hydraulic muscles in a robot. Background Technology

[0002] The current method for measuring the length of a hydraulic muscle has the following technical limitations: 1. Each time the hydraulic muscle length is called, memory reallocation is required, resulting in low system efficiency; 2. When the driver of the hydraulic muscle is unnamed, the related query function returns a null pointer, which can cause the system to crash.

[0003] Therefore, a new method for observing the length of hydrodynamic muscles in robots is urgently needed to solve the above problems. Summary of the Invention

[0004] In view of this, this application provides a method, device, robot and drive system for observing the length of hydraulic muscles in a robot, which can improve the operating efficiency of the physics engine and ensure the stable operation of the physics engine while realizing the observation of the length of hydraulic muscles.

[0005] A first aspect of this application provides a method for observing the length of a robot's hydraulic muscles, comprising: inputting simulation parameters of the robot into a physics engine based on multibody dynamics to obtain a hydraulic muscle simulation model of the robot, wherein the hydraulic muscle simulation model includes multiple simulated tendons, each of which is configured with a muscle actuator, the muscle actuator being used to drive the simulated tendon to move; obtaining initial identification information of the muscle actuator, wherein each muscle actuator corresponds to a unique initial identification information; storing the initial identification information in a static memory space preset by the physics engine; during motion simulation of the hydraulic muscle simulation model, determining the currently running target muscle actuator among the muscle actuators, wherein the physics engine calculates the muscle length of the target simulated tendon corresponding to the target muscle actuator; storing the muscle length in the static memory space, generating target identification information of the target muscle actuator in the static memory space based on the muscle length and the initial identification information; exporting the target identification information from the static memory space to generate a muscle length report of the target simulated tendon.

[0006] In one possible implementation, before the physics engine calculates the muscle length of the target simulated tendon corresponding to the target muscle driver, the method further includes: comparing the number of target muscle drivers with a preset threshold; if the number of target muscle drivers is less than or equal to the preset threshold, the physics engine calculates the muscle length; if the number of target muscle drivers is greater than the preset threshold, the physics engine determines a final number of target muscle drivers equal to the preset threshold and calculates the muscle length of the final simulated tendon corresponding to the final muscle driver.

[0007] In one possible implementation, the initial identification information is a string; the step of generating the target identification information of the target muscle driver in the static memory space based on the muscle length and the initial identification information includes: concatenating the string with the muscle length to obtain the target identification information.

[0008] In one possible implementation, after generating the muscle length report of the target simulated tendon, the method further includes: deleting the muscle length from the target identification information and restoring it to the string.

[0009] In one possible implementation, before the physics engine calculates the muscle length of the target simulated tendon corresponding to the target muscle actuator, the method further includes: detecting the model pointer of the physics engine, the parameter pointer of the hydraulic muscle simulation model, and the storage area pointer of the static memory space; if any one of the model pointer, the parameter pointer, and the storage area pointer is detected to be empty, the physics engine stops calculating the muscle length; the physics engine calculates the muscle length of the target simulated tendon corresponding to the target muscle actuator, including: if the model pointer, the parameter pointer, and the storage area pointer are all not empty, the physics engine calculates the muscle length.

[0010] In one possible implementation, the physics engine is the MuJoCo physics engine.

[0011] In one possible implementation, the physics engine includes a name query interface; obtaining the initial identification information of the muscle driver includes: calling the name query interface to query the first name of the muscle driver; if the first name is found, using the first name as the initial identification information; if the first name is not found, generating the initial identification information according to a preset identification generation rule.

[0012] Secondly, embodiments of this application also provide a device for observing the length of a robot's hydraulic muscle, comprising: an input module, an acquisition module, a storage module, a determination module, a generation module, and an export module; the input module is used to input the simulation parameters of the robot's hydraulic muscle model into a physics engine based on multibody dynamics to obtain a hydraulic muscle simulation model of the robot's hydraulic muscle model, wherein the hydraulic muscle simulation model includes multiple simulated tendons, each of which is configured with a muscle actuator, the muscle actuator being used to drive the simulated tendon to move; the acquisition module is used to acquire the initial identification information of the muscle actuator, wherein each muscle actuator corresponds to a unique initial identification information; The storage module is used to store the initial identification information in the static memory space preset by the physics engine; the determination module is used to determine the target muscle driver currently running in the muscle driver during the motion simulation of the hydraulic muscle simulation model, wherein the physics engine calculates the muscle length of the target simulated tendon corresponding to the target muscle driver; the generation module is used to store the muscle length in the static memory space, and generate the target identification information of the target muscle driver in the static memory space according to the muscle length and the initial identification information; the export module is used to export the target identification information from the static memory space to generate a muscle length report of the target simulated tendon.

[0013] Thirdly, embodiments of this application also provide a robot and its simulation system. The robot includes multiple tendons; the simulation system includes a physics engine based on multibody dynamics and a processor; the physics engine is used to receive simulation parameters of the robot and obtain a hydraulic muscle simulation model of the robot, wherein the hydraulic muscle simulation model includes multiple simulated tendons corresponding to the tendons, each simulated tendon is configured with a muscle actuator, and the muscle actuator is used to drive the simulated tendon to move; the processor is used to obtain initial identification information of the muscle actuator, wherein each muscle actuator corresponds to a unique initial identification information; the processor is further used to... The initial identification information is stored in the static memory space preset by the physics engine; during the motion simulation of the hydraulic muscle simulation model by the physics engine, the physics engine determines the target muscle driver currently running in the muscle driver and calculates the muscle length of the target simulated tendon corresponding to the target muscle driver; the processor is also used to store the muscle length in the static memory space, and generate the target identification information of the target muscle driver in the static memory space according to the muscle length and the initial identification information; the processor is also used to export the target identification information from the static memory space to generate a muscle length report of the target simulated tendon.

[0014] In some embodiments, the physics engine calculates the muscle length of the target simulated tendon corresponding to the target muscle actuator, including: the physics engine comparing the number of target muscle actuators with a preset threshold; if the number of target muscle actuators is less than or equal to the preset threshold, the physics engine calculates the muscle length; if the number of target muscle actuators is greater than the preset threshold, the physics engine determines a final muscle actuator with a number equal to the preset threshold among the target muscle actuators, and calculates the muscle length of the final simulated tendon corresponding to the final muscle actuator.

[0015] Compared with related technologies, the embodiments of this application have at least the following advantages: By acquiring the initial identification information of the muscle actuators, and ensuring that each muscle actuator corresponds to a unique initial identification information, the availability of the identification of each muscle actuator is guaranteed. This ensures that target identification information can be generated based on the initial identification information, avoiding the situation where "the physics engine cannot find the identification of the muscle actuator, leading to system crash," and ensuring the stable operation of the physics engine. By storing the initial identification information in the static memory space preset by the physics engine, and storing the muscle length in the static memory space after the physics engine calculates the muscle length of the target simulated tendon corresponding to the target muscle actuator, the target identification information of the target muscle actuator can be generated in the static memory space based on the muscle length and the initial identification information. The target identification information can then be exported from the static memory space to generate a muscle length report of the target simulated tendon, enabling the observation of the length of the robot's hydraulic muscles. It is worth noting that because a static memory space is pre-set in the physics engine, the physics engine does not need to reallocate memory each time target identification information is generated and exported. The physics engine can directly perform the generation and export operations of target identification information in the static memory space, improving the operating efficiency of the physics engine.

[0016] The technical effects achieved by the second and third aspects mentioned above are similar to those achieved by the corresponding technical means in the first aspect, and will not be repeated here. Attached Figure Description

[0017] Figure 1 A flowchart illustrating the steps of a method for observing the hydraulic muscle length of a robot according to an embodiment of this application; Figure 2 Another flowchart of the method for observing the hydraulic muscle length of a robot provided in an embodiment of this application; Figure 3 A schematic diagram of the functional modules of a robot's hydraulic muscle length observation device provided in an embodiment of this application. Detailed Implementation

[0018] To better understand the above-mentioned objectives, features, and advantages of this application, the application will be described in detail below with reference to the accompanying drawings and specific embodiments. It should be noted that, unless otherwise specified, the embodiments and features described in these embodiments can be combined with each other.

[0019] The following description sets forth many specific details to provide a full understanding of this application. The described embodiments are only some, not all, of the embodiments of this application.

[0020] Unless otherwise defined, all technical and scientific terms used herein have the same meaning as commonly understood by one of ordinary skill in the art to which this application belongs. The terminology used herein in the specification of this application is for the purpose of describing particular embodiments only and is not intended to be limiting of this application.

[0021] It should be further noted that, in this document, the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such a process, method, article, or apparatus. Without further limitation, an element defined by the phrase "comprising one..." does not exclude the presence of other identical elements in the process, method, article, or apparatus that includes that element.

[0022] In this application, "at least one" means one or more, and "more than one" means two or more. "And / or" describes the relationship between related objects, indicating that three relationships can exist. For example, A and / or B can represent: A alone, A and B simultaneously, or B alone, where A and B can be singular or plural. The terms "first," "second," "third," "fourth," etc. (if present) in the specification, claims, and drawings of this application are used to distinguish similar objects, not to describe a specific order or sequence.

[0023] In the embodiments of this application, the terms "exemplary" or "for example" are used to indicate examples, illustrations, or descriptions. Any embodiment or design described as "exemplary" or "for example" in the embodiments of this application should not be construed as being more preferred or advantageous than other embodiments or designs. Specifically, the use of terms such as "exemplary" or "for example" is intended to present the relevant concepts in a specific manner.

[0024] For ease of understanding, some concepts related to the embodiments of this application are illustrated and explained by way of example for reference.

[0025] MuJoCo Physics Engine: A high-performance physics engine focused on robotics, biomechanics, and machine learning. Its core design integrates innovative technologies from dynamics simulation and contact mechanics. It pioneered the combination of generalized coordinates from robotics with modern contact dynamics optimization methods, solving soft contact constraints through convex optimization. This avoids the instability of traditional spring-damped models, significantly improving the accuracy and stability of simulations of complex joint systems. It supports tendon modeling (3D path constraints, entanglement simulation) and general actuator models (unified modeling of motors / hydraulics / biological muscles), meeting diverse physical interaction needs.

[0026] Hydraulic muscle: This is a soft actuator that uses hydraulic or pneumatic pressure to drive flexible materials, simulating the contraction of biological muscles. Its core principle is to use fluid pressure to deform an elastic structure and generate mechanical motion. It consists of an elastic inner liner (rubber / silicone) and a braided sleeve. After fluid is injected, the internal pressure increases, and the sleeve's constraint causes axial contraction and outputs tensile force. The deformation rate can reach 20%-30%.

[0027] Muscle actuators: These are biomimetic actuators that mimic the contraction and relaxation mechanisms of biological muscles. They are mainly divided into two major directions: biological muscle drive principles and artificial muscle technology. The core goal is to provide robots, medical devices, and other devices with compliant and efficient power output that is close to that of biological muscles.

[0028] Please refer to Figure 1 , Figure 1 This is a flowchart illustrating one embodiment of the robot's hydraulic muscle length observation method provided in this application. The order of steps in this flowchart can be changed, and some steps can be omitted, depending on different requirements.

[0029] It should be noted that the robot hydraulic muscle length observation method of this application embodiment can be applied in a physics engine. The executing entity can be the robot hydraulic muscle length observation device. For example, when performing motion simulation on a robot, the robot's simulation parameters can be imported into the physics engine for simulation using the robot hydraulic muscle length observation device, and the length of the hydraulic muscle can be derived during the simulation process, thus realizing the observation of the robot's hydraulic muscle length. Of course, the robot hydraulic muscle length observation method of this application embodiment can also be applied to other scenarios requiring the observation of robot hydraulic muscle length, and this application does not specifically limit its application in this regard.

[0030] The specific process of this embodiment is as follows: Figure 1 As shown, it includes the following steps: S101: Input the robot's simulation parameters into the physics engine based on multibody dynamics to obtain the robot's hydrodynamic muscle simulation model.

[0031] Specifically, the hydraulic muscle simulation model includes multiple simulated tendons, each of which is equipped with a muscle actuator, which is used to drive the simulated tendon to move.

[0032] In some embodiments, the physics engine is the MuJoCo physics engine.

[0033] S102, obtain the initial identification information of the muscle actuator, wherein each muscle actuator corresponds to a unique initial identification information.

[0034] In some embodiments, the initial identification information is a string, which is generated using a standardized string format that includes the muscle driver's digital ID, thereby creating a unique and readable initial identification information for each muscle driver and establishing a unified naming convention.

[0035] In some embodiments, the physics engine includes a name query interface; obtaining initial identification information of the muscle actuator includes: calling the name query interface to query the first name of the muscle actuator; if the first name is found, using the first name as the initial identification information; if the first name is not found, generating the initial identification information according to a preset identification generation rule.

[0036] This method prioritizes the use of pre-defined names with good readability (i.e., the first name), while ensuring that a unique identifier is still available when the pre-defined name does not exist, thus ensuring a 100% success rate for name resolution.

[0037] It should be noted that this embodiment does not specifically limit the type of identifier generation rule, and can be set according to actual needs.

[0038] S103 stores the initial identification information in the static memory space preset by the physics engine.

[0039] In some embodiments, a fixed-size, persistent static character array space is created in the physics engine's memory. This avoids repeated memory allocation and deallocation operations each time the function is called (i.e., when generating target identification information), thereby reducing memory fragmentation and allocation overhead in the physics engine and improving operational efficiency.

[0040] S104, during the motion simulation of the hydraulic muscle simulation model, the target muscle actuator currently running in the muscle actuator is determined, wherein the physics engine calculates the muscle length of the target simulated tendon corresponding to the target muscle actuator.

[0041] In some embodiments, the length information of all types of actuators is accessed through a unified, predefined data field in the physics engine data structure, thereby obtaining the muscle length of the target simulated tendon.

[0042] In some embodiments, before the physics engine calculates the muscle length of the target simulated tendon corresponding to the target muscle actuator, the method further includes: detecting the model pointer of the physics engine, the parameter pointer of the hydraulic muscle simulation model, and the storage area pointer of the static memory space; if any one of the model pointer, parameter pointer, and storage area pointer is detected to be empty, the physics engine stops calculating the muscle length; the physics engine calculates the muscle length of the target simulated tendon corresponding to the target muscle actuator, including: if the model pointer, parameter pointer, and storage area pointer are all detected to be non-empty, the physics engine calculates the muscle length.

[0043] Specifically, before the physics engine calls the function to calculate muscle length, it performs independent validity checks on the passed model pointer, parameter pointer, and storage pointer. If any critical pointer is null, it immediately exits safely to avoid subsequent operations causing the physics engine to crash.

[0044] It should be noted that how to determine the target muscle driver currently running in the muscle driver is described in detail in subsequent embodiments, and will not be repeated here to avoid repetition.

[0045] S105, store the muscle length in the static memory space, and generate the target identification information of the target muscle driver in the static memory space based on the muscle length and the initial identification information.

[0046] In some embodiments, the string is concatenated with the muscle length to obtain the target identification information.

[0047] S106, export the target identification information from the static memory space to generate a muscle length report of the target simulated tendon.

[0048] In some embodiments, the physics engine has a printing function that integrates all the steps required for the printing function (parameter validation, memory management, data acquisition, and formatted output) into a single objective function. This allows the engine to operate independently of external functional modules, reducing coupling between system components and improving the independence and maintainability of the function.

[0049] In some embodiments, after generating a muscle length report of the target simulated tendon, the method further includes: deleting the muscle length from the target identification information and restoring it to a string.

[0050] To facilitate understanding, the following is a detailed explanation of how this embodiment generates a muscle length report for the target simulated tendon: 1. Validate the input parameters (such as robot simulation parameters) at the beginning of the objective function; check whether the memory allocation is successful; provide two sets of logic for actuator name acquisition: primary logic (i.e., calling the name query interface to query the first name of the muscle actuator, and backup logic (i.e., generating initial identification information according to the preset identification generation rules).

[0051] 2. Based on the number of muscle drivers in the current physics engine, dynamically calculate the required memory size and make precise allocations. After the target function completes, immediately release the allocated memory in the static memory space (i.e., delete the muscle length portion of the target identifier information).

[0052] By allocating memory on demand, the waste or insufficiency of fixed memory allocation is avoided. Combined with a forced release mechanism, a closed-loop management of the memory lifecycle is formed to prevent memory leaks.

[0053] 3. The output muscle length report includes a precise timestamp, a length value with a specific number of decimal places, and uses structured markers (such as separators at the beginning and end of the report) to organize the output content

[0064] The length value is reserved to 4 decimal places.

[0054] By generating clear, easy-to-read reports that include complete contextual information, users can intuitively analyze the state changes of the actuator.

[0055] Compared with related technologies, the embodiments of this application have at least the following advantages: By acquiring the initial identification information of the muscle actuators, and ensuring that each muscle actuator corresponds to a unique initial identification information, the availability of the identification of each muscle actuator is guaranteed. This ensures that target identification information can be generated based on the initial identification information, avoiding the situation where "the physics engine cannot find the identification of the muscle actuator, leading to system crash," and ensuring the stable operation of the physics engine. By storing the initial identification information in the static memory space preset by the physics engine, and storing the muscle length in the static memory space after the physics engine calculates the muscle length of the target simulated tendon corresponding to the target muscle actuator, the target identification information of the target muscle actuator can be generated in the static memory space based on the muscle length and the initial identification information. The target identification information can then be exported from the static memory space to generate a muscle length report of the target simulated tendon, enabling the observation of the length of the robot's hydraulic muscles. It is worth noting that because a static memory space is pre-set in the physics engine, the physics engine does not need to reallocate memory each time target identification information is generated and exported. The physics engine can directly perform the generation and export operations of target identification information in the static memory space, improving the operating efficiency of the physics engine.

[0056] Please refer to Figure 2 , Figure 2This is a flowchart illustrating one embodiment of the hydrodynamic muscle length observation method for a robot according to this application. The order of steps in this flowchart can be changed, and some steps can be omitted, depending on different requirements. This hydrodynamic muscle length observation method for a robot can be applied to the aforementioned hydrodynamic muscle length observation device for robots, but is not limited thereto, and this application does not limit it in this regard.

[0057] This embodiment is a further improvement on the aforementioned embodiment. The main improvement is that, in this embodiment, before the physics engine calculates the muscle length of the target simulated tendon corresponding to the target muscle driver, it compares the number of target muscle drivers with a preset threshold and takes the smaller value as the actual number of muscle lengths obtained. This method ensures that the generated target identification information will never exceed the pre-allocated static memory space capacity, fundamentally preventing static memory space overflow vulnerabilities and enhancing the security of the physics engine.

[0058] The specific process of this embodiment is as follows: Figure 2 As shown, it includes the following steps: S201: Input the robot's simulation parameters into a physics engine based on multibody dynamics to obtain a simulation model of the robot's hydrodynamic muscles.

[0059] S202, Obtain the initial identification information of the muscle actuators, wherein each muscle actuator corresponds to a unique initial identification information.

[0060] S203 stores the initial identification information in the static memory space preset by the physics engine.

[0061] S204, During the motion simulation of the hydraulic muscle simulation model, the target muscle actuator currently in operation is determined in the muscle actuator, and the number of target muscle actuators is compared with a preset threshold.

[0062] In some embodiments, the size of the preset threshold is not specifically limited, and can be set according to actual needs.

[0063] S205, when the number of target muscle drivers is less than or equal to a preset threshold, the physics engine calculates the muscle length.

[0064] S206, if the number of target muscle actuators is greater than a preset threshold, the physics engine determines the number of final muscle actuators that is equal to the preset threshold and calculates the muscle length of the final simulated tendon corresponding to the final muscle actuator.

[0065] Specifically, regarding S204 to S206, by dynamically limiting the maximum number of items that can be acquired, static memory space overflow attacks or illegal memory access caused by loop out-of-bounds errors are prevented.

[0066] In some embodiments, a counter independent of the loop index is used, incrementing only after a muscle length is successfully acquired. This ensures that the function return value accurately reflects the actual number of actuators successfully acquired, supports partial acquisition scenarios, and guarantees data consistency.

[0067] S207, store the muscle length in the static memory space, and generate the target identification information of the target muscle driver in the static memory space based on the muscle length and the initial identification information.

[0068] S208, export the target identification information from the static memory space and generate a muscle length report of the target simulated tendon.

[0069] Compared with related technologies, the embodiments of this application have at least the following advantages: By acquiring the initial identification information of the muscle actuators, and ensuring that each muscle actuator corresponds to a unique initial identification information, the availability of the identification of each muscle actuator is guaranteed. This ensures that target identification information can be generated based on the initial identification information, avoiding the situation where "the physics engine cannot find the identification of the muscle actuator, leading to system crash," and ensuring the stable operation of the physics engine. By storing the initial identification information in the static memory space preset by the physics engine, and storing the muscle length in the static memory space after the physics engine calculates the muscle length of the target simulated tendon corresponding to the target muscle actuator, the target identification information of the target muscle actuator can be generated in the static memory space based on the muscle length and the initial identification information. The target identification information can then be exported from the static memory space to generate a muscle length report of the target simulated tendon, enabling the observation of the length of the robot's hydraulic muscles. It is worth noting that because a static memory space is pre-set in the physics engine, the physics engine does not need to reallocate memory each time target identification information is generated and exported. The physics engine can directly perform the generation and export operations of target identification information in the static memory space, improving the operating efficiency of the physics engine.

[0070] Based on the same idea as the robot hydraulic muscle length observation method in the above embodiments, this application also provides a robot hydraulic muscle length observation device, which can be used to perform the above-described robot hydraulic muscle length observation method. For ease of explanation, the structural schematic diagram of the robot hydraulic muscle length observation device embodiment only shows the parts related to the embodiments of this application. Those skilled in the art will understand that the illustrated structure does not constitute a limitation on the device, and it may include more or fewer components than shown, or combine certain components, or have different component arrangements.

[0071] like Figure 3As shown, the robot's hydraulic muscle length observation device 30 includes an input module 301, an acquisition module 302, a storage module 303, a determination module 304, a generation module 305, and an export module 306. In some embodiments, the above modules can be programmable software instructions stored in memory and executable by a processor. It is understood that in other embodiments, the above modules can also be program instructions or firmware embedded in the processor.

[0072] Input module 301 is used to input the simulation parameters of the robot's hydraulic muscle model into a physics engine based on multibody dynamics to obtain the hydraulic muscle simulation model of the robot's hydraulic muscle model. The hydraulic muscle simulation model includes multiple simulated tendons, and each simulated tendon is equipped with a muscle actuator. The muscle actuator is used to drive the simulated tendon to move. The acquisition module 302 is used to acquire the initial identification information of the muscle actuator, wherein each muscle actuator corresponds to a unique initial identification information; Storage module 303 is used to store the initial identification information in the static memory space preset by the physical engine; The determination module 304 is used to determine the target muscle actuator currently running in the muscle actuator during the motion simulation of the hydraulic muscle simulation model, wherein the physics engine calculates the muscle length of the target simulated tendon corresponding to the target muscle actuator. The generation module 305 is used to store the muscle length in the static memory space and generate target identification information of the target muscle driver in the static memory space according to the muscle length and the initial identification information; The export module 306 is used to export the target identification information from the static memory space and generate a muscle length report of the target simulated tendon.

[0073] The robot hydraulic muscle length observation device 30 provided in the above embodiments can realize the technical solutions described in the above embodiments of the robot hydraulic muscle length observation method. The specific implementation principles of each module or unit can be found in the corresponding content in the above embodiments of the robot hydraulic muscle length observation method, which will not be repeated here.

[0074] This application also provides a robot and its simulation system, the robot including: multiple tendons; The simulation system includes: a physics engine based on multibody dynamics and a processor; The physics engine is used to receive the simulation parameters of the robot and obtain the hydraulic muscle simulation model of the robot. The hydraulic muscle simulation model includes multiple simulated tendons corresponding to the tendons. Each simulated tendon is equipped with a muscle actuator, which is used to drive the simulated tendon to move. The processor is used to obtain the initial identification information of the muscle actuator, wherein each muscle actuator corresponds to a unique initial identification information; The processor is also used to store the initial identification information in the static memory space preset by the physics engine; During the motion simulation of the hydraulic muscle simulation model by the physics engine, the physics engine determines the target muscle driver currently running in the muscle driver and calculates the muscle length of the target simulated tendon corresponding to the target muscle driver. The processor is also configured to store the muscle length in the static memory space, and generate target identification information of the target muscle driver in the static memory space based on the muscle length and the initial identification information; The processor is also used to export the target identification information from the static memory space and generate a muscle length report of the target simulated tendon.

[0075] In some embodiments, the physics engine calculates the muscle length of the target simulated tendon corresponding to the target muscle actuator, including: the physics engine comparing the number of target muscle actuators with a preset threshold; if the number of target muscle actuators is less than or equal to the preset threshold, the physics engine calculates the muscle length; if the number of target muscle actuators is greater than the preset threshold, the physics engine determines a final muscle actuator with a number equal to the preset threshold among the target muscle actuators, and calculates the muscle length of the final simulated tendon corresponding to the final muscle actuator.

[0076] The above provides a detailed description of the method, device, robot, and drive system for observing the hydraulic muscle length of a robot provided in this application. Specific examples have been used to illustrate the principles and implementation methods of this application. The descriptions of the above embodiments are only for the purpose of helping to understand the method and core ideas of this application. At the same time, for those skilled in the art, there will be changes in the specific implementation methods and application scope based on the ideas of this application. Therefore, the content of this specification should not be construed as a limitation of this application.

Claims

1. A method of observing the length of a hydraulic muscle of a robot, characterized by, The method comprises the following steps: inputting simulation parameters of a robot into a physical engine based on multi-body dynamics to obtain a hydraulically actuated muscle simulation model of the robot, wherein the hydraulically actuated muscle simulation model comprises a plurality of simulation tendons, each of the simulation tendons is configured with a muscle driver, and the muscle driver is used to drive the simulation tendon to move; obtaining initial identification information of the muscle driver, wherein each of the muscle drivers corresponds to a unique initial identification information; storing the initial identification information in a static memory space of the physical engine; during the process of simulating the movement of the hydraulically actuated muscle simulation model, determining a target muscle driver which is currently running in the muscle driver, wherein the physical engine calculates a muscle length of a target simulation tendon corresponding to the target muscle driver; storing the muscle length in the static memory space, and generating target identification information of the target muscle driver according to the muscle length and the initial identification information in the static memory space; deriving the target identification information from the static memory space to generate a muscle length report of the target simulation tendon.

2. The hydraulic muscle length observation method of the robot according to claim 1, characterized by, Before the physical engine calculates the muscle length of the target simulation tendon corresponding to the target muscle driver, the method further comprises the following steps: comparing the number of the target muscle drivers with a preset threshold, and in the case that the number of the target muscle drivers is less than or equal to the preset threshold, the physical engine calculates the muscle length; in the case that the number of the target muscle drivers is greater than the preset threshold, the physical engine determines a final muscle driver in which the number of the target muscle drivers is equal to the preset threshold, and calculates a muscle length of a final simulation tendon corresponding to the final muscle driver.

3. The hydraulic muscle length observation method of the robot according to claim 1, characterized by, The initial identification information is a string; the step of generating the target identification information of the target muscle driver according to the muscle length and the initial identification information in the static memory space comprises the following step: splicing the string and the muscle length to obtain the target identification information.

4. The hydraulic muscle length observation method of the robot according to claim 3, characterized by, After the muscle length report of the target simulation tendon is generated, the method further comprises the following step: deleting the muscle length in the target identification information to restore the string.

5. The hydraulic muscle length observation method of the robot according to claim 1, characterized by, Before the physical engine calculates the muscle length of the target simulation tendon corresponding to the target muscle driver, the method further comprises the following steps: detecting a model pointer of the physical engine, a parameter pointer of the hydraulically actuated muscle simulation model and a storage area pointer of the static memory space; in the case that any one of the model pointer, the parameter pointer and the storage area pointer is empty, the physical engine stops calculating the muscle length; the step that the physical engine calculates the muscle length of the target simulation tendon corresponding to the target muscle driver comprises the following step: in the case that none of the model pointer, the parameter pointer and the storage area pointer is empty, the physical engine calculates the muscle length.

6. The hydraulic muscle length observation method of the robot according to claim 1, characterized by, The physical engine is a MuJoCo physical engine.

7. The hydraulic muscle length observation method of the robot according to any one of claims 1 to 6, characterized by, The physical engine comprises a name query interface; the step of obtaining the initial identification information of the muscle driver comprises the following steps: querying a first name of the muscle driver through the name query interface, and taking the first name as the initial identification information if the first name is queried; generating the initial identification information according to preset identification generation rules if the first name is not queried.

8. A device for observing the length of a robot's hydraulic muscle, characterized in that, comprise: an input module, an acquisition module, a storage module, a determination module, a generation module and an export module; the input module is configured to input simulation parameters of a robot hydraulic muscle model into a physical engine based on multi-body dynamics to obtain a hydraulic muscle simulation model of the robot hydraulic muscle model, wherein the hydraulic muscle simulation model comprises a plurality of simulation tendons, each of the simulation tendons is configured with a muscle driver, and the muscle driver is configured to drive the simulation tendon to move; the acquisition module is configured to acquire initial identification information of the muscle driver, wherein each of the muscle drivers corresponds to a unique initial identification information; the storage module is configured to store the initial identification information in a preset static memory space of the physical engine; the determination module is configured to determine a target muscle driver currently running in the muscle driver during motion simulation of the hydraulic muscle simulation model, wherein the physical engine calculates a muscle length of a target simulation tendon corresponding to the target muscle driver; the generation module is configured to store the muscle length in the static memory space, and generate target identification information of the target muscle driver in the static memory space according to the muscle length and the initial identification information; the export module is configured to export the target identification information from the static memory space to generate a muscle length report of the target simulation tendon.

9. A robot and a simulation system thereof, characterized by, the robot comprises a plurality of tendons; the simulation system comprises a physical engine based on multi-body dynamics and a processor; the physical engine is configured to receive simulation parameters of the robot to obtain a hydraulic muscle simulation model of the robot, wherein the hydraulic muscle simulation model comprises a plurality of simulation tendons corresponding to the tendons, each of the simulation tendons is configured with a muscle driver, and the muscle driver is configured to drive the simulation tendon to move; the processor is configured to acquire initial identification information of the muscle driver, wherein each of the muscle drivers corresponds to a unique initial identification information; the processor is further configured to store the initial identification information in a preset static memory space of the physical engine; during motion simulation of the hydraulic muscle simulation model by the physical engine, the physical engine determines a target muscle driver currently running in the muscle driver and calculates a muscle length of a target simulation tendon corresponding to the target muscle driver; the processor is further configured to store the muscle length in the static memory space and generate target identification information of the target muscle driver in the static memory space according to the muscle length and the initial identification information; The processor is further configured to export the target identification information from the static memory space, and generate a muscle length report of the target simulation tendon.

10. The robot and simulation system thereof according to claim 9, wherein, The physical engine calculates a muscle length of a target simulation tendon corresponding to the target muscle driver, including: The physical engine compares the number of target muscle drivers with a preset threshold, and in a case where the number of target muscle drivers is less than or equal to the preset threshold, the physical engine calculates the muscle length; In a case where the number of target muscle drivers is greater than the preset threshold, the physical engine determines a final muscle driver from the target muscle drivers in the determined number as the preset threshold, and calculates a muscle length of a final simulation tendon corresponding to the final muscle driver.