Surgical robot arm spacing adjustment method, device and computer equipment

By monitoring the distance between the robotic arms in real time and adjusting the arm spacing within the surgical robot, the problem of robotic arm collisions is solved, improving surgical safety and efficiency and avoiding damage to patient tissues by the instruments.

CN119523642BActive Publication Date: 2025-10-28WUHAN UNITED IMAGING HEALTHCARE SURGICAL TECH CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202311122997.3
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2023-08-30
Publication Date
2025-10-28
Estimated Expiration
2043-08-30

AI Technical Summary

Technical Problem

The robotic arm of a surgical robot may collide with the surgeon unexpectedly during the operation, affecting the efficiency of the operation and posing safety hazards, which are difficult to effectively solve with existing technology.

Method used

By obtaining the distance between each robotic arm of the surgical robot during the operation, if the distance is less than the preset value, the arm spacing between the robotic arms is adjusted according to the preset distance while the end-effector pose remains unchanged. The movement of the robotic arms is controlled by computer equipment to adjust the arm spacing.

Benefits of technology

It effectively reduces the risk of robotic arm collisions, improves surgical safety and efficiency, avoids damage to patient tissues from instrument tip movement, and does not interrupt the surgical process.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119523642B_ABST
    Figure CN119523642B_ABST
Patent Text Reader

Abstract

This application relates to a method, apparatus, and computer device for adjusting the arm spacing of a surgical robot. The method includes: acquiring the distance between the robotic arms of the surgical robot during surgery; if the distance between the first robotic arm and the second robotic arm is less than a first preset distance, then adjusting the arm spacing between the first and second robotic arms based on the end-effector pose and the second preset distance, while keeping the end-effector pose of the instrument connected to the robotic arms unchanged. The first robotic arm is a holding arm, and the second robotic arm is the robotic arm adjacent to the first robotic arm. This method can improve the efficiency and safety of the surgical robot during surgery.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of robotics, and in particular to a method, apparatus, and computer device for adjusting the arm spacing of a surgical robot. Background Technology

[0002] With the advancement of robotics technology, surgical robots are being used more and more widely in minimally invasive surgery. Before surgery, surgical instruments are connected to the robotic arms of the surgical robot. The master end manipulator controls the movement of the slave end robotic arms, which in turn moves the surgical instruments, thus performing the surgery.

[0003] However, the master manipulator and the slave robotic arm employ a heterogeneous structure, with the configuration of the slave robotic arm not corresponding one-to-one with that of the master. Consequently, unexpected collisions may occur between the robotic arms and the surgeon during surgery. This can interrupt the surgical process, affecting efficiency, and also pose significant safety hazards. Therefore, improving the efficiency and safety of surgical robots during surgery is a key research focus in this field. Summary of the Invention

[0004] Therefore, it is necessary to provide a method, device, and computer equipment for adjusting the arm span of a surgical robot that can improve the efficiency and safety of the surgical robot during surgery, in order to address the above-mentioned technical problems.

[0005] In a first aspect, this application provides a method for adjusting the arm span of a surgical robot, comprising:

[0006] Obtain the distances between the robotic arms of the surgical robot during the operation;

[0007] If the distance between the first robotic arm and the second robotic arm is less than the first preset distance, then the arm spacing between the first robotic arm and the second robotic arm is adjusted according to the end position of the instrument connected to the robotic arm and the second preset distance, while the end position of the instrument remains unchanged.

[0008] The first robotic arm is a holding arm, and the second robotic arm is a robotic arm adjacent to the first robotic arm.

[0009] In one embodiment, while the end-effector pose of the device connected to the robotic arm remains unchanged, adjusting the arm spacing between the first and second robotic arms based on the end-effector pose and a second preset distance includes:

[0010] The target motion sequence of the first robotic arm is determined based on the end-effector pose and the second preset distance.

[0011] The movement of the first robotic arm is controlled according to the target motion sequence, so as to adjust the arm spacing between the first robotic arm and the second robotic arm while keeping the end-effector pose unchanged.

[0012] In one embodiment, the target motion sequence of the first robotic arm is determined based on the end-effector pose and a second preset distance, including:

[0013] Based on the end-effector pose, a first motion sequence of the first target joint in the first robotic arm is determined; the first target joint includes all joints in the first robotic arm except for the second target joint, and the second target joint is used to control the rotation of the first robotic arm along the axis of the first robotic arm.

[0014] Based on the first motion sequence, a second motion sequence for the second target joint is determined; the target motion sequence includes the first motion sequence and the second motion sequence.

[0015] In one embodiment, determining a second motion sequence for the second target joint based on a first motion sequence includes:

[0016] Based on the magnitude and direction of each desired angle in the first motion sequence, the second motion sequence of the second target joint is determined.

[0017] In one embodiment, a first motion sequence of the first target joint in the first robotic arm is determined based on the end-effector pose, including:

[0018] The target angle of the third target joint in the first target joint is determined based on the second preset distance, and the third motion sequence of the third target joint is determined based on the target angle of the third target joint and the current angle.

[0019] Based on the end-effector pose of the device, the target angle of the third target joint, and the current angle of the fourth target joint, the fourth motion sequence of the fourth target joint is determined; the fourth target joint includes all joints in the first target joint except the third target joint, and the first motion sequence includes the third motion sequence and the fourth motion sequence.

[0020] In one embodiment, based on the end-effector pose of the device, the target angle of the third target joint, and the current angle of the fourth target joint, a fourth motion sequence of the fourth target joint is determined, including:

[0021] Based on the end pose of the device and the target angle of the third target joint, the inverse kinematics of the first robotic arm is calculated, and if the inverse kinematics exists, the target angle of the fourth target joint is determined.

[0022] The fourth motion sequence is determined based on the target angle and the current angle of the fourth target joint.

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

[0024] If no inverse kinematics solution is found for the first robotic arm, the second preset distance is adjusted to obtain a new second preset distance, and the process returns to the step of determining a new target motion sequence for the first robotic arm based on the end-effector pose and the new second preset distance.

[0025] Secondly, this application also provides an arm span adjustment device for a surgical robot, comprising:

[0026] The acquisition module is used to acquire the distances between the robotic arms of the surgical robot during the operation;

[0027] The first adjustment module is used to adjust the arm spacing between the first robotic arm and the second robotic arm according to the end position of the instrument connected to the robotic arm and the second preset distance if the distance between the first robotic arm and the second robotic arm is less than the first preset distance.

[0028] The first robotic arm is a holding arm, and the second robotic arm is a robotic arm adjacent to the first robotic arm.

[0029] Thirdly, this application also provides a computer device, including a memory and a processor, wherein the memory stores a computer program, and the processor executes the computer program to implement the steps of any of the above methods.

[0030] Fourthly, this application also provides a computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, implements the steps of any of the above methods.

[0031] Fifthly, this application also provides a computer program product, including a computer program that, when executed by a processor, implements the steps of any of the above methods.

[0032] The aforementioned method, device, and computer equipment for adjusting the arm spacing of the surgical robot can acquire the distance between the various robotic arms of the surgical robot during surgery and adjust the arm spacing between the first and second robotic arms when the distance between the first and second robotic arms is less than a first preset distance. Here, the first robotic arm is the instrument-holding arm, and the second robotic arm is the robotic arm adjacent to the first robotic arm. Therefore, it can promptly detect situations where the robotic arms are too close together, reducing the risk of collisions during surgery, improving the safety of the surgical robot during the procedure, and extending the lifespan of the surgical robot. Furthermore, since the arm spacing between the first and second robotic arms is adjusted based on the end-effector pose and the second preset distance, it is possible to adjust the arm spacing between the first and second robotic arms without changing the end-effector pose of the instruments connected to them. In other words, it is possible to adjust the arm spacing between the first and second robotic arms without changing their end-effector poses, avoiding damage to the patient's tissues from instrument end-effector movement, further improving the safety of the surgical robot during arm spacing adjustment. Moreover, the above process does not interrupt the surgical procedure, thus improving surgical efficiency. Attached Figure Description

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

[0034] Figure 1 This is an application environment diagram of the arm spacing adjustment method of the surgical robot in the embodiments of this application;

[0035] Figure 2 This is a schematic diagram of the structure of a master operator in an embodiment of this application;

[0036] Figure 3 This is a schematic diagram of the structure of a surgical cart in an embodiment of this application;

[0037] Figure 4 This is a flowchart illustrating the method for adjusting the arm span of the surgical robot in an embodiment of this application;

[0038] Figure 5 This is a schematic diagram illustrating a process for adjusting arm spacing in an embodiment of this application;

[0039] Figure 6 This is a schematic diagram of a process for adjusting arm spacing in an embodiment of this application;

[0040] Figure 7This is a schematic diagram of a process for determining a target motion sequence in an embodiment of this application;

[0041] Figure 8 This is a schematic diagram of a process for determining a first motion sequence in an embodiment of this application;

[0042] Figure 9 This is a schematic diagram of a process for determining a fourth motion sequence in an embodiment of this application;

[0043] Figure 10 This is a schematic diagram illustrating another arm spacing adjustment process in an embodiment of this application;

[0044] Figure 11 This is a schematic diagram illustrating the process of a surgical robot arm spacing adjustment method according to an embodiment of this application;

[0045] Figure 12 This is a structural block diagram of the arm spacing adjustment device of the surgical robot in the embodiments of this application;

[0046] Figure 13 This is a diagram showing the internal structure of a computer device in an embodiment of this application. Detailed Implementation

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

[0048] Figure 1 This is an application environment diagram of the arm spacing adjustment method of the surgical robot in the embodiments of this application, such as... Figure 1 As shown, the surgical robot 101 communicates with the computer device 102. The computer device 102 can be independently located outside the surgical robot 101, and includes, but is not limited to, various personal computers, laptops, smartphones, tablets, and portable wearable devices, such as smartwatches, smart bracelets, and head-mounted devices. In some embodiments, the computer device 102 can also be implemented using a standalone server or a server cluster consisting of multiple servers.

[0049] The computer device 102 can also be located inside the surgical robot 101. For example, the computer device 102 can also be a central processing unit (CPU), a digital signal processor (DSP), a field-programmable gate array (FPGA), or other programmable logic devices.

[0050] A surgical robot includes at least one surgical arm and one endoscope arm. Taking surgical robot 101 used in abdominal surgery as an example, surgical robot 101 may include a master operator, a surgical cart, and an imaging system. The imaging system is used to provide feedback on images during the surgical process.

[0051] Figure 2 This is a schematic diagram of the structure of a master operator in an embodiment of this application, such as... Figure 2 As shown, the main manipulator includes a main manipulator base 201 and a joystick 202. The main manipulator base 201 is used to fix the joystick 202. The joystick 202 and the robotic arm of the operating trolley are heterogeneous. The doctor controls the joystick 202, and the movement of the joystick 202 is mapped and converted to control the robotic arm in the operating trolley.

[0052] Figure 3 This is a schematic diagram of the structure of a surgical cart in an embodiment of this application, as shown below. Figure 3 As shown, the surgical cart may include a cart base 301 and multiple robotic arms, each robotic arm including at least one joint. Figure 3 Taking a total of four robotic arms as an example, from left to right, they are robotic arm 1, robotic arm 2, robotic arm 3, and robotic arm 4. Each robotic arm includes an adjusting arm and a telecentric mechanism. For example, Figure 3 The fourth robotic arm in the system includes an adjusting arm 302 and a telecentric mechanism 303. Both the adjusting arm and the telecentric mechanism have active joints, meaning they are joints that can move actively according to signals from the computer equipment.

[0053] Robotic arms can be divided into endoscope-holding arms and surgical instrument-holding arms according to their actual operational uses. Endoscope-holding arms are used to connect endoscopes, while surgical instrument-holding arms are used to connect surgical instruments. For example, Figure 3 The third robotic arm is the endoscope-holding arm, used to connect to the endoscope 304. Figure 3 The robotic arms other than No. 3 are holding arms.

[0054] Understandably, the operating table cart is used to perform surgery on patient 305 on operating table 306. Figures 2-3 This embodiment only illustrates one possible approach to surgical robots and does not limit the type of surgical robot, the number of joint degrees of freedom in the surgical robot, or the number of robotic arms.

[0055] Currently, the configuration of the robotic arm during movement does not correspond one-to-one with the configuration of the operator's hand. Therefore, the surgeon cannot promptly detect collisions or impending collisions between the robotic arms, easily leading to collisions during surgery. On one hand, collisions can interrupt the surgical process, affecting efficiency; on the other hand, they also pose significant safety hazards. Therefore, it is necessary to provide a method for adjusting the arm spacing of a surgical robot. This method will be described below.

[0056] Figure 4 This is a flowchart illustrating the method for adjusting the arm span of a surgical robot in an embodiment of this application. In one exemplary embodiment, such as... Figure 4 As shown, a method for adjusting the arm span of a surgical robot is provided, which can be applied to... Figure 1 The following explanation uses computer equipment as an example, including the following S401 to S403.

[0057] S401, Obtain the distance between the robotic arms of the surgical robot during the operation.

[0058] Optionally, distance sensors can be installed on each robotic arm of the surgical robot to measure the distance between that robotic arm and other robotic arms. Then, a computer device acquires the measurement results from the distance sensors on each robotic arm to obtain the distances between the robotic arms of the surgical robot during the operation.

[0059] S402, if the distance between the first robotic arm and the second robotic arm is less than the first preset distance, then, without changing the end-effector pose of the device connected to the robotic arm, the arm spacing between the first robotic arm and the second robotic arm is adjusted according to the end-effector pose of the device and the second preset distance; the first robotic arm is a holding arm, and the second robotic arm is a robotic arm adjacent to the first robotic arm.

[0060] In this embodiment, during surgery, such as laparoscopic surgery, the endoscope-holding arm is connected to the endoscope, and its main purpose is to obtain the intraoperative field of vision. Therefore, during the operation, the endoscope-holding arm usually remains stationary unless the surgeon makes adjustments. However, the surgical instrument-holding arm, because it is connected to surgical instruments, will move during the operation, posing a risk of collision during this movement.

[0061] Therefore, the computer device will determine whether there are two robotic arms that are too close together; that is, the computer device will determine whether the distance between the first robotic arm and the second robotic arm is less than a first preset distance. The first preset distance is set according to requirements and is used to indicate a relatively safe arm spacing between the first and second robotic arms; it is a number greater than 0, for example, the first preset distance is set to 50 millimeters.

[0062] The first robotic arm is a holding arm, for example, the first robotic arm is Figure 3 The first robotic arm can be any one of robotic arms 1, 2, or 4. The second robotic arm is the one adjacent to the first robotic arm; it can be either a holding arm or a scope-holding arm. In other words, the computer device determines whether the distance between any holding arm and its adjacent robotic arm in the surgical robot is less than a first preset distance.

[0063] Furthermore, if the distance between the first robotic arm and the second robotic arm is not less than the first preset distance, it indicates that the arm spacing between the first robotic arm and the second robotic arm is appropriate. In this case, there is no risk of collision, and the computer equipment does not need to adjust the arm spacing.

[0064] If the distance between the first robotic arm and the second robotic arm is less than the first preset distance, it means that the arm spacing between the first robotic arm and the second robotic arm is too close. In this case, there is a high probability of collision risk. Therefore, the computer device will adjust the arm spacing to bring the arm spacing between the first robotic arm and the second robotic arm back to an appropriate size.

[0065] It is understood that adjusting the arm spacing requires controlling the movement of at least one of the first and second robotic arms. Controlling the movement of these robotic arms may cause the endoscope and / or surgical instruments connected to the end of the robotic arm to move, potentially damaging the patient's tissues. Therefore, to further improve safety during the arm spacing adjustment process, this embodiment uses a computer device to adjust the arm spacing between the first and second robotic arms based on the end-effector pose and a second preset distance, while keeping the end-effector pose of the connected instrument unchanged.

[0066] The second preset distance is a preset arm spacing. The computer device will try to ensure that the arm spacing between the first and second robotic arms meets the second preset distance. The second preset distance can be a value preset in the computer device in advance, or a value determined by the computer device in response to the doctor's input operation. This embodiment does not impose any restrictions. Optionally, in order to ensure the adjustment effect of the arm spacing, the second preset distance is greater than or equal to the first preset distance.

[0067] The instruments connected to the robotic arms include at least one of surgical instruments connected to the instrument-holding arm and an endoscope connected to the endoscope-holding arm. Controlling the movement of any robotic arm requires ensuring that the end-effector pose of the instrument connected to that arm remains constant. If the first robotic arm is controlled to move, the end-effector pose refers to the end-effector pose of the instrument connected to the first robotic arm; if the second robotic arm is controlled to move, the end-effector pose refers to the end-effector pose of the instrument connected to the second robotic arm; if both the first and second robotic arms are controlled to move, the end-effector pose includes both the end-effector pose of the instrument connected to the first robotic arm and the end-effector pose of the instrument connected to the second robotic arm.

[0068] Understandably, the end effector of the instrument is typically located inside the patient's body. Optionally, after the surgical robot has been positioned preoperatively, the computer device can acquire the end effector pose of the instrument connected to the robotic arm via sensors. For example, the computer device can acquire the end effector pose using a pose sensor located at the end effector. Alternatively, sensors can be placed on each joint of the robotic arm containing the instrument to allow the computer device to acquire the current angle of each joint and perform forward kinematics calculations based on these angles to determine the end effector pose.

[0069] Optionally, the computer device can input the end-effector pose and a second preset distance into a trained adjustment model. The adjustment model then determines a motion strategy to adjust the arm-to-arm distance between the first and second robotic arms while keeping the end-effector pose of the connected robotic arm unchanged. Specifically, the computer device can control at least one of the first and second robotic arms to move according to the motion strategy, thereby adjusting the arm-to-arm distance while keeping the end-effector pose of the connected robotic arm unchanged. The adjustment model can be a Convolutional Neural Network (CNN), a Recurrent Neural Network (RNN), or other deep learning networks, machine learning networks, etc.

[0070] Figure 5 This is a schematic diagram illustrating a process for adjusting arm spacing in an embodiment of this application, as shown below. Figure 5 As shown, after the surgeon begins the operation, the computer system monitors the arm spacing between the robotic arms in the surgical robot and determines whether there are two robotic arms with an arm spacing smaller than a first preset distance, i.e., whether the distance between the first and second robotic arms is less than the first preset distance. If the distance between the first and second robotic arms is less than the first preset distance, the computer system can determine whether to initiate arm spacing adjustment. For example, the computer system issues a prompt and, after obtaining confirmation from the surgeon, determines that arm spacing adjustment can be initiated; otherwise, it determines that arm spacing adjustment cannot be initiated. Of course, in some embodiments, the computer system may also default to requiring arm spacing adjustment.

[0071] Furthermore, once the computer device confirms the start of the arm spacing adjustment, the computer device can automatically adjust the arm spacing. That is, while the end position of the instrument connected to the robotic arm remains unchanged, the arm spacing between the two first robotic arms and the second robotic arm, which is less than the first preset distance, is adjusted according to the end position of the instrument and the second preset distance.

[0072] In the aforementioned method for adjusting the arm spacing of the surgical robot, the distance between each robotic arm of the surgical robot during surgery can be obtained. When the distance between the first and second robotic arms is less than a first preset distance, the arm spacing between them is adjusted. The first robotic arm is the instrument-holding arm, and the second robotic arm is the one adjacent to the first. Therefore, situations where the robotic arms are too close together can be detected in a timely manner, reducing the risk of collisions during surgery, improving the safety of the surgical robot during the procedure, and extending its service life. Furthermore, since the arm spacing between the first and second robotic arms is adjusted based on the end-effector pose and the second preset distance, the arm spacing can be adjusted while the end-effector pose of the connected instruments remains unchanged. In other words, the arm spacing can be adjusted without changing the end-effector poses of the first and second robotic arms, preventing damage to the patient's tissues from instrument movement, further improving the safety of the surgical robot during arm spacing adjustment. Moreover, the above process does not interrupt the surgical procedure, thus improving surgical efficiency.

[0073] Figure 6 This is a schematic diagram of a process for adjusting arm spacing in an embodiment of this application, as shown below. Figure 6 As shown, in an exemplary embodiment, optionally, the above-described S402 includes S601 to S602.

[0074] S601, determine the target motion sequence of the first robotic arm based on the end-effector pose and the second preset distance.

[0075] In this embodiment, since the second robotic arm may be a scope-holding arm, which is usually stationary during surgery, controlling the movement of the scope-holding arm to adjust the arm spacing would increase the motion complexity and computational complexity of the surgical robot. Therefore, in this embodiment, the computer device will determine the target motion sequence of the first robotic arm based on the end-effector pose and the second preset distance, and then control the movement of the first robotic arm according to the target motion sequence.

[0076] The target motion sequence is used to instruct how the first robotic arm should move. Optionally, the target motion sequence describes the motion trajectory of each joint in the first robotic arm. Assuming the first robotic arm includes joints 1 to 4, the target motion sequence can include the expected angles of joints 1 to 4 at each time point. For example, the first motion sequence includes the expected angle 1 of joint 1 at time 1, the expected angle 2 at time 2, the expected angle 3 at time 3, ..., the expected angle t at time t. The same applies to joints 2 to 4, which will not be elaborated here. t is an integer greater than or equal to 1.

[0077] Optionally, the computer device can perform inverse kinematics calculations on the first robotic arm based on the end-effector pose and a second preset distance to determine the target angles of each joint in the first robotic arm. Using the target angles and current angles of each joint, motion planning is performed on each joint, and the resulting motion sequence is then corrected to obtain the target motion sequence. Correction processing may include, but is not limited to, outlier removal. Alternatively, the computer device can input the end-effector pose and the second preset distance into a trained adjustment model, which then determines the target motion sequence for the first robotic arm.

[0078] S602, control the movement of the first robotic arm according to the target motion sequence, so as to adjust the arm spacing between the first robotic arm and the second robotic arm while keeping the end position of the instrument unchanged.

[0079] In this embodiment, after the computer device determines the target motion sequence, it can control the movement of the first robotic arm according to the target motion sequence.

[0080] For example, taking joint 1 of the first robotic arm as an example, the computer device can, according to the target motion sequence, provide a drive signal for joint 1 of the first robotic arm at each moment based on the current angle of joint 1 at each moment, so that the actual angle of joint 1 of the first robotic arm at each moment meets the expected angle in the target motion sequence. The same applies to joints 2 to 4 of the first robotic arm, which will not be elaborated here. Furthermore, after each joint of the first robotic arm moves according to the target motion sequence, the arm spacing between the first and second robotic arms can be adjusted without changing the end-effector pose of the connected device.

[0081] In this embodiment, since the target motion sequence of the first robotic arm is determined based on the end-effector pose of the instrument and a second preset distance, and the movement of the first robotic arm is controlled according to the target motion sequence, controlling the movement of the first robotic arm can adjust the arm spacing between the first and second robotic arms while keeping the end-effector pose of the instrument unchanged. Furthermore, since the movement of the first robotic arm is controlled, there is no need to control the movement of the surgical robot's end-effector arm, thus reducing the motion complexity and computational complexity of the surgical robot and improving the efficiency of arm spacing adjustment.

[0082] Figure 7 This is a schematic diagram of a process for determining a target motion sequence in an embodiment of this application, as shown below. Figure 7 As shown, in an exemplary embodiment, optionally, the above-described S601 includes S701 to S702.

[0083] S701, based on the end-effector pose of the device, determine the first motion sequence of the first target joint in the first robotic arm; the first target joint includes all joints in the first robotic arm except for the second target joint, and the second target joint is used to control the rotation of the first robotic arm along the axis of the first robotic arm.

[0084] To ensure that the end effector of the device connected to the first robotic arm remains unchanged, during the movement of the first robotic arm, on the one hand, the telecentric point of the first robotic arm, i.e., the end effector of the first robotic arm, needs to remain stationary. However, the stationary telecentric point does not constrain the movement of the first robotic arm along its own axis. Therefore, in this embodiment, on the other hand, the first robotic arm should not rotate along its own axis either.

[0085] Therefore, in this embodiment, the computer device first needs to determine the first motion sequence of the first target joint in the first robotic arm based on the end-effector pose of the instrument. That is, the computer device determines the first motion sequence of the first target joint in the first robotic arm based on the end-effector pose of the instrument connected to the first robotic arm.

[0086] The second target joint is used to control the rotation of the first robotic arm along its axial direction. For example, the second target joint can be located at the top of the first robotic arm. The first target joint includes all joints in the first robotic arm except for the second target joint. For example, continuing with the example of the first robotic arm including joints 1 to 4, assuming that the second target joint is joint 4, then the first target joints are joints 1 to 3.

[0087] The first motion sequence is used to describe the joint trajectory of the first target joint in the first robotic arm. Taking joint 1 of the first robotic arm as an example, the first motion sequence may include the expected angle 1 of joint 1 of the first robotic arm at time 1, the expected angle 2 at time 2, the expected angle 3 at time 3, ... the expected angle t at time t.

[0088] Optionally, the computer device can perform inverse kinematics calculations on the first robotic arm based on the end-effector pose and a second preset distance to determine the target angle of the first target joint in the first robotic arm. Based on the target angle and the current angle of the first target joint in the first robotic arm, the computer device can perform motion planning on each joint in the first robotic arm and correct the sequence after motion planning to obtain the first motion sequence.

[0089] S702, based on the first motion sequence, determine the second motion sequence of the second target joint; the target motion sequence includes the first motion sequence and the second motion sequence.

[0090] Similarly, the second motion sequence is used to describe the joint trajectory of the second target joint in the first robotic arm. For example, the first motion sequence may include the expected angle 1 of joint 4 of the first robotic arm at time 1, the expected angle 2 at time 2, the expected angle 3 at time 3, ... the expected angle t at time t.

[0091] Since all joints of the first robotic arm can be divided into a first target joint and a second target joint, after determining the first motion sequence of the first target joint, the second motion sequence can be determined based on the first motion sequence.

[0092] It is understandable that after determining the first motion sequence and the second motion sequence, the target motion sequence of the first robotic arm is also determined. In other words, the target motion sequence includes the first motion sequence and the second motion sequence.

[0093] Optionally, the computer device can determine the desired angle of the first target joint at each moment based on the first motion sequence, and traverse the angle range of the second target joint based on the desired angle of the first target joint at each moment, and calculate the desired angle of the second target joint at each moment when the end pose of the device connected to the first robotic arm remains unchanged, so as to determine the second motion sequence.

[0094] In this embodiment, a first motion sequence of the first target joint in the first robotic arm is first determined based on the end-effector pose of the instrument. Then, a second motion sequence of the second target joint is determined based on the first motion sequence. Since the target motion sequence includes the first motion sequence and the second motion sequence, and the first target joint includes all joints in the first robotic arm except for the second target joint, and the second target joint is used to control the rotation of the first robotic arm along its axial direction, by controlling the movement of the first robotic arm according to the target motion sequence, the arm spacing between the first and second robotic arms can be adjusted without changing the end-effector pose of the instrument connected to the first robotic arm, thereby improving the safety of the surgical robot during surgery.

[0095] In an exemplary embodiment, optionally, the above-described S702 can be implemented in the following manner:

[0096] Based on the magnitude and direction of each desired angle in the first motion sequence, the second motion sequence of the second target joint is determined.

[0097] Since the first target joint and the second target joint are on the same first robotic arm, the movement of the first target joint will theoretically cause the second target joint to move as well, thereby causing the first robotic arm to rotate along its own axis.

[0098] Therefore, in this embodiment, the computer device determines the second motion sequence of the second target joint based on the magnitude and direction of each desired angle in the first motion sequence.

[0099] Optionally, the computer device can calculate the theoretical motion angle of the second target joint in the first robotic arm based on the magnitude and direction of each desired angle in the first motion sequence. The theoretical motion angle indicates the angle by which the second target joint will rotate in the axial direction of the first robotic arm after the first target joint moves at each moment.

[0100] Furthermore, to ensure that the second target joint does not actually rotate axially, the computer device performs inverse compensation based on the theoretical motion angle to determine the second motion sequence. Optionally, inverse compensation refers to a method that keeps the magnitude of the theoretical motion angle unchanged but takes its negative direction.

[0101] Continuing with the example of joints 1 to 3 as the first target joints and joint 4 as the second target joint, based on the first motion sequence, the computer device can determine the expected angles 1, 2, and 3 of joints 1, 2, and 3 of the first robotic arm at time 1, and calculate the theoretical motion angle 1 of joint 4 of the first robotic arm at time 1 based on the expected angles 1, 2, and 3 at time 1.

[0102] Then, the computer device performs inverse compensation on the theoretical motion angle 1 to determine the desired angle 1 of joint 4 at time 1. For example, assuming that the theoretical motion angle 1 of joint 4 at time 1 indicates that joint 4 rotates 15 degrees clockwise along the axis of the first robotic arm, denoted as "+15 degrees", then the computer device determines the desired angle 1 of joint 4 at time 1 as "-15 degrees", which indicates that joint 4 rotates 15 degrees counterclockwise along the axis of the first robotic arm. The same applies to other times. In this way, the computer device can determine the second motion sequence of the second target joint.

[0103] In this embodiment, since the second motion sequence of the second target joint is determined based on the magnitude and direction of each desired angle in the first motion sequence, the motion of the first target joint can be used to determine how the second target joint moves, so as to ensure that the arm spacing between the first robotic arm and the second robotic arm is adjusted while the end position of the device remains unchanged.

[0104] Figure 8 This is a schematic diagram of a process for determining a first motion sequence in an embodiment of this application, as shown below. Figure 8 As shown, in an exemplary embodiment, optionally, the above-described S701 includes S801 to S802.

[0105] S801, determine the target angle of the third target joint in the first target joint according to the second preset distance, and determine the third motion sequence of the third target joint according to the target angle of the third target joint and the current angle.

[0106] In this embodiment, the third target joint refers to the joint used to adjust the position of the first robotic arm. Optionally, the computer device determines the correspondence between different preset distances and different angles of the third target joint. For example, distance 1 between the first robotic arm and the second holding arm corresponds to angle 1 of the third target joint, and distance 2 between the first robotic arm and the second holding arm corresponds to angle 2 of the third target joint. Furthermore, the computer device can determine the target angle of the third target joint based on the second preset distance and this correspondence.

[0107] The third motion sequence is used to describe the motion trajectory of the third target joint in the first robotic arm. Assuming the third target joint is joint 1 of the first robotic arm, the third motion sequence is used to indicate the expected angle 1 of joint 1 of the first robotic arm at time 1, the expected angle 2 at time 2, the expected angle 3 at time 3, ... the expected angle t at time t.

[0108] Furthermore, the computer device can determine the third motion sequence of the third target joint based on the target angle and the current angle of the third target joint. For example, the computer device can obtain the current angle of the third target joint through a sensor installed on the third target joint, determine the target angle of the third target joint based on a second preset distance, perform motion planning on the third target joint based on the target angle and the current angle, and perform correction processing on the sequence after motion planning to obtain the third motion sequence.

[0109] S802, based on the end position of the device, the target angle of the third target joint, and the current angle of the fourth target joint, determine the fourth motion sequence of the fourth target joint; the fourth target joint includes the joints in the first target joint except for the third target joint, and the first motion sequence includes the third motion sequence and the fourth motion sequence.

[0110] The fourth target joint includes all the joints in the first target joint except for the third target joint. Assuming that the first target joint includes joints 1 to 3 of the first robotic arm and the third target joint is joint 1 of the first robotic arm, then the fourth target joint is joints 2 and 3 of the first robotic arm.

[0111] The fourth motion sequence is used to describe the motion trajectory of the fourth target joint in the first robotic arm. Taking the third target joint as joint 2 of the first robotic arm as an example, the fourth motion sequence may include the expected angle 1 of joint 2 of the first robotic arm at time 1, the expected angle 2 at time 2, the expected angle 3 at time 3, ... the expected angle t at time t.

[0112] Furthermore, the computer device can determine the fourth motion sequence of the fourth target joint based on the end pose of the device, the target angle of the third target joint, and the current angle of the fourth target joint.

[0113] It is understandable that after determining the third and fourth motion sequences, the first motion sequence of the first robotic arm is also determined. In other words, the first motion sequence includes the third and fourth motion sequences.

[0114] Optionally, the computer device can perform inverse kinematics calculations on the first robotic arm based on the end pose of the device and the target angle of the third target joint to determine the target angle of the fourth target joint. Based on the target angle of the fourth target joint and the current angle, the computer device can perform motion planning on the fourth target joint of the first robotic arm and correct the sequence after motion planning to obtain the fourth motion sequence.

[0115] In this embodiment, since the fourth target joint includes all joints in the first target joint except the third target joint, after determining the target angle of the third target joint in the first target joint based on the second preset distance, and determining the third motion sequence of the third target joint based on the target angle and the current angle, the first motion sequence of the first target joint in the first robotic arm can be determined based on the end-effector pose, the target angle of the third target joint, and the current angle of the fourth target joint. Furthermore, since the first motion sequence includes both the third and fourth motion sequences, after determining the fourth motion sequence of the fourth target joint, the first motion sequence of the first target joint in the first robotic arm can be determined.

[0116] Figure 9 This is a schematic diagram of a process for determining a fourth motion sequence in an embodiment of this application, as shown below. Figure 9 As shown, in an exemplary embodiment, optionally, the above-described S801 includes S901 to S902.

[0117] S901, based on the end pose of the device and the target angle of the third target joint, performs inverse kinematics calculation on the first robotic arm, and determines the target angle of the fourth target joint if an inverse solution exists.

[0118] S902, determine the fourth motion sequence based on the target angle and current angle of the fourth target joint.

[0119] In this embodiment, in order to keep the telecentric point of the first robotic arm stationary while controlling its movement, the computer device performs inverse kinematics calculations on the first robotic arm based on the end-effector pose of the instrument and the target angle of the third target joint. In other words, the computer device performs inverse kinematics calculations on the first robotic arm based on the end-effector pose of the instrument connected to the first robotic arm and the target angle of the third target joint.

[0120] If an inverse solution exists during the inverse kinematics calculation of the first robotic arm, the computer equipment also determines the target angle of the fourth target joint.

[0121] For example, the computer device can determine the target angles 2 to 3 corresponding to the joints 2 to 3 of the first robotic arm based on the end-effector pose of the device and the target angle 1 of the joint 1 of the first robotic arm.

[0122] Furthermore, the computer device can determine the fourth motion sequence based on the target angle and the current angle of the fourth target joint. For example, the computer device can obtain the current angle of the fourth target joint using a sensor mounted on it, and perform motion planning on the fourth target joint based on the target angle and the current angle. The planned sequence is then corrected to obtain the fourth motion sequence. Of course, the computer device can also directly determine the fourth motion sequence after performing motion planning on the fourth target joint; this embodiment is not limited to this. It should be noted that the above motion planning may include, but is not limited to, grid search, free space methods, and quadtree methods.

[0123] This embodiment can perform inverse kinematics calculations on the first robotic arm based on the end pose of the device and the target angle of the third target joint. If an inverse kinematics solution exists, the target angle of the fourth target joint can be determined. The fourth motion sequence can be determined based on the target angle of the fourth target joint and the current angle. Therefore, the fourth motion sequence of the fourth target joint can be determined.

[0124] In an exemplary embodiment, optionally, the above-described method for adjusting the arm span of the surgical robot further includes the following steps:

[0125] If no inverse kinematics solution is found for the first robotic arm, the second preset distance is adjusted to obtain a new second preset distance, and the process returns to the step of determining a new target motion sequence for the first robotic arm based on the end-effector pose and the new second preset distance.

[0126] In this embodiment, if there is no inverse solution when performing inverse kinematics calculation on the first robotic arm, it means that the arm spacing between the first robotic arm and the second robotic arm cannot be adjusted to meet the second preset distance, that is, the second preset distance is not reasonable.

[0127] Therefore, the computer device adjusts the second preset distance to obtain a new second preset distance, and returns to the step of determining a new target motion sequence for the first robotic arm based on the end-effector pose and the new second preset distance. In other words, the computer device updates the second preset distance and redetermines the target motion sequence for the first robotic arm based on the end-effector pose and the second preset distance.

[0128] Optionally, the computer device can redetermine the second preset distance from multiple candidate empirical values ​​to obtain a new second preset distance. Alternatively, the computer device can obtain a new second preset distance based on the previous second preset distance and a preset coefficient. For example, the computer device can use the product of the current second preset distance and the preset coefficient k as the new second preset distance. The preset coefficient can be a constant greater than 0 and less than 1.

[0129] Taking the second preset distance A as an example, when the second preset distance is A, the target angle of the third target joint is α. The computer device performs inverse kinematics calculation based on the end pose of the device and the target angle α of the third target joint. If an inverse solution exists, the target angle of the third target joint is determined to be α, and the target angle of the fourth target joint is also determined simultaneously.

[0130] If no inverse kinematics solution exists, the computer calculates A*k=B and uses B as the updated second preset distance, i.e., the second second preset distance. Based on the second preset distance B, the target angle of the third target joint is determined as β. Then, the computer performs inverse kinematics calculation based on the end-effector pose of the device and the target angle β of the third target joint. If an inverse kinematics solution exists, the target angle of the third target joint is determined as β, and the target angle of the fourth target joint is also determined simultaneously.

[0131] If no inverse solution exists, the computer continues to calculate B*k=C and uses C as the updated second preset distance. This process is repeated until an inverse solution exists, which will not be elaborated here.

[0132] In this embodiment, since there is no inverse solution when performing inverse kinematics calculation on the first robotic arm, the second preset distance can be adjusted to obtain a new second preset distance, and the process can return to the execution of the step of determining a new target motion sequence for the first robotic arm based on the end pose of the device and the new second preset distance, the target motion sequence that meets the actual situation can be calculated during the iterative search of the second preset distance.

[0133] To more clearly illustrate the arm span adjustment method of the surgical robot in this application, this paper combines... Figure 10 and Figure 11 illustrate. Figure 10 This is a schematic diagram illustrating another arm spacing adjustment process in an embodiment of this application. Figure 10 It can be understood as Figure 5 The process of automatically adjusting the arm spacing. For example... Figure 10 As shown, during the arm spacing adjustment process, the computer device determines a second preset distance and, based on this second preset distance, determines the target angle of the third target joint in the first target joint. Then, based on the target angle of the third target joint and the current angle, it determines the third motion sequence of the third target joint.

[0134] Furthermore, the computer device performs inverse kinematics calculations on the first robotic arm based on the end-effector pose and the target angle of the third target joint.

[0135] If an inverse solution exists, the target angle of the fourth target joint is determined, and the fourth motion sequence can be determined based on the target angle and the current angle of the fourth target joint. Since the first motion sequence includes the third and fourth motion sequences, the computer device also determines the first motion sequence. Then, the computer device can determine the second motion sequence of the second target joint based on the magnitude and direction of each desired angle in the first motion sequence. Finally, the first robotic arm is controlled to move according to the target motion sequence to adjust the arm spacing between the first and second robotic arms while maintaining the end-effector pose of the device.

[0136] If no inverse solution exists, the computer device updates the second preset distance and recalculates the inverse kinematics of the first robotic arm based on the end pose of the device and the target angle of the third target joint until an inverse solution exists. Then, the target motion sequence is redefined to control the first robotic arm to position itself.

[0137] Figure 11 This is a schematic diagram illustrating a method for adjusting the arm span of a surgical robot according to an embodiment of this application. Figure 11 As shown, the computer equipment can execute the surgical robot's arm spacing adjustment method according to the following procedure.

[0138] S1101, Obtain the distance between the robotic arms of the surgical robot during the operation.

[0139] S1102, if the distance between the first robotic arm and the second robotic arm is less than a first preset distance, then the target angle of the third target joint in the first target joint is determined according to the second preset distance, and the third motion sequence of the third target joint is determined according to the target angle of the third target joint and the current angle. Here, the first robotic arm is a holding arm, and the second robotic arm is a robotic arm adjacent to the first robotic arm.

[0140] S1103, determine the target angle of the third target joint in the first target joint according to the second preset distance, and determine the third motion sequence of the third target joint according to the target angle of the third target joint and the current angle. The first target joint includes all joints in the first robotic arm except the second target joint, and the second target joint is used to control the rotation of the first robotic arm along its axial direction.

[0141] S1104, Based on the end-effector pose and the target angle of the third target joint, perform inverse kinematics calculation on the first robotic arm. If an inverse kinematics solution exists, proceed to S1105. If an inverse kinematics solution exists, proceed to S1109.

[0142] S1105, Determine the target angle of the fourth target joint. The fourth target joint includes all joints in the first target joint except for the third target joint.

[0143] S1106, determine the fourth motion sequence based on the target angle and current angle of the fourth target joint. The first motion sequence includes the third motion sequence and the fourth motion sequence.

[0144] S1107, Based on the magnitude and direction of each desired angle in the first motion sequence, determine the second motion sequence of the second target joint. The target motion sequence includes both the first and second motion sequences.

[0145] S1108, control the movement of the first robotic arm according to the target motion sequence, so as to adjust the arm spacing between the first robotic arm and the second robotic arm while keeping the end position of the instrument unchanged.

[0146] S1109, adjust the second preset distance to obtain a new second preset distance, and then return to S1103.

[0147] The above S1101~S1109 can be referred to the above embodiment, and will not be repeated here. It can be seen that in the process of controlling the movement of the first robotic arm during the operation to adjust the arm distance between the first robotic arm and the second robotic arm, in order to ensure that the end-effector pose of the surgical robot remains unchanged, the third target joint of the first robotic arm is set as an active joint. Through inverse kinematics calculation, with the distal point stationary, the fourth target joint and the second target joint perform "passive following" movement, thereby achieving the goal of keeping the distal point stationary and the axial posture unchanged.

[0148] It should be understood that although the steps in the flowcharts of the embodiments described above 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 embodiments described above 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.

[0149] Based on the same inventive concept, this application also provides an arm span adjustment device for a surgical robot to implement the arm span adjustment method of the surgical robot described above. The solution provided by this device is similar to the solution described in the above method. Therefore, the specific limitations of one or more embodiments of the arm span adjustment device for surgical robots provided below can be found in the limitations of the arm span adjustment method for surgical robots above, and will not be repeated here.

[0150] Figure 12 This is a structural block diagram of the arm spacing adjustment device of the surgical robot in an embodiment of this application. In an exemplary embodiment, such as... Figure 12 As shown, a surgical robot arm spacing adjustment device 1200 is provided, including: an acquisition module 1201 and a first adjustment module 1202, wherein:

[0151] The acquisition module 1201 is used to acquire the distance between the robotic arms of the surgical robot during the operation.

[0152] The first adjustment module 1202 is used to adjust the arm spacing between the first robotic arm and the second robotic arm according to the end position of the device connected to the robotic arm and the second preset distance if the distance between the first robotic arm and the second robotic arm is less than the first preset distance, while the end position of the device connected to the robotic arm remains unchanged; the first robotic arm is a holding arm and the second robotic arm is a robotic arm adjacent to the first robotic arm.

[0153] In the aforementioned surgical robot arm spacing adjustment device, the distance between each robotic arm of the surgical robot during surgery can be obtained, and the arm spacing between the first and second robotic arms can be adjusted when the distance between the first and second robotic arms is less than a first preset distance. The first robotic arm is the instrument-holding arm, and the second robotic arm is the robotic arm adjacent to the first robotic arm. Therefore, it can promptly detect situations where the robotic arms are too close together, reducing the risk of collisions during surgery, improving the safety of the surgical robot during the procedure, and extending the lifespan of the surgical robot. Furthermore, since the arm spacing between the first and second robotic arms is adjusted based on the end-effector pose and the second preset distance, the arm spacing can be adjusted even when the end-effector pose of the connected instruments remains unchanged. In other words, the arm spacing can be adjusted without changing the end-effector poses of the first and second robotic arms, preventing damage to the patient's tissues from instrument movement, further improving the safety of the surgical robot during arm spacing adjustment. Moreover, the above process does not interrupt the surgical procedure, thus improving surgical efficiency.

[0154] Optionally, the first adjustment module 1202 includes:

[0155] The determining unit is used to determine the target motion sequence of the first robotic arm based on the end-effector pose and a second preset distance.

[0156] An adjustment unit is used to control the movement of the first robotic arm according to the target motion sequence, so as to adjust the arm spacing between the first robotic arm and the second robotic arm while keeping the end-effector pose unchanged.

[0157] Optionally, the determining unit includes:

[0158] The first determining subunit is used to determine the first motion sequence of the first target joint in the first robotic arm based on the end-effector pose of the device; the first target joint includes all joints in the first robotic arm except for the second target joint, and the second target joint is used to control the rotation of the first robotic arm along the axis of the first robotic arm.

[0159] The second determining subunit is used to determine the second motion sequence of the second target joint based on the first motion sequence; the target motion sequence includes the first motion sequence and the second motion sequence.

[0160] Optionally, the second determining subunit is also used to determine the second motion sequence of the second target joint based on the magnitude and direction of each desired angle in the first motion sequence.

[0161] Optionally, the first determining subunit is further configured to determine the target angle of the third target joint in the first target joint according to the second preset distance, and determine the third motion sequence of the third target joint according to the target angle of the third target joint and the current angle; and determine the fourth motion sequence of the fourth target joint according to the end pose of the device, the target angle of the third target joint and the current angle of the fourth target joint; the fourth target joint includes the joints in the first target joint other than the third target joint, and the first motion sequence includes the third motion sequence and the fourth motion sequence.

[0162] Optionally, the first determining subunit is also used to perform inverse kinematics calculation on the first robotic arm based on the end pose of the device and the target angle of the third target joint, and, if an inverse solution exists, determine the target angle of the fourth target joint; and determine the fourth motion sequence based on the target angle of the fourth target joint and the current angle.

[0163] Optionally, the arm span adjustment device 1200 of the surgical robot also includes:

[0164] The second adjustment module is used to adjust the second preset distance to obtain a new second preset distance when there is no inverse solution for the inverse kinematics calculation of the first robotic arm, and then return to execute the step of determining a new target motion sequence of the first robotic arm based on the end pose of the device and the new second preset distance.

[0165] The various modules in the arm spacing adjustment device of the aforementioned surgical robot 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.

[0166] Figure 13 This is an internal structural diagram of a computer device according to an embodiment of this application. In an exemplary embodiment, a computer device is provided, which may be a server, and its internal structural diagram may be as shown below. Figure 13As shown, this computer device includes a processor, memory, input / output (I / O) interfaces, and a communication interface. The processor, memory, and I / O interfaces are connected via a system bus, and the communication interface is also connected to the system bus via the I / O interfaces. 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 the environment for the operation of the operating system and computer programs stored in the non-volatile storage media. The database stores relevant data. The I / O interfaces are used for exchanging information between the processor and external devices. The communication interface is used for communicating with external terminals via a network. When executed by the processor, the computer program implements a method for adjusting the arm span of a surgical robot.

[0167] Those skilled in the art will understand that Figure 13 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.

[0168] In one exemplary 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:

[0169] Obtain the distances between the robotic arms of the surgical robot described during the operation;

[0170] If the distance between the first robotic arm and the second robotic arm is less than the first preset distance, then the arm spacing between the first robotic arm and the second robotic arm is adjusted according to the end pose of the instrument connected to the robotic arm and the second preset distance, while the end pose of the instrument remains unchanged.

[0171] The first robotic arm is a holding arm, and the second robotic arm is a robotic arm adjacent to the first robotic arm.

[0172] In one embodiment, when the processor executes the computer program, the processor further implements the following steps:

[0173] Based on the end-effector pose of the device and the second preset distance, a target motion sequence for the first robotic arm is determined; the first robotic arm is controlled to move according to the target motion sequence, so as to adjust the arm spacing between the first robotic arm and the second robotic arm while keeping the end-effector pose of the device unchanged.

[0174] In one embodiment, when the processor executes the computer program, the processor further implements the following steps:

[0175] Based on the end-effector pose of the device, a first motion sequence of the first target joint in the first robotic arm is determined; the first target joint includes all joints in the first robotic arm except for the second target joint, and the second target joint is used to control the first robotic arm to rotate along the axis of the first robotic arm; based on the first motion sequence, a second motion sequence of the second target joint is determined; the target motion sequence includes the first motion sequence and the second motion sequence.

[0176] In one embodiment, when the processor executes the computer program, the processor further implements the following steps:

[0177] Based on the magnitude and direction of each desired angle in the first motion sequence, the second motion sequence of the second target joint is determined.

[0178] In one embodiment, when the processor executes the computer program, the processor further implements the following steps:

[0179] The target angle of the third target joint in the first target joint is determined according to the second preset distance, and the third motion sequence of the third target joint is determined according to the target angle and the current angle of the third target joint; the fourth motion sequence of the fourth target joint is determined according to the end pose of the device, the target angle of the third target joint and the current angle of the fourth target joint; the fourth target joint includes the joints in the first target joint except the third target joint, and the first motion sequence includes the third motion sequence and the fourth motion sequence.

[0180] In one embodiment, when the processor executes the computer program, the processor further implements the following steps:

[0181] Based on the end-effector pose and the target angle of the third target joint, the first robotic arm is subjected to inverse kinematics calculation, and if an inverse solution exists, the target angle of the fourth target joint is determined; the fourth motion sequence is determined based on the target angle of the fourth target joint and the current angle.

[0182] In one embodiment, when the processor executes the computer program, the processor further implements the following steps:

[0183] If no inverse kinematics solution is found for the first robotic arm, the second preset distance is adjusted to obtain a new second preset distance, and the process returns to the step of determining a new target motion sequence for the first robotic arm based on the end-effector pose and the new second preset distance.

[0184] 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:

[0185] Obtain the distances between the robotic arms of the surgical robot described during the operation;

[0186] If the distance between the first robotic arm and the second robotic arm is less than the first preset distance, then the arm spacing between the first robotic arm and the second robotic arm is adjusted according to the end pose of the instrument connected to the robotic arm and the second preset distance, while the end pose of the instrument remains unchanged.

[0187] The first robotic arm is a holding arm, and the second robotic arm is a robotic arm adjacent to the first robotic arm.

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

[0189] Based on the end-effector pose of the device and the second preset distance, a target motion sequence for the first robotic arm is determined; the first robotic arm is controlled to move according to the target motion sequence, so as to adjust the arm spacing between the first robotic arm and the second robotic arm while keeping the end-effector pose of the device unchanged.

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

[0191] Based on the end-effector pose of the device, a first motion sequence of the first target joint in the first robotic arm is determined; the first target joint includes all joints in the first robotic arm except for the second target joint, and the second target joint is used to control the first robotic arm to rotate along the axis of the first robotic arm; based on the first motion sequence, a second motion sequence of the second target joint is determined; the target motion sequence includes the first motion sequence and the second motion sequence.

[0192] In one embodiment, when the computer program is executed by a processor, the following steps are further implemented:

[0193] Based on the magnitude and direction of each desired angle in the first motion sequence, the second motion sequence of the second target joint is determined.

[0194] In one embodiment, when the computer program is executed by a processor, the following steps are further implemented:

[0195] The target angle of the third target joint in the first target joint is determined according to the second preset distance, and the third motion sequence of the third target joint is determined according to the target angle and the current angle of the third target joint; the fourth motion sequence of the fourth target joint is determined according to the end pose of the device, the target angle of the third target joint and the current angle of the fourth target joint; the fourth target joint includes the joints in the first target joint except the third target joint, and the first motion sequence includes the third motion sequence and the fourth motion sequence.

[0196] In one embodiment, when the computer program is executed by a processor, the following steps are further implemented:

[0197] Based on the end-effector pose and the target angle of the third target joint, the first robotic arm is subjected to inverse kinematics calculation, and if an inverse solution exists, the target angle of the fourth target joint is determined; the fourth motion sequence is determined based on the target angle of the fourth target joint and the current angle.

[0198] In one embodiment, when the computer program is executed by a processor, the following steps are further implemented:

[0199] If no inverse kinematics solution is found for the first robotic arm, the second preset distance is adjusted to obtain a new second preset distance, and the process returns to the step of determining a new target motion sequence for the first robotic arm based on the end-effector pose and the new second preset distance.

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

[0201] Obtain the distances between the robotic arms of the surgical robot described during the operation;

[0202] If the distance between the first robotic arm and the second robotic arm is less than the first preset distance, then the arm spacing between the first robotic arm and the second robotic arm is adjusted according to the end pose of the instrument connected to the robotic arm and the second preset distance, while the end pose of the instrument remains unchanged.

[0203] The first robotic arm is a holding arm, and the second robotic arm is a robotic arm adjacent to the first robotic arm.

[0204] In one embodiment, when the computer program is executed by a processor, the following steps are further implemented:

[0205] Based on the end-effector pose of the device and the second preset distance, a target motion sequence for the first robotic arm is determined; the first robotic arm is controlled to move according to the target motion sequence, so as to adjust the arm spacing between the first robotic arm and the second robotic arm while keeping the end-effector pose of the device unchanged.

[0206] In one embodiment, when the computer program is executed by a processor, the following steps are further implemented:

[0207] Based on the end-effector pose of the device, a first motion sequence of the first target joint in the first robotic arm is determined; the first target joint includes all joints in the first robotic arm except for the second target joint, and the second target joint is used to control the first robotic arm to rotate along the axis of the first robotic arm; based on the first motion sequence, a second motion sequence of the second target joint is determined; the target motion sequence includes the first motion sequence and the second motion sequence.

[0208] In one embodiment, when the computer program is executed by a processor, the following steps are further implemented:

[0209] Based on the magnitude and direction of each desired angle in the first motion sequence, the second motion sequence of the second target joint is determined.

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

[0211] The target angle of the third target joint in the first target joint is determined according to the second preset distance, and the third motion sequence of the third target joint is determined according to the target angle and the current angle of the third target joint; the fourth motion sequence of the fourth target joint is determined according to the end pose of the device, the target angle of the third target joint and the current angle of the fourth target joint; the fourth target joint includes the joints in the first target joint except the third target joint, and the first motion sequence includes the third motion sequence and the fourth motion sequence.

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

[0213] Based on the end-effector pose and the target angle of the third target joint, the first robotic arm is subjected to inverse kinematics calculation, and if an inverse solution exists, the target angle of the fourth target joint is determined; the fourth motion sequence is determined based on the target angle of the fourth target joint and the current angle.

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

[0215] If no inverse kinematics solution is found for the first robotic arm, the second preset distance is adjusted to obtain a new second preset distance, and the process returns to the step of determining a new target motion sequence for the first robotic arm based on the end-effector pose and the new second preset distance.

[0216] Those skilled in the art will understand that all or part of the processes in 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. When executed, the computer program can include the processes of the embodiments described above. 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.

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

[0218] 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 adjusting the arm spacing of a surgical robot, characterized in that, The method includes: Obtain the distances between the robotic arms of the surgical robot described during the operation; If the distance between the first robotic arm and the second robotic arm is less than the first preset distance, then the arm spacing between the first robotic arm and the second robotic arm is adjusted according to the end pose of the instrument connected to the robotic arm and the second preset distance, while the end pose of the instrument remains unchanged. Wherein, the first robotic arm is a holding arm, and the second robotic arm is a robotic arm adjacent to the first robotic arm; The step of adjusting the arm spacing between the first and second robotic arms based on the end-effector pose and a second preset distance, while keeping the end-effector pose of the device connected to the robotic arm unchanged, includes: Based on the end-effector pose of the device, a first motion sequence of the first target joint in the first robotic arm is determined; the first target joint includes all joints in the first robotic arm except for the second target joint, and the second target joint is used to control the rotation of the first robotic arm along the axis of the first robotic arm; Based on the first motion sequence, determine the second motion sequence of the second target joint; The first robotic arm is controlled to move according to a target motion sequence, so as to adjust the arm spacing between the first robotic arm and the second robotic arm while keeping the end-effector pose unchanged; the target motion sequence includes the first motion sequence and the second motion sequence.

2. The method according to claim 1, characterized in that, The step of determining the second motion sequence of the second target joint based on the first motion sequence includes: Based on the magnitude and direction of each desired angle in the first motion sequence, the second motion sequence of the second target joint is determined.

3. The method according to claim 1 or 2, characterized in that, Determining the first motion sequence of the first target joint in the first robotic arm based on the end-effector pose includes: The target angle of the third target joint in the first target joint is determined according to the second preset distance, and the third motion sequence of the third target joint is determined according to the target angle of the third target joint and the current angle. Based on the end-effector pose of the device, the target angle of the third target joint, and the current angle of the fourth target joint, a fourth motion sequence of the fourth target joint is determined; the fourth target joint includes all joints in the first target joint except the third target joint, and the first motion sequence includes the third motion sequence and the fourth motion sequence.

4. The method according to claim 3, characterized in that The step of determining the fourth motion sequence of the fourth target joint based on the end-effector pose of the device, the target angle of the third target joint, and the current angle of the fourth target joint includes: Based on the end-effector pose and the target angle of the third target joint, the inverse kinematics of the first robotic arm are calculated, and if an inverse kinematics solution exists, the target angle of the fourth target joint is determined. The fourth motion sequence is determined based on the target angle and the current angle of the fourth target joint.

5. The method according to claim 4, characterized in that, The method further includes: If no inverse kinematics solution is found for the first robotic arm, the second preset distance is adjusted to obtain a new second preset distance, and the process returns to the step of determining a new target motion sequence for the first robotic arm based on the end-effector pose and the new second preset distance.

6. A surgical robot arm spacing adjustment device, characterized in that, The device includes: The acquisition module is used to acquire the distance between the robotic arms of the surgical robot during the operation; The first adjustment module is used to adjust the arm spacing between the first robotic arm and the second robotic arm according to the end-effector pose and the second preset distance if the distance between the first robotic arm and the second robotic arm is less than the first preset distance, while keeping the end-effector pose of the device connected to the robotic arm unchanged. Wherein, the first robotic arm is a holding arm, and the second robotic arm is a robotic arm adjacent to the first robotic arm; The first adjustment module includes: A determining unit is configured to determine a first motion sequence of a first target joint in the first robotic arm based on the end-effector pose of the device; the first target joint includes all joints in the first robotic arm except for a second target joint, the second target joint being used to control the first robotic arm to rotate along the axis of the first robotic arm; and to determine a second motion sequence of the second target joint based on the first motion sequence. An adjustment unit is used to control the movement of the first robotic arm according to a target motion sequence, so as to adjust the arm spacing between the first robotic arm and the second robotic arm while keeping the end-effector pose unchanged; the target motion sequence includes the first motion sequence and the second motion sequence.

7. The apparatus according to claim 6, characterized in that, The determining unit is further configured to determine the second motion sequence of the second target joint based on the magnitude and direction of each desired angle in the first motion sequence.

8. A computer device comprising a memory and a processor, wherein the memory stores a computer program, characterized in that, When the processor executes the computer program, it implements the steps of the method according to any one of claims 1 to 5.

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

10. A computer program product, comprising a computer program, characterized in that, When the computer program is executed by a processor, it implements the steps of the method according to any one of claims 1 to 5.

Citation Information

Patent Citations

  • Receding method for keeping tail end pose fixed

    CN114948238A

  • Robotic medical system with collision proximity indicator

    CN115734765A