Mechanical arm inverse kinematics optimization method, surgical robot and computer readable medium

By constructing a virtual robotic arm that satisfies the Piper criterion and simplifying it into a shoulder-elbow-wrist structure, the inverse control problem of redundant robotic arms in cases where the Piper criterion is not satisfied is solved. This enables the effective formation of an operational triangle in a single-port surgical robot, saving computing power and utilizing redundancy characteristics.

CN117260705BActive Publication Date: 2026-06-02HANGZHOU HUAJAN MEDICAL ROBOTICS CO LTD

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
HANGZHOU HUAJAN MEDICAL ROBOTICS CO LTD
Filing Date
2023-08-25
Publication Date
2026-06-02

Smart Images

  • Figure CN117260705B_ABST
    Figure CN117260705B_ABST
Patent Text Reader

Abstract

The application relates to a mechanical arm inverse kinematics optimization method, a surgical robot and a computer readable medium, wherein the method forms an operation triangle by actively controlling the mechanical arm. If the elbow angle of an elbow joint is kept unchanged, and if the target shoulder deflection angle of a shoulder joint is less than a limit threshold when solving the target end position and posture, it is indicated that the target shoulder deflection angle is within the movable range of the shoulder joint, the elbow angle of the elbow joint can be kept unchanged, the joint angle of a rotating joint contained in the shoulder joint is solved according to the target shoulder deflection angle of the shoulder joint and a target rotation angle of the shoulder joint, and the joint angles of all rotating joints are obtained. Since the elbow angle of the elbow joint is kept unchanged in the control process, the joint angle of the rotating joint contained in the elbow joint is correspondingly unchanged, and it is not necessary to repeatedly solve the inverse solution, so that the solving process of the target joint angle is simplified. Moreover, the scheme of the application can control the geometric shape of the mechanical arm in the process of solving the inverse solution, and the redundancy characteristics of the redundant mechanical arm are fully utilized.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of robotics technology, and in particular to a method for optimizing the inverse kinematics of a robotic arm, a surgical robot, and a computer-readable medium. Background Technology

[0002] Currently, redundant robotic arms used in industrial and medical fields generally adopt a configuration of seven rotational degrees of freedom combined with one translational degree of freedom. They possess self-motion characteristics, meaning that their shape can change even with a fixed end-effector pose. Redundant robotic arms can also be classified according to their configuration into robotic arms that satisfy the Piper criterion (the axes of the three joints at the end of the robotic arm intersect at a single point) and robotic arms that do not satisfy the Piper criterion.

[0003] For the inverse kinematics of redundant robotic arms, numerical iterative methods are often used. However, these methods cannot control the geometry of the robotic arm during the inverse kinematics process, thus failing to fully utilize its redundancy. This is particularly problematic in single-port surgical robot applications, where the robotic arm's end effector typically forms an operating triangle with the surgical area, allowing the operator to perform surgery within this triangular operating zone. Furthermore, for robotic arms that do not satisfy the Piper criterion, analytical methods cannot be used to solve their inverse kinematics. Analytical methods require calculating the angles of all rotational joints in each control cycle, which can lead to wasted computational resources when the operating triangle parameters remain constant. Summary of the Invention

[0004] Based on this, it is necessary to provide a method for optimizing the inverse kinematics of a robotic arm, which addresses the problem that traditional methods cannot control the geometry of the robotic arm when solving the inverse kinematics of a redundant robotic arm that does not satisfy the Piper criterion. This method is applicable to surgical robots and computer-readable media.

[0005] This application provides a method for optimizing the inverse kinematics of a robotic arm, applied to a redundant robotic arm comprising seven rotational joints and one translational joint. The method includes:

[0006] Based on the configuration of the target robotic arm, a virtual robotic arm that satisfies the Piper criterion is constructed.

[0007] All the rotational joints of the virtual robotic arm are simplified and configured as a shoulder-elbow-wrist structure, which includes a shoulder joint, an elbow joint, and a wrist joint.

[0008] The elbow angle of the elbow joint is determined based on the operating triangle formed by the shoulder-elbow intercontinental arm, the elbow-wrist intercontinental arm, and the shoulder-wrist intercontinental arm.

[0009] Taking the elbow angle of the elbow joint as unchanged, the target shoulder deviation angle, the target rotation angle of the shoulder joint, and the target displacement of the moving joint are calculated based on the target end pose.

[0010] Determine whether the target shoulder deviation angle of the shoulder joint corresponding to the target end pose is less than or equal to the limit threshold;

[0011] If the target shoulder deviation angle of the shoulder joint corresponding to the target end pose is less than or equal to the limit threshold, then the elbow angle of the elbow joint remains unchanged, and at least the joint angle of the rotation joint contained in the shoulder joint is solved based on the target shoulder deviation angle and the target rotation angle of the shoulder joint.

[0012] Obtain the joint angles of all rotational joints as the target joint angles;

[0013] By incorporating the target joint angles and the target displacement of the moving joints into the forward kinematics of the target robotic arm, the actual end-effector pose of the target robotic arm can be obtained analytically.

[0014] This application also provides a surgical robot, comprising:

[0015] Control equipment for executing the robotic arm inverse kinematics optimization method as described above;

[0016] The main hand device is connected to the control device via signal and is used to collect the operator's operating actions;

[0017] The robotic arm is signal-connected to the control device, and the robotic arm body includes several rotating joints.

[0018] This application also provides a computer-readable medium having a computer program stored thereon, wherein the computer program, when executed by a processor, implements the robotic arm inverse kinematics optimization method as described above.

[0019] This application relates to a method for optimizing the inverse kinematics of a robotic arm, a surgical robot, and a computer-readable medium. The method constructs a virtual robotic arm that satisfies the Piper criterion and simplifies its configuration into a shoulder-elbow-wrist structure. For single-port surgical robots, this method allows for active control of the robotic arm to form an operational triangle. The elbow angle is kept constant. If, when solving for the target end-effector pose, the target shoulder angle is less than a limit threshold, it indicates that the arm is within the shoulder joint's range of motion. Therefore, the elbow angle remains constant. The joint angles of the rotational joints within the shoulder joint are calculated based on the target shoulder angle and the target rotation angle, thus obtaining the joint angles of all rotational joints. Since the elbow angle remains constant during control, the joint angles of the rotational joints within the elbow joint also remain constant, eliminating the need for repeated inverse kinematics calculations, simplifying the target joint angle calculation process, and saving computational resources. Furthermore, this application's solution allows for control of the robotic arm's geometry during the inverse kinematics calculation process, fully utilizing the redundancy characteristics of the redundant robotic arm. Attached Figure Description

[0020] Figure 1 This is a flowchart illustrating a robotic arm inverse kinematics optimization method provided in an embodiment of this application.

[0021] Figure 2 A kinematic model of a target robotic arm is provided for one embodiment of this application.

[0022] Figure 3 A simplified model of the shoulder-elbow-wrist structure in the inverse kinematics optimization method for a robotic arm provided in an embodiment of this application.

[0023] Figure 4 This is a schematic diagram of the shoulder-elbow-wrist structure deployment method in the inverse kinematics optimization method for a robotic arm provided in an embodiment of this application.

[0024] Figure 5 for Figure 4 The provided diagram shows the angle of the shoulder-elbow-wrist structure unfolding.

[0025] Figure 6 This is a schematic diagram of the shoulder-elbow-wrist structure deployment method in a robotic arm inverse kinematics optimization method provided in another embodiment of this application.

[0026] Figure 7 for Figure 4 The provided diagram shows the angle of the shoulder-elbow-wrist structure unfolding.

[0027] Figure 8 This is a schematic diagram illustrating the principle of master-slave mapping compensation in the inverse kinematics optimization method for a robotic arm provided in an embodiment of this application.

[0028] Figure 9This is a structural block diagram of a surgical robot provided in one embodiment of this application.

[0029] Figure label:

[0030] 100 - Surgical robot; 110 - Control equipment; 120 - Main hand device; 130 - Robotic arm. Detailed Implementation

[0031] To make the objectives, technical solutions, and advantages of this application clearer, the following detailed description is provided in conjunction with the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are merely illustrative and not intended to limit the scope of this application.

[0032] This application provides a method for optimizing the inverse kinematics of a robotic arm. It should be noted that the method provided in this application is applicable to redundant robotic arms containing seven rotational joints and one translational joint, and which do not satisfy the Piper criterion. Figure 2 As shown, a motion model of the target robotic arm is established based on the DH method. The target robotic arm includes a translational joint J1, a first rotational joint J2, a second rotational joint J3, a third rotational joint J4, a fourth rotational joint J5, a fifth rotational joint J6, a sixth rotational joint J7, and a seventh rotational joint J8, for a total of 8 degrees of freedom. It is a redundant robotic arm. Furthermore, since the axes of the fifth rotational joint J6, the sixth rotational joint J7, and the seventh rotational joint J8 do not intersect at a single point, the Piper criterion is not satisfied.

[0033] Furthermore, the inverse kinematics optimization method for robotic arms provided in this application does not limit the executing entity. Optionally, the executing entity of the inverse kinematics optimization method for robotic arms provided in this application can be a computer or a microcontroller, or other devices with certain computing capabilities.

[0034] like Figure 1 As shown, in one embodiment of this application, the inverse kinematics optimization method for the robotic arm includes the following steps S100 to S800.

[0035] S100, based on the configuration of the target robotic arm, constructs a virtual robotic arm that satisfies the Piper criterion.

[0036] Specifically, based on the above configuration of the target robotic arm, the target robotic arm is simplified so that the axes of the fifth rotary joint J6, the sixth rotary joint J7 and the seventh rotary joint J8 intersect at a single point to satisfy the Piper criterion.

[0037] S200, all the rotational joints of the virtual robotic arm are simplified and configured into a shoulder-elbow-wrist structure, which includes a shoulder joint, an elbow joint and a wrist joint.

[0038] Specifically, such asFigure 3 As shown, the movable joint is defined as B, the shoulder joint as S, the elbow joint as E, and the wrist joint as W.

[0039] S300, based on the operating triangle formed by the shoulder-elbow inter-arm, elbow-wrist inter-arm, and shoulder-wrist inter-arm, solves the elbow angle of the elbow joint.

[0040] Specifically, in current single-port laparoscopic surgery, the single-port surgical robot used needs to unfold to form an operating triangle, allowing the operator to perform surgery within this triangular operating area using the robotic arm. Therefore, in actual operation, considering the requirement of an operating triangle in single-port laparoscopic surgery, this application fixes the elbow joint at a specific angle, thus fixing the shape of the operating triangle SEW. The position of the robotic arm's end effector is then achieved by moving the joint and the overall swinging of the operating triangle SEW around the shoulder joint S.

[0041] At this point, based on the geometric relationships between the shoulder-elbow interconstruction arm, the elbow-wrist interconstruction arm, and the shoulder-wrist interconstruction arm, the elbow angle of the elbow joint can be calculated.

[0042] S410, keeping the elbow angle of the elbow joint unchanged, calculate the target shoulder deviation angle, the target rotation angle of the shoulder joint, and the target movement amount of the moving joint based on the target end pose.

[0043] Specifically, the target end-effector pose is the end-effector position and orientation of the robotic arm obtained through master-slave mapping during the current control cycle. The target shoulder deflection angle is the swing angle of the shoulder joint, and the target rotation angle is the angle of rotation of the shoulder joint relative to the locating joint.

[0044] For example, the following is an embodiment, such as Figure 4 As shown, the solid line represents the state of the robotic arm in the previous control cycle, and the dashed line represents the target state of the robotic arm in the current control cycle. To achieve the target state, the elbow angle of the elbow joint E is kept constant, and the robotic arm end effector reaches the target end position by moving the joint B forward and backward, swinging the shoulder joint S, and rotating the shoulder joint S.

[0045] Through the above steps, without considering the limitation of the shoulder joint, the target shoulder deflection angle of the shoulder joint when the end of the robotic arm reaches the target end position can be initially obtained.

[0046] S500, determine whether the target shoulder deviation angle of the shoulder joint corresponding to the target end pose is less than or equal to the limit threshold.

[0047] Specifically, the limiting threshold is determined based on the structural design of the several rotational joints included in the shoulder joint. For example, if the rotational joint has a range of rotation angles from -90° to 90°, then the range of motion of the shoulder joint is determined by the corresponding rotational joints.

[0048] S610, if the target shoulder deviation angle of the shoulder joint corresponding to the target end pose is less than or equal to the limit threshold, then the elbow angle of the elbow joint remains unchanged, and at least the joint angle of the rotation joint contained in the shoulder joint is solved based on the target shoulder deviation angle and the target rotation angle of the shoulder joint.

[0049] Specifically, if the target shoulder angle of the shoulder joint corresponding to the target end pose is less than or equal to the limit threshold, it means that the limit of the shoulder joint has not been exceeded. By moving the joint forward and backward, swinging the shoulder joint, and rotating the shoulder joint, the end of the robotic arm can reach the target end position. The posture of the end of the robotic arm is achieved through the rotational joint contained in the wrist joint.

[0050] The method for determining the joint angles of the rotational joints included in the shoulder joint based on the target shoulder deviation angle and the target rotation angle of the shoulder joint is as follows:

[0051] 1) When the target shoulder deviation angle and the target rotation angle of the shoulder joint are determined, the posture transformation from before the shoulder joint to after the shoulder joint can be represented by a 4×4 homogeneous transformation matrix. The elements at each position of this homogeneous transformation matrix are known, and this transformation matrix is ​​defined as a known matrix.

[0052] 2) Then, using the joint angles of the rotational joints included in the shoulder joint as variables, establish a homogeneous transformation matrix to represent the posture transformation from before to after the shoulder joint. Define this homogeneous transformation matrix as the state transformation matrix.

[0053] 3) By making the known matrix and the state transformation matrix equal, the joint angles of the rotational joints included in the shoulder joint can be solved.

[0054] S700, obtain the joint angles of all rotational joints as the target joint angles.

[0055] S800 incorporates the target joint angle and the target movement of the moving joint into the forward kinematics of the target robotic arm to obtain the actual end-effector pose of the target robotic arm.

[0056] In this embodiment, by constructing a virtual robotic arm that satisfies the Piper criterion and simplifying its configuration to a shoulder-elbow-wrist structure, the robotic arm can be actively controlled to form an operational triangle for the application scenario of a single-port surgical robot. The elbow angle of the elbow joint remains constant. If, when solving for the target end-effector pose, the target shoulder angle of the shoulder joint is less than the limit threshold, it indicates that the movement is within the range of motion of the shoulder joint. Therefore, the elbow angle of the elbow joint can be kept constant. The joint angles of the rotational joints included in the shoulder joint are then calculated based on the target shoulder angle and the target rotation angle of the shoulder joint, thereby obtaining the joint angles of all rotational joints. Since the elbow angle of the elbow joint remains constant during control, the joint angles of the rotational joints included in the elbow joint also remain constant, eliminating the need for repeated inverse calculations, simplifying the calculation process for the target joint angles, and saving computational power. Furthermore, the solution of this application can control the geometry of the robotic arm during the inverse calculation process, fully utilizing the redundancy characteristics of the redundant robotic arm.

[0057] In one embodiment of this application, S100 includes the following S110 to S120.

[0058] S110, Based on the configuration of the target robotic arm, establish a virtual robotic arm whose joint angles correspond to the joint angles of each rotation joint of the target robotic arm.

[0059] S120, set the length of the end arm of the virtual robotic arm to 0 so that the axes of the three rotation joints at the end of the virtual robotic arm intersect at one point.

[0060] Specifically, such as Figure 2 As shown, the length of the arm a7 between the sixth rotary joint J7 and the seventh rotary joint J8 is set to 0. At this time, the axes of the fifth rotary joint J6, the sixth rotary joint J7 and the seventh rotary joint J8 intersect at one point.

[0061] In this embodiment, by treating the length of the end effector of the virtual robotic arm as 0, and ensuring that the axes of the three rotational joints at the end effector intersect at a single point, a virtual robotic arm satisfying the pipe criterion is established.

[0062] In one embodiment of this application, S200 includes the following S210 to S250.

[0063] S210, the virtual robotic arm is defined sequentially from the base to the end cap as a moving joint, a first rotating joint to a seventh rotating joint.

[0064] Specifically, the movable joint is fixedly connected to the base.

[0065] S220, with the base as the origin and the forward and backward directions of the moving joint as the z-axis, establish a base coordinate system.

[0066] For example, the following embodiment describes the establishment of such... Figure 5 In the base coordinate system shown, the shoulder deflection angle of the shoulder joint can be regarded as the angle between the shoulder-elbow interconstructive arm and the z-axis, and the target rotation angle of the shoulder joint can be regarded as the angle of the projection of the shoulder-wrist interconstructive arm on the x0y plane relative to the positive x-axis.

[0067] S230, the shoulder joint is defined as including a first rotational joint, a second rotational joint and a third rotational joint.

[0068] Specifically, such as Figure 3 As shown, the axes of the first, second, and third rotary joints intersect at a single point, which can be considered as a ball joint. These three rotary joints are equivalent to shoulder joints, and their rotation centers coincide at point S.

[0069] S240, the elbow joint is defined as including a fourth rotational joint.

[0070] Specifically, the elbow angle is the joint angle of the fourth rotational joint.

[0071] S250, the wrist joint is defined as including a fifth rotational joint, a sixth rotational joint and a seventh rotational joint.

[0072] Specifically, such as Figure 3 As shown, the simplified axes of the fifth, sixth, and seventh rotary joints intersect at a single point, which can be considered as a ball joint. These three rotary joints are equivalent to wrist joints, and their rotation centers coincide at point W.

[0073] In this embodiment, the rotational joints of the target robotic arm are simplified to the shoulder joint, elbow joint, and wrist joint as described above, thereby facilitating the inverse kinematics solution of the robotic arm.

[0074] In one embodiment of this application, such as Figure 5 As shown in S410, the target rotation angle of the shoulder joint is calculated using Formula 1:

[0075] α = atan2(y,x) Formula 1

[0076] Where α represents the target rotation angle of the shoulder joint, and the target end pose corresponds to the end position coordinates (x, y, z) in the base coordinate system.

[0077] The target shoulder deflection angle of the shoulder joint is calculated using Formula 2:

[0078] β=υ1+υ2 Formula 2

[0079] Where β is the target shoulder deflection angle of the shoulder joint, υ1 is the angle between the shoulder-wrist interconstruction arm and the z-axis of the base coordinate system, and υ2 is the angle between the shoulder-wrist interconstruction arm and the shoulder-elbow interconstruction arm.

[0080] In formula 2, υ1 is calculated using formula 3:

[0081]

[0082] Among them, l SW The length of the arm that connects the shoulder and wrist.

[0083] The target movement of the movable joint is calculated using formula 4:

[0084] d = zl BS -l SW ×cosυ1 Formula 4

[0085] Where d is the target displacement of the moving joint, l BS This is the current length between the shoulder joint and the base.

[0086] In one embodiment of this application, after S500, the robotic arm inverse kinematics optimization method further includes:

[0087] S621, if the target shoulder deviation angle of the shoulder joint corresponding to the target end pose is greater than the limit threshold, then the target shoulder deviation angle of the shoulder joint is equal to the limit threshold, and the target rotation angle of the shoulder joint, the elbow angle of the elbow joint, and the target movement amount of the moving joint are solved according to the target end pose.

[0088] Specifically, if the target shoulder deviation angle of the shoulder joint corresponding to the target end pose is greater than the limit threshold, it means that controlling the target shoulder deviation angle of the shoulder joint obtained by S410, the target rotation angle of the shoulder joint, and the target movement amount of the moving joint will exceed the limit of the shoulder joint. At this time, the elbow joint needs to continue to extend.

[0089] For example, the following is an embodiment, such as Figure 6 As shown, the solid line represents the robotic arm state in the previous control cycle, and the dashed line represents the target state of the robotic arm in the current control cycle. The shoulder joint S reaches its limit, meaning the triangular SEW cannot continue to swing outwards. In this case, the target shoulder deflection angle of the shoulder joint S is set to be equal to the limit threshold, and based on this, the target rotation angle of the shoulder joint S, the elbow angle of the elbow joint E, and the target movement of the translation joint B required for the target end-effector pose are calculated. The posture of the robotic arm end-effector is achieved through the rotational joint W included in the wrist joint.

[0090] S622, at least based on the target shoulder deflection angle of the shoulder joint, the target rotation angle of the shoulder joint, and the elbow angle of the elbow joint, solve the inverse solution of the target robotic arm to obtain the joint angles of all rotating joints as the target joint angles.

[0091] In this embodiment, if achieving the target end-effector pose would cause the shoulder joint to exceed the limit threshold, the target shoulder deviation angle of the shoulder joint is set to be equal to the limit threshold. Based on this, the target rotation angle of the shoulder joint, the elbow angle of the elbow joint, and the target movement amount of the locating joint required for the target end-effector pose are calculated. Since the target shoulder angle of the shoulder joint remains at the limit threshold during the control process, that is, the joint angles of the locating joints included in the shoulder joint are determined, there is no need to repeatedly calculate the inverse solution, simplifying the solution process for the target joint angles and saving computational power.

[0092] In one embodiment of this application, such as Figure 7 As shown, in S621, the target rotation angle of the shoulder joint is calculated using Formula 5:

[0093] α = atan2(y,x) (Formula 5)

[0094] Where α represents the target rotation angle of the shoulder joint, and the target end pose corresponds to the end position coordinates (x, y, z) in the base coordinate system.

[0095] The elbow angle of the elbow joint is calculated using formula 6:

[0096]

[0097] in, The elbow angle, β max The target shoulder deflection angle for the shoulder joint.

[0098] In Formula 6, γ is calculated using Formula 7.

[0099]

[0100] Where γ is the deflection angle of the elbow-wrist inter-arm structure relative to the z-axis of the base coordinate system, l EF It is the vertical distance from the center of rotation of the elbow joint to the z-axis of the base coordinate system.

[0101] In Formula 7, l EF Calculate using formula 8.

[0102] l EF =l SE ×cosβ formula 8

[0103] Among them, l SE This refers to the length of the arm structure between the shoulder and elbow.

[0104] The target movement of the movable joint is calculated using Formula 9:

[0105] d = zl BS -l EW ×cosγ-l SE ×cosβ Formula 9

[0106] Where d is the target displacement of the moving joint, l BS This is the current length between the shoulder joint and the base.

[0107] Because the simplified virtual robotic arm differs from the target robotic arm by the arm length between the sixth and seventh rotational joints, the target joint angles and target movement obtained using the above method are substituted into the forward kinematics of the target robotic arm. The resulting actual end-effector pose (including actual end-effector posture and actual end-effector position) is identical to the mapped end-effector pose (including mapped end-effector posture and mapped end-effector position) provided by the master-slave mapping. However, there is a positional error between the actual end-effector position and the mapped end-effector position. If the mapped end-effector pose is used as the target end-effector pose to solve for the target joint angles in each control cycle, the positional errors generated in subsequent control cycles will accumulate, causing the total positional error to exceed the allowable value after several control cycles.

[0108] Prior to S410, the inverse kinematics optimization method for the robotic arm further includes the following S401.

[0109] S401, adjust the master-slave mapping of the current control cycle according to the position error of the previous control cycle to obtain the target end pose.

[0110] In this embodiment, the position error of the previous control cycle is used to compensate for the master-slave mapping of the current control cycle, so that the position error is controlled to the level of the error generated in one control cycle, and will not accumulate.

[0111] In one embodiment of this application, S401 includes the following S401a to S401d.

[0112] S401a, calculate the displacement error between the mapped end displacement and the actual end displacement of the target robotic arm in the previous control cycle.

[0113] For example, the following is an embodiment, such as Figure 8 As shown, the mapped end-effector displacement of the target robotic arm in the previous control cycle is vector target_1, and the actual end-effector displacement of the target robotic arm in the previous control cycle is vector actual_1. Vector actual_1 is the actual displacement generated by substituting the target joint angle into the forward kinematics of the target robotic arm. The displacement error between the mapped end-effector displacement and the actual end-effector displacement is vector error_1.

[0114] S401b, obtain the mapping end displacement of the current control cycle according to the master-slave mapping.

[0115] Continue with Figure 8 The embodiment shown is described below, where the mapping end displacement of the current control cycle is vector target_2.

[0116] S401c: The mapped end displacement of the current control cycle is vector-added with the displacement error of the previous control cycle to obtain the expected end displacement of the current control cycle.

[0117] Continue with Figure 8 The embodiment shown is described below, where vector target_2 and vector error_1 are added together to obtain the desired end displacement modify_1 for the current control cycle.

[0118] S401d, based on the desired end-effector displacement and the current end-effector pose, obtain the target end-effector pose.

[0119] Continue with Figure 8 The illustrated embodiment is described below, in which modify_1 is combined with the current end-effector pose to obtain the target end-effector pose.

[0120] The target end-effector pose is used as input to solve for the target joint angles, thus obtaining the actual end-effector pose of the target robotic arm analytically. The actual end-effector displacement resulting from the actual end-effector pose is denoted as vector actual_2, and the displacement error between the actual end-effector pose and the mapped end-effector displacement target_2 is denoted as vector error_2.

[0121] In this embodiment, the displacement error of the previous control cycle is used to compensate for the mapped end displacement of the current control cycle, and the expected end displacement obtained by the compensation is used as the input of the inverse kinematics of the virtual robotic arm, so that the error can be controlled to the level of the error generated in one control cycle.

[0122] In one embodiment of this application, the length of all the arms in the target robotic arm between the rotary joint and the sixth joint is greater than the length of the arms between the sixth rotary joint and the seventh rotary joint.

[0123] In this embodiment, for master-slave mapping control, when control is performed at a higher frequency, i.e. a shorter control cycle (e.g., 1ms to 4ms), the displacement of the robotic arm under the control of the master device in each control cycle is small. Moreover, when the length of the arm a7 between the sixth and seventh rotary joints is smaller than the length of other arm segments, the error caused by ignoring a7 is negligible. Therefore, the total error of master-slave mapping in this application is small.

[0124] This application also provides a surgical robot 100.

[0125] In one embodiment of this application, such as Figure 9 As shown, the surgical robot 100 includes a control device 110, a main hand device 120, and a robotic arm 130.

[0126] Specifically, the control device 110 is used to execute the robotic arm inverse kinematics optimization method described above. Optionally, the control device 110 is a computer or microcontroller, or other device with a certain computing power. The master hand device 120 is signal-connected to the control device and is used to collect the operator's operating actions. The robotic arm 130 is signal-connected to the control device, and the robotic arm body includes several rotary joints.

[0127] This application also provides a computer-readable medium having a computer program stored thereon, wherein the computer program, when executed by a processor, implements the robotic arm inverse kinematics optimization method as described above.

[0128] The technical features of the above embodiments can be combined arbitrarily, and the execution order of the method steps is not restricted. For the sake of brevity, not all possible combinations of the technical features in the above embodiments are described. However, as long as there is no contradiction in the combination of these technical features, they should be considered to be within the scope of this specification.

[0129] The embodiments described above are merely illustrative of several implementation methods of this application, and while the descriptions are specific and detailed, they should not be construed as limiting the scope of this patent application. It should be noted that those skilled in the art can make various modifications and improvements without departing from the concept of this application, and these all fall within the protection scope of this application. Therefore, the protection scope of this application should be determined by the appended claims.

Claims

1. A method for optimizing the inverse kinematics of a robotic arm, applied to a redundant robotic arm comprising seven rotational joints and one translational joint, characterized in that, The inverse kinematics optimization method for the robotic arm includes: Based on the configuration of the target robotic arm, a virtual robotic arm that satisfies the Piper criterion is constructed. All the rotational joints of the virtual robotic arm are simplified and configured as a shoulder-elbow-wrist structure, which includes a shoulder joint, an elbow joint, and a wrist joint. The elbow angle of the elbow joint is determined based on the operating triangle formed by the shoulder-elbow intercontinental arm, the elbow-wrist intercontinental arm, and the shoulder-wrist intercontinental arm. Taking the elbow angle of the elbow joint as unchanged, the target shoulder deviation angle, the target rotation angle of the shoulder joint, and the target displacement of the moving joint are calculated based on the target end pose. Determine whether the target shoulder deviation angle of the shoulder joint corresponding to the target end pose is less than or equal to the limit threshold; If the target shoulder deviation angle of the shoulder joint corresponding to the target end pose is less than or equal to the limit threshold, then the elbow angle of the elbow joint remains unchanged, and at least the joint angle of the rotation joint contained in the shoulder joint is solved based on the target shoulder deviation angle and the target rotation angle of the shoulder joint. Obtain the joint angles of all rotational joints as the target joint angles; By incorporating the target joint angles and the target displacement of the moving joints into the forward kinematics of the target robotic arm, the actual end-effector pose of the target robotic arm is obtained analytically. The virtual robotic arm's entire rotational joint is simplified and configured as a shoulder-elbow-wrist structure, which includes shoulder joints, elbow joints, and wrist joints. The virtual robotic arm is defined sequentially from the base to the end effector as a movable joint, a first rotary joint, and a seventh rotary joint. A base coordinate system is established with the base as the origin and the forward and backward directions of the moving joints as the z-axis; The shoulder joint is defined as including a first rotational joint, a second rotational joint, and a third rotational joint; The elbow joint is defined as including a fourth rotational joint; The wrist joint is defined as including the fifth rotation joint, the sixth rotation joint and the seventh rotation joint; in the process of taking the elbow joint with the elbow angle unchanged and solving the target shoulder deviation angle, the target rotation angle of the shoulder joint and the target movement amount of the moving joint according to the target end pose, the target rotation angle of the shoulder joint is calculated using Formula 1. Official 1; in, This represents the target rotation angle of the shoulder joint, and the target end-effector pose corresponds to the end-effector position coordinates in the base coordinate system as follows: ; The target shoulder deflection angle of the shoulder joint is calculated using Formula 2; Official 2; in, The target shoulder deflection angle for the shoulder joint. The angle between the shoulder-wrist construct and the z-axis of the base coordinate system is denoted as . The angle between the shoulder-wrist intercontinental arm and the shoulder-elbow intercontinental arm; In Formula 2, Calculate using formula 3: Official 3; in, The length of the arm that connects the shoulder and wrist; The target movement of the movable joint is calculated using formula 4. Official 4; in, The target displacement of the moving joint. This is the current length between the shoulder joint and the base.

2. The inverse kinematics optimization method for a robotic arm according to claim 1, characterized in that, After determining whether the target shoulder deflection angle of the shoulder joint corresponding to the target end pose is less than or equal to the limiting threshold, the robotic arm inverse kinematics optimization method further includes: If the target shoulder deviation angle of the shoulder joint corresponding to the target end pose is greater than the limit threshold, then the target shoulder deviation angle of the shoulder joint is equal to the limit threshold, and the target rotation angle of the shoulder joint, the elbow angle of the elbow joint, and the target movement amount of the moving joint are solved according to the target end pose. The inverse kinematics of the target robotic arm is solved based on at least the target shoulder deflection angle of the shoulder joint, the target rotation angle of the shoulder joint, and the elbow angle of the elbow joint, so as to obtain the joint angles of all rotation joints as the target joint angles.

3. The inverse kinematics optimization method for a robotic arm according to claim 2, characterized in that, In the process of determining that if the target shoulder angle of the shoulder joint corresponding to the target end pose is greater than the limit threshold, the target shoulder angle of the shoulder joint is equal to the limit threshold, and the target rotation angle of the shoulder joint, the elbow angle of the elbow joint, and the target movement amount of the moving joint are solved according to the target end pose, the target rotation angle of the shoulder joint is calculated using Formula 5. Official 5; in, This represents the target rotation angle of the shoulder joint, and the target end-effector pose corresponds to the end-effector position coordinates in the base coordinate system as follows: ; The elbow angle of the elbow joint is calculated using formula 6; Official 6; in, The elbow angle at the elbow joint. The target shoulder deflection angle for the shoulder joint; In Formula 6, Calculate using formula 7; Official 7; in, The angle of deflection of the elbow-wrist construct relative to the z-axis of the base coordinate system. The vertical distance from the center of rotation of the elbow joint to the z-axis of the base coordinate system; In Formula 7, Calculate using formula 8; Official 8; in, The length of the arm spanning between the shoulder and elbow; The target movement of the movable joint is calculated using formula 9; Formula 9; in, The target displacement of the moving joint. This is the current length between the shoulder joint and the base.

4. The inverse kinematics optimization method for a robotic arm according to claim 1, characterized in that, Before determining the target shoulder angle, target rotation angle, and target displacement of the moving joint based on the target end-effector pose while keeping the elbow angle of the elbow joint constant, the robotic arm inverse kinematics optimization method further includes: The target end pose is obtained by adjusting the master-slave mapping of the current control cycle based on the position error of the previous control cycle.

5. The inverse kinematics optimization method for a robotic arm according to claim 4, characterized in that, The step of adjusting the master-slave mapping of the current control cycle based on the pose error of the previous control cycle to obtain the target end pose includes: Calculate the displacement error between the mapped end displacement and the actual end displacement of the target robotic arm in the previous control cycle; Obtain the mapping end displacement of the current control cycle based on the master-slave mapping; The desired end displacement of the current control cycle is obtained by vector addition of the mapped end displacement of the current control cycle and the displacement error of the previous control cycle. The target end-effector pose is obtained by combining the desired end-effector displacement with the current end-effector pose.

6. The inverse kinematics optimization method for a robotic arm according to claim 5, characterized in that, The length of all arms in the target robotic arm between the rotary joint and the sixth joint is greater than the length of the arms between the sixth and seventh rotary joints.

7. A surgical robot, characterized in that, include: A control device for executing the inverse kinematics optimization method for a robotic arm as described in any one of claims 1 to 6; The main hand device is connected to the control device via signal and is used to collect the operator's operating actions; The robotic arm is signal-connected to the control device, and the robotic arm body includes several rotating joints.

8. A computer-readable medium having a computer program stored thereon, wherein, When the computer program is executed by the processor, it implements the inverse kinematics optimization method for the robotic arm as described in any one of claims 1 to 6.