A method of constructing a robotic arm, electronic device, storage medium and product
Patent Information
- Application Number
- CN202611109987.X
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2026-07-23
- Publication Date
- 2026-10-16
AI Technical Summary
两类方法的优化目标均局限于仿真虚拟指标,缺乏对真实操作任务需求的反映
Smart Images

Figure CN122926652A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of robotics, and more specifically, to a method for constructing a robotic arm, electronic devices, storage media, and products in the field of robotics. Background Technology
[0002] Robotic arm design requires joint optimization of kinematics, dynamics, and structural characteristics. However, current robotic arm design is still mainly based on manual iteration, relying on engineers' experience to repeatedly weigh geometry, actuation, and manufacturability. This process is time-consuming and makes it difficult to systematically explore alternative configurations.
[0003] In recent years, automated design methods can be broadly categorized into two types: one is component-level geometry optimization, which refines the shape of individual parts while ignoring the overall system coupling; the other is system-level topology optimization, which coordinates the spatial layout of links while ignoring the structural deformation of individual components. Both methods are limited to simulation-based virtual indicators and lack a reflection of the requirements of real-world operational tasks. Summary of the Invention
[0004] This application provides a method, electronic device, storage medium, and product for constructing a robotic arm. The method can automatically generate a cage structure of complex links based on the link configuration and construct a robotic arm that meets the requirements of real-world operational tasks.
[0005] Firstly, a method for constructing a robotic arm is provided. This method includes: determining the configuration of each basic link in a basic link set; the configuration includes: straight links or bent links; constructing a cage structure for each basic link based on its configuration and the triangular mesh of each basic link; determining a target link assembly based on the basic link set; the target link assembly includes multiple basic links; deforming each basic link in the target link assembly based on the cage structure and deformation parameters of the basic links to obtain a deformed target link assembly; constructing a target robotic arm based on the deformed target link assembly and demonstration data; the demonstration data is used to demonstrate the target robotic arm's operational state when completing a target task.
[0006] In the above technical solution, the configuration of the basic link is determined, and a cage structure for the basic link is constructed based on the configuration. This achieves automatic construction of the cage structure for the link, and the cage structure constructed based on the configuration ensures that it can adapt to complex link shapes, avoiding the situation where relying solely on a simple cage structure predefined manually is difficult to adapt to complex link shapes. Deformation parameters are introduced, and after obtaining the cage structure, the basic link in the target link assembly can be deformed based on the cage structure and deformation parameters to obtain the deformed target link assembly. This allows for fine adjustment of the link entity contours of the robotic arm during the construction process. Combining real demonstration data and the deformed target link assembly, the target robotic arm is constructed, ensuring that the constructed robotic arm can meet the requirements of real-world operational tasks. Even non-expert engineers can quickly generate additively manufactured custom robotic arms based on actual task data.
[0007] In conjunction with the first aspect, in some possible implementations, a cage structure for each basic link is constructed based on the configuration of each basic link and the triangular mesh of each basic link. This includes: when the basic link configuration is a straight link, constructing a bounding box based on the vertex set in the triangular mesh of the straight link, and using the bounding box as the cage structure of the straight link; or when the basic link configuration is a bent link, dividing the vertex set of the bent link into multiple non-overlapping subsets based on the interface connection length of the bent link, constructing multiple bounding boxes based on the multiple non-overlapping subsets, and determining the cage structure of the bent link based on the multiple bounding boxes.
[0008] In the above technical solution, different methods are used to construct the cage structure for different linkage configurations. Straight linkages directly determine the boundary based on the vertex set to construct the bounding box, while curved linkages divide the interface length into subsets and construct the bounding box of each subset. This allows the cage construction to support a variety of complex linkage shapes.
[0009] Combining the first aspect and the above implementation methods, in some possible implementation methods, the deformed target link assembly includes multiple target links. Based on the deformed target link assembly and demonstration data, a target robotic arm is constructed, including: determining the set of physical properties of each target link based on the triangular mesh and cage structure of each target link in the deformed target link assembly; the set of physical properties includes the physical property parameters of the target links; and constructing the target robotic arm based on the deformed target link assembly, the set of physical properties of the deformed target link assembly, and demonstration data.
[0010] In the above technical solution, the physical property parameters of the target link are extracted based on the cage structure and triangular mesh of the deformed target link. This can effectively obtain the physical property parameters of the deformed target link. Based on the physical property parameters and demonstration data, the target robotic arm can be constructed, ensuring that the constructed robotic arm conforms to the real working conditions and can be put into practical use.
[0011] Combining the first aspect and the above implementation methods, in some possible implementation methods, a target robotic arm is constructed based on the deformed target link assembly, the set of physical properties of the deformed target link assembly, and demonstration data. This includes: determining the performance indicators and structural flexibility of the reference robotic arm corresponding to the deformed target link assembly based on the set of physical properties of the deformed target link assembly and demonstration data; calculating an evaluation value based on the performance indicators and structural flexibility, combined with a pre-constructed evaluation function, whereby the evaluation function represents the fusion result of the performance indicators and structural flexibility; and updating the deformation parameters of the target links included in the reference robotic arm based on the evaluation value to obtain the target robotic arm.
[0012] In the above technical solution, by combining performance indicators and structural flexibility calculation evaluation values to optimize deformation parameters, it is possible to reverse the optimization loss from the downstream and transmit the gradient back to the deformation parameters, thereby achieving automatic updating of deformation parameters. At the same time, the cage is bound to stiffness information, taking into account both geometric deformation and structural flexibility calculations, to obtain the target robotic arm. This ensures that the optimized robotic arm has significant improvements in various performance indicators and structural flexibility compared to the initial design, realizing an end-to-end differentiable link from cage geometry to rigid body dynamics. Stiffness constraints are explicitly effective during optimization, avoiding post-validation verification.
[0013] Combining the first aspect and the above implementation methods, in some possible implementation methods, the performance indicators include the driving torque of each joint in the reference manipulator, and the demonstration data includes the end-effector pose trajectory and the end-effector external force. The driving torque of each joint in the reference manipulator is determined in the following way: based on the end-effector pose trajectory, the joint trajectory of each joint in the reference manipulator is determined; based on the joint trajectory and the end-effector external force, a target demonstration dataset is constructed; based on the physical property set of the deformed target link assembly and the target demonstration dataset, the driving torque of each joint in the reference manipulator is determined.
[0014] In the above technical solution, the trajectory of each joint of the reference robotic arm corresponding to the deformed target link assembly is obtained by inverse kinematics of the end pose trajectory of the demonstration data, the end external force is integrated to construct complete target demonstration data, and the driving torque of each joint is reversed by matching the physical properties of the link. The driving torque that conforms to the demonstration data can be obtained, thereby directly transforming the mechanical requirements of the real task into the optimization target, which makes it easier to construct a target robotic arm that conforms to the real requirements based on the driving torque.
[0015] Combining the first aspect and the above implementation methods, in some possible implementation methods, the set of physical properties of the deformed target link assembly includes the mass, center of mass position, inertia tensor, translational offset, and rotation matrix of the target link; based on the set of physical properties of the deformed target link assembly and the target demonstration dataset, the driving torque of each joint in the reference manipulator is determined, including: constructing the kinematic link corresponding to the deformed target link assembly based on the translational offset and rotation matrix of the target link; the kinematic link represents the overall kinematic geometry link of the manipulator corresponding to the deformed target link assembly; based on the kinematic link, the target demonstration dataset, the mass, center of mass position, and inertia tensor of the target link are input into the pre-established dynamic equations to obtain the driving torque of each joint in the reference manipulator.
[0016] In the above technical solution, by inputting the target demonstration dataset and the mass, center of mass position and inertia tensor of the target link into the dynamic equation, the actual working load can be restored by integrating all load conditions such as self-weight, center of mass position, inertia and end force, and then the driving torque of each joint of the reference robotic arm can be accurately solved.
[0017] Combining the first aspect and the above implementation methods, in some possible implementation methods, the target link combination is determined based on the basic link set, including: performing combination enumeration based on the basic link set to obtain multiple link combinations, each link combination including multiple basic links; and filtering the multiple link combinations to obtain the target link combination.
[0018] In the above technical solution, multiple link combinations are obtained through combined enumeration, which can completely cover all feasible topologies generated by the parameterized extension of link morphology, ensuring the complete coverage of the design space traversal. After filtering out redundant link combinations, the target link combination is obtained. High-precision cage deformation, finite element and gradient fine optimization are carried out on only a small number of effective topologies, ensuring the calculation accuracy of mechanical and kinematic simulation evaluation. The combination of the two can solve the problem that the design space is huge after the parameterized extension of morphology, and it is difficult to simultaneously take into account the solution coverage and evaluation accuracy by using pure gradient optimization or global exhaustive search alone.
[0019] Combining the first aspect and the above implementation methods, in some possible implementation methods, screening multiple sets of link combinations to obtain a target link combination includes: identifying redundant link combinations that cannot perform the target task from multiple sets of link combinations, and removing the redundant link combinations from the multiple sets of link combinations to obtain at least one candidate link combination; for at least one candidate link combination, calculating the fitness of the candidate link combination to perform the target task; and determining the target link combination based on the fitness of at least one candidate link combination.
[0020] In the above technical solution, through two screenings, a large number of unqualified configurations are first quickly screened out by relying on low-cost geometric and kinematic indices, and then gradient optimization is carried out on the remaining candidates and fitness is calculated for selection. This can significantly reduce the computational power consumption of high-precision iterative simulation and take into account both screening efficiency and the comprehensive optimization performance of the final configuration.
[0021] Combining the first aspect and the above implementation methods, in some possible implementation methods, determining the target link combination based on the fitness of at least one candidate link combination includes: replacing the target link in at least one candidate link combination based on the fitness of at least one candidate link combination to obtain at least one reference link combination; using the reference link combination as a candidate link combination, and returning to execute replacing the target link in at least one candidate link combination based on the fitness of at least one candidate link combination to obtain at least one reference link combination, until returning to execute N times, where N is an integer greater than 1; and determining the target link combination based on the reference link combination obtained by the replacement.
[0022] In the above technical solution, the candidate link combination is evolved through multiple generations based on fitness. In each generation, the link is replaced to generate a new topology (i.e., the reference link combination). After N generations, the topology with the best fitness (i.e., the target link combination) is output. This can achieve directional and efficient optimization in a large link topology enumeration space, retain high-quality link configurations with great optimization potential and stable gradient iteration, and improve the performance of the target robotic arm.
[0023] Combining the first aspect and the above implementation methods, in some possible implementation methods, redundant link combinations that cannot perform the target task are identified from multiple link combinations. This includes: for each link combination, determining the arm length of the initial robotic arm corresponding to the link combination and the reachable workspace of the initial robotic arm; if the arm length of the initial robotic arm is not within the work range of the target task, the link combination is designated as a redundant link combination; if the links in the link combination will collide, the link combination is designated as a redundant link combination; if the pose point corresponding to the demonstration data is not within the maximum workspace of the initial robotic arm corresponding to the link combination, the link combination is designated as a redundant link combination.
[0024] In the above technical solution, multiple linkage combinations are initially screened by using various indicators such as arm length interval constraints, workspace coverage, and self-collision detection. This allows for the rapid elimination of redundant linkage combinations with assembly abnormalities, poor spatial adaptability, insufficient motion capability, and weak trajectory reproduction stability without conducting high-precision mechanical simulation and parameter optimization. This significantly reduces the number of candidate configurations to be optimized, effectively reducing the computational overhead of subsequent high-precision simulation and gradient optimization. At the same time, it ensures that the remaining candidate linkage combinations all have the basic motion and structural conditions to complete the target task, achieving a balance between full coverage of the enumeration design space and efficient and accurate pre-screening.
[0025] Combining the first aspect and the above implementation methods, in some possible implementation methods, for at least one candidate link combination, the fitness of the candidate link combination in performing the target task is calculated, including: adjusting the deformation parameters of the target link in the candidate link combination in K steps to obtain the end-effector trajectory of the candidate robotic arm corresponding to the candidate link combination after each adjustment step; determining the trajectory gradient corresponding to each adjustment step based on the end-effector trajectory of the candidate robotic arm corresponding to the candidate link combination after each adjustment step and the end-effector trajectory of the candidate robotic arm corresponding to the candidate link combination before adjustment; determining the trajectory loss magnitude based on the end-effector trajectory of the candidate robotic arm corresponding to the candidate link combination after K steps of adjustment; obtaining the gradient stability parameter based on the trajectory gradient corresponding to each adjustment step; and obtaining the fitness based on the trajectory loss magnitude and the gradient stability parameter.
[0026] In the above technical solution, by adjusting the deformation parameters in K steps, the loss trajectory and trajectory amplitude are obtained. Based on the loss trajectory, the trajectory loss amplitude, which measures the optimization potential of the topology, can be calculated. Based on the trajectory amplitude, the gradient stability parameter, which measures the consistency of the optimization direction, can be calculated. Based on these two parameters, the fitness is determined to screen candidate link combinations. This can simultaneously take into account the topology optimization potential and optimization convergence stability, and can accurately screen out high-quality link configurations with large parameter tuning space and no oscillation during the iteration process, thereby reducing the overhead of invalid simulation and gradient optimization calculation.
[0027] Combining the first aspect and the above implementation methods, in some possible implementation methods, based on the cage structure and deformation parameters of the basic links, each basic link in the target link assembly is deformed to obtain the deformed target link assembly. This includes: determining the first weight of each basic link in the target link assembly based on the cage structure and triangular mesh of each basic link; determining the second weight of each basic link in the target link assembly based on the cage structure and tetrahedral mesh of each basic link; and deforming each basic link in the target link assembly based on the first weight, the second weight, and the deformation parameters to obtain the deformed target link assembly.
[0028] In the above technical solution, the deformation of the cage structure can be controlled by the calculated weights and deformation parameters, which can generate complex and varied target link configurations. The weights can ensure that the triangular mesh and tetrahedral mesh of the deformed target link deform synchronously and do not exceed the deformed cage structure.
[0029] Combining the first aspect and the above implementation methods, in some possible implementation methods, the tetrahedral mesh is determined in the following way: the trihedral mesh of each basic link in the basic link set is determined; the triangular mesh of each basic link is tetrahedralized to obtain the tetrahedral mesh of each basic link.
[0030] Combining the first aspect and the above implementation methods, in some possible implementation methods, determining the configuration of each basic link in the basic link set includes: for each basic link in the basic link set, determining the motor axis normal vector of the two motors associated with the basic link; if the motor axis normal vectors of the two motors are equal, determining the configuration of the basic link as a straight link; if the motor axis normal vectors of the two motors are not equal, determining the configuration of the basic link as a bent link.
[0031] In the above technical solution, the configuration of the basic link can be automatically determined by comparing whether the normal vectors of the motor shafts at both ends of the basic link are equal. This facilitates the automatic construction of the cage structure of the link based on the link configuration, reduces the workload of manual labeling and classification of the link library, and can better adapt to the scenario of automatically constructing the target robotic arm.
[0032] Secondly, an apparatus for constructing a robotic arm is provided, comprising: a first determining module for determining the configuration of each basic link in a set of basic links; the configuration includes: straight links or bent links; a first constructing module for constructing a cage structure for each basic link based on the configuration of each basic link and the triangular mesh of each basic link; a second determining module for determining a target link combination based on the set of basic links; the target link combination includes multiple basic links; a control module for deforming each basic link in the target link combination based on the cage structure and deformation parameters of the basic links to obtain a deformed target link combination; and a second constructing module for constructing a target robotic arm based on the deformed target link combination and demonstration data; the demonstration data is used to demonstrate the target operating state of the target robotic arm when it completes a target task.
[0033] In conjunction with the second aspect, in some possible implementations, the first construction module is specifically used for: when the configuration of the basic link is a straight link, constructing a bounding box based on the vertex set in the triangular mesh of the straight link, and using the bounding box as the cage structure of the straight link; or when the configuration of the basic link is a curved link, dividing the vertex set of the curved link into multiple non-overlapping subsets based on the interface connection length of the curved link, constructing multiple bounding boxes based on the multiple non-overlapping subsets, and determining the cage structure of the curved link based on the multiple bounding boxes.
[0034] Combining the second aspect and the above implementation methods, in some possible implementation methods, the second construction module is specifically used to: determine the set of physical properties of each target link based on the triangular mesh and cage structure of each target link in the deformed target link assembly; the set of physical properties includes the physical property parameters of the target link; and construct the target robotic arm based on the deformed target link assembly, the set of physical properties of the deformed target link assembly, and demonstration data.
[0035] Combining the second aspect and the above implementation methods, in some possible implementation methods, the second construction module is specifically used to: determine the performance index and structural flexibility of the reference manipulator corresponding to the deformed target link assembly based on the set of physical properties of the deformed target link assembly and demonstration data; calculate the evaluation value based on the performance index and structural flexibility, combined with a pre-constructed evaluation function, the evaluation function being used to represent the fusion result of the performance index and structural flexibility; and update the deformation parameters of the target links included in the reference manipulator based on the evaluation value to obtain the target manipulator.
[0036] Combining the second aspect and the above implementation methods, in some possible implementation methods, the performance indicators include the driving torque of each joint in the reference manipulator, and the demonstration data includes the end-effector pose trajectory and the end-effector external force. The second construction module is specifically used to: determine the joint trajectory of each joint in the reference manipulator based on the end-effector pose trajectory; construct the target demonstration dataset based on the joint trajectory and the end-effector external force; and determine the driving torque of each joint in the reference manipulator based on the set of physical properties of the deformed target link assembly and the target demonstration dataset.
[0037] Combining the second aspect and the above implementation methods, in some possible implementation methods, the second building module is specifically used to: construct the kinematic link corresponding to the deformed target link combination based on the translation offset and rotation matrix of the target link; the kinematic link represents the overall kinematic geometry link of the manipulator corresponding to the deformed target link combination; based on the kinematic link, input the target demonstration dataset, the mass, center of mass position and inertia tensor of the target link into the pre-established dynamic equation to obtain the driving torque of each joint in the reference manipulator.
[0038] Combining the second aspect and the above implementation methods, in some possible implementation methods, the second determining module is specifically used for: performing combination enumeration based on the basic link set to obtain multiple links combinations, each link combination including multiple basic links; filtering the multiple links combinations to obtain the target link combination.
[0039] In conjunction with the second aspect and the above implementation methods, in some possible implementation methods, the second determining module is specifically used to: determine redundant link combinations that cannot perform the target task from multiple sets of link combinations, and remove the redundant link combinations from the multiple sets of link combinations to obtain at least one candidate link combination; for at least one candidate link combination, calculate the fitness of the candidate link combination to perform the target task; and determine the target link combination based on the fitness of at least one candidate link combination.
[0040] In conjunction with the second aspect and the above implementation methods, in some possible implementation methods, the second determining module is specifically used to: replace the target link in at least one candidate link combination based on the fitness of at least one candidate link combination to obtain at least one reference link combination; use the reference link combination as a candidate link combination, and return to execute replacing the target link in at least one candidate link combination based on the fitness of at least one candidate link combination to obtain at least one reference link combination, until the execution is returned N times, where N is an integer greater than 1; and determine the target link combination based on the reference link combination obtained by the replacement.
[0041] In conjunction with the second aspect and the above implementation methods, in some possible implementation methods, the second determining module is specifically used for: for each link combination, determining the arm length of the initial robotic arm corresponding to the link combination and the reachable workspace of the initial robotic arm; if the arm length of the initial robotic arm is not within the work range of the target task, the link combination is designated as a redundant link combination; if the links in the link combination will collide, the link combination is designated as a redundant link combination; if the pose point corresponding to the demonstration data is not within the maximum workspace of the initial robotic arm corresponding to the link combination, the link combination is designated as a redundant link combination.
[0042] Combining the second aspect and the above implementation methods, in some possible implementation methods, the second determining module is specifically used for: performing K-step adjustments on the deformation parameters of the target link in the candidate link combination to obtain the end-effector trajectory of the candidate robotic arm corresponding to the candidate link combination after each step of adjustment; determining the trajectory gradient corresponding to each step of adjustment based on the end-effector trajectory of the candidate robotic arm corresponding to the candidate link combination after each step of adjustment and the end-effector trajectory of the candidate robotic arm corresponding to the candidate link combination before adjustment; determining the trajectory loss magnitude based on the end-effector trajectory of the candidate robotic arm corresponding to the candidate link combination after K-step adjustment; obtaining the gradient stability parameter based on the trajectory gradient corresponding to each step of adjustment; and obtaining the fitness based on the trajectory loss magnitude and the gradient stability parameter.
[0043] Combining the second aspect and the above implementation methods, in some possible implementation methods, the control module is specifically used to: determine the first weight of each basic link based on the cage structure and triangular mesh of each basic link; determine the second weight of each basic link based on the cage structure and tetrahedral mesh of each basic link; and deform each basic link based on the first weight, the second weight, and the deformation parameters to obtain the target link set.
[0044] In conjunction with the second aspect and the above implementation methods, in some possible implementation methods, the first determining module is also used to: determine the trihedral mesh of each basic link in the basic link set; and perform tetrahedral voxelization on the triangular mesh of each basic link to obtain the tetrahedral mesh of each basic link.
[0045] Combining the second aspect and the above implementation methods, in some possible implementation methods, the first determining module is specifically used to: for each basic link in the basic link set, determine the motor axis normal vector of the two motors associated with the basic link; if the motor axis normal vectors of the two motors are equal, determine that the configuration of the basic link is a straight link; if the motor axis normal vectors of the two motors are not equal, determine that the configuration of the basic link is a bent link.
[0046] Thirdly, an electronic device is provided, including a memory and a processor. The memory is used to store executable program code, and the processor is used to call and run the executable program code from the memory, causing the electronic device to perform the methods of the first aspect or any possible implementation thereof.
[0047] Fourthly, a computer program product is provided, comprising: computer program code, which, when run on a computer, causes the computer to perform the methods described in the first aspect or any possible implementation thereof.
[0048] Fifthly, a computer-readable storage medium is provided that stores computer program code, which, when executed on a computer, causes the computer to perform the methods described in the first aspect or any possible implementation thereof. Attached Figure Description
[0049] Figure 1 This is a schematic flowchart of a method for constructing a robotic arm provided in an embodiment of this application.
[0050] Figure 2 This is a schematic diagram of a cage structure provided in an embodiment of this application.
[0051] Figure 3 This is a schematic diagram of a connecting rod deformation provided in an embodiment of this application.
[0052] Figure 4 This is a schematic diagram of a device for constructing a robotic arm provided in an embodiment of this application.
[0053] Figure 5 This is a schematic diagram of the structure of an electronic device provided in an embodiment of this application. Detailed Implementation
[0054] The technical solutions in this application will be clearly and thoroughly described below with reference to the accompanying drawings. In the description of the embodiments of this application, unless otherwise stated, " / " means "or," for example, A / B can mean A or B. "And / or" in the text is merely a description of the relationship between related objects, indicating that three relationships can exist. For example, A and / or B can represent: A existing alone, A and B existing simultaneously, and B existing alone. Furthermore, in the description of the embodiments of this application, "multiple" refers to two or more than two.
[0055] Hereinafter, the terms "first" and "second" are used for descriptive purposes only and should not be construed as implying or suggesting relative importance or implicitly indicating the number of technical features indicated. Thus, a feature defined as "first" or "second" may explicitly or implicitly include one or more of that feature.
[0056] Robotic arm design requires joint optimization of kinematics, dynamics, and structural characteristics. However, current robotic arm design is still mainly based on manual iteration, relying on engineers' experience to repeatedly weigh geometry, actuation, and manufacturability. This process is time-consuming and makes it difficult to systematically explore alternative configurations.
[0057] In recent years, automated design methods can be broadly categorized into two types: one is component-level geometry optimization, which refines the shape of individual parts while ignoring the overall system coupling; the other is system-level topology optimization, which coordinates the spatial layout of links while ignoring the structural deformation of individual components. Both methods are geared towards narrow domains and simulation-defined objective functions, lacking a reflection of the requirements of real-world operational tasks.
[0058] Differentiable simulations (such as DiffHand) achieve gradient-based morphology-control joint optimization by connecting morphology and physical dynamics into an end-to-end differentiable link. However, such methods have the following shortcomings: The simple cage structure that relies on predefined human features is difficult to adapt to complex linkage shapes; Optimization is only performed in simulations for short-term, narrow-domain tasks, and real demonstration data cannot be used directly. Structural stiffness is usually used as a post-hoc verification indicator and is not included in the optimization cycle, which cannot guarantee end-point accuracy and manufacturability.
[0059] Based on this, this application proposes a method for constructing a robotic arm, which can automatically generate a cage structure based on the linkage configuration and construct the robotic arm in combination with demonstration data, ensuring that the constructed robotic arm can meet the requirements of real operation tasks.
[0060] Figure 1This is a schematic flowchart illustrating a method for constructing a robotic arm according to an embodiment of this application. The method is applied to an electronic device, which may specifically be a cloud platform server or a local intelligent device (e.g., a computer device) or other intelligent terminal; this embodiment of the application does not limit the specific application to this type of device.
[0061] For example, such as Figure 1 As shown, the method 100 includes: Step 101: Determine the configuration of each basic link in the basic link set; the configuration includes: straight link or bent link; Step 102: Based on the configuration of each basic link and the triangular mesh of each basic link, construct the cage structure of each basic link. Step 103: Determine the target link combination based on the basic link set; the target link combination includes multiple basic links; Step 104: Based on the cage structure and deformation parameters of the basic connecting rods, deform each basic connecting rod to obtain the deformed target connecting rod set. Step 105: Construct the target robotic arm based on each target link in the target link set and the demonstration data; the demonstration data is used to demonstrate the target operating state when the target robotic arm completes the target task.
[0062] exist Figure 1 In the illustrated embodiment, the configuration of the basic link is determined, and a cage structure for the basic link is constructed based on the configuration. This achieves automatic construction of the cage structure for the link, and the cage structure constructed based on the configuration ensures that it can adapt to complex link shapes, avoiding the situation where relying solely on a simple cage structure predefined manually is difficult to adapt to complex link shapes. Deformation parameters are introduced, and after obtaining the cage structure, the basic link in the target link assembly can be deformed based on the cage structure and deformation parameters to obtain the deformed target link assembly. This allows for fine adjustment of the link entity contours of the robotic arm during the construction process. Combining real demonstration data and the deformed target link assembly to construct the target robotic arm ensures that the constructed robotic arm can meet the requirements of real-world operational tasks. Even non-expert engineers can quickly generate additively manufactured custom robotic arms based on actual task data.
[0063] The following is about Figure 1 The specific implementation methods of each step in the illustrated embodiments are explained in detail below: In step 101, the basic link set can be a pre-established collection of multiple basic links. This set includes multiple basic links of both straight and curved configurations, with curved links specifically referring to 90° links. Under both straight and curved link configurations, it includes multiple basic links of different sizes (both straight and curved).
[0064] The aforementioned different sizes may refer to different diameters of the connecting rods, that is, the basic connecting rod set includes multiple basic connecting rods with different diameters of straight connecting rod configuration and multiple basic connecting rods with different diameters of bent connecting rod configuration.
[0065] When constructing a robotic arm, for each basic link in the above basic link set, we can first determine whether its configuration is a straight link or a bent link, which will facilitate the subsequent construction of the cage structure of the basic link based on its configuration.
[0066] In some embodiments, determining the configuration of each basic link in the basic link set includes: for each basic link in the basic link set, determining the motor axis normal vectors of the two motors associated with the basic link; if the motor axis normal vectors of the two motors are equal, determining the configuration of the basic link as a straight link; if the motor axis normal vectors of the two motors are not equal, determining the configuration of the basic link as a bent link.
[0067] The aforementioned basic link set also includes relevant parameters for assembling the joint motor at the end of each basic link. Specifically, this may include the motor axis normal vectors of the two motors at the end of the link. The basic set stores the basic link and the corresponding motor axis normal vectors of the two motors in association, and the stored motor axis normal vectors of the two motors associated with each basic link can be directly obtained.
[0068] It is understandable that the motor shaft refers to the joint rotation axis (the straight line of the rotation center of the rotating joint); the motor shaft normal vector mentioned above specifically refers to the unit spatial vector perpendicular to the motor rotation axis, which is used to characterize the radial orthogonal reference direction of the motor shaft.
[0069] After obtaining the motor axis normal vectors of the two motors associated with each basic link, it can be determined whether the motor axis normal vectors of the two motors associated with each basic link are equal. If the motor axis normal vectors of the two motors are equal, the configuration of the basic link is determined to be a straight link; if the motor axis normal vectors of the two motors are not equal, the configuration of the basic link is determined to be a bent link.
[0070] Understandably, for a basic connecting rod with a straight linkage configuration, the rod body is straight, the motors at both ends are coaxially arranged, and their rotation axes completely coincide. Therefore, the normal vectors of the motor axes of the two motors are in the same direction and equal. For a basic connecting rod with a bent linkage configuration (such as a 90° bent connecting rod), the bending structure of the connecting rod makes the motor axes of the motors at both ends perpendicular to each other. The normal vectors corresponding to the motor axes at both ends are orthogonal to each other, and the normal vectors of the motor axes at both ends are not in the same direction and are not equal.
[0071] For example, for a basic link i, the motor axis normal vectors of its two associated motors can be denoted as n. Ai nBi If n Ai =n Bi If n A≠ n Bi If so, then the configuration of the basic connecting rod i is determined to be a bent connecting rod.
[0072] In the above method, the configuration of the basic link can be automatically determined by comparing whether the normal vectors of the motor shafts at both ends of the basic link are equal. This facilitates the automatic construction of the cage structure of the link based on the link configuration, reduces the workload of manual labeling and classification of the link library, and can better adapt to the scenario of automatically constructing the target robotic arm.
[0073] In step 102, a triangular mesh refers to a 3D surface model that approximates the outer surface of an object by piecing together a large number of triangular facets. It only describes the outline of the object's shell and does not include the internal solid volume. A triangular mesh for a link includes: a set of 3D vertices and a set of triangular facets. The set of triangular facets is a set of vertex index connections for all triangular facets. Each triangular facet is composed of three 3D vertices connected together. The set of triangular facets completely records the pairing connection relationships of the three vertices associated with each set of triangular facets.
[0074] For each basic link in the basic link set, we can determine the triangular facet set of each basic link by first determining the vertex set of the basic link, and then organize it to obtain the triangular facet mesh of the basic link. This triangular facet mesh is denoted as... ,in For vertex set, It is a set of triangular facets.
[0075] Once the configuration of the link is obtained, the cage structure of the basic link can be constructed based on the configuration and the triangular mesh of the link. The cage structure refers to a simple closed control mesh surrounding the triangular mesh of the link, which is composed of a small number of sparse three-dimensional control points (cage vertices) and cage surface topology.
[0076] In some embodiments, a cage structure for each basic link is constructed based on the configuration of each basic link and the triangular mesh of each basic link, including: when the basic link configuration is a straight link, constructing a bounding box based on the vertex set in the triangular mesh of the straight link, and using the bounding box as the cage structure of the straight link; or when the basic link configuration is a curved link, dividing the vertex set of the curved link into multiple non-overlapping subsets based on the interface connection length of the curved link, constructing multiple bounding boxes based on the multiple non-overlapping subsets, and determining the cage structure of the curved link based on the multiple bounding boxes.
[0077] Given that the configuration of the basic link is a straight link, a hexahedral bounding box can be constructed based on the set of vertices included in the triangular mesh of the straight link, which can then be used as the cage structure of the straight link.
[0078] Specifically, a local coordinate system can be established based on the motor axis normal vector of the connecting rod, and the set of vertices of the connecting rod can be considered. Find its directed bounding box in this coordinate system, for example, using the motor axis normal vector. Taking the principal axis direction, the extreme values of the vertex projections are used to determine the axial range. Boundary extreme values are taken in two directions orthogonal to the principal axis direction to determine the transverse range. The combination of the upper and lower bounds of these three directions yields eight corner points, which constitute the hexahedral cage that encloses the entire connecting rod. This cage is determined solely by the boundary extreme values, ensuring complete mesh envelopment and conformity to the principal axis direction of the connecting rod.
[0079] Figure 2 This is a schematic diagram of a cage structure provided in an embodiment of this application.
[0080] For example, such as Figure 2 As shown, for the direct connecting rod L1, its motor shaft normal vector is n. A1、 n B1 n A1 =n B1 Using the normal vector of any motor axis of the connecting rod (e.g., n) A1 Establish a local coordinate system, and use n A1 Taking the extreme values of the vertex projection along the main axis, for example, z1 and z2, and taking the boundary extreme values in two directions orthogonal to the main axis to determine the cross-sectional range, for example, x1, x2 and y1, y2, we can obtain eight corner points based on the combination of the upper and lower bounds of these three directions: a1(x1, y1, z1), a2(x1, y2, z1), a3(x1, y1, z2), a4(x1, y2, z2), a5(x2, y1, z1), a6(x2, y2, z1), a7(x2, y1, z2), and a8(x2, y2, z2). Based on these eight corner points, a bounding box that encloses the entire connecting rod can be constructed, namely a hexahedral cage1 (cage structure).
[0081] Given that the configuration of the basic connecting rod is a bent connecting rod, the length of the connection interface of the current bent connecting rod can be determined. The connection interface refers to the structure of the cylindrical part at both ends of the bent connecting rod, and the length of the connection interface includes the length of each of the two connection interfaces at both ends of the bent connecting rod.
[0082] like Figure 2 As shown, for the bent connecting rod L2, the lengths of its two ends, including interface A and interface B, are respectively... , .
[0083] Get the length of the connection interface , Then, based on the length of the connection interface, the set of vertices included in the triangular mesh of the bent connecting rod can be divided into multiple disjoint subsets. Specifically, it can be divided into three disjoint subsets, namely the two subsets corresponding to the two interfaces and the subset corresponding to the remaining part, including: based on the length of the connection interface. The first subset of interface A is obtained by partitioning, based on the length of the connection interface. The second subset of interface B is obtained, and the third subset is obtained by removing the first and second subsets.
[0084] For the two subsets corresponding to the two end interfaces, local coordinate systems can be established based on the motor axis normal vectors corresponding to the two end interfaces. The extreme values of the vertex projections are taken with the motor axis normal vector as the main axis direction. Boundary extreme values are taken in two directions orthogonal to the main axis direction to determine the cross-sectional range. Combining the upper and lower bounds of these three directions yields eight corner points. Based on these eight corner points, a bounding box, i.e., a hexahedral cage structure, can be constructed to enclose the interfaces. For the remaining subset, eight corner points can be determined based on the eight corner points corresponding to the two interfaces, and the bounding box of the remaining part can be determined accordingly. Then, the cage structure of the bent connecting rod is determined based on the three obtained bounding boxes.
[0085] For example, for the first subset of interface A, it can be based on the motor axis normal vector n of interface A. A Establish a local coordinate system, and use the motor axis normal vector n A Taking the extreme values of the vertex projections included in subset A along the main axis direction, and determining the transverse range by taking the boundary extreme values in two directions orthogonal to the main axis direction, we obtain the 8 corner points of interface A, and construct the bounding box of interface A to obtain cage3. For the second subset of interface B, we can use the motor axis normal vector n of interface B as a basis. B Establish a local coordinate system, and use the motor axis normal vector n B Take the extreme values of the vertex projections included in subset B along the main axis direction, and take the boundary extreme values in two directions orthogonal to the main axis direction to determine the cross-sectional range, thus obtaining the 8 corner points of interface B, and construct the bounding box of interface B to obtain cage2. For the remaining part in the middle, construct cage4.
[0086] In some embodiments, the cage structure of the bent connecting rod can be obtained by performing a union operation on the three bounding boxes cage2, cage3 and cage4 using Boolean (Boolean operation).
[0087] In the above method, different methods are used to construct the cage structure for different linkage configurations. Straight linkages directly construct bounding boxes based on the vertex set to determine the boundary. Bent linkages are constructed by dividing the interface length into subsets and constructing bounding boxes for each subset. This allows the cage construction to support a variety of complex linkage shapes.
[0088] In step 103, the target link assembly includes multiple basic links. Multiple basic links can be selected from the basic link assembly and combined to obtain the target link assembly. The target link assembly can be one set or multiple sets. When there are multiple sets of target link assemblies, each set of target link assemblies must have at least one different basic link.
[0089] In some embodiments, the target link assembly also includes joints and a link joint sequence. By combining multiple basic links and joints in the target link assembly according to the link joint sequence, a robotic arm can be obtained. Therefore, a target link assembly also corresponds to a robotic arm configuration.
[0090] In some embodiments, determining the target link combination based on the basic link set includes the following S11 to S12: S11, based on the set of basic links, perform combination enumeration to obtain multiple sets of link combinations, each set of link combinations includes multiple basic links.
[0091] The number and configuration of the basic links included in the linkage assembly can be determined based on the target task. For example, if the target task is a six-degree-of-freedom task, then the number of basic links can be determined to be 8, specifically including six bent links and two straight links.
[0092] The combination enumeration includes the following process: traverse all basic links in the basic link set, and enumerate all link combinations that satisfy the assembly constraints based on the number of links required by the robotic arm; each link combination corresponds to an independent link combination, and multiple sets of different link combinations can be generated through complete traversal.
[0093] Specifically, a set of links includes multiple basic links, and these basic links are connected in series at their joints to form a corresponding robotic arm. In other words, a set of links corresponds to a topology of a robotic arm (i.e., a configuration of a robotic arm).
[0094] S12, select from multiple linkage combinations to obtain the target linkage combination.
[0095] After obtaining multiple sets of link combinations, the optimal link combination can be selected as the target link combination.
[0096] In the above method, multiple link combinations are obtained through combined enumeration, which can completely cover all feasible topologies generated by the parameterized extension of link morphology, ensuring complete coverage of the design space traversal. After filtering out redundant link combinations, the target link combination is obtained. High-precision cage deformation, finite element and gradient fine optimization are carried out on only a small number of effective topologies, ensuring the calculation accuracy of mechanical and kinematic simulation evaluation. The combination of the two can solve the problem that the design space is huge after the parameterized extension of morphology, and it is difficult to simultaneously take into account the solution coverage and evaluation accuracy by using pure gradient optimization or global exhaustive search alone.
[0097] The process of selecting the optimal link combination from multiple link combinations as the target link combination can be illustrated in the following example: In some embodiments, screening multiple sets of link combinations to obtain a target link combination includes the following S21 to S23: S21, identify redundant link combinations that cannot perform the target task from multiple link combinations, and remove the redundant link combinations from the multiple link combinations to obtain at least one candidate link combination.
[0098] After obtaining multiple sets of link combinations, redundant link combinations that cannot perform the target task can be identified from the multiple sets of link combinations. These redundant link combinations are then eliminated from the multiple sets of link combinations, resulting in at least one candidate link combination.
[0099] Redundant link combinations that cannot perform the target task include: link combinations with geometric assembly errors in the topology of the robotic arm itself, and link combinations with no geometric assembly errors in the structure itself, but whose working capacity does not meet the task standards and have no practical use value.
[0100] Specifically, redundant link combinations that cannot perform the target task can be identified from multiple link combinations based on several preset cost-saving indicators. These cost-saving indicators may include factors such as arm length, collision status, and workspace. The following examples illustrate this in detail: In some embodiments, determining redundant link combinations that cannot perform the target task from multiple link combinations includes: for each link combination, determining the arm length of the initial robotic arm corresponding to the link combination and the maximum workspace of the initial robotic arm; if the arm length of the initial robotic arm is not within the workspace of the target task, the link combination is designated as a redundant link combination; if the links in the link combination will collide, the link combination is designated as a redundant link combination; if the pose point corresponding to the demonstration data is not within the maximum workspace of the initial robotic arm corresponding to the link combination, the link combination is designated as a redundant link combination.
[0101] Multiple cost-effective metrics can include indicators such as arm length, collision status, and workspace. The following is a detailed explanation of the screening process based on arm length: Each link combination corresponds to a topology of a robotic arm. The robotic arm corresponding to each link combination can be called the initial robotic arm. For each link combination, the arm length of the initial robotic arm can be determined based on the lengths of the multiple basic links included in the link combination.
[0102] The arm length of a robotic arm can include a maximum arm length and a minimum arm length. The maximum arm length refers to the farthest distance the robotic arm can reach, while the minimum arm length refers to the shortest distance the robotic arm can reach.
[0103] For example, iterate through each basic link in the current link assembly and extract the axial length parameter of each target link in the assembly, including the main body length of the link. and interface length For the i-th link, the effective extension length of a single segment is the length of the main body of the link plus the horizontal length. Adjacent links share a set of horizontal lengths We can obtain: First connecting rod = Length of main rod body +Base interface length When considering the length of the club, only the length of the shaft is added to the length of the i-th intermediate link. The end link n = the length of the main body of the link. +End effector side interface length The maximum length of the initial robotic arm can be obtained by accumulating these values, denoted as L1max.
[0104] In some embodiments, each basic link in the current linkage can be connected in series and the attitude of the link can be adjusted to determine the minimum arm length of the corresponding initial robotic arm, denoted as L1min.
[0105] The target task's working range refers to the radial distance range that the robotic arm's end effector can reach to complete the specified manipulation operation. With the robotic arm's base rotation center as the origin, the radial distance range along the plane includes the lower boundary Lmin and the upper boundary Lmax.
[0106] For each link combination corresponding to the initial robotic arm, it is necessary to determine whether its maximum arm length is less than the lower boundary Lmin of the target task's working range, and whether its minimum arm length is greater than the upper boundary Lmax of the target task's working range. Link combinations with a maximum arm length less than the lower boundary Lmin of the target task's working range or a minimum arm length greater than the upper boundary Lmax of the target task's working range are designated as redundant link combinations.
[0107] The following is a detailed explanation of the workspace-based filtering process: By sampling the joint space of each initial robotic arm and mapping the pose trajectory of the joints to the end effector of the initial robotic arm through positive kinematics mapping, the reachable workspace of the initial robotic arm of this configuration can be estimated.
[0108] The reachable workspace refers to the set of all three-dimensional Cartesian coordinate points that the end effector of the robotic arm can reach by relying on the normal angular motion of each joint in the base coordinate system of the robotic arm. The boundary is jointly constrained by the link topology, link length parameters, and angular limits of each joint.
[0109] After obtaining the reachable workspace of each initial robotic arm, it can be determined whether the pose points corresponding to the demonstration data (i.e., the positions of the aforementioned ends) all fall within the reachable workspace of the initial robotic arm corresponding to the link combination. If at least one pose point does not fall within the reachable workspace, the current link combination is determined to be a redundant link combination.
[0110] The following is a detailed explanation of the process of filtering based on collision status: For each initial robotic arm, DH parameters can be constructed from the enumerated link-joint sequence. Check whether the self-collision constraint is satisfied, and discard those that are not satisfied. The above link-joint sequence is an ordered arrangement sequence of joints and links connected in series alternately from the base to the end effector of the robotic arm. Adjacent target links in the sequence are connected by corresponding joints. The fixed sequence order represents the complete topological serial structure of the robotic arm. Different link combinations and joint arrangement orders correspond to different link-joint sequences and different robotic arm configurations.
[0111] DH parameters are a standardized set of parameters describing the spatial geometric relationship of a link-joint sequence. They include four types of parameters: link length, link torsion angle, joint offset, and joint rotation angle. They are solved one by one based on the morphological parameters of each link in the link-joint sequence, the joint installation angle, and the docking orientation of adjacent links. They are used to construct the forward kinematics model of the robotic arm and realize the mapping from joint angles to end-effector Cartesian coordinates. They are the basic geometric model for joint limit verification, self-collision detection, and reachable workspace solution.
[0112] Self-collision constraint verification process: Based on the DH parameters, a 3D bounding box geometric model of each link and joint component is established. Multiple sets of joint poses are sampled from the joint space, and the real-time spatial pose of each link is solved separately. All link combinations are traversed to determine whether the bounding boxes of the components intersect or overlap in space. If any set of sampled poses shows geometric interference or self-collision between adjacent or spaced links, it indicates that the robot arm will experience a collision jamming problem during topological motion, and the self-collision constraint is not satisfied. The link combination is then discarded as a redundant link combination.
[0113] In some embodiments, joint limit checks can also be performed on the link assembly, and link assemblies that do not meet the constraints are designated as redundant link assemblies. Specifically, after constructing a complete DH kinematic model based on the link-joint sequence, each joint in the sequence is traversed, and the preset upper and lower limit thresholds for rotation angles of each joint are read. For any set of joint angle combinations obtained by sampling the joint space, it is determined whether the current rotation angle of each joint falls within the allowable rotation range of the corresponding joint. If any joint sampling angle exceeds its own limit range, it means that the posture belongs to a singular or limited posture that the robot arm cannot physically reach. It is determined that the initial robot arm corresponding to the link-joint sequence does not meet the constraints, and the link assembly is directly discarded as a redundant link assembly.
[0114] In some embodiments, the inverse kinematics convergence rate corresponding to each link combination can also be calculated, and link combinations with inverse kinematics convergence rates below a threshold are identified as redundant link combinations. The inverse kinematics convergence rate is a quantitative indicator for measuring the feasibility of the robotic arm in solving the end-effector pose of the target.
[0115] Specifically, for all end-effector pose sampling points in the demonstration data collected by the ForceUMI device, the numerical inverse kinematics (IK) solver is called point by point to solve the problem. Under the condition of uniformly limiting the maximum number of iterations and the end-effector pose error tolerance, the proportion of points that successfully converge to qualified accuracy is counted to obtain the inverse kinematics convergence rate.
[0116] Determine whether the robotic arm can be adjusted within the corresponding angle range of each joint to bring its end effector position within a preset range around the end effector pose sampling point. If the end effector position can reach the preset range around the end effector pose sampling point, it is determined that the robotic arm has successfully reached that end effector pose sampling point. Statistically calculate the proportion of points that successfully converge to acceptable accuracy out of all points, i.e., the proportion of end effector pose sampling points that the robotic arm can successfully reach out of all end effector pose sampling points.
[0117] If the inverse kinematic convergence rate of a link assembly is lower than the preset judgment threshold, it indicates that the configuration is difficult to reproduce the complete target manipulation trajectory, and the link assembly is directly eliminated as a redundant link assembly.
[0118] In the above method, multiple linkage combinations are initially screened through various indicators such as arm length interval constraints, workspace coverage, and self-collision detection. This allows for the rapid elimination of redundant linkage combinations with assembly abnormalities, poor spatial adaptability, insufficient motion capability, and weak trajectory reproduction stability without the need for high-precision mechanical simulation and parameter optimization. This significantly reduces the number of candidate configurations to be optimized, effectively lowering the computational cost of subsequent high-precision simulation and gradient optimization. At the same time, it ensures that the remaining candidate linkage combinations all have the basic motion and structural conditions to complete the target task, achieving a balance between full coverage of the enumerated design space and efficient and accurate pre-screening.
[0119] S22, For at least one candidate link combination, calculate the fitness of the candidate link combination in performing the target task.
[0120] For at least one candidate link combination corresponding to a robotic arm, the execution result after the robotic arm performs the target task can be simulated, and the fitness of the candidate link combination in performing the target task can be calculated based on the execution result and demonstration data.
[0121] Fitness is used to quantify the optimization potential and stability of a set of linkage combinations (robotic arm topology). It fully characterizes the comprehensive potential of the topology to adapt to the target task after gradient parameter tuning: The higher the fitness value, the larger the optimization space of the topology, the smoother the gradient iteration and the less prone to oscillation. Subsequent parameter optimization can stably reduce the deviation between simulation and real demonstration data, making it a high-quality candidate configuration; The lower the fitness value, the smaller the optimization space of the topology, the less stable the gradient iteration and the more prone to oscillation. The optimization improvement is limited, and parameter optimization is difficult to converge, belonging to a low-value redundant configuration.
[0122] In some embodiments, calculating the fitness of candidate link combinations in performing the target task includes: performing K-step adjustments on the deformation parameters of the target link in the candidate link combination to obtain the end-effector trajectory of the candidate robotic arm corresponding to the candidate link combination after each step of adjustment; determining the trajectory gradient corresponding to each step of adjustment based on the end-effector trajectory of the candidate robotic arm corresponding to the candidate link combination after each step of adjustment; obtaining the trajectory loss magnitude based on the end-effector trajectory of the candidate robotic arm corresponding to the candidate link combination after each step of adjustment; obtaining the gradient stability parameter based on the trajectory gradient corresponding to each step of adjustment; and obtaining the fitness based on the trajectory loss magnitude and the gradient stability parameter.
[0123] Specifically, a short-time gradient probe can be performed on the candidate link combinations retained in the above stages. That is, the deformation parameters of at least one target link included in the candidate link combinations obtained from the preliminary screening are adjusted in K steps, with each step controlling the deformation parameters. Based on a preset gradient, the descent or ascent may occur.
[0124] Adjust deformation parameters at each step Then, the candidate robotic arm corresponding to the adjusted candidate link combination is simulated to perform the target task, obtaining the end effector trajectory of the candidate robotic arm corresponding to each adjusted candidate link combination, also called the loss trajectory. Each adjustment of the deformation parameters results in one loss trajectory; adjusting for K steps yields K loss trajectories, denoted as the loss trajectory. .
[0125] Based on the end-effector trajectory of the candidate robotic arm corresponding to the candidate link combination after each adjustment step (i.e., the aforementioned loss trajectory) and the end-effector trajectory of the candidate robotic arm corresponding to the candidate link combination after the previous adjustment step (i.e., the end-effector trajectory of the candidate robotic arm corresponding to the candidate link combination before adjustment), the trajectory gradient corresponding to each adjustment step can be obtained, denoted as . The loss trajectory and trajectory gradient are used as probes, and a fitness is constructed based on the probes.
[0126] The fitness consists of two parts: trajectory loss magnitude and gradient stability. The trajectory loss magnitude can be determined based on the end trajectory of the candidate robotic arm corresponding to the candidate link combination after each adjustment, i.e., the aforementioned loss trajectory. The gradient stability parameter is determined based on the trajectory gradient corresponding to each adjustment, which is used to describe the gradient stability.
[0127] The trajectory loss magnitude is used to measure the optimization potential of the topology. The larger the trajectory loss magnitude, the greater the potential for reduction in loss (task deviation) after adjusting the link shape parameters, and the stronger the optimization potential. The specific formula for calculating the trajectory loss magnitude is as follows (1): (1) In the above formula (1), For the trajectory loss magnitude, To determine the end effector trajectory of the candidate robotic arm before adjusting the deformation parameters. To adjust the end effector trajectory of the candidate robotic arm after K steps of deformation parameters, To prevent small constants from being divided by zero, a fixed value is used.
[0128] The gradient stability parameter is used to measure the consistency of the optimization direction and avoid oscillating topology. The value range of the gradient stability parameter is []. [1,1], the closer the value is to 1, the more consistent the gradient directions are, and the optimization is smooth and oscillating; the closer the value is to -1, the more frequent the gradient oscillations are, and the optimization is difficult to converge. The specific formula for calculating the gradient stability parameter is as follows (2): (2) In Equation 6 above, s is the gradient stabilization parameter. . represents the trajectory gradient after the deformation parameters are updated in the k-th round. The dot product of the gradients from two rounds measures the angle between the two vectors. The magnitude (length) of the gradient vector; The cosine similarity of the trajectory gradients between two consecutive adjustments is used; finally, the average cosine similarity over K consecutive iterations is taken to obtain the gradient stability s.
[0129] In some embodiments, the fitness can be obtained by weighting and fusing the trajectory loss magnitude and gradient stability parameters through weight coefficients. The specific formula for calculating the fitness is shown in the following formula (3): (3) In the above formula (3), , These are the weighting coefficients (which can be pre-calibrated; the sum of the two weighting coefficients equals 1). Let be the trajectory loss magnitude, and s be the gradient stabilization parameter. The above fitness can also be called composite fitness.
[0130] In the above method, the loss trajectory and trajectory amplitude are obtained by adjusting the deformation parameters in K steps. Based on the loss trajectory, the trajectory loss amplitude, which measures the optimization potential of the topology, can be calculated. Based on the trajectory amplitude, the gradient stability parameter, which measures the consistency of the optimization direction, can be calculated. Based on these two parameters, the fitness is determined to screen candidate link combinations. This method can simultaneously take into account the topology optimization potential and optimization convergence stability, and can accurately screen out high-quality link configurations with large parameter tuning space and no oscillation during the iteration process, thereby reducing the overhead of invalid simulation and gradient optimization calculation.
[0131] S23, determine the target link combination based on the fitness of at least one candidate link combination.
[0132] After obtaining the fitness of each candidate link combination, the candidate link combination with the highest fitness can be determined as the target link combination.
[0133] In the above method, through two screenings, a large number of unqualified configurations are quickly screened out by relying on low-cost geometric and kinematic indices. Then, gradient optimization is carried out on the remaining candidates and fitness is calculated for selection. This can significantly reduce the computational power consumption of high-precision iterative simulation and take into account both screening efficiency and the comprehensive optimization performance of the final configuration.
[0134] In some embodiments, determining a target link combination based on the fitness of at least one candidate link combination includes: replacing the target link in the at least one candidate link combination with the target link based on the fitness of the at least one candidate link combination to obtain at least one reference link combination; using the reference link combination as a candidate link combination and returning to perform the replacement of the target link in the at least one candidate link combination with the target link based on the fitness of the at least one candidate link combination to obtain at least one reference link combination, until returning to perform the operation N times, where N is an integer greater than 1; and determining the target link combination based on the reference link combination obtained from returning to perform the operation N times.
[0135] In some embodiments, fitness can be used as the selection criterion to perform an N-generation evolutionary search on candidate link combinations to obtain the target link combination with the highest fitness.
[0136] Specifically, for each of the at least one candidate link combination, a target link in at least one of the candidate link combinations can be replaced based on fitness, and the replaced link combination is recorded as the reference link combination.
[0137] The replacement operations described above specifically include two forms: crossover operations and mutation operations. A crossover operation refers to swapping the positions of at least two target links in the candidate robotic arms corresponding to at least two candidate combinations. A mutation operation refers to replacing at least one target link in the candidate robotic arms corresponding to a candidate combination with another target link from the target link set. The other target link is different from the target link to be replaced.
[0138] As one implementation method, candidate robotic arms corresponding to all candidate link combinations can be sorted from high to low fitness, and the top M elite configuration candidate robotic arms with the best fitness can be selected as the parent pool; M is an integer greater than or equal to 1. Within the elite parent pool, candidate robotic arms are selected for link replacement operations. Within the selected elite robotic arms, further consideration can be given to factors such as loss reduction and gradient stability to selectively choose links with lower contributions to fitness as target links for subsequent crossover or mutation operations. This allows for precise optimization of topological weaknesses, resulting in a reference link combination.
[0139] After obtaining the reference link combination, the fitness of the reference link combination can be calculated, the reference link combination can be used as a candidate link combination, and the process can be returned to execute the step of replacing the target link in the candidate link combination based on the fitness of at least one candidate link combination to obtain at least one reference link combination, until the process is returned to execute N times, where N is an integer greater than 1.
[0140] In some embodiments, when multiple sets of reference link combinations are obtained, a number of elite topologies with the highest fitness (e.g., the H reference link combinations with the highest fitness, where H is an integer greater than or equal to 1) can be retained as candidate link combinations to enter the next generation. The next generation performs candidate robotic arm selection and link replacement operations based on the retained elite topologies with the highest fitness, until N generations of evolutionary search are performed.
[0141] Then, from the reference link combinations obtained by the above replacement operation, the link combination with the highest fitness is selected as the target link combination.
[0142] In some embodiments, if there is a case where the fitness of at least one candidate link combination before the Nth generation evolutionary search is the highest, then the link combination with the highest fitness among the at least one candidate link combination before the evolutionary search and the reference link combination obtained after N executions can be determined as the target link combination.
[0143] In the above method, fitness is used as the selection criterion to perform multiple generations of evolution on candidate link combinations. In each generation, selection is made based on fitness, and links are replaced to generate a new topology (i.e., reference link combination). After N generations, the topology with the best fitness (i.e., target link combination) is output. This method can achieve directional and efficient optimization in a large link topology enumeration space, retain high-quality link configurations with great optimization potential and stable gradient iteration, and improve the performance of the target robotic arm.
[0144] In step 104, the deformation parameters are parameters that are introduced in advance to control the change of the shape of each basic link, including the first length, the second length, the first rotation angle, and the second rotation angle.
[0145] Figure 3 This is a schematic diagram of a connecting rod deformation provided in an embodiment of this application.
[0146] For example, such as Figure 3 As shown, the deformation parameters are denoted as , .
[0147] in, For the first length, the control link extends axially along the extension shaft. The first rotation angle is used to control the Roll rotation angle of the connecting rod around the main axis of the rod body. The second rotation angle is used to control the Yaw deflection angle of the connecting rod perpendicular to the main axis of the rod body. The second length is used to control the radial or lateral extension length of the connecting rod motor interface.
[0148] Based on the deformation parameters, the cage structure of each basic link in the target link assembly can be deformed, thereby deforming each basic link in the target link assembly. The link obtained after deforming each basic link is denoted as the target link, and the deformed target link assembly can be obtained. The deformed target link assembly includes multiple target links.
[0149] In some embodiments, based on the cage structure and deformation parameters of the basic links, each basic link in the target link assembly is deformed to obtain the deformed target link assembly, including: determining a first weight of each basic link based on the cage structure and triangular mesh of each basic link; determining a second weight of each basic link based on the cage structure and tetrahedral mesh of each basic link; and deforming each basic link in the target link assembly based on the first weight, the second weight, and the deformation parameters to obtain the deformed target link assembly.
[0150] After obtaining the cage structure of the basic link, each basic link in the target link assembly can be deformed based on the cage structure, triangular mesh, tetrahedral mesh and deformation parameters of each basic link to obtain the deformed target link assembly. The deformed target link assembly includes the target link obtained after deforming each basic link.
[0151] After obtaining the triangular mesh of the basic connecting rod, it can be tetrahedralized to obtain the tetrahedral mesh of the basic connecting rod. Specifically, fTetWild (tetrahedral mesh generator) can be used to tetrahedralize the original triangular mesh to obtain the tetrahedral mesh of the basic connecting rod.
[0152] A tetrahedral mesh specifically comprises a vertex set and a tetrahedral cell set. The tetrahedral cell set is a collection of vertex index connections for all tetrahedral cells. Each tetrahedral cell consists of four connected 3D vertices. The tetrahedral cell set completely records the pairing connections of the four vertices associated with each pair of tetrahedral cells. The tetrahedral mesh is denoted as... in For the set of grid vertices, It is a set of tetrahedral elements.
[0153] The above-mentioned process of obtaining the triangular mesh of the basic link, and then converting the triangular mesh into tetrahedral voxels to obtain the tetrahedral mesh of the basic link, can be performed once after the basic link set is established.
[0154] After obtaining the cage structure of the basic links, the first weight of each basic link can be determined based on the cage structure and triangular mesh corresponding to the basic link. The first weight can also be called the face mesh weight. The second weight of each basic link can also be called the voxel weight. Both the face mesh weight and the voxel weight are calculated using the Mean Value Coordinate (MVC) algorithm.
[0155] Specifically, the surface mesh weights and voxel weights can be calculated based on the following formula (4).
[0156] (4) in, As the first weight, As the second weight, Let be the translation of each vertex in the vertex set of the triangular mesh. The translation amount of each vertex of the cage structure. This represents the translation of each vertex in the tetrahedral mesh's vertex set. The weights calculated using the above method ensure that the stiffness index is maintained along the vertex set of the tetrahedral mesh. Back-transmission to each vertex of the cage structure .
[0157] The translation amount mentioned above refers to the translation amount obtained by subtracting the coordinates after deformation from the coordinates of the same vertex before deformation.
[0158] Understandable The translation amount of each vertex of the cage structure. The translation of each vertex in the tetrahedral mesh vertex set, and the translation of each vertex in the cage structure. Through weight Linear interpolation can calculate the translation of each vertex in the vertex set of the internal solid tetrahedral mesh. In other words, changing the vertices of a cage structure with a single link, based on This can cause the internal link solid mesh to deform synchronously, resulting in a tetrahedral mesh of the deformed link. Based on the voxel structure of the deformed tetrahedral mesh, the stiffness of the deformed link can be determined by finite element analysis. This process involves deforming each vertex of the cage structure to a weight-based... Calculating the tetrahedral mesh of the deformed link, and then calculating its stiffness, constitutes the geometric forward propagation path. The stiffness index is expressed along the vertex set of the tetrahedral mesh. Back-transmission to each vertex of the cage structure This refers to: inversely calculating the tetrahedral mesh of the deformed link from the loss gradient of the link stiffness, and then weighting the tetrahedral mesh... Calculate the translation of each vertex of the cage structure to achieve the stiffness index along the line. The geometric reverse transmission link transmits the translation amounts of each vertex of the cage structure back along the entire path.
[0159] The deformation mapping can be defined as shown in the following formula (5): (5) in, For the above deformation parameters, This is a differentiable deformation operator for the cage vertex. It takes the deformation parameters of the connecting rods as input and outputs the deformed cage vertex. Let be the set of coordinates of the vertices of the cage structure of the i-th foundation link after deformation (the control points of the cage after deformation). The first and second weights of the i-th basic link are calculated for the above embodiment. As the cage deformation mesh interpolation function, with fixed first and second weights and updated cage vertices as input, it can linearly calculate the new coordinates of all surface / solid mesh vertices of the link, thus obtaining the complete mesh of the deformed target link. The complete mesh of the deformed target link includes: triangular mesh and tetrahedral mesh.
[0160] The above Specifically, it refers to differentiable translation operators or differentiable rotation operators. Specifically, it acts on the free cage vertices in the cage structure. Free cage vertices refer to vertices other than the interface vertices, so that the interface vertices remain fixed during deformation to ensure motor connection constraints.
[0161] In the above method, the deformation of the cage structure is controlled by the calculated weights and deformation parameters, which can generate complex and varied target link configurations. The weights can ensure that the triangular mesh and tetrahedral mesh of the deformed target link deform synchronously and do not exceed the deformed cage structure.
[0162] In step 105, the deformed target link assembly includes multiple target links after the deformation of multiple base links.
[0163] The demonstration data is used to demonstrate the target operating state of the robotic arm when it completes the target task, and it is real demonstration data. Specifically, the demonstration data can include the end effector pose trajectory and end effector force of the robotic arm. Taking a six-axis robotic arm as an example, the demonstration data can specifically include the end effector pose trajectory of the robotic arm with 6 degrees of freedom and the end effector force of 6 degrees of freedom.
[0164] The demonstration data above can be based on data acquired using a ForceUMI device (which consists of a UMI (Universal Manipulation Interface) gripper and a six-dimensional force / torque sensor). A single demonstration includes two time-synchronized signals: 6-DoF (6 degrees of freedom) pose trajectory of the terminal arm By recording the position of the end during the operation with posture get.
[0165] Force / torque signals of the end 6 axes By recording the triaxial forces acting on the end effector during the operation With triaxial torque get.
[0166] After obtaining the demonstration data, a target robotic arm that completes the target task can be constructed based on the demonstration data and each target link in the target link set.
[0167] In some embodiments, the deformed target link assembly includes multiple target links. Based on the deformed target link assembly and demonstration data, a target robotic arm is constructed, including: determining the set of physical properties for each target link based on the triangular mesh and cage structure of each target link in the deformed target link assembly; the set of physical properties includes the physical property parameters of the target links; and constructing the target robotic arm based on the deformed target link assembly, the set of physical properties of the deformed target link assembly, and demonstration data.
[0168] As in the above embodiment, after deformation based on formula (5), the triangular mesh and tetrahedral mesh of the target link can be obtained. Based on the triangular mesh and cage structure of the target link, the set of physical properties of each target link can be determined first. Then, based on the set of physical properties and demonstration data, the target robotic arm can be constructed. Specifically, the triangular mesh of the target link can be tetrahedralized first to obtain the tetrahedral mesh of the target link. Then, based on the tetrahedral mesh and cage structure of the target link, the set of physical properties of each target link can be determined.
[0169] The set of physical properties of the target link specifically includes: mass, center of mass position, inertia tensor, translational offset, rotation matrix, and structural flexibility, denoted as . The definitions and acquisition methods of each physical attribute in the above set of physical attributes are as follows: Among them, physical property set In The method for determining the mass of the target link i includes: based on the tetrahedral set in the tetrahedral mesh of the deformed target link, determining the volume of each tetrahedron included in the target link, adding the volumes of each tetrahedron to obtain the volume of the target link, and multiplying the volume of the target link by the material density of the target link i to obtain the mass of the target link i. Specifically, as shown in the following formula (6): (6) In the above formula (6), Let i be the mass of link i. The material density of connecting rod i (pre-calibrated). The sum of the volumes of the tetrahedrons included in the target link is the volume of the target link itself.
[0170] Physical property set In The method for determining the centroid position of the target link i includes: determining the centroid of each tetrahedron in the tetrahedral set of the deformed target link, and averaging the centroids of each tetrahedron by volume weight to obtain the centroid position of the target link i. Specifically, as shown in the following formula (7): (7) In the above formula (7), The position of the center of mass of the target link i For each tetrahedron, It represents the ratio of the volume of each tetrahedron to the total volume.
[0171] Physical property set In For the target link i about the center of mass The inertia tensor is obtained by integrating the tetrahedral elements according to the Mirtich polyhedral mass property algorithm. The inertia tensor is related to... Differentiable. Specifically, you can input a complete tetrahedral voxel mesh of the connecting rod, given a uniform material density ρ; traverse each tetrahedral element, call the Mirtich analytical integral formula, and calculate the volume, centroid, and local inertia tensor of the tetrahedron step by step; according to the parallel axis theorem, transform the local inertia tensor of each tetrahedron to the global coordinate system of the connecting rod; sum the global inertia tensors of all tetrahedrons one by one to finally obtain the total inertia tensor of the entire connecting rod.
[0172] Physical property set In The translational offset (joint position offset) of target link i relative to the coordinate system of the previous link is determined by the position of the interface vertex of the cage after deformation, mainly reflecting... The first length Second length The effect on the connecting rod.
[0173] Physical property set In Let i be the rotation matrix of the target link i relative to the coordinate system of the previous link, which is the first rotation angle in the deformation parameters. (Roll), Second Rotation Angle (Yaw) is constructed using rotation operators. The rotation matrix is usually a 3x3 orthogonal matrix used to completely describe the deflection attitude of one coordinate system relative to another in three-dimensional space. In this scheme, it is obtained by multiplying the two rotation angles Roll (around the X-axis) and Yaw (around the Z-axis) in the link deformation parameters by calling the rotation operator in sequence, which represents the fixed spatial orientation relationship when two adjacent links are assembled.
[0174] Physical property set In The structural flexibility (reciprocal of stiffness) of the target link i is used to quantitatively describe the ease with which the target link i undergoes elastic deformation under external forces and torques. The larger the flexibility value, the more obvious the bending and torsional deformation of the link under the same load, the worse the rigidity, and the greater the end-positioning error and jitter; the smaller the flexibility value, the less the structure is deformed, the better the rigidity, and the higher the trajectory tracking accuracy.
[0175] Structural compliance is obtained by applying a unit lateral force to the deformed voxel structure and then solving for the end displacement using the finite element method. The smaller the value, the higher the stiffness.
[0176] A voxel structure refers to discretizing a single three-dimensional link entity into a large number of cubic micro-units (voxel meshes), forming a regular orthogonal voxel mesh composed of all cubic units located inside the link entity. Each set of standard link combinations corresponds to a set of deformation parameters. The deformed voxel structure refers to the discrete mesh that adapts to the current link configuration by synchronously updating the spatial coordinates and geometric dimensions of all voxels after modifying the deformation parameters. In this embodiment, the voxel mesh can also be a tetrahedral voxel mesh, with the micro-units being tetrahedral units.
[0177] The core principle of the finite element method is to break down a continuous link into a large number of tiny voxel elements, establish an elasticity equation for each element, transfer mechanical effects between element nodes, solve the deformation field as a whole, and then calculate the flexibility.
[0178] It is understood that the physical property set is the set of physical properties of the target link. The deformed target link combination includes multiple target links. It is possible to determine the multiple target links included in the deformed target link combination. The physical property sets of the multiple target links are combined to obtain the physical property set of the deformed target link combination. In some embodiments, the physical property set of the deformed target link combination can be denoted as the target physical property set.
[0179] In the above method, the physical property parameters of the target link are extracted based on the cage structure and triangular mesh of the target link obtained after deformation. This method can effectively obtain the physical property parameters of the target link after deformation. Based on the physical property parameters and demonstration data, the target robotic arm can be constructed, which can ensure that the constructed robotic arm conforms to the real working conditions and can be used in practice.
[0180] In some embodiments, a target robotic arm is constructed based on the deformed target link assembly, the set of physical properties of the deformed target link assembly, and demonstration data, including the following steps S31 to S33: S31, based on the set of physical properties of the deformed target link assembly and demonstration data, determine the performance index and structural flexibility of the reference robotic arm corresponding to the deformed target link assembly.
[0181] If the physical properties corresponding to the deformed target link assembly are denoted as the target physical property set in the above embodiments, then the performance indicators and structural flexibility of the reference robotic arm corresponding to the deformed target link assembly can be determined based on the target physical property set and the demonstration data.
[0182] The aforementioned performance indicators include at least one of the following parameters: driving torque of each joint in the reference robotic arm, Cartesian mass matrix, operability, dynamic condition index, torque utilization rate, etc.
[0183] Among the performance indicators, the driving torque of each joint in the reference manipulator refers to the instantaneous torque output by each joint actuator to overcome the inertia, gravity, and external load of the link during the movement of the reference manipulator; it can be completely solved based on the target trajectory through the dynamic equations. This indicator is used to evaluate the dynamic load level of the link topology. Excessively high peak torque will lead to increased motor selection costs and severe heat generation.
[0184] In some embodiments, performance metrics include the driving torque of each joint in the reference manipulator, and demonstration data includes the end-effector pose trajectory and end-effector force. The driving torque of each joint in the reference manipulator is determined by: determining the joint trajectory in the reference manipulator based on the end-effector pose trajectory; constructing a target demonstration dataset based on the joint trajectory and end-effector force; and determining the driving torque of each joint in the reference manipulator based on the set of physical properties of the deformed target link assembly and the target demonstration dataset.
[0185] The demonstration data includes the end-effector pose trajectory and end-effector force that the target robotic arm needs to execute. The driving torque of each joint in the reference robotic arm can be derived by inverse calculation based on the end-effector pose trajectory and end-effector force.
[0186] Specifically, after obtaining the deformed target link assembly and determining the topology fixation of the reference manipulator, the demonstration data collected by the ForceUMI device can be mapped onto the joint space of the reference manipulator. The demonstration data includes the end-effector pose trajectory. and end external force Specifically, the end effector pose trajectory needs to be determined first. Joint trajectory obtained through inverse kinematics .
[0187] The topology of a robotic arm refers to the overall structural framework comprising the number of links, the order of link arrangement, the model and specifications of each link segment, and the sequence of joint connections. A fixed topology means that the link sequence structure is not altered, links are not replaced, and link positions are not changed. In the above embodiment, one set of link combinations corresponds to one robotic arm; that is, one set of link combinations corresponds to one robotic arm topology. A fixed link combination results in a fixed topology; in other words, obtaining the target link combination means the topology is fixed.
[0188] Specifically, the end-effector pose trajectory can be achieved using the following formula (8). Joint trajectory obtained through inverse kinematics : (8) In the above formula (8), For joint trajectory, For the inverse kinematics solver function, This is to demonstrate the end-effector pose trajectory in the demonstration data.
[0189] Joint trajectory Specifically, the joint angles are used to obtain the joint trajectory. After that, joint trajectory can be tracked. Differentiate to obtain the joint angular velocity. Joint angular acceleration Joint trajectory Joint angular velocity Joint angular acceleration and end external force The target demonstration dataset is obtained by organizing the data, and is denoted as follows: .
[0190] After obtaining the target demonstration dataset, the driving torque of each joint in the reference robotic arm can be determined based on the set of target physical properties of the deformed target linkage assembly and the aforementioned target demonstration dataset.
[0191] In the above method, the trajectory of each joint of the reference manipulator corresponding to the target link assembly is obtained by inverse kinematics of the end pose trajectory of the demonstration data, the end external force is integrated to construct complete target demonstration data, and the driving torque of each joint is inversely derived by matching the physical properties of the link. The driving torque that conforms to the demonstration data can be obtained, thereby directly transforming the mechanical requirements of the real task into the optimization target, which makes it easier to construct a target manipulator that conforms to the real requirements based on the driving torque.
[0192] In some embodiments, the set of physical properties of the deformed target link assembly includes the mass, center of mass position, inertia tensor, translational offset, and rotation matrix of the target link; based on the set of physical properties of the deformed target link assembly and the target demonstration dataset, the driving torque of each joint in the reference manipulator is determined, including: constructing the kinematic link corresponding to the deformed target link assembly based on the translational offset and rotation matrix of the target link; the kinematic link represents the overall kinematic geometry link of the manipulator corresponding to the deformed target link assembly; based on the kinematic link, the target demonstration dataset, the mass, center of mass position, and inertia tensor of the target link are input into a pre-established dynamic equation to obtain the driving torque of each joint in the reference manipulator.
[0193] The set of physical properties of the deformed target link assembly includes the mass, center of mass position, inertia tensor, translational offset, rotation matrix, and structural flexibility of the multiple target links in the deformed target link assembly, denoted as . Translational offset of the target link based on the physical property set. and rotation matrix It is possible to construct the kinematic link corresponding to the deformed target link assembly.
[0194] A kinematic link represents the overall kinematic geometry of the robotic arm corresponding to the deformed target link assembly. The kinematic link includes the sequentially connected coordinate transformations between the base and links, adjacent links, and the end link and end effector. Each transformation is characterized by the translation offset and rotation matrix of the corresponding link. For example, the translation and rotation matrices of each segment are sequentially assembled according to the link sequence in the deformed target link assembly to construct a complete positive kinematic geometry link.
[0195] Based on the kinematic link, parameters such as the mass, center of mass position, and inertia tensor of the target link in the target demonstration dataset and physical attribute set are input into the pre-established dynamic equation. Based on the inverse operation of the dynamic equation, the driving torque of each joint in the reference robotic arm can be obtained.
[0196] Specifically, the dynamic equations can be pre-established based on the Featherstone algorithm, combined with the kinematic link, and recursively applied to the Newton-Euler algorithm. The Featherstone algorithm (also known as spatial vector recursive dynamics) is based on spatial velocity and spatial force vectors, and completes the dynamic solution of the serial robotic arm in two steps: forward recursion and backward recursion.
[0197] Forward recursion: From the base to the end, spatial velocity and spatial acceleration are transmitted link by link; Reverse recursion: From the end to the base, the inertial force of the link and the driving torque of the joint are derived link by link. Compared with traditional Lagrangian dynamics, this algorithm has lower computational complexity and faster solution speed, making it suitable for batch dynamic simulation evaluation of a large number of candidate link topologies.
[0198] The complete process of “pre-establishing the dynamic equations” includes: based on the kinematic link of the deformed target link assembly and the physical properties of each link (mass, center of mass position, inertia tensor, Roll / Yaw rotation matrix, translation offset), initializing the link spatial inertia and coordinate transformation parameters required by Featherstone; according to the sequence of the series links, solidifying the forward and reverse recursive calculation logic, constructing the standardized dynamic solution equations adapted to this topology, and obtaining the above dynamic equations. The established dynamic equations are shown in the following formula (9): (9) In the above formula (9), For driving torque, This refers to the joint angle (joint trajectory). For joint angular velocity, Joint angular acceleration, The joint space mass (inertia) matrix, For Coriolis force and centrifugal force terms, For gravity, For the terminal Jacobian matrix, This refers to the external force at the end.
[0199] Among them, the joint space mass (inertia) matrix Based on the physical properties of the link It is assembled recursively using a composite rigid body algorithm. It can be understood that each joint motor in the robotic arm is responsible for rotation, and the joint's rotation is hindered by its own links and other links; the magnitude of this resistance is the joint inertia. The inertia of all the joints in the robotic arm are combined to form the joint space inertia matrix. This describes the inertial relationship on the motor drive side, with the independent variable being the rotation angle of each joint, i.e., the joint angles mentioned above. .
[0200] Coriolis force and centrifugal force terms Velocity-related terms in Featherstone's forward-backward recursion , The calculations show that the Coriolis force and centrifugal force terms are coupled torque terms of the Coriolis force and centrifugal force, collectively referred to as the velocity coupling term. Centrifugal force refers to the radially outward centrifugal inertial force generated by the mass particles on the connecting rod when it rotates continuously around the joint, which acts in the opposite direction on the joint, forming a centrifugal torque. Coriolis force refers to the coupling of the rotational motions of the two connecting rods when two different joints rotate synchronously, with the mass particles participating in both rotations simultaneously, resulting in a cross-inertial force perpendicular to both the radial direction of the connecting rod and the relative velocity direction; this cross-inertial force acts on the joint to form a Coriolis coupling torque.
[0201] Gravity term This is the joint gravitational torque vector in the dynamic equations, generated solely by the weight of the connecting links. It describes the basic torque that each joint motor must output to support the weight of the entire arm's connecting links and counteract the downward tendency of gravity when the robotic arm is stationary, without velocity or acceleration. The gravity term can be derived from the mass of each connecting link. Center of mass It is obtained by recursively deducing from gravitational acceleration along the kinematic chain.
[0202] Terminal Jacobian matrix It is a 6-row n-order matrix (n is the total number of joints in the robotic arm), formed by the end-effector pose transformation function of the complete kinematic link, with respect to all joint angle variables. The first-order partial derivative is obtained; it is used to establish a linear mapping relationship between joint space motion and end-effector Cartesian space motion.
[0203] After obtaining the target demonstration dataset, the mass, center of mass position and inertia tensor of the target link in the physical property set of the target demonstration dataset can be directly input into the above dynamic equation, i.e. formula (9), to obtain the driving torque of each joint in the reference manipulator.
[0204] In the above method, by inputting the target demonstration dataset and the mass, center of mass position and inertia tensor of the target link into the dynamic equation, the actual working load can be restored by integrating all load conditions such as self-weight, center of mass position, inertia and end force, and then the driving torque of each joint of the reference robotic arm can be accurately solved.
[0205] The Cartesian mass matrix in performance metrics, also known as the task space inertia matrix, is a positive definite symmetric matrix that maps the joint space inertia matrix to the end-effector's Cartesian workspace. Matrix elements characterize the equivalent inertial mass of the robotic arm's end effector during X / Y / Z translation and rotation around the three axes, directly reflecting the dynamic inertial drag of the end effector's accelerated motion and used to evaluate the robotic arm's dynamic response speed.
[0206] It is understandable that the above joint space mass (inertia) matrix It is derived from joint space, which refers to the internal space of the motor's rotation angle. By mapping the joint space inertia matrix to the end-effector's Cartesian workspace, the Cartesian mass matrix can be obtained. The end-effector's Cartesian workspace is the external workspace for the end-effector's motion. Specifically, it refers to the three-dimensional Cartesian coordinate system established with the robot arm base as the origin. In this coordinate system, the robot arm's end effector has 3 translational coordinates (X, Y, Z) + 3 rotational attitudes (roll, pitch, yaw). These 6 dimensions together constitute the Cartesian workspace, which is the space where humans actually operate and perform tasks.
[0207] The operability in the performance index characterizes the overall flexibility of the robotic arm's end effector in moving in any Cartesian direction and outputting force in the current pose, and is used to measure the degree to which the robotic arm moves away from singular configurations. Generally, the higher the operability value, the stronger the end effector's omnidirectional motion capability; a value close to 0 indicates that it is close to a singularity, with dead zones in motion, or severe restrictions on force or movement. Operability can be calculated using the following formula (10): (10) In the above formula (10), For the terminal Jacobian matrix, For the transpose of the terminal Jacobian matrix, For matrix determinant, For operability.
[0208] The dynamic condition index in the performance metrics refers to the index that measures the dynamic inertial balance in all directions of the end-effector's Cartesian space, and is calculated based on the Cartesian mass matrix (mission space inertial matrix). The closer the index is to 1, the more uniform the equivalent inertia of the X, Y, and Z translations and the three-axis rotations at the end-effector, and the more consistent the acceleration and deceleration responses are in all directions; the larger the index, the more significant the difference in inertia in different motion directions, resulting in poor trajectory tracking accuracy and dynamic performance imbalance.
[0209] Specifically, the eigenvalues of the Cartesian mass matrix can be solved, and the ratio of the largest to the smallest eigenvalue can be used as the dynamic condition index. ,in The largest eigenvalue, It is the smallest eigenvalue.
[0210] Torque utilization rate in performance metrics refers to the ratio of the actual output driving torque of a joint to the rated maximum output torque of the joint motor. It is used to quantify the motor load occupancy and is divided into three categories: instantaneous utilization rate, peak utilization rate, and average utilization rate. The actual output driving torque of the joint is the driving torque of each joint obtained by reverse calculation above, while the rated maximum output torque of the joint motor is usually a fixed constant.
[0211] By combining various parameters such as the driving torque, Cartesian mass matrix, operability, dynamic condition index, and torque utilization rate of each joint in the above-mentioned reference robotic arm, the performance index of the reference robotic arm is obtained, denoted as . .
[0212] The structural flexibility of the reference robotic arm can specifically be the structural flexibility of the target links within the set of physical properties of the deformed target link assembly. .
[0213] S32 calculates the evaluation value based on performance indicators and structural flexibility, combined with a pre-built evaluation function. The evaluation function is used to represent the fusion result of performance indicators and structural flexibility.
[0214] The pre-constructed evaluation function is shown in the following formula (11): (11) In the above formula (11), L is the evaluation value. For performance indicators, For structural flexibility. and For coefficients (which can be calibrated in advance).
[0215] S33, based on the evaluation value, update the deformation parameters of the target link included in the reference robotic arm to obtain the target robotic arm.
[0216] Based on the evaluation values corresponding to each performance index and structural flexibility, the results are transmitted end-to-end along the differentiable link (including inverse dynamics and cage deformation). The deformation parameters of the target link in the deformed target link assembly are updated using AdamW (gradient descent optimizer), allowing the evaluation value (loss) to continuously decrease until convergence, and finally obtaining the target robotic arm that adapts to the task requirements.
[0217] Understandably, changes in link geometry will lead to changes in the robotic arm's interface transformation, kinematics, and dynamic parameters. Therefore, after each deformation parameter update, the link mesh and interface transformation are updated first, and the entire arm's kinematics are reconstructed. Then, the joint trajectories corresponding to the demonstration pose are resolved or updated for the updated robotic arm. Subsequently, the joint velocities, accelerations, Jacobian matrices, mass matrices, driving torques, structural responses, and task evaluations are recalculated. Finally, the deformation parameters are updated based on the new evaluation results.
[0218] Based on this, the pose trajectory and force in the real demonstration data are directly encoded into the evaluation value. The force in the demonstration data determines under which poses and loads the structural flexibility and torque utilization are penalized, and the pose trajectory determines under which operating points the operability and mass matrix are evaluated, so that the optimized geometry is customized for the mechanical requirements of the real task.
[0219] The evaluation value monotonically decreases and converges during the hierarchical optimization process, and the response pattern of the robotic arm will be gradually refined. If the structural flexibility term is removed during the optimization process, the optimized robotic arm will undergo significant deformation under the action of task forces. Therefore, stiffness constraints need to be included in the optimization loop.
[0220] In some embodiments, the optimized target robotic arm can perform a target task (such as opening a microwave oven door or surface polishing) in the high-performance differentiable multibody physics simulation engine MuJoCo (Multi-Joint dynamics with Contact). Compared with the unoptimized robotic arm, the target robotic arm has significant improvements in Cartesian mass, operability, torque usage, and structural flexibility.
[0221] In the above method, the deformation parameters are optimized by combining performance indicators and structural flexibility calculation evaluation values. This achieves reverse differentiation from downstream optimization loss, and the gradient is passed back to the deformation parameters to realize automatic updating of deformation parameters. At the same time, the stiffness information of the cage is bound, taking into account both geometric deformation and structural flexibility calculation to obtain the target robotic arm. This ensures that the optimized robotic arm has significant improvements in various performance indicators and structural flexibility compared to the initial design. It realizes an end-to-end differentiable link from cage geometry to rigid body dynamics. The stiffness constraint takes effect explicitly during optimization, avoiding post-validation.
[0222] Figure 4This is a schematic diagram of a device for constructing a robotic arm according to an embodiment of this application. The device is installed on an electronic device, which may be a cloud platform server or a local intelligent device (e.g., a computer device) or other intelligent terminal. This embodiment of the application does not limit the specific type of device.
[0223] Examples such as Figure 4 As shown, the device 400 includes: The first determining module 401 is used to determine the configuration of each basic link in the basic link set; the configuration includes: straight link or bent link; The first building module 402 is used to build the cage structure of each basic link based on the configuration of each basic link and the triangular mesh of each basic link. The second determining module 403 is used to determine the target link combination based on the basic link set; the target link combination includes multiple basic links; The control module 404 is used to deform each basic link based on the cage structure and deformation parameters of the basic link to obtain the deformed target link set. The second construction module 405 is used to construct a target robotic arm based on each target link in the target link set and the demonstration data; the demonstration data is used to demonstrate the target operating state when the target robotic arm completes the target task.
[0224] In some embodiments, the first construction module 402 is specifically used to: when the configuration of the basic link is a straight link, construct a bounding box based on the vertex set in the triangular mesh of the straight link, and use the bounding box as the cage structure of the straight link; when the configuration of the basic link is a bent link, divide the vertex set of the bent link into multiple non-overlapping subsets based on the interface connection length of the bent link, construct multiple bounding boxes based on the multiple non-overlapping subsets, and determine the cage structure of the bent link based on the multiple bounding boxes.
[0225] In some embodiments, the second construction module 405 is specifically used to: determine the set of physical properties of each target link based on the triangular mesh and cage structure of each target link in the deformed target link assembly; the set of physical properties includes the physical property parameters of the target link; and construct the target robotic arm based on the deformed target link assembly, the set of physical properties of the deformed target link assembly, and demonstration data.
[0226] In some embodiments, the second construction module 405 is specifically used for: performing combination enumeration based on the target link set to obtain multiple link combinations, each link combination including multiple target links; filtering the multiple link combinations to obtain target link combinations; and constructing a target robotic arm based on the deformed target link combinations, the set of physical properties of the deformed target link combinations, and demonstration data.
[0227] In some embodiments, the second construction module 405 is specifically used to: determine the performance index and structural flexibility of the reference manipulator corresponding to the deformed target link assembly based on the set of physical properties of the deformed target link assembly and demonstration data; calculate the evaluation value based on the performance index and structural flexibility, combined with a pre-constructed evaluation function, wherein the evaluation function is used to represent the fusion result of the performance index and structural flexibility; and update the deformation parameters of the target links included in the reference manipulator based on the evaluation value to obtain the target manipulator.
[0228] In some embodiments, the performance metrics include the driving torque of each joint in the reference robotic arm, and the demonstration data includes the end-effector pose trajectory and the end-effector force. The second construction module 405 is specifically used to: determine the joint trajectory of each joint in the reference robotic arm based on the end-effector pose trajectory; construct a target demonstration dataset based on the joint trajectory and the end-effector force; and determine the driving torque of each joint in the reference robotic arm based on the set of physical properties of the deformed target link assembly and the target demonstration dataset.
[0229] In some embodiments, the second construction module 405 is specifically used to: construct the kinematic link corresponding to the deformed target link combination based on the translation offset and rotation matrix of the target link; the kinematic link represents the overall kinematic geometry link of the manipulator corresponding to the deformed target link combination; based on the kinematic link, input the target demonstration dataset, the mass, center of mass position and inertia tensor of the target link into the pre-established dynamic equation to obtain the driving torque of each joint in the reference manipulator.
[0230] In some embodiments, the second determining module 403 is specifically used to: perform combination enumeration based on the basic link set to obtain multiple links combinations, each link combination including multiple basic links; and filter the multiple links combinations to obtain the target link combination.
[0231] In some embodiments, the target link in the second determining module 403 is replaced to obtain at least one reference link combination; the reference link combination is used as a candidate link combination, and the execution is returned based on the fitness of at least one candidate link combination to replace the target link in the at least one candidate link combination to obtain at least one reference link combination, until the execution is returned N times, where N is an integer greater than 1; the target link combination is determined based on the reference link combination obtained by the replacement.
[0232] In some embodiments, the second determining module 403 is specifically used to: for each link combination, determine the arm length of the initial robotic arm corresponding to the link combination and the reachable workspace of the initial robotic arm; if the arm length of the initial robotic arm is not within the work range of the target task, designate the link combination as a redundant link combination; if the links in the link combination will collide, designate the link combination as a redundant link combination; if the pose point corresponding to the demonstration data is not within the maximum workspace of the initial robotic arm corresponding to the link combination, designate the link combination as a redundant link combination.
[0233] In some embodiments, the second determining module 403 is specifically used to: perform K-step adjustments on the deformation parameters of the target link in the candidate link combination to obtain the end-effector trajectory of the candidate robotic arm corresponding to the candidate link combination after each step of adjustment; determine the trajectory gradient corresponding to each step of adjustment based on the end-effector trajectory of the candidate robotic arm corresponding to the candidate link combination after each step of adjustment and the end-effector trajectory of the candidate robotic arm corresponding to the candidate link combination before adjustment; determine the trajectory loss magnitude based on the end-effector trajectory of the candidate robotic arm corresponding to the candidate link combination after K-step adjustment; obtain the gradient stability parameter based on the trajectory gradient corresponding to each step of adjustment; and obtain the fitness based on the trajectory loss magnitude and the gradient stability parameter.
[0234] In some embodiments, the control module 404 is specifically used to: determine a first weight for each basic link based on the cage structure and triangular mesh of each basic link; determine a second weight for each basic link based on the cage structure and tetrahedral mesh of each basic link; and deform each basic link based on the first weight, the second weight, and deformation parameters to obtain a target link set.
[0235] In some embodiments, the first determining module 401 is further configured to: determine the trihedral mesh of each basic link in the basic link set; and perform tetrahedral voxelization on the triangular mesh of each basic link to obtain the tetrahedral mesh of each basic link.
[0236] In some embodiments, the first determining module 401 is specifically used to: for each basic link in the basic link set, determine the motor axis normal vectors of the two motors associated with the basic link; if the motor axis normal vectors of the two motors are equal, determine that the configuration of the basic link is a straight link; if the motor axis normal vectors of the two motors are not equal, determine that the configuration of the basic link is a bent link.
[0237] Figure 5 This is a schematic diagram of the structure of an electronic device provided in an embodiment of this application.
[0238] For example, such as Figure 5As shown, the electronic device 500 includes a memory 501 and a processor 502. The memory 501 stores executable program code 5011, and the processor 502 is used to call and execute the executable program code 5011 to perform a method for constructing a robotic arm.
[0239] Furthermore, embodiments of this application also protect an apparatus that may include a memory and a processor, wherein the memory stores executable program code, and the processor is used to call and execute the executable program code to perform a method for constructing a robotic arm provided in embodiments of this application.
[0240] This embodiment can divide the device into functional modules based on the above method example. For example, each module can correspond to a separate function, or two or more functions can be integrated into one processing module. The integrated module can be implemented in hardware. It should be noted that the module division in this embodiment is illustrative and only represents one logical functional division. In actual implementation, there may be other division methods.
[0241] When the device is divided into functional modules corresponding to each function, it may further include a first determining module, a first constructing module, a second determining module, a control module, and a second constructing module. It should be noted that all relevant content regarding the steps involved in the above method embodiments can be referenced to the functional descriptions of the corresponding functional modules, and will not be repeated here.
[0242] It should be understood that the apparatus provided in this embodiment is used to perform the above-described method for constructing a robotic arm, and therefore can achieve the same effect as the above-described implementation method.
[0243] When using integrated units, the device may include a processing module and a storage module. When applied to an electronic device, the processing module can be used to control and manage the operation of the electronic device. The storage module can be used to support the execution of relevant program code by the electronic device.
[0244] The processing module may be a processor or a controller, which can implement or execute various exemplary logic blocks, modules, and circuits shown in conjunction with the disclosure of this application. The processor may also be a combination of functions that implement computing capabilities, such as a combination of one or more microprocessors, a combination of digital signal processing (DSP) and a microprocessor, etc., and the storage module may be a memory.
[0245] In addition, the device provided in the embodiments of this application may specifically be a chip, component or module. The chip may include a connected processor and a memory. The memory is used to store instructions. When the processor calls and executes the instructions, the chip can execute a method for constructing a robotic arm provided in the above embodiments.
[0246] This embodiment also provides a computer-readable storage medium storing computer program code. When the computer program code is run on a computer, the computer executes the above-described related method steps to implement a method for constructing a robotic arm provided in the above embodiment.
[0247] This embodiment also provides a computer program product that, when run on a computer, causes the computer to perform the aforementioned steps to implement a method for constructing a robotic arm provided in the above embodiment.
[0248] In this embodiment, the device, computer-readable storage medium, computer program product, or chip are all used to execute the corresponding methods provided above. Therefore, the beneficial effects they can achieve can be referred to the beneficial effects in the corresponding methods provided above, and will not be repeated here.
[0249] Through the above description of the embodiments, those skilled in the art will understand that, for the sake of convenience and brevity, only the division of the above functional modules is used as an example. In actual applications, the above functions can be assigned to different functional modules as needed, that is, the internal structure of the device can be divided into different functional modules to complete all or part of the functions described above.
[0250] In the embodiments provided in this application, it should be understood that the disclosed apparatus and methods can be implemented in other ways. For example, the apparatus embodiments described above are merely illustrative; for instance, the division of modules or units is only a logical functional division, and in actual implementation, there may be other division methods. For example, multiple units or components may be combined or integrated into another device, or some features may be ignored or not executed. Furthermore, the coupling or direct coupling or communication connection shown or discussed may be through some interfaces; the indirect coupling or communication connection between devices or units may be electrical, mechanical, or other forms.
[0251] The above description is merely a specific embodiment of this application, but the scope of protection of this application is not limited thereto. Any variations or substitutions that can be easily conceived by those skilled in the art within the scope of the technology disclosed in this application should be included within the scope of protection of this application. Therefore, the scope of protection of this application should be determined by the scope of the claims.
Claims
1. A method for constructing a robotic arm, characterized in that, The method includes: Determine the configuration of each basic link in the basic link set; the configuration includes straight links or bent links; Based on the configuration of each basic link and the triangular mesh of each basic link, construct the cage structure of each basic link; The target link combination is determined based on the aforementioned basic link set; the target link combination includes multiple basic links. Based on the cage structure and deformation parameters of the basic connecting rod, each of the basic connecting rods in the target connecting rod assembly is deformed to obtain the deformed target connecting rod assembly. Based on the deformed target linkage assembly and demonstration data, a target robotic arm is constructed; the demonstration data is used to demonstrate the target operating state when the target robotic arm completes the target task.
2. The method according to claim 1, characterized in that, The construction of a cage structure for each basic connecting rod, based on the configuration of each basic connecting rod and the triangular mesh of each basic connecting rod, includes: When the configuration of the basic link is a straight link, a bounding box is constructed based on the vertex set in the triangular mesh of the straight link, and the bounding box serves as the cage structure of the straight link; or When the configuration of the basic connecting rod is a bent connecting rod, the set of vertices of the bent connecting rod is divided into multiple non-overlapping subsets based on the interface connection length of the bent connecting rod. Multiple bounding boxes are constructed based on the multiple non-overlapping subsets, and the cage structure of the bent connecting rod is determined based on the multiple bounding boxes.
3. The method according to claim 1 or 2, characterized in that, The deformed target link assembly includes multiple target links. The construction of the target robotic arm based on the deformed target link assembly and demonstration data includes: Based on the triangular mesh and cage structure of each target link in the deformed target link assembly, a set of physical properties for each target link is determined; the set of physical properties includes the physical property parameters of the target link. Based on the deformed target link assembly, the set of physical properties of the deformed target link assembly, and the demonstration data, the target robotic arm is constructed.
4. The method according to claim 3, characterized in that, The construction of the target robotic arm based on the deformed target link assembly, the set of physical properties of the deformed target link assembly, and the demonstration data includes: Based on the set of physical properties of the deformed target link assembly and the demonstration data, the performance index and structural flexibility of the reference robotic arm corresponding to the deformed target link assembly are determined. Based on the performance indicators and structural flexibility, and combined with a pre-constructed evaluation function, an evaluation value is calculated. The evaluation function is used to represent the fusion result of the performance indicators and structural flexibility. Based on the evaluation value, the deformation parameters of the target link included in the reference robotic arm are updated to obtain the target robotic arm.
5. The method according to claim 4, characterized in that, The performance indicators include the driving torque of each joint in the reference robotic arm, and the demonstration data includes the end-effector pose trajectory and end-effector force. The driving torque of each joint in the reference robotic arm is determined in the following way: Based on the end-effector pose trajectory, the joint trajectory of each joint in the reference robotic arm is determined; Based on the joint trajectory and the end effector force, a target demonstration dataset is constructed; Based on the set of physical properties of the deformed target link assembly and the target demonstration dataset, the driving torque of each joint in the reference robotic arm is determined.
6. The method according to claim 5, characterized in that, The set of physical properties of the deformed target link assembly includes the target link's mass, center of mass position, inertia tensor, translation offset, and rotation matrix; The determination of the driving torque of each joint in the reference robotic arm, based on the set of physical properties of the deformed target link assembly and the target demonstration dataset, includes: Based on the translation offset and rotation matrix of the target link, the kinematic link corresponding to the deformed target link assembly is constructed; the kinematic link represents the overall kinematic geometry link of the robotic arm corresponding to the deformed target link assembly. Based on the kinematic link, the target demonstration dataset, the mass, center of mass position, and inertia tensor of the target link are input into the pre-established dynamic equations to obtain the driving torque of each joint in the reference robotic arm.
7. The method according to claim 1, characterized in that, The determination of the target link combination based on the basic link set includes: Based on the aforementioned set of basic links, multiple sets of links combinations are obtained through combination enumeration, and each set of links combinations includes multiple basic links. The target link combination is obtained by screening multiple sets of link combinations.
8. The method according to claim 7, characterized in that, The step of filtering multiple sets of link combinations to obtain a target link combination includes: From the multiple sets of link combinations, identify redundant link combinations that cannot perform the target task, and remove the redundant link combinations from the multiple sets of link combinations to obtain at least one candidate link combination; For at least one of the candidate link combinations, calculate the fitness of the candidate link combination in performing the target task; The target link combination is determined based on the fitness of at least one of the candidate link combinations.
9. The method according to claim 8, characterized in that, The step of determining the target link combination based on the fitness of at least one of the candidate link combinations includes: Based on the fitness of at least one of the candidate link combinations, the target link in at least one of the candidate link combinations is replaced to obtain at least one reference link combination; The reference link combination is used as the candidate link combination, and the fitness of at least one candidate link combination is returned to perform the replacement of the target link in at least one candidate link combination to obtain at least one reference link combination, until the process is returned to perform N times, where N is an integer greater than 1. Based on the reference link combination obtained through replacement, the target link combination is determined.
10. The method according to claim 8, characterized in that, Determining redundant link combinations from multiple sets of link combinations that cannot perform the target task includes: For each link combination, determine the arm length of the initial robotic arm corresponding to the link combination and the reachable workspace of the initial robotic arm; If the length of the initial robotic arm is not within the working range of the target task, the link assembly is treated as a redundant link assembly. If the links in the linkage assembly collide, the linkage assembly will be used as a redundant linkage assembly. If the pose point corresponding to the demonstration data is not within the maximum workspace of the initial robotic arm corresponding to the link assembly, the link assembly is considered a redundant link assembly.
11. The method according to claim 8, characterized in that, The step of calculating the fitness of at least one of the candidate link combinations for performing the target task includes: The deformation parameters of the target link in the candidate link combination are adjusted in K steps to obtain the end trajectory of the candidate robot arm corresponding to the candidate link combination after each adjustment step. Based on the end trajectory of the candidate robotic arm corresponding to the candidate link combination after each adjustment and the end trajectory of the candidate robotic arm corresponding to the candidate link combination before adjustment, the trajectory gradient corresponding to each adjustment is determined. Based on the end-effector trajectory of the candidate robotic arm corresponding to the candidate link combination after K-step adjustment, the trajectory loss magnitude is determined; Based on the trajectory gradient adjusted at each step, gradient stability parameters are obtained. The fitness is obtained based on the trajectory loss magnitude and the gradient stabilization parameter.
12. The method according to claim 1, characterized in that, Based on the cage structure and deformation parameters of the basic connecting rods, each of the basic connecting rods in the target connecting rod assembly is deformed to obtain the deformed target connecting rod assembly, including: Based on the cage structure and triangular mesh of each of the basic links, determine the first weight of each of the basic links; Based on the cage structure and tetrahedral mesh of each of the basic links, a second weight for each of the basic links is determined; Based on the first weight, the second weight, and the deformation parameters, each of the basic links in the target link assembly is deformed to obtain the deformed target link assembly.
13. The method according to claim 12, characterized in that, The tetrahedral mesh is determined in the following way: Determine the trihedral mesh of each basic link in the basic link set; The triangular mesh of each of the basic connecting rods is tetrahedralized to obtain the tetrahedral mesh of each of the basic connecting rods.
14. The method according to claim 1, characterized in that, Determining the configuration of each basic link in the basic link set includes: For each basic link in the set of basic links, determine the motor axis normal vectors of the two motors associated with the basic link; When the motor axis normal vectors of the two motors are equal, the configuration of the basic connecting rod is determined to be a straight connecting rod; When the motor axis normal vectors of the two motors are not equal, the configuration of the basic connecting rod is determined to be a bent connecting rod.
15. An electronic device, characterized in that, The electronic device includes: Memory, used to store executable program code; A processor for calling and running the executable program code from the memory, causing the electronic device to perform the method as described in any one of claims 1 to 14.
16. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores a computer program that, when executed, implements the method as described in any one of claims 1 to 14.
17. A computer program product, characterized in that, When the computer program product is run on a computer or processor, it causes the computer or processor to perform the method as described in any one of claims 1 to 14.