An embodiment of the invention relates to control units for detecting the successful engagement of a surgical robotic tool with one or more actuators in a surgical robotic arm of a surgical robotic system. Other embodiments are also described.
Surgical robotic systems give an operator or user, such as an operating surgeon, the ability to perform one or more actions of a surgical procedure using the surgical robotic system. In the surgical robotic system, a surgical tool or instrument, such as an endoscope, clamps, cutting tools, spreaders, needles, energy emitters, etc., is mechanically coupled to a robot joint of a surgical robotic arm, so that movement or actuation of the robot joint directly causes a rotation, pivoting, or linear movement of a part of the tool (e.g., rotation of an endoscope camera, pivoting of a grasper jaw, or translation of a needle). Once the tool is attached to (e.g., in contact with) a tool drive in the arm, operator commands may cause movements and activate functions of the attached tool, such as closing clamps, adjusting the bend of an endoscope, extending an instrument outside of cannula walls, applying pressure using a clamping tool, as well as other movements and actions.
Due to the varied nature of surgical procedures, different surgical tools or instruments may be selectively attached to the same arm of a surgical robotic system before and during a surgical procedure. In order to avoid equipment malfunctions during a surgical procedure, it is important that the surgical tool or instrument not only be attached to but also engaged in a mechanical sense to the robot joint of the surgical robotic arm. That is, mechanisms in the surgical tool that impart motion or enable the activation of instrument features (e.g., opening, closing, cutting, applying pressure, etc.), should be mechanically engaged to the actuators that are in the tool drive of the arm of the surgical robotic system, before the surgical tool is in use during the surgical procedure.
The embodiments of the invention are illustrated by way of example and not by way of limitation in the figures of the accompanying drawings in which like references indicate similar elements. It should be noted that references to “an” or “one” embodiment of the invention in this disclosure are not necessarily to the same embodiment, and they mean at least one. Also, in the interest of conciseness and reducing the total number of figures, a given figure may be used to illustrate the features of more than one embodiment of the invention, and not all elements in the figure may be required for a given embodiment.
Embodiments of an apparatus, system and method for detection of engagement of a detachable surgical robotic tool to a tool drive of a surgical robotic arm of a surgical robotic system are described herein. In the following description numerous specific details are set forth to provide a thorough understanding of the embodiments. One skilled in the relevant art will recognize, however, that the techniques described herein can be practiced without one or more of the specific details, or with other methods, components, materials, etc. In other instances, well-known structures, materials, or operations are not shown or described in detail to avoid obscuring certain aspects.
Reference throughout this specification to “one embodiment” or “an embodiment” means that a particular feature, structure, or characteristic described in connection with the embodiment is included in at least one embodiment of the present invention. Thus, the appearances of the phrases “in one embodiment” or “in an embodiment” in various places throughout this specification are not necessarily all referring to the same embodiment. Furthermore, the particular features, structures, or characteristics such as those shown in different drawings may be combined in any suitable manner in one or more embodiments.
Referring to
Each surgical tool 107 may be manipulated manually, robotically, or both, during the surgery. For example, the surgical tool 107 may be a tool used to enter, view, or manipulate an internal anatomy of the patient 106. In an embodiment, the surgical tool 106 is a grasper that can grasp tissue of the patient. The surgical tool 106 may be controlled manually, directly by a hand of a bedside operator 108; or it may be controlled robotically, via sending electronic commands to actuate movement of the surgical robotic arm 104 to which the surgical tool 106 is attached. The surgical robotic arms 104 are shown as a table-mounted system, but in other configurations the surgical robotic arms 104 may be mounted in a cart, ceiling or sidewall, or in another suitable structural support.
Generally, a remote operator 109 such as a surgeon may use the user console 102 to remotely manipulate the surgical robotic arms 104 and the attached surgical tools 107, e.g., teleoperation. The user console 102 may be located in the same operating room as the rest of the surgical robotic system 100, as shown in
In some variations, the bedside operator 108 may also operate the surgical robotic system 100 in an “over the bed” mode, in which the bedside operator 108 (user) is now at a side of the patient 106 and is simultaneously manipulating i) a robotically-driven tool (having an end effector) that is attached to the surgical robotic arm 104, e.g., with a handheld UID 114 held in one hand, and ii) a manual laparoscopic tool. For example, the bedside operator's left hand may be manipulating the handheld UID to control a surgical robotic component, while the bedside operator's right hand may be manipulating a manual laparoscopic tool. Thus, in these variations, the bedside operator 108 may perform both robotic-assisted minimally invasive surgery and manual laparoscopic surgery on the patient 106.
During an example procedure (surgery), the patient 106 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 surgical robotic system 100 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 surgical robotic system 100 including its surgical robotic arms 104 may be performed. Next, the surgery proceeds with the remote operator 109 at the user console 102 utilizing the foot-operated controls 113 and the UIDs 114 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 108 who may perform tasks such as retracting tissues, performing manual repositioning, and tool exchange upon one or more of the surgical robotic arms 104. Non-sterile personnel may also be present to assist the remote operator 109 at the user console 102. When the procedure or surgery is completed, the surgical robotic system 100 and the user console 102 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 102.
In one embodiment, the remote operator 109 holds and moves the UID 114 to provide an input command to move a robot arm actuator 117 in the surgical robotic system 100. The UID 114 may be communicatively coupled to the rest of the surgical robotic system 100, e.g., via a console computer system 116. The UID 114 can generate spatial state signals corresponding to movement of the UID 114, 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 117. The surgical robotic system 100 may use control signals derived from the spatial state signals, to control proportional motion of the actuator 117. In one embodiment, a console processor of the console computer system 116 receives the spatial state signals and generates the corresponding control signals. Based on these control signals, which control how the actuator 117 is energized to move a segment of the surgical robotic arm 104, the movement of a corresponding surgical tool that is attached to the arm may mimic the movement of the UID 114. Similarly, interaction between the remote operator 109 and the UID 114 can generate for example a grip control signal that causes a jaw of a grasper of the surgical tool 107 to close and grip the tissue of patient 106.
Surgical robotic system 100 may include several UIDs 114, where respective control signals are generated for each UID that control the actuators and the surgical tool (end effector) of a respective surgical robotic arm 104. For example, the remote operator 109 may move a first UID 114 to control the motion of an actuator 117 that is in a left robotic arm, where the actuator responds by moving linkages, gears, etc., in that surgical robotic arm 104. Similarly, movement of a second UID 114 by the remote operator 109 controls the motion of another actuator 117, which in turn moves other linkages, gears, etc., of the surgical robotic system 100. The surgical robotic system 100 may include a right surgical robotic arm 104 that is secured to the bed or table to the right side of the patient, and a left surgical robotic arm 104 that is at the left side of the patient. An actuator 117 may include one or more motors that are controlled so that they drive the rotation of a joint of the surgical robotic arm 104, to for example change, relative to the patient, an orientation of an endoscope or a grasper of the surgical tool 107 that is attached to that arm. Motion of several actuators 117 in the same surgical robotic arm 104 can be controlled by the spatial state signals generated from a particular UID 114. The UIDs 114 can also control motion of respective surgical tool graspers. For example, each UID 114 can generate a respective grip signal to control motion of an actuator, e.g., a linear actuator, that opens or closes jaws of the grasper at a distal end of surgical tool 107 to grip tissue within patient 106.
In some aspects, the communication between the surgical platform 105 and the user console 102 may be through a control tower 103, which may translate user commands that are received from the user console 102 (and more particularly from the console computer system 116) into robotic control commands that are transmitted to the surgical robotic arms 104 on the surgical platform 105. The control tower 103 may also transmit status and feedback from the surgical platform 105 back to the user console 102. The communication connections between the surgical platform 105, the user console 102, and the control tower 103 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 surgical robotic system 100 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 or 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.
There is a tool drive 230 to which different surgical tools (e.g., surgical tool 240, as well as other detachable surgical tools—not shown) may be selectively attached (one at a time.) This may be done by for example a human user holding the housing of the surgical tool 240 in her hand and moving the latter in the direction of arrow 280 shown until the outside surface of the surgical tool 240 in which there are one or more tool disks (e.g., tool disk 244-i) comes into contact with the outside surface of the tool drive 230 in which there are one or more drive disks (e.g., drive disk 234-j). In the example shown, the tool drive 230 is a segment of the surgical robotic arm 220 at a distal end portion of the surgical robotic arm 220. A proximal end portion of the arm 220 is secured to a surgical robotic platform, such as a surgical table that is not shown in
Control unit 210 is responsible for controlling motion of the various motorized joints in the surgical robotic arm 220 (including the drive disks 234) through which operation of end effector 246 (its position and orientation as well as its surgical function) which mimics that of a user input device is achieved. This is achieved via a mechanical transmission in the surgical tool 240, when the surgical tool 240 has been engaged to transfer force or torque from the tool drive 230. The control unit 210 may be implemented as a programmed processor, for example as part of the control tower 103 of
The end effector 246 may be any surgical instrument, such as jaws, a cutting tool, an endoscope, spreader, implant tool, etc. Different surgical tools each having different end effectors can be selectively attached (one at a time) to robotic arm 220 for use during a surgical or other medical procedure. The end effector 246 depicted in the example of
The robotic arm 220 includes a tool drive 230, in which there are one or more actuators, such as actuator 238-j. Each actuator may be a linear or rotary actuator that has one or more respective electric motors (e.g., a brushless permanent magnet dc motor) whose drive shaft may be coupled to a respective drive disk 234-j through a transmission (e.g., a gear train that achieves a given gear reduction ratio—not shown). The tool drive 230 includes one or more drive disks 234 that may be arranged on a planar or flat surface of the tool drive 230, wherein the figure shows several such drive disks that are arranged on the same plane of the flat surface. Each drive disk (e.g., drive disk 234-j) is exposed on the outside surface of the tool drive 230 and is designed to mechanically engage (e.g., to securely fasten via snap, friction, or other mating features) a mating tool disk 244-j of the surgical tool 240, to enable direct torque transfer between the two. This may take place once for example a planar or flat surface of the surgical tool 240 and corresponding or mating planar or flat surface of the tool drive 230 are brought in contact with one another.
Furthermore, a motor driver circuit (not shown but that may for example be installed in the tool drive 230 or elsewhere in the surgical robotic arm 220) is electrically coupled to the input drive terminals of a constituent motor of one or more of the actuators 238. The motor driver circuit manipulates the electrical power drawn by the motor in order to regulate for example the speed of the motor or its torque, in accordance with a motor driver circuit input, which can be set or controlled by control unit 210, which results in the powered rotation of the associated drive disk (e.g., drive disk 234-j).
When the mating drive disk 234-j is mechanically engaged to a respective tool disk 244-j, the powered rotation of the drive disk 234-j causes the tool disk 244-j to rotate, e.g., the two disks may rotate as one, thereby imparting motion on, for example, linkages, gears, cables, chains, or other transmission means within the surgical tool 240 for controlling the movement and operation of the end effector 246 which may be mechanically coupled to the transmission means.
Different surgical tools may have different numbers of tool disks based on the types of movements and the number of degrees of freedom in which the movements are performed by their end effectors, such as rotation, articulation, opening, closing, extension, retraction, applying pressure, etc.
Furthermore, within the surgical tool 240, more than one tool disk 244 may contribute to a single motion of the end effector 246 to achieve goals such as load sharing by two or more motors that are driving the mating drive disks 234, respectively.
In another aspect, within the tool drive 230, there may be two or more motors whose drive shafts are coupled (via a transmission) to rotate the same output shaft (or drive disk 234), to share a load.
In yet another aspect, within the surgical tool 240, there may be a transmission which translates torque from two drive disks 234 (via respective tool disks 244) for performing complimentary actions in the same degree of freedom, e.g., a first drive disk 234-i rotates a drum within the housing of the surgical tool 230 to take in one end of a cable, and a second drive disk 234-j rotates another drum within the housing of the surgical tool 230 to take in the other end of the cable. As another example, the extension and the shortening of an end effector along a single axis may be achieved using two tool disks 234-i, 234-j, one to perform the extension and another to perform the retraction, for example via different cables. This is in contrast to an effector that also moves in one degree of freedom (e.g., extension and shortening longitudinally along a single axis of movement) but that only needs a single tool disk to control its full range of movement. As another example, an effector that moves in multiple degrees of freedom (e.g., such as a wristed movement, movement along multiple axes, activation of an energy emitter in addition to end effector movement, etc.) may necessitate the use of several tool disks (each being engaged to a respective drive disk). In another type of surgical tool 240, a single tool disk 244 is sufficient to perform both extension and retraction motions, via direct input (e.g., gears). As another example, in the case of the end effector 246 being jaws, two or more tool disks 244 may cooperatively control the motion of the jaws, for load sharing, as discussed in greater detail herein.
In some embodiments, when surgical tool 240 is first attached to or installed on tool drive 230 such that the tool disks are brought substantially into coplanar and coaxial alignment with corresponding drive disks (though the tool and drive disks are perhaps not yet successfully engaged), control unit 210 initially detects the type of the surgical tool 240. In one embodiment, surgical tool 240 has an information storage unit 242, such as a solid state memory, RFID tag, bar code (including two-dimensional or matrix barcodes), etc., that identifies its tool or end effector information, such as one or more of identification of tool or end effector type, unique tool or end effector ID, number of tool disks used, location of those tool disks being used (e.g., from a total of six possible tool disks 244-e, f, g, h, i, j), type of transmission for the tool disks (e.g., direct drive, cable driven, etc.), what motion or actuation a tool disk imparts on the end effector, one or more tool calibration values (e.g., a rotational position of the tool disk as determined during factor testing/assembly of the tool), whether motion of the end effector is constrained by a maximum or minimum movement, as well as other tool attributes. In one embodiment, the information storage unit 242 identifies minimal information, such as a tool ID, which control unit 210 may use to perform a lookup of the various tool attributes.
The tool drive 230 may include a communication interface 232 (e.g., a memory writer, a near field communications, NFC, transceiver, RFID scanner, barcode reader, etc.) to read the information from the information storage unit 242 and pass the information to control unit 210. Furthermore, in some embodiments, there may be more than one information storage unit in surgical tool 240, such as one information storage unit associated with each tool disk 244. In this embodiment, tool drive 230 may also include a corresponding sensor for each possible information storage unit that would be present in a given tool.
After surgical tool 240 is attached with tool drive 230, such that tool disks are brought into alignment and are superimposed on corresponding drive disks (although not necessarily mechanically engaged), and after the tool disk information is obtained, e.g., read by control unit 210, the control unit 210 performs an engagement process to detect when all of the tool disks that are expected to be attached to respective drive disks are mechanically engaged with their respective drive disks (e.g., their mechanical engagement has been achieved, or the tool drive is now deemed engaged with the tool). That is, attaching the surgical tool 240 with the tool drive 230 does not necessarily ensure the proper mating needed for mechanical engagement of tool disks with corresponding drive disks (e.g., due to misalignment of mating features). The engagement process may include activating one or more motors of an actuator (e.g., actuator 238-j) that drives a corresponding drive disk 234-j. Then, based on one or more monitored motor operating parameters of the actuator 238-j, while the latter is driving the drive disk 234-j, the mechanical engagement of the tool disk 244-i with a drive disk 234-j can be detected, as discussed in greater detail below. This process may be repeated for every drive disk 234 (of the tool drive 230) that is expected to be currently attached to a respective tool disk 244 (e.g., as determined based on the tool disk information obtained for the particular surgical tool 240 that is currently attached.)
Upon detecting that a particular type of surgical tool 240 has been attached with the tool drive 230, the control unit 210 activates one or more actuators (e.g., motors) of the tool drive 230 that have been previously associated with that type of surgical tool 240. In some embodiments, each actuator that is associated with a corresponding drive disk 234 of surgical tool 240 may be activated simultaneously, serially, or a combination of simultaneous and serial activation.
Returning to
In another embodiment, the selected actuator is signaled to turn so as to cause its attached tool disk 244 to rotate so that the end effector 246 that is connected to the tool disk 244 moves towards a physical constraint (e.g. a jaw opens until it stops against a cannula wall, a maximum in a range of motion is achieved when bumping against a hard stop in a fully open position, etc.) In yet another embodiment, such as an endoscope embodiment where two actuators are sharing the load being rotation of an endoscope camera where there may be no hard stops against rotation of the camera, the selected actuator rotates its attached tool disk 244-i in a direction that opposes the motion of another tool disk 244-j that is also rotatably coupled to the same output shaft in the transmission housing of the tool 240. In that instance, as soon as one of the tool disks 244-i, 244-j engages, it will act as a physical constraint to the other tool disk. Other predetermined directions of movement may also be used consistent with the discussion herein.
Furthermore, in some embodiments, the actuator's movement is ramped or increased gradually by the control unit 210 (e.g., the control unit 210 signals or commands the actuator to start to rotate at a slow speed at the beginning of movement and then progressively increase the speed, and then progressively decrease the speed at detection of engagement).
In one embodiment, the calibration values stored in the information storage unit 242 of the surgical tool 246 may be used to expedite tool engagement. For example, the calibration values can include a factory determined position (angle) of a particular tool disk 244-j, recorded during product assembly or testing. The engagement process may need to have knowledge of a home position of a corresponding drive disk 234-j. This knowledge may be obtained by the control unit 210 performing a tool driver calibration routine, in which it determines when a particular drive disk 234-j has reached a home position (as the control unit actuates the drive disk 234-j), such that position of that drive disk 234-j is now known by the control unit 210. Note that the control unit 210 may do so while only relying on output from a position sensor that is in the tool drive 230, and the tool 240 itself may be passive in that it has no electronic sensors in it.
Next, the control unit 210 may activate the corresponding actuator of the drive disk 234-j so that the drive disk 234-j turns at a high speed until a position variable of the drive disk 234-j comes close to the factory determined position. When the drive disk satisfies a threshold distance relative to the factory determined position (e.g., a home position of the tool disk) which implies that mating features of the tool disk and drive disk are near alignment, the speed may be reduced so as to increase the likelihood that the mating features will engage one another upon their initial encounter. This process may work for both direct transmissions as well as for tool disks that utilize a cable to drive the effector (as in
In some embodiments, the motor operating parameters monitored by the control unit 210 (via sensors 236) are interpreted to mean successful mechanical engagement of a tool disk with a drive disk. These can include measurements of torque applied by the actuator 238-j as measured by a torque or force sensor, measurements of current supplied to a motor of the actuator 238-j when attempting to drive the actuator to move at a certain velocity (e.g., where the sensor 236-j may include a current sensing resistor in series with a motor input drive terminal), measurements of electrical impedance as seen into the input drive terminals of the motor of the actuator when attempting to drive the motor to move at a certain velocity (e.g., where the sensor 236-j may also include a voltage sensing circuit to measure voltage of the motor input drive terminal), speed of the actuator 238-j (e.g., where the sensor 236-j may include a position encoder on an output shaft of the actuator 238-j or on a drive shaft of the motor), as well as other parameters referred to here as motor operating parameters. While monitoring the one or more motor operating parameters of a particular actuator, when one or more of these parameters satisfies (e.g., meets or reaches) a predetermined, condition or threshold, the detection of such a situation can be interpreted by control unit 210 as a mechanical engagement event. Note that satisfying the predetermined condition may for example mean that the monitored operating parameter exhibits certain changes, as per the threshold, relative to an operating parameter of another motor that is part of the same actuator 238-j or that is part of another actuator 238-i which his being controlled by the control unit 210 simultaneously during the engagement detection process.
In some embodiments, detection of certain motor operating parameters during operation of the actuator 238-j, such as one or more of i) torque that satisfies (e.g., rises and reaches) a torque threshold, ii) motor current that satisfies (e.g., rises and reaches) a current threshold, iii) impedance that drops below an impedance threshold, iv) motor speed dropping below a motor velocity threshold, or a combination thereof, are used by control unit 210 to determine that mechanical engagement of tool disk 244-j to drive disk 234-j has occurred. The following are some examples of such a process.
In one embodiment, where the tool disk 244-j uses a cable 446 to control movement of its end effector 246, the actuator 238-j (that is driving the corresponding drive disk 234-j) will move in the direction that winds the cable (here, the direction of motion 445 of which the control unit 210 may have knowledge, based on having previously identified the type of tool 240).
A drive disk 234 is concentrically aligned with the tool disk 244, as seen in
As illustrated in
The physical constraint on further turning of the drive disk 234 enables detection of the mechanical engagement event, by the control unit 210 making its measurement of motor operating parameters and comparison to one or more thresholds that may have been predetermined to be indicative of engagement. For example, the velocity/speed of the motor dropping below one or more threshold values indicates engagement because the motor is constrained from further movement in the winding direction. As another example, engagement occurs when the torque applied by the motor increases to a value greater than a freely moving motor and/or greater than the friction that results from tool disks and drive disks and/or attachment features rubbing or sliding against one another before engagement. Similarly, in other embodiments, the measured current and/or impedance approaches and may reach a maximum predetermined value when engagement occurs and as power is continued to be supplied to a motor in an attempt to continue movement of the drive disk in the predetermined direction. When one or more of these thresholds are satisfied, control unit 210 can conclude that engagement has occurred between a tool disk and a drive disk.
Other forms of physical constraint can be used by control unit 210 for detecting successful drive disk and tool disk engagement. For example, a motion constraint, such as a mechanical limit of a range of motion imposed by a joint of the end effector (e.g., a joint that can only rotate about an axis from −45 to 45 degrees) or a physical barrier to movement (e.g., a cannula wall that impedes movement of the end effector), may also be utilized as the physical constraint/hard stop discussed above for either cable driven or non-cable driven tools.
In some embodiments, the surgical tool 240 may not have a physical constraint/hard stop in at least one degree of freedom of movement from which motor operating parameters can be measured. For example, a tool disk 244-j may be responsible for imparting unconstrained rotation of the end effector 246 element about an axis. Even with such unconstrained movement however, the control unit 210 may still detect engagement of the drive disk 234-j to the tool disk 244-j by detecting changes in one or more motor operating parameters during the engagement detection process. For example, a motor operating parameter pattern, such as repeating torque spikes caused by the features 447 rotating past the features 488 (and thus not engaging each other) is indicative of lack of engagement. Accordingly, the stopping or non-existence of that torque spike pattern (while the drive disk 234-j continues to turn) means that the control unit 210 has detected tool disk to drive disk engagement.
In some embodiments, a physical constraint may be created by the use of coordinating movement of multiple drive disks, and/or by letting a single drive disk engage before engaging a second drive disk. For example, consider the case where two or more tool disks (in the same housing of a surgical tool 240) are connected by a transmission in the housing of the tool 240 to share a load (end effector 246) when turning in the same direction, such as when a cutting or clamping tool may need to apply force beyond that which a single actuator 238-j could supply. In such an embodiment, two or more actuators that are turning in the same direction (their respective drive disks are turning in the same direction) are driving the same output shaft that is inside the surgical tool 240 (due to the transmission in the surgical tool 240 that is connected to the corresponding tool disks.) Now, if the two actuators are signaled to move in opposing directions, then as soon as one of the drive disks engages its corresponding tool disk, this becomes a physical constraint to the other drive disk (when the other drive disk has engaged its corresponding tool disk.) When one of the two or more actuators engages (its drive disk engages its corresponding tool disk), the control unit 210 creates a constraint for the other actuator by signaling the engaged actuator to, for example, enter a position hold state. That is, a first actuator 238-j will be commanded by the control unit 210 to hold its position while the other, non-engaged actuator 238-i continues to be signaled to drive and thus turn or move (toward engagement between its drive disk 234-i and tool disk 244-i.) In this embodiment, one or both of the actuators' motor operating parameters can be monitored to detect engagement between a tool disk and drive disk pair. Furthermore, if a hard stop does exist (the control unit 210 expects or knows that this particular tool 240 has a hard stop), then the actuator of an engaged drive disk can be signaled to continue to drive or turn in the same direction until the hard stop is detected. The other actuator may continue to turn in the opposing direction and attempt to engage while the already engaged actuator holds its position at the hard stop.
Returning to
In some embodiments, after an engagement is detected by control unit 210, control unit 210 may take one or more additional actions with respect to the end effector 246 to confirm the engagement. For example, control unit 210 may subject the end effector to a predetermined set of one or more motions to test the engagement, such as signaling a drive disk to reverse direction thereby moving end effector in an opposite direction to what it was doing during the engagement process, moving the end effector to achieve an expected maximum degree of movement, etc. Such movements enable control unit 210 to for example reach a hard stop or reach a physical constraint again, which is detected as discussed herein based on one or more motor operating parameters, to confirm mechanical engagement between the tool disks and drive disks.
Furthermore, in some embodiments, control unit 210 may utilize the hard stop or physical constraint to set a reference position of the end effector. For example, knowing that a hard stop is to occur when the end effector reaches 270° of rotation in a certain direction, control unit 210 can set calibration values for a position of the corresponding actuator or drive disk. Then, movement of the actuator or drive disk can be tracked based on number of rotations of the drive disk, motor shaft, gear ratio, drive disk/motor indexing, etc.
Furthermore, in some embodiments, control unit 210 may signal actuation by one or more motors for a specified number of times, a specified number of rotations, or a combination thereof, when attempting to achieve engagement of tool disks with drive disks. When engagement is not achieved within a threshold amount of time, number of rotations, etc. control unit 210 may issue a warning to an operator of the surgical robotic system (e.g., an operator of system 100 of
After mechanical engagement of drive disks with tool disks is detected by control unit 210, an operator may command motions of one or more joints of surgical robotic arm 220. As discussed above, the commands are received from or originate from one or more UIDs (e.g., UID 114), as spatial state signals from the UIDs which are translated to corresponding control signals that the control unit 210 provides (e.g., a desired motor speed or current and direction of rotation) to energize one or more actuators of tool drive 230 which will change the pose, position or other state of the end effector. In one embodiment, where two or more actuators are cooperatively controlling the motion of the end effector, such as when two or more tool disks are to impart motion of the end effector in the same degree of freedom, control unit 210 further performs a cooperative control technique to ensure that the actuators operate in a complementary fashion when moving the end effector, share a load associated with movement of the end effector, do not fight one another in imparting such motion, maintain a balance between the actuators so that one actuator does not continually perform more or less work than the other actuators, etc. For example, when two or more actuators are used to control the opening, closing, and application of grip force of jaws of the end effector 246, control unit utilizes a multi-actuator operation control technique that identifies a first of the two or more actuators as a master actuator, and the remaining one or more actuators as slave actuators. Then, a position command that has been provided to signal the master actuator to move the end effector 246 to a commanded position, is also provided to signal the slave actuator to move the end effector 246 to the same commanded position. For instance, if the master actuator and the slave actuator are replicates, then if the master actuator receives a certain polarity (direction of rotation of its motor) and a certain motor current value to satisfy a given end effector position command, the same polarity and current value may also be supplied to each of the slave actuators. In some embodiments however, there may be some compensation for how motion of the actuators complement each other, for example, reversing polarity for the slaves when rotation directions of master and slave actuators are different, adjusting gain (e.g., of the commanded motor current) when attributes of the motors are different, etc., as discussed in greater detail herein.
The control unit 210 including its programmed processor 312 may be integrated into the surgical robotic system 100 (
Memory 314 is coupled to one or more processors 312 (generically referred to here as “a processor” for simplicity) to store instructions for execution by the processors 312. In some embodiments, the memory is non-transitory, and may store one or more program modules, including a tool control 320 and an engagement control 316, whose instructions configure the processor 312 to perform the engagement processes described herein. In other words, the processor 312 may operate under the control of a program, routine, or the execution of instructions stored in the memory 314 as part of the tool control 320 and engagement control 316 to execute methods or processes in accordance with the aspects and features described herein.
In response to detecting the attaching of the surgical tool 240 with the tool drive 230, engagement control 316 performs (or rather configures the processor 312 to perform) a process for detecting the mechanical engagement of tool disks with corresponding drive disks (which are actuator driven), such as engagement of tool disk 344-i with corresponding drive disk 334-i. The engagement control 316 may signal (through the tool control 320) that one or more of the actuators of tool drive 230 impart motion of their respective drive disks. In some embodiments, these instructions or signals include instructions to energize, activate or otherwise provide power to a motor so that the motor can produce or apply a specific amount of torque, cause the drive disk to rotate at a specific speed and direction, by applying a certain voltage command, current command, etc. Furthermore, the motion of each drive disk can be controlled to start rapidly initially during the engagement detection process, and then ramp down slowly once engagement is near, or proximity to alignment of mating features is detected or a predetermined time limit is reached without detecting engagement. For instance, based on the relative position of a drive disk to a tool disk (which may be based on a known calibration value), the actuator speed is ramped down to a predetermined speed (e.g., until the drive disk is within a threshold distance of where the mating features become aligned.
The engagement control 316 monitors one or more motor operating parameters of the motors of actuators of the tool drive 230. As discussed herein, the motor operating parameters can include torque imparted by a motor, voltage supplied to a motor, impedance as seen on the input drive terminals of a motor when attempting to drive the motor to move at a certain velocity, motor speed, as well as other motor operating parameters. One or more of these parameters may be monitored by comparing them to thresholds, so that when the thresholds are reached then a mechanical engagement event is deemed to have occurred (between, for example, tool disk 344-i and drive disk 334-i.) As discussed herein, mechanical engagement is expected to be detected when corresponding mating features of a tool disk and a drive disk align and fasten with one another to that rotation of the drive disk will cause for example both immediate and proportional rotation of the mechanically engaged tool disk (as one with the drive disk.) Such engagement is expected to be detected when one or more of the motor operating parameters satisfies a threshold (e.g., reaching or exceeding a threshold indicative of a hard stop being reached, a maximum torque, voltage, or impedance value, a torque, voltage, or impedance value greater than what would be needed to overcome friction that initially appears when the tool 240 is first attached to the tool drive 230. The engagement control 316 thus infers or deduces that tool disk 344-i and drive disk 334-j have engaged with one another (e.g., fastening of respective disk mating features with one another).
Note that engagement control 316 need not monitor sensor readings for all of the motor parameters that are available from the tool drive 230. Instead engagement control 316 could monitor only one or more characteristics of interest based on, for example, whether surgical tool 240 is subject to any hard stops or physical movement constraints, whether one or more tool disks operate in concert (cooperate with each other) to impart movement on surgical tool 240, whether tool disks impart movement on surgical tool 240 via cables or directly (e.g., through a gear box), or a combination thereof, in order to determine when a threshold associated with engagement is satisfied.
In some embodiments, engagement control 316 monitors patterns of motor operating parameters, such as patterns of torque, voltage, motor speed, impedance, etc. that are the result of drive disk 234-j rotating over tool disk 244-j but without mechanical engagement. That is, a certain amount of torque, force, voltage, etc. could be measured, which is greater than what is exhibited by a free moving drive disk (where the surgical tool 240 is not attached to the tool drive 230) and less than a mechanically engaged drive disk (when for example mating features of the tool and drive disks pass each other while the tool and tool drive housings are in contact, but without engaging.) When this motor parameter pattern changes as detected, such as due to a hard stop or physical motion constraint being encountered, engagement control 316 is said to have detected mechanical engagement. Monitoring and interpreting pattern based motor operating pattern also enables engagement control 316 to detect engagement (between tool disk 344-j and drive disk 334-j) even when no hard stop or motion constraint is available, or without having to drive a drive disk to a tool's hard stop or other motion constraint.
In some embodiments, when engagement control 316 detects mechanical engagement of tool disks with drive disks, it may also initiate a verification process or engagement check in which the actuators of tool drive 230 are signaled to undergo a predetermined set of one or more motions, to verify the detected engagement. For example, the actuators may be instructed to cause their respective drive disks to rotate in a direction opposite to the direction of engagement (the latter being the direction in which the drive disks were rotating when engagement was initially detected, e.g., in the direction of motion 445 seen in
Engagement control 316, based on having detected engagement of tool disks to drive disks, or based on a countdown timer having expired without detecting engagement, generates a notification for an operator of the surgical robotic system. The notification may either indicate that engagement has occurred so that the surgical tool 240 is ready for use, or that engagement has not occurred and so the surgical tool 240 should be reattached.
Referring to
Processing logic monitors one or more motor operating parameters of the actuator that is causing the rotation of the drive disk while activating the motor (processing block 504). In some embodiments, the operating parameters of the motor being monitored can include torque, motor current, motor velocity, or a combination thereof.
Based on the one or more monitored motor operating parameters, processing logic detects when the drive disk becomes mechanically engaged with the tool disk (processing block 506). In one embodiment, the detection occurs when or in response to at least one of the one or more motor operating parameters being monitored satisfying a corresponding condition or threshold. For example, the condition can be associated with a value of a motor operating parameter that occurs in response to the motor reaching a physical constraint against further rotation of the tool disk (e.g., reaching a mechanical limit of a range of motion when a physical barrier to the movement is encountered, a maximum degree of movement of the end effector of the tool is reached, opposition with another activated motor actuator occurs, etc.). As another example, the condition may represent a motor operating parameter exhibited when there is friction due to the drive disk contacting and sliding against the tool disk during rotation but without the mechanical latching or fastening of the drive disk to the tool disk. In embodiments discussed herein, when mechanical engagement of the drive disk with the tool disk is detected, one or more additional actions, such as generating system or operator notifications, initiating one or more engagement verification operations, storing reference values, etc. may be performed by processing logic.
At least one motor of the tool drive is then activated causing the at least one motor to rotate an associated drive disk corresponding to a tool disk (that is connected by a transmission in the surgical tool to control motion of the end effector (processing block 554). In one embodiment, a current to be supplied to the motor, a torque to be achieved by the motor, or a direction of movement is signaled to the tool control 320, so that the motor will cause the drive disk to rotate at a predetermined velocity in a predetermined direction. In other words, processing logic causes a signal to be sent to a motor driver circuit, commanding the motor driver circuit to apply power to or energize the motor. In some embodiments, the predetermined speed is set based on a determination, at the time of the detected attachment of the tool drive with the detachable surgical tool, of for example, the type of tool, tool drive transmission type (e.g., cable driven, direct drive, etc.), type of restraint that will be encountered (e.g., a hard stop, a physical constraint, opposing motion constraint), or a combination of such factors. One or more motor operating parameters of the at least one motor of the tool drive are then monitored (processing block 556). The monitored motor operating parameters may correspond with those being controlled by processing logic to cause motion of the motor (e.g., torque, speed.)
Returning to
In response to the detected engagement of the drive disk with the corresponding tool disk, the motion of the drive disk is stopped (processing block 566). In one embodiment, when the motion is stopped, one or more reference values associated with that position or state of the end effector may be stored for later reference and use. For example, where a physical constraint was used to detect the engagement, an index value of the motor, a rotation count, etc. at that moment can be stored, and used later for re-locating the end effector at or near the physical constraint. The physical constraint may be, e.g., maximum cable length, cannula wall, maximum of a range of motion, etc. Furthermore, to prevent excessive tensioning of a cable in the case of a cable driven tool, the motion of the drive disk may be stopped, or the motor deactivated, simultaneously or nearly simultaneously in response to the detection performed at block 558.
Once engagement of all of the relevant drive disks (those that correspond to in-use tool disks of the particular surgical tool) has been detected in processing block 567 (where the process described above in blocks 554-556-558-564-566 may have been performed for each respective drive disk) then a notification of tool engagement is then generated (processing block 568). The notification may be a visual notification (e.g., a graphical user interface notification), an audible notification (e.g., a tone, sound, etc.), sensory (e.g., a haptic notification), or a combination of such generated by user interface hardware of the surgical robotic system.
Returning briefly to processing block 558, when the engagement condition is not met (e.g., a monitored motor operating parameter does not satisfy a threshold such that mechanical engagement of a tool disk and a corresponding drive disk has not occurred), a determination of whether a time or rotation limit has been reached is performed (processing block 560). A failure to engage may be due to a broken cable, a tool disk and drive disk not positioned close enough to each other to allow for engagement, etc.) The time limit may be a predetermined maximum time interval (countdown timer value) in which a drive disk is allowed to rotate without detecting mechanical engagement with a tool disk. Similarly, the rotation limit may be a number of motor rotations necessary to impart one or more full rotations of its respective drive disk. For example, if the rotation limit is associated with one full rotation of the drive disk, it is assumed that engagement should occur within a single revolution of a drive disk. If the time limit, rotation limit, or some combination of limits are not reached (processing block 560), the monitoring of the one or more motor operating parameter values continues (return to processing block 556.) However, if the one or more limits are reached (processing block 560), a notification, similar to the notification of processing block 568, that an error has occurred and tool engagement has failed is generated (processing block 562). In this case, an operator of the surgical system may be instructed to detach the surgical tool from the tool drive, and then re-attach them to restart the engagement process of
Turning now to
Staying with
In one embodiment, a feedback loop may be used to monitor one or more motor operating parameters and detect when a threshold has been reached.
A sensor, such as a torque sensor, velocity sensor, or a combination of sensors, measures the actual velocity of the motor/actuator. The actual velocity is then provided as feedback back to controller 602, which may calculate an error based on a disparity between the actual velocity of the motor and the commanded velocity. The controller 602 responds to the disparity by adjusting its controller output, e.g., a motor current command to the motor/actuator 604, a torque to be achieved by the motor/actuator 604, an impedance value, etc. that will cause the motor/actuator 604 to move towards the velocity command or setpoint. In some embodiments, controller 602 may output a motor operating parameter, such as the torque, current, impedance, velocity, etc., calculated as a result of executing the feedback loop.
In another embodiment, controller 602 can include a saturation block (not shown) to ensure that the controller output (e.g., a value that is controlling the motor current) does not exceed a threshold, e.g. a current threshold, torque threshold, impedance threshold. The value used by or input to the saturation block may be dual-purposed, namely also used as the motor operating parameter value supplied to the processor (for purposes of being monitored during the engagement process.)
A velocity command (e.g., control variable setpoint) is received by controller 702. Controller 702 provides a loop/feedback mechanism to adjust and provide an appropriate current (e.g., the controller output) to drive motor/actuator 704 at the velocity and in the direction of the velocity command/setpoint. For example, the direction may be in a winding direction of a cable driven surgical tool's tool disk. As another example, the direction may be a direction that will oppose the motion of another motor of the tool drive. As yet another example, the direction may be a direction that causes the motor to advance the end effector towards a hard stop, such as a physical barrier or a mechanical limit of range of motion. In one embodiment, the controller 702 may use various values, such as desired torque to achieve the velocity, current to achieve the velocity, impedance indicative of a velocity, etc. as a measure for generating the controller's current output to motor/actuator 704.
Adjustments are made to the original velocity command, such as a proportional adjustment (e.g., block kp) to adjust the velocity proportional to an error (e.g., as determined by the feedback), as well as an integral adjustment (e.g., block ki) to adjust the velocity to account for past error integrated over time. The integral adjustment may further be adjusted using a restoring term generated by block kb which is in feedback loop for anti-windup, to further adjust the value of the integral adjustment. The integral adjusted value may be further adjusted by block 1/s (e.g., before being added to the proportional setpoint adjusted value. In one embodiment, a saturation block may be used in controller 702 as shown, to ensure that a value controlling the current supplied to the motor does not exceed a threshold, e.g. a current threshold, torque threshold, impedance threshold, etc. After the adjustments are carried out by the blocks discussed above, and the resulting current command value does not exceed the value set in the saturation block, the current command (e.g., the adjusted command, which has been corrected based on the feedback and PI adjustments) is fed into the current amplifier, so that the commanded current into the motor actuator 704 can be amplified by a factor. The factor may be fixed, based on properties of the motor/actuator 704, based on feedback from the motor/actuator 704, etc. The motor/actuator 704 is activated as per the amplified current, and feedback (e.g., speed, torque, velocity, etc. as determined by a sensor coupled with a motor) on the velocity response of the motor/actuator 704 is provided to the feedback loop implemented by controller 702 as shown.
As discussed above, the value used by (or input to) the saturation block may be used as the motor operating parameter value supplied to the processor for purposes of monitoring during the engagement process, e.g., representing present motor current or present motor impedance.
In another embodiment, the feedback may be used as a motor operating parameter value supplied to the processor for purposes of monitoring during the engagement process. Other variables computed in the controller 702 (e.g., adjusted and non-adjusted) may be used as a monitored motor operating parameter.
The above description of illustrated embodiments of the invention, including what is described below in the Abstract, is not intended to be exhaustive or to limit the invention to the precise forms disclosed. While specific embodiments of, and examples for, the invention are described herein for illustrative purposes, various modifications are possible within the scope of the invention, as those skilled in the relevant art will recognize. For example, although
Number | Date | Country | |
---|---|---|---|
Parent | 15999561 | Aug 2018 | US |
Child | 17881316 | US |