Patent Description:
Robotic surgical systems typically use a scaling factor to scale down the motions of the surgeon's hands to determine the desired position of the end effector within the patient so that the surgeon can more precisely move the end effector inside the patient. As the surgeon moves the input handle, a surgical robot moves the end effector within the patient. As the end surgical robot moves the end effector, an arm of the surgical robot and/or the end effector may approach a boundary of movement. This boundary of movement may be artificial, e.g., a virtual wall, or may be an actual boundary, e.g., a joint limit of the surgical robot, a physical edge of a surgical space, or a collision with another object. Typically as the end effector or surgical robot reaches the boundary, the end effector or robot arm abruptly stops. This deceleration may be accentuated when the end effector or surgical robot is moving at a high velocity towards the boundary. This sudden deceleration of the end effector or surgical robot may damage the surgical robot and/or result in unintended movement of the surgical robot.

<CIT>, <CIT> and <CIT> disclose prior art relevant to this subject.

This disclosure generally relates to velocity scaling of movement of the end effector or surgical robot as the end effector or surgical robot approaches a boundary. The velocity scaling reduces a velocity of the end effector or surgical robot as it approaches the boundary to a desired impact velocity. The velocity scaling reduces the velocity towards the boundary at a controlled deceleration rate to the desired impact velocity. The desired impact velocity may be a velocity at which a sudden stop results in no damage to the surgical robot or the desired impact velocity may be zero.

In the invention, an apparatus for scaling a desired velocity of a tool of a surgical robot with a processing unit includes receiving an input signal, determining a position of the tool relative to a boundary of a surgical site, and scaling a desired velocity of movement of the tool when the tool is within a predetermined distance of the boundary of the surgical site. The input signal may include the desired velocity of movement of the tool.

In aspects, scaling the desired velocity of movement includes reducing the desired velocity of movement of the tool. The boundary may be a virtual boundary of the surgical site.

In the invention, the apparatus is configured for determining a direction of movement of the tool relative to the boundary. Scaling the desired velocity of movement of the tool only occurs when the direction of movement of the tool is towards the boundary.

In the invention, scaling the desired velocity of movement of the tool includes applying a velocity scaling factor to the desired velocity of movement. The apparatus is configured for determining the velocity scaling factor as a function of the determined position of the tool relative to the boundary. Determining the velocity scaling factor includes the velocity scaling factor being one (<NUM>) when the determined position of the tool relative to the boundary is beyond a predetermined distance. Determining the velocity scaling factor as the function of the determined position of the tool includes reducing the scaling factor from one towards a minimum value when the determined position of the tool relative to the boundary is below a predetermined distance. The minimum value of the velocity scaling factor may be non-zero.

In particular aspects, the method includes generating control signals after scaling the desired velocity of movement of the tool. The method may include transmitting the control signals to a surgical robot. The method may include transmitting feedback control signals to a user console when the scaling the desired velocity of movement of the tool.

The invention is defined by appended claim <NUM>, preferred embodiments are defined by appended dependent claims.

Various aspects of the present disclosure are described herein below with reference to the drawings, which are incorporated in and constitute a part of this specification, wherein:.

Embodiments of the present robotic surgical systems are now described in detail with reference to the drawings in which like reference numerals designate identical or corresponding elements in each of the several views. As used herein, the term "clinician" refers to a doctor, a nurse, or any other care provider and may include support personnel. Throughout this description, the term "proximal" refers to the portion of the device or component thereof that is closest to the clinician and the term "distal" refers to the portion of the device or component thereof that is farthest from the clinician. In addition, as used herein the term "neutral" is understood to mean non-scaled.

This disclosure generally relates to the scaling of a velocity of a component of a surgical robot based on a distance between the component and a boundary. The component of the surgical robot may be, for example, a joint, arm, or tool. The scaling of the velocity is a function of the distance between the component of the surgical instrument from the boundary such that as the component approaches the boundary, the velocity of the component is scaled down.

Referring to <FIG>, a robotic surgical system <NUM> in accordance with the present disclosure is shown generally as a surgical robot <NUM>, a processing unit <NUM>, and a user console <NUM>. The surgical robot <NUM> generally includes linkages <NUM> and a robot base <NUM>. The linkages <NUM> moveably support an end effector or tool <NUM> which is configured to act on tissue. The linkages <NUM> may be in the form of arms each having an end <NUM> that supports the end effector or tool <NUM> which is configured to act on tissue. In addition, the ends <NUM> of the linkages <NUM> may include an imaging device <NUM> for imaging a surgical site "S". The user console <NUM> is in communication with robot base <NUM> through the processing unit <NUM>.

The user console <NUM> includes a display device <NUM> which is configured to display three-dimensional images. The display device <NUM> displays three-dimensional images of the surgical site "S" which may include data captured by imaging devices <NUM> positioned on the ends <NUM> of the linkages <NUM> and/or include data captured by imaging devices that are positioned about the surgical theater (e.g., an imaging device positioned within the surgical site "S", an imaging device positioned adj acent the patient "P", imaging device <NUM> positioned at a distal end of an imaging arm <NUM>). The imaging devices (e.g., imaging devices <NUM>, <NUM>) may capture visual images, infra-red images, ultrasound images, X-ray images, thermal images, and/or any other known real-time images of the surgical site "S". The imaging devices transmit captured imaging data to the processing unit <NUM> which creates three-dimensional images of the surgical site "S" in real-time from the imaging data and transmits the three-dimensional images to the display device <NUM> for display.

The user console <NUM> also includes input handles <NUM> which are supported on control arms <NUM> which allow a clinician to manipulate the surgical robot <NUM> (e.g., move the linkages <NUM>, the ends <NUM> of the linkages <NUM>, and/or the tools <NUM>). Each of the input handles <NUM> is in communication with the processing unit <NUM> to transmit control signals thereto and to receive feedback signals therefrom. Additionally or alternatively, each of the input handles <NUM> may include input devices (not explicitly shown) which allow the surgeon to manipulate (e.g., clamp, grasp, fire, open, close, rotate, thrust, slice, etc.) the tools <NUM> supported at the ends <NUM> of the linkages <NUM>.

Each of the input handles <NUM> is moveable through a predefined workspace to move the ends <NUM> of the linkages <NUM>, e.g., tools <NUM>, within a surgical site "S". The three-dimensional images on the display device <NUM> are orientated such that the movement of the input handles <NUM> moves the ends <NUM> of the linkages <NUM> as viewed on the display device <NUM>. The three-dimensional images remain stationary while movement of the input handles <NUM> is scaled to movement of the ends <NUM> of the linkages <NUM> within the three-dimensional images. To maintain an orientation of the three-dimensional images, kinematic mapping of the input handles <NUM> is based on a camera orientation relative to an orientation of the ends <NUM> of the linkages <NUM>. The orientation of the three-dimensional images on the display device <NUM> may be mirrored or rotated relative to the view captured by the imaging devices <NUM>, <NUM>. In addition, the size of the three-dimensional images on the display device <NUM> may be scaled to be larger or smaller than the actual structures of the surgical site permitting a clinician to have a better view of structures within the surgical site "S". As the input handles <NUM> are moved, the tools <NUM> are moved within the surgical site "S" as detailed below. Movement of the tools <NUM> may also include movement of the ends <NUM> of the linkages <NUM> which support the tools <NUM>.

For a detailed discussion of the construction and operation of a robotic surgical system <NUM>, reference may be made to <CIT>.

The movement of the tools <NUM> is scaled relative to the movement of the input handles <NUM>. When the input handles <NUM> are moved within a predefined workspace, the input handles <NUM> send control signals to the processing unit <NUM>. The processing unit <NUM> analyzes the control signals to move the tools <NUM> in response to the control signals. The processing unit <NUM> transmits scaled control signals to the robot base <NUM> to move the tools <NUM> in response to the movement of the input handles <NUM>. The processing unit <NUM> scales the control signals by dividing an Inputdistance (e.g., the distance moved by one of the input handles <NUM>) by a scaling factor SF to arrive at a scaled Outputdistance (e.g., the distance that one of the ends <NUM> is moved). The scaling factor SF is in a range between about one and about ten (e.g., three). This scaling is represented by the following equation: <MAT> It will be appreciated that the larger the scaling factor SF the smaller the movement of the tools <NUM> relative to the movement of the input handles <NUM>.

For a detailed description of scaling movement of the input handle <NUM> along the X, Y, and Z coordinate axes to movement of the tool <NUM>, reference may be made to commonly owned International Patent Application Serial No. <CIT>, and entitled "Dynamic Input Scaling for Controls of Robotic Surgical System," and International Patent Application No. <CIT>.

Referring to <FIG>, the tool <NUM> is movable within the surgical site "S" towards and away from a boundary "B". The boundary "B" may be a position of the tool <NUM> or a part of the linkage <NUM>. For example, the tool <NUM> may be approaching a wall defining the surgical site "S" or a portion of the linkage <NUM> may be approaching another linkage of the surgical robot <NUM>. In addition, the boundary "B" may be a position of a joint of the linkage <NUM>. For example, a boundary "B" may be defined at a singularity of a joint of the linkage <NUM>.

As the tool <NUM> is moved towards the boundary "B", in a direction of arrow "M", the velocity of the tool <NUM> towards the boundary "B", e.g., in the direction of arrow "M", is analyzed by the processing unit <NUM> (<FIG>). When the velocity towards the boundary "B" is greater than a velocity that can be safely decelerated to a predetermined boundary velocity before reaching the boundary "B", the processing unit <NUM> reduces or scales down the velocity of the tool <NUM> in the direction of arrow "M" by a velocity scaling factor "α" to reduce the velocity of the tool <NUM> in the direction of arrow "M" as the tool <NUM> approaches the boundary "B".

With additional reference to <FIG>, the velocity scaling factor "α" varies as a function of a distance "d" that the tool <NUM> is from the boundary "B". The velocity scaling factor "α" scales down a velocity of the tool <NUM> in the direction "M" based on a deceleration of the maximum velocity "Vmax" that the tool <NUM> can have in the direction "M" to be reduced to the predetermined boundary velocity when the tool <NUM> reaches the boundary "B" such that the distance "d" is zero. As shown in <FIG>, when the tool <NUM> is a distance greater than a predetermined distance "D" from the boundary "B", the velocity scaling factor "α" is one (<NUM>) such that a velocity of the tool <NUM> is unaffected by the velocity scaling factor "α. " As the tool <NUM> is moved such that the tool <NUM> is within the predetermined distance "d" from the boundary "B", the velocity scaling factor "α" scales down a velocity of the tool <NUM>. The velocity scaling factor "α" may be applied to all movement of the tool <NUM> when the tool <NUM> is within the predetermined distance "d" or the velocity scaling factor "α" may be applied only to movement of the tool <NUM> towards the boundary "B". In addition, the velocity scaling factor "α" may be utilized as a limit to the velocity of the tool <NUM> such that movement below the maximum velocity "Vmax" line is unaffected by the velocity scaling factor "α. " As shown in <FIG>, the velocity scaling factor "α" is reduced to zero when the distance "d" is zero.

With reference to <FIG>, the function of the velocity scaling factor "α" may have a non-zero minimum value. The non-zero minimum value is between zero and one and corresponds to a velocity scaling factor "α" equal to a scaling down of the maximum velocity "Vmax" of the tool <NUM> to abruptly stop at the boundary "B" without causing damage to the tool <NUM>, the surgical robot <NUM> (<FIG>), or the boundary "B".

Referring to <FIG>, a method <NUM> of scaling the velocity of a tool <NUM> with a processing unit <NUM> is disclosed in accordance with the present disclosure with reference to the robotic surgical system <NUM> of <FIG> and <FIG> and the function of <FIG>. Initially, the input handle <NUM> is moved in a direction to move the tool <NUM>. In response to movement of the input handle <NUM>, the user console <NUM> transmits an input signal to the processing unit <NUM>. The processing unit <NUM> receives the input signal and generates control signals which are transmitted to the surgical robot <NUM> to move the tool <NUM> to a desired position (Step <NUM>).

To generate the control signals (Step <NUM>), the processing unit <NUM> determines a direction of movement of the tool <NUM> towards the desired position (Step <NUM>). In the invention, when the movement of the tool <NUM> towards the desired position is towards the boundary "B" (Step <NUM>), the processing unit <NUM> applies the velocity scaling factor "α" to the desired velocity of movement of the tool (Step <NUM>) and when the movement of the tool <NUM> towards the desired position is away from the boundary "B" the processing unit <NUM> does not apply the velocity scaling factor "α" to the desired velocity of movement (Step <NUM>). In other embodiments, the processing unit <NUM> applies the velocity scaling factor "α" to the desired velocity of movement regardless of the direction of movement of the tool <NUM> towards the desired position by skipping directly to Step <NUM>.

To apply the velocity scaling factor "α" to a desired velocity of movement of the tool <NUM> (Step <NUM>), the processing unit <NUM> determines the position of the tool <NUM> and the desired position of the tool <NUM> relative to the boundary "B" (Step <NUM>). If the position of the tool <NUM> and/or the desired position of the tool <NUM> are both greater than or equal to the predetermined distance "D" from the boundary "B", the velocity scaling factor "α" is equal to one such that the desired velocity of movement of the tool <NUM> is unaffected by application of the velocity scaling factor "α". If the position of the tool <NUM> or the desired position of the tool <NUM> is less than the predetermined distance "D", application of the velocity scaling factor "α" scales down the velocity of movement of the tool <NUM> towards the desired position. Specifically, in some embodiments, the velocity scaling factor "α" is applied directly to the desired velocity of movement of the tool <NUM> towards the desired position such that the desired velocity is reduced by the velocity scaling factor as shown in <FIG> (Step <NUM>). In other embodiments, the maximum velocity "Vmax" is reduced such that any desired velocity below the maximum velocity "Vmax" for a given distance "d" is unchanged and only desired velocities above the maximum velocity "Vmax" is reduced (Step <NUM>).

After the velocity scaling factor "α" is applied to the desired velocity of movement of the tool <NUM>, the processing unit <NUM> generates control signals (Step <NUM>) and transmits the control signals to the surgical robot <NUM> to move the tool <NUM> to the desired position at the scaled desired velocity (Step <NUM>).

In some embodiments, when the velocity scaling factor "α" is less than one, the processing unit <NUM> transmits a feedback control signal to the user console <NUM> to provide feedback to the clinician that the velocity of the tool <NUM> is being scaled. For example, the user console <NUM> may provide force feedback against movements of the input handle <NUM> in a direction that would move the tool <NUM> towards the boundary "B".

As detailed with respect to the illustrative embodiments herein, the velocity scaling factor "α" is scaled down as a linear function of the distance "d" away from the boundary "B". However, the velocity scaling factor "α" may be scaled down exponentially, in a step-wise manner, or other suitable functions based on the distance "d" away from the boundary "B".

Claim 1:
Apparatus for scaling a desired velocity of a tool (<NUM>) of a surgical robot (<NUM>) comprising a processing unit (<NUM>) configured for :
receiving an input signal including a desired velocity of movement of a tool;
determining the position of the tool (<NUM>) relative to a boundary (B) of a surgical site (S) and the direction of movement of the tool (<NUM>) relative to the boundary (B); and
scaling the desired velocity of movement of the tool (<NUM>) when the tool is within a predetermined distance of the boundary (B) of the surgical site, wherein scaling includes applying a velocity scaling factor to the desired velocity of movement,
characterized in that scanling is only applied when the direction of movement (M) of the tool (<NUM>) is towards the boundary, the velocity scaling factor being one when the determined position of the tool relative to the boundary is beyond a predetermined distance and being reduced from one to a minimum value when the determined position is below a predetermined distance relative to the boundary.