SYSTEM AND METHOD FOR DAMPED MANIPULATION OF A MEDICAL TOOL

Abstract
A system and method for damped manipulation of a medical tool is disclosed. The system includes a robotic arm and a control unit. The robotic arm includes one or more links and one or more joints that cooperate to move the medical tool. The control unit is configured to receive a position and a velocity of a first joint of the one or more joints, apply a damping function to the first joint based on the received position or velocity to modify a force or torque of the first joint, and vary the damping function applied to the first joint based on the position or velocity when the position or velocity changes while the medical tool is moved.
Description
TECHNICAL FIELD

This application relates to robotic arms, and in particular, damped manipulation of a medical tool in robotically assisted medical systems.


BACKGROUND

In certain medical procedures, a robotically enabled medical system may be used to control the insertion and/or manipulation of the instrument and an end effector thereof. The robotically enabled medical system may include a robotic arm, or other instrument positioning device. The robotically enabled medical system may also include a controller used to control the positioning of the instrument during the procedure.


SUMMARY

The systems, methods and devices of the subject technology disclosed herein each have several innovative aspects, no single one of which is solely responsible for the desirable attributes disclosed herein.


According to various aspects, a system for damped manipulation of a medical tool is disclosed. The system comprises: a robotic arm comprising one or more links and one or more joints that cooperate to move the medical tool; and a control unit configured to: receive a position and a velocity of a first joint of the one or more joints; apply a damping function to the first joint based on the received position or velocity to modify a force or torque of the first joint; and vary the damping function applied to the first joint based on the position or velocity when the position or velocity changes while the medical tool is moved.


In some implementations, the damping function is based on a current position of the robotic arm in relation to a virtual wall. In some implementations, the damping function causes a reduction in velocity of the first joint upon reaching a pre-haptic limit to a virtual wall. In some implementations, the damping function varies a damping coefficient as the first joint moves between the pre-haptic limit and the virtual wall. In some implementations, the damping coefficient increases as the first joint moves from the pre-haptic limit toward the virtual wall. In some implementations, the damping coefficient remains constant as the first joint moves beyond the virtual wall. In some implementations, the damping function determines a damping coefficient based on a velocity of the robotic arm. In some implementations, the damping function varies the damping coefficient as the velocity of the robotic arm increases. In some implementations, the robotic arm is capable of impedance control. In some implementations, the damping function comprises a first damping region and a second damping region selectable for modifying the force or torque of the first joint based on a current position or speed of the first joint, the first damping region modifying the force or torque differently than the second damping region. In some implementations, the damping function comprises (i) a first damping region that modifies the force or torque of the first joint by a variable amount responsive to a current position of the first joint satisfying a first threshold and (ii) a second damping region that modifies the force or torque according to a fixed amount responsive to the current position of the first joint satisfying a second threshold.


According to various implementations, a system for damped manipulation of a medical tool comprises: a robotic joint configured for use with a robotic arm comprising one or more links and one or more joints that cooperate to move the medical tool; and a control unit configured to: receive, as the medical tool is moved within a three-dimensional space, a current position of the robotic joint; determine a distance between the current position of the robotic joint and a first motion limit of the robotic joint; apply a damping function to the robotic joint based on the distance to modify a resistance to motion of the medical tool. In some implementations, the control unit is further configured to: determine a current velocity of the robotic joint; and vary the damping function applied to the robotic joint based on the current velocity and the current position.


According to various implementations, a method for damped manipulation of a medical tool, comprises: providing a robotic joint configured for use with a robotic arm comprising one or more links and one or more joints that cooperate to move the medical tool; receiving, as the medical tool is moved within a three-dimensional space, a current position of the robotic joint; determining a distance between the current position of the robotic joint and a first motion limit of the robotic joint; applying a damping function to the robotic joint based on the distance to modify a resistance to motion of the medical tool. In some implementations, the method further comprises: determining a current velocity of the robotic joint; and varying the damping function applied to the robotic joint based on the current velocity and the current position. In some implementations, the method further comprises: determining the damping function comprises: determining a first damping coefficient for modifying a resistive force or torque to motion of the robotic joint when the distance satisfies a first threshold; and determining a second damping coefficient for modifying the resistive force or torque when the distance satisfies a second threshold.


It is understood that other configurations of the subject technology will become readily apparent to those skilled in the art from the following detailed description, wherein various configurations of the subject technology are shown and described by way of illustration. As will be realized, the subject technology is capable of other and different configurations and its several details are capable of modification in various other respects, all without departing from the scope of the subject technology. Accordingly, the drawings and detailed description are to be regarded as illustrative in nature and not as restrictive.





BRIEF DESCRIPTION OF THE DRAWINGS

The disclosed aspects will hereinafter be described in conjunction with the appended drawings, provided to illustrate and not to limit the disclosed aspects, wherein like designations denote like elements.



FIG. 1 illustrates an example implementation of a cart-based robotic system arranged for diagnostic and/or therapeutic bronchoscopy procedure(s).



FIG. 2 depicts further aspects of the robotic system of FIG. 1.



FIG. 3 illustrates another example implementation of the robotic system of FIG. 1 arranged for ureteroscopy.



FIG. 4 illustrates another example implementation of the robotic system of FIG. 1 arranged for a vascular procedure.



FIG. 5 illustrates an example implementation of a table-based robotic system arranged for a bronchoscopy procedure.



FIG. 6 provides a second view of the robotic system of FIG. 5.



FIG. 7 illustrates an example system configured to stow robotic arm(s).



FIG. 8 illustrates an example implementation of a table-based robotic system configured for a ureteroscopy procedure.



FIG. 9 illustrates an example implementation of a table-based robotic system configured for a laparoscopic procedure.



FIG. 10 illustrates an example implementation of the table-based robotic system of FIGS. 5-9 with pitch or tilt adjustment.



FIG. 11 provides an example illustration of the interface between the table and the column of the table-based robotic system of FIGS. 5-10.



FIG. 12 illustrates an exemplary instrument driver.



FIG. 13 illustrates an exemplary medical instrument with a paired instrument driver.



FIG. 14 illustrates a second design for an instrument driver and instrument where the axes of the drive units are parallel to the axis of the elongated shaft of the instrument.



FIG. 15 depicts a block diagram illustrating an example localization system that estimates a location of one or more elements of the robotic systems of FIGS. 1-10, such as the location of the instrument of FIGS. 13 and 14, in accordance to an example implementation.



FIG. 16A is a block diagram illustrating an example implementation of a robotically enabled medical system including a controller for a robotically enabled medical instrument.



FIG. 16B is a block diagram illustrating an example implementation of the controller of FIG. 16A, which can be configured for hybrid impedance and admittance control.



FIG. 16C is an isometric view of an example implementation a controller including two gimbals and a positioning platform.



FIG. 17 is an isometric view of an example implementation of a gimbal for a controller.



FIG. 18 depicts an example damping function for application of constant virtual damping.



FIG. 19 is a perspective view of a second implementation of a controller, in accordance with aspects of the subject technology disclosed herein.



FIG. 20A depicts a first example damping function, including four regions for selecting different damping coefficients, in accordance with aspects of the subject technology disclosed herein.



FIG. 20B depicts a second example damping function, including a transitional regime.



FIG. 20C depicts a third example damping function, including multiple transitional regimes.



FIG. 21 depicts an example process for variable damping of a hand-controlled input device, providing damped control of a medical tool, in accordance with aspects of the subject technology disclosed herein.



FIG. 22 depicts a first example virtual haptic wall for a robotic joint, including a haptic wall damping region, in accordance with aspects of the subject technology disclosed herein.



FIG. 23 depicts a second example virtual haptic wall for a robotic joint, including a haptic wall damping region and a pre-haptic wall damping region, in accordance with aspects of the subject technology disclosed herein.



FIG. 24 illustrates an example damping function for damping movement of a joint, including damping within a pre-haptic wall damping region and damping within a haptic wall damping region, in accordance with aspects of the subject technology disclosed herein.



FIG. 25 depicts an example process for damped manipulation of a medical tool, in accordance with aspects of the subject technology disclosed herein.





DETAILED DESCRIPTION
1. Overview.

Aspects of the present disclosure may be integrated into a robotically enabled medical system capable of performing a variety of medical procedures, including both minimally invasive, such as laparoscopy, and non-invasive, such as endoscopy, procedures. Among endoscopy procedures, the system may be capable of performing bronchoscopy, ureteroscopy, gastroscopy, etc.


In addition to performing the breadth of procedures, the system may provide additional benefits, such as enhanced damping control to assist the physician. Additionally, system may provide the physician with the ability to perform the procedure with improved ease of use such that one or more of the instruments of the system can be controlled by a single user.


Various implementations will be described below in conjunction with the drawings for purposes of illustration. It should be appreciated that many other implementations of the disclosed concepts are possible, and various advantages can be achieved with the disclosed implementations. Headings are included herein for reference and to aid in locating various sections. These headings are not intended to limit the scope of the concepts described with respect thereto. Such concepts may have applicability throughout the entire specification.


A. Robotic System—Cart.

The robotically enabled medical system may be configured in a variety of ways depending on the particular procedure. FIG. 1 illustrates an implementation of a cart-based robotically enabled system 10 arranged for a diagnostic and/or therapeutic bronchoscopy procedure. During a bronchoscopy, the system 10 may comprise a cart 11 having one or more robotic arms 12 to deliver a medical instrument, such as a steerable endoscope 13, which may be a procedure-specific bronchoscope for bronchoscopy, to a natural orifice access point (i.e., the mouth of the patient positioned on a table in the present example) to deliver diagnostic and/or therapeutic tools. As shown, the cart 11 may be positioned proximate to the patient's upper torso in order to provide access to the access point. Similarly, the robotic arms 12 may be actuated to position the bronchoscope relative to the access point. The arrangement in FIG. 1 may also be utilized when performing a gastro-intestinal (GI) procedure with a gastroscope, a specialized endoscope for GI procedures. FIG. 2 depicts an example implementation of the cart in greater detail.


With continued reference to FIG. 1, once the cart 11 is properly positioned, the robotic arms 12 may insert the steerable endoscope 13 into the patient robotically, manually, or a combination thereof. As shown, the steerable endoscope 13 may comprise at least two telescoping parts, such as an inner leader portion and an outer sheath portion, each portion coupled to a separate instrument driver from the set of instrument drivers 28, each instrument driver coupled to the distal end of an individual robotic arm. This linear arrangement of the instrument drivers 28, which facilitates coaxially aligning the leader portion with the sheath portion, creates a “virtual rail” 29 that may be repositioned in space by manipulating the one or more robotic arms 12 into different angles and/or positions. The virtual rails described herein are depicted in the Figures using dashed lines, and accordingly the dashed lines do not depict any physical structure of the system. Translation of the instrument drivers 28 along the virtual rail 29 telescopes the inner leader portion relative to the outer sheath portion or advances or retracts the endoscope 13 from the patient. The angle of the virtual rail 29 may be adjusted, translated, and pivoted based on clinical application or physician preference. For example, in bronchoscopy, the angle and position of the virtual rail 29 as shown represents a compromise between providing physician access to the endoscope 13 while minimizing friction that results from bending the endoscope 13 into the patient's mouth.


The endoscope 13 may be directed down the patient's trachea and lungs after insertion using precise commands from the robotic system until reaching the target destination or operative site. In order to enhance navigation through the patient's lung network and/or reach the desired target, the endoscope 13 may be manipulated to telescopically extend the inner leader portion from the outer sheath portion to obtain enhanced articulation and greater bend radius. The use of separate instrument drivers 28 also allows the leader portion and sheath portion to be driven independent of each other.


For example, the endoscope 13 may be directed to deliver a biopsy needle to a target, such as, for example, a lesion or nodule within the lungs of a patient. The needle may be deployed down a working channel that runs the length of the endoscope to obtain a tissue sample to be analyzed by a pathologist. Depending on the pathology results, additional tools may be deployed down the working channel of the endoscope for additional biopsies. After identifying a nodule to be malignant, the endoscope 13 may endoscopically deliver tools to resect the potentially cancerous tissue. In some instances, diagnostic and therapeutic treatments may need to be delivered in separate procedures. In those circumstances, the endoscope 13 may also be used to deliver a fiducial to “mark” the location of the target nodule as well. In other instances, diagnostic and therapeutic treatments may be delivered during the same procedure.


The system 10 may also include a tower 30, which may be connected via support cables to the cart 11 to provide support for controls, electronics, fluidics, optics, sensors, and/or power to the cart 11. According to various implementations, tower 30 may function as or include a control unit for operation of various components of the robotic system, including the robotic arm(s) and haptic interface device described herein. Placing such functionality in the tower 30 may allow for a smaller form factor cart 11 that may be more easily adjusted and/or re-positioned by an operating physician and his/her staff. Additionally, the division of functionality between the cart/table and the support tower 30 reduces operating room clutter and facilitates improving clinical workflow. While the cart 11 may be positioned close to the patient, the tower 30 may be stowed in a remote location to stay out of the way during a procedure. In some implementations, the tower 30 may be movable.


In support of the robotic systems described above, the tower 30 may include component(s) of a computer-based control system that stores computer program instructions, for example, within a non-transitory computer-readable storage medium such as a persistent magnetic storage drive, solid state drive, etc. The execution of those instructions, whether the execution occurs in the tower 30 or the cart 11, may control the entire system or sub-system(s) thereof. For example, when executed by a processor of the computer system, the instructions may cause the components of the robotics system to actuate the relevant carriages and arm mounts, actuate the robotics arms, and control the medical instruments. For example, in response to receiving the control signal, the motors in the joints of the robotics arms may position the arms into a certain posture.


The tower 30 may also include a pump, flow meter, valve control, and/or fluid access in order to provide controlled irrigation and aspiration capabilities to system that may be deployed through the endoscope 13. These components may also be controlled using the computer system of tower 30. In some implementations, irrigation and aspiration capabilities may be delivered directly to the endoscope 13 through separate cable(s).


The tower 30 may include a voltage and surge protector designed to provide filtered and protected electrical power to the cart 11, thereby avoiding placement of a power transformer and other auxiliary power components in the cart 11, resulting in a smaller, more moveable cart 11.


The tower 30 may also include support equipment for the sensors deployed throughout the robotic system 10. For example, the tower 30 may include opto-electronics equipment for detecting, receiving, and processing data received from the optical sensors or cameras throughout the robotic system 10. In combination with the control system, such opto-electronics equipment may be used to generate real-time images for display in any number of consoles deployed throughout the system, including in the tower 30. Similarly, the tower 30 may also include an electronic subsystem for receiving and processing signals received from deployed electromagnetic (EM) sensors. The tower 30 may also be used to house and position an EM field generator for detection by EM sensors in or on the medical instrument.


The tower 30 may also include a console 31 in addition to other consoles available in the rest of the system, e.g., console mounted on top of the cart. The console 31 may include a user interface and a display screen, such as a touchscreen, for the physician operator. Consoles in system 10 are generally designed to provide both robotic controls as well as pre-operative and real-time information of the procedure, such as navigational and localization information of the endoscope 13. When the console 31 is not the only console available to the physician, it may be used by a second operator, such as a nurse, to monitor the health or vitals of the patient and the operation of system, as well as provide procedure-specific data, such as navigational and localization information. In other implementations, the console 30 is housed in a body that is separate from the tower 30.


The tower 30 may be coupled to the cart 11 and endoscope 13 through one or more cables or connections (not shown). In some implementations, the support functionality from the tower 30 may be provided through a single cable to the cart 11, simplifying and de-cluttering the operating room. In other implementations, specific functionality may be coupled in separate cabling and connections. For example, while power may be provided through a single power cable to the cart, the support for controls, optics, fluidics, and/or navigation may be provided through a separate cable.



FIG. 2 provides a detailed illustration of an implementation of the cart from the cart-based robotically enabled system shown in FIG. 1. The cart 11 generally includes an elongated support structure 14 (often referred to as a “column”), a cart base 15, and a console 16 at the top of the column 14. The column 14 may include one or more carriages, such as a carriage 17 (alternatively “arm support”) for supporting the deployment of one or more robotic arms 12 (three shown in FIG. 2). The carriage 17 may include individually configurable arm mounts that rotate along a perpendicular axis to adjust the base of the robotic arms 12 for better positioning relative to the patient. The carriage 17 also includes a carriage interface 19 that allows the carriage 17 to vertically translate along the column 14.


The carriage interface 19 is connected to the column 14 through slots, such as slot 20, that are positioned on opposite sides of the column 14 to guide the vertical translation of the carriage 17. The slot 20 contains a vertical translation interface to position and hold the carriage at various vertical heights relative to the cart base 15. Vertical translation of the carriage 17 allows the cart 11 to adjust the reach of the robotic arms 12 to meet a variety of table heights, patient sizes, and physician preferences. Similarly, the individually configurable arm mounts on the carriage 17 allow the robotic arm base 21 of robotic arms 12 to be angled in a variety of configurations.


In some implementations, the slot 20 may be supplemented with slot covers that are flush and parallel to the slot surface to prevent dirt and fluid ingress into the internal chambers of the column 14 and the vertical translation interface as the carriage 17 vertically translates. The slot covers may be deployed through pairs of spring spools positioned near the vertical top and bottom of the slot 20. The covers are coiled within the spools until deployed to extend and retract from their coiled state as the carriage 17 vertically translates up and down. The spring-loading of the spools provides force to retract the cover into a spool when carriage 17 translates towards the spool, while also maintaining a tight seal when the carriage 17 translates away from the spool. The covers may be connected to the carriage 17 using, for example, brackets in the carriage interface 19 to ensure proper extension and retraction of the cover as the carriage 17 translates.


The column 14 may internally comprise mechanisms, such as gears and motors, that are designed to use a vertically aligned lead screw to translate the carriage 17 in a mechanized fashion in response to control signals generated in response to user inputs, e.g., inputs from the console 16.


The robotic arms 12 may generally comprise robotic arm bases 21 and end effectors 22, separated by a series of linkages 23 that are connected by a series of joints 24, each joint comprising an independent actuator, each actuator comprising an independently controllable motor. Each independently controllable joint represents an independent degree of freedom available to the robotic arm. Each of the arms 12 have seven joints, and thus provide seven degrees of freedom. A multitude of joints result in a multitude of degrees of freedom, allowing for “redundant” degrees of freedom. Redundant degrees of freedom allow the robotic arms 12 to position their respective end effectors 22 at a specific position, orientation, and trajectory in space using different linkage positions and joint angles. This allows for the system to position and direct a medical instrument from a desired point in space while allowing the physician to move the arm joints into a clinically advantageous position away from the patient to create greater access, while avoiding arm collisions.


The cart base 15 balances the weight of the column 14, carriage 17, and arms 12 over the floor. Accordingly, the cart base 15 houses heavier components, such as electronics, motors, power supply, as well as components that either enable movement and/or immobilize the cart. For example, the cart base 15 includes rollable wheel-shaped casters 25 that allow for the cart to easily move around the room prior to a procedure. After reaching the appropriate position, the casters 25 may be immobilized using wheel locks to hold the cart 11 in place during the procedure.


Positioned at the vertical end of column 14, the console 16 allows for both a user interface for receiving user input and a display screen (or a dual-purpose device such as, for example, a touchscreen 26) to provide the physician user with both pre-operative and intra-operative data. Potential pre-operative data on the touchscreen 26 may include pre-operative plans, navigation and mapping data derived from pre-operative computerized tomography (CT) scans, and/or notes from pre-operative patient interviews. Intra-operative data on display may include optical information provided from the tool, sensor and coordinate information from sensors, as well as vital patient statistics, such as respiration, heart rate, and/or pulse. The console 16 may be positioned and tilted to allow a physician to access the console from the side of the column 14 opposite carriage 17. From this position, the physician may view the console 16, robotic arms 12, and patient while operating the console 16 from behind the cart 11. As shown, the console 16 also includes a handle 27 to assist with maneuvering and stabilizing cart 11.



FIG. 3 illustrates an implementation of a robotically enabled system 10 arranged for ureteroscopy. In a ureteroscopic procedure, the cart 11 may be positioned to deliver a ureteroscope 32, a procedure-specific endoscope designed to traverse a patient's urethra and ureter, to the lower abdominal area of the patient. In a ureteroscopy, it may be desirable for the ureteroscope 32 to be directly aligned with the patient's urethra to reduce friction and forces on the sensitive anatomy in the area. As shown, the cart 11 may be aligned at the foot of the table to allow the robotic arms 12 to position the ureteroscope 32 for direct linear access to the patient's urethra. From the foot of the table, the robotic arms 12 may insert the ureteroscope 32 along the virtual rail 33 directly into the patient's lower abdomen through the urethra.


After insertion into the urethra, using similar control techniques as in bronchoscopy, the ureteroscope 32 may be navigated into the bladder, ureters, and/or kidneys for diagnostic and/or therapeutic applications. For example, the ureteroscope 32 may be directed into the ureter and kidneys to break up kidney stone build up using laser or ultrasonic lithotripsy device deployed down the working channel of the ureteroscope 32. After lithotripsy is complete, the resulting stone fragments may be removed using baskets deployed down the ureteroscope 32.



FIG. 4 illustrates an implementation of a robotically enabled system similarly arranged for a vascular procedure. In a vascular procedure, the system 10 may be configured such the cart 11 may deliver a medical instrument 34, such as a steerable catheter, to an access point in the femoral artery in the patient's leg. The femoral artery presents both a larger diameter for navigation as well as relatively less circuitous and tortuous path to the patient's heart, which simplifies navigation. As in a ureteroscopic procedure, the cart 11 may be positioned towards the patient's legs and lower abdomen to allow the robotic arms 12 to provide a virtual rail 35 with direct linear access to the femoral artery access point in the patient's thigh/hip region. After insertion into the artery, the medical instrument 34 may be directed and inserted by translating the instrument drivers 28. Additionally or in the alternative, the cart may be positioned around the patient's upper abdomen in order to reach alternative vascular access points, such as, for example, the carotid and brachial arteries near the shoulder and wrist.


B. Robotic System—Table.

Implementations of the robotically enabled medical system may also incorporate the patient's table. Incorporation of the table reduces the amount of capital equipment within the operating room by removing the cart, which allows greater access to the patient. FIG. 5 illustrates an implementation of such a robotically enabled system arranged for a bronchoscopy procedure. System 36 includes a support structure or column 37 for supporting platform 38 (shown as a “table” or “bed”) over the floor. Much like in the cart-based systems, the end effectors of the robotic arms 39 of the system 36 comprise instrument drivers 42 that are designed to manipulate an elongated medical instrument, such as a bronchoscope 40 in FIG. 5, through or along a virtual rail 41 formed from the linear alignment of the instrument drivers 42. In practice, a C-arm for providing fluoroscopic imaging may be positioned over the patient's upper abdominal area by placing the emitter and detector around table 38.



FIG. 6 provides another view of the system 36 without the patient and medical instrument for discussion purposes. As shown, the column 37 may include one or more carriages 43 shown as ring-shaped in the system 36, from which the one or more robotic arms 39 may be based. The carriages 43 may translate along a vertical column interface 44 that runs the length of the column 37 to provide different vantage points from which the robotic arms 39 may be positioned to reach the patient. The carriage(s) 43 may rotate around the column 37 using a mechanical motor positioned within the column 37 to allow the robotic arms 39 to have access to multiples sides of the table 38, such as, for example, both sides of the patient. In implementations with multiple carriages, the carriages may be individually positioned on the column and may translate and/or rotate independent of the other carriages. While carriages 43 need not surround the column 37 or even be circular, the ring-shape as shown facilitates rotation of the carriages 43 around the column 37 while maintaining structural balance. Rotation and translation of the carriages 43 allows the system to align the medical instruments, such as endoscopes and laparoscopes, into different access points on the patient. In other implementations (not shown), the system 36 can include a patient table or bed with adjustable arm supports in the form of bars or rails extending alongside it. One or more robotic arms 39 (e.g., via a shoulder with an elbow joint) can be attached to the adjustable arm supports, which can be vertically adjusted. By providing vertical adjustment, the robotic arms 39 are advantageously capable of being stowed compactly beneath the patient table or bed, and subsequently raised during a procedure.


The arms 39 may be mounted on the carriages through a set of arm mounts 45 comprising a series of joints that may individually rotate and/or telescopically extend to provide additional configurability to the robotic arms 39. Additionally, the arm mounts 45 may be positioned on the carriages 43 such that, when the carriages 43 are appropriately rotated, the arm mounts 45 may be positioned on either the same side of table 38 (as shown in FIG. 6), on opposite sides of table 38 (as shown in FIG. 9), or on adjacent sides of the table 38 (not shown).


The column 37 structurally provides support for the table 38, and a path for vertical translation of the carriages. Internally, the column 37 may be equipped with lead screws for guiding vertical translation of the carriages, and motors to mechanize the translation of said carriages based the lead screws. The column 37 may also convey power and control signals to the carriage 43 and robotic arms 39 mounted thereon.


The table base 46 serves a similar function as the cart base 15 in cart 11 shown in FIG. 2, housing heavier components to balance the table/bed 38, the column 37, the carriages 43, and the robotic arms 39. The table base 46 may also incorporate rigid casters to provide stability during procedures. Deployed from the bottom of the table base 46, the casters may extend in opposite directions on both sides of the base 46 and retract when the system 36 needs to be moved.


Continuing with FIG. 6, the system 36 may also include a tower (not shown) that divides the functionality of system 36 between table and tower to reduce the form factor and bulk of the table. As in earlier disclosed implementations, the tower may provide a variety of support functionalities to table, such as processing, computing, and control capabilities, power, fluidics, and/or optical and sensor processing. The tower may also be movable to be positioned away from the patient to improve physician access and de-clutter the operating room. Additionally, placing components in the tower allows for more storage space in the table base for potential stowage of the robotic arms. The tower may also include a master controller or console that provides both a user interface for user input, such as keyboard and/or pendant, as well as a display screen (or touchscreen) for pre-operative and intra-operative information, such as real-time imaging, navigation, and tracking information. In some implementations, the tower may also contain holders for gas tanks to be used for insufflation.


In some implementations, a table base may stow and store the robotic arms when not in use. FIG. 7 illustrates a system 47 that stows robotic arms in an implementation of the table-based system. In system 47, carriages 48 may be vertically translated into base 49 to stow robotic arms 50, arm mounts 51, and the carriages 48 within the base 49. Base covers 52 may be translated and retracted open to deploy the carriages 48, arm mounts 51, and arms 50 around column 53, and closed to stow to protect them when not in use. The base covers 52 may be sealed with a membrane 54 along the edges of its opening to prevent dirt and fluid ingress when closed.



FIG. 8 illustrates an implementation of a robotically enabled table-based system configured for a ureteroscopy procedure. In a ureteroscopy, the table 38 may include a swivel portion 55 for positioning a patient off-angle from the column 37 and table base 46. The swivel portion 55 may rotate or pivot around a pivot point (e.g., located below the patient's head) in order to position the bottom portion of the swivel portion 55 away from the column 37. For example, the pivoting of the swivel portion 55 allows a C-arm (not shown) to be positioned over the patient's lower abdomen without competing for space with the column (not shown) below table 38. By rotating the carriage 35 (not shown) around the column 37, the robotic arms 39 may directly insert a ureteroscope 56 along a virtual rail 57 into the patient's groin area to reach the urethra. In a ureteroscopy, stirrups 58 may also be fixed to the swivel portion 55 of the table 38 to support the position of the patient's legs during the procedure and allow clear access to the patient's groin area.


In a laparoscopic procedure, through small incision(s) in the patient's abdominal wall, minimally invasive instruments may be inserted into the patient's anatomy. In some implementations, the minimally invasive instruments comprise an elongated rigid member, such as a shaft, which is used to access anatomy within the patient. After inflation of the patient's abdominal cavity, the instruments may be directed to perform surgical or medical tasks, such as grasping, cutting, ablating, suturing, etc. In some implementations, the instruments can comprise a scope, such as a laparoscope. FIG. 9 illustrates an implementation of a robotically enabled table-based system configured for a laparoscopic procedure. As shown in FIG. 9, the carriages 43 of the system 36 may be rotated and vertically adjusted to position pairs of the robotic arms 39 on opposite sides of the table 38, such that instrument 59 may be positioned using the arm mounts 45 to be passed through minimal incisions on both sides of the patient to reach his/her abdominal cavity.


To accommodate laparoscopic procedures, the robotically enabled table system may also tilt the platform to a desired angle. FIG. 10 illustrates an implementation of the robotically enabled medical system with pitch or tilt adjustment. As shown in FIG. 10, the system 36 may accommodate tilt of the table 38 to position one portion of the table at a greater distance from the floor than the other. Additionally, the arm mounts 45 may rotate to match the tilt such that the arms 39 maintain the same planar relationship with table 38. To accommodate steeper angles, the column 37 may also include telescoping portions 60 that allow vertical extension of column 37 to keep the table 38 from touching the floor or colliding with base 46.



FIG. 11 provides a detailed illustration of the interface between the table 38 and the column 37. Pitch rotation mechanism 61 may be configured to alter the pitch angle of the table 38 relative to the column 37 in multiple degrees of freedom. The pitch rotation mechanism 61 may be enabled by the positioning of orthogonal axes 1, 2 at the column-table interface, each axis actuated by a separate motor 3, 4 responsive to an electrical pitch angle command. Rotation along one screw 5 would enable tilt adjustments in one axis 1, while rotation along the other screw 6 would enable tilt adjustments along the other axis 2. In some implementations, a ball joint can be used to alter the pitch angle of the table 38 relative to the column 37 in multiple degrees of freedom.


For example, pitch adjustments are particularly useful when trying to position the table in a Trendelenburg position, i.e., position the patient's lower abdomen at a higher position from the floor than the patient's lower abdomen, for lower abdominal surgery. The Trendelenburg position causes the patient's internal organs to slide towards his/her upper abdomen through the force of gravity, clearing out the abdominal cavity for minimally invasive tools to enter and perform lower abdominal surgical or medical procedures, such as laparoscopic prostatectomy.


C. Instrument Driver & Interface.

The end effectors of the system's robotic arms comprise (i) an instrument driver (alternatively referred to as “instrument drive mechanism” or “instrument device manipulator”) that incorporate electro-mechanical means for actuating the medical instrument and (ii) a removable or detachable medical instrument, which may be devoid of any electro-mechanical components, such as motors. This dichotomy may be driven by the need to sterilize medical instruments used in medical procedures, and the inability to adequately sterilize expensive capital equipment due to their intricate mechanical assemblies and sensitive electronics. Accordingly, the medical instruments may be designed to be detached, removed, and interchanged from the instrument driver (and thus the system) for individual sterilization or disposal by the physician or the physician's staff. In contrast, the instrument drivers need not be changed or sterilized, and may be draped for protection.



FIG. 12 illustrates an example instrument driver. Positioned at the distal end of a robotic arm, instrument driver 62 comprises of one or more drive units 63 arranged with parallel axes to provide controlled torque to a medical instrument via drive shafts 64. Each drive unit 63 comprises an individual drive shaft 64 for interacting with the instrument, a gear head 65 for converting the motor shaft rotation to a desired torque, a motor 66 for generating the drive torque, an encoder 67 to measure the speed of the motor shaft and provide feedback to the control circuitry, and control circuitry 68 for receiving control signals and actuating the drive unit. Each drive unit 63 being independent controlled and motorized, the instrument driver 62 may provide multiple (four as shown in FIG. 12) independent drive outputs to the medical instrument. In operation, the control circuitry 68 would receive a control signal, transmit a motor signal to the motor 66, compare the resulting motor speed as measured by the encoder 67 with the desired speed, and modulate the motor signal to generate the desired torque.


For procedures that require a sterile environment, the robotic system may incorporate a drive interface, such as a sterile adapter connected to a sterile drape, that sits between the instrument driver and the medical instrument. The chief purpose of the sterile adapter is to transfer angular motion from the drive shafts of the instrument driver to the drive inputs of the instrument while maintaining physical separation, and thus sterility, between the drive shafts and drive inputs. Accordingly, an example sterile adapter may comprise of a series of rotational inputs and outputs intended to be mated with the drive shafts of the instrument driver and drive inputs on the instrument. Connected to the sterile adapter, the sterile drape, comprised of a thin, flexible material such as transparent or translucent plastic, is designed to cover the capital equipment, such as the instrument driver, robotic arm, and cart (in a cart-based system) or table (in a table-based system). Use of the drape would allow the capital equipment to be positioned proximate to the patient while still being located in an area not requiring sterilization (i.e., non-sterile field). On the other side of the sterile drape, the medical instrument may interface with the patient in an area requiring sterilization (i.e., sterile field).


D. Medical Instrument.


FIG. 13 illustrates an example medical instrument with a paired instrument driver. Like other instruments designed for use with a robotic system, medical instrument 70 comprises an elongated shaft 71 (or elongate body) and an instrument base 72. The instrument base 72, also referred to as an “instrument handle” due to its intended design for manual interaction by the physician, may generally comprise rotatable drive inputs 73, e.g., receptacles, pulleys or spools, that are designed to be mated with drive outputs 74 that extend through a drive interface on instrument driver 75 at the distal end of robotic arm 76. When physically connected, latched, and/or coupled, the mated drive inputs 73 of instrument base 72 may share axes of rotation with the drive outputs 74 in the instrument driver 75 to allow the transfer of torque from drive outputs 74 to drive inputs 73. In some implementations, the drive outputs 74 may comprise splines that are designed to mate with receptacles on the drive inputs 73.


The elongated shaft 71 is designed to be delivered through either an anatomical opening or lumen, e.g., as in endoscopy, or a minimally invasive incision, e.g., as in laparoscopy. The elongated shaft 71 may be either flexible (e.g., having properties similar to an endoscope) or rigid (e.g., having properties similar to a laparoscope) or contain a customized combination of both flexible and rigid portions. When designed for laparoscopy, the distal end of a rigid elongated shaft may be connected to an end effector extending from a jointed wrist formed from a clevis with at least one degree of freedom and a surgical tool or medical instrument, such as, for example, a grasper or scissors, that may be actuated based on force from the tendons as the drive inputs rotate in response to torque received from the drive outputs 74 of the instrument driver 75. When designed for endoscopy, the distal end of a flexible elongated shaft may include a steerable or controllable bending section that may be articulated and bent based on torque received from the drive outputs 74 of the instrument driver 75.


Torque from the instrument driver 75 is transmitted down the elongated shaft 71 using tendons along the shaft 71. These individual tendons, such as pull wires, may be individually anchored to individual drive inputs 73 within the instrument handle 72. From the handle 72, the tendons are directed down one or more pull lumens along the elongated shaft 71 and anchored at the distal portion of the elongated shaft 71, or in the wrist at the distal portion of the elongated shaft. During a surgical procedure, such as a laparoscopic, endoscopic or hybrid procedure, these tendons may be coupled to a distally mounted end effector, such as a wrist, grasper, or scissor. Under such an arrangement, torque exerted on drive inputs 73 would transfer tension to the tendon, thereby causing the end effector to actuate in some way. In some implementations, during a surgical procedure, the tendon may cause a joint to rotate about an axis, thereby causing the end effector to move in one direction or another. Additionally or in the alternative, the tendon may be connected to one or more jaws of a grasper at distal end of the elongated shaft 71, where tension from the tendon cause the grasper to close.


In endoscopy, the tendons may be coupled to a bending or articulating section positioned along the elongated shaft 71 (e.g., at the distal end) via adhesive, control ring, or other mechanical fixation. When fixedly attached to the distal end of a bending section, torque exerted on drive inputs 73 would be transmitted down the tendons, causing the softer, bending section (sometimes referred to as the articulable section or region) to bend or articulate. Along the non-bending sections, it may be advantageous to spiral or helix the individual pull lumens that direct the individual tendons along (or inside) the walls of the endoscope shaft to balance the radial forces that result from tension in the pull wires. The angle of the spiraling and/or spacing there between may be altered or engineered for specific purposes, wherein tighter spiraling exhibits lesser shaft compression under load forces, while lower amounts of spiraling results in greater shaft compression under load forces, but also exhibits limits bending. On the other end of the spectrum, the pull lumens may be directed parallel to the longitudinal axis of the elongated shaft 71 to allow for controlled articulation in the desired bending or articulable sections.


In endoscopy, the elongated shaft 71 houses a number of components to assist with the robotic procedure. The shaft may comprise of a working channel for deploying surgical tools (or medical instruments), irrigation, and/or aspiration to the operative region at the distal end of the shaft 71. The shaft 71 may also accommodate wires and/or optical fibers to transfer signals to/from an optical assembly at the distal tip, which may include of an optical camera. The shaft 71 may also accommodate optical fibers to carry light from proximally located light sources, such as light emitting diodes, to the distal end of the shaft.


At the distal end of the instrument 70, the distal tip may also comprise the opening of a working channel for delivering tools for diagnostic and/or therapy, irrigation, and aspiration to an operative site. The distal tip may also include a port for a camera, such as a fiberscope or a digital camera, to capture images of an internal anatomical space. Relatedly, the distal tip may also include ports for light sources for illuminating the anatomical space when using the camera.


In the example of FIG. 13, the drive shaft axes, and thus the drive input axes, are orthogonal to the axis of the elongated shaft. This arrangement, however, complicates roll capabilities for the elongated shaft 71. Rolling the elongated shaft 71 along its axis while keeping the drive inputs 73 static results in undesirable tangling of the tendons as they extend off the drive inputs 73 and enter pull lumens within the elongated shaft 71. The resulting entanglement of such tendons may disrupt any control algorithms intended to predict movement of the flexible elongated shaft during an endoscopic procedure.



FIG. 14 illustrates another design for an instrument driver and instrument where the axes of the drive units are parallel to the axis of the elongated shaft of the instrument. As shown, a circular instrument driver 80 comprises four drive units with their drive outputs 81 aligned in parallel at the end of a robotic arm 82. The drive units, and their respective drive outputs 81, are housed in a rotational assembly 83 of the instrument driver 80 that is driven by one of the drive units within the assembly 83. In response to torque provided by the rotational drive unit, the rotational assembly 83 rotates along a circular bearing that connects the rotational assembly 83 to the non-rotational portion 84 of the instrument driver. Power and controls signals may be communicated from the non-rotational portion 84 of the instrument driver 80 to the rotational assembly 83 through electrical contacts may be maintained through rotation by a brushed slip ring connection (not shown). In other implementations, the rotational assembly 83 may be responsive to a separate drive unit that is integrated into the non-rotatable portion 84, and thus not in parallel to the other drive units. The rotational mechanism 83 allows the instrument driver 80 to rotate the drive units, and their respective drive outputs 81, as a single unit around an instrument driver axis 85.


Like earlier disclosed implementations, an instrument 86 may comprise an elongated shaft portion 88 and an instrument base 87 (shown with a transparent external skin for discussion purposes) comprising a plurality of drive inputs 89 (such as receptacles, pulleys, and spools) that are configured to receive the drive outputs 81 in the instrument driver 80. Unlike prior disclosed implementations, instrument shaft 88 extends from the center of instrument base 87 with an axis substantially parallel to the axes of the drive inputs 89, rather than orthogonal as in the design of FIG. 13.


When coupled to the rotational assembly 83 of the instrument driver 80, the medical instrument 86, comprising instrument base 87 and instrument shaft 88, rotates in combination with the rotational assembly 83 about the instrument driver axis 85. Since the instrument shaft 88 is positioned at the center of instrument base 87, the instrument shaft 88 is coaxial with instrument driver axis 85 when attached. Thus, rotation of the rotational assembly 83 causes the instrument shaft 88 to rotate about its own longitudinal axis. Moreover, as the instrument base 87 rotates with the instrument shaft 88, any tendons connected to the drive inputs 89 in the instrument base 87 are not tangled during rotation. Accordingly, the parallelism of the axes of the drive outputs 81, drive inputs 89, and instrument shaft 88 allows for the shaft rotation without tangling any control tendons.


E. Navigation and Control.

Traditional endoscopy may involve the use of fluoroscopy (e.g., as may be delivered through a C-arm) and other forms of radiation-based imaging modalities to provide endoluminal guidance to an operator physician. In contrast, the robotic systems contemplated by the subject technology can provide for non-radiation-based navigational and localization means to reduce physician exposure to radiation and reduce the amount of equipment within the operating room. As used herein, the term “localization” may refer to determining and/or monitoring the position of objects in a reference coordinate system. Technologies such as pre-operative mapping, computer vision, real-time EM tracking, and robot command data may be used individually or in combination to achieve a radiation-free operating environment. In other cases, where radiation-based imaging modalities are still used, the pre-operative mapping, computer vision, real-time EM tracking, and robot command data may be used individually or in combination to improve upon the information obtained solely through radiation-based imaging modalities.



FIG. 15 is a block diagram illustrating a localization system 90 that estimates a location of one or more elements of the robotic system, such as the location of the instrument, in accordance to an example implementation. The localization system 90 may be a set of one or more computer devices configured to execute one or more instructions. The computer devices may be embodied by a processor (or processors) and computer-readable memory in one or more components discussed above. By way of example and not limitation, the computer devices may be in the tower 30 shown in FIG. 1, the cart shown in FIGS. 1-4, the beds shown in FIGS. 5-10, etc.


As shown in FIG. 15, the localization system 90 may include a localization module 95 that processes input data 91-94 to generate location data 96 for the distal tip of a medical instrument. The location data 96 may be data or logic that represents a location and/or orientation of the distal end of the instrument relative to a frame of reference. The frame of reference can be a frame of reference relative to the anatomy of the patient or to a known object, such as an EM field generator (see discussion below for the EM field generator).


The various input data 91-94 are now described in greater detail. Pre-operative mapping may be accomplished through the use of the collection of low dose CT scans. Pre-operative CT scans are reconstructed into three-dimensional images, which are visualized, e.g. as “slices” of a cutaway view of the patient's internal anatomy. When analyzed in the aggregate, image-based models for anatomical cavities, spaces and structures of the patient's anatomy, such as a patient lung network, may be generated. Techniques such as center-line geometry may be determined and approximated from the CT images to develop a three-dimensional volume of the patient's anatomy, referred to as model data 91 (also referred to as “preoperative model data” when generated using only preoperative CT scans). The use of center-line geometry is discussed in U.S. patent application Ser. No. 14/523,760, the contents of which are herein incorporated in its entirety. Network topological models may also be derived from the CT-images and are particularly appropriate for bronchoscopy.


In some implementations, the instrument may be equipped with a camera to provide vision data 92. The localization module 95 may process the vision data to enable one or more vision-based location tracking. For example, the preoperative model data may be used in conjunction with the vision data 92 to enable computer vision-based tracking of the medical instrument (e.g., an endoscope or an instrument advance through a working channel of the endoscope). For example, using the preoperative model data 91, the robotic system may generate a library of expected endoscopic images from the model based on the expected path of travel of the endoscope, each image linked to a location within the model. Intra-operatively, this library may be referenced by the robotic system in order to compare real-time images captured at the camera (e.g., a camera at a distal end of the endoscope) to those in the image library to assist localization.


Other computer vision-based tracking techniques use feature tracking to determine motion of the camera, and thus the endoscope. Some features of the localization module 95 may identify circular geometries in the preoperative model data 91 that correspond to anatomical lumens and track the change of those geometries to determine which anatomical lumen was selected, as well as the relative rotational and/or translational motion of the camera. Use of a topological map may further enhance vision-based algorithms or techniques.


Optical flow, another computer vision-based technique, may analyze the displacement and translation of image pixels in a video sequence in the vision data 92 to infer camera movement. Examples of optical flow techniques may include motion detection, object segmentation calculations, luminance, motion compensated encoding, stereo disparity measurement, etc. Through the comparison of multiple frames over multiple iterations, movement and location of the camera (and thus the endoscope) may be determined.


The localization module 95 may use real-time EM tracking to generate a real-time location of the endoscope in a global coordinate system that may be registered to the patient's anatomy, represented by the preoperative model. In EM tracking, an EM sensor (or tracker) comprising of one or more sensor coils embedded in one or more locations and orientations in a medical instrument (e.g., an endoscopic tool) measures the variation in the EM field created by one or more static EM field generators positioned at a known location. The location information detected by the EM sensors is stored as EM data 93. The EM field generator (or transmitter), may be placed close to the patient to create a low intensity magnetic field that the embedded sensor may detect. The magnetic field induces small currents in the sensor coils of the EM sensor, which may be analyzed to determine the distance and angle between the EM sensor and the EM field generator. These distances and orientations may be intra-operatively “registered” to the patient anatomy (e.g., the preoperative model) in order to determine the geometric transformation that aligns a single location in the coordinate system with a position in the pre-operative model of the patient's anatomy. Once registered, an embedded EM tracker in one or more positions of the medical instrument (e.g., the distal tip of an endoscope) may provide real-time indications of the progression of the medical instrument through the patient's anatomy.


Robotic command and kinematics data 94 may also be used by the localization module 95 to provide localization data 96 for the robotic system. Device pitch and yaw resulting from articulation commands may be determined during pre-operative calibration. Intra-operatively, these calibration measurements may be used in combination with known insertion depth information to estimate the position of the instrument. Additionally or in the alternative, these calculations may be analyzed in combination with EM, vision, and/or topological modeling to estimate the position of the medical instrument within the network.


As FIG. 15 shows, a number of other input data can be used by the localization module 95. For example, although not shown in FIG. 15, an instrument utilizing shape-sensing fiber can provide shape data that the localization module 95 can use to determine the location and shape of the instrument.


The localization module 95 may use the input data 91-94 in combination(s). In some cases, such a combination may use a probabilistic approach where the localization module 95 assigns a confidence weight to the location determined from each of the input data 91-94. Thus, where the EM data may not be reliable (as may be the case where there is EM interference) the confidence of the location determined by the EM data 93 can be decrease and the localization module 95 may rely more heavily on the vision data 92 and/or the robotic command and kinematics data 94.


As discussed above, the robotic systems discussed herein may be designed to incorporate a combination of one or more of the technologies above. The robotic system's computer-based control system, based in the tower, bed and/or cart, may store computer program instructions, for example, within a non-transitory computer-readable storage medium such as a persistent magnetic storage drive, solid state drive, or the like, that, upon execution, cause the system to receive and analyze sensor data and user commands, generate control signals throughout the system, and display the navigational and localization data, such as the position of the instrument within the global coordinate system, anatomical map, etc.


2. Controllers for Robotically Enabled Teleoperated Systems

Robotically enabled teleoperated systems, such as the systems described above, can include an input device or controller that is configured to allow an operator (e.g., a physician performing a robotically enabled medical procedure) to manipulate and control one or more instruments. In some implementations, the robotically enabled teleoperated systems comprise a controller for operating one or more medical tools. One skilled in the art will appreciate that the controllers described herein can be applied in non-medical contexts as well. For example, the controllers can be useful for manipulating tools that involve hazardous substances. In addition, in some implementations, the controllers described herein can be useful in grabbing objects in physical and/or virtual environments. In some implementations, the controllers can be self-sufficient as service robots interacting with human operators. In some implementations, the controller can be coupled (e.g., communicatively, electronically, electrically, wirelessly, and/or mechanically) with an instrument (such as, e.g., a medical instrument) such that manipulation of the controller causes a corresponding manipulation of the instrument. In some implementations, the controller and the instrument are arranged in a master-slave pair. In some implementations, the controller may be referred to as a manipulator, emulator, master, interface, etc. In some implementations, the controller can comprise a plurality of links assembled in parallel or in series.


The controller can serve as an input device for an operator to control the actions of a medical instrument, such as in an endoscopic, endoluminal, laparoscopic, or open surgery instrument. Movement of the controller by the operator can direct the movement of the medical instrument. For example, when an operator translates the controller in three-dimensional space (e.g., up, down, left, right, backwards, forwards), the system can cause a corresponding translation of the medical instrument. Similarly, if the operator rotates the controller (e.g., around any of three orthogonal axes) the system can cause a corresponding rotational movement of the medical instrument. The controller can also include an input that allows the operator to actuate the medical instrument. As one example, if the medical instrument includes a grasper, the controller can include an input that allows the operator to open and close the grasper.


The controller can also provide haptic feedback to the operator. For example, in some implementations, forces or torques imparted on the medical instrument can be transmitted back to the operator through the controller. In some implementations, providing haptic feedback to the operator through the controller provides the user with an improved operating, controlling, or driving experience. In some implementations, to make it easier for the operator to interact with the controller and operate the system, crisp haptic cues can be provided.


In some implementations, the controller is also used to align the operator's hands with the orientation of a medical instrument, for example, when switching medical instruments. For example, if a medical instrument is positioned within a patient during a medical procedure, it is important that the medical instrument does not move unexpectedly or unintentionally. Thus, when an operator desires to take control of a medical instrument already positioned within the body, the controller can first move to match the orientation of the medical instrument, while the instrument remains in place. With the controller correctly oriented to match the orientation of the medical instrument, the operator can then use the controller to manipulate the medical instrument.


In some implementations, robotically enabled medical systems include controllers with seven degrees of freedom that follow the operator's hand movement, with the seven degrees of freedom including three positional degrees of freedom (e.g., translational movement in x, y, z space), three rotational degrees of freedom (e.g., rotational movement around pitch, roll, and yaw axes), and one (or more) instrument actuation degree of freedom (e.g., an angular degree of freedom). In some implementations, the instrument actuation degree of freedom can control the opening and closing of an end effector of the medical instrument, such as a gripper or grasper to hold an object. In some implementations, the instrument actuation degree of freedom may be omitted. In some implementations, controllers may include greater or fewer numbers of degrees of freedom. For example, in some implementations, a controller may include more than three positional degrees of freedom or more than three rotational degrees of freedom to provide one or more redundant degrees of freedom. In some implementations, redundant degrees of freedom may provide additional mechanical flexibility for the controller, for example, to avoid singularities caused by the mechanical structure of the controller.



FIG. 16A illustrates a block diagram of an implementation of a robotically enabled medical system 100 including a schematic representation of an implementation of a controller 102 and schematic representation of an implementation of a robotically enabled medical instrument 310. As briefly mentioned above, the controller 102 can be coupled with the robotically enabled medical instrument 310 such that manipulation of the controller 102 causes a substantially corresponding movement of the robotically enabled medical instrument 310, and forces imparted on the robotically enabled medical instrument 310 can be transmitted back to the controller and haptically communicated to the operator. In some implementations, the controller 102 and the robotically enabled medical instrument 310 are arranged in a master-slave configuration.


In the illustrated implementation of the system 100, the controller 102 includes a handle 104, a gimbal 106, and a positioning platform 108. The handle 104 can be configured to be held by the operator. As illustrated, in some implementations, the handle 104 is coupled to the gimbal 106 and the positioning platform 108. As noted above, the handle 104 can include one or more degrees of freedom to actuate an instrument. The gimbal 106 can be configured to provide one or more rotational degrees of freedom to allow the operator to rotate the handle 104. In some implementations, the gimbal 106 is configured to provide at least three rotational degrees of freedom. For example, the gimbal 106 can be configured to allow the operator to rotate the handle 104 about pitch, roll, and yaw axes. The positioning platform 108 can be configured to provide one or more translational (also referred to herein as positional) degrees of freedom to allow the operator to translate the handle 104. In some implementations, the positioning platform 108 is configured to provide at least three positional degrees of freedom. For example, the positioning platform 108 can be configured to allow the operator to translate the handle 104 in three-dimensional space (e.g., x-, y-, and z-directions). An example positioning platform 108 can be seen in FIGS. 16C and 19, described in greater detail below. Together, the gimbal 106 and the positioning platform 108 can enable the user to manipulate the handle 104.


In the illustrated implementation, the robotically enabled medical instrument 310 includes an instrument or tool 312 (which may include an end effector), an instrument driver 314, and a robotic arm 316 (or other instrument positioning device). The medical tool 312 can be, for example, the laparoscopic instrument 59 shown in FIG. 9 above, as well as other types of endoscopic or laparoscopic medical instruments as described throughout this application and as will be apparent to those of ordinary skill in the art. The medical tool 312 can include an end effector or a plurality of end effectors. The end effector can be positioned on a distal end of the medical tool 312. The end effector can be configured for insertion into the patient's body. In some implementations, the end effector can be a grasper, a gripper, a cutter, a basketing apparatus, or a scissor, among many others. In some implementations, the medical tool 312 can comprise a scope or a camera.


The medical tool 312 can be attached to the instrument driver 314. The instrument driver 314 can be configured to actuate the medical tool 312 as described above. For example, the instrument driver 314 can be configured to pull one or more pull wires of the medical tool 312 to actuate the medical tool 312. In some implementations, the instrument driver 314 can be an instrument drive mechanism as described above. The instrument driver 314 can be attached to the robotic arm 316, for example, as shown in FIG. 13. The robotic arm 316 can be configured to articulate or move to further manipulate and position the medical tool 312. Example medical instruments/tools, instrument drivers, and robotic arms are shown in the systems of FIGS. 1-15, described above.


The controller 102 can be coupled to the robotically enabled medical instrument 310 such that manipulation of the handle 104 causes substantially corresponding movement of the medical tool 312 and forces imparted on the medical tool 312 can be haptically transmitted to the operator through the handle 104. Manipulation of the handle 104 can be measured or determined by measuring forces and movements of the gimbal 106 and the positioning platform 108. Movement of the medical tool 312 can be caused by articulation and movement of the instrument driver 314 and/or the robotic arm 316. Thus, by manipulating the handle 104, the operator can control the medical tool 312.


In many instances, it is desired that the controller 102 be easily manipulated by the operator such that the operator has fine and precise control over the medical tool 312 and can use the controller 102 without becoming over-tired. One metric for measuring the ease of manipulation of a controller is the perceived inertia and/or perceived mass of the system. In some implementations, the perceived inertia of the system is the mass of the system that the user feels as if it were a point mass when manipulating the handle 104. In general, controllers 102 with lower perceived inertia may be easier to operate. In other implementations, the perceived inertia includes the moment of inertia that the user feels when manipulating the handle 104.


As will be described below, the controllers described in this application include several novel and nonobvious features which provide advantages over existing systems. In some implementations, the controllers described herein are advantageously configured to employ damping algorithms and/or functions for precise control of both the controller, robotic arm(s), and medical tool. According to various implementations, the controllers disclosed herein operate with both admittance and/or impedance control. As described below, a hybrid controller including both admittance and impedance control can provide an improved operating experience. According to various implementations, the disclosed controller can advantageously provide a lower or reduced perceived inertia when compared with other controllers. In some implementations, the disclosed controller can provide improved haptic feedback and response. Further, as described below, in some implementations, the controllers described herein can prevent or reduce the likelihood of mechanical shorts (described below), which can cause erratic and unpredictable movement. These and other features and advantages of the controllers described in this application are further discussed in the following sections.


A. Hybrid Controllers


FIG. 16B is a block diagram of an implementation of a controller 102 configured to operate using both impedance and admittance control. Such a controller 102 can be referred to as a hybrid controller.


Impedance control and admittance control are two control schemes for controlling a robotic system. Under impedance control, the system measures displacements (e.g., changes in position and velocity) and outputs forces. For example, for impedance control, the system can measure how far or fast an operator moved the controller, and, based on the measurement, generate forces on the instrument (e.g., by actuating motors). Under impedance control, the operator's movement of the controller may back drive portions of the instrument. In many cases, the use of impedance control can result in a large perceived inertia. This can be because, for example, impedance control relies on the operator moving the controller. Under impedance control, the operator may have to overcome the perceived mass or inertia of the controller in order to move it, causing the controller to feel heavy. For impedance control, the operator must physically overcome most or all of the inertia in the system in order to move the controller. Other controllers have relied solely on impedance control, which can cause the systems to have higher perceived inertia or mass when compared to the controllers described herein. Because of the higher perceived inertia, operators can over-tire when using such other controllers.


Under admittance control, the system measures forces and/or torques imparted on the controller by the operator and outputs corresponding velocities and/or positions of the controller. In some respects, admittance control is the opposite of impedance control. In some implementations, the use of admittance control can advantageously result in a decrease in the perceived inertia or mass of a system. Admittance control can be used to change the dynamics of a controller that is perceived as having a high mass or inertia. In some instances, by using admittance control, the operator need not overcome all of the inertia in the system to move the controller. For example, under admittance control, when a user imparts a force on the controller, the system can measure the force and assist the user in moving the controller by driving one or more motors associated with the controller, thereby resulting in desired velocities and/or positions of the controller. Stated another way, for admittance control, a force sensor or load cell measures the force that the operator is applying to the controller and moves the controller as well as the coupled robotically enabled medical instrument 310 in a way that feels light. Admittance control may feel lighter than impedance control because, under admittance control, one can hide the perceived inertia of the controller because motors in the controller can help to accelerate the mass. In contrast, with impedance control, the user is responsible for all or substantially all mass acceleration.


As shown in the illustrated implementation in FIG. 16B, the controller 102 includes a handle 104, a gimbal 106, and a positioning platform 108. As described above, the gimbal 106 can be configured to provide one or more rotational degrees of freedom (e.g., three or four), and the positioning platform 108 can be configured to provide one or more rotational degrees of freedom (e.g., three or four). The gimbal 106 and the positioning platform 108 can allow the user to move the handle 104 in three-dimensional space and rotate the handle 104 around pitch, roll, and yaw axes. Manipulation of the handle 104 results in movement of a corresponding medical instrument. Further, the handle 104, gimbal 106, and positioning platform 108 can be configured to provide haptic feedback to the operator representative of forces imparted on the medical instrument.


As illustrated by the dashed boxes in FIG. 16B, in the controller 102, the gimbal 106 is configured for impedance control and the positioning platform 108 is configured for admittance control. Accordingly, for some implementations, the translational or positional degrees of freedom of the positioning platform 108 rely on admittance control, while the rotational degrees of freedom of the gimbal 106 rely on impedance control. As described further below, this type of hybrid controller 102 can have several advantages. In other implementations (not shown), the gimbal 106 is configured for admittance control and the positioning platform 108 is configured for impedance control. In some implementations, the gimbal 106 and the positioning platform can be both be configured for admittance control or both be configured for impedance control.


To utilize admittance control, the controller 102 includes at least one force sensor or load cell 112. The load cell 112 is configured to measure forces imparted on the controller 102 (generally, forces imparted on the handle 104) by the operator. Additionally or in the alternative, as will be described further with regard to FIGS. 18 through 25, each joint of the controller 102 may report motion information, including current speed, velocity, force and torque, including force and/or torque imparted on the joint.


With continued reference to FIG. 16B, the output signal of the load cell 112 (a measure of force) is used to provide control signals that control movement of the controller 102, such as the positioning platform 108. The robotically enabled medical instrument 310 will follow the motion of the handle 104 (e.g., by activating one or more motors in the instrument driver 314 or the robotic arm 316). In some implementations, the load cell 112 can be a three degree of freedom load cell, which measures forces in three directions.


In the illustrated implementation, the load cell 112 is positioned within the gimbal 106. Other positions for the load cell 112 are also possible. In some implementations, the load cell 112 is positioned in the positioning platform 108. In some implementations, more than one load cell 112 is included (e.g., two, three, four, or more load cells), which can be positioned in the handle 104, the gimbal 106, and/or the positioning platform 108.


In some implementations, the load cell 112 is advantageously positioned distally (closer to the handle 104) in the controller 102. This is because, in some implementations, the admittance control can be used to hide the perceived mass of the portions of the controller 102 that are located proximally of the load cell 112 (e.g., the portions of the controller 102 that are located on the opposite side of the load cell 112 from the handle 104).



FIG. 16C is a perspective view of an implementation of a controller 102. In the illustrated implementation, the controller 102 is configured to allow manipulation of one or more medical instruments. As illustrated, the controller 102 can include a pair of handles 104. In some implementations, the pair of handles 104 operates a single instrument, while in other implementations, each of the pair of handles 104 each operates its own corresponding instrument. Each handle 104 is connected to a gimbal 106. Each gimbal is connected to a positioning platform 108. In some implementations, the handle 104 is considered distal from the gimbal 106, which is considered distal to the positioning platform 108. The handle 104 and gimbal 106 are shown in greater detail in FIG. 17 and will be described below.


As shown in FIG. 16C, in the illustrated implementation, each positioning platform 108 includes a SCARA (selective compliance assembly robot arm) arm 118 having a plurality of links coupled to a column 114 by a prismatic joint 116. The prismatic joints 116 are configured to translate along the column 114 (e.g., along rails 117) to allow the handle 104 to be translated in the z-direction, providing a first degree of freedom. The SCARA arm 118 is configured to allow motion of the handle 104 in an x-y plane, providing two additional degrees of freedom. Thus, each of the positioning platforms 108 illustrated in FIG. 16C are configured to provide three degrees of positional or translational freedom and allow the operator to position the handles 104 at any position (within reach of the positioning platform) in three-dimensional (e.g., x, y, z) space.


In some implementations, the column 114 (and rails 117) extends along an axis that is aligned with the vertical direction (e.g., the z-direction as illustrated) of the workspace, which can be aligned with the direction of gravity. An advantage of this positioning platform 108 is that it can provide for gravity compensation. In other words, the prismatic joint 116 of the positioning platform 108 can maintain a constant orientation of the gimbal 106 relative to the forces of gravity.


In some implementations, the positioning platform 108 can have other configurations. For example, the positioning platform 108 need not include a prismatic joint and/or a SCARA arm in all implementations.


In some implementations, a load cell 112 (not shown in FIG. 16C) can be provided in a portion of the controller 102 (e.g., such as in the gimbal 106). The addition of the load cell 112 enables the controller to have admittance control in addition to impedance control. Under admittance control, the perceived inertia of the controller 102 can be reduced. This is because mass of the gimbal 106 and/or positioning platform can be hidden via the load cell 112. This can be because the load cell 112 can measure the forces imparted on the controller and be used to provide outputs that drive motors in the controller 102 to assist with the motion of the controller 102. The amount of mass that is hidden depends on the location of the load cell 112. In some implementations, mass that is proximal to the load cell 112 can be partly or substantially hidden, while mass that is distal to the load cell 112 will not be hidden.


In some implementations, by positioning the load cell 112 distally on the controller 102 (e.g., in the gimbal 106 shown in FIG. 16C), the mass of the gimbal 106 can be partially or substantially hidden while operating the controller 102. Likewise, the mass of the positioning platform 108 (which has a relatively higher mass than the gimbal 106) can also be partially or substantially hidden while operating the controller 102. The hidden mass advantageously results in a lower perceived inertia by a clinician. Without the load cell 112, in order to move the handle 104 in the z-direction, the operator would have to supply sufficient force to the handle 104 to lift the handle 104, the gimbal 106, and the SCARA arm 118 upward. Further, one can envision that it would require less force to move the handle in the x-y plane than to move in the z-direction. This disparity would likely result in an uneven operating experience for the operator that would make the controller 102 difficult to use. Thus, by including a load cell 112, as described herein, the controller 102 can assist the user in translating the handle 104 in the x-, y-, and z-directions and provide a much more even and controlled operating experience. In some implementations, the load cell 112 enables the positioning platform 108 to operate substantially or completely under admittance control. In contrast with the positioning platform 108, the moment of inertia of the gimbal 106 can be relatively lower. This can be because the gimbal 106 is generally much smaller than the positioning platform 108. Because of this, at least some portions of the gimbal 106 can be suitable for impedance control.


One advantage of such a hybrid impedance/admittance controller 102 as described herein is that the perceived inertia of the system can be relatively lower than systems that rely fully on impedance control. Further, the mechanical structure of the hybrid controller 102 can be simpler because the admittance control can be used to supplement and even out the movement of the system. In contrast, the mechanical structure of impedance only systems is often very complex in an effort to normalize the forces required to move the systems in the different directions and minimize perceived inertia.


In some implementations, by using a hybrid controller 102 as described herein, it is possible that the mass and inertia of the gimbal 106 can actually be increased relative to the gimbals of impedance only controllers because so much of the total mass and inertia of the controller 102 can be hidden by the admittance control of the positioning platform. Increasing the size of the gimbal can, in some implementations, allow for use of larger motors, which can allow the controller to provide stronger haptic feedback forces when compared to other systems, which necessitate the use of lightweight gimbals and motors to avoid increasing the overall mass and inertia.


As shown in FIG. 16C, the hybrid controller 102 can be viewed as a plurality of links and joints in series, e.g., as a serial link manipulator. The handle 104, the gimbal 106 and the positioning platform 108 each comprise one or more links operably coupled, with the most proximal link being adjacent the column 114 of the positioning platform 108 and the most distal link being part of the handle 104 itself. In some implementations, one or more load cells 112 (not shown in FIG. 16C) can be inserted into the controller 102 to provide admittance control of at least some portions of the controller 102. Other portions of the controller 102 can be controlled by impedance control (or in some instances, passive control) by a clinician or operator. In some implementations, links and joints that are proximal to the load cell 112 may be directly or indirectly affected by the load cell 112. Manipulation of these proximal links and joints can thus be assisted with admittance control. In some implementations, links and joints that are distal to the load cell 112 may not be affected, either directly or indirectly, by the load cell 112. Manipulation of these distal links and joints can thus be assisted with impedance control. For example, in the implementation in FIG. 19A (which is discussed in more detail below), a load cell 112 is positioned in the gimbal 106 such that distal joints 128, 130, 132 (shown in FIG. 17) may not be affected directly or indirectly by the load cell 112. In other words, the manipulation of the axes of the gimbal 106 at these joints is not based on the output of the load cell 112 directly or indirectly. These distal links and joints can be moved by impedance control. In contrast, links and joints that are proximal to the load cell 112 (such as those in the positioning platform 108) may be affected directly or indirectly by the load cell 112. In other words, the manipulation of the axes at these joints is based on the output of the load cell 112 directly or indirectly. These proximal links and joints can be moved by admittance control.


B. Gimbal for Haptic Interface Control

As mentioned above, in some implementations, a load cell 112 (or force sensor) is positioned in the gimbal 106. In some implementations, the gimbal 106 provides the rotational degrees of freedom for the controller 102 with impedance control, while the positioning platform 108 can provide the positional degrees of freedom for the controller 102 with admittance control (e.g., based on the output of the load cell 112 positioned in the gimbal 106). There are many ways the load cell 112 can be positioned within the gimbal 106. The degree that a perceived inertia of a controller 102 is reduced can be based in part on the location of the load cell 112 within the gimbal 106. Two example implementations showing a load cell 112 positioned in two different portions of a gimbal 106 are described in this section. Other implementations are also possible.



FIG. 17 is an isometric view of an implementation of a gimbal 106. As illustrated, for some implementations, the gimbal 106 is positioned at the distal end of the positioning platform 108 (only the last link of the positioning platform 108 is illustrated in FIG. 17). As used in this application, in the context of the controller 102, the term distal refers to a direction toward the handle 104 (e.g., the handle 104 is the distal-most component of the controller 102) and the term proximal refers to the opposite direction (e.g., toward the column 114, see FIG. 16C). Accordingly, a proximal end of the gimbal 106 can be attached to the distal end of the positioning platform 108. Further, the handle 104 can be positioned at the distal end of the gimbal 106.


In some implementations, the handle 104 is configured to be held by the operator. The handle 104 can be configured to simulate or mimic the medical instrument that the controller 102 is used to control. In some implementations, the handle comprises a grasper handle (e.g., a radially symmetric grasper handle), a stylus, a paddle-type handle, etc. In the illustrated implementation, the handle 104 includes two actuation arms 120 configured to provide the instrument actuation degree of freedom discussed above. While holding the handle 104, the operator can adjust an angle between the actuation arms 120 to control a corresponding angle associated with the controlled medical instrument. For example, in a case where the medical instrument is a grasper, shears, etc., the angle between the actuation arms 120 can be used to control the angle between two jaws of the grasper.


In the illustrated implementation, the gimbal 106 comprises three arms or links connected by joints. Arranged distally to proximally and as illustrated in FIG. 17, the gimbal 106 comprises a first link 122, a second link 124, and a third link 126. Arranged distally to proximally and as illustrated in FIG. 17, the gimbal 106 also comprises a first joint 128, a second joint 130, a third joint 132, and a fourth joint 134. The joints allow the various links to rotate, providing the gimbal 106 with the rotational degrees of freedom discussed above.


The handle 104 is connected to the distal end of the first link 122 by the first joint 128. The first joint 128 can be configured to allow the handle 104 to rotate relative to the first link 122. In the illustrated implementation, the first joint 128 allows the handle 104 to rotate around a roll axis 136. In some implementations, the roll axis 136 is aligned with a longitudinal axis of the handle 104. The first joint 128 can be a revolute joint.


The proximal end of the first link 122 is connected to the distal end of the second link 124 by the second joint 130. The second joint 130 can be configured to allow the handle 104 and the first link 122 to rotate relative to the second link 124. In the illustrated implementation, the second joint 130 allows the handle 104 and the first link 122 to rotate around a yaw axis 138. In some implementations, the yaw axis 138 extends through the second joint 130 and intersects with the roll axis 136 at a center point of the handle 104. The second joint 130 can be a revolute joint. As shown, for some implementations, the first link 122 comprises an L-shape. In some implementations the first link 122 is configured to have a recess formed therein for receiving the second link 124 and to permit the second link 124 to rotate relative to the first link 122.


The proximal end of the second link 124 is connected to the distal end of the third link 126 by the third joint 132. The third joint 132 can be configured to allow the handle 104, the first link 122, and the second link 124 to rotate relative to the third link 126. In the illustrated implementation, the third joint 132 allows the handle 104, the first link 122, and the second link 124 to rotate around a pitch axis 140. In some implementations, the pitch axis 140 extends through the third joint 132 and intersects with the roll axis 136 and the yaw axis 138 at the center point of the handle 104. The third joint 132 can be a revolute joint. As shown, for some implementations, the second link 124 comprises an L-shape. In some implementations, the L-shaped second link 124 is received in a recess of the L-shaped first link 122 (as shown in FIG. 17). In other implementations, the L-shaped first link 122 can be received in a recess of the L-shaped second link 124.


In the illustrated implementation, the first joint 128, the first link 122, the second joint 130, the second link 124, and the third joint 132 provide three rotational degrees of freedom allowing the rotation of the handle 104 to be adjusted in pitch, roll, and yaw. In the illustrated implementation, the gimbal 106 further includes a third link 126 and fourth joint 134 providing a redundant rotational degree of freedom. This need not be included in all implementations but can provide greater mechanical flexibility for the gimbal 106.


As shown, the distal end of the third link 126 is connected to the proximal end of the second link 124 by the third joint 132. The proximal end of the third link 126 is connected to the distal end of the positioning platform 108 by the fourth joint 134. The fourth joint 134 can be configured to allow the handle 104, the first link 122, the second link 124, and the third link 126 to rotate relative to the positioning platform 108. In the illustrated implementation, the fourth joint 134 allows the handle 104, the first link 122, the second link 124, and the third link 126 to rotate around an axis 142. In some implementations, the axis 142 is parallel to the yaw axis 138. In some implementations, the yaw axis 138 and the axis 142 are coaxial, although, as illustrated, this need not be the case in all implementations. The axis 142 (and the yaw axis 138) can be parallel to the direction of gravity to maintain the orientation of the gimbal relative to the direction of gravity as described above. The fourth joint 134 can be a revolute joint. As shown, for some implementations, the third link 126 comprises an L-shape.


C. Variable Damping for Haptic Interface Control

A haptic interface device (HID), including any of the controllers described above for controlling a robotic system, robotic arm, and/or instrument is mechanically designed with the goal of being as back-drivable as possible. Components are designed or selected to have minimal mechanical dissipative effects such as friction and damping. In this manner, the HID is designed to be transparent to the user, meaning that the user should not feel much resistance or impedance when moving the HID in the free space, thereby allowing the user to complete surgical task with minimum burden and distraction imposed by the HID.


On the other hand, having very little dissipation may have undesirable consequences. For example, it may cause the stopping distance to be very large when the handle is bumped or thrown out of the user's control. Similarly, the user may feel that the HID interface is running away or too easy to move, particularly at slow speeds.


As depicted in FIG. 18, constant virtual damping may be added through impedance control of the HID. The damping force (e.g., torque) may be calculated by multiplying the current linear (e.g., angular) velocity by a constant damping coefficient. In some instances, determining the constant level of damping to apply could be challenging and even paradoxical. For example, it has been found that while a large damping coefficient at slow speeds may be desirable to prevent the HID from feeling like it could “run away,” such a coefficient could make the system unstable at very small velocities, creating difficulty for a surgeon to move a controller. Similarly, a high damping coefficient at high velocities may diminish or defeat the back drivable capabilities of an HID. Furthermore, for different applications, the desired damping behavior can be different and even in conflict. To overcome such challenges, the subject technology includes a novel variable damping solution, which renders appropriate levels of damping resistance to the system and/or user-based input, in part, on how the HID is manipulated by the user. The control unit described herein (including, e.g., one or more processors) may apply different variable damping coefficients to the robotic user interface based on one or more variables.



FIG. 19 is a perspective view of a second implementation of an HID or controller 102. In the illustrated implementation, the controller 102 is configured to allow manipulation of one or more medical instruments, as described previously. As illustrated, the controller 102 may include one or more handles 104. According to various implementations, the controller includes two handles (as shown in FIG. 16C), of which one handle is depicted in FIG. 19. The pair of handles 104 may be configured (with other components of the robotic system) to operate a single instrument. In some implementations, each of the pair of handles 104 may operate as a respective instrument. Each handle 104 is connected to a gimbal 106. Each gimbal is connected to a positioning platform 108 which includes links 118a and 118b. In some implementations, the handle 104 is considered distal from the gimbal 106.


A difference between the depicted positioning platform 108 and that depicted in FIG. 16C is that the depicted positioning platform 108 translates in the Z direction based on movement of link 118a rather than by vertical translation of the prismatic joint 116 along column 114, while translation in the Y direction is based on movement of the platform by joint 120 rather than the lateral movement of link 118 (as shown in FIG. 16C). The links 118 are configured to translate vertically by rotation of joints 116a and 116b about axis G1 and G2, respectively, to allow the handle 104 to be translated in the z-direction, thereby providing a first degree of freedom. The arms 118 are configured to translate via joint 120 about axis G0 (and the gimbal 106 via joint 116c about axis G3) to allow motion of the handle 104 in an x-y plane, providing two additional degrees of freedom. Thus, the positioning platforms 108 illustrated in FIG. 19 are configured to provide three degrees of positional or translational freedom and allow the operator to position the handles 104 at any position (within reach of the positioning platform) in three-dimensional (e.g., x, y, z) space.


According to various implementations, the HID controller 102 may be operated under robotic impedance control, whereby a user's movement backdrives the robotic tool. Additionally or in the alternative, the HID controller 102 may be operated under admittance control, or hybrid admittance impedance control. In such implementations, the control unit may measure a force that the user is applying to the HID controller 102 and output a position of the HID controller 102. In other words, impedance control measures displacement (position and velocity) and outputs forces, whereas admittance does the opposite. Often times, admittance control feels lighter than impedance control because under admittance control, one can hide the perceived mass because motors in the haptic master (e.g., in the positioning platform) can help to accelerate a mass.


As the surgeon is using the HID to manipulate an instrument via teleoperation, the HID system is designed to be as back-drivable as possible. As described previously, the depicted components are designed or selected to have minimal mechanical dissipative effects such as friction and damping. By providing such back-drivability, the user operating the controller 102 is capable of feeling as if the medical tool being manipulated is under the user's direct control with as little resistance or impedance as possible.


In certain conditions, such as when the handle is bumped or thrown out of the user's control, or when it is too easily running away, a damping force may be provided by multiplying a linear and/or angular velocity measured by the controller with a damping modifier. Examples are provided herein with reference to use of a damping coefficient; however, the disclosed damping modifier may include any function or variable for modifying the damping of the disclosed HID or components thereof.


According to various implementations, the control unit of the disclosed robotic system incorporates an algorithm for damping (e.g., using impedance control) that has a non-constant, or variable, damping coefficient. Instead of being constant, the algorithm may determine a damping coefficient as a function of a current damping regime (discussed below) and/or system's variables that are directly measured or calculated based on other real-time measurements on the fly (e.g., a current HID velocity). This damping coefficient may be multiplied by a linear and/or angular velocity to determine a virtual damping force to apply to the HID.


In some implementations, a damping coefficient applied to the HID may remain constant, and a damping force (e.g., torque) may be calculated by multiplying a linear (angular) velocity by the constant damping coefficient, as shown FIG. 18. As will be described further, a constant or variable damping modifier may be applied to the HID generally, or one or more robotic joints (e.g., joints 116) of the HID to modify a force or torque of the joint(s). According to various implementations, the damping modifier is applied during a manipulation of the medical tool 312 and, according to various implementations, provides resistance to motion of the joint(s) or medical tool.


The damping algorithm may employ a damping function with multiple damping regimes. As an example, one damping regime may provide a relatively low amount of resistance to a user (e g, similar to a hand running through water), while a different damping regime may provide a relatively higher amount of resistance to a user (e.g., think of a hand running through molasses). Another damping regime may provide a variable amount of resistance depending on the motion information received from the HID (e.g., from the joint(s)). In some implementations, the resistance may be proportional or inversely proportional to a variable received in the motion information.


Incorporation of multiple or variable damping regimes in the disclosed system benefits the medical procedure being performed. For example, if a surgeon is driving an HID slowly, one regime may provide some degree of damping to allow the surgeon to feel they he or she is in control of very fine motion. As the surgeon starts to do larger motions, another regime may be selected to reduce the damping force, as too much damping force can cause fatigue. In other words, as the velocity of the HID increases, the damping coefficient and associated damping may be reduced.


According to various implementations, the damping algorithm executed by the control unit may determine a damping coefficient as a function of a current damping regime and/or variables directly measured or calculated based on measurements in real time. A damping function may be employed, for example, to dynamically determine the damping coefficient according to motion information received from the HID. In this regard, the received motion information may include a speed or velocity of the HID, a current position of the HID, or a force applied to the HID, or portion thereof (such one or more joints associated with the HID). Each robotic joint may, for example, report motion information to the control unit, including a speed of the joint, a current position, of the joint, or a current force or torque of the joint. In some implementations, the reported force or torque may include or be a force or torque resistive to motion of the joint or medical tool.


In some implementations, a damping function may be selected at a graphical user interface (GUI) associated with the control unit (e.g., of console 16 or 31), and then the damping coefficient(s) determined based on the motion information. In some implementations, the damping function may be selected by the control unit based on the medical procedure being undertaken. In some implementations, the control unit may determine what scenarios (e.g., avoiding instability, avoiding runaway feel, more back-drivability, avoiding over-speeding, etc.) are most relevant to a particular procedure.


Another measured variable may include the force that is applied on the HID (or on one or more joints) by a user. In one example, the force on the HID can inform the system as to the amount of grip being applied to the HID by a user, thereby informing the system of the risk of potential loss of control or drift of the HID. If the risk of undesired drift is high, selection of a damping function having a damping regime with a higher damping coefficient may be warranted.


One application of a variable damping regime (other than instrument tele-operation) is during camera control, where both the HID arms are connected by a virtual spring, to provide a steering wheel like haptic effect. The user is able to pan and roll the camera similar to maneuvering a steering wheel. Due to a very low output impedance, and also the ergonomics of a steering wheel like motion, users may tend to make unintentional roll motions while panning the camera. While adding a large virtual damping to the roll motion may prevent an unintentional rolling of the camera, it may also make it harder to intentionally roll the camera. To address this, a damping coefficient can be set high at lower velocities to prevent unintentional roll and to provide better control for finer roll motions. At higher velocities, the damping coefficient can be reduced as a positive rolling motion is detected from movement of the HID by the user, thereby providing a better camera control experience for the user.


Another example may include support assistive HID control, where it may be desirable for the HID to stably and quickly dissipate the kinetic energy to curb free of unintended motion while still allowing the user tele-operation capability. A selected damping function may include ramping the damping coefficient up quickly at low-speed, while at high-speed maintaining a high damping coefficient w/torque saturation or adjusting the damping coefficient, thereby allowing the user to still back-drive HID for continuous tele-operation.


In some implementations, a virtual or imaginary wall can be employed, which the HID is not physically able to go through. The HID may be slowed down even before it reaches the virtual wall and ends, for example, in a hard stop. Accordingly, the position of the HID can be yet another variable that triggers a different damping regime. For example, the damping coefficient(s) may be based on a current position of the HID in relation to the virtual wall. In such implementations, the damping function may determine a first damping coefficient for modifying a resistive force or torque of the robotic joint when the distance satisfies a first threshold, and determine a second damping coefficient for modifying the resistive force or torque when the distance satisfies a second threshold.



FIGS. 20A, 20B, and 20C illustrate three exemplary damping functions that select a damping coefficient based on speed, in accordance with aspects of the subject technology disclosed herein. The depicted damping functions are merely representative ways that the system can be programmed to modify the behavior of the HID in response to varying speeds, and should not be viewed as exhaustive. For example, the speed upon which the behavior is modified may be representative of the speed of the HID. In some implementations, the depicted damping function may determine damping coefficients based on other factors in addition to or that substitute for speed, such as a position of the HID or a force applied to the HID. In some implementations, the speed, position, or force used by the damping function may include a rotational speed, position, or force (or torque) of one or more respective joints within or associated with the HID.



FIG. 20A depicts a first example damping function, including four regions for selecting different damping coefficients. For the purpose of disclosure, each region may correspond to a different range of a given variable, thereby implementing a different regime for determining the damping coefficient(s). In this regard, the disclosure may use the terms “region” and “regime” interchangeably when describing how a function modifies damping of the HID or its joints (e.g., by determining the damping coefficient(s)).


In the depicted example, a first regime (Regime 1) may be employed at very low speeds. In this regard, it may be beneficial to have some damping, as this may help to prevent the system from vibrating. At some point, a higher speed is reached, and a second regime (Regime 2) may be employed to provide more damping to avoid runaway. This can be beneficial, for example, if a surgeon loses grip at this higher speed, as the higher damping will minimize drift. A third regime (Regime 3) may be employed as the speed is increased even further. In the third regime, the need for damping may actually decrease. This is because at higher speeds, surgeons tend to grip the HID harder and with a firmer grip, thereby minimizing the likelihood of uncontrolled drift. Accordingly, the damping coefficient may actually be lower in the third regime (Regime 3) than in the second regime (Regime 2).


At higher speeds, the damping coefficient may need to be increased once again. For example, at a very high speed, there may be less concern with runaway and greater concern with over speeding of the HID. If the HID moves too fast, the patient side robotic arms or instrument may not be able to follow. Accordingly, a fourth regime (Regime 4) may provide a higher damping coefficient.


As can be seen in FIG. 20A, certain regimes may select a damping coefficient that modifies the motion of the HID or robotic joint(s) proportional to the current speed or velocity of the HID or robotic joint(s) (e.g., in Regime 1), while another regime may select a damping coefficient that modifies the motion of the HID or robotic joint(s) inversely proportional to the current speed or velocity of the HID or robotic joint(s) (e.g., while transitioning between Regimes 2 and 3). The motion may be modified by the applied damping coefficient causing the force or torque of the at least one joint to change. According to various implementations, the damping modifier may be selected to cause the motion (or, e.g., a speed, force or torque of one or more joints) to remain fixed when the current speed and/or velocity is with certain ranges, as shown by the plateaus of Regimes 2, 3, and 4 of FIG. 20A.



FIG. 20B depicts a second example damping function, including a transitional regime. In some implementations, a low damping coefficient for high back drivability may be desired at low speeds (Regime A.1). On the other hand, a high damping coefficient at a higher speed may also be desirable, for example to avoid over-speeding of the HID (Regime A.3). It may not be desirable to create a sudden jump between the low damping regime (Regime A.1) and the high damping regime (Regime A.3), as this may not provide a smooth control to the user. Accordingly, the depicted damping function provides a transition damping region (Regime A.2) between the two other regimes.


The applied damping coefficient(s) may be selected to modify a force or torque of one or more robotic joints to dynamically adjust the speed of the HID. The force or torque may be, for example, modified by a fixed amount when a current speed or velocity of a portion of the robotic user interface is within a first range (corresponding to, e.g., Regime A.1), by a variable amount (e.g., increasing in the depicted implementation) when a current speed or velocity of a portion of the robotic user interface is within a second range (corresponding to, e.g., Regime A.2), and by another fixed amount when within a second range greater than the first range (corresponding to, e.g., the depicted plateau of Regime A.3).


While the depicted damping region provides for a continuous transition, in some implementations the transition may not be continuous. For example, the transition may include several subregions, each with its own damping coefficient, ultimately progressing to the high damping region (see, e.g., FIG. 23).



FIG. 20C depicts a third example damping function, including multiple transitional regimes. The depicted damping function is similar to the damping function of FIG. 20B, but includes a fourth regime with a decreasing damping coefficient. The fourth damping regime may be implemented, for example, when the HID speed is high but the surgeon has greater control over the HID, thereby warranting a lower damping coefficient. In the depicted example, when the current speed or velocity is within a fourth range, the applied damping modifier modifies the motion of the HID (e.g., by modifying the force or torque of one or more joints) according to a logarithmic decay.



FIG. 21 depicts an example process for variable damping of a hand-controlled input device, providing damped control of a medical tool, in accordance with aspects of the subject technology disclosed herein. For explanatory purposes, the various blocks of example process 200 are described herein with reference to the components and/or processes described herein. The one or more of the blocks of process 200 may be implemented, for example, by one or more computing devices including, for example, software executed by the control unit of the previously described robotics system. In some implementations, one or more of the blocks may be implemented based on one or more machine learning algorithms. In some implementations, one or more of the blocks may be implemented apart from other blocks, and by one or more different processors or devices. Further for explanatory purposes, the blocks of example process 200 are described as occurring in serial, or linearly. However, multiple blocks of example process 200 may occur in parallel. In addition, the blocks of example process 200 need not be performed in the order shown and/or one or more of the blocks of example process 200 need not be performed.


In the depicted example, the control unit of the disclosed robotic system robotically facilitates movement of a medical tool through a three-dimensional space based on a manipulation of a robotic user interface (202). The robotic interface (e.g., HID) includes (as depicted in FIG. 19) one or more links and one or more joints that cooperate to facilitate remote manipulation of the medical tool, for example, based on a user's input.


Motion information is received from the one or more joints (204). According to various implementations, each joint may report its speed and position (e.g., angular speed and angular position) to the control unit. In some implementations, a joint may report an angular force or torque imparted by or applied to the joint. In some implementations, the motion information may include a magnitude of a force applied to the robotic user interface or a speed of the robotic user interface. In some implementations, the motion information includes a current position of the robotic user interface.


According to various implementations, the control unit may receive the motion information from each joint and determine a velocity vector for the robotic interface as a whole, or for a respective joint or other portion of the interface (e.g., of gimbal 106 or handle 104 or a respective link or links 116). In some implementations, the motion information may include a vector or force contribution associated with each joint, and the velocity vector determined based on the collective contributions. The velocity vector may correspond to a path taken by robotic interface through the three-dimensional space.


Based on the received motion information, a damping modifier is determined from a plurality of different damping modifiers based on the received motion information (206). According to various implementations, determining the damping modifier may include determining a damping function such as from those previously described with regard to FIGS. 20A-20C, which then may determine a damping coefficient based on a received variable of the motion information. In some implementations, the damping modifier includes a damping coefficient determined based on a measured parameter, as previously described.


In some implementations, a damping coefficient is selected based on a damping function comprising (i) a first damping region responsive to the velocity vector satisfying a first threshold and (ii) a second damping region responsive to the velocity vector satisfying a second threshold. In some implementations, a damping coefficient may be determined by indexing a plurality of damping coefficients (e.g., stored in a database) by a speed or velocity of at least a portion of the robotic user interface to obtain a damping coefficient that corresponds to the speed or velocity. In some implementations in which a velocity vector is derived, the damping coefficient(s) may be determined based on a magnitude of the velocity vector. As depicted in FIGS. 20A-20C, the damping coefficient(s) may be in a continuous non-constant relationship responsive to the given parameter.


The determined damping modifier is applied to at least one joint of the one or more joints to modify a force or torque of the at least one joint during a manipulation of the medical tool (208). The damping modifier may, for example, be applied to modify an angular speed of at least one of the joints, and may modify motion of the robotic user interface including, in some implementations, a resistance to motion of the robotic user interface or portion thereof.


In some implementations, the applied damping modifier causes the force or torque of the at least one joint to change proportional to a current speed or velocity of a portion of the robotic user interface when the current speed or velocity is within a first range, and to change inversely proportional to the current speed or velocity when the current speed or velocity is within a second range. The varying damping coefficient(s) of FIG. 20A provide examples of such an implementation.


On the other hand, as seen in the depicted examples of FIGS. 20A-20C, the applied damping modifier may cause the force or torque of one or more joints to remain fixed when within a third range. In some implementations, the applied damping modifier may modify the force or torque of the joint(s)) by a variable amount when a current speed or velocity of a portion of the robotic user interface is within a first range, and by a fixed amount when within a second range greater than the first range. In some implementations, similar to that seen in FIG. 20C, an applied damping modifier may modify the force or torque according to a logarithmic decay when the current speed or velocity is within a fourth velocity range.


According to various implementations, the foregoing cycle of receiving motion information (e.g., from the joints), and determining and applying a damping modifier may be continuously repeated. For example, the control unit may process multiple, if not hundreds, of cycles per second. In this manner, the damping may be adjusted as the robotic interface is moved, with the various changes in resistance largely imperceivable by the user, thereby improving the motion of the interface and enhancing the user's experience.


C. Variable Damping for Robotic Movement of a Medical Tool

While the previous section addressed providing variable damping regimes for at an HID or controller, the present section addresses providing variable damping regimes when manually controlling movement of a robotic arm or joint. FIG. 22 depicts a first example virtual haptic wall for a robotic joint 24, including a haptic wall damping region 220, in accordance with aspects of the subject technology disclosed herein. The robotic joint 24 may, for example, be part of a robotic arm 12, as described previously with regard to FIG. 2.


According to various implementations, a virtual haptic wall 220 is a virtual haptic force or torque acting close to predetermined joint limits 222, and which may be applied to prevent a joint from reaching the joint limits According to various implementations, a robot arm may be configured to operate under impedance control, during which the haptic wall 220 may be employed. Impedance mode (which is a control mode with gravity and friction compensation) may allow a user to move robotic joints by directly pulling or pushing the robot arm. However, when the joint hits the virtual haptic wall with high speed, the user may be able to over-power the haptic wall and move the joint beyond the joint limits causing a fault. At this point, the user may not be able to further use the robot arm until the fault is cleared. The subject technology reduces the entry speed to the haptic wall in order to avoid this over-powering.


The depicted example illustrates how a speed of joint in a robotic arm 12, or how a resistance to motion of a medical tool by the robotic arm may be modified based on a joint position 224. One or more motion limits on the joint 24 are determined. According to various implementations, each robotic joint 24 may include two limits—one for each direction of rotation. As the joint moves or rotates (e.g., an angular rotation), position information is provided to the control unit. The control unit may be preprogrammed with respective joint limit(s) 222 and may compare the current position information received from each joint 24 to its respective limit. Accordingly, the control unit may determine a distance between the current position reported by the robotic joint 24 to the motion limit Based on the distance, a damping coefficient may be determined and applied to the robotic joint to modify a force or torque of the robotic joint 24. In this manner, resistance to motion of the medical tool by the robotic arm 24 is affected. According to various implementations, no damping coefficient may be determined until the joint moves (e.g., rotates) past a predetermined haptic wall entry position 226.



FIG. 23 depicts a second example virtual haptic wall for a robotic joint 24, including a haptic wall damping region 230 and a pre-haptic wall damping region 232, in accordance with aspects of the subject technology disclosed herein. According to various implementations, the maximum entry speed to the haptic wall 220 is limited by varying the damping coefficient 234 depending on the joint position and speed. In terms of joint position, when the rotational position of the joint 24 is far from the haptic wall entry position 226, the damping coefficient(s) 234 applied to the joint may be low. However, as the joint moves closer to the haptic wall entry position 226, the damping coefficient 234 and the resulting damping force or torque may become higher, which slows down the joint speed.


In terms of speed, a lower damping coefficient may be applied at a lower speed, and a higher damping coefficient may be applied at a higher speed. In this regard, the joint may be easier to move at low and medium speeds while still limiting the maximum joint speed, including the entry speed to the haptic wall. FIG. 24 illustrates an example damping function for damping movement of a joint, including damping within a pre-haptic wall damping region 232 and damping within a haptic wall damping region 220, in accordance with aspects of the subject technology disclosed herein. In the depicted example, the pre-haptic wall damping region 232, the joint motion is damped based on a transitional regime 240. The adjustment to the damping coefficient may be continuous and/or linear, as described previously with regard to FIGS. 20A-20C, or may include one or more different linear adjustments, as illustrated in FIG. 24. In the haptic wall damping region 220, the joint motion may be damped by a fixed amount 242, as described previously.



FIG. 25 depicts an example process for damped manipulation of a medical tool, in accordance with aspects of the subject technology disclosed herein. For explanatory purposes, the various blocks of example process 300 are described herein with reference to the components and/or processes described herein. The one or more of the blocks of process 300 may be implemented, for example, by one or more computing devices including, for example, software executed by the control unit of the previously described robotics system. In some implementations, one or more of the blocks may be implemented based on one or more machine learning algorithms. In some implementations, one or more of the blocks may be implemented apart from other blocks, and by one or more different processors or devices. Further for explanatory purposes, the blocks of example process 300 are described as occurring in serial, or linearly. However, multiple blocks of example process 300 may occur in parallel. In addition, the blocks of example process 300 need not be performed in the order shown and/or one or more of the blocks of example process 300 need not be performed.


In the depicted example, a robotic joint 24 configured for use with a robotic arm 12 is provided (302). As described previously, the robotic arm 12 includes one or more links and one or more joints (including the robotic joint) that cooperate to move a medical tool.


As the medical tool is moved within a three-dimensional space, a current position of the robotic joint is received by the control unit (304). According to various implementations, the control unit may also receive and/or determine a current velocity of the robotic joint 24. As described previously, each joint 24 may report its speed and position (e.g., angular speed and angular position) to the control unit. Additionally or in the alternative, a joint 24 may report an angular force or torque imparted by or applied to the joint.


The control unit then determines a distance between the current position of the robotic joint 24 and a first motion limit of the robotic joint (306). As an example, the current position may be a rotational position of the robotic joint 24, and the distance may be a rotational distance of the joint. In some implementations, a robotic joint 24 is associated with two respective motion limits, each limit associated with a respective rotational direction of the robotic joint.


The control unit then applies a damping function to the robotic joint 24 based on the distance to modify a resistance to motion of the medical tool (308). In this manner, damped control of the joint may be obtained. According to various implementations, the damping function causes (e.g., by application of a damping coefficient) an increase in resistive force or torque to motion of the robotic joint. In some implementations wherein a joint velocity is received or determined, the damping function applied to the robotic joint may also be based on the current velocity.


Similar to other previously described implementations, the control unit may determine a first damping coefficient for modifying a resistive force or torque to motion of the robotic joint when the distance satisfies a first threshold; and determine a second damping coefficient for modifying the resistive force or torque when the distance satisfies a second threshold.


Each rotational direction of the robotic joint 24 may be associated with multiple damping regions, each damping region of a respective rotational direction determining a different damping coefficient for modifying a force or torque of the robotic joint. For example, the damping function may include a first damping region that modifies the force or torque of the joint 24 by a variable amount responsive to a current position of the joint 24 satisfying a first threshold, and a second damping region that modifies the force or torque according to a fixed amount responsive to the current position of the joint 24 satisfying a second threshold.


As described with regard to FIGS. 23 and 24, the applied damping function may be based on a current position of the robotic arm in relation to a virtual wall, and may select the damping coefficient(s) based on the position of the joint being within one or more damping regions leading up to the virtual wall, modifying the force or torque differently in each damping region. Accordingly, the damping function may begin to reduce the velocity of the joint 24 upon reaching a pre-haptic limit 232 to a virtual wall. The damping function may vary a damping coefficient 234 as the joint 24 moves between the pre-haptic limit 232 and the virtual wall 226. With brief reference to FIG. 23, the damping coefficient 234 may increase as the joint moves from the pre-haptic limit toward the virtual wall 226. The damping coefficient 234 may then remain constant as the joint 24 moves beyond the virtual wall 226. In some implementations, the damping function may include a hard stop at a haptic wall limit 222.


In some implementations, the damping function determines a damping coefficient based on a velocity of the robotic arm, and the damping function may vary the damping coefficient as the velocity of the robotic arm increases. Similar to previously described implementations, a velocity vector may be determined, for example, from force, position, and/or velocity speed contributions associated with each joint. The velocity vector may correspond to a path taken by robotic interface through the three-dimensional space.


Many of the above-described example processes 200 and 300, and related features and applications, may also be implemented as software processes that are specified as a set of instructions recorded on a computer readable storage medium (also referred to as computer readable medium), and may be executed automatically (e.g., without user intervention). When these instructions are executed by one or more processing unit(s) (e.g., one or more processors, cores of processors, or other processing units), they cause the processing unit(s) to perform the actions indicated in the instructions. Examples of computer readable media include, but are not limited to, CD-ROMs, flash drives, RAM chips, hard drives, EPROMs, etc. The computer readable media does not include carrier waves and electronic signals passing wirelessly or over wired connections.


The term “software” is meant to include, where appropriate, firmware residing in read-only memory or applications stored in magnetic storage, which can be read into memory for processing by a processor. Also, in some implementations, multiple software aspects of the subject disclosure can be implemented as sub-parts of a larger program while remaining distinct software aspects of the subject disclosure. In some implementations, multiple software aspects can also be implemented as separate programs. Finally, any combination of separate programs that together implement a software aspect described here is within the scope of the subject disclosure. In some implementations, the software programs, when installed to operate on one or more electronic systems, define one or more specific machine implementations that execute and perform the operations of the software programs.


A computer program (also known as a program, software, software application, script, or code) can be written in any form of programming language, including compiled or interpreted languages, declarative or procedural languages, and it can be deployed in any form, including as a stand-alone program or as a module, component, subroutine, object, or other unit suitable for use in a computing environment. A computer program may, but need not, correspond to a file in a file system. A program can be stored in a portion of a file that holds other programs or data (e.g., one or more scripts stored in a markup language document), in a single file dedicated to the program in question, or in multiple coordinated files (e.g., files that store one or more modules, sub programs, or portions of code). A computer program can be deployed to be executed on one computer or on multiple computers that are located at one site or distributed across multiple sites and interconnected by a communication network.


3. Implementing Systems and Terminology.

Implementations disclosed herein provide systems, methods and apparatus for robotically enabled medical systems. Various implementations described herein include controllers for the robotically enabled medical systems.


It should be noted that the terms “couple,” “coupling,” “coupled” or other variations of the word couple as used herein may indicate either an indirect connection or a direct connection. For example, if a first component is “coupled” to a second component, the first component may be either indirectly connected to the second component via another component or directly connected to the second component.


The position estimation and robotic motion actuation functions described herein may be stored as one or more instructions on a processor-readable or computer-readable medium. The term “computer-readable medium” refers to any available medium that can be accessed by a computer or processor. By way of example, and not limitation, such a medium may comprise random access memory (RAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory, compact disc read-only memory (CD-ROM) or other optical disk storage, magnetic disk storage or other magnetic storage devices, or any other medium that can be used to store desired program code in the form of instructions or data structures and that can be accessed by a computer. It should be noted that a computer-readable medium may be tangible and non-transitory. As used herein, the term “code” may refer to software, instructions, code or data that is/are executable by a computing device or processor.


The methods disclosed herein comprise one or more steps or actions for achieving the described method. The method steps and/or actions may be interchanged with one another without departing from the scope of the claims. In other words, unless a specific order of steps or actions is required for proper operation of the method that is being described, the order and/or use of specific steps and/or actions may be modified without departing from the scope of the claims.


As used herein, the term “plurality” denotes two or more. For example, a plurality of components indicates two or more components. The term “determining” encompasses a wide variety of actions and, therefore, “determining” can include calculating, computing, processing, deriving, investigating, looking up (e.g., looking up in a table, a database or another data structure), ascertaining and the like. Also, “determining” can include receiving (e.g., receiving information), accessing (e.g., accessing data in a memory) and the like. Also, “determining” can include resolving, selecting, choosing, establishing and the like.


The phrase “based on” does not mean “based only on,” unless expressly specified otherwise. In other words, the phrase “based on” describes both “based only on” and “based at least on.”


As used herein, the term “approximately” or “about” refers to a range of measurements of a length, thickness, a quantity, time period, or other measurable value. Such range of measurements encompasses variations of +/−10% or less, preferably +/−5% or less, more preferably +/−1% or less, and still more preferably +/−0.1% or less, of and from the specified value, in so far as such variations are appropriate in order to function in the disclosed devices, systems, and techniques.


The previous description of the disclosed implementations is provided to enable any person skilled in the art to make or use the present invention. Various modifications to these implementations will be readily apparent to those skilled in the art, and the generic principles defined herein may be applied to other implementations without departing from the scope of the invention. For example, it will be appreciated that one of ordinary skill in the art will be able to employ a number of corresponding alternative and equivalent structural details, such as equivalent ways of fastening, mounting, coupling, or engaging tool components, equivalent mechanisms for producing particular actuation motions, and equivalent mechanisms for delivering electrical energy. Thus, the present invention is not intended to be limited to the implementations shown herein but is to be accorded the widest scope consistent with the principles and novel features disclosed herein.


Some embodiments or implementations are described with respect to the following clauses:


Clause 1. A system for damped manipulation of a medical tool, comprising:

    • a robotic arm having one or more links and one or more joints that cooperate to move the medical tool; and
    • a control unit configured to:
    • receive a position and a velocity of a first joint of the one or more joints;
    • apply a damping function to the first joint based on the received position or velocity to modify a force or torque of the first joint; and
    • vary the damping function applied to the first joint based on the position or velocity when the position or velocity changes while the medical tool is moved.


      Clause 2. The system of clause 1, wherein the damping function is based on a current position of the robotic arm in relation to a virtual wall.


      Clause 3. The system of clause 2, wherein the damping function causes a reduction in velocity of the first joint upon reaching a pre-haptic limit to a virtual wall.


      Clause 4. The system of clause 3, wherein the damping function varies a damping coefficient as the first joint moves between the pre-haptic limit and the virtual wall.


      Clause 5. The system of clause 4, wherein the damping coefficient increases as the first joint moves from the pre-haptic limit toward the virtual wall.


      Clause 6. The system of clause 4 or 5, wherein the damping coefficient remains constant as the first joint moves beyond the virtual wall.


      Clause 7. The system of any of clauses 1-6, wherein the damping function determines a damping coefficient based on a velocity of the robotic arm.


      Clause 8. The system of clause 7, wherein the damping function varies the damping coefficient as the velocity of the robotic arm increases.


      Clause 9. The system of any of clauses 1-8, wherein the robotic arm is capable of impedance control.


      Clause 10. The system of any of clauses 1-9, wherein the damping function comprises a first damping region and a second damping region selectable for modifying the force or torque of the first joint based on a current position or speed of the first joint, the first damping region modifying the force or torque differently than the second damping region.


      Clause 11. The system of any of clauses 1-9, wherein the damping function comprises (i) a first damping region that modifies the force or torque of the first joint by a variable amount responsive to a current position of the first joint satisfying a first threshold and (ii) a second damping region that modifies the force or torque according to a fixed amount responsive to the current position of the first joint satisfying a second threshold.


      Clause 12. A system for damped manipulation of a medical tool, comprising:
    • a robotic joint configured for use with a robotic arm having one or more links and one or more joints that cooperate to move the medical tool; and
    • a control unit configured to:
    • receive, as the medical tool is moved within a three-dimensional space, a current position of the robotic joint;
    • determine a distance between the current position of the robotic joint and a first motion limit of the robotic joint; and
    • apply a damping function to the robotic joint based on the distance to modify a resistance to motion of the medical tool.


      Clause 13. The system of clause 12, wherein the control unit is further configured to: determine a current velocity of the robotic joint; and vary the damping function applied to the robotic joint based on the current velocity and the current position.


      Clause 14. The system of clause 12 or 13, wherein the damping function determines a first damping coefficient for modifying a resistive force or torque to motion of the robotic joint when the distance satisfies a first threshold and a second damping coefficient for modifying the resistive force or torque when the distance satisfies a second threshold.


      Clause 15. The system of any of clauses 12-14, wherein the distance is a rotational distance and the current position is a rotational position, and wherein the damping function causes an increase in resistive force or torque to motion of the robotic joint.


      Clause 16. The system of any of clauses 12-15, wherein the robotic joint is associated with two respective motion limits, each limit associated with a respective rotational direction of the robotic joint.


      Clause 17. The system of clause 16, wherein each rotational direction of the robotic joint is associated with multiple damping regions, each damping region of a respective rotational direction determining a different damping coefficient for modifying a force or torque of the robotic joint.


      Clause 18. A method for damped manipulation of a medical tool, comprising: providing a robotic joint configured for use with a robotic arm comprising one or more links and one or more joints that cooperate to move the medical tool;
    • receiving, as the medical tool is moved within a three-dimensional space, a current position of the robotic joint;
    • determining a distance between the current position of the robotic joint and a first motion limit of the robotic joint; and
    • applying a damping function to the robotic joint based on the distance to modify a resistance to motion of the medical tool.


      Clause 19. The method of clause 18, further comprising: determining a current velocity of the robotic joint; and varying the damping function applied to the robotic joint based on the current velocity and the current position.


      Clause 20. The method of clause 18 or 19, wherein determining the damping function includes:
    • determining a first damping coefficient for modifying a resistive force or torque to motion of the robotic joint when the distance satisfies a first threshold; and
    • determining a second damping coefficient for modifying the resistive force or torque when the distance satisfies a second threshold.

Claims
  • 1. A system for damped manipulation of a medical tool, comprising: a robotic arm having one or more links and one or more joints that cooperate to move the medical tool; anda control unit configured to: receive a position and a velocity of a first joint of the one or more joints;apply a damping function to the first joint based on the received position or velocity to modify a force or torque of the first joint; andvary the damping function applied to the first joint based on the position or velocity when the position or velocity changes while the medical tool is moved.
  • 2. The system of claim 1, wherein the damping function is based on a current position of the robotic arm in relation to a virtual wall.
  • 3. The system of claim 2, wherein the damping function causes a reduction in velocity of the first joint upon reaching a pre-haptic limit to a virtual wall.
  • 4. The system of claim 3, wherein the damping function varies a damping coefficient as the first joint moves between the pre-haptic limit and the virtual wall.
  • 5. The system of claim 4, wherein the damping coefficient increases as the first joint moves from the pre-haptic limit toward the virtual wall.
  • 6. The system of claim 4, wherein the damping coefficient remains constant as the first joint moves beyond the virtual wall.
  • 7. The system of claim 1, wherein the damping function determines a damping coefficient based on a velocity of the robotic arm.
  • 8. The system of claim 7, wherein the damping function varies the damping coefficient as the velocity of the robotic arm increases.
  • 9. The system of claim 1, wherein the robotic arm is capable of impedance control.
  • 10. The system of claim 1, wherein the damping function comprises a first damping region and a second damping region selectable for modifying the force or torque of the first joint based on a current position or speed of the first joint, the first damping region modifying the force or torque differently than the second damping region.
  • 11. The system of claim 1, wherein the damping function comprises (i) a first damping region that modifies the force or torque of the first joint by a variable amount responsive to a current position of the first joint satisfying a first threshold and (ii) a second damping region that modifies the force or torque according to a fixed amount responsive to the current position of the first joint satisfying a second threshold.
  • 12. A system for damped manipulation of a medical tool, comprising: a robotic joint configured for use with a robotic arm having one or more links and one or more joints that cooperate to move the medical tool; anda control unit configured to: receive, as the medical tool is moved within a three-dimensional space, a current position of the robotic joint;determine a distance between the current position of the robotic joint and a first motion limit of the robotic joint; andapply a damping function to the robotic joint based on the distance to modify a resistance to motion of the medical tool.
  • 13. The system of claim 12, wherein the control unit is further configured to: determine a current velocity of the robotic joint; andvary the damping function applied to the robotic joint based on the current velocity and the current position.
  • 14. The system of claim 12, wherein the damping function determines a first damping coefficient for modifying a resistive force or torque to motion of the robotic joint when the distance satisfies a first threshold and a second damping coefficient for modifying the resistive force or torque when the distance satisfies a second threshold.
  • 15. The system of claim 12, wherein the distance is a rotational distance and the current position is a rotational position, and wherein the damping function causes an increase in resistive force or torque to motion of the robotic joint.
  • 16. The system of claim 12, wherein the robotic joint is associated with two respective motion limits, each limit associated with a respective rotational direction of the robotic joint.
  • 17. The system of claim 16, wherein each rotational direction of the robotic joint is associated with multiple damping regions, each damping region of a respective rotational direction determining a different damping coefficient for modifying a force or torque of the robotic joint.
  • 18. A method for damped manipulation of a medical tool, comprising: providing a robotic joint configured for use with a robotic arm comprising one or more links and one or more joints that cooperate to move the medical tool;receiving, as the medical tool is moved within a three-dimensional space, a current position of the robotic joint;determining a distance between the current position of the robotic joint and a first motion limit of the robotic joint; andapplying a damping function to the robotic joint based on the distance to modify a resistance to motion of the medical tool.
  • 19. The method of claim 18, further comprising: determining a current velocity of the robotic joint; andvarying the damping function applied to the robotic joint based on the current velocity and the current position.
  • 20. The method of claim 18, wherein determining the damping function includes: determining a first damping coefficient for modifying a resistive force or torque to motion of the robotic joint when the distance satisfies a first threshold; anddetermining a second damping coefficient for modifying the resistive force or torque when the distance satisfies a second threshold.
CROSS-REFERENCE TO RELATED APPLICATIONS

This present application is a continuation of International Patent Application PCT/IB2022/056020 filed Jun. 28, 2022 and entitled “SYSTEM AND METHOD FOR DAMPED MANIPULATION OF A MEDICAL TOOL,” which claims priority to U.S. Provisional Application No. 63/217,219 filed Jun. 30, 2021 and entitled, “SYSTEM AND METHOD FOR DAMPED MANIPULATION OF A MEDICAL TOOL,” both of which are incorporated herein by reference in their entirety for all purposes.

Provisional Applications (1)
Number Date Country
63217219 Jun 2021 US
Continuations (1)
Number Date Country
Parent PCT/IB2022/056020 Jun 2022 US
Child 18400724 US