Mechanical arm anthropomorphic motion method and device, terminal equipment and storage medium

By combining neural networks and kinematic models, anthropomorphic motion trajectories of redundant robotic arms are generated, solving the problem of discontinuous motion in traditional methods and achieving efficient anthropomorphic control, which is applicable to industrial and medical assistance fields.

CN120439257BActive Publication Date: 2026-07-21浙江人形机器人创新中心有限公司
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202510946127.0
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2025-07-09
Publication Date
2026-07-21
Estimated Expiration
2045-07-09

Smart Images

  • Figure CN120439257B_ABST
    Figure CN120439257B_ABST
Patent Text Reader

Abstract

The application provides a mechanical arm humanization motion method and device and a terminal device, which are suitable for the technical field of robot control, the mechanical arm comprises seven joints, and the method comprises the following steps: analyzing a motion task of the mechanical arm, and determining end posture data of the mechanical arm corresponding to the motion task; analyzing the end posture data by using a pre-trained neural network model to obtain a target angle of the seventh joint of the mechanical arm and corresponding target arm angles; performing inverse kinematics analysis on the target angle of the seventh joint based on a preset kinematics model to obtain corresponding multiple sets of angle data; selecting target set angle data with the highest matching degree between a theoretical arm angle and the target arm angle from the multiple sets of angle data, and controlling the motion of the mechanical arm based on the corresponding theoretical angles of the joints in the target set angle data, so that the mechanical arm performs the motion task in a humanized motion mode. The application can realize efficient and reliable humanization motion simulation.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application belongs to the field of robot control technology, and in particular relates to humanoid motion methods, devices, terminal equipment and storage media for robotic arms. Background Technology

[0002] With the continuous advancement of robotics and automation systems, redundant robotic arms have been widely used in industrial manufacturing, medical care, home services, and humanoid robots. Redundant robotic arms (hereinafter referred to as robotic arms), with multiple degrees of freedom and wrist offsets, have become the mainstream form of robotic arms due to their flexibility.

[0003] Human-like motion of robotic arms represents a new demand and challenge in the field. Highly anthropomorphic movement of robotic arms can better align with human intuition and provide a better user experience. However, traditional human-like motion methods for robotic arms primarily rely on analytical methods or numerical optimization to solve inverse kinematics. Since redundant robotic arms have infinitely many solutions in Cartesian space tasks, relying solely on mathematical constraints (such as minimum joint displacements) often fails to guarantee that the motion trajectory conforms to the natural movement characteristics of a human arm. Especially in robotic arms with wrist offsets, conventional methods can easily lead to abrupt changes in joint angles or discontinuous motion, affecting the smoothness and safety of human-robot collaboration.

[0004] In recent years, data-driven neural network methods have shown potential in motion planning. However, these methods still suffer from high computational complexity, insufficient real-time performance, or limited generalization ability, making them difficult to operate efficiently on resource-constrained robot controllers. Furthermore, they struggle to meet the high-end demands of anthropomorphic control.

[0005] Therefore, there is a need for a robotic arm anthropomorphic motion method that can both ensure computational efficiency and generate anthropomorphic motion trajectories to meet the real-time anthropomorphic control requirements of scenarios such as industrial collaboration and medical assistance. Summary of the Invention

[0006] In view of this, the embodiments of this application provide a method, apparatus, and terminal device for anthropomorphic motion of a robotic arm, which can provide a method, apparatus, terminal device, and storage medium for anthropomorphic motion of a robotic arm that can both ensure computational efficiency and generate anthropomorphic motion trajectories.

[0007] A first aspect of this application provides a method for anthropomorphic motion of a robotic arm, the robotic arm comprising seven joints, the method comprising: The motion task of the robotic arm is analyzed to determine the end-effector posture data of the robotic arm corresponding to the motion task; The pre-trained neural network model is used to analyze the end-effector posture data to obtain the optimal target angle of the 7th joint of the robotic arm and the corresponding target arm angle. Based on the preset kinematic model, the target angle of the 7th joint is analyzed by inverse kinematics to obtain multiple sets of angle data. Each set of angle data includes the theoretical angles of each joint of the robotic arm and the corresponding theoretical arm angle. The target group of angle data with the highest matching degree between the theoretical arm angle and the target arm angle is selected from the multiple groups of angle data. Based on the theoretical angles corresponding to each joint in the target group of angle data, the movement of the robotic arm is controlled so that the robotic arm performs the movement task in a human-like movement manner.

[0008] This application combines kinematic and neural network models. After determining the desired end-effector posture of the robotic arm based on pose planning, the neural network model is first used to analyze the end-effector posture to obtain the most suitable posture and optimal arm angle information. Then, the kinematic model is used to solve the kinematics of the robotic arm. Finally, the arm angle information output by the neural network model is used to match the optimal anthropomorphic solution, thereby achieving efficient and reliable anthropomorphic motion simulation. The kinematic model effectively ensures computational efficiency, while the neural network model effectively ensures the reliability of the solution selection, achieving accurate screening of the optimal anthropomorphic motion solution. Therefore, this application can significantly improve the anthropomorphism of the robotic arm's motion while ensuring computational efficiency.

[0009] In some embodiments of the first aspect, the end-effector posture data includes the desired posture of the end effector of the robotic arm at various times during the execution of the motion task.

[0010] In some embodiments of the first aspect, the motion task includes moving the end of the robotic arm from a starting position to a target position in a straight line, or includes moving a target object from a starting position to a target position in a straight line using the robotic arm; The analysis of the robotic arm's motion task to determine the end-effector posture data corresponding to the motion task includes: Establish the Cartesian linear equation between the end effector of the robotic arm and the initial pose from the starting position to the target pose at the target position; Based on the Cartesian equation of a straight line, pose planning is performed to obtain the desired pose of the end effector of the robotic arm at each moment during the execution of the motion task.

[0011] In some embodiments of the first aspect, prior to analyzing the motion task of the robotic arm, the method further includes: Collect arm movement data of a target mimicking an object as it moves; the target mimicking object is a human. The arm motion data is converted into joint angle data of the 7-DOF robotic arm with wrist bias through motion redirection; The angle data of each joint are analyzed to determine the corresponding end effector posture; Based on the inverse kinematics solution method, the end-effector posture corresponding to each joint angle data is processed to obtain the corresponding arm angle parameters; Based on the joint angle data, the corresponding end pose, and the corresponding arm angle parameters, the initial network model is trained to obtain the trained neural network model.

[0012] In some embodiments of the first aspect, a pre-trained neural network model is used to analyze the end-effector posture data to obtain the optimal target angle of the 7th joint of the robotic arm and the corresponding target arm angle; based on a preset kinematic model, inverse kinematic analysis is performed on the target angle of the 7th joint to obtain multiple sets of corresponding angle data, including: By analyzing the end-effector posture data using a pre-trained neural network model, the optimal target angle of the 7th joint of the robotic arm, the corresponding target arm angle, and the angles of each of the other joints corresponding to the target angle are obtained.

[0013] Inverse kinematics analysis is performed based on the following formula to obtain multiple sets of theoretical joint angles: each set of theoretical joint angles includes the theoretical angles corresponding to each joint of the robotic arm. ; ; ; in, This represents the position vector of the robotic arm from shoulder to wrist. Representing vectors The i-th component, d1 represents the angle of the i-th joint. d1 is the vertical height from the base to the first joint along the Z1 axis, d3 is the longitudinal offset from the second joint to the third joint along the Z3 axis, and d5 is the lateral offset from the fourth joint to the fifth joint along the Z5 axis.

[0014] In some embodiments of the first aspect, before performing inverse kinematic analysis on the target angle of the 7th joint based on the following formula to obtain the corresponding multiple sets of theoretical joint angles, the method further includes: Using a virtual homogeneous matrix, the position vector of the robotic arm from shoulder to wrist is calculated: ; in, This is the position vector of the 7th joint coordinate system of the robotic arm in the base coordinate system when there is no bias. This represents the position vector of the first joint coordinate system of the robotic arm in the base coordinate system. This represents the position vector of the 6th joint coordinate system of the robotic arm in the base coordinate system; Expanding the above equation, we get: ; ; .

[0015] A second aspect of this application provides a humanoid motion device for a robotic arm, the robotic arm including 7 joints, the device comprising: The attitude determination module is used to analyze the motion task of the robotic arm and determine the end-effector attitude data of the robotic arm corresponding to the motion task. An angle determination module is used to analyze the end-effector posture data using a pre-trained neural network model to obtain the optimal target angle of the 7th joint of the robotic arm and the corresponding target arm angle. The inverse kinematics analysis module is used to perform inverse kinematics analysis on the target angle of the 7th joint based on a preset kinematic model, and obtain multiple sets of angle data. Each set of angle data includes the theoretical angles of each joint of the robotic arm and the corresponding theoretical arm angle. The motion control module is used to filter out the target group angle data with the highest matching degree between the theoretical arm angle and the target arm angle from the multiple groups of angle data, and control the movement of the robotic arm based on the theoretical angles corresponding to each joint in the target group angle data, so that the robotic arm performs the motion task in a human-like motion manner.

[0016] A third aspect of this application provides a terminal device, the terminal device including a memory and a processor, the memory storing a computer program executable on the processor, the processor executing the computer program to implement the steps of the anthropomorphic robotic arm motion method as described in any of the first aspects above.

[0017] A fourth aspect of this application provides a computer-readable storage medium, comprising: storing a computer program, characterized in that, when the computer program is executed by a processor, it implements the steps of the anthropomorphic motion method of a robotic arm as described in any of the first aspects above.

[0018] The fifth aspect of this application provides a computer program product that, when run on a terminal device, causes the terminal device to execute the anthropomorphic robotic arm motion method described in any of the first aspects above.

[0019] The beneficial effects of the second to fifth aspects mentioned above can be referred to the relevant explanation of the beneficial effects of the first aspect, which will not be repeated here. Attached Figure Description

[0020] To more clearly illustrate the technical solutions in the embodiments of this application, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, the drawings described below are only some embodiments of this application. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.

[0021] Figure 1 This is a schematic diagram illustrating the implementation process of the anthropomorphic motion method for a robotic arm provided in this application embodiment; Figure 2 This is a schematic diagram illustrating the implementation process of the desired end-effector attitude calculation provided in an embodiment of this application; Figure 3 This is a schematic diagram illustrating the implementation process of neural network model training provided in an embodiment of this application; Figure 4 This is a schematic diagram of a 7-DOF redundant robotic arm provided in an embodiment of this application; Figure 5 This is a schematic diagram of the structure of the anthropomorphic motion device for robotic arms provided in the embodiments of this application; Figure 6 This is a schematic diagram of the terminal device provided in the embodiments of this application. Detailed Implementation

[0022] In the following description, specific details such as particular system architectures and techniques are set forth for illustrative purposes and not for limitation, in order to provide a thorough understanding of the embodiments of this application. However, those skilled in the art will understand that this application may also be implemented in other embodiments without these specific details. In other instances, detailed descriptions of well-known systems, apparatuses, circuits, and methods have been omitted so as not to obscure the description of this application with unnecessary detail.

[0023] To illustrate the technical solution described in this application, specific embodiments are provided below.

[0024] In recent years, data-driven neural network methods have shown potential in motion planning. However, these methods still suffer from high computational complexity, insufficient real-time performance, or limited generalization ability, making them difficult to operate efficiently on resource-constrained robot controllers. Furthermore, they struggle to meet the high-end demands of anthropomorphic control.

[0025] There is a need for a robotic arm anthropomorphic motion method that can both ensure computational efficiency and generate anthropomorphic motion trajectories to meet the real-time anthropomorphic control requirements of scenarios such as industrial collaboration and medical assistance.

[0026] To address the aforementioned issues, the proposed embodiment first analyzes the robotic arm's motion task to determine the end-effector posture data corresponding to the task. Then, a pre-trained neural network model is used to analyze the end-effector posture data, obtaining the optimal target angle for the 7th joint of the robotic arm and the corresponding target arm angle. Next, based on a preset kinematic model, inverse kinematics analysis is performed on the target angle of the 7th joint, yielding multiple sets of angle data. Each set of angle data includes the theoretical angles corresponding to each joint of the robotic arm and the corresponding theoretical arm angles. Finally, the target set of angle data with the highest matching degree between the theoretical arm angle and the target arm angle is selected from the multiple sets of angle data. Based on the theoretical angles corresponding to each joint in the target set of angle data, the robotic arm's movement is controlled, enabling the robotic arm to perform the motion task in a human-like manner.

[0027] Compared to traditional methods, this application combines kinematic and neural network models. After determining the desired end-effector posture of the robotic arm based on pose planning, the neural network model is first used to analyze the end-effector posture to obtain the most suitable posture and optimal arm angle information. Then, the kinematic model is used to solve the kinematics of the robotic arm. Finally, the optimal anthropomorphic solution is matched based on the arm angle information output by the neural network model, thereby achieving efficient and reliable anthropomorphic motion simulation. The kinematic model effectively ensures computational efficiency, while the neural network model effectively ensures the reliability of the selected solution, achieving accurate screening of the optimal anthropomorphic motion solution. Therefore, this application can significantly improve the anthropomorphism of robotic arm motion while ensuring computational efficiency, providing a better solution for the application of redundant robotic arms in fields such as medical assistance, home services, and industrial assembly.

[0028] Furthermore, this invention does not require iterative optimization, requires minimal computing resources, and can meet the real-time control needs of most robots (such as 1ms-level control cycles). It is suitable for application scenarios with high real-time requirements, such as industrial collaborative robots and service robots.

[0029] Figure 1 The flowchart illustrating the implementation of the anthropomorphic motion method for a robotic arm provided in Embodiment 1 of this application is shown. The robotic arm includes 7 joints, meaning it has 7 joints and degrees of freedom. Details are as follows: S101. Analyze the motion task of the robotic arm and determine the end-effector posture data corresponding to the motion task.

[0030] In the embodiments of this application, the motion task includes moving the end of the robotic arm from a starting position to a target position in a straight line, or moving a target object from a starting position to a target position in a straight line using the robotic arm.

[0031] After obtaining the robotic arm's motion task, this embodiment first analyzes the end effector's posture during the motion to obtain the required end effector posture data. In some embodiments, the end effector posture data includes the desired posture of the robotic arm's end effector at various moments during the execution of the motion task.

[0032] As an optional embodiment of this application, the desired pose of the robotic arm's end effector at various times can be calculated based on the Cartesian linear equation. Specifically, refer to... Figure 2 This is a flowchart illustrating the process of calculating the desired attitude of the end effector according to an embodiment of this application. S101 may include: S201. Establish the Cartesian space linear equation between the starting pose of the robotic arm's end effector and the target pose of the target position.

[0033] S202. Based on the Cartesian equation of linear motion, pose planning is performed to obtain the desired pose of the end effector of the robotic arm at each moment during the execution of the motion task.

[0034] For example, assuming the initial position coordinates of the robotic arm's end effector are (x0, y0, z0) and the target position coordinates are (x1, y1, z1), then the equation of a straight line in Cartesian space can be established: x(t) = x0 + t·(x1 - x0); y(t) = y0 + t·(y1 - y0); z(t) = z0 + t·(z1 - z0); Where t∈[0,1] is the time parameter.

[0035] By uniformly sampling within the range of the time parameter t, a series of position points of the robotic arm's end effector during its movement can be obtained. For each position point, the corresponding pose (usually represented by a rotation matrix or quaternion) also needs to be determined. Assuming the initial pose is R0 and the target pose is R1, the intermediate poses can be calculated using methods such as spherical linear interpolation (SLERP). Thus, the desired poses of the end effector at each time step required in this embodiment of the application are obtained.

[0036] S102. Analyze the end-effector posture data using a pre-trained neural network model to obtain the optimal target angle of the 7th joint of the robotic arm and the corresponding target arm angle.

[0037] Among them, the arm angle parameter of a robotic arm is a key variable used to describe the self-motion configuration of a redundant robotic arm (such as a 7-DOF robotic arm). The arm angle reflects the overall posture of the robotic arm. Especially under redundant degrees of freedom, the same end-effector pose can achieve different configurations by changing the arm angle. Its core function is to transform redundant degrees of freedom into quantifiable geometric angles, thereby assisting in motion planning and control.

[0038] In this embodiment, a neural network model designed for human movement is pre-trained. This model can extract human movement features and automatically infer appropriate 7th joint angle and arm angle parameters based on the desired end-effector pose. Specifically, motion data can be collected for a specific human object to be imitated, and the neural network model can be trained specifically based on this data to learn the object's motion characteristics. Thus, a highly anthropomorphic imitation of a specific object can be achieved, realizing the "replication" of the object's movements.

[0039] You can refer to this. Figure 3 This is a schematic diagram of the neural network model training process provided in the embodiments of this application, specifically including: S301. Collect arm movement data of the target mimicking object when it moves. The target mimicking object is a human.

[0040] The target object to be imitated can be a specific individual (i.e., collecting arm movement data for a specific person) or a certain group of people (such as adults or children, or other specific groups with certain commonalities), which can be determined according to actual needs.

[0041] S302. Convert the arm motion data into joint angle data of the 7-DOF robotic arm with wrist bias through motion redirection.

[0042] After obtaining the required arm motion data, this embodiment of the application further decomposes and transforms the arm motion data, thereby mapping it onto the 7 joints of the robotic arm to obtain the corresponding joint angle data.

[0043] S303. Analyze the angle data of each joint to determine the corresponding end effector posture.

[0044] After obtaining the angle data of each joint, the joint angle data can be simulated and calculated to obtain the corresponding end-effector pose data. For example, the modified Denavit-Hartenberg (MDH) model of the redundant arm can be used to process the joint angle data and calculate the corresponding end-effector pose.

[0045] S304. Based on the inverse kinematics solution method, the end-effector posture corresponding to each joint angle data is processed to obtain the corresponding arm angle parameters.

[0046] After determining the end effector posture, this embodiment of the application uses the inverse kinematics method to solve for the corresponding arm angle parameters as one of the required sample data.

[0047] S305. Based on the joint angle data, the corresponding end pose, and the corresponding arm angle parameters, the initial network model is trained to obtain the trained neural network model.

[0048] After determining the joint angles, end-effector pose, and arm angle parameters corresponding to each arm motion data point, these can be used as sample data for model training. The initial network model is then trained to obtain a neural network model that can determine the joint angles (arm angle parameters) of the robotic arm based on the end-effector pose. For example, in some embodiments, a multilayer perceptron (MLP) with two hidden layers, each containing 256 neurons, can be built. The end-effector pose is used as the network input, the loss function is calculated, and the network weight parameters are updated. After training, the network learns the feature information from human motion data.

[0049] As an optional embodiment of this application, the loss function shown in the following formula is selected to train the neural network, so that the neural network has the ability to extract human motion features.

[0050] ; Where k represents the k-th data set, For arm angle parameters, This is the angle data for the 7th joint.

[0051] S103. Based on the preset kinematic model, perform inverse kinematic analysis on the target angle of the 7th joint to obtain multiple sets of angle data. Each set of angle data includes the theoretical angles of each joint of the robotic arm and the corresponding theoretical arm angle.

[0052] After determining the target angle of the last joint (the 7th joint), the kinematic model established for the robotic arm will be used to perform inverse kinematic analysis on the target angle, thereby obtaining multiple sets of solutions (i.e., multiple sets of angle data). Each set of solutions contains the theoretical angles corresponding to each joint of the robotic arm, as well as the corresponding theoretical arm angle.

[0053] As an embodiment of this application, the preset kinematic model can be established based on the Denavit-Hartenberg parameters (DH parameters) of the robotic arm, or it can be established based on the MDH model, which describes the geometric relationships between the joints of the robotic arm. For a robotic arm with 7 joints, its kinematic model can be represented by a series of coordinate transformation matrices.

[0054] Inverse kinematics analysis refers to calculating the angles of each joint based on the position and orientation of the robotic arm's end effector. For a redundant degree-of-freedom robotic arm, the inverse kinematics problem typically has infinitely many solutions. In this embodiment, by fixing the angle of the 7th joint, the inverse kinematics problem of the redundant degree-of-freedom robotic arm can be transformed into the inverse kinematics problem of a non-redundant robotic arm, thus obtaining a set of solutions. By changing the angle of the 7th joint, multiple different solutions can be obtained, each solution containing the theoretical angles of each joint of the robotic arm and the corresponding theoretical arm angle.

[0055] S104. Select the target group angle data with the highest matching degree between the theoretical arm angle and the target arm angle from multiple groups of angle data, and control the movement of the robotic arm based on the theoretical angles corresponding to each joint in the target group angle data so that the robotic arm can perform the movement task in a human-like movement manner.

[0056] The matching degree can be measured by calculating the difference between the theoretical arm angle and the target arm angle; the smaller the difference, the higher the matching degree. For example, Euclidean distance or cosine similarity can be used as metrics.

[0057] In the control of a redundant-degree-of-freedom (DOF) robotic arm, inverse kinematics is a crucial step. Inverse kinematics refers to calculating the angle values ​​of each joint based on the desired pose of the end effector. For a redundant-degree-of-freedom robotic arm, since the number of degrees of freedom exceeds the dimension of the task space, there are infinitely many sets of joint angle solutions, making the selection of the optimal solution a challenging problem. In this embodiment, by selecting the target set of angle data with the highest matching degree and using the theoretical angles corresponding to each joint to control the robotic arm's movement, the actual motion posture of the robotic arm will most closely resemble the natural motion posture of a human, thus achieving a human-like motion. This allows for the accurate selection of the optimal human-like solution.

[0058] As an optional embodiment of this application, the method for solving the inverse kinematics in steps S102 to S103 includes: By analyzing the end-effector posture data using a pre-trained neural network model, the optimal target angle of the 7th joint of the robotic arm, the corresponding target arm angle, and the angles of each of the other joints corresponding to the target angle are obtained.

[0059] Based on the following formula, inverse kinematic analysis is performed to obtain the corresponding multiple sets of joint theoretical angles: ; ; ; in, This represents the position vector of the robotic arm from the shoulder to the wrist. Representing vectors The i-th component, This represents the angle of rotation of the i-th joint. di Indicates along the joint axis Z i The translation distance in the direction, where d1 is the vertical height from the base to the first joint along the Z1 axis, d3 is the longitudinal offset from the second joint to the third joint along the Z3 axis, and d5 is the lateral offset from the fourth joint to the fifth joint along the Z5 axis.

[0060] because The solution can be obtained from the SEW triangle using the Law of Cosines, and based on... From the expansion, we can see that in order to solve for the joint angles of the redundant arm given the end-effector pose, we can let ,Right now The other joint angles obtained are used as reference joint angles, and the reference plane of the redundant arm can be determined from these reference joint angles. Then, each joint angle can be solved.

[0061] Based on these joint theoretical angles, the theoretical arm angle corresponding to each set of joint theoretical angles is calculated, thereby obtaining the required multiple sets of angle data.

[0062] As a specific embodiment of this application, please refer to Figure 4 This is a schematic diagram of a 7-DOF redundant robotic arm provided in an embodiment of this application, including: shoulder joint S, elbow joint E, the intersection point of the rotation axes of the 5th and 6th joints is W, the intersection point of the rotation axes of the 5th and 7th joints is W', the rotation axes of the 6th and 7th joints do not intersect, and the elbow-wrist link length l. ew Shoulder-elbow link length l se The rotation axis of the 6th joint is Z6, and the rotation axis of the 7th joint is Z7. Figure 4 The MDH model of the robotic arm shown is shown in Table 1: Table 1

[0063] di Indicates the direction along the current link coordinate system Z i The translation distance of the axis.

[0064] Depend on Figure 4 As can be seen from Table 1, due to The redundant robotic arm's wrist joints do not intersect at a single point, thus failing to satisfy the Pieper criterion. To solve the inverse kinematics of this wrist-biased redundant robotic arm, one approach is to assume that the 7th wrist joint has no bias. Given the 7th joint angle, based on the robotic arm's forward kinematics, the actual end-effector position is transformed from W' to a virtual end-effector position W. The corresponding formula is: ; ; in, This represents the homogeneous matrix from the robot arm's base coordinate system to the 6th joint coordinate system. This represents the homogeneous matrix from the robot arm's base coordinate system to the 7th joint coordinate system. Let represent the homogeneous matrix from the 6th joint to the 7th joint of the robotic arm. This represents the homogeneous matrix from the robot arm's base coordinate system to the 7th joint when there is no bias. This represents the homogeneous matrix of joints 6 to 7 of the robotic arm when there is no bias at the wrist.

[0065] The virtual unbiased end homogeneous matrix Expanding, we have the following expression: ; in, This represents the rotation matrix from the robot arm's base coordinate system to the 7th joint coordinate system. This represents the rotation matrix from the 6th joint coordinate system of the robotic arm to the 7th joint coordinate system. This represents the position vector of the 6th joint coordinate system of the robotic arm in the base coordinate system. This represents the position vector of the 7th joint coordinate system of the robotic arm in the base coordinate system. This represents the position vector of the 7th joint coordinate system of the robotic arm in the 6th joint coordinate system.

[0066] Using a virtual homogeneous matrix, the position vector from shoulder S to wrist W can be calculated as follows: ; in, This is the position vector of the 7th joint coordinate system of the robotic arm in the base coordinate system when there is no bias. This represents the position vector of the first joint coordinate system of the robotic arm in the base coordinate system. This represents the position vector of the 6th joint coordinate system of the robotic arm in the base coordinate system; The above equation can be expanded as follows: ; ; ; in, Representing vectors The i-th component, This represents the angle of rotation of the i-th joint.

[0067] because The solution can be obtained from the SEW triangle using the Law of Cosines, and based on... From the expansion, we can see that in order to solve for the joint angles of the redundant arm given the end-effector pose, we can let ,Right now The other joint angles obtained are then used as reference joint angles. These reference joint angles determine the reference plane of the redundant arm, after which each joint angle can be solved. For example, the solution method described in the relevant literature Yu, C. et al., "An analytical solution for inverse kinematic of 7-DOF redundant manipulators with offset-wrist", International Conference on Mechatronics and Automation, August 2012, can be used to solve for each joint angle.

[0068] Based on these joint theoretical angles, the theoretical arm angle corresponding to each set of joint theoretical angles is calculated, thereby obtaining the required multiple sets of angle data.

[0069] Compared with the prior art, the above-described embodiments of this application have at least the following advantages: 1. Effectively solves the problem that when a redundant robotic arm with a biased wrist performs a Cartesian space task, the robotic arm's motion state is not human-like because the inverse kinematics has an infinite number of solutions and the user does not know how to select them.

[0070] 2. By adopting a humanoid motion generation scheme based on neural networks, the end-effector pose can be directly mapped to arm angle parameters that conform to human motion characteristics, avoiding the complex optimization calculations in traditional methods, while ensuring that the motion trajectory of the robotic arm is more human-like.

[0071] 3. In practical use, this invention does not require iterative optimization, requires little computing resources, and can meet the real-time control needs of most robots (such as 1ms-level control cycle). It is suitable for application scenarios with high real-time requirements, such as industrial collaborative robots and service robots.

[0072] 4. The neural network model in this application embodiment can be trained in a personalized manner according to the movement habits of different users, so that the movement style of the robotic arm is more in line with the natural movements of a specific operator, thereby improving the comfort of human-computer interaction and operation efficiency.

[0073] Compared to traditional methods, the embodiments of this application significantly improve the anthropomorphism of the robotic arm's movements while maintaining computational efficiency, providing a superior solution for the application of redundant robotic arms in fields such as medical assistance, home services, and industrial assembly. Specifically, through these embodiments, the robotic arm can achieve anthropomorphic motion generation during its movement, ensuring that the arm's state is human-like and aesthetically pleasing when performing tasks such as pushing objects. Furthermore, because the algorithm employs a small neural network and inverse kinematics analytical solution, it has low computational complexity and can be used for real-time robot control.

[0074] Corresponding to the method in the above embodiments, Figure 5 A structural block diagram of the anthropomorphic motion device for a robotic arm provided in an embodiment of this application is shown. For ease of explanation, only the parts related to the embodiment of this application are shown. Figure 5 The anthropomorphic motion device of the robotic arm in the example can be the execution subject of the anthropomorphic motion method of the robotic arm provided in the aforementioned embodiment 1.

[0075] Reference Figure 5 The robotic arm comprises 7 joints, and the device includes: The attitude determination module 51 is used to analyze the motion task of the robotic arm and determine the end-effector attitude data of the robotic arm corresponding to the motion task.

[0076] The angle determination module 52 is used to analyze the end-effector posture data using a pre-trained neural network model to obtain the optimal target angle of the 7th joint of the robotic arm and the corresponding target arm angle.

[0077] The inverse kinematics analysis module 53 is used to perform inverse kinematics analysis on the target angle of the 7th joint based on the preset kinematics model, and obtain multiple sets of angle data. Each set of angle data includes the theoretical angles of each joint of the robotic arm and the corresponding theoretical arm angles.

[0078] The motion control module 54 is used to filter out the target group angle data with the highest matching degree between the theoretical arm angle and the target arm angle from multiple groups of angle data, and control the movement of the robotic arm based on the theoretical angles corresponding to each joint in the target group angle data, so that the robotic arm can perform motion tasks in a human-like motion manner.

[0079] The process by which each module in the anthropomorphic robotic arm motion device provided in this application implements its respective function can be specifically referred to the foregoing. Figures 1 to 3 The description of the illustrated embodiment will not be repeated here.

[0080] It should be understood that the sequence number of each step in the above embodiments does not imply the order of execution. The execution order of each process should be determined by its function and internal logic, and should not constitute any limitation on the implementation process of the embodiments of this application.

[0081] It should be understood that, when used in this application specification and the appended claims, the term "comprising" indicates the presence of the described features, integrals, steps, operations, elements and / or components, but does not exclude the presence or addition of one or more other features, integrals, steps, operations, elements, components and / or a collection thereof.

[0082] It should also be understood that the term “and / or” as used in this application specification and the appended claims means any combination of one or more of the associated listed items and all possible combinations, and includes such combinations.

[0083] As used in this application specification and the appended claims, the term "if" may be interpreted, depending on the context, as "when," "once," "in response to determination," or "in response to detection." Similarly, the phrase "if determined" or "if detected [the described condition or event]" may be interpreted, depending on the context, as meaning "once determined," "in response to determination," "once detected [the described condition or event]," or "in response to detection [the described condition or event]."

[0084] Furthermore, in the description of this application and the appended claims, the terms "first," "second," "third," etc., are used only for distinguishing descriptions and should not be construed as indicating or implying relative importance. It should also be understood that although the terms "first," "second," etc., are used in the text to describe various elements in some embodiments of this application, these elements should not be limited by these terms. These terms are merely used to distinguish one element from another. For example, a first table may be named a second table, and similarly, a second table may be named a first table, without departing from the scope of the various described embodiments. Both the first table and the second table are tables, but they are not the same table.

[0085] References to "one embodiment" or "some embodiments" as described in this specification mean that one or more embodiments of this application include a specific feature, structure, or characteristic described in connection with that embodiment. Therefore, the phrases "in one embodiment," "in some embodiments," "in other embodiments," "in still other embodiments," etc., appearing in different parts of this specification do not necessarily refer to the same embodiment, but rather mean "one or more, but not all, embodiments," unless otherwise specifically emphasized. The terms "comprising," "including," "having," and variations thereof mean "including but not limited to," unless otherwise specifically emphasized.

[0086] The anthropomorphic robotic arm motion method provided in this application can be applied to terminal devices such as mobile phones, tablets, wearable devices, in-vehicle devices, augmented reality (AR) / virtual reality (VR) devices, laptops, ultra-mobile personal computers (UMPCs), netbooks, and personal digital assistants (PDAs). This application does not impose any restrictions on the specific type of terminal device. Alternatively, the terminal device may also be a robot itself equipped with a robotic arm.

[0087] As an example and not a limitation, when the terminal device is a wearable device, the term "wearable device" can also refer to any device that utilizes wearable technology to intelligently design and develop everyday wearables, such as glasses, gloves, watches, clothing, and shoes. Wearable devices are portable devices worn directly on the body or integrated into a user's clothing or accessories. Wearable devices are not merely hardware devices; they achieve powerful functions through software support, data interaction, and cloud interaction. Broadly defined, wearable smart devices include those with comprehensive functions, large sizes, and the ability to perform complete or partial functions without relying on a smartphone, such as smartwatches or smart glasses, as well as those focused on a specific application function that require interaction with other devices such as smartphones, such as various smart bracelets and smart jewelry for vital sign monitoring.

[0088] Figure 6 This is a schematic diagram of the structure of a terminal device provided in an embodiment of this application. For example... Figure 6 As shown, the terminal device 6 in this embodiment includes: at least one processor 60 ( Figure 6 (Only one is shown in the image) A memory 61 stores a computer program 62 that can run on the processor 60. When the processor 60 executes the computer program 62, it implements the steps in the various embodiments of the anthropomorphic motion method of the robotic arm described above, for example... Figure 1 Steps 101 to 104 are shown. Alternatively, when the processor 60 executes the computer program 62, it implements the functions of each module / unit in the above-described device embodiments, for example... Figure 5 The functions of modules 51 to 54 are shown.

[0089] The terminal device 6 can be a desktop computer, laptop, handheld computer, or cloud server, etc. The terminal device may include, but is not limited to, a processor 60 and a memory 61. Those skilled in the art will understand that... Figure 6This is merely an example of terminal device 6 and does not constitute a limitation on terminal device 6. It may include more or fewer components than shown, or combine certain components, or different components. For example, the terminal device may also include input and transmission devices, network access devices, buses, etc. Of course, the terminal device may also be a robot itself with a robotic arm.

[0090] The processor 60 may be a central processing unit (CPU), or other general-purpose processors, digital signal processors (DSPs), application-specific integrated circuits (ASICs), field-programmable gate arrays (FPGAs), or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. A general-purpose processor may be a microprocessor or any conventional processor.

[0091] In some embodiments, the memory 61 may be an internal storage unit of the terminal device 6, such as a hard disk or memory of the terminal device 6. The memory 61 may also be an external storage device of the terminal device 6, such as a plug-in hard disk, smart media card (SMC), secure digital card (SD), flash card, etc., equipped on the terminal device 6. Furthermore, the memory 61 may include both internal and external storage units of the terminal device 6. The memory 61 is used to store the operating system, applications, bootloader, data, and other programs, such as the program code of the computer program. The memory 61 can also be used to temporarily store data that has been sent or will be sent.

[0092] Furthermore, the functional units in the various embodiments of this application can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit. The integrated unit can be implemented in hardware or as a software functional unit.

[0093] This application also provides a terminal device, which includes at least one memory, at least one processor, and a computer program stored in the at least one memory and executable on the at least one processor. When the processor executes the computer program, it causes the terminal device to implement the steps in any of the above method embodiments.

[0094] This application also provides a computer-readable storage medium storing a computer program that, when executed by a processor, implements the steps described in the various method embodiments above.

[0095] This application provides a computer program product that, when run on a terminal device, enables the terminal device to implement the steps described in the various method embodiments above.

[0096] If the integrated module / unit is implemented as a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, all or part of the processes in the methods of the above embodiments can also be implemented by a computer program instructing related hardware. The computer program can be stored in a computer-readable storage medium, and when executed by a processor, it can implement the steps of the various method embodiments described above. The computer program includes computer program code, which can be in the form of source code, object code, executable files, or certain intermediate forms. The computer-readable medium can include: any entity or device capable of carrying the computer program code, a recording medium, a USB flash drive, a portable hard drive, a magnetic disk, an optical disk, a computer memory, a read-only memory (ROM), a random access memory (RAM), an electrical carrier signal, a telecommunication signal, and a software distribution medium, etc.

[0097] In the above embodiments, the descriptions of each embodiment have different focuses. For parts that are not described in detail or recorded in a certain embodiment, please refer to the relevant descriptions of other embodiments.

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

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

[0100] The above-described embodiments are only used to illustrate the technical solutions of this application, and are not intended to limit them. Although this application has been described in detail with reference to the foregoing embodiments, those skilled in the art should understand that modifications can still be made to the technical solutions described in the foregoing embodiments, or equivalent substitutions can be made to some of the technical features. Such modifications or substitutions do not cause the essence of the corresponding technical solutions to deviate from the spirit and scope of the technical solutions of the embodiments of this application, and should all be included within the protection scope of this application.

Claims

1. A method for anthropomorphic motion of a robotic arm, characterized in that, The robotic arm includes 7 joints, and the method includes: The motion task of the robotic arm is analyzed to determine the end-effector posture data of the robotic arm corresponding to the motion task; The pre-trained neural network model is used to analyze the end-effector posture data to obtain the optimal target angle of the 7th joint of the robotic arm and the corresponding target arm angle. Based on the preset kinematic model, the target angle of the 7th joint is analyzed by inverse kinematics to obtain multiple sets of angle data. Each set of angle data includes the theoretical angles of each joint of the robotic arm and the corresponding theoretical arm angle. The target group of angle data with the highest matching degree between the theoretical arm angle and the target arm angle is selected from the multiple groups of angle data. Based on the theoretical angles corresponding to each joint in the target group of angle data, the movement of the robotic arm is controlled so that the robotic arm performs the movement task in a human-like movement manner. Before analyzing the motion task of the robotic arm, the method further includes: Collect arm movement data of a target mimicking an object as it moves; the target mimicking object is a human. The arm motion data is converted into joint angle data of the 7-DOF robotic arm with wrist bias through motion redirection; The angle data of each joint are analyzed to determine the corresponding end effector posture; Based on the inverse kinematics solution method, the end-effector posture corresponding to each joint angle data is processed to obtain the corresponding arm angle parameters; Based on the joint angle data, the corresponding end pose, and the corresponding arm angle parameters, the initial network model is trained to obtain the trained neural network model.

2. The anthropomorphic motion method for a robotic arm as described in claim 1, characterized in that, The end-effector posture data includes the desired posture of the robotic arm's end-effector at various times during the execution of the motion task.

3. The anthropomorphic motion method for a robotic arm as described in claim 2, characterized in that, The motion task includes moving the end of the robotic arm from a starting position to a target position in a straight line, or moving a target object from a starting position to a target position in a straight line using the robotic arm; The analysis of the robotic arm's motion task to determine the end-effector posture data corresponding to the motion task includes: Establish the Cartesian space equation for the end effector of the robotic arm from the initial pose at the starting position to the target pose at the target position; Pose planning is performed based on the Cartesian linear equation to obtain the desired pose of the robotic arm's end effector at various times during the execution of the motion task.

4. The anthropomorphic motion method for a robotic arm as described in any one of claims 1 to 3, characterized in that, The step of analyzing the end-effector posture data using a pre-trained neural network model to obtain the optimal target angle of the 7th joint of the robotic arm and the corresponding target arm angle also includes: The end-effector posture data is analyzed using a pre-trained neural network model to obtain the angles of each other joint corresponding to the target angle. The inverse kinematics analysis of the target angle of the 7th joint based on the preset kinematic model yields multiple sets of corresponding angle data, including: The end-effector posture data is analyzed using a pre-trained neural network model to obtain the optimal target angle of the 7th joint of the robotic arm, the corresponding target arm angle, and the angles of each of the other joints corresponding to the target angle. Inverse kinematics analysis is performed based on the following formula to obtain multiple sets of theoretical joint angles: each set of theoretical joint angles includes the theoretical angles corresponding to each joint of the robotic arm. ; ; ; in, This represents the position vector of the robotic arm from shoulder to wrist. Representing vectors The i-th component, Let d1 represent the angle of the i-th joint, d3 represent the vertical height from the base to the first joint along the Z1 axis, d3 represent the longitudinal offset from the second joint to the third joint along the Z3 axis, and d5 represent the lateral offset from the fourth joint to the fifth joint along the Z5 axis.

5. The anthropomorphic motion method for a robotic arm as described in claim 4, characterized in that, Before performing inverse kinematic analysis on the target angle of the 7th joint based on the following formula to obtain the corresponding multiple sets of theoretical joint angles, the following steps are also included: Using a virtual homogeneous matrix, the position vector of the robotic arm from shoulder to wrist is calculated: ; in, This is the position vector of the 7th joint coordinate system of the robotic arm in the base coordinate system when there is no bias. This represents the position vector of the first joint coordinate system of the robotic arm in the base coordinate system. This represents the position vector of the 6th joint coordinate system of the robotic arm in the base coordinate system; Expanding the above equation, we get: ; ; 。 6. A robotic arm anthropomorphic motion device, characterized in that, The robotic arm includes 7 joints, and the device includes: The attitude determination module is used to analyze the motion task of the robotic arm and determine the end-effector attitude data of the robotic arm corresponding to the motion task. An angle determination module is used to analyze the end-effector posture data using a pre-trained neural network model to obtain the optimal target angle of the 7th joint of the robotic arm and the corresponding target arm angle. The inverse kinematics analysis module is used to perform inverse kinematics analysis on the target angle of the 7th joint based on a preset kinematic model, and obtain multiple sets of angle data. Each set of angle data includes the theoretical angles of each joint of the robotic arm and the corresponding theoretical arm angle. The motion control module is used to filter out the target group angle data with the highest matching degree between the theoretical arm angle and the target arm angle from the multiple groups of angle data, and control the movement of the robotic arm based on the theoretical angles corresponding to each joint in the target group angle data, so that the robotic arm performs the motion task in an anthropomorphic motion manner; Before analyzing the motion task of the robotic arm, the method further includes: Collect arm movement data of a target mimicking an object as it moves; the target mimicking object is a human. The arm motion data is converted into joint angle data of the 7-DOF robotic arm with wrist bias through motion redirection; The angle data of each joint are analyzed to determine the corresponding end effector posture; Based on the inverse kinematics solution method, the end-effector posture corresponding to each joint angle data is processed to obtain the corresponding arm angle parameters; Based on the joint angle data, the corresponding end pose, and the corresponding arm angle parameters, the initial network model is trained to obtain the trained neural network model.

7. The anthropomorphic motion device for a robotic arm as described in claim 6, characterized in that, The end-effector posture data includes the desired posture of the robotic arm's end-effector at various times during the execution of the motion task.

8. A terminal device, characterized in that, The terminal device includes a memory and a processor. The memory stores a computer program that can run on the processor. When the processor executes the computer program, it implements the steps of the method as described in any one of claims 1 to 5.

9. A computer-readable storage medium storing a computer program, characterized in that, When the computer program is executed by a processor, it implements the steps of the method as described in any one of claims 1 to 5.