System for manipulating surgical tool by user according to planned trajectory

By introducing a load measurement and compensation model into the surgical robot system, the mechanical load of the surgical tool can be adjusted in real time, solving the problem of deviation of the screw axis and improving the accuracy and safety of the operation.

CN120752004APending Publication Date: 2025-10-03ECENTIAL ROBOTICS
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202380094761.5
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Priority Date
2022-12-23
Filing Date
2023-12-21
Publication Date
2025-10-03

AI Technical Summary

Technical Problem

When the surgical robot system screws in, the actual screwing axis deviates from the planned axis due to the unevenness of the anatomical structure and soft tissue pressure, resulting in increased mechanical load, which may cause problems such as screw loosening and bone damage.

Method used

A system including a robotic arm, a load measurement device and a control unit is used to measure the mechanical load and generate adjustment commands to reduce the mechanical load applied to the anatomical structure. The compensation model and adjustment commands are used to align the planned trajectory, including torque and force screw measurement, and real-time adjustment is performed in combination with the positioning system and tracker.

Benefits of technology

It effectively reduces the mechanical load on the anatomical structure during surgery, improves the accuracy of screw implantation, and reduces the risk of mechanical damage to patients.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120752004A_ABST
    Figure CN120752004A_ABST
Patent Text Reader

Abstract

The present invention relates to a system for manipulating a surgical tool by a user to treat an anatomical structure according to a planned trajectory, the system comprising: a surgical robotic system comprising: a robotic arm; at least one load measuring device; an end effector, the end effector comprising a tool holder for accommodating a surgical tool; a control unit coupled to the surgical robotic system and configured to implement at least one controlled cycle to reduce a mechanical load applied to the anatomical structure, the controlled cycle comprising: a step of measuring the mechanical load applied to the robotic arm using at least one load measuring device; a step of determining an adjustment command for the at least one motor; a step of applying a corresponding adjustment command to the at least one motor to reduce the mechanical load applied to the anatomical structure.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to a system for a user to manipulate a surgical tool using a surgical robot system to treat an anatomical structure according to a planned trajectory. The system can reduce the mechanical load applied to the anatomical structure during surgical intervention. Background Art

[0002] Surgical robotic systems are often used during surgical interventions to assist surgeons. Surgical robotic systems can guide the surgeon in the positioning and orientation of surgical tools.

[0003] A surgical robotic system includes a robotic arm having an end effector with a tool holder that accommodates a surgical tool. The tool holder is positioned in a given position and orientation relative to a surgical target. A surgeon can connect a surgical tool to the tool holder directly or via an access tube, so that once the tool holder is positioned relative to the surgical target, the surgical robotic system assists the surgeon in guiding the tool. Thus, during surgery on a patient's anatomical structure (e.g., bone), the surgeon can manipulate the surgical tool in the correct position and orientation relative to the surgical target.

[0004] A surgeon can use a surgical robotic system to drill one or more holes in one or more bones of a patient and then implant a screw into each corresponding drilled hole. The surgical target corresponds to a specific location and orientation of the holes to be drilled in the bone (e.g., a patient's vertebrae or a fractured bone). For example, in spinal surgery, several surgical targets may be located on several vertebrae of the patient.

[0005] The tool holder holds the tool in a specific position and orientation relative to the surgical target to precisely guide the surgeon in drilling and then inserting the screw. Thus, the surgical robotic system assists the surgeon in drilling and then inserting the screw into the drilled hole.

[0006] However, it has been observed that the anatomical structures are subjected to significant forces during screwing, and the surgical robot system is often under excessive tension at the end of screwing. When the surgeon inserts the screw, he applies a force on the robot arm, part of which is compensated by the surgical robot system, but there is also a variable deviation from the planned axis, which causes the actual axis to move slightly randomly during screwing. These variable deviations may come from a slight misalignment of the screw with the tool axis, a slight misalignment of the screw with the drilling axis, or other various errors, such as uneven bone surfaces (facet joints, transverse processes ...) or soft tissue pressure. The actual screwing axis may then offset by about 1 / 10 mm from the planned screwing axis.

[0007] Once the screw begins to engage with the bone, a strong mechanical bond is formed between the screw and the bone, and therefore with the surgical robotic system. After this, it is difficult to change the screw axis without applying very large forces on the screwdriver. Since the actual screw axis is different from the planned screw axis, it can generate increased forces applied by the surgical robotic system to the patient's anatomy as the surgical robotic system attempts to align the actual screw axis with the planned screw axis and resist the forces generated by this strong mechanical bond. This is problematic because it can cause various problems, such as loosening the screw, risk of damaging the bone, and undesirable locking with the tool.

[0008] The object of the present invention is to propose a system capable of reducing the mechanical loads applied to the anatomical structure during surgical interventions. Summary of the Invention

[0009] The object of the present invention is to provide a system for manipulating a surgical tool by a user to treat an anatomical structure according to a planned trajectory, the system comprising:

[0010] - A surgical robotic system configured to align a surgical tool according to a planned trajectory, the surgical robotic system comprising:

[0011] * A robotic arm comprising a plurality of segments driven by motors, the robotic arm being able to position itself according to a reference pose

[0012] a reference pose configured to align the surgical tool with the planned trajectory;

[0013] * at least one load measuring device for measuring a mechanical load applied to the robot arm;

[0014] * An end effector that is mechanically coupled to the distal end of the robotic arm and includes a

[0015] Tool holders for surgical tools;

[0016] a control unit coupled to the surgical robotic system and configured to implement at least one controlled cycle for reducing a mechanical load applied to the anatomical structure after the robotic arm has been positioned according to a reference pose, the controlled cycle comprising:

[0017] a. The step of measuring the mechanical load applied to the robot arm using at least one load measuring device, the mechanical load including the inherent mechanical load of the robot arm and the load applied to the robot arm by external influences.

[0018] External mechanical loads on the motor;

[0019] b. The step of determining an adjustment command for at least one motor using the following method:

[0020] i. Determining an external mechanical load value based on the measured load;

[0021] ii. determining a compensation term based on the external mechanical load value and data stored in the control unit, the data comprising at least one set of parameters defining a corresponding compensation model generated by the control unit, each compensation model defining, for each external mechanical load value, a corresponding compensation term as the external mechanical load value increases;

[0022] iii. Generate adjustment commands based on the compensation term and the reference posture;

[0023] c. The step of applying corresponding adjustment commands to the at least one motor to reduce the mechanical load applied to the anatomical structure.

[0024] In this context, the term "load" should be understood to mean a mechanical load applied to the robotic arm, to a component of the robotic arm and / or to the anatomy.

[0025] According to other advantageous and non-limiting features of the present disclosure, alone or in any technically feasible combination:

[0026] - the controlled loop comprises, before step ii), a step of storing and / or updating robot arm posture information having the current robot arm posture in data stored in the control unit, which step is performed only once during the first iteration of the controlled loop or is repeated for each iteration of the controlled loop.

[0027] - the at least one load measuring device comprises a plurality of torque measuring sensors configured to measure the torque of each motor, and the control unit is configured to determine the external mechanical load based on the external torque value associated with each motor by subtracting the intrinsic torque value of the robot arm from the measured torque value of each motor.

[0028] - the at least one load measuring device comprises a force-torque sensor configured to measure a force torque applied to the robot arm, and the control unit is configured to determine the external mechanical load based on the external force torque value by subtracting an intrinsic force torque value of the robot arm from the measured force torque value.

[0029] - the system comprises a positioning system coupled to a control unit;

[0030] - The system comprises a patient tracker positionable by a positioning system, rigidly attached to a base structure fixed relative to the anatomy, and wherein the surgical robotic system is servo-controlled with respect to the movement of the patient tracker.

[0031] - The controlled loop is configured to update a reference pose of the robotic arm at the beginning of each iteration of the controlled loop to account for servoing of the movement of the patient tracker by the surgical robotic system.

[0032] - The system comprises a robotic tracker which can be positioned by a positioning system and is rigidly attached to a part of the surgical robotic system.

[0033] The system includes an alarm system to notify a user when at least one safety criterion of the robotic arm is not met, the safety criterion being selected from:

[0034] - the maximum allowed angular difference between the current axis of the surgical tool and the axis of the planned trajectory; and

[0035] - the maximum allowed distance difference between the estimated end position of the tool end and the planned end position of the planned trajectory;

[0036] The control unit is configured as follows:

[0037] - Determine the current axis of the surgical tool and the position of the tool tip along the current axis of the surgical tool

[0038] the estimated end point location of the line;

[0039] - calculating the angular difference between the current axis of the surgical tool and the axis of the planned trajectory;

[0040] - Calculate the distance difference between the estimated end position of the tool tip and the planned end position of the planned trajectory;

[0041] - If the angle difference and / or the distance difference is greater than the corresponding safety standards, a signal is sent to trigger an alarm system to warn the user.

[0042] The stored data comprises at least two sets of parameters each defining a different compensation model, and the control unit is configured to select a compensation model from among the different compensation models and to determine the compensation term of step b) for each motor using the selected compensation model and the external mechanical load value.

[0043] - The system comprises a button configured to change the compensation model used by the control unit in step b) when pressed by the user.

[0044] -The system comprises a tool tracker which can be positioned by a positioning system, rigidly attached to the surgical tool, and the control unit is configured to implement step a') before step b), which automatically changes the compensation model used in step b) according to the current position of the tool end of the surgical tool along the planned trajectory.

[0045] - the control unit is configured to implement step a') using the following method:

[0046] - using the position information of the tool tracker from the positioning system to determine the current position of the tool tip of the surgical tool along the planned trajectory;

[0047] - Calculate the distance between the current position of the tool end and the planned end position of the planned trajectory;

[0048] - If the distance is below a close value, the compensation model used in step b) is changed.

[0049] - the stored data comprises a maximum permissible force value applicable to the anatomical structure, and the control unit is configured to:

[0050] - Based on the maximum allowable force value, calculate the maximum external torque value of each motor or the maximum external force rotation value of the robot arm;

[0051] If the external torque value applied to the motor or the external force torque value measured in step b) is greater than the corresponding maximum external torque value or maximum allowed external force torque value, a stop command is sent to the robot arm to stop the movement of the robot arm.

[0052] A surgical robotic system may be operated according to the following method to allow a user to manipulate a surgical tool to treat an anatomical structure according to a planned trajectory. The method may be performed by a control unit of the robotic surgical system, the method comprising:

[0053] a. measuring the mechanical load applied to the robot arm using at least one load measuring device;

[0054] b. Determine an adjustment command for at least one motor of the robot arm using the following method:

[0055] i. Determining an external mechanical load value based on the measured load;

[0056] ii. determining a compensation term based on the external mechanical load value and based on stored data;

[0057] iii. Generate adjustment commands based on the compensation term and the reference posture;

[0058] c. Applying corresponding adjustment commands to at least one motor to reduce the mechanical load applied to the anatomical structure. BRIEF DESCRIPTION OF THE DRAWINGS

[0059] Further features and advantages of the present invention will become apparent from the following description based on the accompanying drawings, in which:

[0060] - Figure 1A surgical operation scene including a surgical robot system according to the present invention is shown;

[0061] - Figure 2 A surgical robot system, a patient tracker, and a robot tracker according to the present invention are shown;

[0062] - Figure 3 Two different compensation models according to the present invention are shown;

[0063] - Figure 4 is a flow chart representing a first embodiment of a method for reducing mechanical loads applied to an anatomical structure while a user manipulates a surgical tool;

[0064] - Figure 5 is a flow chart representing a second embodiment of a method for reducing mechanical loads applied to an anatomical structure while a user manipulates a surgical tool;

[0065] - Figure 6 is a flow chart representing a third embodiment of a method for reducing mechanical loads applied to an anatomical structure while a user manipulates a surgical tool;

[0066] - Figure 7 is a flow chart representing a fourth embodiment of a method of reducing mechanical loads applied to an anatomical structure while a user manipulates a surgical tool.

[0067] For ease of drawing legibility, the drawings are not necessarily drawn to scale.

[0068] The same reference numbers from one figure to another indicate the same element or an element that performs the same function. DETAILED DESCRIPTION

[0069] The present invention utilizes a surgical robotic system that holds surgical tools and may utilize a positioning system as shown below.

[0070] Figure 1 A surgical scenario is shown that includes the system for performing a surgical intervention to treat an anatomical structure.

[0071] The patient P lies on the operating table 5 .

[0072] The surgical robot system 1 includes a base 10 and a robot arm 11 carrying surgical tools, and is placed near an operating table 5 .

[0073] The invention may comprise an X-ray imaging system 2 also placed near the operating table to acquire 2D X-ray images of the anatomical structure to be treated. The X-ray imaging system is not required to operate the system according to the invention.

[0074] As in Figure 2 As shown in , the patient and the surgical system may include at least one respective tracker rigidly attached thereto, for example via mechanical or magnetic attachment, said tracker being positioned by the positioning system 3 .

[0075] The control unit 4 is coupled to the surgical robot system (in particular, to the controller of the surgical robot system) and to the X-ray imaging system (if applicable). The control unit 4 comprises at least one processor configured to implement an algorithm designed to carry out the method to be described below. In particular, the control unit can be configured to perform the following steps: receiving a 3D image (whether acquired by the X-ray imaging system 2 or by another system); receiving a planning performed on the 3D image, or allowing the user to plan a surgical intervention on the 3D image, to obtain a planned trajectory of the surgical tool to treat the anatomical structure; determining a reference pose of the robotic arm in which the robotic arm can align the surgical tool with its planned trajectory; calculating commands for moving the robotic arm to position it according to the reference pose; calculating the relative position of the tracker based on data received from the positioning system; controlling the surgical robot system to maintain the reference pose taking into account the calculated relative position of the tracker.

[0076] The control unit may also be coupled to a user interface 40. The user interface may comprise one or more screens.

[0077] X-ray imaging system

[0078] An X-ray imaging system includes at least one X-ray source and at least one X-ray image detector. The X-ray imaging system generates at least one 2D X-ray image that is the result of a cone projection of the patient's anatomy, wherein the tip of the cone is approximately the center point of the X-ray source and the base of the cone is approximately the portion of the X-ray image detector that is reached by the collimated X-ray beam having a given shape and orientation.

[0079] For example, the X-ray imaging system can be a conventional C-arm, or any cone-beam computed tomography (CBCT), such as the Surgivisio device (Surgivisio, Gières, France), or Vision FD Vario3D (Ziehm), CIOSSpin Mobile 3D (Siemens), Airo (Stryker), Loop-X (Brainlab), O-arm (Medtronic).

[0080] A conventional C-arm is designed to allow an X-ray source and an X-ray detector to rotate along a C-shaped gantry while obtaining a projection image of a patient placed between the X-ray source and the X-ray detector of the gantry.

[0081] A CBCT has a mobile X-ray source and a mobile X-ray image detector, wherein the X-ray source and the X-ray image detector have motorized motion, either together or independently. A CBCT can have a C-arm or O-arm configuration. It can be used to acquire a set of 2D X-ray images over a range of approximately 180° of orbital rotation (which can be combined with translation), and can reconstruct a 3D image from these 2D X-ray images using tomography or tomosynthesis algorithms.

[0082] The X-ray imaging system can be motorized. In particular, the C-arm can include motors that allow for horizontal, vertical, and rotational movement, enabling the generation of 2D X-ray images of the patient from virtually any angle. Each motor is associated with an encoder that provides the relative position of the medical imaging system relative to a reference position at any given time. As a 2D X-ray image is acquired, the corresponding position of the imaging system is recorded. Thus, each 2D image is recorded in the imaging system's reference.

[0083] In some embodiments, if the X-ray imaging system is a CBCT, the X-ray imaging system itself can be used to obtain 3D images of the patient during surgery. The 3D images are registered relative to a tracker attached to the anatomy using known methods of calibration and navigation.

[0084] In other embodiments, a 3D image can be acquired prior to surgery using a computed tomography (CT) device or another CBCT device. The 3D image of the patient is registered relative to a tracker attached to the anatomical structure using a 3D registration method that can use many techniques, such as (i) using a positioning system to collect surface points and fit them to the anatomical structure, as in the technology provided by 7D Surgical (North York, Canada), or (ii) acquiring a 2D X-ray image that is calibrated relative to the tracker attached to the anatomical structure and used for registration with the 3D image, as in the technology provided in the MazorX robotic system (Medtronic), or (iii) any registration technique that uses positioning ultrasound images, fiducials, anatomical points, etc.

[0085] Surgical robotic systems

[0086] refer to Figure 1 and Figure 2 , in the sense of the present invention, a surgical robot system 1 may comprise:

[0087] - a base 10, which may be a movable cart (e.g. Figure 1 ) or can be attached to an operating table (this embodiment is not shown),

[0088] a robotic arm 11 comprising a plurality of segments driven by motors, the robotic arm 11 having a proximal end 110 extending from a base and a distal end 111 opposite the proximal end,

[0089] at least one load measuring device for measuring the load applied to the robot arm 11;

[0090] an end effector 12 mechanically coupled to the distal end 111 of the robotic arm and comprising a tool holder 14 for receiving a surgical tool;

[0091] - A controller configured to controllably move the robotic arm according to the planned trajectory.

[0092] The robot arm 11 comprises multiple degrees of freedom in translation and / or rotation and can be positioned in various postures. Typically, the robot arm comprises at least five, and preferably six or seven, degrees of freedom for maneuvering. To this end, the robot arm comprises multiple articulated segments driven by motors. The robot arm can be, for example, the LBR Med supplied by KUKA (Germany). TM The robotic arm can be controlled in autonomous mode according to the desired goal and trajectory, or the robotic arm can be manipulated using a collaborative mode (cobot), or the robotic arm can be remotely manipulated using a master control device, and combinations of these different modes can be used on the same surgical robotic system.

[0093] The surgical robotic system can be active, in the sense that it holds and moves a powered surgical tool that interacts directly with the anatomy, or passive, in the sense that it holds a guide in a predetermined position relative to the anatomy into which the surgical tool is inserted by the user. For example, a powered drill is mounted on a robotic arm tool holder and actively drills bone along a predetermined path until the end of a selected linear trajectory is reached. Alternatively, a screwdriver can be inserted into a tool holder and manually rotated by the surgeon to screw a screw into a previously drilled hole in the bone along a predetermined path until the end of a selected linear trajectory is reached.

[0094] The tool holder 14 shown comprises a tubular shape to accommodate a surgical tool, but other shapes may be used, for example in the case of a power tool, the tool holder may be a simple interface for securing the tool to an end effector.

[0095] Surgical tools not present Figure 2 , but the position of the surgical tool is schematically indicated by reference numeral 13.

[0096] The surgical tool can be a power drill, a power saw, a power burr or grinder, an ultrasonic grinding device, a radiofrequency or microwave or cryogenic ablation needle, or a screwdriver, or any device that can interact with the anatomical structure to be treated. For example, a power burr can be used to remove a certain volume of bone in which a tumor has been detected, and the surgical robotic system is controlled so that the burr tip executes a 3D complex path trajectory corresponding to the volume of bone to be removed. The surgical tool can move in at least one degree of freedom relative to the tool holder, for example, in two degrees of freedom: translation along the tool axis and rotation about the tool axis.

[0097] The surgical robot system 1 further includes at least one load measuring device (not visible in the figure) to measure the load applied to the robotic arm, the measured load being a torque or a torque. Torque is the measured load in the joint space and comprises a value for each motor (which can also be expressed as a vector with one component for each motor). Torsion is the measured load in Cartesian space and comprises a vector for the robotic arm, which vector comprises six components (3 translations and 3 rotations). The measured load is used by the control unit to determine the value of the external load applied to the robotic arm, or, in other words, the external torque applied to each motor or the external torque applied to the robotic arm. The external load is an estimate of the load applied to the robotic arm that is not intrinsic to the robotic arm. In other words, the external load is an estimate of the load applied to the motor by an external influence (for example, here, by the surgeon).

[0098] In a first embodiment, the at least one load measuring device comprises a plurality of torque measuring sensors, such as current sensors or deformation measuring sensors, configured to measure the torque of each motor. Advantageously, each motor has its own associated torque measuring sensor. These torque measuring sensors are typically attached to each of the motors or between the gearbox assembly and the segment body of the robot arm. The external torque value of each motor is then determined by deducting the intrinsic torque value of the robot arm from the measured torque value of each motor using a dynamic model, such as the torque generated to counteract gravity, the torque dissipated to counteract the effects of friction or viscoelasticity of the motor itself, and the torque required to accelerate or brake the robot arm.

[0099] Optionally, the control unit is then configured to determine the external force spinor value W using the external torque value C and the inverse of the Jacobian transpose Jt associated with the robot arm posture, using the following formula, where C is a vector comprising the external torque of each motor, Jt is the Jacobian transpose, and W is a vector comprising the six components of the external force spinor W.

[0100] W=(Jt) -1 *C

[0101] In a second embodiment, at least one load measurement device includes a force-torque sensor disposed on the surgical robotic system and configured to measure a torque force W applied to the robotic arm. The force-torque sensor may be disposed on a base of the surgical robotic system, on a segment of the robotic arm, on a flange or tip of the robotic arm, or on a tool holder. The external torque force is then determined by deducting the intrinsic torque force value of the robotic arm from the measured torque force value, similar to the previously described determination of the external torque value from the measured torque force value using a dynamic model.

[0102] Optionally, the control unit is then configured to determine an external torque value associated with each motor using the external force screw magnitude value and the Jacobian transpose Jt associated with the robot arm pose using the following formula.

[0103] C=Jt*W

[0104] Control unit, stored data and compensation model

[0105] exist Figure 1 In the embodiment of the present invention, the control unit 4 is embedded in a station 4' separate from the surgical robot system 1 and is configured to communicate wirelessly or by wire with the robot arm 11. The separate station 4' also includes a user interface 40 and may include a battery.

[0106] In other embodiments (not shown), the control unit may be embedded in the base 10 .

[0107] The control unit 4 includes at least one processor configured to implement an algorithm designed to perform a controlled cycle described below. The control unit 4 also includes at least one data storage device to store data such as the maximum allowable force Fmax that can be applied to the target anatomical structure, the maximum allowable deviation Dmax at the tool end, robot arm posture information (if required), and at least one set of parameters defining a compensation model. Typically, the maximum allowable force Fmax is between 25N and 35N, and the maximum allowable deviation Dmax is between 0.1mm and 3.0mm.

[0108] The robot arm posture information can correspond to the current robot arm posture and be updated continuously or periodically while the robot arm is in use, or it can be stored only once when the surgeon starts interacting with the surgical tool to reduce the burden on the control unit. This last option is advantageous if the robot arm posture does not change significantly while in use. This robot arm posture information is mainly used when working with torque values ​​to determine the lever arm of each motor.

[0109] Preferably, the control unit 4 stores at least two sets of parameters that respectively define different compensation models, and generates each of the at least two compensation models using the stored data.

[0110] The compensation model defines a compensation term Δ for each external load L value (external torque value or external force torque value), which increases with the external load value L. The compensation term is used to generate an adjustment command for each motor, allowing a controlled deviation from the planned trajectory to reduce the load applied to the anatomical structure according to the stored maximum allowed force and deviation values ​​and in relation to the external load value.

[0111] Figure 3 Two different compensation models according to the present invention are shown: a first compensation model (solid line curve on the graph) and a second compensation model (dashed line curve on the graph).

[0112] Each compensation model is defined by a maximum compensation term Δmax and a maximum external load value Lmax, as well as a set of parameters specific to the compensation model. The control unit uses the robot arm pose information (if necessary) and uses the maximum deviation value and the maximum allowed force value, respectively, to calculate the maximum compensation term and the maximum external load value.

[0113] A set of parameters specific to each compensation model includes at least one load start ratio L_Start_Ratio1. The load start ratio corresponds to the ratio of the maximum external load value Lmax to define an external load start value L_start above which a non-zero compensation term exists. Figure 3 In the figure, L_Start_1 and L_Start_2 are the external load starting values ​​of the first model and the second model, respectively.

[0114] L_start=L_Start_Ratio1*Lmax

[0115] If the external load value is below the external load start value, the current command will not be modified. Of course, the load start ratio L_Start_Ratio1 can be equal to zero, and the external load start value L_Start can be equal to zero, as shown by the second compensation model. However, it is preferred that at least one compensation model, here the first compensation model, has a non-zero value for the load start ratio L_Start_ratio1. In fact, for low external load values, any deviation from the planned trajectory is prevented by setting a zero compensation term for these values, so that the accuracy of the robot arm must be maintained as much as possible.

[0116] If the external load L is greater than its associated maximum external load value Lmax, the control unit 4 is configured to send a stop command to the robotic arm 11 to stop its movement. In fact, an external load value greater than the maximum external load value means that the load exerted by the tool on the anatomy is intolerable and poses a risk to the patient, or there is a problem that must be solved before continuing the operation.

[0117] The compensation term Δ is equal to 0 when the external load L is equal to or lower than the external load start value L_Start, and the compensation term is equal to the maximum compensation term Δmax when the external load L is equal to the maximum external load value Lmax. Between the external load start value L_Start and the maximum external load value Lmax, the compensation term Δ can be calculated using a linear function (e.g., Figure 3 ) or is determined using a piecewise linear function for defining a plurality of compensation steps (as represented in a second compensation model comprising two steps bounded by an intermediate point I).

[0118] Here, the second model includes an intermediate point I defined by two additional parameters: a compensation start ratio Δ_Start_ratio corresponding to a ratio of a maximum compensation term Δmax to define an intermediate compensation term Δinter associated with the intermediate point I and a second load start ratio L_Start_ratio2.

[0119] Δinter=Δ_Start_Ratio*Δmax

[0120] The second load start ratio L_Start_ratio2 corresponds to another ratio of the maximum external load value Lmax to define an intermediate external load start value L_Start_Inter associated with the intermediate point I.

[0121] L_Start_Inter=L_Start_Ratio2*Lmax

[0122] The compensation term Δ evolves differently with the external load value L before and after this intermediate external load start value L_Start_Inter.

[0123] Of course, more intermediate points and / or more complex compensation models can be used, such as the time law or the binomial law.

[0124] As mentioned previously, the external load L value may be an external torque C value or an external force torque W value.

[0125] In the case of external torque values, each compensation model is defined in joint space and is specific to each motor, taking into account the robot arm pose information and, more specifically, the lever arm of each motor. In other words, each motor has its own version of the compensation model used. More specifically, as shown in the following equation, each i-motor has its own maximum external torque value Lmax_i and its own maximum compensation term Δmax_i, which are calculated by the control unit using the stored maximum allowed force Fmax value, the stored maximum allowed deviation Dmax, and the lever arm Li that the motor has relative to the entry point of the planned trajectory.

[0126]

[0127] The lever arm Li is the distance between the axis of the i motor and the entry point of the planned trajectory. The lever arm Li is determined using the robot arm pose information, which includes vector joint positions and information about the length of each segment of the robot arm.

[0128] Advantageously, in the case of screw driving, an estimate of the position of the screw head placed at the entry point is used (rather than just the entry point) to calculate a more accurate lever arm. In other words, an offset is added to the entry point to take into account the screw.

[0129] In the case of external force torque magnitudes, each compensation model is defined in Cartesian space, and these compensation models are decremented for each j component of the force torque magnitude (three translations and three rotations). In this case, the maximum force torque magnitude Lmax_j and the maximum compensation term Δmax_j associated with each j component of the force torque magnitude are equal to the associated maximum permissible force value Fmax_j and the maximum permissible deviation Dmax_j, respectively, where Fmax and Dmax are defined here as vectors including the j component.

[0130] Working in Cartesian space allows more transparency and better control over deviations from the planned trajectory by being able to differently constrain deviations along specific axes and / or rotational axes, since Fmax and Dmax are vectors and therefore different Fmax_j and Dmax_j values ​​can be used for each j component.

[0131] Positioning system

[0132] A positioning system 3 is used that can determine the three parameters of position and the three parameters of orientation of any tracker that is rigidly mounted on an anatomical structure (such as a bone) or a device (such as a subsystem of a surgical robotic system or a surgical tool) via, for example, mechanical or magnetic attachment. The positioning system 3 can be an optical system (such as Aurora from NDI, Canada), or any combination of optical, electromagnetic, ultrasonic, inertial measurement devices and sensors, or a passive electromechanical arm with encoders.

[0133] The first tracker 30 can be rigidly attached to a base structure that is assumed to be fixed relative to the anatomical structure to be treated, and thus the first tracker is assumed to be fixed relative to the anatomical structure. The base structure can be the anatomical structure itself, or an adjacent structure, or any mechanical fixture to the patient or to the operating table, if the motion between the base structure and the anatomical structure to be treated is negligible for the required accuracy.

[0134] The second tracker 31 is rigidly attached to a part of the surgical robot system itself, such as a base. Using the encoder values ​​of the robot arm, the kinematic model of the robot arm is known for any position of the robot arm, and thus, by simple combination, the axes of the surgical tool are known at any time in the coordinate system attached to the second tracker. This second tracker can also be directly integrated into the surgical robot system.

[0135] Optionally, a third tracker (not visible in the figure) can be used and rigidly attached to the surgical tool to understand the position and orientation of the tool tip of the surgical tool.

[0136] Anatomy

[0137] The anatomical structure to be treated is typically bone, which may be drilled, ground and / or milled to allow for placement of an implant or to free up space for any clinical reason.

[0138] The method can be applied successively to several parts of a bone or to several bones. For example, the method can be used to place screws in two pedicles of several vertebrae.

[0139] Operation of surgical robotic systems

[0140] The surgical robotic system may operate as follows.

[0141] Figures 4 to 7Flowcharts illustrating various embodiments of methods of operating a surgical system are presented. In these flowcharts, only the essential steps are illustrated. These flowcharts are not intended to be limiting and may be combined as appropriate. Furthermore, unrelated steps may be interchanged. Steps enclosed by dashed boxes are optional. Steps enclosed by bold solid boxes are performed by the control unit.

[0142] At the start of the surgical procedure, the patient is equipped with a first tracker 30 (referred to as “patient tracker”), which can be detected by the positioning system 3 .

[0143] 3D images are acquired at the start of the surgery using the X-ray imaging system itself (CBCT) or using another imaging system (CT or CBCT) prior to the surgery and registered relative to the patient tracker 30 as described above.

[0144] The trajectory of the surgical tool is planned in the 3D image, typically consisting of a movement along a planned axis to a predetermined end point. For this purpose, surgical planning software is used to interactively or automatically define the trajectory in the 3D image. Alternatively, if the user needs to drill several holes, for example, multiple trajectories are planned, and the method is repeated for each trajectory. The reference pose of the robot arm 11 is also determined using the planned trajectory. This reference pose corresponds to the pose of the robot arm 11, wherein, when equipped with the surgical tool 13, the surgical tool 13 is aligned with the planned trajectory in the absence of external loads.

[0145] The surgical robotic system 1 is brought to the vicinity of the surgical table and can be moved on the wheels of a cart forming the base of the robotic arm.

[0146] As in Figure 2 As shown above, the second tracker 31 (referred to as the "robotic tracker") is mounted on the robotic arm 11, directly on the surgical tool, or on any subsystem of the surgical robotic system. The robotic tracker can be calibrated relative to the surgical tool using several known calibration methods.

[0147] A third tracker (referred to as a "tool tracker") may be installed on the surgical tool 13 either before or after the tool is assembled into the surgical robotic system.

[0148] In a preferred embodiment, the position of the tool tracker on the surgical tool is replicated and is always the same, and a localized pointer is used to check that a specific point of the surgical tool has the exact expected coordinates relative to the tool tracker.

[0149] In another preferred embodiment, a positioning indicator is used to digitize at least three precisely defined points on the surgical tool, and a point-based calibration is applied.

[0150] The surgical robotic system is then moved manually (cobot) or automatically to position it according to a reference pose to align the surgical tool with the planned trajectory until it reaches the entry point on the bone surface. The surgical robotic system can then be servo-controlled using the robot tracker and / or tool tracker to maintain alignment with the entry point position on the bone, compensating for any movement of the bone due to the patient's breathing or any mechanical interaction. This servo control is typically accomplished by adjusting the pose of the robotic arm in order to maintain a constant relationship between the position of the patient tracker and the position of the robot tracker and / or tool tracker. In other words, the movement of the robotic tracker follows the movement of the patient tracker to maintain a constant distance between the two trackers in the absence of external interaction from the user.

[0151] The surgical robotic system 1 is then equipped with the surgical tool 13 and the user can start manipulating the surgical tool along its planned trajectory inside the bone by manually translating and / or rotating the tool relative to the tool holder.

[0152] The control unit 4 is then configured to implement at least one controlled cycle to reduce the load applied to the anatomy after the robotic arm is positioned according to the reference pose. Advantageously, the first controlled cycle is implemented once the surgical tool is engaged with the anatomy.

[0153] As in Figure 4-Figure 7 As shown in , the controlled loop includes:

[0154] a) the step of measuring a load applied to the robot arm using at least one load measuring device;

[0155] b) Steps for determining the tuning command for each motor using the following method:

[0156] i. using the measured load value to determine the external torque value applied to the motor or the external force torque value applied to the robot arm,

[0157] ii. determining a compensation term based on an external torque value or an external force rotation value and data stored in the control unit;

[0158] iii. Generate adjustment commands based on the compensation term and the reference pose,

[0159] c) The step of applying corresponding adjustment commands to each motor to reduce the load applied to the anatomy.

[0160] More specifically, the control unit determines the compensation terms using the compensation model previously described, which is generated using the stored data. If an external torque is used during step ii), the compensation terms are directly expressed in joint space and added to the reference pose of the robot arm to generate adjustment commands for each motor. If an external force torque value is used during step ii), an additional step is required because the compensation terms are obtained in Cartesian space and therefore need to be converted to obtain adjustment commands in joint space. To this end, the compensation terms can be directly converted into joint space using the inverse Jacobian matrix and added to the reference pose, or the adjustment commands can be directly calculated in Cartesian space and then converted into adjustment commands in joint space using inverse kinematics.

[0161] In the case of a surgical robot system servo-controlled for the movement of the patient tracker (see Figure 6 ), the reference pose of the robotic arm is updated at the beginning of each iteration of the controlled loop to account for this servo when generating adjustment commands for each motor. As a reminder, the reference pose does not take into account user interaction with the robotic arm through user interaction with the surgical tool, but only takes into account the planned trajectory and, if the robotic arm is servo-controlled, the movement of the patient tracker relative to the robot tracker position.

[0162] Optionally, the controlled loop may include, before step ii), a step of storing and / or updating the robot arm posture information having the current robot arm posture in the data stored in the control unit. This step may be performed only once during the first iteration of the controlled loop (see Figure 4 ), or repeated for each iteration of a controlled loop (see Figure 5 This robot arm pose information is primarily used when operating with torque values ​​to access the lever arm information of each motor for determining the compensation term in step ii). In contrast to the reference pose, the current robot arm pose takes into account the user's interaction with the robot arm through the user's interaction with the surgical tool.

[0163] Advantageously, for each motor, the stored data includes at least two sets of parameters, each defining a different compensation model, to allow for the possibility of changing the compensation model used by the control unit during operation of the robotic surgical system. A first compensation model is used as a default model, and a second model is manually or automatically selected by the control unit 4 during operation of the surgical robotic system 1 to change the compensation model used to determine the compensation term in step b). The second model differs from the first model in that, for a given external torque value or external force torque value, the second model allows for a larger compensation term, thereby reducing the load applied to the anatomical structure more by allowing for greater deviations from the planned trajectory.

[0164] In a first embodiment, the change of the compensation model is done manually by the user by pressing a button (see Figure 7 ). This button can be placed on the tool, on a separate station 4' in which the control unit 4 is embedded, or on any part of the surgical robot system 1. When the button is pressed, the control unit 4 is configured to select a second compensation model for each motor and use this second compensation model to determine the next compensation term. Instead of pressing a button, other types of commands, such as voice or gesture commands, can also be considered.

[0165] In a second embodiment, the compensation model is modified automatically by the control unit 4. This is possible if there is a method for tracking the position of the tool tip, such as using a tool tracker that can be positioned by the positioning system 3 and rigidly attached to the surgical tool. The control unit 4 is configured to implement a step a') before step b) and / or step a), which automatically modifies the compensation model used in step b) according to the position of the tool tip of the surgical tool 13 along the planned trajectory using the following method:

[0166] - using the position information of the tool tracker from the positioning system 3 to determine the current position of the tool tip of the surgical tool 13 along the planned trajectory;

[0167] - Calculate the distance between the current position of the tool end and the planned end position of the planned trajectory;

[0168] - If the distance is below a close value, the compensation model used in step b) is changed.

[0169] Optionally, three or more compensation models can also be used, for example: a first compensation model used by default, a second compensation model automatically triggered when the proximity criterion is met, and a third compensation model that can be manually activated when the compensation model needs to be changed before the proximity criterion of the second compensation model is met.

[0170] This controlled loop is then repeated at various times (eg, every 5 ms) throughout the user's manipulation of the surgical tool 13 .

[0171] Advantageously, the system comprises an alarm system to notify a user when at least one safety criterion of the robotic arm is not met, the safety criterion being selected from:

[0172] - the maximum allowed angular difference between the current axis of the surgical tool and the axis of the planned trajectory; and

[0173] - the maximum allowed distance difference between the estimated end position of the tool end and the planned end position of the planned trajectory;

[0174] And the control unit 4 is configured to:

[0175] - determining the current axis of the surgical tool 13 and the estimated end position of the tool tip along the current axis of the surgical tool 13;

[0176] - calculating the angular difference between the current axis of the surgical tool 13 and the axis of the planned trajectory,

[0177] - Calculate the distance difference between the estimated end position of the tool tip and the planned end position of the planned trajectory;

[0178] - If the angle difference and / or the distance difference is greater than the corresponding safety standard, a signal is sent to trigger an alarm system to warn the user.

[0179] If there is a tool tracker attached to the tool, the tool tracker information can be used to determine the current axis of the surgical tool 13. Otherwise, knowing the position of the robotic tracker on the surgical robotic system, the encoder values ​​of the motors of the robotic arm 11 can be used to determine the current axis of the surgical tool 13.

[0180] The estimated end position of the tool tip can be determined differently depending on whether surgical tool 13 can move freely in the tool guide or whether a mechanical stop is present. If a stop is present, the end position of the surgical tool is estimated along the current axis of the surgical tool using information about the maximum depth the surgical tool can reach. If a stop is not present, it is assumed that surgical tool 13 can reach the same depth as the planned end point of the planned trajectory, and this planned end point is then projected onto the current axis of the surgical tool to determine the estimated end position of the tool tip.

[0181] The maximum permissible angular difference is advantageously a value comprised between 0.4° and 1.4°, such as 0.9°, and the maximum permissible distance difference is advantageously a value comprised between 0.4 mm and 1.5 mm, such as 0.9 mm.

[0182] The alarm system can be selected from a variety of technologies, such as optical or audio systems. Advantageously, the alarm system includes LEDs integrated into the robotic arm or any other part of the surgical robotic system, which change color when there is a warning. For example, these LEDs can be green when there is no problem and turn red when the alarm is activated. The color of the LED can also change gradually according to the calculated difference, for example, when the value of the calculated difference approaches a safety standard, it changes from green to different shades of yellow / orange and then turns red when the standard is reached. Alternatively, the LED can start flashing at different frequencies according to the value of the calculated difference, instead of changing color.

[0183] With the proposed system, the loads applied to the anatomical structure can be reduced by preventing the surgical robotic system from applying excessive loads on the anatomical structure during the surgical intervention by allowing controlled deviations from the planned trajectory. In fact, without the present invention, it could happen that the surgical robotic system applies loads greater than 100 N on the anatomical structure, but the present invention limits this to a selected maximum allowed force value Fmax, typically between 25 N and 35 N, while ensuring controlled and acceptable deviations from the planned trajectory.

[0184] Operate a surgical robotic system to drive screws into previously drilled holes in the bone

[0185] In this embodiment, the planned trajectory is a linear path through a previously drilled hole in an anatomical structure, such as the pedicle of a vertebra. The robotic arm holds a surgical screwdriver with a screw at its end, which forms the tip of the surgical tool. In a preliminary approach, the tip of the screw contacts the entry point of the drilled hole in the bone, and the robotic arm is positioned according to a reference pose.

[0186] Using the positioning system, the surgical robotic system is servo-controlled with respect to the patient tracker and compensates in real time for the movement of the bone, which could be due to the patient's breathing, any movement of the screw itself, or any other interaction on the bone. The reference pose is also updated to take this servoing into account.

[0187] Once the robot arm is positioned according to the reference pose, the robot arm pose information is stored in the control unit along with other stored data using the current robot arm pose, the load applied to the robot arm is measured using at least one load measuring device, and the control unit uses the measured load to determine an external torque value for each motor. If none of the external torque values ​​is greater than the maximum external torque value allowed for the motor, the control unit generates an adjustment command for each motor using its external torque value, a stored default compensation model, and the robot arm pose information. The robot arm pose information provides the lever arm value for each motor required by the compensation model to determine the compensation term. If the external torque value of a motor is lower than its starting external torque value defined by the compensation model, the adjustment command for the motor may not differ from the adjustment command for the reference pose because the compensation term is zero.

[0188] Adjustment commands are then applied to their corresponding motors to reduce the load applied to the bone. The user continues to manipulate the surgical tool while the robotic arm is still servo-controlled to track the bone motion in real time, and the above steps are repeated continuously (e.g., every 5 ms) until the tool tip reaches the planned end position of the planned trajectory. Each time the above steps are repeated, the robotic arm pose information can be regularly updated with the current robotic arm pose, or stored only once as previously described.

[0189] During operation of the robotic surgical system, once a mechanical bond is formed between the bone and the surgical tool and / or screw, the compensation model used by the control unit is changed to a second compensation model. Indeed, once this mechanical bond is formed, there is no longer any risk of deviation from the current orientation of the surgical tool, and the second compensation model can therefore be used to allow for greater deviations from the planned trajectory, in order to further reduce the loads applied to the anatomical structure. This change in compensation model can be done manually by the user (by pressing a specific button when he feels that the mechanical bond has been formed), or automatically.

[0190] When this change is automatically completed, the control unit calculates the distance between the current position of the screw and the planned end position of the planned trajectory. The current position of the screw is determined using the length of the screwdriver and screw and the position information from the tool tracker.

[0191] When the distance falls below an approximation value, the compensation model changes. The approximation value advantageously corresponds to a percentage of the screw length. The approximation value is, for example, equal to 20% of the screw length (i.e., when 80% of the screw length is located inside the bone), with the minimum and maximum permissible values ​​being 2 mm and 8 mm, respectively.

[0192] In this embodiment, an external torque value is used and the robot arm pose is stored in the control unit, but of course an external force torque value can be used without storing and / or updating the robot arm pose as previously described. In addition, the method can be applied without servo-controlling the robot arm and updating the reference pose.

[0193] The technician will be able to adjust the stored data to customize the compensation model and / or use a different number of compensation models for each specific surgical procedure.

[0194] In the above method, the adjustment of the commands for each motor of the robot arm is considered, which is a preferred embodiment. However, in other embodiments, only a subset of the motors of the robot arm (the subset comprising at least one motor) may be considered in the controlled cycle implemented by the control unit. For example, if the robot arm comprises seven motors, only six of the seven motors may be considered.

Claims

1. A system for manipulating a surgical tool (13) by a user to treat an anatomical structure according to a planned trajectory, the system comprising: - a surgical robotic system (1) configured to align the surgical tool (13) according to the planned trajectory, the surgical robotic system (1) comprising: * A robotic arm (11) comprising a plurality of segments driven by motors, said robotic arm (11) capable of positioning according to a reference pose configured to align the surgical tool (13) with the planned trajectory; * at least one load measuring device for measuring a mechanical load applied to the robot arm (11); * an end effector (12) mechanically coupled to a distal end (111) of the robotic arm (11) and comprising a tool holder (14) for receiving the surgical tool (13); a control unit (4) coupled to the surgical robot system (1) and configured to implement at least one controlled cycle for reducing the mechanical load applied to the anatomical structure after the robotic arm (11) has been positioned according to the reference pose, the controlled cycle comprising: a. a step of measuring a mechanical load applied to the robot arm (11) using the at least one load measuring device, the mechanical load comprising an inherent mechanical load inherent to the robot arm and an external mechanical load applied to a motor of the robot arm by an external influence; b. The step of determining an adjustment command for at least one motor using the following method: i. Determining an external mechanical load value based on the measured load; ii. determining a compensation term based on the external mechanical load value and based on data stored in the control unit (4), the data comprising at least one set of parameters defining a respective compensation model generated by the control unit, each compensation model defining for each external mechanical load value (L) a corresponding compensation term (Δ) that increases with the external mechanical load value (L); iii. generating the adjustment command based on the compensation term (Δ) and the reference posture; c. The step of applying corresponding adjustment commands to the at least one motor to reduce the mechanical load applied to the anatomical structure.

2. The system according to claim 1, wherein: The controlled loop includes, before step ii), a step of storing and / or updating robot arm posture information having a current robot arm posture in data stored in the control unit, which step is performed only once during the first iteration of the controlled loop or is repeated for each iteration of the controlled loop.

3. The system according to any one of claims 1 to 2, wherein: - the at least one load measuring device comprises a plurality of torque measuring sensors configured to measure the torque of each motor; and - the control unit (4) is configured to determine the external mechanical load based on the external torque value associated with each motor by subtracting the intrinsic torque value of the robot arm (11) from the measured torque value of each motor.

4. The system according to any one of claims 1 to 2, wherein: - the at least one load measuring device comprises a force-torque sensor configured to measure a torque applied to the robotic arm; and The control unit (4) is configured to determine the external mechanical load based on the external torque value by subtracting an intrinsic torque value of the robot arm (11) from the measured torque value.

5. System according to any one of claims 1 to 4, comprising a positioning system (3) coupled to the control unit (4).

6. The system according to claim 5, comprising a patient tracker (30) positionable by the positioning system (3), rigidly attached to a base structure fixed relative to the anatomical structure, and wherein, The surgical robotic system (1) is servo-controlled with respect to the movement of the patient tracker (30).

7. The system according to claim 6, wherein: The controlled loop is configured to update a reference pose of the robotic arm (11) at the beginning of each iteration of the controlled loop to account for servoing of the movement of the patient tracker (30) by the surgical robotic system (1).

8. The system according to any one of claims 5 to 7, comprising a robotic tracker (31) positionable by a positioning system (3), rigidly attached to a part of the surgical robot system (1).

9. The system according to any one of claims 1 to 8, comprising an alarm system to notify a user when at least one safety criterion of the robotic arm is not met, the safety criterion being selected from: - the maximum allowed angular difference between the current axis of the surgical tool and the axis of the planned trajectory; and - the maximum allowed distance difference between the estimated end position of the tool tip and the planned end position of the planned trajectory; Wherein, the control unit (4) is configured to: - determining the current axis of the surgical tool (13) and the estimated end position of the tool tip along the current axis of the surgical tool (13); - calculating the angular difference between the current axis of the surgical tool (13) and the axis of the planned trajectory; - calculating the distance difference between the estimated end position of the tool tip and the planned end position of the planned trajectory; If the angle difference and / or the distance difference is greater than a corresponding safety standard, a signal is sent to trigger the alarm system to warn the user.

10. The system according to any one of claims 1 to 9, wherein: The stored data includes at least two sets of parameters each defining a different compensation model, and the control unit (4) is configured to select a compensation model from the different compensation models and determine the compensation term of step b) for each motor using the selected compensation model and the external mechanical load value.

11. The system according to claim 10, comprising a button configured to change the compensation model used by the control unit (4) in step b) when pressed by a user.

12. The system of the combination of claim 5 and claim 10, wherein: - the system comprises a tool tracker, which can be positioned by the positioning system (3), rigidly attached to the surgical tool (13); - the control unit (4) is configured to implement step a') before step b), said step a') automatically changing the compensation model used in step b) according to the current position of the tool tip of the surgical tool (13) along the planned trajectory using the following method: - using the position information of the tool tracker from the positioning system (3) to determine the current position of the tool tip of the surgical tool (13) along the planned trajectory; - calculating the distance between the current position of the tool end and the planned end position of the planned trajectory; - If the distance is below a close value, changing the compensation model used in step b).

13. A system according to any one of claims 1 to 12 in combination with claim 3 or claim 4, wherein: The stored data includes a maximum permissible force value (Lmax) that can be applied to the anatomical structure, and the control unit (4) is configured to: - calculating a maximum external torque value of each motor or a maximum external force rotation value of the robot arm based on the maximum allowable force value; If the external torque value applied to the motor or the external force torque value measured in step b) is greater than the corresponding maximum external torque value or maximum allowed external force torque value, sending a stop command to the robot arm to stop the movement of the robot arm.