The subject technology generally relates to robotics and surgical systems, and more specifically, to controlling the grip force or opening force of surgical tools such as wrist jaws of robotically-assisted surgical systems.
Minimally-invasive surgery, MIS, such as laparoscopic surgery, uses techniques that are intended to reduce tissue damage during a surgical procedure. Laparoscopic procedures typically call for creating a number of small incisions in the patient, e.g., in the abdomen, through which several surgical tools such as an endoscope, a scalpel, a grasper, and a needle, are then inserted into the patient. A gas is injected into the abdomen which insufflates the abdomen thereby providing more space around the tips of the tools, making it easier for the surgeon to see (via the endoscope) and manipulate tissue at the surgical site. MIS can also be performed using a robotic system in which the surgical tools are operatively attached to the distal ends of robotic arms, and a control system actuates the arm and its attached tool so that the latter mimics the movements and tool specific commands of a user input device (UID) as the latter is being manipulated by a surgeon in their hand.
Surgical tools may include a robotic wrist supporting a pair of opposing jaws. The wrist and the jaws may move in multiple degrees-of-freedom as controlled by commands from the remote operator to perform grasping, cutting, suturing, and other surgical tasks. For example, actuators in a tool drive of the robotic arm may drive multi-axial motions (e.g. pitch and yaw) of the wrist jaws to pivot, open, close the jaws, or to control the grip force or opening force between the jaws while moving the wrist to any angular position. The jaws may grasp patient tissue, hold a cutting instrument, etc. Precise control of the grip force or opening force when closing or opening the jaws is critical to prevent damage to the tissue or to ensure precision cutting by the instrument. In addition, the jaws may operate in a positional mode in which the angle between the pair of jaws are commanded to a desired jaw angle and a force mode in which the jaws are commanded to apply a desired grip force. A smooth transition between the positional mode and the force mode minimizes undesirable sudden changes in the grip force that may cause an accidental drop of any object being grasped.
A system and method is disclosed for limiting the grip force generated by closing robotic wrist jaws while operating in a position control mode in which the jaws are commanded to a desired jaw angle prior to being commanded to generate a grip force. In the position control mode, or simply position mode, the desired jaw angle is above a threshold that corresponds to an angle at which both jaws are just simultaneously in contact with an object between the jaws or, if there is no object to grasp, when the jaws begin to touch each other. When the desired jaw angle is below the threshold, the wrist jaws are operating in a force control mode, or simply force mode, and the desired jaw angle is translated into a desired grip force. The disclosed system and method limits the maximum amount of grip force when the jaws are closing in the position mode to prevent damage to tissue that may be grasped by the jaws. The grip force may be estimated or measured. A feedback loop may analyze the desired jaw angle and the measured grip force to determine if the jaws are closing in the position mode and if the measured grip force exceeds a pre-specified maximum grip force threshold. If so, the feedback loop may calculate a grip force error to limit the measured grip force to the pre-specified maximum grip force threshold.
In another aspect, a system and method is disclosed for achieving a minimum jaw opening force by the wrist jaws when operating in the position mode. Maintaining a minimum jaw opening force while the jaws are opening in the position mode helps the jaws to overcome resistance that may be preventing the jaws from opening to the desired jaw angle. The opening force representing the jaw opening force and the jaw angle may be measured or estimated. A feedback loop may analyze the desired jaw angle, the estimated jaw angle, and the measured jaw opening force to determine if the jaws are opening in the position mode and if the measured jaw opening force is below a pre-specified minimum opening force threshold. If so, the feedback loop may calculate a jaw opening force error to maintain the jaw opening force above the pre-specified minimum opening force threshold.
In another aspect, a system and method is disclosed for achieving a smooth transition in the grip force when the wrist jaws transition between the position mode and the force mode. A smooth transition from the position mode to the force mode and vice versa minimizes undesired sudden changes in the grip force that may cause the wrist jaws to accidentally drop an object being grasped when the jaws traverse through the point of discontinuity between the two modes. In one embodiment, in order to transition from the position mode to the force mode, a debouncing strategy may be used to ensure that the desired jaw angle is smaller than the threshold between the position and force modes for a pre-specified minimum duration before the wrist jaws transition to the force mode.
In one embodiment, the system and method may determine the desired grip force from the desired jaw angle and may measure or estimate the grip force. A feedback loop may analyze the desired jaw angle, the desired grip force, and the measured grip force to determine if the jaws are transitioning from the position mode to the force mode, if an error between the measured grip force and the desired grip force is larger than a pre-specified maximum force error and if the desired grip force is increasing. If so, the feedback loop may set the desired grip force as the current measured grip force minus a pre-specified margin when the jaws transition from the position mode to the force mode.
In one embodiment, the feedback loop may analyze the desired jaw angle, the desired grip force as determined from the desired jaw angle, and the measured grip force to determine if the jaws are transitioning from the force mode to the position mode, if the desired grip force is smaller than a minimum grip force value, if the desired grip force is decreasing, and if the absolute value of the error between the measured grip force and the minimum grip force is smaller than a pre-specified maximum force error. If so, the feedback loop may set the desired grip force to the minimum grip force value when the jaws transition from the force mode to the position mode.
A method for controlling grip force generated by jaws of a gripper tool is disclosed. The method may include determining that the jaws are transitioning between the position mode and the force mode based on changes of a desired jaw angle between the jaws. During the position mode the jaws are driven with a commanded jaw angle, which may be the desired jaw angle. During the force mode, the jaws are driven with commanded grip force that is determined based on the desired jaw angle having a negative value. The method also includes determining based on the commanded grip force and the measured grip force whether to adjust the commanded grip force during the transition between the position mode and the force mode. If so, the method further includes adjusting the commanded grip force to reduce changes in the measured grip force that is otherwise determined based on the desired jaw angle during the transition.
The accompanying drawings are provided together with the following description of various aspects and embodiments of the subject technology for a better comprehension of the invention. The drawings and the embodiments are illustrative of the invention, and are not intended to limit the scope of the invention. It is understood that a person of ordinary skill in the art may modify the drawings to generate drawings of other embodiments that would still fall within the scope of the invention.
Examples of various aspects and variations of the subject technology are described herein and illustrated in the accompanying drawings. The following description is not intended to limit the invention to these embodiments, but rather to enable a person skilled in the art to make and use this invention.
Disclosed are feedback control systems and methods for controlling the grip force or opening force of end effectors of surgical robotic arms such as wrist jaws. Wrist jaws may be coupled to actuators of a tool drive through cables for effecting multi-axial motions of the wrist jaws. The feedback control system may command the wrist jaw to a pitch angle, a yaw angle, and a jaw angle between the jaws. When the commanded jaw angle is above a threshold, also referred to as a threshold for detent, the wrist jaws may operate in the position mode for moving the wrist jaws to a commanded position and orientation. The commanded jaw angle may also be referred to as the desired jaw angle. When the commanded jaw angle is below the threshold for detent, the wrist jaws may operate in the force mode from the position and orientation of the position mode and a desired grip force is generated by a grip force controller based on the commanded jaw angle. In one embodiment, the feedback control system may limit the maximum grip force when the jaws are closing in the position mode by analyzing the desired jaw angle and measuring or estimating the grip force as actually applied to determine if the measured grip force exceeds a pre-specified maximum grip force threshold. If so, the feedback control system may calculate a grip force error to adjust the grip force so that the measured grip force is limited to the pre-specified maximum grip force threshold.
In one embodiment, the feedback control system may maintain the minimum jaw opening force when the jaws are opening in the position mode. The feedback control system may measure or estimate the jaw angle as actually applied. The feedback control system may also measure or estimate the grip force or opening force of the jaws as actually applied. By analyzing the desired jaw angle, the measured jaw angle and the measured jaw opening force, the feedback control system may determine if the jaws are in the position mode, the difference between the desired jaw angle and the estimated jaw angle is larger than a threshold, and if the measured jaw opening force is smaller than a pre-specified minimum opening force threshold. If so, feedback control system may calculate an opening force error to adjust the grip force or opening force to maintain the measured jaw opening force above the pre-specified minimum opening force threshold.
In one embodiment, the feedback control system may use a debouncing algorithm to prevent the wrist jaws from oscillating between the position mode and the force mode when the jaw angle is set around detent. The feedback control system may determine if the desired jaw angle is smaller than the threshold for detent for a pre-specified duration. If so, the feedback control system may switch the wrist jaws from the position mode to the force mode. In one embodiment, the debouncing algorithm may be one-sided so that the wrist jaws may transition back to the position mode as soon as the desired jaw angle is larger than or equal to the threshold.
In one embodiment, the feedback control system may minimize undesired sudden changes in the grip force when transitioning between the position mode and the force mode. The grip force controller may calculate the current command for a desired grip force from the desired jaw angle. The feedback control system may measure or estimate the grip force as actually applied. The feedback control system may analyze the desired jaw angle, the desired grip force, and the measured grip force to determine if the jaws are transitioning from the position mode to the force mode and if an error between the measured grip force and the desired grip force is larger than a pre-specified maximum force error and if the desired grip force is increasing. If so, the feedback control system may set the grip force as the measured grip force minus a pre-specified margin when transitioning from the position mode to the force mode.
In one embodiment, the feedback control system may analyze the desired jaw angle, the desired grip force, and the measured grip force to determine if the jaws are transitioning from the force mode to the position mode, if the desired grip force is smaller than a pre-specified minimum grip force value, if the desired grip force is decreasing and if the absolute value of the error between the measured grip force and the minimum grip force is smaller than a pre-specified maximum force error. If so, the feedback control system may set the grip force to the pre-specified minimum grip force value when transitioning from the force mode to the position mode. In one embodiment, the pre-specified minimum grip force value may be set to 3N.
Each surgical tool 7 may be manipulated manually, robotically, or both, during the surgery. For example, the surgical tool 7 may be a tool used to enter, view, or manipulate an internal anatomy of the patient 6. In one aspect, the surgical tool 7 is a grasper such as wrist jaws that can grasp tissue of the patient. The surgical tool 7 may be configured to be controlled manually by a bedside operator 8, robotically via actuated movement of the surgical robotic arm 4 to which it is attached, or both. The robotic arms 4 are shown as being table-mounted but in other configurations the arms 4 may be mounted to a cart, the ceiling or a sidewall, or to another suitable structural support.
A remote operator 9, such as a surgeon or other human operator, may use the user console 2 to remotely manipulate the arms 4 and their attached surgical tools 7, e.g., referred to here as teleoperation. The user console 2 may be located in the same operating room as the rest of the system 1 as shown in
In some variations, the bedside operator 8 may operate the system 1 in an “over the bed” mode in which the beside operator 8 (user) is at a side of the patient 6 and is simultaneously manipulating a robotically-driven tool (an end effector that is attached to the arm 4) with a handheld UID 14 held in one hand, and a manual laparoscopic tool in another hand. For example, the bedside operator's left hand may be manipulating the handheld UID to control a robotically-driven tool, while the bedside operator's right hand may be manipulating a manual laparoscopic tool. In this particular variation of the system 1, the bedside operator 8 can perform both robotic-assisted minimally invasive surgery and manual laparoscopic surgery on the patient 6.
During an example procedure (surgery), the patient 6 is prepped and draped in a sterile fashion to achieve anesthesia. Initial access to the surgical site may be performed manually while the arms of the robotic system 1 are in a stowed configuration or withdrawn configuration (to facilitate access to the surgical site.) Once access is completed, initial positioning or preparation of the robotic system 1 including its arms 4 may be performed. Next, the surgery proceeds with the remote operator 9 at the user console 2 utilizing the foot-operated controls 13 and the UIDs 14 to manipulate the various end effectors and perhaps an imaging system, to perform the surgery. Manual assistance may also be provided at the procedure bed or table, by sterile-gowned bedside personnel, e.g., the bedside operator 8 who may perform tasks such as retracting tissues, performing manual repositioning, and tool exchange upon one or more of the robotic arms 4. Non-sterile personnel may also be present to assist the remote operator 9 at the user console 2. When the procedure or surgery is completed, the system 1 and the user console 2 may be configured or set in a state to facilitate post-operative procedures such as cleaning or sterilization and healthcare record entry or printout via the user console 2.
In one embodiment, the remote operator 9 holds and moves the UID 14 to provide an input command to move a robot arm actuator 17 in the robotic system 1. The UID 14 may be communicatively coupled to the rest of the robotic system 1, e.g., via a console computer system 16. The UID 14 can generate spatial state signals corresponding to movement of the UID 14, e.g. position and orientation of the handheld housing of the UID, and the spatial state signals may be input signals to control a motion of the robot arm actuator 17. The robotic system 1 may use control signals derived from the spatial state signals, to control proportional motion of the actuator 17. In one embodiment, a console processor of the console computer system 16 receives the spatial state signals and generates the corresponding control signals. Based on these control signals, which control how the actuator 17 is energized to move a segment or link of the arm 4, the movement of a corresponding surgical tool that is attached to the arm may mimic the movement of the UID 14. Similarly, interaction between the remote operator 9 and the UID 14 can generate for example a grip control signal that causes a jaw of a grasper of the surgical tool 7 to close and grip the tissue of patient 6.
The surgical robotic system 1 may include several UIDs 14, where respective control signals are generated for each UID that control the actuators and the surgical tool (end effector) of a respective arm 4. For example, the remote operator 9 may move a first UID 14 to control the motion of an actuator 17 that is in a left robotic arm, where the actuator responds by moving linkages, gears, etc., in that arm 4. Similarly, movement of a second UID 14 by the remote operator 9 controls the motion of another actuator 17, which in turn moves other linkages, gears, etc., of the robotic system 1. The robotic system 1 may include a right arm 4 that is secured to the bed or table to the right side of the patient, and a left arm 4 that is at the left side of the patient. An actuator 17 may include one or more motors that are controlled so that they drive the rotation of a joint of the arm 4, to for example change, relative to the patient, an orientation of an endoscope or a grasper of the surgical tool 7 that is attached to that arm. Motion of several actuators 17 in the same arm 4 can be controlled by the spatial state signals generated from a particular UID 14. The UIDs 14 can also control motion of respective surgical tool graspers. For example, each UID 14 can generate a respective grip signal to control motion of an actuator, e.g., a linear actuator, which opens or closes jaws of the grasper at a distal end of surgical tool 7 to grip tissue within patient 6.
In some aspects, the communication between the platform 5 and the user console 2 may be through a control tower 3, which may translate user commands that are received from the user console 2 (and more particularly from the console computer system 16) into robotic control commands that are transmitted to the arms 4 on the robotic platform 5. The control tower 3 may also transmit status and feedback from the platform 5 back to the user console 2. The communication connections between the robotic platform 5, the user console 2, and the control tower 3 may be via wired and/or wireless links, using any suitable ones of a variety of data communication protocols. Any wired connections may be optionally built into the floor and/or walls or ceiling of the operating room. The robotic system 1 may provide video output to one or more displays, including displays within the operating room as well as remote displays that are accessible via the Internet or other networks. The video output (video feed) may also be encrypted to ensure privacy and all or portions of the video output may be saved to a server or electronic healthcare record system.
Additionally, the tool carriage 320 may actuate a set of articulated movements of the end effector, such as through a cable system or wires manipulated and controlled by actuated drives (the terms “cable” and “wire” are used interchangeably throughout this application). The tool carriage 320 may include different configurations of actuated drives. For example, the rotary axis drives may include a motor with a hollow rotor and a planetary gear transmission at least partially disposed within the hollow rotor. The plurality of rotary axis drives may be arranged in any suitable manner. For example, the tool carriage 320 may include six rotary drives 322A-322F arranged in two rows, extending longitudinally along the base that are slightly staggered to reduce width of the carriage and increase the compact nature of the tool drive. As clearly shown in
As shown in
The grasper 220 can be actuated to move one or both of the jaws 401A and 401B in a variety of ways around the axis 410. For example, the jaws 401A and 401B may open and close relative to each other. The jaws 401A and 401B may also be actuated to rotate together as a pair to provide a yaw motion of the grasper 220. In addition, the first yoke 402, the pulleys 415A and 415B, and the jaws 401A and 401B can rotate about the axis 420 to provide a pitch motion of the grasper 220. The motion of the robotic wrist and/or the jaws of the tool can be actuated by controlling four independent cables 405A-405D. As shown in
As shown in
For example, cables 405A and 405B are the first antagonistic pair for moving jaw 401A, and cables 405C and 405D are the second antagonistic pair for controlling jaw 401B. When cable 405A is tensioned (e.g., by at least one of the rotary drives 322a-322f) while cable 405B is loosened, jaw 401A closes (moving towards the opposite jaw 401B). On the other hand, when cable 405B is tensioned and cable 405A is loosened, jaw 401A opens (moving away from the opposite jaw 401B). Similarly, when tensioned, cable 405C closes jaw 401B (moving towards the opposite jaw 401A) and cable 405D opens jaw 401B (moving away from the opposite jaw 401A) while the other cable loosens. As another example, grip force between the jaw 401A and jaw 401B can be achieved by continuing to tension both cable 405A and cable 405C (while cable 405B and cable 405D are loosened) after the jaws are closed (touching each other).
In case when both cables of an antagonistic pair are tensioned at the same time while both cables of the other pair are loosened, the pulley 415A or pulley 415B do not rotate. Instead, the first yoke 402 together with the jaws 401A and 401B are imparted by the pulleys 415A and 415B to pitch about the axis 420. For example, when the pair of cables 405A and 405B are both tensioned simultaneously while the pair of cable 405C and 405D are loosened, the jaws (together with the yoke 402) pitch out of the plane of the paper. Whereas when both cables 405C and 405D are tensioned simultaneously and the pair 405A and 405B are kept loose, the jaws pitch into the plane of the paper.
In order to perform control tasks, it is often beneficial to define a consistent coordinate frame for the joint angles. For example, we may further define the jaw angle (θjaw) as the angle between the two jaws 401A and 401B, and the yaw angle (θyaw) as the angle between the axis 452 and the line bisecting the jaw angle. As mentioned, pitch angle (θpitch) may be defined as angle (θ1) between axis 452 and the axis 453. Therefore:
Described below is a method and system for controlling angular position and grip force of a distal end effector of a robotic surgical instrument. The end effector may include a robotic wrist and a pair of opposing members (e.g., jaws or claws), each being movable between an open position and a closed position actuated by two antagonistic wires. A total of four wires may each be driven by an independent actuator or motor, as illustrated in
In one embodiment, when the desired jaw angle θjaw of the wrist jaws is greater than or equal to a threshold, the desired θjaw, which is also referred to as the commanded θjaw, may be treated as a position control command in the position mode. The threshold is used to determine detent, and may correspond to an angle at which both jaws are just simultaneously in contact with the object(s) in between. In case there are no objects to grasp, the threshold is zero degree when the jaws begin to touch each other. In the position mode, the controller 562 may translate the desired θjaw, as well as the desired θpitch and desired θyaw, into corresponding actuator position commands to drive the wrist jaws to the desired position and orientation. When the desired θjaw is below the threshold, the wrist jaws are operating in a force control mode, or simply force mode, and the desired jaw angle is translated into a desired grip force command. The controller 562 may generate a current command in addition to the position command to achieve the desired grip force.
In one embodiment, the controller 562 may limit the maximum amount of grip force when the jaws are closing in the position mode to prevent damage to tissue that may be grasped by the jaws. The grip force of the jaws may be estimated or measured by the sensors and estimators 566. The controller 562 may analyze the desired θjaw and the measured grip force to determine if the jaws are closing in the position mode and if the measured grip force exceeds a pre-specified maximum grip force threshold. If so, the controller 562 may calculate a grip force error to limit the measured grip force to the pre-specified maximum grip force threshold. For example, to determine if the jaws are closing in the position mode, the controller 562 may first verify that the desired θjaw is greater than or equal to the threshold for detent, and thus in the position mode, for more than a pre-specified duration. The controller 562 may employ a debouncing technique to verify that the desired θjaw has been decreasing for a pre-specified length of time. In one embodiment if the desired θjaw are sampled at a periodic frequency, the controller 562 may verify that the samples of the desired θjaw have been decreasing for a pre-specified number of samples.
To determine if the measured grip force exceeds a pre-specified maximum grip force threshold, the controller 562 may also employ a debouncing technique. In one embodiment, the feedback control loop of the control system of
As an example, assume the measured grip force is initially below the maximum grip force threshold minus the margin and the grip force counter is incrementing. When the measured grip force increases beyond the maximum grip force threshold, the grip force counter may be reset. The feedback control loop of the controller 562 may attempt to change the actuator position commands to drive the wrist jaws to limit the measured grip force to the maximum grip force threshold. However, even if the measured grip force drops below the maximum grip force threshold but stays above the maximum grip force threshold minus the margin, the feedback control loop may still consider the measured grip force to be larger than the maximum grip force threshold so as to limit the maximum measured grip force. Assume the measured grip force dips below the maximum grip force threshold minus the margin for only a few loop cycles but then increases above this level again. The grip force counter may increment to the number of loop cycles that the measured grip force was briefly below the maximum grip force threshold minus the margin. As long as the measured grip force stays above the maximum grip force threshold minus the margin within a window that spans a number of loop cycles equaling to the grip force counter (e.g., the number of loop cycles that the measured grip force dipped briefly below the maximum grip force threshold minus the margin), the feedback control loop may still consider the measured grip force to be larger than the maximum grip force threshold for the entire duration of the window so as to limit the maximum measured grip force.
When the controller 562 determines that the jaws are closing in the position mode and that the measured grip force exceeds the maximum grip force threshold, the controller may limit the measured grip force to the maximum grip force threshold. In one embodiment, the controller 562 may calculate a grip force error that is the difference between the maximum grip force threshold and the measured grip force. A zero steady-state type controller, such as a proportional plus integral (PI) force controller, may be deployed to receive the grip force error to maintain or limit the measured grip force at the maximum grip force threshold. The output of the PI force controller may be combined with the output of the inverse kinematic matrix that operates on errors in the desired position and orientation of the wrist jaws to generate compensated actuator position commands. The compensated actuator position commands are added to the existing actuator position commands to drive the wrist jaws to limit the maximum amount of grip force when the jaws are closing in the position mode at the desired position and orientation.
In
In block 701, the method 700 determines if the wrist jaws are in the position mode. In one embodiment, block 701 may determine if the desired θjaw is greater than or equal to the threshold θjaw between the position mode and the force mode for more than a pre-specified time period to confirm that the wrist jaws are in the position mode. In one embodiment, the threshold θjaw may be set to zero. If the wrist jaws are not in the position mode, the wrist jaws are in the force mode and the grip force is not limited. In block 709, the method 700 generates actuator position commands without placing a constraint on the grip force. In one embodiment, block 709 translates the desired θjaw into a desired grip force command to achieve the desired grip force in addition to generating the actuator position commands.
If the jaws are in the position mode, block 703 determines if the jaws are closing. In one embodiment, block 703 may employ a debouncing technique to determine if the desired θjaw has been decreasing for a pre-specified duration or for a pre-specified number of samples. In one embodiment, the jaws may be considered closing if the desired θjaw is held at a quiescent state without increasing. If the jaws are not closing, the grip force is not limited even in the position mode. The method 700 defaults to block 709 to generate actuator position commands without placing a constraint on the grip force.
If the jaws are closing in the position mode, block 705 determines if the measured grip force exceeds a pre-specified maximum grip force threshold. In one embodiment, block 705 may employ a debouncing technique to determine if the measured grip force is larger than the maximum grip force threshold minus a margin anywhere within a window that spans a number of samples equaling to a grip force counter. In one embodiment, the measured grip force may be sampled at a loop cycle time of the feedback control system of
If the measured grip force exceeds the maximum grip force threshold while the jaws are closing in the position mode, block 707 generates compensated actuator position commands to limit the measured grip force to the maximum grip force threshold. In one embodiment, block 707 may calculate a grip force error that is the difference between the maximum grip force threshold and the measured grip force. A zero steady-state type controller, such as a proportional plus integral (PI) force controller, may receive the grip force error to generate a compensated grip force command. The output of the PI force controller may be combined with the output of the inverse kinematic matrix that operates on errors in the desired position and orientation of the wrist jaws to generate the compensated actuator position commands. The compensated actuator position commands may be added to existing actuator position commands to drive the wrist jaws so as to limit the measured grip force to the maximum grip force threshold.
In another aspect, the controller 562 may maintain a minimum jaw opening force by the wrist jaws when operating in the position mode. The minimum jaw opening force may also be referred to as the minimum grip force. Maintaining a minimum jaw opening force while the jaws are opening in the position mode helps the jaws to overcome resistance that may be preventing the jaws from opening to the desired jaw angle. The jaw angle and the opening force of the jaws may be estimated or measured by the sensors and estimators 566. The controller 562 may analyze the desired θjaw, the estimated θjaw, and the measured opening force to determine if the jaws are opening in the position mode, if the jaw angle error between the desired θjaw and the estimated θjaw is larger than a threshold, and if the measured opening force is below a pre-specified minimum jaw opening force threshold. If so, the controller 562 may calculate an opening force error between the pre-specified minimum jaw opening force threshold and the measured opening force to maintain the measured opening force above the pre-specified minimum jaw opening force threshold.
In one embodiment, to determine if the jaws are opening in the position mode, the controller 562 may first verify that the desired θjaw is greater than or equal to the threshold for detent, and thus in the position mode, for more than a pre-specified duration. The controller 562 may then determine if the opening jaws in the position mode are meeting resistance that prevents the jaws from opening to the desired θjaw. In one embodiment, the controller 562 may employ a debouncing technique to verify that the desired θjaw is larger than the estimated θjaw and that the θjaw error, which is the difference between the desired θjaw and the estimated θjaw, is larger than an θjaw error threshold for a pre-specified length of time. In one embodiment if the desired θjaw and the estimated θjaw are sampled at a periodic frequency, the controller 562 may verify that the θjaw error is larger than the θjaw error threshold for a pre-specified number of samples.
To determine if the measured opening force is below the pre-specified minimum jaw opening force threshold, the controller 562 may also employ a debouncing technique. A jaw opening force counter may increase by one count for every control loop cycle during which the measured opening force is larger than the minimum jaw opening force threshold plus a margin. In one embodiment, the jaw opening force counter may stop incrementing after it reaches a maximum count. When the measured opening force is less than the minimum jaw opening force threshold, the jaw opening force counter may reset. The debouncing technique may declare that the measured opening force is below the minimum jaw opening force threshold for an entirety of a window that spans a number of loop cycles equaling to the jaw opening force counter when the measured opening force is less than the minimum jaw opening force threshold plus the margin anywhere within the window.
As an example, assume the measured opening force is initially above the minimum jaw opening force threshold plus the margin and the jaw opening force counter is incrementing. When the measured opening force drops below the minimum jaw opening force threshold, the jaw opening force counter may be reset. The feedback control loop of the controller 562 may attempt to change the actuator position commands to drive the wrist jaws to maintain the measured opening force above the minimum jaw opening force threshold. However, even if the measured opening force increases above the minimum jaw opening force threshold but stays below the minimum jaw opening force threshold plus the margin, the feedback control loop may still consider the measured opening force to be smaller than the minimum jaw opening force threshold so as to maintain the minimum jaw opening force. Assume the measured opening force rises above the minimum jaw opening force threshold plus the margin for only a few loop cycles but then dips below this level again. The jaw opening force counter may increment to the number of loop cycles that the measured opening force was briefly above the minimum jaw opening force threshold plus the margin. As long as the measured opening force stays below the minimum jaw opening force threshold plus the margin within a window that spans a number of loop cycles equaling to the jaw opening force counter (e.g., the number of loop cycles that the measured opening force was briefly above the minimum jaw opening force threshold plus the margin), the feedback control loop may still consider the measured opening force to be smaller than the minimum jaw opening force threshold for the entire duration of the window so as to maintain the minimum jaw opening force.
When the controller 562 determines that the jaws are opening in the position mode, the θjaw error is larger than the θjaw error threshold, and the measured opening force is below the pre-specified minimum jaw opening force threshold, the controller may maintain the measured opening force above the minimum jaw opening force threshold. In one embodiment, the controller 562 may calculate a jaw opening force error that is the difference between the minimum jaw opening force threshold and the measured opening force. A zero steady-state type controller, such as a proportional plus integral (PI) force controller, may be deployed to receive the jaw opening force error to maintain the measured opening force at or above the minimum jaw opening force threshold. The output of the PI force controller may be combined with the output of the inverse kinematic matrix that operates on errors in the desired position and orientation of the wrist jaws to generate compensated actuator position commands. The compensated actuator position commands are added to the existing actuator position commands to drive the wrist jaws to maintain the minimum amount of opening force when the jaws are opening in the position mode at the desired position and orientation.
During the position mode, the commanded grip force 807 may be set by a grip force controller to a default value of zero N. Even during the force mode, the commanded grip force 807 is still set to zero N. A positive value for the measured opening force 809 corresponds to the opening force of the jaws in the position mode and a negative value corresponds to the grip force in the force mode when the jaws are closed. The measured opening force 809 in the position mode generally follows the profile of the commanded θjaw 803 because the jaws are constrained from opening to the commanded θjaw 803. The result is stronger measured opening force 809 when the commanded θjaw 803 is increased for wider opening of the jaws and conversely weaker measured opening force 809 when the commanded θjaw 803 is decreased for narrower opening of the jaws. Because the feedback control loop is not enabled to maintain the measured opening force 809 above the minimum opening force threshold of 4.4 N, between 53 to 60 second, the measured opening force 809 may drop below the minimum opening force threshold.
In
In block 901, the method 900 determines if the wrist jaws are in the position mode. In one embodiment, block 901 may determine if the desired θjaw is greater than or equal to the threshold θjaw between the position mode and the force mode for more than a pre-specified time period to confirm that the wrist jaws are in the position mode. In one embodiment, the threshold θjaw may be set to zero. If the wrist jaws are not in the position mode, the wrist jaws are in the force mode and minimum opening force is not enabled. In block 909, the method 900 generates actuator position commands without maintaining a minimum opening force. In one embodiment, block 909 translates the desired θjaw into a desired grip force command to achieve the desired grip force or opening force in addition to generating the actuator position commands.
If the jaws are in the position mode, block 903 determine if the jaws are prevented from opening to the desired θjaw by determining if the θjaw error, which is the difference between the desired θjaw and the estimated or measured θjaw, is larger than or equal to an θjaw error threshold. In one embodiment, block 903 may employ a debouncing technique to determine if the desired θjaw is larger than the estimated θjaw and that the θjaw error is larger than or equal to the θjaw error threshold for a pre-specified length of time. In one embodiment, block 903 may detect that the jaws are opening, maintaining a quiescent θjaw, or closing by determining that the desired θjaw is increasing, staying the same, or decreasing, respectively. If the θjaw error is smaller than the θjaw error threshold, the method 900 defaults to block 909 to generate actuator position commands without maintaining a minimum opening force.
If the θjaw error is larger than or equal to the θjaw error threshold when the jaws are in the position mode, block 905 determines if the measured opening force is below a pre-specified minimum jaw opening force threshold. In one embodiment, block 905 may employ a debouncing technique to determine that the measured opening force is less than the minimum jaw opening force threshold plus a margin anywhere within a window that spans a number of samples equaling to a jaw opening force counter. In one embodiment, the measured opening force may be sampled at a loop cycle time of the feedback control system of
If the measured opening force is less than the minimum jaw opening force threshold and the θjaw error is larger than or equal to the θjaw error threshold when the jaws are in the position mode, block 907 generates compensated actuator position commands to maintain the measured opening force above the minimum jaw opening force threshold. In one embodiment, block 907 may calculate a jaw opening force error that is the difference between the minimum jaw opening force threshold and the measured opening force. A zero steady-state type controller, such as a proportional plus integral (PI) force controller, may be deployed to receive the jaw opening force error to maintain the measured opening force at or above the minimum jaw opening force threshold. The output of the PI force controller may be combined with the output of the inverse kinematic matrix that operates on errors in the desired position and orientation of the wrist jaws to generate compensated actuator position commands. The compensated actuator position commands are added to the existing actuator position commands to drive the wrist jaws to maintain the minimum amount of opening force when the jaws are opening in the position mode.
In another aspect, the controller 562 may adjust the commanded grip force to smooth the grip force applied when the wrist jaws transition between the position mode and the force mode. Smoothing the grip force applied during mode transitions minimizes undesired sudden changes in the grip force caused by changes in the position and commanded grip force of the jaws that may cause the jaws to accidentally drop an object being grasped when the jaws traverse through the point of discontinuity between the two modes. During the position mode the desired θjaw is greater than or equal to the threshold for detent. A position controller may translate the desired θjaw, as well as the desired θpitch and desired θyaw, into corresponding actuator position commands to drive the wrist jaws to the desired position and orientation. During the force mode when the desired θjaw is below the threshold for detent, for example when the desired θjaw is negative for detent set at zero degree, a grip force controller may be enabled to interpret the desired θjaw as a grip force command and may translate the desired θjaw into compensation current that may be added to current for the existing position commands to drive the wrist jaws to achieve the commanded grip force.
In one embodiment, to smooth the grip force applied during mode transitions, a feedback control system may employ a debouncing technique when detent is set at zero degree. The debouncing technique may prevent the grip force controller from repeatedly getting enabled and disabled to create oscillation in the commanded grip force when the desired θjaw oscillates around positive and negative values.
In one embodiment, the feedback control system may minimize sudden changes in the grip force when the wrist jaws transition from the position mode to the force mode by analyzing the desired θjaw, the commanded grip force, and the measured grip force. The feedback control system may determine if the commanded grip force is increasing due to the grip force controller getting enabled as indicated by the desired θjaw decreasing below the threshold for detent, and if an error between the measured grip force and the commanded grip force is larger than a pre-specified maximum force error. If so, the feedback control system may set the commanded grip force as the measured grip force minus a pre-specified margin when the wrist jaws transition from the position mode to the force mode.
In one embodiment, the feedback control system may minimize sudden changes in the grip force when the wrist jaws transition from the force mode to the position mode by analyzing the desired θjaw, the commanded grip force, and the measured grip force. The feedback control system may determine if the commanded grip force is smaller than a pre-specified minimum grip force value, if the commanded grip force is decreasing due to the grip force controller being disabled as indicated by the desired θjaw increasing above the threshold for detent, and if the absolute value of an error between the measured grip force and the minimum grip force is smaller than a pre-specified maximum grip force error value. If so, the feedback control system may set the commanded grip force to the pre-specified minimum grip force value when the wrist jaws transition from the force mode to the position mode.
The input processing unit 502 and the actuator command generator 504 receive desired angular positions of the wrist jaws and translate the desired angular positions into corresponding actuator position commands (via inverse kinematics algorithm), which are output to the position controller 506 and/or grip force controller 508. For example, the input desired angular positions may include the desired θjaw, desired θpitch and desired θyaw. The desired θjaw may be treated as a position command when the desired θjaw is greater than or equal to the threshold for detent. When the desired θjaw is less than the threshold for detent, the desired θjaw may be translated to a desired grip force command (e.g., commanded grip force) by the grip force controller 508, which may generate a current command to achieve the desired grip force.
The position controller 506 may receive position feedback from position and/or speed sensors on the actuator units 510. Achieving the desired actuator positions can in turn lead to the desired position of the wrist jaws due to the kinematic relationship between the actuators and the wrist jaws. Since the actuator units 510 are coupled to the robotic wrist through elastic cables (or wires), which may change length under force, estimation only based on a pure kinematic relation between actuator positions and wrist movements may not be accurate. The position estimator 522 may provide the actuator command generator 504 and the grip force estimator 524 with a more accurate estimate of the wrist joint positions and velocities by taking into account the cable elasticity in estimation algorithms (e.g., using a Kalman filter). The estimated position and velocity information can then be used for accurate positioning of the wrist, as well as estimation of the friction.
In one embodiment, the grip force controller 508 takes feedback of cable tensions measured by load cells or torque sensors on the cable wires. Algorithms can then be used by the grip force estimator 524 to estimate the grip force between the jaws based on the tension values measured on the cables. The grip force controller 508 may compare the estimated value to the desired grip force and generates additional current commands to achieve the desired grip force. The wrist jaws may be coupled to the tool drive through four independent cables, each of which is actuated by an independent motor. In one embodiment, the motors may be driven by current. The current command may include two parts: the first part of the driving current may be from the position controller 506 and the second part from the grip force controller 508. The two current commands may be summed up and sent to the actuator units 510.
The slack controller 514 may perform the task of ensuring the tensions on the cables never fall below zero (or a predetermined positive value to compensate slackness). Cables are tension-only members of the end effector, to which negative forces cannot be applied. Therefore, it is desirable to prevent the tensions on the cables from dropping to zero. To achieve this goal, the slack controller 514 may monitor the force values from load cells on the cables and compare the minimum of the force values to a predetermined threshold. If the minimum force value across all the cables falls below the threshold, the slack controller 514 may generate an additional position command to all the actuators to ensure that the desired minimum tension is maintained.
To smooth the grip force applied during mode transitions, the input processing unit 502 may employ a debouncing technique when detent is set at zero degree. The debouncing technique may determine if the desired θjaw is smaller than the threshold for detent for a pre-specified minimum duration before enabling the grip force controller 508 to transition the wrist jaws from the position mode to the force mode. When transitioning from the force mode to the position mode, the input processing unit 502 may disable the grip controller 508 as soon as the desired θjaw is greater than or equal to the threshold for detent. Thus, the debouncing technique may be one-sided. The debouncing technique prevents the grip force controller 508 from repeatedly getting enabled and disabled, a condition that may cause oscillation in the commanded grip force when the desired θjaw oscillates around detent.
The debouncing algorithm may enable the grip force controller 508 to transition the wrist jaws from the position mode to the force mode only if the desired θjaw is less than zero degree for a pre-specified minimum duration. Because the control system does not detect this condition, the wrist jaws remain in the position mode and the grip force controller 508 is not enabled. As a result, the commanded grip force 1117 stays at the default value of 0 N and the current command 1116 from the grip force controller 508 also stays at 0. The measured grip force 1119 exhibits none of the large swings and the measured θjaw 1115 exhibits none of the oscillations observed in
Smooth applications of the grip force may also become important when the wrist jaws are grasping an object when transitioning between the position mode and the force mode. For example, during the position mode even though the grip force controller 508 is not enabled, there may be non-zero measured grip force if the wrist jaws are grasping an object. When the desired θjaw drops below the threshold for detent, indicating a transition from the position mode to the force mode, the grip force controller 508 may initially drive the commanded grip force from 0 N. Similarly, when transitioning from the force mode to the position mode, when the grip force controller 508 is disabled, the commanded grip force may reset to the default value of 0 N output from the position controller 506. As a result, there may be a sudden change in the measured grip force during the transitions, potentially causing the wrist jaws to drop the object.
The wrist jaws are initially operating in the position mode. The commanded θjaw 1203 is initially at 0 degree and the commanded grip force 1207 is initially at 0 N. The measured θjaw1205 is at 25 degrees and the measured grip force 1209 is at 8 N due to an object held between the jaws. At time 27.5 second, the commanded θjaw 1203 becomes negative to transition the wrist jaws from the position mode to the force mode. When the grip force controller 508 is enabled, the commanded grip force 1207 ramps up from 0 N until the commanded θjaw 1203 reaches its most negative value. However, the measured grip force 1209 experiences a sudden drop of 5 N during the transition before ramping up as commanded. At time 30 second, the commanded θjaw 1203 starts to become less negative. The commanded grip force 1207 starts to ramp down and the measured grip force 1209 follows as commanded. At time 31 second, the commanded θjaw 1203 becomes positive to transition the wrist jaws from the force mode back to the position mode. When the grip force controller 508 is disabled, the measured grip force 1209 experiences a sudden jump from 0 N to the quiescent 8 N of the position mode with some overshoot. It is desired to minimize sudden changes in the measured grip force 1209 during the transitions.
In one embodiment, to minimize sudden changes in the grip force of the wrist jaws when holding an object during the transition from the position mode to the force mode, the grip force controller 508 may adjust the commanded grip force. For example, the grip force controller 508 may set the commanded grip force to be the currently measured grip force minus a pre-specified margin when the grip force controller 508 is enabled upon the commanded θjaw becoming less than the threshold for detent and if certain conditions are satisfied. Doing so may prevent the measured grip force from dropping to a value close to 0 N during the transition, thereby reducing the probability of the jaws dropping the object held between the jaws. In one embodiment, the measured grip force may be generated by the grip force estimator 524 based on the tension values measured on the cables from cable and wrist links 512.
To evaluate a first condition for adjusting the commanded grip force, the grip force controller 508 may determine if the commanded grip force is or will be increasing due to the grip force controller 508 getting enabled as indicated by the commanded θjaw decreasing below the threshold for detent. For a second condition, the grip force controller 508 may determine if the error between the measured grip force and the commanded grip force is larger than a pre-specified maximum force error. In one embodiment, the grip force controller 528 may use a debouncing technique for one or both of the conditions. If these two conditions are satisfied, the grip force controller 508 may set the commanded grip force to be the currently measured grip force minus the pre-specified margin.
In one embodiment, to minimize sudden changes in the grip force of the wrist jaws when holding an object during the transition from the force mode to the position mode, the grip force controller 508 may adjust the commanded grip force. For example, the grip force controller 508 may set the commanded grip force to a pre-specified minimum grip force value when the grip force controller 508 is disabled upon the commanded θjaw becoming more than the threshold for detent and if certain conditions are satisfied. Doing so instead of starting from the default 0 N of the position mode may reduce the change for the measured grip force to rise to the quiescent grip force of the position mode.
To evaluate the conditions for adjusting the grip force, the grip force controller 508 may determine if the commanded grip force is smaller than the pre-specified minimum grip force value. The grip force controller 508 may also determine if the commanded grip force is decreasing as indicated by the commanded θjaw increasing toward or crossing the threshold for detent. The grip force controller 508 may additionally determine if the absolute value of the error between the measured grip force and the minimum grip force value is smaller than a pre-specified maximum grip force error value. In one embodiment, the grip force controller 528 may use a debouncing technique for one or more of the conditions. If all the conditions are satisfied, the grip force controller 508 may set the commanded grip force to be the pre-specified minimum grip force value. In one embodiment, the pre-specified minimum grip force value may be set to 3 N.
The wrist jaws are initially operating in the position mode with the initial states of the commanded θjaw 1213, measured θjaw 1215, commanded grip force 1217, and measured grip force 1219 the same as in
At time 39.8 second, the commanded θjaw 1213 starts to become less negative. The commanded grip force 1217 starts to ramp down and the measured grip force 1219 follows as commanded. At time 40.5 second, the commanded grip force 1217 stays at the pre-specified minimum grip force value of 3 N instead of continuing to ramp down to 0 N as otherwise would have occurred without the adjustment as the commanded θjaw 1213 becomes positive to transition the wrist jaws from the force mode to the position mode. The conditions for the adjustment to the commanded grip force 1217 are satisfied because the measured grip force 1219 is smaller than the pre-specified minimum grip force value of 3 N and the absolute value of the error between the measured grip force 1219 and the commanded grip force 1217 is smaller than the pre-specified maximum force error. The result is that the measured grip force 1219 experiences a significantly smaller change than without the adjustment to the commanded grip force 1217 as the measured grip force 1219 jumps to the quiescent 8 N of the position mode during the transition. The commanded grip force 1217 stays at 3 N until the commanded grip force 1217 as determined from the commanded θjaw 1213 becomes 0 N.
Starting from the position mode in block 1301, the method 1300 determines if the desired θjaw is smaller than the threshold for detent for a minimum duration in block 1303. In one embodiment, the minimum duration may be pre-specified or may be configurable. Block 1303 implements a debouncing algorithm to prevent the force mode from repeatedly being enabled and disabled, a condition that may cause oscillation in the commanded grip force when the desired θjaw is set around the threshold for detent. In one embodiment, block 1303 may determine if the commanded grip force is or will be increasing as indicated by the desired θjaw decreasing below the threshold for detent. If the desired θjaw is not smaller than the threshold for detent for the pre-specified minimum duration, the wrist jaws remain in the position mode of block 1301.
Otherwise, if the desired θjaw is smaller than the threshold for detent for the pre-specified minimum duration, the wrist jaws are transitioning from the position mode to the force mode. Block 1304 determines if the commanded grip force is increasing. If this condition is false, block 1307 sets the commanded grip force as translated from the desired θjaw and the commanded grip force is not adjusted to limit changes in the measured grip force during the mode transition. Otherwise, if the condition in block 1304 is true, block 1305 determines if the error between the measured grip force and the commanded grip force is larger than a maximum force error during the mode transition. The commanded grip force may be at the default 0 N in the position mode prior to the mode transition. The measured grip force may be different from the commanded grip force prior to the mode transition because the wrist jaws may be grasping an object. In one embodiment, the maximum force error may be pre-specified or may be configurable.
If the condition in block 1305 is true, block 1309 sets the commanded grip force to the measured grip force minus a margin when the wrist jaws transition from the position mode to the force mode. In one embodiment, the margin may be pre-specified or may be configurable. Otherwise, if the condition in block 1305 is false, block 1307 sets the commanded grip force as translated from the desired θjaw and the commanded grip force is not adjusted to limit changes in the measured grip force during the mode transition.
When the wrist jaws are in the force mode in block 1311, the method 1300 determines if the desired θjaw is greater than or equal to the threshold for detent in block 1313. In one embodiment, block 1311 may determine if the commanded grip force is decreasing as indicated by the desired θjaw increasing toward the threshold for detent and that the desired θjaw is just below the threshold for detent. If the desired θjaw is not greater than or equal to the threshold for detent, the wrist jaws remain in the force mode of block 1311.
Otherwise, if the desired θjaw is greater than or equal to the threshold for detent, the wrist jaws are transitioning from the force mode to the position mode. Block 1315 determines if the commanded grip force is decreasing and if the commanded grip force is less than a minimum grip force during the mode transition. In one embodiment, the minimum grip force may be pre-specified or may be configurable. If the commanded grip force is not decreasing or if the commanded grip force is not less than the minimum grip force during the mode transition, block 1307 sets the commanded grip force as translated from the desired θjaw and the commanded grip force is not adjusted to limit changes in the measured grip force during the mode transition.
Otherwise, if the commanded grip force is decreasing and if the commanded grip force is less than the minimum grip force during the mode transition, block 1317 determines if the absolute value of the error between the measured grip force and the minimum grip force value is smaller than a maximum force error during the mode transition. In one embodiment, the maximum force error may be pre-specified or may be configurable. The maximum force error in block 1317 for the force-to-position mode transition may be the same or different from the maximum force error in block 1305 for the position-to-force mode transition.
If the condition in block 1317 is true, block 1319 sets the commanded grip force to the minimum grip force when the wrist jaws transition from the force mode to the position mode. Otherwise, if the condition in block 1317 is false, block 1307 sets the commanded grip force as translated from the desired θjaw and the commanded grip force is not adjusted to limit changes in the measured grip force during the mode transition.
The interface device 50 includes a camera 51, sensor 52, display 53, user command interface 54, processor 55, memory 56, and network interface 57. The camera 51 and the sensor 52 may be configured to capture color images and depth-image information of the surgical robotic system. Images captured by the camera 51 and sensor 52 may be projected on the display 53. The processor 55 may be configured to run an operating system to control the operation of the interface device 50. The memory 56 may store the image processing algorithms, operating system, program codes, and other data memories used by the processor 55. The interface device 50 may be used to generate the desired θpitch, θyaw, and θjaw of the wrist jaws under the control of a remote operator.
The user command interface 54 may include the interface for other features such as the Web portal. The hardware components may communicate via a bus. The interface device may use the network interface 57 to communicate with the surgical robotic system through an external interface. The external interface may be a wireless or a wired interface.
The control tower 70 may be a mobile point-of-care cart housing touchscreen displays, computers that control the surgeon's robotically-assisted manipulation of instruments, safety systems, graphical user interface (GUI), light source, and video and graphics computers. The control tower 70 may comprise central computers 71 that may include at least a visualization computer, a control computer, and an auxiliary computer, various displays 73 that may include a team display and a nurse display, and a network interface 78 coupling the control tower 70 to both the interface device 50 and the surgical robot 80. The control tower 70 may also house third-party devices, such as an advanced light engine 72, an electrosurgical generator unit (ESU) 74, and insufflator and CO2 tanks 75. The control tower 70 may offer additional features for user convenience, such as the nurse display touchscreen, soft power and E-hold buttons, user-facing USB for video and still images, and electronic caster control interface. The auxiliary computer may also run a real-time Linux, providing logging/monitoring and interacting with cloud-based web services. The central computers 71 of the control tower 70 may receive the desired θpitch, θyaw, and θjaw of the wrist jaws generated by the interface device 50 to implement the methods described herein for controlling the grip force or opening force of the jaws.
The surgical robot 80 comprises an articulated operating table 84 with a plurality of integrated arms 82 that may be positioned over the target patient anatomy. A suite of compatible tools 83 may be attached to or detached from the distal ends of the arms 82, enabling the surgeon to perform various surgical procedures. The surgical robot 80 may also comprise control interface 85 for manual control of the arms 82, operating table 84, and tools 83. The control interface 85 may include items such as, but not limited to, remote controls, buttons, panels, and touchscreens. Other accessories such as trocars (sleeves, seal cartridge, and obturators) and drapes may also be manipulated to perform procedures with the system. In one embodiment, the plurality of the arms 82 may include four arms mounted on both sides of the operating table 84, with two arms on each side. For certain surgical procedures, an arm mounted on one side of the operating table 84 may be positioned on the other side of the operating table 84 by stretching out and crossing over under the operating table 84 and arms mounted on the other side, resulting in a total of three arms positioned on the same side of the operating table 84. The surgical tool may also comprise table computers 81 and a network interface 88, which may place the surgical robot 80 in communication with the control tower 70.
The foregoing description, for purposes of explanation, used specific nomenclature to provide a thorough understanding of the invention. However, it will be apparent to one skilled in the art that specific details are not required in order to practice the invention. Thus, the foregoing descriptions of specific embodiments of the invention are presented for purposes of illustration and description. They are not intended to be exhaustive or to limit the invention to the precise forms disclosed; obviously, many modifications and variations are possible in view of the above teachings. The embodiments were chosen and described in order to best explain the principles of the invention and its practical applications. They thereby enable others skilled in the art to best utilize the invention and various embodiments with various modifications as are suited to the particular use contemplated. It is intended that the following claims and their equivalents define the scope of the invention.
The methods, devices, processing, and logic described above may be implemented in many different ways and in many different combinations of hardware and software. The controllers and estimators may comprise electronic circuitry. For example, all or parts of the implementations may be circuitry that includes an instruction processor, such as a Central Processing Unit (CPU), microcontroller, or a microprocessor; an Application Specific Integrated Circuit (ASIC), Programmable Logic Device (PLD), or Field Programmable Gate Array (FPGA); or circuitry that includes discrete logic or other circuit components, including analog circuit components, digital circuit components or both; or any combination thereof. The circuitry may include discrete interconnected hardware components and/or may be combined on a single integrated circuit die, distributed among multiple integrated circuit dies, or implemented in a Multiple Chip Module (MCM) of multiple integrated circuit dies in a common package, as examples.
The circuitry may further include or access instructions for execution by the circuitry. The instructions may be stored in a tangible storage medium that is other than a transitory signal, such as a flash memory, a Random Access Memory (RAM), a Read Only Memory (ROM), an Erasable Programmable Read Only Memory (EPROM); or on a magnetic or optical disc, such as a Compact Disc Read Only Memory (CDROM), Hard Disk Drive (HDD), or other magnetic or optical disk; or in or on another machine-readable medium. A product, such as a computer program product, may include a storage medium and instructions stored in or on the medium, and the instructions when executed by the circuitry in a device may cause the device to implement any of the processing described above or illustrated in the drawings.
The implementations may be distributed as circuitry among multiple system components, such as among multiple processors and memories, optionally including multiple distributed processing systems. Parameters, databases, and other data structures may be separately stored and managed, may be incorporated into a single memory or database, may be logically and physically organized in many different ways, and may be implemented in many different ways, including as data structures such as linked lists, hash tables, arrays, records, objects, or implicit storage mechanisms. Programs may be parts (e.g., subroutines) of a single program, separate programs, distributed across several memories and processors, or implemented in many different ways, such as in a library, such as a shared library (e.g., a Dynamic Link Library (DLL)). The DLL, for example, may store instructions that perform any of the processing described above or illustrated in the drawings, when executed by the circuitry.
Also, the various controllers discussed herein can take the form of processing circuitry, a microprocessor or processor, and a computer-readable medium that stores computer-readable program code (e.g., firmware) executable by the (micro)processor, logic gates, switches, an application specific integrated circuit (ASIC), a programmable logic controller, and an embedded microcontroller, for example. The controller can be configured with hardware and/or firmware to perform the various functions described below and shown in the flow diagrams. Also, some of the components shown as being internal to the controller can also be stored external to the controller, and other components can be used.