Control method of robot arm, path planning method and system of robot arm

By using the joints where the axes of the robotic arm intersect as the first type of joint and the other joints as the second type of joint, and adjusting the joint angles to achieve decoupled control of position and attitude, the problem of large computational load and path reversal in the path planning of multi-degree-of-freedom robotic arms is solved, thereby improving control efficiency and safety.

CN118682739BActive Publication Date: 2026-08-25WUHAN UNITED IMAGING HEALTHCARE SURGICAL TECH CO LTD
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN202310303575.X
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2023-03-23
Publication Date
2026-08-25
Estimated Expiration
2043-03-23

AI Technical Summary

Technical Problem

In existing technologies, path planning for multi-degree-of-freedom robotic arms suffers from problems such as high computational load, path reversal leading to low motion efficiency, and susceptibility to misjudgment, especially when obstacles are present.

Method used

The joints where the axes of the robotic arm intersect at a point are designated as the first type of joints, and the other joints are designated as the second type of joints. By adjusting the second type of joints, the end effector moves to the intermediate transition point. The first type of joints are then adjusted to ensure consistent posture. Finally, the second type of joints are adjusted to the target operation point. The joint angles are determined by combining inverse kinematics and the registration matrix, thereby achieving decoupled control of position and posture.

Benefits of technology

It effectively solves the problem of robotic arm path reversal, improves control efficiency, ensures motion safety, and reduces computational load.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN118682739B_ABST
    Figure CN118682739B_ABST
Patent Text Reader

Abstract

The application relates to a control method of a mechanical arm, a path planning method and system of the mechanical arm. The method comprises the following steps: adjusting a second type of joint of the mechanical arm, so that the mechanical arm end moves from a current operation point to an intermediate transition point; adjusting a first type of joint of the mechanical arm, so that the posture of the mechanical arm end at the intermediate transition point is the same as the posture of the mechanical arm end at a target operation point; and adjusting the second type of joint of the mechanical arm, so that the mechanical arm end moves from the intermediate transition point to the target operation point. The method can effectively solve the mechanical arm path return problem in the robot control process by reducing the high-dimensional planning problem of the mechanical arm into a three-dimensional planning problem, and improves the control efficiency of the mechanical arm.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of medical device control technology, and in particular to a control method, path planning method and system for a robotic arm. Background Technology

[0002] With the development of the robotics industry, the applications of robots are constantly expanding. Due to their advantages such as precision and safety, robots are also frequently used in neurosurgery. In neurosurgery, doctors determine the target point and needle insertion point based on the results of preoperative imaging examinations of the patient. Based on the target point and needle insertion point determined by the doctor, the target pose of the robotic arm of the neurosurgical assistive robot can be determined. Then, according to the path planning algorithm, the path for the robotic arm to move from the current pose to the target pose is planned.

[0003] For multi-degree-of-freedom robotic arms, path planning is a high-dimensional planning problem. Directly using traversal or graph search methods results in extremely high computational costs and time consumption, which cannot meet the needs of practical applications. To address this issue, a random sampling process can be introduced into path planning to reduce computational load. However, when obstacles exist in the environment, while the path planned by the random sampling-based path planning algorithm can avoid obstacles, it introduces some redundant path points into the path, causing the robotic arm to backtrack. Path backtracking reduces the robotic arm's motion efficiency, and when the robotic arm moves to redundant path points, the operator may perceive a deviation between the current and expected motion of the robotic arm and misjudge the robotic arm's motion as abnormal, leading to operator errors such as accidentally pressing the emergency stop button. Summary of the Invention

[0004] Therefore, it is necessary to provide an efficient and accurate control method, path planning method, and system for robotic arms to address the aforementioned technical problems.

[0005] In a first aspect, this application provides a control method for a robotic arm, which designates the joints of the robotic arm whose axes intersect at a single point as a first type of joint, and the joints of the robotic arm other than the first type of joint as a second type of joint; the method includes:

[0006] Adjust the second type of joint of the robotic arm so that the end effector of the robotic arm moves from the current operating point to the intermediate transition point;

[0007] Adjust the first type of joint of the robotic arm so that the posture of the robotic arm end effector at the intermediate transition point is the same as the posture of the robotic arm end effector at the target operation point;

[0008] Adjust the second type of joint so that the end effector of the robotic arm moves from the intermediate transition point to the target operation point.

[0009] In one embodiment, the method further includes:

[0010] Obtain the registration matrix between the robotic arm and the target object in the preoperative scanned 3D medical images;

[0011] Based on the registration matrix, the relative positional relationship between the robotic arm and the target object operated by the robotic arm is determined;

[0012] Determine the intermediate transition point based on the relative positional relationship.

[0013] In one embodiment, the method further includes:

[0014] Obtain the registration matrix between the robotic arm and the target object in the preoperative scanned 3D medical images, as well as the surgical planning information based on the 3D medical images;

[0015] Based on the registration matrix and surgical planning information, determine the target position of the target operation point and the target posture of the robotic arm end effector when it is located at the target operation point.

[0016] Based on the target position of the target operation point and the target posture of the robotic arm end effector, and using inverse kinematics, the first target joint angle of the first type of joint and the second target joint angle of the second type of joint of the robotic arm are determined when the robotic arm end effector is located at the target operation point.

[0017] In one embodiment, adjusting the second type of joint of the robotic arm so that the end effector of the robotic arm moves from the current operating point to an intermediate transition point includes:

[0018] Based on the position of the intermediate transition point and inverse kinematics, the intermediate joint angle of the second type of joint of the robotic arm is determined when the end of the robotic arm is located at the intermediate transition point;

[0019] The joint angle of the second type of joint of the robotic arm is adjusted from the second current joint angle to the intermediate joint angle. The second current joint angle refers to the joint angle of the second type of joint when the end of the robotic arm is at the current operating point.

[0020] In one embodiment, adjusting the first type of joint of the robotic arm so that the posture of the robotic arm end effector at the intermediate transition point is the same as the posture of the robotic arm end effector at the target operation point includes:

[0021] The joint angle of the first type of joint of the robotic arm is adjusted from the first current joint angle to the first target joint angle of the first type of joint. The first current joint angle refers to the joint angle of the first type of joint when the end of the robotic arm is at the current operating point.

[0022] In one embodiment, adjusting the second type of joint so that the end effector of the robotic arm moves from the intermediate transition point to the target operation point includes:

[0023] The joint angle of the second type of joint of the robotic arm is adjusted from the intermediate joint angle of the second type of joint to the target joint angle of the second type of joint.

[0024] Secondly, this application also provides a path planning method for a robotic arm, which designates the joints of the robotic arm whose axes intersect at a single point as first-type joints, and the joints of the robotic arm other than the first-type joints as second-type joints; the method includes:

[0025] Determine the first current joint angle of the first type of joint and the second current joint angle of the second type of joint when the end effector of the robotic arm is at the current operating point, and form a set of current joint angles;

[0026] Determine the intermediate joint angle of the second type of joint of the robotic arm when the end effector is located at the intermediate transition point; and determine the first target joint angle of the first type of joint and the second target joint angle of the second type of joint of the robotic arm when the end effector is located at the target operation point, and form a set of target joint angles.

[0027] A first set of joint angles is determined based on the intermediate joint angle of the second type of joint and the first current joint angle of the first type of joint; and a second set of joint angles is determined based on the intermediate joint angle of the second type of joint and the first target joint angle of the first type of joint.

[0028] Determine the first path for transforming the joint angles of the robotic arm from the current set of joint angles to the first set of joint angles, the second path for transforming the joint angles of the robotic arm from the first set of joint angles to the second set of joint angles, and the third path for transforming the joint angles of the robotic arm from the second set of joint angles to the target set of joint angles.

[0029] Thirdly, this application also provides a control system for a robotic arm, characterized in that the system includes a robotic arm and a controller; the robotic arm includes a first type of joint and a second type of joint; the first type of joint includes axis joints where all axes intersect at a single point; the second type of joint refers to axis joints in the robotic arm other than the first type of joint; the controller is used for:

[0030] Adjust the second type of joint of the robotic arm so that the end effector of the robotic arm moves from the current operating point to the intermediate transition point;

[0031] Adjust the first type of joint of the robotic arm so that the posture of the robotic arm end effector at the intermediate transition point is the same as the posture of the robotic arm end effector at the target operation point;

[0032] Adjust the second type of joint of the robotic arm so that the end effector moves from the intermediate transition point to the target operation point.

[0033] Fourthly, this application also provides a path planning system for a robotic arm. The system includes a robotic arm and a controller. The robotic arm includes a first type of joint and a second type of joint. The first type of joint includes axis joints where all axes intersect at a single point. The second type of joint refers to the axis joints in the robotic arm other than the first type of joint. The controller is used for:

[0034] Determine the first current joint angle of the first type of joint and the second current joint angle of the second type of joint when the end effector of the robotic arm is at the current operating point, and form a set of current joint angles;

[0035] Determine the intermediate joint angle of the second type of joint of the robotic arm when the end effector is located at the intermediate transition point; and determine the first target joint angle of the first type of joint and the second target joint angle of the second type of joint of the robotic arm when the end effector is located at the target operation point, and form a set of target joint angles.

[0036] A first set of joint angles is determined based on the intermediate joint angle of the second type of joint and the first current joint angle of the first type of joint; and a second set of joint angles is determined based on the intermediate joint angle of the second type of joint and the first target joint angle of the first type of joint.

[0037] Determine the first path for transforming the joint angles of the robotic arm from the current set of joint angles to the first set of joint angles, the second path for transforming the joint angles of the robotic arm from the first set of joint angles to the second set of joint angles, and the third path for transforming the joint angles of the robotic arm from the second set of joint angles to the target set of joint angles.

[0038] Fifthly, this application also provides a computer device. The computer device includes a memory and a processor, the memory storing a computer program, and the processor executing the computer program to perform the following steps:

[0039] Adjust the second type of joint of the robotic arm so that the end effector of the robotic arm moves from the current operating point to the intermediate transition point;

[0040] Adjust the first type of joint of the robotic arm so that the posture of the robotic arm end effector at the intermediate transition point is the same as the posture of the robotic arm end effector at the target operation point;

[0041] Adjust the second type of joint so that the end effector of the robotic arm moves from the intermediate transition point to the target operation point.

[0042] Sixthly, this application also provides a computer-readable storage medium. The computer-readable storage medium stores a computer program thereon, which, when executed by a processor, performs the following steps:

[0043] Adjust the second type of joint of the robotic arm so that the end effector of the robotic arm moves from the current operating point to the intermediate transition point;

[0044] Adjust the first type of joint of the robotic arm so that the posture of the robotic arm end effector at the intermediate transition point is the same as the posture of the robotic arm end effector at the target operation point;

[0045] Adjust the second type of joint so that the end effector of the robotic arm moves from the intermediate transition point to the target operation point.

[0046] Seventhly, this application also provides a computer program product. The computer program product includes a computer program that, when executed by a processor, performs the following steps:

[0047] Adjust the second type of joint of the robotic arm so that the end effector of the robotic arm moves from the current operating point to the intermediate transition point;

[0048] Adjust the first type of joint of the robotic arm so that the posture of the robotic arm end effector at the intermediate transition point is the same as the posture of the robotic arm end effector at the target operation point. The first type of joint is used to adjust the posture of the robotic arm end effector.

[0049] Adjust the second type of joint so that the end effector of the robotic arm moves from the intermediate transition point to the target operation point.

[0050] The aforementioned control method, path planning method, and system for the robotic arm involve adjusting the second type of joints to move the end effector from the current operating point to an intermediate transition point; adjusting the first type of joints to ensure the end effector's posture at the intermediate transition point is identical to its posture at the target operating point; and adjusting the second type of joints to move the end effector from the intermediate transition point to the target operating point. This method reduces the high-dimensional planning problem of the robotic arm to a three-dimensional planning problem, effectively solving the problem of path reversal during robot control and improving the control efficiency of the robotic arm. Attached Figure Description

[0051] Figure 1 This is a flowchart illustrating the control method of a robotic arm in one embodiment;

[0052] Figure 2 This is a schematic diagram of the control process of the robotic arm in one embodiment;

[0053] Figure 3 This is a flowchart illustrating the control method of the robotic arm in another embodiment;

[0054] Figure 4 This is a schematic diagram of a method for determining the plane of an intermediate transition point in one embodiment;

[0055] Figure 5 This is a flowchart illustrating the path planning method for a robotic arm in one embodiment;

[0056] Figure 6This is a structural block diagram of the control system of the robotic arm in one embodiment;

[0057] Figure 7 This is an internal structural diagram of a computer device in one embodiment. Detailed Implementation

[0058] 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.

[0059] First, it should be noted that the method provided in this application decouples the position control and attitude control in the control of the robotic arm and implements them separately. Therefore, the requirement for the robotic arm is that the axes of the three axes intersect at the same point. According to Pieper's criterion in robot kinematics, the three adjacent joint axes of a robot intersect at one point or the three axes are parallel. The purpose is to facilitate the calculation of the inverse kinematic solution. Therefore, robots in practical applications are often designed with "three adjacent joint axes intersecting at one point or the three axes being parallel". Therefore, the method provided in the embodiments of this application can be used to control the robotic arm of robots in practical applications. However, for some special cases, the method provided in this application can also be used to achieve accurate and efficient control of the robotic arm, including: (1) for non-adjacent joints where the axes of the three joint axes intersect at one point, it is possible to achieve the effect of controlling only the attitude of the intersection point without changing the position of the intersection point; (2) only two joints intersect at one point, and these two joints only control the attitude of the intersection point without changing the position of the intersection point. In practical applications, if it is a low-degree-of-freedom attitude control, the method provided in the embodiments of this application can also be used.

[0060] In one embodiment, such as Figure 1 As shown, a control method for a robotic arm is provided. Taking the application of this method to a six-degree-of-freedom robotic arm as an example, the robotic arm includes a second type of joint that controls the position of the robotic arm's end effector and a first type of joint that controls the posture of the robotic arm's end effector. The axes of all the first type of joints intersect at a single point. This embodiment includes the following steps:

[0061] Step 102: Adjust the second type of joint of the robotic arm so that the end effector of the robotic arm moves from the current operating point to the intermediate transition point;

[0062] A robotic arm is an articulated robotic arm, where each joint moves around its axis; it has multiple degrees of freedom; for example, a six-DOF robotic arm. Each joint of the robotic arm corresponds to a joint angle, which is the angle of rotation of the corresponding joint around its axis. By changing the joint angle of each joint, the position or orientation of the robotic arm's end effector can be changed. In one example, the robotic arm is a six-DOF robotic arm in a neurosurgical assistive robot, consisting of six joints: a front three-axis joint that controls the position and orientation of the end effector, and a rear three-axis joint that controls the orientation of the end effector. The axes of the rear three-axis joints intersect at a single point.

[0063] The workspace of a robotic arm is the space within its operating environment where its end effector can move freely without colliding with obstacles (including physical obstacles and the target object being manipulated) in the environment. Specifically, it can be determined by excluding the spatial coordinates of obstacles from the robotic arm's base coordinate system. These obstacle coordinates can be obtained by scanning and identifying the operating environment, such as through laser scanning or image recognition. Alternatively, it can be determined by transforming the coordinates of obstacles in the operating environment to the robotic arm's base coordinate system.

[0064] The intermediate transition point is used to indicate that the end effector of the robotic arm will not collide when the joint angle of the first type of joint is adjusted. Specifically, it can include the following two definitions: (1) When the robotic arm is at the intermediate transition point, no collision will occur at the end effector of the robotic arm regardless of how the joint angle of the first type of joint is adjusted; (2) The intermediate transition point is the transition point from the current operation point to the target operation point. The intermediate transition point needs to satisfy that during the process of the end effector of the robotic arm moving from the current operation point to the intermediate transition point and from the intermediate transition point to the target operation point, no collision will occur at the end effector of the robotic arm regardless of how the joint angle of the second type of joint of the robotic arm is adjusted. It should be noted that in the actual embodiment, when controlling the robotic arm, the selection of the intermediate transition point is limited by both of the above definition conditions, or only one definition condition can be used. In the workspace of the robotic arm, there may be multiple transition points that meet the above requirements. In this case, the transition point with the highest movement efficiency of the robotic arm is taken as the intermediate transition point.

[0065] It should be noted that, for the robotic arm in a neurosurgical assistive robot, when controlled using the method provided in this application embodiment, since the first three axis joints can control the position and orientation of the robotic arm's end effector, changing the joint angles of the first three axis joints will actually change both the position and orientation of the robotic arm's end effector. However, according to the definition of an intermediate transition point, this is a "safe" point for the robotic arm. Although changing the joint angles of the first three axis joints will change both the position and orientation of the robotic arm's end effector, the orientation change will not have any impact during the robotic arm's movement. Therefore, the orientation change caused by the change in the joint angles of the first three axis joints is ignored in this application.

[0066] The intermediate transition point is a point in the base coordinate system of the robotic arm, represented by three-dimensional position coordinates (,y,z). For the robotic arm, it has both position coordinates and attitude coordinates at each operation point, i.e. (x,,,,,). Therefore, the state of the robotic arm at each operation point corresponds to the joint angles of the six joints of the robotic arm, which can be represented as (1, q2, q3, q4, q5, q6), where q1, q2, and q3 are the joint angles of the second type of joints, and q4, q5, and q6 are the joint angles of the first type of joints.

[0067] The joint angle of the robotic arm at the current operating point is At the intermediate transition point, the joint angle of its second type of joint is... By adjusting the joint angles of the second type of joints, the end effector of the robotic arm moves from the current operating point to the intermediate transition point. During this process, the joint angles of the first type of joints controlling the posture of the end effector remain unchanged. Therefore, after the first control of the end effector, the joint angles of the six joints of the robotic arm are...

[0068] Step 104: Adjust the first type of joint of the robotic arm so that the posture of the robotic arm end effector at the intermediate transition point is the same as the posture of the robotic arm end effector at the target operation point.

[0069] Based on the application scenario of the robotic arm, the target operating point, target position, and target posture at the target operating point can be determined. According to the definition of an intermediate transition point, no collision will occur at the intermediate transition point regardless of the posture adjustment of the robotic arm's end effector. Therefore, after the robotic arm moves to the intermediate transition point, the joint angles of the first type of joint of the robotic arm are adjusted to make its posture consistent with the target posture. Referring to the example above, if the joint angle of the robotic arm at the target operating point is... After the first adjustment of the joint angles of the second type of joints, the joint angles of the six joints of the robotic arm are: At this point, the joint angle of the first type of joint of the robotic arm is changed from... Adjusted to

[0070] Step 106: Adjust the second type of joint of the robotic arm so that the end effector of the robotic arm moves from the intermediate transition point to the target operation point.

[0071] After adjusting the target posture of the robotic arm, move the end effector from the intermediate transition point to the target operation point, that is, move the joint angle of the second type of joint from... Adjusted to

[0072] It should be noted that, in one embodiment, during the control of the robotic arm, two intermediate safety points can be determined through intermediate transition points, dividing the control of the robotic arm into three stages: the first stage controls position changes, the second stage controls posture changes, and the third stage controls position changes again. Specifically, the intermediate safety point refers to the safe state point of the robotic arm's axis joints, represented by the joint angles of all joints. For example, as... Figure 2 As shown, the current operation point is ( s y s , z s At this point, the joint angles of all joints of the robotic arm are... The intermediate transition point is ( m y m , z m Construct the first intermediate security point Second intermediate safety point By making three adjustments, the target operation point (x) can be obtained. g y g , z g ) target joint angle

[0073] As described above, to achieve decoupled control of the position and attitude control of the robotic arm's end effector, at least one intermediate transition point and two intermediate safety points are required. In some embodiments, if multiple target operation points exist, after controlling the robotic arm to move to the first target operation point, this first target operation point is used as the current operation point, and the steps of this embodiment are repeated to complete the control of the robotic arm, allowing it to move to the second target operation point, and so on. That is, in the control process of multiple target operation points, since the determination of the intermediate transition point considers that no collision will occur from any operation point to the intermediate transition point or from the intermediate transition point to any operation point, the same intermediate transition point can be used for each target operation point. After completing the movement of each target operation point, it is not necessary to move the robotic arm to an initial position; it can directly move from the previous target operation point to the intermediate transition point, and then to the next target operation point, repeating the control of the robotic arm.

[0074] In the method provided in the above embodiments, the second type of joints of the robotic arm are adjusted so that the end effector of the robotic arm moves from the current operating point to an intermediate transition point; the first type of joints of the robotic arm are adjusted so that the posture of the end effector at the intermediate transition point is the same as the posture of the end effector at the target operating point; and the second type of joints are adjusted so that the end effector of the robotic arm moves from the intermediate transition point to the target operating point. By decoupling the position control and posture control of the end effector in conjunction with the structure of the robotic arm, the control process of the robotic arm is decomposed from high dimension into multiple three-dimensional controls, which greatly simplifies the problems in the robotic arm control process, reduces the amount of computation, and improves the control efficiency of the robotic arm while ensuring the safety of the robotic arm movement.

[0075] In one embodiment, such as Figure 3 As shown, the method further includes:

[0076] Step 302: Obtain the registration matrix between the robotic arm and the target object in the preoperative scanned 3D medical images;

[0077] Step 304: Determine the relative positional relationship between the robotic arm and its target object based on the registration matrix;

[0078] Step 306: Determine the intermediate transition point based on the relative positional relationship.

[0079] In this context, the target object refers to the subject on which the robotic arm performs its actions. For example, in a neurosurgical robot, the target object is the patient about to undergo surgery, which can be a human or an animal. The robotic arm is used for orientation and positioning. The registration matrix is ​​used to transform the coordinates between the robotic arm's base coordinate system and the image coordinate system, describing the relative positional relationship between the robotic arm and the target object. In one embodiment, the registration matrix is ​​a 4x4 matrix, where the 3x3 matrix in the upper left corner represents the transformation relationship between poses, and the 3x1 matrix in the fourth column in the upper right corner represents the transformation relationship between position coordinates.

[0080] The embodiments of this invention do not specifically limit the image type of three-dimensional medical imaging, including but not limited to: computed tomography (CT) images, nuclear magnetic resonance imaging (MRI) images, etc.

[0081] Based on the relative positional relationship, the positions of the robotic arm and the target object can be transformed into the same coordinate system, thereby determining the safe working range between the robotic arm and the target object. Then, intermediate transition points are selected within this safe working range based on preset conditions. For example, it may be required that the robotic arm moves from any operation point on the target object to the intermediate transition point without collision; or, the distance from the intermediate transition point to all target operation points of the robotic arm should be approximately the same to ensure motion efficiency. After determining the position coordinates of the intermediate transition point, the joint angles of the second type of joint of the robotic arm at the intermediate transition point can be obtained through inverse kinematics of the robot.

[0082] In the method provided in the above embodiments, the relative positional relationship between the robotic arm and the target object can be accurately determined by the registration matrix, thereby making the position of the intermediate transition point more in line with the requirements of safe and efficient movement of the robotic arm.

[0083] In one embodiment, determining the intermediate transition point based on relative positional relationships includes:

[0084] Based on the relative positional relationship, a first plane is determined to separate the robotic arm and the target object. The first plane is perpendicular to the horizontal line connecting the robotic arm and the target object.

[0085] Based on the position of the target object, determine a second plane above the target object, and the second plane is parallel to the target object;

[0086] The point on the intersection line of the first plane and the second plane that is closest to the target object is taken as the intermediate transition point.

[0087] It should be noted that the first plane lies between the robotic arm and the target object, but does not include any point on either side. Specifically, a first boundary point describing the outer contour of the robotic arm and a second boundary point describing the outer contour of the target object can be determined first. The perpendicular bisector between the two boundary points is then determined and serves as the first plane. The second plane can be a horizontal plane above the target object, and it also cannot include any point on the second boundary points.

[0088] It is understandable that the first plane lies between the robotic arm and the target object, while the second plane is parallel to the target object. Therefore, in space, the first and second planes must intersect, defining a line of intersection. The point on this line closest to the target object is selected as the intermediate transition point. The selection of the first and second planes ensures the safety of the intermediate transition point; the distance allows for the selection of the most efficient intermediate transition point.

[0089] Alternatively, the third plane can be determined by the relative positional relationship between the robotic arm and the target object, with the intersection of the three planes serving as an intermediate transition point. Figure 4 Taking a neurosurgical scenario as an example, the target patient is a person, and the robot is a neurosurgical assistive robot 1. The preset direction is... Figure 2 The image shows the patient's head 3 directly above the head. In addition, the image also includes the robotic arm 2 of the neurosurgical assistive robot 1, the support arm 4 for connecting the operating table 7 and the neurosurgical assistive robot 1, the unlocking mechanism 5 for fixing the connection between the operating table 7 and the neurosurgical assistive robot 1, and the head frame 6 for supporting the patient's head 3.

[0090] exist Figure 4 Based on the relative positional relationship between the robot and the target object, the intermediate transition point is obtained as follows: the center point of the patient's head is taken as the first reference point, and the center point of the neurosurgical assist robot base is taken as the second reference point; a vertical plane that passes through the center of the line connecting the first reference point and the second reference point and is perpendicular to the horizontal plane is taken as the first plane (plane A); a plane that is above the patient's head and parallel to the horizontal plane at a preset reference distance from the first reference point is taken as the second plane (plane B); a plane that contains the line connecting the first reference point and the second reference point and is perpendicular to the horizontal plane is taken as the third plane (plane C); and the intersection of the first plane, the second plane, and the third plane is taken as the intermediate transition point.

[0091] The method provided in the above embodiments, based on the plane determined by safety and the distance from the target object, determines the intermediate transition point, ensuring that the intermediate transition point has both safety and efficiency characteristics.

[0092] In one embodiment, determining the intermediate transition point based on relative positional relationships includes:

[0093] Based on the relative positional relationship, determine the three-dimensional spatial boundary between the robotic arm and the target object;

[0094] The three-dimensional space boundary is divided according to at least one preset side length to obtain several grids;

[0095] According to the preset side length in descending order, the system traverses several grids corresponding to each preset side length until the center point of the grid that meets the preset conditions is determined, which is then used as an intermediate transition point.

[0096] By using relative positional relationships, the positions of the robotic arm's base coordinate system, the target object, and obstacles in the robotic arm's workspace are transformed into the same coordinate system, and then feasible 3D spatial boundaries are determined. Feasibility means that the robotic arm can move within the 3D spatial boundaries without any collisions. It should be noted that, generally, to facilitate the selection of subsequent intermediate transition points, the shape of the 3D spatial boundaries is often a regular cuboid.

[0097] Secondly, based on the preset side lengths from largest to smallest, multiple levels of mesh division are designed to form a hierarchical structure. For example, assuming the feasible 3D space boundary is a cube with a side length of 16, if divided according to the preset side length of 8, it can be divided into 8 cube meshes with a side length of 8; if divided according to the preset side length of 4, it can be divided into 64 cube meshes with a side length of 4; and if divided according to the preset side length of 1, it can be divided into 4096 cube meshes with a side length of 1.

[0098] Secondly, prioritize the meshes used to divide the hierarchical structure. For example, a mesh with a side length of 16 is the first level, a mesh with a side length of 8 is the second level, and so on. The smaller the mesh, the lower the level. Finally, prioritize searching higher-level meshes (i.e., meshes with larger side lengths). If the center point of a mesh meets the selection requirements for an intermediate transition point, then that point is directly selected as the intermediate transition point. If none of the meshes at this level meet the requirements, then the search continues to the next lower level, and so on, until a feasible intermediate transition point is found.

[0099] It should be noted that in the above process, the actions of dividing the 3D space boundary using at least one preset side length and the traversal of intermediate transition points can be performed simultaneously. That is, for example, after dividing the 3D space boundary of a cube with a side length of 16 using a preset side length of 8 to obtain a mesh, intermediate transition points are first traversed through all the resulting meshes. If none are found, the preset side length is reduced, and the mesh division and intermediate transition point traversal process is repeated until a suitable intermediate transition point is found. This method avoids the workload caused by multiple mesh divisions and improves the efficiency of intermediate transition point traversal.

[0100] In the method provided in the above embodiments, intermediate transition points are determined by traversing the feasible three-dimensional spatial boundary between the robotic arm and the target object through mesh division. Under the premise of ensuring that the intermediate transition points are safe and collision-free, various selections of intermediate transition points can be made through preset conditions, making the selection of intermediate transition points more flexible and adaptable.

[0101] In one embodiment, determining the intermediate transition point based on relative positional relationships includes:

[0102] Obtain the initial position of the reference point of the target object, and determine the target position of the reference point in the base coordinate system of the robotic arm based on the relative positional relationship;

[0103] The weighted average position of the robotic arm's current position and the target reference point position is used as the intermediate transition point.

[0104] Here, the reference point refers to a representative operation point on the target object, such as the center point of the patient's head. The initial position refers to the position of the reference point in the coordinate system or image coordinate system of the target object, which is the position obtained when the reference point is selected. The initial position of the reference point is transformed into the base coordinate system of the robotic arm through the relative position relationship. The intermediate transition point between the current position of the robotic arm and the position of the target reference point is calculated using the weighted average position formula.

[0105] It should be noted that the weighted average position formula is a variation of the formula for solving the midpoint coordinates between two points. In the context of this application, the two points are the center point of the robotic arm base and the target reference point of the target object. The weighting coefficients in the weighted average position formula were determined experimentally.

[0106] In the method provided in the above embodiments, the coordinates of the intermediate transition point can be calculated by substituting the coordinates of two points into the weighted average position formula, thereby quickly determining the position of the intermediate transition point.

[0107] In one embodiment, the method further includes:

[0108] Obtain the registration matrix between the robotic arm and the target object in the preoperative scanned 3D medical images, as well as the surgical planning information based on the 3D medical images;

[0109] Based on the registration matrix and surgical planning information, determine the target position of the target operation point and the target posture of the robotic arm end effector when it is located at the target operation point.

[0110] Based on the target position of the target operation point and the target posture of the robotic arm end effector, and using inverse kinematics, the first target joint angle of the first type of joint and the second target joint angle of the second type of joint of the robotic arm are determined when the robotic arm end effector is located at the target operation point.

[0111] Surgical planning information refers to the information on the needle insertion point and target point planned by the doctor in the image coordinate system after determining the lesion area on the three-dimensional medical image of the target object based on the three-dimensional medical image scanned before the operation.

[0112] By using a registration matrix, the coordinates of the needle insertion point and the target point are transformed into the base coordinate system of the robotic arm, obtaining the transformed coordinates of the needle insertion point and the target point in the base coordinate system of the robotic arm. Through position analysis of the transformed needle insertion point and the target point, the target position of the target operation point and the target posture of the robotic arm end effector when it is located at the target operation point are determined. Finally, the target position and target posture are calculated into target joint angles using the robot's inverse kinematics algorithm, including the first target joint angle of the first type of joint angle and the second target joint angle of the second type of joint angle of the robotic arm.

[0113] It should be noted that in practical applications, a single patient may have multiple target points and multiple needle insertion points. Mathematically, the relationship between target points and needle insertion points can be many-to-many. The method provided in this application can determine multiple target operation points, and then the robotic arm can be controlled one by one using the method provided in this application. In light of clinical practice, the needle insertion points and target points mentioned in this embodiment are the most reasonable locations determined after reasonable planning by the doctor, and there is a one-to-one correspondence between the two.

[0114] In the method provided in the above embodiments, by analyzing the medical images of each patient and combining the inverse kinematics of the robot, the target joint angles corresponding to the target position and target posture of the robotic arm are quickly determined, thereby achieving decoupled control of the position and posture of the robotic arm.

[0115] In one embodiment, adjusting the second type of joint of the robotic arm so that the end effector of the robotic arm moves from the current operating point to an intermediate transition point includes:

[0116] Based on the position of the intermediate transition point and inverse kinematics, the intermediate joint angle of the second type of joint of the robotic arm is determined when the end of the robotic arm is located at the intermediate transition point;

[0117] The joint angle of the second type of joint of the robotic arm is adjusted from the second current joint angle to the intermediate joint angle. The second current joint angle refers to the joint angle of the second type of joint when the end of the robotic arm is at the current operating point.

[0118] Determine the coordinates of the intermediate transition point ( m y m , z m After that, inverse kinematics calculations are performed on this coordinate to determine the joint angle of the second type of joint when the robot arm is at the intermediate transition point. This joint angle is used as the intermediate joint angle of the second type of joint during the robot arm control process. Then, the joint angle of the second type of joint of the robot arm is adjusted from the second current joint angle at the current operation point to the intermediate joint angle so that the position of the end of the robot arm moves from the current operation point to the intermediate transition point.

[0119] In one embodiment, adjusting the first type of joint of the robotic arm so that the posture of the robotic arm end effector at the intermediate transition point is the same as the posture of the robotic arm end effector at the target operation point includes:

[0120] The joint angle of the first type of joint of the robotic arm is adjusted from the first current joint angle to the target joint angle of the first type of joint. The first current joint angle refers to the joint angle of the first type of joint when the end of the robotic arm is at the current operating point.

[0121] The first type of joint of the robotic arm is used to control the posture of the robotic arm end effector. After the robotic arm moves to the intermediate transition point, it is said that the robotic arm is in a "safe position" and can adjust the posture of the robotic arm end effector at will. Therefore, after the robotic arm moves to the intermediate transition point, the joint angle of the first type of joint is adjusted from the first current joint angle at the current operation point to the target joint angle so that the posture of the robotic arm end effector is the target posture.

[0122] In one embodiment, adjusting the second type of joint of the robotic arm so that the end effector of the robotic arm moves from the intermediate transition point to the target operation point includes:

[0123] The joint angle of the second type of joint of the robotic arm is adjusted from the intermediate joint angle of the second type of joint to the target joint angle of the second type of joint.

[0124] After adjusting the posture of the robotic arm end effector to the target posture at the intermediate transition point, the robotic arm end effector moves to the target operation point by adjusting the intermediate joint angle of the second type of joint to the target joint angle of the second type of joint at the target operation point.

[0125] In one embodiment, this application also provides a path planning method for a robotic arm. Taking the application of this method to a six-degree-of-freedom robotic arm as an example, the axis joints where all axes of the robotic arm intersect at a point are designated as first-type joints, and the axis joints in the robotic arm other than the first-type joints are designated as second-type joints. Figure 5 As shown, this embodiment includes the following steps:

[0126] Step 502: Determine the current joint angles of the second type of joints and the first type of joints of the robotic arm when the end effector is located at the current operation point, and form a set of current joint angles.

[0127] Step 504: Determine the intermediate joint angle of the second type of joint of the robotic arm when the end of the robotic arm is located at the intermediate transition point; and determine the first target joint angle of the first type of joint and the second target joint angle of the second type of joint of the robotic arm when the end of the robotic arm is located at the target operation point, and form a set of target joint angles.

[0128] Step 506: Determine the first set of joint angles based on the intermediate joint angle of the second type of joint and the first current joint angle of the first type of joint; and determine the second set of joint angles based on the intermediate joint angle of the second type of joint and the first target joint angle of the first type of joint.

[0129] Step 508: Determine the first path for transforming the joint angles of the robotic arm from the current joint angle set to the first joint angle set, the second path for transforming the joint angles of the robotic arm from the first joint angle set to the second joint angle set, and the third path for transforming the joint angles of the robotic arm from the second joint angle set to the target joint angle set.

[0130] As described in the steps of the robotic arm control method above, the control of the robotic arm's joints is essentially achieved by adjusting the size of the joint angles. Therefore, the path planning of the robotic arm is essentially a process of change between different sets of joint angles. Specifically, the joint angles of all joints of the robotic arm at the current operating point are taken as the current set of joint angles. Since the posture of the robotic arm's end effector needs to be adjusted at the intermediate transition point, two intermediate safety points are determined at the intermediate transition point, corresponding to the first set of joint angles and the second set of joint angles, respectively. The process of transforming the robotic arm's joint angles from the current set of joint angles to the first set of joint angles is defined as the first path, the process of transforming the robotic arm's joint angles from the first set of joint angles to the second set of joint angles is defined as the second path, and the process of transforming the robotic arm's joint angles from the second set of joint angles to the target set of joint angles is defined as the third path. The robotic arm is controlled through these three paths.

[0131] For example, in Figure 2 In the process shown, the first path is The second path is The third path is

[0132] It should be noted that after dividing the total path of the robotic arm from the current operating point to the target operating point into at least three paths, the movement process of the robotic arm within each path, for example... This process can be achieved using a sampling-based path planning algorithm. However, the path planning method for the robotic arm provided in this application breaks down the path planning into three segments, decoupling position control and attitude control, reducing the dimensionality of the path planning problem, improving planning efficiency, and effectively solving the path reversal problem.

[0133] It should be understood that although the steps in the flowcharts of the above embodiments are shown sequentially according to the arrows, these steps are not necessarily executed in the order indicated by the arrows. Unless explicitly stated herein, there is no strict order restriction on the execution of these steps, and they can be executed in other orders. Moreover, at least some steps in the flowcharts of the above embodiments may include multiple steps or multiple stages. These steps or stages are not necessarily completed at the same time, but can be executed at different times. The execution order of these steps or stages is not necessarily sequential, but can be performed alternately or in turn with other steps or at least some of the steps or stages of other steps.

[0134] Based on the same inventive concept, this application also provides a control system for a robotic arm that implements the control method for the robotic arm described above. The solution provided by this system is similar to the solution described in the above method; therefore, the specific limitations of the one or more robotic arm control system embodiments provided below can be found in the limitations of the robotic arm control method described above, and will not be repeated here.

[0135] In one embodiment, such as Figure 6 As shown, a control system for a robotic arm is provided. The system includes a robotic arm and a controller. The robotic arm includes a first type of joint and a second type of joint. The first type of joint includes axis joints where all axes intersect at a single point. The second type of joint refers to all axis joints in the robotic arm other than the first type of joint. The controller includes a first control module 601, a second control module, and a third control module, wherein:

[0136] The first control module 601 is used to adjust the second type of joint of the robotic arm so that the end effector of the robotic arm moves from the current operating point to the intermediate transition point.

[0137] The second control module 602 is used to adjust the first type of joint of the robotic arm so that the posture of the robotic arm end at the intermediate transition point is the same as the posture of the robotic arm end at the target operation point.

[0138] The third control module 603 is used to adjust the second type of joint of the robotic arm so that the end of the robotic arm moves from the intermediate transition point to the target operation point.

[0139] In one embodiment, a path planning system for a robotic arm is provided. The system includes a robotic arm and a controller. The robotic arm includes a first type of joint and a second type of joint. The first type of joint includes axis joints whose axes intersect at a single point. The second type of joint refers to all axis joints in the robotic arm other than the first type of joint. The controller is used for:

[0140] Determine the first current joint angle of the first type of joint and the second current joint angle of the second type of joint when the end effector of the robotic arm is at the current operating point, and form a set of current joint angles;

[0141] Determine the intermediate joint angle of the second type of joint of the robotic arm when the end effector is located at the intermediate transition point; and determine the first target joint angle of the first type of joint and the second target joint angle of the second type of joint of the robotic arm when the end effector is located at the target operation point, and form a set of target joint angles.

[0142] A first set of joint angles is determined based on the intermediate joint angle of the second type of joint and the current joint angle of the first type of joint; and a second set of joint angles is determined based on the intermediate joint angle of the second type of joint and the target joint angle of the first type of joint.

[0143] Determine the first path for transforming the joint angles of the robotic arm from the current set of joint angles to the first set of joint angles, the second path for transforming the joint angles of the robotic arm from the first set of joint angles to the second set of joint angles, and the third path for transforming the joint angles of the robotic arm from the second set of joint angles to the target set of joint angles.

[0144] The various modules in the control system of the aforementioned robotic arm can be implemented entirely or partially through software, hardware, or a combination thereof. These modules can be embedded in the processor of a computer device in hardware form or independent of it, or stored in the memory of a computer device in software form, so that the processor can call and execute the operations corresponding to each module.

[0145] In one embodiment, a computer device is provided, which may be a server, and its internal structure diagram may be as follows: Figure 7 As shown, the computer device includes a processor, memory, and a network interface connected via a system bus. The processor provides computational and control capabilities. The memory includes non-volatile storage media and internal memory. The non-volatile storage media stores the operating system, computer programs, and a database. The internal memory provides an environment for the operation of the operating system and computer programs in the non-volatile storage media. The database stores the state data of the robotic arm. The network interface communicates with external terminals via a network connection. When the computer program is executed by the processor, it implements a control method for the robotic arm.

[0146] Those skilled in the art will understand that Figure 7 The structure shown is merely a block diagram of a portion of the structure related to the present application and does not constitute a limitation on the computer device to which the present application is applied. Specific computer devices may include more or fewer components than those shown in the figure, or combine certain components, or have different component arrangements.

[0147] In one embodiment, a computer device is provided, including a memory and a processor, wherein the memory stores a computer program, and the processor executes the computer program to perform the following steps:

[0148] Adjust the second type of joint of the robotic arm so that the end effector of the robotic arm moves from the current operating point to the intermediate transition point;

[0149] Adjust the first type of joint of the robotic arm so that the posture of the robotic arm end effector at the intermediate transition point is the same as the posture of the robotic arm end effector at the target operation point. The first type of joint is used to adjust the posture of the robotic arm end effector.

[0150] Adjust the second type of joint so that the end effector of the robotic arm moves from the intermediate transition point to the target operation point.

[0151] In one embodiment, the processor, when executing a computer program, also performs the following steps:

[0152] Obtain the registration matrix between the three-dimensional medical images of the robotic arm and the target object;

[0153] Based on the registration matrix, the relative positional relationship between the robotic arm and the target object is determined;

[0154] Determine the intermediate transition point based on the relative positional relationship.

[0155] In one embodiment, the processor, when executing a computer program, also performs the following steps:

[0156] The registration matrix between the robotic arm and the target medical image is obtained, as well as the surgical planning information based on the 3D medical image.

[0157] Based on the registration matrix and surgical planning information, determine the target position of the target operation point and the target posture of the robotic arm end effector when it is located at the target operation point.

[0158] Based on the target position of the target operation point and the target posture of the robotic arm end effector, and using inverse kinematics, the first target joint angle of the first type of joint and the second target joint angle of the second type of joint of the robotic arm are determined when the robotic arm end effector is located at the target operation point.

[0159] In one embodiment, the processor, when executing a computer program, also performs the following steps:

[0160] Based on the position of the intermediate transition point and inverse kinematics, the intermediate joint angle of the second type of joint of the robotic arm is determined when the end of the robotic arm is located at the intermediate transition point;

[0161] The joint angle of the second type of joint of the robotic arm is adjusted from the second current joint angle to the intermediate joint angle. The second current joint angle refers to the joint angle of the second type of joint when the end of the robotic arm is at the current operating point.

[0162] In one embodiment, the processor, when executing a computer program, also performs the following steps:

[0163] The joint angle of the first type of joint of the robotic arm is adjusted from the first current joint angle to the first target joint angle of the first type of joint. The first current joint angle refers to the joint angle of the first type of joint when the end of the robotic arm is at the current operating point.

[0164] In one embodiment, the processor, when executing a computer program, also performs the following steps:

[0165] The joint angle of the second type of joint of the robotic arm is adjusted from the intermediate joint angle to the second target joint angle of the second type of joint.

[0166] In one embodiment, the processor, when executing a computer program, also performs the following steps:

[0167] Determine the first current joint angle of the first type of joint and the second current joint angle of the second type of joint when the end effector of the robotic arm is at the current operating point, and form a set of current joint angles;

[0168] Determine the intermediate joint angle of the second type of joint of the robotic arm when the end effector is located at the intermediate transition point; and determine the first target joint angle of the first type of joint and the second target joint angle of the second type of joint of the robotic arm when the end effector is located at the target operation point, and form a set of target joint angles.

[0169] A first set of joint angles is determined based on the intermediate joint angle of the second type of joint and the first current joint angle of the first type of joint; and a second set of joint angles is determined based on the intermediate joint angle of the second type of joint and the first target joint angle of the first type of joint.

[0170] Determine the first path for transforming the joint angles of the robotic arm from the current set of joint angles to the first set of joint angles, the second path for transforming the joint angles of the robotic arm from the first set of joint angles to the second set of joint angles, and the third path for transforming the joint angles of the robotic arm from the second set of joint angles to the target set of joint angles.

[0171] In one embodiment, a computer-readable storage medium is provided having a computer program stored thereon, the computer program performing the following steps when executed by a processor:

[0172] Adjust the second type of joint of the robotic arm so that the end effector of the robotic arm moves from the current operating point to the intermediate transition point;

[0173] Adjust the first type of joint of the robotic arm so that the posture of the robotic arm end effector at the intermediate transition point is the same as the posture of the robotic arm end effector at the target operation point. The first type of joint is used to adjust the posture of the robotic arm end effector.

[0174] Adjust the second type of joint so that the end effector of the robotic arm moves from the intermediate transition point to the target operation point.

[0175] In one embodiment, when the computer program is executed by a processor, it further performs the following steps:

[0176] Obtain the registration matrix between the three-dimensional medical images of the robotic arm and the target object;

[0177] Based on the registration matrix, the relative positional relationship between the robotic arm and the target object is determined;

[0178] Determine the intermediate transition point based on the relative positional relationship.

[0179] In one embodiment, when the computer program is executed by a processor, it further performs the following steps:

[0180] The registration matrix between the robotic arm and the target medical image is obtained, as well as the surgical planning information based on the 3D medical image.

[0181] Based on the registration matrix and surgical planning information, determine the target position of the target operation point and the target posture of the robotic arm end effector when it is located at the target operation point.

[0182] Based on the target position of the target operation point and the target posture of the robotic arm end effector, and using inverse kinematics, the first target joint angle of the first type of joint and the second target joint angle of the second type of joint of the robotic arm are determined when the robotic arm end effector is located at the target operation point.

[0183] In one embodiment, when the computer program is executed by a processor, it further performs the following steps:

[0184] Based on the position of the intermediate transition point and inverse kinematics, the intermediate joint angle of the second type of joint of the robotic arm is determined when the end of the robotic arm is located at the intermediate transition point;

[0185] The joint angle of the second type of joint of the robotic arm is adjusted from the second current joint angle to the intermediate joint angle. The second current joint angle refers to the joint angle of the second type of joint when the end of the robotic arm is at the current operating point.

[0186] In one embodiment, when the computer program is executed by a processor, it further performs the following steps:

[0187] The joint angle of the first type of joint of the robotic arm is adjusted from the first current joint angle to the first target joint angle of the first type of joint. The first current joint angle refers to the joint angle of the first type of joint when the end of the robotic arm is at the current operating point.

[0188] In one embodiment, when the computer program is executed by a processor, it further performs the following steps:

[0189] The joint angle of the second type of joint of the robotic arm is adjusted from the intermediate joint angle to the second target joint angle of the second type of joint.

[0190] In one embodiment, when the computer program is executed by a processor, it further performs the following steps:

[0191] Determine the first current joint angle of the first type of joint and the second current joint angle of the second type of joint when the end effector of the robotic arm is at the current operating point, and form a set of current joint angles;

[0192] Determine the intermediate joint angle of the second type of joint of the robotic arm when the end effector is located at the intermediate transition point; and determine the first target joint angle of the first type of joint and the second target joint angle of the second type of joint of the robotic arm when the end effector is located at the target operation point, and form a set of target joint angles.

[0193] A first set of joint angles is determined based on the intermediate joint angle of the second type of joint and the first current joint angle of the first type of joint; and a second set of joint angles is determined based on the intermediate joint angle of the second type of joint and the first target joint angle of the first type of joint.

[0194] Determine the first path for transforming the joint angles of the robotic arm from the current set of joint angles to the first set of joint angles, the second path for transforming the joint angles of the robotic arm from the first set of joint angles to the second set of joint angles, and the third path for transforming the joint angles of the robotic arm from the second set of joint angles to the target set of joint angles.

[0195] In one embodiment, a computer program product is provided, including a computer program that, when executed by a processor, performs the following steps:

[0196] Adjust the second type of joint of the robotic arm so that the end effector of the robotic arm moves from the current operating point to the intermediate transition point;

[0197] Adjust the first type of joint of the robotic arm so that the posture of the robotic arm end effector at the intermediate transition point is the same as the posture of the robotic arm end effector at the target operation point. The first type of joint is used to adjust the posture of the robotic arm end effector.

[0198] Adjust the second type of joint so that the end effector of the robotic arm moves from the intermediate transition point to the target operation point.

[0199] In one embodiment, when the computer program is executed by a processor, it further performs the following steps:

[0200] Obtain the registration matrix between the three-dimensional medical images of the robotic arm and the target object;

[0201] Based on the registration matrix, the relative positional relationship between the robotic arm and the target object is determined;

[0202] Determine the intermediate transition point based on the relative positional relationship.

[0203] In one embodiment, when the computer program is executed by a processor, it further performs the following steps:

[0204] The registration matrix between the robotic arm and the target medical image is obtained, as well as the surgical planning information based on the 3D medical image.

[0205] Based on the registration matrix and surgical planning information, determine the target position of the target operation point and the target posture of the robotic arm end effector when it is located at the target operation point.

[0206] Based on the target position of the target operation point and the target posture of the robotic arm end effector, and using inverse kinematics, the first target joint angle of the first type of joint and the second target joint angle of the second type of joint of the robotic arm are determined when the robotic arm end effector is located at the target operation point.

[0207] In one embodiment, when the computer program is executed by a processor, it further performs the following steps:

[0208] Based on the position of the intermediate transition point and inverse kinematics, the intermediate joint angle of the second type of joint of the robotic arm is determined when the end of the robotic arm is located at the intermediate transition point;

[0209] The joint angle of the second type of joint of the robotic arm is adjusted from the second current joint angle to the intermediate joint angle. The second current joint angle refers to the joint angle of the second type of joint when the end of the robotic arm is at the current operating point.

[0210] In one embodiment, when the computer program is executed by a processor, it further performs the following steps:

[0211] The joint angle of the first type of joint of the robotic arm is adjusted from the first current joint angle to the first target joint angle of the first type of joint. The first current joint angle refers to the joint angle of the first type of joint when the end of the robotic arm is at the current operating point.

[0212] In one embodiment, when the computer program is executed by a processor, it further performs the following steps:

[0213] The joint angle of the second type of joint of the robotic arm is adjusted from the intermediate joint angle to the second target joint angle of the second type of joint.

[0214] In one embodiment, when the computer program is executed by a processor, it further performs the following steps:

[0215] Determine the first current joint angle of the first type of joint and the second current joint angle of the second type of joint when the end effector of the robotic arm is at the current operating point, and form a set of current joint angles;

[0216] Determine the intermediate joint angle of the second type of joint of the robotic arm when the end effector is located at the intermediate transition point; and determine the first target joint angle of the first type of joint and the second target joint angle of the second type of joint of the robotic arm when the end effector is located at the target operation point, and form a set of target joint angles.

[0217] A first set of joint angles is determined based on the intermediate joint angle of the second type of joint and the first current joint angle of the first type of joint; and a second set of joint angles is determined based on the intermediate joint angle of the second type of joint and the first target joint angle of the first type of joint.

[0218] Determine the first path for transforming the joint angles of the robotic arm from the current set of joint angles to the first set of joint angles, the second path for transforming the joint angles of the robotic arm from the first set of joint angles to the second set of joint angles, and the third path for transforming the joint angles of the robotic arm from the second set of joint angles to the target set of joint angles.

[0219] Those skilled in the art will understand that all or part of the processes in the methods of the above embodiments can be implemented by a computer program instructing related hardware. The computer program can be stored in a non-volatile computer-readable storage medium, and when executed, it can include the processes of the embodiments of the above methods. Any references to memory, databases, or other media used in the embodiments provided in this application can include at least one of non-volatile and volatile memory. Non-volatile memory can include read-only memory (ROM), magnetic tape, floppy disk, flash memory, optical memory, high-density embedded non-volatile memory, resistive random access memory (ReRAM), magnetic random access memory (MRAM), ferroelectric random access memory (FRAM), phase change memory (PCM), graphene memory, etc. Volatile memory can include random access memory (RAM) or external cache memory, etc. By way of illustration and not limitation, RAM can take many forms, such as Static Random Access Memory (SRAM) or Dynamic Random Access Memory (DRAM). The databases involved in the embodiments provided in this application may include at least one type of relational database and non-relational database. Non-relational databases may include, but are not limited to, blockchain-based distributed databases. The processors involved in the embodiments provided in this application may be general-purpose processors, central processing units, graphics processing units, digital signal processors, programmable logic devices, quantum computing-based data processing logic devices, etc., and are not limited to these.

[0220] The technical features of the above embodiments can be combined in any way. 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.

[0221] 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 control system for a neurosurgical robotic arm, characterized in that, The system includes a robotic arm and a controller. The robotic arm includes a first type of joint and a second type of joint. The first type of joint includes axis joints whose axes intersect at a single point. The second type of joint refers to all axis joints in the robotic arm other than the first type of joint. The controller is used for: Obtain the registration matrix between the robotic arm and the three-dimensional medical image of the target object; Based on the registration matrix, the relative positional relationship between the robotic arm and the target object is determined; based on the relative positional relationship, a first plane is determined that separates the robotic arm and the target object, the first plane being perpendicular to the horizontal line connecting the robotic arm and the target object. Based on the position of the target object, a second plane is determined above the target object, and the second plane is parallel to the target object; the point on the intersection line of the first plane and the second plane that is closest to the target object is taken as an intermediate transition point; The second type of joint of the robotic arm is adjusted so that the end effector of the robotic arm moves from the current operating point to the intermediate transition point; the intermediate transition point is used to indicate that the end effector of the robotic arm will not collide when the joint angle of the first type of joint of the robotic arm is adjusted. Adjust the first type of joint of the robotic arm so that the posture of the robotic arm end at the intermediate transition point is the same as the posture of the robotic arm end at the target operation point; Adjust the second type of joint of the robotic arm so that the end of the robotic arm moves from the intermediate transition point to the target operation point.

2. The system according to claim 1, characterized in that, The controller is also used for: Obtain the registration matrix between the robotic arm and the three-dimensional medical image of the target object, as well as the surgical planning information formulated based on the three-dimensional medical image; Based on the registration matrix and the surgical planning information, the target position of the target operation point and the target posture of the robotic arm end effector when the robotic arm end effector is located at the target operation point are determined. Based on the target position of the target operation point and the target posture of the robotic arm end effector, and using inverse kinematics, the first target joint angle of the first type of joint and the second target joint angle of the second type of joint of the robotic arm are determined when the robotic arm end effector is located at the target operation point.

3. The system according to claim 2, characterized in that, The controller is also used for: Based on the position of the intermediate transition point, and using inverse kinematics, the intermediate joint angle of the second type of joint of the robotic arm is determined when the end of the robotic arm is located at the intermediate transition point; The joint angle of the second type of joint of the robotic arm is adjusted from the second current joint angle to the intermediate joint angle. The second current joint angle refers to the joint angle of the second type of joint when the end of the robotic arm is at the current operating point.

4. The system according to claim 2, characterized in that, The controller is also used for: The joint angle of the first type of joint of the robotic arm is adjusted from the first current joint angle to the first target joint angle of the first type of joint. The first current joint angle refers to the joint angle of the first type of joint when the end of the robotic arm is at the current operating point.

5. The system according to claim 3, characterized in that, The controller is also used for: The joint angle of the second type of joint of the robotic arm is adjusted from the intermediate joint angle to the second target joint angle of the second type of joint.

6. The system according to claim 1, characterized in that, The controller is also used for: Determine a first boundary point describing the outer contour of the robotic arm, and a second boundary point describing the outer contour of the target object being manipulated; The perpendicular plane between the robotic arm and the target object is determined by the first boundary point and the second boundary point, and is used as the first plane.

7. The system according to claim 1, characterized in that, The second plane is a horizontal plane above the target object.

8. The system according to claim 1, characterized in that, The robotic arm is a six-degree-of-freedom robotic arm.

9. The system according to claim 2, characterized in that, The surgical planning information refers to the information on the needle entry point and target point planned in the image coordinate system after determining the lesion area on the three-dimensional medical image of the target object in the preoperative scan.

10. A path planning system for a neurosurgical robotic arm, characterized in that, The system includes a robotic arm and a controller. The robotic arm includes a first type of joint and a second type of joint. The first type of joint includes axis joints whose axes intersect at a single point. The second type of joint refers to all axis joints in the robotic arm other than the first type of joint. The controller is used for: When the end effector of the robotic arm is located at the current operating point, determine the first current joint angle of the first type of joint and the second current joint angle of the second type of joint of the robotic arm, and form a set of current joint angles; Obtain the registration matrix between the robotic arm and the three-dimensional medical image of the target object; The relative positional relationship between the robotic arm and the target object is determined based on the registration matrix. Based on the relative positional relationship, a first plane is determined that separates the robotic arm and the target object, and the first plane is perpendicular to the horizontal line connecting the robotic arm and the target object. Based on the position of the target object, a second plane is determined above the target object, and the second plane is parallel to the target object. The point on the intersection line of the first plane and the second plane that is closest to the target object is taken as the intermediate transition point; Determine the intermediate joint angle of the second type of joint of the robotic arm when the end of the robotic arm is located at the intermediate transition point; And determine the first target joint angle of the first type of joint and the second target joint angle of the second type of joint of the robotic arm when the end of the robotic arm is located at the target operation point, and form a set of target joint angles; the intermediate transition point is used to indicate that the end of the robotic arm will not collide when the joint angle of the first type of joint of the robotic arm is adjusted. The first set of joint angles is determined based on the intermediate joint angle of the second type of joint and the first current joint angle of the first type of joint; And determine the second set of joint angles based on the intermediate joint angle of the second type of joint and the first target joint angle of the first type of joint; The system determines a first path for transforming the joint angles of the robotic arm from the current set of joint angles to the first set of joint angles, a second path for transforming the joint angles of the robotic arm from the first set of joint angles to the second set of joint angles, and a third path for transforming the joint angles of the robotic arm from the second set of joint angles to the target set of joint angles.

Citation Information

Patent Citations

  • Venipuncture robot with position and posture decoupling function

    CN111035455A