Arm spacing adjusting method and device of surgical robot and computer equipment
By monitoring the distance between the robotic arms of the surgical robot in real time and adjusting it, the problem of robotic arms collision is solved, the safety and efficiency of the surgery is improved, and the service life of the robotic arms is extended.
Patent Information
- Application Number
- CN202311122997.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2023-08-30
- Publication Date
- 2025-02-28
- Estimated Expiration
- 2043-08-30
AI Technical Summary
The robotic arm of the surgical robot may experience unanticipated collisions during the operation, resulting in interruption of the surgery, reduced efficiency and increased safety risks.
By obtaining the distance between each robotic arms of the intraoperative surgical robot, if the distance between the first robotic arm and the second robotic arm is less than a preset distance, the arm spacing between the first robotic arm and the second robotic arm is adjusted according to the instrument end position and the second preset distance when the instrument end position remains unchanged.
It effectively reduces the risk of robotic arm collision, improves the safety and efficiency of surgical robots during the operation, and extends the service life of robotic arm.
Smart Images

Figure 00000000_0000_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of robotics technology, and in particular to a method, device and computer equipment for adjusting the arm spacing of a surgical robot. Background Art
[0002] With the advancement of robotics technology, surgical robots are increasingly being used in minimally invasive surgeries. Before surgery, surgical instruments are connected to the robotic arms of the surgical robot, and the master end operator controls the movement of the slave end robotic arm to drive the movement of the surgical instruments, thereby performing the surgery.
[0003] However, the master end manipulator and the slave end manipulator adopt a heterogeneous structure, and the position of the slave end manipulator does not correspond to the master end position one by one. Therefore, the manipulator of the surgical robot may collide with the doctor unexpectedly during the operation. On the one hand, it will interrupt the operation process and affect the efficiency of the operation. On the other hand, it will also pose a great safety hazard. Therefore, how to improve the efficiency and safety of surgical robots during the operation is the focus of research in this field. Summary of the invention
[0004] Based on this, it is necessary to provide a method, device and computer equipment for adjusting the arm spacing of a surgical robot that can improve the efficiency and safety of the surgical robot during surgery in order to address the above technical problems.
[0005] In a first aspect, the present application provides a method for adjusting arm spacing of a surgical robot, comprising:
[0006] Obtaining the distance between each robotic arm of the surgical robot during surgery;
[0007] If the distance between the first robotic arm and the second robotic arm is less than the first preset distance, the arm distance between the first robotic arm and the second robotic arm is adjusted according to the end position of the instrument and the second preset distance while the end position of the instrument connected to the robotic arm remains unchanged;
[0008] The first mechanical arm is a mechanical arm, and the second mechanical arm is a mechanical arm adjacent to the first mechanical arm.
[0009] In one embodiment, when the end position of the instrument connected to the mechanical arm remains unchanged, adjusting the arm distance between the first mechanical arm and the second mechanical arm according to the end position of the instrument and the second preset distance includes:
[0010] Determining a target motion sequence of the first robotic arm according to the end position of the instrument and the second preset distance;
[0011] The movement of the first robotic arm is controlled according to the target movement sequence to adjust the arm distance between the first robotic arm and the second robotic arm without changing the end posture of the instrument.
[0012] In one embodiment, determining a target motion sequence of the first robotic arm according to the end position of the instrument and the second preset distance includes:
[0013] Determine a first motion sequence of a first target joint in a first robotic arm according to the end posture of the instrument; the first target joint includes joints in the first robotic arm except a second target joint, and the second target joint is used to control the first robotic arm to rotate along the axial direction of the first robotic arm;
[0014] According to 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.
[0015] In one embodiment, determining a second motion sequence of a second target joint according to the first motion sequence includes:
[0016] A second motion sequence of the second target joint is determined according to the magnitude and direction of each expected angle in the first motion sequence.
[0017] In one embodiment, determining a first motion sequence of a first target joint in a first robotic arm according to an end position of the instrument includes:
[0018] Determine a target angle of a third target joint in the first target joint according to the second preset distance, and determine a third motion sequence of the third target joint according to the target angle and the current angle of the third target joint;
[0019] According to the end posture of the instrument, 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 the joints of 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, determining a fourth motion sequence of a fourth target joint according to the end posture of the instrument, the target angle of the third target joint, and the current angle of the fourth target joint includes:
[0021] Based on the end position of the instrument and the target angle of the third target joint, the first robotic arm is subjected to inverse kinematics solution, and the target angle of the fourth target joint is determined if an inverse solution exists;
[0022] A fourth motion sequence is determined according to the target angle and the current angle of the fourth target joint.
[0023] In one embodiment, the method further comprises:
[0024] When there is no inverse solution for the inverse kinematics solution of the first robotic arm, the second preset distance is adjusted to obtain a new second preset distance, and the step of returning to determine a new target motion sequence of the first robotic arm based on the end posture of the instrument and the new second preset distance is executed.
[0025] In a second aspect, the present application also provides an arm spacing adjustment device for a surgical robot, comprising:
[0026] An acquisition module, used to acquire the distance between each mechanical arm of the surgical robot during surgery;
[0027] a first adjustment module, configured to adjust the arm spacing between the first robotic arm and the second robotic arm according to the end posture 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 a first preset distance, while the end posture of the instrument connected to the robotic arm remains unchanged;
[0028] The first mechanical arm is a mechanical arm, and the second mechanical arm is a mechanical arm adjacent to the first mechanical arm.
[0029] In a third aspect, the present application further provides a computer device, comprising a memory and a processor, wherein the memory stores a computer program, and the processor implements the steps of any of the above methods when executing the computer program.
[0030] In a fourth aspect, the present application further provides a computer-readable storage medium having a computer program stored thereon, wherein the computer program implements the steps of any of the above methods when executed by a processor.
[0031] In a fifth aspect, the present application also provides a computer program product, including a computer program, which implements the steps of any of the above methods when executed by a processor.
[0032] The above-mentioned method, device and computer equipment for adjusting the arm spacing of the surgical robot can obtain the distance between the mechanical arms of the surgical robot during the operation, and adjust the arm spacing between the first mechanical arm and the second mechanical arm when the distance between the first mechanical arm and the second mechanical arm is less than the first preset distance, wherein the first mechanical arm is the mechanical arm holding the mechanical arm, and the second mechanical arm is the mechanical arm adjacent to the first mechanical arm. Therefore, it is possible to timely know that the distance between the mechanical arms is close, so as to reduce the risk of collision of the mechanical arms during the operation, improve the safety of the surgical robot during the operation, and improve the service life of the surgical robot. Further, since the arm spacing between the first mechanical arm and the second mechanical arm is adjusted according to the end posture of the instrument and the second preset distance, the arm spacing between the first mechanical arm and the second mechanical arm can be adjusted when the end posture of the instrument connected to the mechanical arm remains unchanged, that is, the arm spacing between the first mechanical arm and the second mechanical arm can be adjusted when the end posture of the first mechanical arm and the second mechanical arm remains unchanged, so as to avoid the end movement of the instrument from damaging the tissue in the patient's body, and further improve the safety of the surgical robot during the arm spacing adjustment process. In addition, the above process does not interrupt the surgical process, so the surgical efficiency is also improved. BRIEF DESCRIPTION OF THE DRAWINGS
[0033] In order to more clearly illustrate the technical solutions in the embodiments of the present application or the related technologies, the drawings required for use in the embodiments or the related technical descriptions are briefly introduced below. Obviously, the drawings described below are only some embodiments of the present application. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying creative work.
[0034] Figure 1 This is an application environment diagram of the arm spacing adjustment method of the surgical robot in the embodiment of the present application;
[0035] Figure 2 This is a schematic diagram of the structure of a main operator in an embodiment of the present application;
[0036] Figure 3 This is a schematic diagram of the structure of an operating table in an embodiment of the present application;
[0037] Figure 4 It is a flowchart of a method for adjusting arm spacing of a surgical robot in an embodiment of the present application;
[0038] Figure 5 This is a schematic diagram of a process of adjusting the arm spacing in an embodiment of the present application;
[0039] Figure 6 A schematic diagram of a process for adjusting the arm spacing in an embodiment of the present application;
[0040] Figure 7A schematic diagram of a process for determining a target motion sequence in an embodiment of the present application;
[0041] Figure 8 This is a schematic diagram of a process for determining a first motion sequence in an embodiment of the present application;
[0042] Fig. 9 This is a schematic diagram of a process for determining a fourth motion sequence in an embodiment of the present application;
[0043] Fig.10 This is a schematic diagram of another process of adjusting the arm spacing in an embodiment of the present application;
[0044] Fig.11 A schematic diagram of a process of adjusting arm spacing of a surgical robot in an embodiment of the present application;
[0045] Fig.12 This is a structural block diagram of an arm spacing adjustment device of a surgical robot in an embodiment of the present application;
[0046] Fig.13 Schematic diagram of the internal structure of a computer device in an embodiment of the present application. DETAILED DESCRIPTION
[0047] In order to make the purpose, technical solution and advantages of the present application more clearly understood, the present application is further described in detail below in conjunction with the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are only used to explain the present application and are not used to limit the present application.
[0048] Figure 1 FIG. 1 is an application environment diagram of the arm spacing adjustment method of the surgical robot in the embodiment of the present application, such as Figure 1 As shown, the surgical robot 101 communicates with the computer device 102. The computer device 102 can be independently set outside the surgical robot 101, including but not limited to various personal computers, laptops, smart phones, tablet computers and portable wearable devices, and the portable wearable devices can be smart watches, smart bracelets, head-mounted devices, etc. In some embodiments, the computer device 102 can also be implemented by an independent server or a server cluster composed of multiple servers.
[0049] The computer device 102 may also be disposed inside the surgical robot 101. For example, the computer device 102 may also be a central processing unit (CPU), a digital signal processor (DSP), a field programmable gate array (FPGA) or other programmable logic devices.
[0050] The surgical robot includes at least one instrument holding arm and one scope holding arm. Taking the application of the surgical robot 101 to abdominal surgery as an example, the surgical robot 101 may include a main operator, a surgical trolley and an imaging system. The imaging system is used to feed back images during the surgery.
[0051] Figure 2 Schematic diagram of the structure of a main operator in the embodiment of the present application. Figure 2 As shown, the master manipulator includes a master base 201 and an operating rod 202. The master base 201 is used to fix the operating rod 202, and the operating rod 202 is heterogeneous with the mechanical arm of the operating trolley. The doctor controls the operating rod 202, and the movement of the operating rod 202 is mapped and converted to realize the control of the mechanical arm in the operating trolley.
[0052] Figure 3 Schematic diagram of the structure of an operating table in the embodiment of the present application. Figure 3 As shown, the surgical trolley may include a trolley base 301 and a plurality of robotic arms, each of which includes at least one joint. Figure 3 Take a total of 4 robotic arms as an example, from left to right they are Robot Arm 1, Robot Arm 2, Robot Arm 3 and Robot Arm 4. Each robotic arm includes an adjustment arm and a telecentric mechanism. For example, Figure 3 The No. 4 mechanical arm in the embodiment includes an adjustment arm 302 and a telecentric mechanism 303. The joints in the adjustment arm and the telecentric mechanism are active joints, that is, joints that can actively move according to the signal of the computer device.
[0053] According to the actual operation purpose, the robot arm can be divided into the scope holding arm and the instrument holding arm. The scope holding arm is used to connect the endoscope, and the instrument holding arm is used to connect the surgical instrument. For example, Figure 3 The No. 3 mechanical arm is a mirror holding arm, which is used to connect the endoscope 304. Figure 3 Except for the No. 3 robot arm, the other robots are holding arms.
[0054] It can be understood that the operating trolley is used to perform surgery on the patient 305 on the operating table 306 . Figure 2-3 Only one optional mode of a surgical robot is illustrated, and this embodiment does not limit the type of surgical robot, the number of joint degrees of freedom in the surgical robot, and the number of robotic arms.
[0055] At present, the position of the robot arm during movement does not correspond to the position of the main operator one-to-one. Therefore, in the hands, the doctor cannot perceive the collision or impending collision interference between the robot arms in time, which easily causes a collision between the robot arms during the operation. On the one hand, the collision will interrupt the operation process and affect the efficiency of the operation. On the other hand, there will be a great safety hazard. Based on this, it is necessary to provide a method for adjusting the arm spacing of a surgical robot. The following will introduce the method for adjusting the arm spacing of the surgical robot.
[0056] Figure 4 FIG. 1 is a flow chart of a method for adjusting arm spacing of a surgical robot in an embodiment of the present application. In an exemplary embodiment, Figure 4 As shown, a method for adjusting the arm spacing of a surgical robot is provided, and the method is applied to Figure 1 The computer device in is used as an example for explanation, including the following S401 to S403.
[0057] S401, obtaining the distance between each robotic arm of the surgical robot during the operation.
[0058] Optionally, a distance sensor may be provided on each mechanical arm of the surgical robot to measure the distance between the mechanical arm and other mechanical arms. Then, the computer device obtains the measurement results of the distance sensor on each mechanical arm to obtain the distance between the mechanical 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 the arm distance between the first robotic arm and the second robotic arm is adjusted according to the end posture of the instrument connected to the robotic arm and the second preset distance; the first robotic arm is the robotic arm holding the instrument, and the second robotic arm is the robotic arm adjacent to the first robotic arm.
[0060] In this embodiment, during surgery, such as laparotomy, the endoscope holding arm is connected to the endoscope, and its main purpose is to obtain the intraoperative field of view. Therefore, during surgery, if the doctor does not adjust it, the endoscope holding arm will usually remain motionless. Since the instrument holding arm is connected to the surgical instrument, the instrument holding arm will move during surgery, and there is a risk of collision during the movement.
[0061] Therefore, the computer device will determine whether there are two robotic arms that are too close to each other, 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 demand and is used to indicate a safer arm spacing between the first robotic arm and the second robotic arm, which is a number greater than 0. For example, the first preset distance is set to 50 mm.
[0062] The first robotic arm is a robotic arm, for example, Figure 3 The computer device determines whether the distance between any one of the robotic arms in the surgical robot and its adjacent robotic arm is less than the 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 means 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 device 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 distance between the first robotic arm and the second robotic arm is too close. In this case, there is a high probability of a collision risk. Therefore, the computer device will adjust the arm distance to adjust the arm distance between the first robotic arm and the second robotic arm back to an appropriate size.
[0065] It is understandable that if the arm spacing is to be adjusted, at least one of the first and second robotic arms must be controlled to move. The process of controlling the movement of the robotic arm may cause the endoscope and / or surgical instrument connected to the end of the robotic arm to move accordingly, thereby damaging the patient's internal tissue. Therefore, in order to further improve the safety during the arm spacing adjustment process, the computer device in this embodiment adjusts the arm spacing between the first and second robotic arms according to the end posture of the instrument connected to the robotic arm and the second preset distance while the end posture of the instrument remains unchanged.
[0066] The second preset distance is a preset arm distance, and the computer device will try to make the arm distance between the first robotic arm and the second robotic arm meet the second preset distance. The second preset distance can be a value preset in the computer device in advance, or it can be a value determined by the computer device in response to the doctor's input operation, which is not limited in this embodiment. Optionally, in order to ensure the adjustment effect of the arm distance, the second preset distance is greater than or equal to the first preset distance.
[0067] The instruments connected to the robotic arm include at least one of a surgical instrument connected to the mechanical arm and an endoscope connected to the scope arm. When controlling the movement of a robotic arm, it is necessary to ensure that the end position of the instrument connected to the robotic arm remains unchanged. If the first robotic arm is controlled to move, the end position of the instrument refers to the end position of the instrument connected to the first robotic arm; if the second robotic arm is controlled to move, the end position of the instrument refers to the end position of the instrument connected to the second robotic arm; if both the first robotic arm and the second robotic arm are controlled to move, the end position of the instrument includes the end position of the instrument connected to the first robotic arm and the end position of the instrument connected to the second robotic arm.
[0068] It is understandable that the end of the instrument is generally located inside the patient's body. Optionally, the computer device can obtain the end position of the instrument connected to the robotic arm through a sensor after the surgical robot is positioned before the operation. Exemplarily, the computer device can obtain the end position of the instrument through a posture sensor provided at the end of the instrument. Sensors can also be provided on each joint of the robotic arm where the instrument is located, so that the computer device can obtain the current angle of each joint on the robotic arm where the instrument is located, and perform forward kinematics solution based on the current angle of each joint to determine the end position of the instrument.
[0069] Further optionally, the computer device can input the end posture of the instrument and the second preset distance into a trained adjustment model, and the adjustment model determines the motion strategy to adjust the arm distance between the first mechanical arm and the second mechanical arm when the end posture of the instrument connected to the mechanical arm remains unchanged. Among them, the computer device can control at least one of the first mechanical arm and the second mechanical arm to move according to the motion strategy to adjust the arm distance between the first mechanical arm and the second mechanical arm when the end posture of the instrument connected to them remains 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 FIG. 1 is a schematic diagram of a process of adjusting the arm spacing in an embodiment of the present application. Figure 5 As shown, after the doctor enters the intraoperative operation, the computer device monitors the arm spacing between the mechanical arms in the surgical robot, and determines whether there are two mechanical arms with an arm spacing less than a first preset distance, that is, whether the distance between the first mechanical arm and the second mechanical arm is less than the first preset distance. If the distance between the first mechanical arm and the second mechanical arm is less than the first preset distance, the computer device can determine whether to start the arm spacing adjustment. For example, the computer device issues an inquiry reminder, and after obtaining the doctor's confirmation, determines that the arm spacing adjustment can be started. If the doctor's confirmation is not obtained, it is determined that the arm spacing adjustment cannot be started. Of course, in some embodiments, the computer device may also default to the need to start the arm spacing adjustment.
[0071] Furthermore, when the computer device confirms the start of the arm spacing adjustment, the computer device can automatically adjust the arm spacing, that is, when the end posture of the instrument connected to the robotic arm remains unchanged, the arm spacing between the two first robotic arms and the second robotic arm that are smaller than the first preset distance is adjusted according to the end posture of the instrument and the second preset distance.
[0072] In the above-mentioned method for adjusting the arm spacing of the surgical robot, since the distance between the mechanical arms of the surgical robot during the operation can be obtained, and the arm spacing between the first mechanical arm and the second mechanical arm is adjusted when the distance between the first mechanical arm and the second mechanical arm is less than the first preset distance, wherein the first mechanical arm is the mechanical arm holding the mechanical arm, and the second mechanical arm is the mechanical arm adjacent to the first mechanical arm. Therefore, it is possible to timely know that the distance between the mechanical arms is close, so as to reduce the risk of collision of the mechanical arms during the operation, improve the safety of the surgical robot during the operation, and improve the service life of the surgical robot. Further, since the arm spacing between the first mechanical arm and the second mechanical arm is adjusted according to the end posture of the instrument and the second preset distance, the arm spacing between the first mechanical arm and the second mechanical arm can be adjusted when the end posture of the instrument connected to the mechanical arm remains unchanged, that is, the arm spacing between the first mechanical arm and the second mechanical arm can be adjusted when the end posture of the first mechanical arm and the second mechanical arm remains unchanged, so as to avoid the end movement of the instrument from damaging the tissue in the patient's body, and further improve the safety of the surgical robot during the arm spacing adjustment process. In addition, the above process does not interrupt the surgical process, so the surgical efficiency is also improved.
[0073] Figure 6 FIG. 1 is a schematic diagram of a process for adjusting the arm spacing in an embodiment of the present application. Figure 6 As shown, in an exemplary embodiment, optionally, the above S402 includes S601 to S602.
[0074] S601, determining a target motion sequence of a first robot arm according to the end posture of the instrument and a second preset distance.
[0075] In this embodiment, since the second robotic arm may be the scope holding arm, which is usually stationary during surgery, controlling the movement of the scope holding arm to adjust the arm spacing will increase the motion complexity and computational complexity of the surgical robot. Therefore, in this embodiment, the computer device determines the target motion sequence of the first robotic arm based on the end posture of the instrument and the second preset distance, and subsequently controls the movement of the first robotic arm according to the target motion sequence.
[0076] Among them, the target motion sequence is used to indicate how the first robotic arm moves. Optionally, the target motion sequence is used to describe the motion trajectory of each joint in the first robotic arm. Assuming that the first robotic arm includes joints 1 to 4, the target motion sequence may include the expected angles of joints 1 to 4 at each moment, for example, the first motion sequence includes the expected angle 1 of joint 1 of the first robotic arm at moment 1, the expected angle 2 at moment 2, the expected angle 3 at moment 3, and so on and so forth, and will not be repeated here. t is an integer greater than or equal to 1.
[0077] Optionally, the computer device can perform inverse kinematics solution on the first robotic arm based on the end position of the instrument of the first robotic arm and the second preset distance to determine the target angle of each joint in the first robotic arm, and the target angle and current angle of each joint in the first robotic arm, perform motion planning for each joint in the first robotic arm, and perform correction processing on the sequence after motion planning to obtain a target motion sequence. The correction processing may include but is not limited to removing outliers. Optionally, the computer device can also input the end position of the instrument of the first robotic arm and the second preset distance into a trained adjustment model, and the adjustment model determines the target motion sequence of the first robotic arm.
[0078] S602: Control the movement of the first robotic arm according to the target movement sequence to adjust the arm distance 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 the joint 1 of the first robotic arm as an example, the computer device can give the driving signal of the joint 1 of the first robotic arm at each moment according to the current angle of the joint 1 in the first robotic arm at each moment according to the target motion sequence, so that the actual angle of the joint 1 of the first robotic arm at each moment meets the expected angle in the target motion sequence. The same is true for joints 2 to 4 of the first robotic arm, which will not be described here. Furthermore, after the various joints of the first robotic arm move according to the target motion sequence, the arm spacing between the first robotic arm and the second robotic arm can be adjusted while the end posture of the device connected to the robotic arm remains unchanged.
[0081] In this embodiment, since the target motion sequence of the first mechanical arm is determined according to the end position of the instrument and the second preset distance, and the movement of the first mechanical arm is controlled according to the target motion sequence, the arm spacing between the first mechanical arm and the second mechanical arm can be adjusted without changing the end position of the instrument by controlling the movement of the first mechanical arm. In addition, since the movement of the first mechanical arm is controlled, there is no need to control the movement of the scope holding arm of the surgical robot, thus reducing the movement complexity and calculation complexity of the surgical robot and improving the efficiency of adjusting the arm spacing.
[0082] Figure 7 FIG. 1 is a flow chart of determining a target motion sequence in an embodiment of the present application. Figure 7 As shown, in an exemplary embodiment, optionally, the above S601 includes S701 to S702.
[0083] S701, determining a first motion sequence of a first target joint in a first robotic arm according to an end position of the instrument; the first target joint includes joints in the first robotic arm except a second target joint, and the second target joint is used to control the axial rotation of the first robotic arm along the first robotic arm.
[0084] If the end position of the device connected to the first robot arm is to be kept unchanged, the distal point of the first robot arm, that is, the distal end of the first robot arm, needs to be kept stationary during the movement of the first robot arm. However, the stationary distal point cannot constrain the movement of the first robot arm along its own axial direction. Therefore, in this embodiment, on the other hand, the first robot arm should not rotate along its own axial direction.
[0085] Therefore, in this embodiment, the computer device first needs to determine the first motion sequence of the first target joint in the first mechanical arm according to the end position of the instrument. That is, the computer device determines the first motion sequence of the first target joint in the first mechanical arm according to the end position of the instrument connected to the first mechanical arm.
[0086] The second target joint is used to control the first robotic arm to rotate along the axis of the first robotic arm. For example, the second target joint can be set at the top of the first robotic arm. The first target joint includes the joints in the first robotic arm except the second target joint. For example, continuing to take the first robotic arm including joints 1 to 4 as an example, assuming that the second target joint is joint 4, the first target joint is 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, and so on. The expected angle t at time t.
[0088] Optionally, the computer device can perform inverse kinematics solution on the first robotic arm based on the end posture of the instrument of the first robotic arm and the second preset distance to determine the target angle of the first target joint in the first robotic arm, and the target angle and current angle of the first target joint in the first robotic arm, perform motion planning for each joint in the first robotic arm, and correct the sequence after motion planning to obtain a first motion sequence.
[0089] S702, determining a second motion sequence of a second target joint according to the first motion sequence; 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 the 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 first target joints and second target joints, after the first motion sequence of the first target joint is determined, the second motion sequence can be determined according to the first motion sequence.
[0092] It can be understood that after the first motion sequence and the second motion sequence are determined, the target motion sequence of the first robot arm is also determined, that is, the target motion sequence includes the first motion sequence and the second motion sequence.
[0093] Optionally, the computer device can determine the expected 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 expected angle of the first target joint at each moment, and calculate the expected angle of the second target joint at each moment when the end posture of the instrument connected to the first robotic arm remains unchanged, so as to determine the second motion sequence.
[0094] In this embodiment, the first motion sequence of the first target joint in the first robot arm is first determined according to the end position of the instrument, and then the second motion sequence of the second target joint is determined according to 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 the joints in the first robot arm except the second target joint, and the second target joint is used to control the axial rotation of the first robot arm, therefore, when the movement of the first robot arm is controlled according to the target motion sequence, it is possible to adjust the arm spacing between the first robot arm and the second robot arm while the end position of the instrument connected to the first robot arm remains unchanged, so as to improve the safety of the surgical robot during the operation.
[0095] In an exemplary embodiment, optionally, the above S702 may be implemented in the following manner:
[0096] A second motion sequence of the second target joint is determined according to the magnitude and direction of each expected angle in the first motion sequence.
[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 drive the second target joint to move, 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 according to the size and direction of each expected 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 according to the size and direction of each expected angle in the first motion sequence. The theoretical motion angle is used to indicate the angle at 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, in order to prevent the second target joint from actually rotating axially, the computer device performs inverse compensation based on the theoretical motion angle to determine the second motion sequence according to the theoretical motion angle. Optionally, inverse compensation refers to a method in which the magnitude of the theoretical motion angle remains unchanged and the direction is negative.
[0101] Continuing with the example of joints 1 to 3 being the first target joints and joint 4 being the second target joint, according to 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 manipulator at time 1, respectively, and calculate the theoretical motion angle 1 of joint 4 of the first manipulator at time 1 according to 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 expected angle 1 of the joint 4 at time 1. For example, assuming that the theoretical motion angle 1 of the joint 4 at time 1 indicates that the joint 4 rotates 15 degrees clockwise along the axis of the first robot arm, which is recorded as "+15 degrees", the computer device determines that the expected angle 1 of the joint 4 at time 1 is "-15 degrees", which indicates that the joint 4 rotates 15 degrees counterclockwise along the axis of the first robot arm. The same is true for other moments, so the computer device can determine the second motion sequence of the second target joint.
[0103] Since this embodiment determines the second motion sequence of the second target joint according to the size and direction of each expected angle in the first motion sequence, it is possible to use the movement of the first target joint to determine how the second target joint moves, so as to ensure that the arm distance between the first robotic arm and the second robotic arm is adjusted while the end position of the instrument remains unchanged.
[0104] Figure 8 FIG. 1 is a flow chart of determining a first motion sequence in an embodiment of the present application. Figure 8 As shown, in an exemplary embodiment, optionally, the above S701 includes S801 to S802.
[0105] S801, determining a target angle of a third target joint in the first target joint according to a second preset distance, and determining a third motion sequence of the third target joint according to the target angle and a current angle of the third target joint.
[0106] In this embodiment, the third target joint refers to a 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, the distance 1 between the first robotic arm and the second robotic arm corresponds to the angle 1 of the third target joint, and the distance 2 between the first robotic arm and the second robotic arm corresponds to the angle 2 of the third target joint. Then, the computer device can determine the target angle of the third target joint based on the second preset distance and the correspondence.
[0107] The third motion sequence is used to describe the motion trajectory of the third target joint in the first robotic arm. Assuming that 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, and so on. The expected angle t at time t.
[0108] Furthermore, the computer device may determine the third motion sequence of the third target joint according to the target angle and current angle of the third target joint. For example, the computer device may obtain the current angle of the third target joint through a sensor provided on the third target joint, and after determining the target angle of the third target joint according to the second preset distance, perform motion planning for the third target joint according to the target angle and current angle of the third target joint, and perform correction processing on the sequence after motion planning to obtain the third motion sequence.
[0109] S802, determine the fourth motion sequence of the fourth target joint according to the end posture of the instrument, the target angle of the third target joint and the current angle of the fourth target joint; the fourth target joint includes the joints of the first target joint except the third target joint, and the first motion sequence includes the third motion sequence and the fourth motion sequence.
[0110] Among them, the fourth target joint includes the joints of the first target joint except 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, 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, and ... the expected angle t at time t.
[0112] Furthermore, the computer device can determine a fourth motion sequence of the fourth target joint based on the end posture of the instrument, the target angle of the third target joint, and the current angle of the fourth target joint.
[0113] It can be understood that after the third motion sequence and the fourth motion sequence are determined, the first motion sequence of the first robot arm is also determined, that is, the first motion sequence includes the third motion sequence and the fourth motion sequence.
[0114] Optionally, the computer device can perform inverse kinematics solution on the first robotic arm based on the end posture of the instrument and the target angle of the third target joint to determine the target angle of the fourth target joint, and perform motion planning for the fourth target joint of the first robotic arm based on the target angle and current angle of the fourth target joint, and correct the sequence after motion planning to obtain a fourth motion sequence.
[0115] In this embodiment, since the fourth target joint includes the joints of the first target joint except the third target joint, 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 current angle of the third target joint. Then, the third motion sequence can be determined according to the end position of the instrument, the target angle of the third target joint and the current angle of the fourth target joint. Furthermore, since the first motion sequence includes the third motion sequence and the fourth motion sequence, 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] Fig. 9 FIG. 1 is a flow chart of determining a fourth motion sequence in an embodiment of the present application. Fig. 9 As shown, in an exemplary embodiment, optionally, the above S801 includes S901 to S902.
[0117] S901, based on the end position of the instrument and the target angle of the third target joint, perform inverse kinematics solution on the first robotic arm, and determine the target angle of the fourth target joint if an inverse solution exists.
[0118] S902, determining a fourth motion sequence according to a target angle and a current angle of a fourth target joint.
[0119] In this embodiment, in order to keep the distal point of the first robotic arm stationary while controlling the movement of the first robotic arm, the computer device will perform inverse kinematics solution on the first robotic arm based on the end posture of the instrument and the target angle of the third target joint. In other words, the computer device will perform inverse kinematics solution on the first robotic arm according to the end posture 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 process of performing inverse kinematics calculation on the first robotic arm, the computer device also determines the target angle of the fourth target joint.
[0121] Exemplarily, the computer device can determine the target angles 2 to the fifth target angle 3 corresponding to the joints 2 to 3 of the first robotic arm based on the end posture of the instrument and the target angle 1 of the joint 1 of the first robotic arm.
[0122] Further, the computer device can determine the fourth motion sequence according to the target angle and current angle of the fourth target joint. Exemplarily, the computer device can obtain the current angle of the fourth target joint through the sensor provided on the fourth target joint, and according to the target angle and current angle of the fourth target joint, perform motion planning on the fourth target joint, and correct the sequence after the motion planning 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, and the present embodiment is not limited thereto. It should be noted that the above-mentioned motion planning may include but is not limited to a grid search method, a free space method, and a quadtree method.
[0123] This embodiment can perform inverse kinematics solution on the first robotic arm based on the end posture of the instrument and the target angle of the third target joint, determine the target angle of the fourth target joint when an inverse solution exists, and determine the fourth motion sequence based on the target angle and current angle of the fourth target joint. Therefore, it realizes the determination of the fourth motion sequence of the fourth target joint.
[0124] In an exemplary embodiment, optionally, the above-mentioned method for adjusting the arm spacing of the surgical robot further includes the following steps:
[0125] When there is no inverse solution for the inverse kinematics solution of the first robotic arm, the second preset distance is adjusted to obtain a new second preset distance, and the step of returning to determine a new target motion sequence of the first robotic arm based on the end posture of the instrument and the new second preset distance is executed.
[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 distance 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 of the first robot arm according to the end position of the instrument and the new second preset distance. In other words, the computer device updates the second preset distance, and re-determines the target motion sequence of the first robot arm according to the end position of the instrument and the second preset distance.
[0128] Optionally, the computer device may re-determine the second preset distance from a plurality of candidate experience values to obtain a new second preset distance, or the computer device may obtain a new second preset distance based on the last second preset distance and a preset coefficient. For example, the computer device uses the product of the current second preset distance and the preset coefficient k as the new second preset distance. The preset coefficient may be a constant greater than 0 and less than 1.
[0129] Taking the first second preset distance as A as an example, when the second preset distance is A, the target angle of the third target joint is α, and the computer device performs inverse kinematics solution based on the end posture of the instrument 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 there is no inverse solution, the computer device calculates A*k=B, and uses B as the updated second preset distance, that is, the second second preset distance, and determines the target angle of the third target joint to be β according to the second preset distance B. Then, the computer device performs inverse kinematics solution according to the end posture of the instrument and the target angle β of the third target joint. If there is an inverse solution, the target angle of the third target joint is determined to be β, and the target angle of the fourth target joint is also determined synchronously.
[0131] If there is no inverse solution, the computer device continues to calculate B*k=C, and uses C as the updated second preset distance, and repeats this process until there is an inverse solution, which will not be described in detail here.
[0132] Since this embodiment can adjust the second preset distance to obtain a new second preset distance when there is no inverse solution for the inverse kinematics solution of the first robotic arm, and return to execute the step of determining a new target motion sequence of the first robotic arm based on the end posture of the instrument and the new second preset distance, therefore, in the process of iterative search for the second preset distance, it is possible to calculate a target motion sequence that meets the actual situation.
[0133] In order to more clearly introduce the arm spacing adjustment method of the surgical robot in this application, Fig.10 and Fig.11 illustrate. Fig.10 This is a schematic diagram of another process of adjusting the arm spacing in an embodiment of the present application. Fig.10 It can be understood as Figure 5 The process of automatically adjusting the arm spacing. Fig.10 As shown, during the arm spacing adjustment process, the computer device determines the second preset distance, and determines the target angle of the third target joint in the first target joint according to the second preset distance. Further, according to the target angle and current angle of the third target joint, the third motion sequence of the third target joint is determined.
[0134] Furthermore, the computer device performs inverse kinematics solution on the first robotic arm based on the end posture of the instrument and the target angle of the third target joint.
[0135] If there is an inverse solution, the target angle of the fourth target joint is determined, and the fourth motion sequence can be determined based on the target angle and current angle of the fourth target joint. Since the first motion sequence includes the third motion sequence and the fourth motion sequence, the computer device also determines the first motion sequence. After that, the computer device can determine the second motion sequence of the second target joint based on the size and direction of each expected angle in the first motion sequence. Finally, the movement of the first robotic arm is controlled according to the target motion sequence to adjust the arm spacing between the first robotic arm and the second robotic arm while the end position of the instrument remains unchanged.
[0136] If there is no inverse solution, the computer device updates the second preset distance and re-performs inverse kinematics solution on the first robotic arm based on the end posture of the instrument and the target angle of the third target joint until an inverse solution exists, then redetermines the target motion sequence to control the first robotic arm for positioning.
[0137] Fig.11 FIG. 1 is a schematic diagram of a method for adjusting arm spacing of a surgical robot in an embodiment of the present application. Fig.11 As shown, the computer device can execute the arm spacing adjustment method of the surgical robot according to the following process.
[0138] S1101, obtaining the distance between each robotic arm 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 the first preset distance, determining a target angle of a third target joint in the first target joint according to the second preset distance, and determining a third motion sequence of the third target joint according to the target angle and the current angle of the third target joint. The first robotic arm is a robotic arm, and the second robotic arm is a robotic arm adjacent to the first robotic arm.
[0140] S1103, determining a target angle of a third target joint in the first target joint according to the second preset distance, and determining a third motion sequence of the third target joint according to the target angle and the current angle of the third target joint. The first target joint includes the joints in the first robotic arm except the second target joint, and the second target joint is used to control the first robotic arm to rotate along the axial direction of the first robotic arm.
[0141] S1104, based on the end position of the instrument and the target angle of the third target joint, perform inverse kinematics solution on the first robotic arm. If an inverse solution exists, execute S1105. If an inverse solution exists, execute S1109.
[0142] S1105, determining a target angle of a fourth target joint. The fourth target joint includes the joints of the first target joints except the third target joint.
[0143] S1106, determining a fourth motion sequence according to the target angle and the current angle of the fourth target joint. The first motion sequence includes the third motion sequence and the fourth motion sequence.
[0144] S1107, determining a second motion sequence for the second target joint according to the size and direction of each expected angle in the first motion sequence, wherein the target motion sequence includes the first motion sequence and the second motion sequence.
[0145] S1108, controlling the movement of the first robotic arm according to the target movement sequence to adjust the arm distance between the first robotic arm and the second robotic arm while keeping the end position of the instrument unchanged.
[0146] S1109, adjusting the second preset distance to obtain a new second preset distance, and then returning to S1103.
[0147] The above S1101 to S1109 can refer 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 to adjust the arm spacing between the first robotic arm and the second robotic arm during the operation, in order to ensure that the end posture of the instrument of the surgical robot remains unchanged, the third target joint of the first robotic arm is set as an active joint, and through inverse kinematics solution, when the distal point does not move, the fourth target joint and the second target joint perform "passive follow-up" movement, thereby achieving the distal point being fixed and the axial posture being unchanged.
[0148] It should be understood that, although the various steps in the flowcharts involved in the above-mentioned embodiments are displayed in sequence according to the indication of the arrows, these steps are not necessarily executed in sequence according to the order indicated by the arrows. Unless there is a clear explanation in this article, the execution of these steps does not have a strict order restriction, and these steps can be executed in other orders. Moreover, at least a part of the steps in the flowcharts involved in the above-mentioned embodiments can include multiple steps or multiple stages, and these steps or stages are not necessarily executed at the same time, but can be executed at different times, and the execution order of these steps or stages is not necessarily to be carried out in sequence, but can be executed in turn or alternately with other steps or at least a part of the steps or stages in other steps.
[0149] Based on the same inventive concept, the embodiment of the present application also provides a surgical robot arm spacing adjustment device for implementing the above-mentioned surgical robot arm spacing adjustment method. The implementation scheme for solving the problem provided by the device is similar to the implementation scheme recorded in the above-mentioned method, so the specific limitations in the embodiments of one or more surgical robot arm spacing adjustment devices provided below can refer to the limitations of the surgical robot arm spacing adjustment method above, and will not be repeated here.
[0150] Fig.12 FIG. 1 is a structural block diagram of an arm spacing adjustment device of a surgical robot in an embodiment of the present application. In an exemplary embodiment, Fig.12 As shown, a surgical robot arm spacing adjustment device 1200 is provided, comprising: an acquisition module 1201 and a first adjustment module 1202, wherein:
[0151] The acquisition module 1201 is used to acquire the distance between each mechanical arm 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 posture 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, while the end posture of the instrument connected to the robotic arm remains unchanged; the first robotic arm is a robotic arm holding the instrument, and the second robotic arm is a robotic arm adjacent to the first robotic arm.
[0153] In the above-mentioned arm spacing adjustment device of the surgical robot, since the distance between the mechanical arms of the surgical robot during the operation can be obtained, and the arm spacing between the first mechanical arm and the second mechanical arm can be adjusted when the distance between the first mechanical arm and the second mechanical arm is less than the first preset distance, wherein the first mechanical arm is the mechanical arm, and the second mechanical arm is the mechanical arm adjacent to the first mechanical arm. Therefore, it is possible to timely know that the distance between the mechanical arms is close, so as to reduce the collision risk of the mechanical arms during the operation, improve the safety of the surgical robot during the operation, and improve the service life of the surgical robot. Further, since the arm spacing between the first mechanical arm and the second mechanical arm is adjusted according to the end posture of the instrument and the second preset distance, the arm spacing between the first mechanical arm and the second mechanical arm can be adjusted when the end posture of the instrument connected to the mechanical arm remains unchanged, that is, the arm spacing between the first mechanical arm and the second mechanical arm can be adjusted when the end posture of the first mechanical arm and the second mechanical arm remains unchanged, so as to avoid the end movement of the instrument from damaging the tissue in the patient's body, and further improve the safety of the surgical robot during the arm spacing adjustment process. In addition, the above process does not interrupt the surgical process, so the surgical efficiency is also improved.
[0154] Optionally, the first adjustment module 1202 includes:
[0155] The determination unit is used to determine the target motion sequence of the first robot arm according to the end posture of the instrument and the second preset distance.
[0156] The adjustment unit is used to control the movement of the first mechanical arm according to the target movement sequence, so as to adjust the arm distance between the first mechanical arm and the second mechanical arm when the end position of the instrument remains unchanged.
[0157] Optionally, the determining unit includes:
[0158] The first determination subunit is used to determine the first motion sequence of the first target joint in the first robotic arm according to the end posture of the instrument; the first target joint includes the joints in the first robotic arm except the second target joint, and the second target joint is used to control the axial rotation of the first robotic arm along the first robotic arm.
[0159] The second determining subunit is used to determine a second motion sequence of a second target joint according to the first motion sequence; the target motion sequence includes the first motion sequence and the second motion sequence.
[0160] Optionally, the second determination subunit is further used to determine a second motion sequence of the second target joint according to the size and direction of each expected angle in the first motion sequence.
[0161] Optionally, the first determination subunit is also used to determine the target angle of the third target joint in the first target joint based on the second preset distance, and determine the third motion sequence of the third target joint based on the target angle and current angle of the third target joint; determine the fourth motion sequence of the fourth target joint based on the end posture of the instrument, 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.
[0162] Optionally, the first determination subunit is also used to perform inverse kinematics solution on the first robotic arm based on the end posture of the instrument and the target angle of the third target joint, and determine the target angle of the fourth target joint when an inverse solution exists; and determine the fourth motion sequence according to the target angle and current angle of the fourth target joint.
[0163] Optionally, the arm spacing adjustment device 1200 of the surgical robot further 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 solution of the first robotic arm, and return to execute the step of determining a new target motion sequence of the first robotic arm based on the end posture of the instrument and the new second preset distance.
[0165] Each module in the above-mentioned arm spacing adjustment device of the surgical robot can be implemented in whole or in part by software, hardware and a combination thereof. Each of the above-mentioned modules can be embedded in or independent of the processor in the computer device in the form of hardware, or can be stored in the memory of the computer device in the form of software, so that the processor can call and execute the corresponding operations of each of the above modules.
[0166] Fig.13 1 is an internal structure diagram of a computer device in an embodiment of the present application. In an exemplary embodiment, a computer device is provided, which may be a server, and its internal structure diagram may be as follows: Fig.13As shown. The computer device includes a processor, a memory, an input / output interface (Input / Output, referred to as I / O) and a communication interface. The processor, the memory and the input / output interface are connected through a system bus, and the communication interface is connected to the system bus through the input / output interface. The processor of the computer device is used to provide computing and control capabilities. The memory of the computer device includes a non-volatile storage medium and an internal memory. The non-volatile storage medium stores an operating system, a computer program and a database. The internal memory provides an environment for the operation of the operating system and the computer program in the non-volatile storage medium. The database of the computer device is used to store relevant data. The input / output interface of the computer device is used to exchange information between the processor and an external device. The communication interface of the computer device is used to communicate with an external terminal through a network connection. When the computer program is executed by the processor, a method for adjusting the arm spacing of a surgical robot is implemented.
[0167] Those skilled in the art will understand that Fig.13 The structure shown in the figure is only a block diagram of a part of the structure related to the solution of the present application, and does not constitute a limitation on the computer device to which the solution of the present application is applied. The specific computer device may include more or fewer components than those shown in the figure, or combine certain components, or have a different arrangement of components.
[0168] In an exemplary embodiment, a computer device is provided, including a memory and a processor, wherein a computer program is stored in the memory, and when the processor executes the computer program, the following steps are implemented:
[0169] Obtaining the distance between each mechanical arm of the surgical robot during the operation;
[0170] If the distance between the first robotic arm and the second robotic arm is less than the first preset distance, the arm distance 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 connected to the robotic arm remains unchanged;
[0171] The first mechanical arm is a robotic arm, and the second mechanical arm is a mechanical arm adjacent to the first mechanical arm.
[0172] In one embodiment, when the processor executes the computer program, the processor further implements the following steps:
[0173] Determine a target motion sequence of the first robotic arm according to the end position of the instrument and the second preset distance; control the movement of the first robotic arm according to the target motion sequence to adjust the arm distance between the first robotic arm and the second robotic arm while keeping the end position of the instrument unchanged.
[0174] In one embodiment, when the processor executes the computer program, the processor further implements the following steps:
[0175] According to the end posture of the instrument, a first motion sequence of the first target joint in the first robotic arm is determined; the first target joint includes the joints in the first robotic arm except the second target joint, and the second target joint is used to control the axial rotation of the first robotic arm along the first robotic arm; according to 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] A second motion sequence of the second target joint is determined according to the magnitude and direction of each expected angle in the first motion sequence.
[0178] In one embodiment, when the processor executes the computer program, the processor further implements the following steps:
[0179] 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 and current angle of the third target joint; determine the fourth motion sequence of the fourth target joint according to the end posture of the instrument, 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 posture of the instrument and the target angle of the third target joint, the first robotic arm is subjected to inverse kinematics solution, and when an inverse solution exists, the target angle of the fourth target joint is determined; and the fourth motion sequence is determined according to the target angle and current angle of the fourth target joint.
[0182] In one embodiment, when the processor executes the computer program, the processor further implements the following steps:
[0183] When there is no inverse solution for the inverse kinematics solution of the first robotic arm, the second preset distance is adjusted to obtain a new second preset distance, and the step of returning to determine a new target motion sequence of the first robotic arm based on the end posture of the instrument and the new second preset distance is executed.
[0184] In one embodiment, a computer readable storage medium is provided, on which a computer program is stored, and when the computer program is executed by a processor, the following steps are implemented:
[0185] Obtaining the distance between each mechanical arm of the surgical robot during the operation;
[0186] If the distance between the first robotic arm and the second robotic arm is less than the first preset distance, the arm distance 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 connected to the robotic arm remains unchanged;
[0187] The first mechanical arm is a robotic arm, and the second mechanical arm is a mechanical arm adjacent to the first mechanical arm.
[0188] In one embodiment, when the computer program is executed by a processor, the following steps are also implemented:
[0189] Determine a target motion sequence of the first robotic arm according to the end position of the instrument and the second preset distance; control the movement of the first robotic arm according to the target motion sequence to adjust the arm distance between the first robotic arm and the second robotic arm while keeping the end position of the instrument unchanged.
[0190] In one embodiment, when the computer program is executed by a processor, the following steps are also implemented:
[0191] According to the end posture of the instrument, a first motion sequence of the first target joint in the first robotic arm is determined; the first target joint includes the joints in the first robotic arm except the second target joint, and the second target joint is used to control the axial rotation of the first robotic arm along the first robotic arm; according to 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 also implemented:
[0193] A second motion sequence of the second target joint is determined according to the magnitude and direction of each expected angle in the first motion sequence.
[0194] In one embodiment, when the computer program is executed by a processor, the following steps are also implemented:
[0195] 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 and current angle of the third target joint; determine the fourth motion sequence of the fourth target joint according to the end posture of the instrument, 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 also implemented:
[0197] Based on the end position of the instrument and the target angle of the third target joint, the first robotic arm is subjected to inverse kinematics solution, and when an inverse solution exists, the target angle of the fourth target joint is determined; and the fourth motion sequence is determined according to the target angle and current angle of the fourth target joint.
[0198] In one embodiment, when the computer program is executed by a processor, the following steps are also implemented:
[0199] When there is no inverse solution for the inverse kinematics solution of the first robotic arm, the second preset distance is adjusted to obtain a new second preset distance, and the step of returning to execute the new target motion sequence of the first robotic arm based on the end posture of the instrument and the new second preset distance is performed.
[0200] In one embodiment, a computer program product is provided, comprising a computer program, which, when executed by a processor, implements the following steps:
[0201] Obtaining the distance between each mechanical arm of the surgical robot during the operation;
[0202] If the distance between the first robotic arm and the second robotic arm is less than the first preset distance, the arm distance 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 connected to the robotic arm remains unchanged;
[0203] The first mechanical arm is a robotic arm, and the second mechanical arm is a mechanical arm adjacent to the first mechanical arm.
[0204] In one embodiment, when the computer program is executed by a processor, the following steps are also implemented:
[0205] Determine a target motion sequence of the first robotic arm according to the end position of the instrument and the second preset distance; control the movement of the first robotic arm according to the target motion sequence to adjust the arm distance between the first robotic arm and the second robotic arm while keeping the end position of the instrument unchanged.
[0206] In one embodiment, when the computer program is executed by a processor, the following steps are also implemented:
[0207] According to the end posture of the instrument, a first motion sequence of the first target joint in the first robotic arm is determined; the first target joint includes the joints in the first robotic arm except the second target joint, and the second target joint is used to control the axial rotation of the first robotic arm along the first robotic arm; according to 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 also implemented:
[0209] A second motion sequence of the second target joint is determined according to the magnitude and direction of each expected angle in the first motion sequence.
[0210] In one embodiment, when the computer program is executed by a processor, the following steps are also implemented:
[0211] 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 and current angle of the third target joint; determine the fourth motion sequence of the fourth target joint according to the end posture of the instrument, 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 also implemented:
[0213] Based on the end posture of the instrument and the target angle of the third target joint, the first robotic arm is subjected to inverse kinematics solution, and when an inverse solution exists, the target angle of the fourth target joint is determined; and the fourth motion sequence is determined according to the target angle and current angle of the fourth target joint.
[0214] In one embodiment, when the computer program is executed by a processor, the following steps are also implemented:
[0215] When there is no inverse solution for the inverse kinematics solution of the first robotic arm, the second preset distance is adjusted to obtain a new second preset distance, and the step of returning to execute the new target motion sequence of the first robotic arm based on the end posture of the instrument and the new second preset distance is performed.
[0216] Those skilled in the art can understand that all or part of the processes in the above-mentioned embodiment methods can be completed by instructing the relevant hardware through a computer program, and the computer program can be stored in a non-volatile computer-readable storage medium. When the computer program is executed, it can include the processes of the embodiments of the above-mentioned methods. Among them, any reference to the memory, database or other medium used in the embodiments provided in the present 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), magnetoresistive 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. As an illustration and not limitation, RAM can be in various forms, such as static random access memory (SRAM) or dynamic random access memory (DRAM). The database involved in each embodiment provided in this application may include at least one of a relational database and a non-relational database. Non-relational databases may include distributed databases based on blockchains, etc., but are not limited to this. The processor involved in each embodiment provided in this application may be a general-purpose processor, a central processing unit, a graphics processor, a digital signal processor, a programmable logic device, a data processing logic device based on quantum computing, etc., but are not limited to this.
[0217] The technical features of the above embodiments may be arbitrarily combined. To make the description concise, 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 above-described embodiments only express several implementation methods of the present application, and the descriptions thereof are relatively specific and detailed, but they cannot be construed as limiting the scope of the present application. It should be noted that, for a person of ordinary skill in the art, several modifications and improvements can be made without departing from the concept of the present application, and these all belong to the protection scope of the present application. Therefore, the protection scope of the present application shall be subject to the attached claims.
Claims
1. A method for adjusting arm spacing of a surgical robot, characterized in that: The method comprises: Obtaining the distance between each mechanical arm of the surgical robot during the operation; If the distance between the first robotic arm and the second robotic arm is less than the first preset distance, the arm distance 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 connected to the robotic arm remains unchanged; The first robotic arm is a robotic arm, and the second robotic arm is a robotic arm adjacent to the first robotic arm.
2. The method according to claim 1, characterized in that: The method of adjusting the arm distance between the first robotic arm and the second robotic arm according to the end position of the instrument and a second preset distance while the end position of the instrument connected to the robotic arm remains unchanged comprises: Determining a target motion sequence of the first robotic arm according to the end position of the instrument and the second preset distance; The movement of the first robotic arm is controlled according to the target motion sequence, so as to adjust the arm distance between the first robotic arm and the second robotic arm when the end position of the instrument remains unchanged.
3. The method according to claim 2, characterized in that The step of determining a target motion sequence of the first robotic arm according to the end position of the instrument and the second preset distance includes: Determine a first motion sequence of a first target joint in the first robotic arm according to the end position of the instrument; the first target joint includes joints in the first robotic arm except a second target joint, and the second target joint is used to control the first robotic arm to rotate along the axial direction of the first robotic arm; According to 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.
4. The method according to claim 3, characterized in that: Determining a second motion sequence of the second target joint according to the first motion sequence includes: A second motion sequence of the second target joint is determined according to the magnitude and direction of each expected angle in the first motion sequence.
5. The method according to claim 3 or 4, characterized in that: Determining a first motion sequence of a first target joint in the first robotic arm according to the end position of the instrument includes: Determining a target angle of a third target joint in the first target joint according to the second preset distance, and determining a third motion sequence of the third target joint according to the target angle and the current angle of the third target joint; A fourth motion sequence of the fourth target joint is determined based on the end posture of the instrument, the target angle of the third target joint and the current angle of the fourth target joint; the fourth target joint includes the joints of the first target joint except the third target joint, and the first motion sequence includes the third motion sequence and the fourth motion sequence.
6. The method according to claim 5, characterized in that Determining a fourth motion sequence of the fourth target joint according to the end position of the instrument, the target angle of the third target joint, and the current angle of the fourth target joint includes: Based on the end position of the instrument and the target angle of the third target joint, performing inverse kinematics solution on the first robotic arm, and determining the target angle of the fourth target joint if an inverse solution exists; The fourth motion sequence is determined according to the target angle and the current angle of the fourth target joint.
7. The method according to claim 6, characterized in that The method further comprises: When there is no inverse solution for the inverse kinematics solution of the first robotic arm, the second preset distance is adjusted to obtain a new second preset distance, and the step of returning to execute the new target motion sequence of the first robotic arm based on the end posture of the instrument and the new second preset distance is performed.
8. An arm spacing adjustment device for a surgical robot, characterized in that: The device comprises: An acquisition module, used for acquiring the distance between the mechanical arms of the surgical robot during the operation; a first adjustment module, configured to adjust the arm spacing between the first robotic arm and the second robotic arm according to the end posture 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 a first preset distance, while the end posture of the instrument connected to the robotic arm remains unchanged; The first robotic arm is a robotic arm, and the second robotic arm is a robotic arm adjacent to the first robotic arm.
9. A computer device comprising a memory and a processor, wherein the memory stores a computer program, wherein: When the processor executes the computer program, the steps of the method according to any one of claims 1 to 7 are implemented.
10. A computer-readable storage medium having a computer program stored thereon, characterized in that: When the computer program is executed by a processor, the steps of the method according to any one of claims 1 to 7 are implemented.
11. A computer program product, comprising a computer program, characterized in that When the computer program is executed by a processor, the steps of the method according to any one of claims 1 to 7 are implemented.
Citation Information
Patent Citations
Receding method for keeping tail end pose fixed
CN114948238A
Robotic medical system with collision proximity indicator
CN115734765A
Medical device handle
WO2019023390A2
Robot system, and evaluation method and control method therefor
WO2023274000A1