Patent ID: 12186033

In the figures, elements having the same designations have the same or similar functions.

DETAILED DESCRIPTION

In the following description, specific details are set forth describing some embodiments consistent with the present disclosure. It will be apparent to one skilled in the art, however, that some embodiments may be practiced without some or all of these specific details. The specific embodiments disclosed herein are meant to be illustrative but not limiting. One skilled in the art may realize other elements that, although not specifically described here, are within the scope and the spirit of this disclosure. In addition, to avoid unnecessary repetition, one or more features shown and described in association with one embodiment may be incorporated into other embodiments unless specifically described otherwise or if the one or more features would make an embodiment non-functional. The term “including” means including but not limited to, and each of the one or more individual items included should be considered optional unless otherwise stated. Similarly, the term “may” indicates that an item is optional.

FIG.1is a simplified diagram of a computer-assisted system100according to some embodiments. As shown inFIG.1, computer-assisted system100includes a device110with one or more movable or articulated arms120. Each of the one or more articulated arms120supports one or more end effectors. In some examples, device110may be consistent with a computer-assisted surgical device. The one or more articulated arms120each provides support for one or more instruments, surgical instruments, imaging devices, and/or the like mounted to a distal end of at least one of the articulated arms120. Device110may further be coupled to an operator workstation (not shown), which may include one or more master controls for operating the device110, the one or more articulated arms120, and/or the end effectors. In some embodiments, device110and the operator workstation may correspond to a da Vinci® Surgical System commercialized by Intuitive Surgical, Inc. of Sunnyvale, California. In some embodiments, computer-assisted surgical devices with other configurations, fewer or more articulated arms, and/or the like may optionally be used with computer-assisted system100.

Device110is coupled to a control unit130via an interface. The interface may include one or more wireless links, cables, connectors, and/or buses and may further include one or more networks with one or more network switching and/or routing devices. Control unit130includes a processor140coupled to memory150. Operation of control unit130is controlled by processor140. And although control unit130is shown with only one processor140, it is understood that processor140may be representative of one or more central processing units, multi-core processors, microprocessors, microcontrollers, digital signal processors, field programmable gate arrays (FPGAs), application specific integrated circuits (ASICs), and/or the like in control unit130. Control unit130may be implemented as a stand-alone subsystem and/or board added to a computing device or as a virtual machine. In some embodiments, control unit may be included as part of the operator workstation and/or operated separately from, but in coordination with the operator workstation.

Memory150is used to store software executed by control unit130and/or one or more data structures used during operation of control unit130. Memory150may include one or more types of machine readable media. Some common forms of machine readable media may include floppy disk, flexible disk, hard disk, magnetic tape, any other magnetic medium, CD-ROM, any other optical medium, punch cards, paper tape, any other physical medium with patterns of holes, RAM, PROM, EPROM, FLASH-EPROM, any other memory chip or cartridge, and/or any other medium from which a processor or computer is adapted to read.

As shown, memory150includes a motion control application160that supports autonomous and/or semiautonomous control of device110. Motion control application160may include one or more application programming interfaces (APIs) for receiving position, motion, and/or other sensor information from device110, exchanging position, motion, and/or collision avoidance information with other control units regarding other devices, such as a surgical table and/or imaging device, and/or planning and/or assisting in the planning of motion for device110, articulated arms120, and/or the end effectors of device110. And although motion control application160is depicted as a software application, motion control application160may be implemented using hardware, software, and/or a combination of hardware and software.

In some embodiments, computer-assisted system100may be found in an operating room and/or an interventional suite. And although computer-assisted system100includes only one device110with two articulated arms120, one of ordinary skill would understand that computer-assisted system100may include any number of devices with articulated arms and/or end effectors of similar and/or different design from device110. In some examples, each of the devices may include fewer or more articulated arms and/or end effectors.

Computer-assisted system100further includes a surgical table170. Like the one or more articulated arms120, surgical table170supports articulated movement of a table top180relative to a base of surgical table170. In some examples, the articulated movement of table top180may include support for changing a height, a tilt, a slide, a Trendelenburg orientation, and/or the like of table top180. Although not shown, surgical table170may include one or more control inputs, such as a surgical table command unit for controlling the position and/or orientation of table top180. In some embodiments, surgical table170may correspond to one or more of the surgical tables commercialized by Trumpf Medical Systems GmbH of Germany.

Surgical table170is also coupled to control unit130via a corresponding interface. The interface may include one or more wireless links, cables, connectors, and/or buses and may further include one or more networks with one or more network switching and/or routing devices. In some embodiments, surgical table170may be coupled to a different control unit than control unit130. In some examples, motion control application160may include one or more application programming interfaces (APIs) for receiving position, motion, and/or other sensor information associated with surgical table170and/or table top180. In some examples, motion control application160may plan and/or assist in the planning of motion for surgical table170and/or table top180. In some examples, motion control application160may contribute to motion plans associated with collision avoidance, adapting to and/or avoid range of motion limits in joints and links, movement of articulated arms, instruments, end effectors, surgical table components, and/or the like to compensate for other motion in the articulated arms, instruments, end effectors, surgical table components, and/or the like, adjust a viewing device such as an endoscope to maintain and/or place an area of interest and/or one or more instruments or end effectors within a field of view of the viewing device. In some examples, motion control application160may prevent motion of surgical table170and/or table top180, such as by preventing movement of surgical table170and/or table top180through use of the surgical table command unit. In some examples, motion control application160may help register device110with surgical table170so that a geometric relationship between device110and surgical table170is known. In some examples, the geometric relationship may include a translation and/or one or more rotations between coordinate frames maintained for device110and surgical table170.

FIG.2is a simplified diagram showing a computer-assisted system200according to some embodiments. For example, the computer-assisted system200may be consistent with computer-assisted system100. As shown inFIG.2, the computer-assisted system200includes a computer-assisted device210with one or more articulated arms and a surgical table280. Although not shown inFIG.2, the computer-assisted device210and the surgical table280are coupled together using one or more interfaces and one or more control units so that at least kinematic information about the surgical table280is known to the motion control application being used to perform motion of the articulated arms of the computer-assisted device210.

The computer-assisted device210includes various links and joints. In the embodiments ofFIG.2, the computer-assisted device is generally divided into three different sets of links and joints. Starting at the proximal end with a mobile cart215or patient-side cart215is a set-up structure220. Coupled to a distal end of the set-up structure is a series of links and set-up joints240forming an articulated arm. And coupled to a distal end of the set-up joints240is a multi-jointed manipulator260. In some examples, the series of set-up joints240and manipulator260may correspond to one of the articulated arms120. And although the computer-assisted device is shown with only one series of set-up joints240and a corresponding manipulator260, one of ordinary skill would understand that the computer-assisted device may include more than one series of set-up joints240and corresponding manipulators260so that the computer-assisted device is equipped with multiple articulated arms.

As shown, the computer-assisted device210is mounted on the mobile cart215. The mobile cart215enables the computer-assisted device210to be transported from location to location, such as between operating rooms or within an operating room to better position the computer-assisted device in proximity to the surgical table280. The set-up structure220is mounted on the mobile cart215. As shown inFIG.2, the set-up structure220includes a two part column including column links221and222. Coupled to the upper or distal end of the column link222is a shoulder joint223. Coupled to the shoulder joint223is a two-part boom including boom links224and225. At the distal end of the boom link225is a wrist joint226, and coupled to the wrist joint226is an arm mounting platform227.

The links and joints of the set-up structure220include various degrees of freedom for changing the position and orientation (i.e., the pose) of the arm mounting platform227. For example, the two-part column is used to adjust a height of the arm mounting platform227by moving the shoulder joint223up and down along an axis232. The arm mounting platform227is additionally rotated about the mobile cart215, the two-part column, and the axis232using the shoulder joint223. The horizontal position of the arm mounting platform227is adjusted along an axis234using the two-part boom. And the orientation of the arm mounting platform227may also adjusted by rotation about an arm mounting platform orientation axis236using the wrist joint226. Thus, subject to the motion limits of the links and joints in the set-up structure220, the position of the arm mounting platform227may be adjusted vertically above the mobile cart215using the two-part column. The positions of the arm mounting platform227may also be adjusted radially and angularly about the mobile cart215using the two-part boom and the shoulder joint223, respectively. And the angular orientation of the arm mounting platform227may also be changed using the wrist joint226.

The arm mounting platform227is used as a mounting point for one or more articulated arms. The ability to adjust the height, horizontal position, and orientation of the arm mounting platform227about the mobile cart215provides a flexible set-up structure for positioning and orienting the one or more articulated arms about a work space located near the mobile cart215where an operation or procedure is to take place. For example, arm mounting platform227may be positioned above a patient so that the various articulated arms and their corresponding manipulators and instruments have sufficient range of motion to perform a surgical procedure on the patient.FIG.2shows a single articulated arm coupled to the arm mounting platform227using a first set-up joint242. And although only one articulated arm is shown, one of ordinary skill would understand that multiple articulated arms may be coupled to the arm mounting platform227using additional first set-up joints.

The first set-up joint242forms the most proximal portion of the set-up joints240section of the articulated arm. The set-up joints240may further include a series of joints and links. As shown inFIG.2, the set-up joints240include at least links244and246coupled via one or more joints (not expressly shown). The joints and links of the set-up joints240include the ability to rotate the set-up joints240relative to the arm mounting platform227about an axis252using the first set-up joint242, adjust a radial or horizontal distance between the first set-up joint242and the link246, adjust a height of a manipulator mount262at the distal end of link246relative to the arm mounting platform227along an axis254, and rotate the manipulator mount262about axis254. In some examples, the set-up joints240may further include additional joints, links, and axes permitting additional degrees of freedom for altering a pose of the manipulator mount262relative to the arm mounting platform227.

The manipulator260is coupled to the distal end of the set-up joints240via the manipulator mount262. The manipulator260includes additional joints264and links266with an instrument carriage268mounted at the distal end of the manipulator260. An instrument270is mounted to the instrument carriage268. Instrument270includes a shaft272, which is aligned along an insertion axis. The shaft272is typically aligned so that it passes through a remote center of motion274associated with the manipulator260. Location of the remote center of motion274is typically maintained in a fixed translational relationship relative to the manipulator mount262so that operation of the joints264in the manipulator260result in rotations of the shaft272about the remote center of motion274. Depending upon the embodiment, the fixed translational relationship of the remote center of motion274relative to the manipulator mount262is maintained using physical constraints in the joints264and links266of the manipulator260, using software constraints placed on the motions permitted for the joints264, and/or a combination of both. Representative embodiments of computer-assisted surgical devices using remote centers of motion maintained using physical constraints in joints and links are described in U.S. patent application Ser. No. 13/906,888 entitled “Redundant Axis and Degree of Freedom for Hardware-Constrained Remote Center Robotic Manipulator,” which was filed May 13, 2013, and representative embodiments of computer-assisted surgical devices using remote centers of motion maintained by software constraints are described in U.S. Pat. No. 8,004,229 entitled “Software Center and Highly Configurable Robotic Systems for Surgery and Other Uses,” which was filed May 19, 2005, the specifications of which are hereby incorporated by reference in their entirety In some examples, the remote center of motion274may correspond to a location of a body opening, such as an incision site or body orifice, in a patient278where shaft272is inserted into the patient278. Because the remote center of motion274corresponds to the body opening, as the instrument270is used, the remote center of motion274remains stationary relative to the patient278to limit stresses on the anatomy of the patient278at the remote center of motion274. In some examples, the shaft272may be optionally passed through a cannula (not shown) located at the body opening. In some examples, instruments having a relatively larger shaft or guide tube outer diameter (e.g., 4-5 mm or more) may be passed through the body opening using a cannula and the cannula may optionally be omitted for instruments having a relatively smaller shaft or guide tube outer diameter (e.g., 2-3 mm or less).

At the distal end of the shaft272is an end effector276. The degrees of freedom in the manipulator260due to the joints264and the links266may permit at least control of the roll, pitch, and yaw of the shaft272and/or the end effector276relative to the manipulator mount262. In some examples, the degrees of freedom in the manipulator260may further include the ability to advance and/or withdraw the shaft272using the instrument carriage268so that the end effector276may be advanced and/or withdrawn along the insertion axis and relative to the remote center of motion274. In some examples, the manipulator260may be consistent with manipulators for use with the da Vinci® Surgical System commercialized by Intuitive Surgical, Inc. of Sunnyvale, California. In some examples, the instrument270may be an imaging device such as an endoscope, a gripper, a surgical instrument such as a cautery or a scalpel, and/or the like. In some examples, the end effector276may include additional degrees of freedom, such as roll, pitch, yaw, grip, and/or the like that allow for additional localized manipulation of portions of the end effector276relative to the distal end of the shaft272.

During a surgery or other medical procedure, the patient278is typically located on the surgical table280. The surgical table280includes a table base282and a table top284, with the table base282being located in proximity to mobile cart215so that the instrument270and/or end effector276may be manipulated by the computer-assisted device210while the shaft272of instrument270is inserted into the patient278at the body opening. The surgical table280further includes an articulated structure290that includes one or more joints or links between the table base282and the table top284so that the relative location of the table top284, and thus the patient278, relative to the table base282is controlled. In some examples, the articulated structure290may be configured so that the table top284is controlled relative to a virtually-defined table motion isocenter286that may be located at a point above the table top284. In some examples, isocenter286may be located within the interior of the patient278. In some examples, isocenter286may be collocated with the body wall of the patient at or near one of the body openings, such as a body opening site corresponding to remote center of motion274.

As shown inFIG.2, the articulated structure290includes a height adjustment joint292so that the table top284may be raised and/or lowered relative to the table base282. The articulated structure290further includes joints and links to change both the tilt294and Trendelenburg296orientation of the table top284relative to the isocenter286. The tilt294allows the table top284to be tilted side-to-side so that either the right or left side of the patient278is rotated upward relative to the other side of the patient278(i.e., about a longitudinal or head-to-toe (cranial-caudal) axis of the table top284). The Trendelenburg296allows the table top284to be rotated so that either the feet of the patient278are raised (Trendelenburg) or the head of the patient278is raised (reverse Trendelenburg). In some examples, either the tilt294and/or the Trendelenburg296rotations may be adjusted to generate rotations about isocenter286. The articulated structure290further includes additional links and joints298to slide the table top284along the longitudinal (cranial-caudal) axis relative to the table base282with generally a left and/or right motion as depicted inFIG.2.

FIGS.8A-8Gare simplified schematic views that illustrate various computer-assisted device system architectures that incorporate the integrated computer-assisted device and movable surgical table features described herein. The various illustrated system components are in accordance with the principles described herein. In these illustrations, the components are simplified for clarity, and various details such as individual links, joints, manipulators, instruments, end effectors, etc. are not shown, but they should be understood to be incorporated in the various illustrated components.

In these architectures, cannulas associated with one or more surgical instruments or clusters of instruments are not shown, and it should be understood that cannulas and other instrument guide devices optionally may be used for instruments or instrument clusters having a relatively larger shaft or guide tube outer diameter (e.g., 4-5 mm or more) and optionally may be omitted for instruments having a relatively smaller shaft or guide tube outer diameter (e.g., 2-3 mm or less).

Also in these architectures, teleoperated manipulators should be understood to include manipulators that during surgery define a remote center of motion by using hardware constraints (e.g., fixed intersecting instrument pitch, yaw, and roll axes) or software constraints (e.g., software-constrained intersecting instrument pitch, yaw, and roll axes). A hybrid of such instrument axes of rotation may be defined (e.g., hardware-constrained roll axis and software-constrained pitch and yaw axes) are also possible. Further, some manipulators may not define and constrain any surgical instrument axes of rotation during a procedure, and some manipulators may define and constrain only one or two instrument axes of rotation during a procedure.

FIG.8Aillustrates a movable surgical table1100and a single-instrument computer-assisted device1101aare shown. Surgical table1100includes a movable table top1102and a table support structure1103that extends from a mechanically grounded table base1104to support the table top1102at a distal end. In some examples, surgical table1100may be consistent with surgical table170and/or280. Computer-assisted device1101aincludes a teleoperated manipulator and a single instrument assembly1105a. Computer-assisted device1101aalso includes a support structure1106athat is mechanically grounded at a proximal base1107aand that extends to support manipulator and instrument assembly1105aat a distal end. Support structure1106ais configured to allow assembly1105ato be moved and held in various fixed poses with reference to surgical table1100. Base1107ais optionally permanently fixed or movable with reference to surgical table1100. Surgical table1100and computer-assisted device1101aoperate together as described herein.

FIG.8Afurther shows an optional second computer-assisted device1101b, which illustrates that two, three, four, five, or more individual computer-assisted devices may be included, each having a corresponding individual teleoperated manipulator and single-instrument assembly(ies)1105bsupported by a corresponding support structure1106b. Computer-assisted device1101bis mechanically grounded, and assemblies1105bare posed, similarly to computer-assisted device1101a. Surgical table1100and computer-assisted devices1101aand1101btogether make a multi-instrument surgical system, and they operate together as described herein. In some examples, computer-assisted devices1101aand/or1101bmay be consistent with computer-assisted devices110and/or210.

As shown inFIG.8B, another movable surgical table1100and a computer-assisted device1111are shown. Computer-assisted device1111is a multi-instrument device that includes two, three, four, five, or more individual teleoperated manipulator and single-instrument assemblies as shown by representative manipulator and instrument assemblies1105aand1105b. The assemblies1105aand1105bof computer-assisted device1111are supported by a combined support structure1112, which allows assemblies1105aand1105bto be moved and posed together as a group with reference to surgical table1100. The assemblies1105aand1105bof computer-assisted device1111are also each supported by a corresponding individual support structure1113aand1113b, respectively, which allows each assembly1105aand1105bto be individually moved and posed with reference to surgical table1100and to the one or more other assemblies1105aand1105b. Examples of such a multi-instrument surgical system architecture are the da Vinci Si® Surgical System and the da Vinci® Xi™ Surgical System, commercialized by Intuitive Surgical, Inc. Surgical table1100and a surgical manipulator system comprising an example computer-assisted device1111operate together as described herein. In some examples, computer-assisted device1111is consistent with computer-assisted devices110and/or210.

The computer-assisted devices ofFIGS.8A and8Bare each shown mechanically grounded at the floor. But, one or more such computer-assisted devices may optionally be mechanically grounded at a wall or ceiling and be permanently fixed or movable with reference to such a wall or ceiling ground. In some examples, computer-assisted devices may be mounted to the wall or ceiling using a track or grid system that allows the support base of the computer-assisted systems to be moved relative to the surgical table. In some examples, one or more fixed or releasable mounting clamps may be used to mount the respective support bases to the track or grid system. As shown inFIG.8C, a computer-assisted device1121ais mechanically grounded at a wall, and a computer-assisted device1121bis mechanically grounded at a ceiling.

In addition, computer-assisted devices may be indirectly mechanically grounded via the movable surgical table1100. As shown inFIG.8D, a computer-assisted device1131ais coupled to the table top1102of surgical table1100. Computer-assisted device1131amay optionally be coupled to other portions of surgical table1100, such as table support structure1103or table base1104, as indicated by the dashed structures shown inFIG.8D. When table top1102moves with reference to table support structure1103or table base1104, the computer-assisted device1131alikewise moves with reference to table support structure1103or table base1104. When computer-assisted device1131ais coupled to table support structure1103or table base1104, however, the base of computer-assisted device1131aremains fixed with reference to ground as table top1102moves. As table motion occurs, the body opening where instruments are inserted into the patient may move as well because the patient's body may move and change the body opening locations relative to the table top1102. Therefore, for embodiments in which computer-assisted device1131ais coupled to the table top1102, the table top1102functions as a local mechanical ground, and the body openings move with reference to the table top1102, and so with reference to the computer-assisted device1131aas well.FIG.8Dalso shows that a second computer-assisted device1131boptionally may be added, configured similarly to computer-assisted device1131ato create a multi-instrument system. Systems that include one or more computer-assisted device coupled to the surgical table operate as disclosed herein.

In some embodiments, other combinations of computer-assisted devices with the same or hybrid mechanical groundings are possible. For example, a system may include one computer-assisted device mechanically grounded at the floor, and a second computer-assisted device mechanically grounded to the floor via the surgical table. Such hybrid mechanical ground systems operate as disclosed herein.

Inventive aspects also include single-body opening systems in which two or more surgical instruments enter the body via a single body opening. Examples of such systems are shown in U.S. Pat. No. 8,852,208 entitled “Surgical System Instrument Mounting,” which was filed Aug. 12, 2010, and U.S. Pat. No. 9,060,678 entitled “Minimally Invasive Surgical System,” which was filed Jun. 13, 2007, both of which are incorporated by reference.FIG.8Eillustrates a teleoperated multi-instrument computer-assisted device1141together with surgical table1100as described above. Two or more instruments1142are each coupled to a corresponding manipulator1143and the cluster of instruments1142and instrument manipulators1143are moved together by a system manipulator1144. The system manipulator1144is supported by a support assembly1145that allows system manipulator1144to be moved to and fixed at various poses. Support assembly1145is mechanically grounded at a base1146consistent with the descriptions above. The two or more instruments1142are inserted into the patient at the single body opening. Optionally, the instruments1142extend together through a single guide tube, and the guide tube optionally extends through a cannula, as described in the references cited above. Computer-assisted device1141and surgical table1100operate together as described herein.

FIG.8Fillustrates another multi-instrument, single-body opening computer-assisted device1151mechanically grounded via the surgical table1100, optionally by being coupled to table top1102, table support structure1103, or table base1104. The descriptions above with reference toFIG.8Dalso applies to the mechanical grounding options illustrated inFIG.8F. Computer-assisted device1151and surgical table1100work together as described herein.

FIG.8Gillustrates that one or more teleoperated multi-instrument, single-body opening computer-assisted devices1161and one or more teleoperated single-instrument computer-assisted devices1162may be combined to operate with surgical table1100as described herein. Each of the computer-assisted devices1161and1162may be mechanically grounded, directly or via another structure, in various ways as described above.

FIG.3is a simplified diagram of a kinematic model300of a computer-assisted medical system according to some embodiments. As shown inFIG.3, kinematic model300may include kinematic information associated with many sources and/or devices. The kinematic information is based on known kinematic models for the links and joints of a computer-assisted medical device and a surgical table. The kinematic information is further based on information associated with the position and/or orientation of the joints of the computer-assisted medical device and the surgical table. In some examples, the information associated with the position and/or orientation of the joints may be derived from one or more sensors, such as encoders, measuring the linear positions of prismatic joints and the rotational positions of revolute joints.

The kinematic model300includes several coordinate frames or coordinate systems and transformations, such as homogeneous transforms, for transforming positions and/or orientation from one of the coordinate frames to another of the coordinate frames. In some examples, the kinematic model300may be used to permit the forward and/or reverse mapping of positions and/or orientations in one of the coordinate frames in any other of the coordinate frames by composing the forward and/or reverse/inverse transforms noted by the transform linkages included inFIG.3. In some examples, when the transforms are modeled as homogenous transforms in matrix form, the composing is accomplished using matrix multiplication. In some embodiments, the kinematic model300may be used to model the kinematic relationships of the computer-assisted device210and the surgical table280ofFIG.2.

The kinematic model300includes a table base coordinate frame305that is used to model a position and/or orientation of a surgical table, such as surgical table170and/or surgical table280. In some examples, the table base coordinate frame305may be used to model other points on the surgical table relative to a reference point and/or orientation associated with the surgical table. In some examples, the reference point and/or orientation may be associated with a table base of the surgical table, such as the table base282. In some examples, the table base coordinate frame305may be suitable for use as a world coordinate frame for the computer-assisted system.

The kinematic model300further includes a table top coordinate frame310that may be used to model positions and/or orientations in a coordinate frame representative of a table top of the surgical table, such as the table top284. In some examples, the table top coordinate frame310may be centered about a rotational center or isocenter of the table top, such as isocenter286. In some examples, the z-axis of the table top coordinate frame310may be oriented vertically with respect to a floor or surface on which the surgical table is placed and/or orthogonal to the surface of the table top. In some examples, the x- and y-axes of the table top coordinate frame310may be oriented to capture the longitudinal (head to toe) and lateral (side-to-side) major axes of the table top. In some examples, a table base to table top coordinate transform315is used to map positions and/or orientations between the table top coordinate frame310and the table base coordinate frame305. In some examples, one or more kinematic models of an articulated structure of the surgical table, such as articulated structure290, along with past and/or current joint sensor readings is used to determine the table base to table top coordinate transform315. In some examples consistent with the embodiments ofFIG.2, the table base to table top coordinate transform315models the composite effect of the height, tilt, Trendelenburg, and/or slide settings associated with the surgical table.

The kinematic model300further includes a device base coordinate frame that is used to model a position and/or orientation of a computer-assisted device, such as computer-assisted device110and/or computer-assisted device210. In some examples, the device base coordinate frame320may be used to model other points on the computer-assisted device relative to a reference point and/or orientation associated with the computer-assisted device. In some examples, the reference point and/or orientation may be associated with a device base of the computer-assisted device, such as the mobile cart215. In some examples, the device base coordinate frame320may be suitable for use as the world coordinate frame for the computer-assisted system.

In order to track positional and/or orientational relationships between the surgical table and the computer-assisted device, it is often desirable to perform a registration between the surgical table and the computer-assisted device. As shown inFIG.3, the registration may be used to determine a registration transform325between the table top coordinate frame310and the device base coordinate from320. In some embodiments, the registration transform325may be a partial or full transform between the table top coordinate frame310and the device base coordinate frame320. The registration transform325is determined based on the architectural arrangements between the surgical table and the computer-assisted device.

In the examples ofFIGS.8D and8F, where the computer-assisted device is mounted to the table top1102, the registration transform325is determined from the table base to table top coordinate transform315and knowing where the computer-assisted device is mounted to the table top112.

In the examples ofFIGS.8A-8C,8E, and8F, where the computer-assisted device is placed on the floor or mounted to the wall or ceiling, determination of the registration transform325is simplified by placing some restrictions on the device base coordinate frame320and the table base coordinate frame305. In some examples, these restrictions include that both the device base coordinate frame320and the table base coordinate frame305agree on the same vertical up or z-axis. Under the assumption that the surgical table is located on a level floor, the relative orientations of the walls of the room (e.g., perpendicular to the floor) and the ceiling (e.g., parallel to the floor) are known it is possible for a common vertical up or z axis (or a suitable orientation transform) to be maintained for both the device base coordinate frame320and the table base coordinate frame305or a suitable orientation transform. In some examples, because of the common z-axis, the registration transform325may optionally model just the rotational relationship of the device base to the table base about the z-axis of the table base coordinate frame305(e.g., a θZregistration). In some examples, the registration transform325may optionally also model a horizontal offset between the table base coordinate frame305and the device base coordinate frame320(e.g., a XY registration). This is possible because the vertical (z) relationship between the computer-assisted device and the surgical table are known. Thus, changes in a height of the table top in the table base to table top transform315are analogous to vertical adjustments in the device base coordinate frame320because the vertical axes in the table base coordinate frame305and the device base coordinate frame320are the same or nearly the same so that changes in height between the table base coordinate frame305and the device base coordinate frame320are within a reasonable tolerance of each other. In some examples, the tilt and Trendelenburg adjustments in the table base to table top transform315may be mapped to the device base coordinate frame320by knowing the height of the table top (or its isocenter) and the θZand/or XY registration. In some examples, the registration transform325and the table base to table top transform315may be used to model the computer-assisted surgical device as if it were attached to the table top even when this is architecturally not the case.

The kinematic model300further includes an arm mounting platform coordinate frame330that is used as a suitable model for a shared coordinate frame associated with the most proximal points on the articulated arms of the computer-assisted device. In some embodiments, the arm mounting platform coordinate frame330may be associated with and oriented relative to a convenient point on an arm mounting platform, such as the arm mounting platform227. In some examples, the center point of the arm mounting platform coordinate frame330may be located on the arm mounting platform orientation axis236with the z-axis of the arm mounting platform coordinate frame330being aligned with arm mounting platform orientation axis236. In some examples, a device base to arm mounting platform coordinate transform335is used to map positions and/or orientations between the device base coordinate frame320and the arm mounting platform coordinate frame330. In some examples, one or more kinematic models of the links and joints of the computer-assisted device between the device base and the arm mounting platform, such as the set-up structure220, along with past and/or current joint sensor readings are used to determine the device base to arm mounting platform coordinate transform335. In some examples consistent with the embodiments ofFIG.2, the device base to arm mounting platform coordinate transform335may model the composite effect of the two-part column, shoulder joint, two-part boom, and wrist joint of the setup structure portion of the computer-assisted device.

The kinematic model300further includes a series of coordinate frames and transforms associated with each of the articulated arms of the computer-assisted device. As shown inFIG.3, the kinematic model300includes coordinate frames and transforms for three articulated arms, although one of ordinary skill would understand that different computer-assisted devices may include fewer and/or more articulated arms (e.g., one, two, four, five, or more). Consistent with the configuration of the links and joints of the computer-assisted device210ofFIG.2, each of the articulated arms is modeled using a manipulator mount coordinate frame, a remote center of motion coordinate frame, and an instrument or camera coordinate frame, depending on a type of instrument mounted to the distal end of the articulated arm.

In the kinematic model300, the kinematic relationships of a first one of the articulated arms is captured using a manipulator mount coordinate frame341, a remote center of motion coordinate frame342, an instrument coordinate frame343, an arm mounting platform to manipulator mount transform344, a manipulator mount to remote center of motion transform345, and a remote center of motion to instrument transform346. The manipulator mount coordinate frame341represents a suitable model for representing positions and/or orientations associated with a manipulator, such as manipulator260. The manipulator mount coordinate frame341is associated with a manipulator mount, such as the manipulator mount262of the corresponding articulated arm. The arm mounting platform to manipulator mount transform344is then based on one or more kinematic models of the links and joints of the computer-assisted device between the arm mounting platform and the corresponding manipulator mount, such as the corresponding set-up joints240, along with past and/or current joint sensor readings of the corresponding set-up joints240.

The remote center of motion coordinate frame342is associated with a remote center of motion of the instrument mounted on the manipulator, such as the corresponding remote center of motion274of the corresponding manipulator260. The manipulator mount to remote center of motion transform345is then based on one or more kinematic models of the links and joints of the computer-assisted device between the corresponding manipulator mount and the corresponding remote center of motion, such as the corresponding joints264, corresponding links266, and corresponding carriage268of the corresponding manipulator260, along with past and/or current joint sensor readings of the corresponding joints264. When the corresponding remote center of motion is being maintained in fixed positional relationship to the corresponding manipulator mounts, such as in the embodiments ofFIG.2, the manipulator mount to remote center of motion transform345includes an essentially static translational component that does not change as the manipulator and instrument are operated and a dynamic rotational component that changes as the manipulator and instrument are operated.

The instrument coordinate frame343is associated with an end effector located at the distal end of the instrument, such as the corresponding end effector276. The remote center of motion to instrument transform346is then based on one or more kinematic models of the links and joints of the computer-assisted device that move and/or orient the corresponding instrument, end effector, and remote center of motion, along with past and/or current joint sensor readings. In some examples, the remote center of motion to instrument transform346accounts for the orientation at which the shaft, such as the corresponding shaft272, passes through the remote center of motion and the distance to which the shaft is advanced and/or withdrawn relative to the remote center of motion. In some examples, the remote center of motion to instrument transform346may be constrained to reflect that the insertion axis of the shaft of the instrument passes through the remote center of motion and accounts for rotations of the shaft and the end effector about the axis defined by the shaft.

In the kinematic model300, the kinematic relationships of a second one of the articulated arms is captured using a manipulator mount coordinate frame351, a remote center of motion coordinate frame352, an instrument coordinate frame353, an arm mounting platform to manipulator mount transform354, a manipulator mount to remote center of motion transform355, and a remote center of motion to instrument transform356. The manipulator mount coordinate frame351represents a suitable model for representing positions and/or orientations associated with a manipulator, such as manipulator260. The manipulator mount coordinate frame351is associated with a manipulator mount, such as the manipulator mount262of the corresponding articulated arm. The arm mounting platform to manipulator mount transform354is then based on one or more kinematic models of the links and joints of the computer-assisted device between the arm mounting platform and the corresponding manipulator mount, such as the corresponding set-up joints240, along with past and/or current joint sensor readings of the corresponding set-up joints240.

The remote center of motion coordinate frame352is associated with a remote center of motion of the manipulator mounted on the articulated arm, such as the corresponding remote center of motion274of the corresponding manipulator260. The manipulator mount to remote center of motion transform355is then based on one or more kinematic models of the links and joints of the computer-assisted device between the corresponding manipulator mount and the corresponding remote center of motion, such as the corresponding joints264, corresponding links266, and corresponding carriage268of the corresponding manipulator260, along with past and/or current joint sensor readings of the corresponding joints264. When the corresponding remote center of motion is being maintained in fixed positional relationship to the corresponding manipulator mounts, such as in the embodiments ofFIG.2, the mount to remote center of motion transform355includes an essentially static translational component that does not change as the manipulator and instrument are operated and a dynamic rotational component that changes as the manipulator and instrument are operated.

The instrument coordinate frame353is associated with an end effector located at the distal end of the instrument, such as the corresponding instrument270and/or end effector276. The remote center of motion to instrument transform356is then based on one or more kinematic models of the links and joints of the computer-assisted device that move and/or orient the corresponding instrument, end effector, and remote center of motion, along with past and/or current joint sensor readings. In some examples, the remote center of motion to instrument transform356accounts for the orientation at which the shaft, such as the corresponding shaft272, passes through the remote center of motion and the distance to which the shaft is advanced and/or withdrawn relative to the remote center of motion. In some examples, the remote center of motion to instrument transform356may be constrained to reflect that the insertion axis of the shaft of the instrument passes through the remote center of motion and accounts for rotations of the shaft and the end effector about the insertion axis defined by the shaft.

In the kinematic model300, the kinematic relationships of a third one of the articulated arms is captured using a manipulator mount coordinate frame361, a remote center of motion coordinate frame362, a camera coordinate frame363, an arm mounting platform to manipulator mount transform364, a manipulator mount to remote center of motion transform365, and a remote center of motion to camera transform366. The manipulator mount coordinate frame361represents a suitable model for representing positions and/or orientations associated with a manipulator, such as manipulator260. The manipulator mount coordinate frame361is associated with a manipulator mount, such as the manipulator mount262of the corresponding articulated arm. The arm mounting platform to manipulator mount transform364is then based on one or more kinematic models of the links and joints of the computer-assisted device between the arm mounting platform and the corresponding manipulator mount, such as the corresponding set-up joints240, along with past and/or current joint sensor readings of the corresponding set-up joints240.

The remote center of motion coordinate frame362is associated with a remote center of motion of the manipulator mounted on the articulated arm, such as the corresponding remote center of motion274of the corresponding manipulator260. The manipulator mount to remote center of motion transform365is then based on one or more kinematic models of the links and joints of the computer-assisted device between the corresponding manipulator mount and the corresponding remote center of motion, such as the corresponding joints264, corresponding links266, and corresponding carriage268of the corresponding manipulator260, along with past and/or current joint sensor readings of the corresponding joints264. When the corresponding remote center of motion is being maintained in fixed positional relationship to the corresponding manipulator mounts, such as in the embodiments ofFIG.2, the mount to remote center of motion transform365includes an essentially static translational component that does not change as the manipulator and instrument are operated and a dynamic rotational component that changes as the manipulator and instrument are operated.

The camera coordinate frame363is associated with an imaging device, such an endoscope, mounted on the articulated arm. The remote center of motion to camera transform366is then based on one or more kinematic models of the links and joints of the computer-assisted device that move and/or orient the imaging device and the corresponding remote center of motion, along with past and/or current joint sensor readings. In some examples, the remote center of motion to camera transform366accounts for the orientation at which the shaft, such as the corresponding shaft272, passes through the remote center of motion and the distance to which the shaft is advanced and/or withdrawn relative to the remote center of motion. In some examples, the remote center of motion to camera transform366may be constrained to reflect that the insertion axis of the shaft of the imaging device passes through the remote center of motion and accounts for rotations of the imaging device about the axis defined by the shaft.

As discussed above and further emphasized here,FIG.3is merely an example which should not unduly limit the scope of the claims. One of ordinary skill in the art would recognize many variations, alternatives, and modifications. According to some embodiments, the registration between the surgical table and the computer-assisted device may be determined between the table top coordinate frame310and the device base coordinate frame320using an alternative registration transform. When the alternative registration transform is used, registration transform325is determined by composing the alternative registration transform with the inverse/reverse of the table base to table top transform315. According to some embodiments, the coordinate frames and/or transforms used to model the computer-assisted device may be arranged differently dependent on the particular configuration of the links and joints of the computer-assisted device, its articulated arms, its end effectors, its manipulators, and/or its instruments. According to some embodiments, the coordinate frames and transforms of the kinematic model300may be used to model coordinate frames and transforms associated with one or more virtual instruments and/or virtual cameras. In some examples, the virtual instruments and/or cameras may be associated with previously stored and/or latched instrument positions, projections of instruments and/or cameras due to a motion, reference points defined by a surgeon and/or other personnel, and/or the like.

As described previously, as a computer-assisted system, such as computer-assisted systems100and/or200, is being operated it would be desirable to allow continued control of the instruments and/or end effectors while motion of a surgical table, such as surgical tables170and/or280, is allowed while the instruments are inserted into body openings on the patient. Examples of systems permitting active continuation of a surgical procedure during surgical table motion are shown in U.S. Provisional Patent Application No. 62/134,207 entitled “System and Method for Integrated Surgical Table,” which was filed Mar. 17, 2015, and concurrently filed PCT Patent Application No. PCT/US2015/057656 entitled “System and Method for Integrated Surgical Table” and published as WO2016/069648 A1, both of which are hereby incorporated by reference in their entirety. In some examples, this may allow for a less time-consuming procedure as surgical table motion may occur without first having to remove the manipulator-controlled surgical instruments from the patient and undock the manipulators from the cannulas that stay inserted in the patient. In some examples, this allows a surgeon and/or other medical personnel to monitor organ movement while the surgical table motion is occurring to obtain a more optimal surgical table pose. In some examples, this may also permit active continuation of a surgical procedure during surgical table motion.

According to some embodiments, it is helpful to know the registration transform325between a surgical table and a computer-assisted device so that movement in the patient caused by movement of the top of the surgical table is known by and compensated for by the computer-assisted device.FIGS.4A and4Bare simplified diagrams of relationships between a surgical table410and a computer-assisted device420according to some embodiments. In some examples, surgical table410may be consistent with surgical table170and/or280and computer-assisted device may be consistent with computer-assisted device110,210, and/or any of the computer-assisted devices ofFIGS.8A-8G. As shown inFIG.4A, a patient430is placed on surgical table410. Under the assumption that patient430is securely strapped to surgical table410and one or more portions of the anatomy of patient430, such as a body opening corresponding to the remote center of motion274, remain fixed relative to the top of the surgical table410, any movement in surgical table410results in corresponding movement in the one or more portions of the anatomy of patient430. And although this assumption is somewhat inaccurate, as is discussed in further detail below, by monitoring movements of the top of surgical table410in a surgical table coordinate frame and movements of the anatomy of patient430in a computer-assisted device coordinate frame, it is possible to determine approximate estimates of the geometric relationship between surgical table410and computer-assisted device420.

Under the assumption that a table base coordinate frame440(representatively shown using coordinate axes XTand YT) and a device base coordinate frame450(representatively shown using coordinate axes XDand YD) have a common vertical up or z-axis and the height of the base of the computer-assisted device is known relative to the base of the surgical table, the geometric relationship between surgical table410and computer-assisted device420may be characterized as determining a horizontal offset and an angular rotation about the vertical up or z axis between surgical table410and computer-assisted device420. This is possible because when table base coordinate frame440and device base coordinate frame450agree on the z axis, the differences in z coordinate values between table base coordinate frame440and device base coordinate frame450are already known.

In some examples, table base coordinate frame440may correspond to table base coordinate frame350and/or device base coordinate frame450may correspond to device base coordinate frame330. In addition, the xy plane of the table base coordinate frame440and the xy plane of the device base coordinate frame450are parallel. Thus, full registration between surgical table410and computer-assisted device420involves determining the horizontal offset, ΔXY, between the table base coordinate frame440and the device base coordinate frame450, and the rotation about the z-axis, θZ, between the table base coordinate frame440and the device base coordinate frame450. In practice, however, a full registration between surgical table410and computer-assisted device420may not be needed for operations that involve relative motions between surgical table410and computer-assisted device420, because translations in the table base coordinate frame440may be mapped to translations in the device base coordinate frame450using θZ. In addition, rotations of the top of surgical table410relative to the table base coordinate frame440may be mapped to rotations in the device base coordinate frame450using θZ. Thus, a partial registration that determines Oz is often sufficient for most purposes.

FIG.4Bdepicts how Oz may be determined by monitoring movement, ΔT, of the top of surgical table410in the table base coordinate frame440and movement, ΔD, of a control point of computer-assisted device420, such as remote center of motion274, in the device base coordinate frame450. As shown inFIG.4B, the translational differences between the movement of surgical table410and computer-assisted device420have been removed as they do not affect the angular difference θZbetween the two movements. In some examples, the movement ΔTmay occur as a result of a tilt, Trendelenburg, and/or slide adjustment of surgical table410. AsFIG.4Bdemonstrates, the magnitude of ΔTand the magnitude of ΔDare not as important as knowing the relative directions of ΔTand ΔDin the xy planes of the table base coordinate frame440and the device base coordinate frame450, respectively. As shown, when a movement ΔTof the top of surgical table410occurs, a table base to table top transform, such as the table base to table top transform315, is used to determine an angular direction θTof the movement ΔTrelative to the XTaxis. Additionally, one or more kinematic models of computer-assisted device420, such as those depicted inFIG.3, is used to determine an angular direction θDof a movement ΔDof a control point, such as a remote center of motion, relative to the XDaxis. The difference between θDand θTrepresents the θZbetween the table base coordinate frame440and the device base coordinate frame450, which becomes the basis for the registration transform.

FIG.5is a simplified diagram of a method500of θZregistering a surgical table with a computer-assisted device according to some embodiments. One or more of the processes510-580of method500may be implemented, at least in part, in the form of executable code stored on non-transient, tangible, machine readable media that when run by one or more processors (e.g., the processor140in control unit130) may cause the one or more processors to perform one or more of the processes510-580. In some embodiments, method500may be used to perform partial registration between the surgical table, such as surgical table170,280, and/or410, and the computer-assisted device, such as computer-assisted device110,210,420, and/or any of the computer-assisted devices ofFIGS.8A-8G. The partial registration may determine a θZbetween a table base coordinate frame, such as table base coordinate frame305and/or440, and a device base coordinate frame, such as device base coordinate frame330and/or450. In some embodiments, one or more of the processes510,570, and/or580are optional and may be omitted.

At an optional process510, the isocenter of the surgical table is lowered. Because the isocenter of a surgical table, such as isocenter286, represents an artificially defined point about which at least Trendelenburg rotations occur, it is possible that it may be set at a height that is above one or more control points of the computer-assisted device that are used during method500. When a control point is located below the isocenter of the surgical table, the movement of the control point is in the opposite direction to the movement of the table top causing an 180° phase shift in angular direction of the movement of the top of the surgical table as determined during process530. To avoid this problem, the isocenter of the surgical table may be lowered during at least the early portions of the registration of method500. In some examples, the isocenter of the surgical table may optionally be lowered to a point at or below the top of the surgical table, such as to be coincident with the center of rotation for the tilt axis of the surgical table. In some examples, the isocenter position of the surgical table prior to the lowering is saved for use during process580. In some examples, lowering the isocenter of the surgical table may also result in enhanced horizontal movement of the top of the table, which may improve the speed at which the registration process converges.

At a process520, qualifying motion of the surgical table is detected. Not all movement of a control point, such as a remote center of motion, of the computer-assisted device are suitable for use during the registration of method500. In some examples, vertical movement of the surgical table, which does not generate any horizontal movement, does not provide suitable information for use during method500. In some examples, there may be small oscillations in the horizontal movement of the control points that do not occur as a result of the surgical table movement. In some examples, these small oscillations may occur as a result of autonomic motions of the patient (e.g., breathing, heartbeat, etc.), oscillations and/or vibrations in the articulated arms and/or manipulators of the computer-assisted device, changes in insufflation, and/or the like. In order to reduce the impact that these oscillations and other errors, such as sensor errors, may introduce into the registration, registration may be limited to qualifying motions. In some examples, a qualifying motion is a net horizontal motion in a control point that exceeds a threshold value determined based on likely oscillations that may occur. In some examples, the threshold value is about 8 to 10 mm or so. In some examples, the qualifying motion is detected by latching and/or storing an initial horizontal position of the control point and then periodically monitoring the actual horizontal position of the control point and waiting until a distance between the actual horizontal position and the initial horizontal position exceeds the threshold value. Once the qualifying motion is detected it is used as a basis for a registration estimate.

In some embodiments, a coherence check may also be used to determine whether the net horizontal motion is a qualifying motion. In some examples, as process520periodically monitors the actual horizontal position of the control point, it may record a sequence of incremental motions or vectors indicating the incremental change in the actual horizontal position of the control point between successive instances in which the actual horizontal position of the control point is monitored. In some examples, each of the incremental motions may be longer than a predetermined length, such as 1 mm. In some examples, each of the incremental motions may be a net motion of the control point over a predetermined length of time, such as 10 ms. In some examples, the net horizontal motion is compared against a path of motion described by the incremental motions to determine whether the net horizontal motion is an accurate approximation of the incremental motions. In some examples, the angular components of the incremental motions is compared to the angular components of the net horizontal motion to determine whether there is a consistent direction of motion. In some examples, a length of the path is compared to a magnitude of the net horizontal motion to determine whether there is a consistent pattern of motion. In some examples, a magnitude of a vector sum of the recorded vectors (i.e., a magnitude of the net horizontal motion) is compared to a sum of the magnitudes of each of the recorded vectors. In some examples, when the magnitude of the vector sum of the recorded vectors and the sum of the magnitudes of each of the vectors are within a configurable percentage of each other, such as 90 percent, the net horizontal motion is a qualifying motion. In some examples, Equation 1 is used to perform the coherence test, where {right arrow over (v)}irepresents a respective instance of a recorded vector.

❘"\[LeftBracketingBar]"∑v⇀i❘"\[RightBracketingBar]"∑❘"\[LeftBracketingBar]"v⇀i❘"\[RightBracketingBar]"≥Configurable_ThresholdEquation⁢1

In some examples, information about the surgical table motion is exchanged between the surgical table and the computer-assisted device. In some examples, the surgical table motion is characterized using a table base to table top transform, such as table base to table top transform315. In some examples, the surgical table provides the current table base to table top transform to the computer-assisted device. In some examples, the surgical table provides a difference (or delta) between the current table base to table top transform since the last time the table base to table top transform was provided. In some examples, the surgical table provides the current positions and/or velocities of the joints in the articulated structure of the surgical table so that the computer-assisted device may determine the current table base to table top transform using one or more kinematic models of the articulated structure of the surgical table. In some examples, the surgical table sends one or more messages to the computer-assisted device to exchange the table base to table top transform, the delta table base to table top transform, the current joint positions, and/or current joint velocities.

At a process530, an angular direction θTof the surgical table motion is determined in a surgical table coordinate frame. In some examples, the angular direction θTof the surgical table motion is determined in the surgical table coordinate frame by monitoring the table base to table top transform. In some examples, two versions of the table base to table top transform is used, a latched and/or saved version taken at the start of the qualifying motion detected during process520and a latched and/or saved version taken at the end of the qualifying motion detected during process520. In some examples, differences between the two table base to table top transforms is used to determine the angular direction θT. In some examples, the two table base to table top transforms are used to determine a beginning and ending horizontal position of an arbitrary point with the difference between the beginning and ending horizontal positions being used to determine the angular direction θTusing trigonometry.

At a process540, an angular direction θDof a control point motion is determined in a computer-assisted device coordinate frame. In some examples, the angular direction θDof the control point motion is determined in the computer-assisted device coordinate frame by monitoring the movement of the control point in the computer-assisted device coordinate frame. In some examples, the two horizontal positions of the control point taken at the beginning and the end of the qualifying motion detected during process520may be used to determine the angular direction θDusing trigonometry.

At a process550, the θZregistration is determined. In some examples, the θZregistration is determined by taking an angular difference between the angular direction θDof the control point determined during process540and the angular direction θTof the surgical table determined during process530.

At a process560, the θZregistration is aggregated. As discussed above with respect to process520, the oscillations and/or other errors may introduce inaccuracies in the θZregistration during process550. To help reduce these inaccuracies, the θZregistration is aggregated with other θZregistration values in order to determine a composite θZregistration value. In some examples, the other θZregistration values may optionally be associated with other control points of the computer-assisted device, such as other remote centers of motion. In some examples, the other θZregistration values may optionally be associated with a sequence of qualifying motions for the same control point and/or the other control points. In this way, the composite θZregistration is continually updated over time. In some examples, the θZregistrations may be aggregated using an averaging function. In some examples, the θZregistrations may be aggregated using exponential smoothing to provide greater emphasis on later obtained θZregistration values. In some examples, randomness reducing processes, such as Kalman filtering and/or other least squares estimators, may optionally be used to aggregate the θZregistration values.

At an optional process570, it is determined whether the composite θZregistration has converged. As the composite θZregistration is aggregated during process560, it is monitored to determine whether the composite θZregistration is converged to a reasonably stable value. In some examples, the composite θZregistration is considered converged when incremental changes to the composite θZregistration, as new θZregistration values are determined, are below a threshold, such as 1 to 10 degrees (e.g., 2 degrees). When the composite θZregistration is not converged, additional θZregistration values are determined by repeating processes520to560. When the composite θZregistration is converged, the isocenter is restored using a process580.

At an optional process580, the isocenter of the surgical table is restored. The position of the isocenter of the surgical table is restored to the position of the isocenter saved during process510. After the position of the isocenter is restored, processes520-560are repeated to further refine the composite θZregistration. In some examples, however, after restoring the isocenter of the surgical table, process520may be altered so that motions associated with Trendelenburg adjustments are no longer qualifying motions. In this way, issues associated with the 180° phase shift may be avoided while still using Trendelenburg adjustments to determine early values for the composite θZregistration.

FIG.6is a simplified diagram of relationships between the device base coordinate frame450and the table base coordinate frame440according to some embodiments. As shown inFIG.6, the relationships between the device base coordinate frame450and the table base coordinate frame440are reoriented relative to the device base coordinate frame450and projected in the XY plane.FIG.6further depicts how ΔXYmay be determined by observing tilt and/or Trendelenburg motions in the surgical table and the resulting movement of a control point, such as a remote center of motion of one of the docked articulated arms. Under the assumption that a suitably selected control point on an articulated arm, such as a remote center of motion, is located at a fixed position relative to the top of the surgical table (a reasonable assumption when the remote center of motion is fixed to the anatomy of the patient at a body opening), motions to the control point due to tilt and/or Trendelenburg rotations may be modeled as a rotation about a known point. In some examples, the known point may correspond to a pivot center for the tilt of the surgical table and/or the isocenter for the surgical table. In some examples, the known point is located at an XY center of the table base coordinate frame450. As shown in Equation 2, when the angular velocity change of the tilt and/or Trendelenburg rotation is {right arrow over (Δ)}θand the geometric relationship in the XY plane between the known point and the control point is {right arrow over (R)}, the velocity/change in position of the control point may be modeled as {right arrow over (Δ)}CPvia the vector cross product.
{right arrow over (Δ)}CP={right arrow over (Δ)}θ×{right arrow over (R)}Equation 2

In some examples, the position and movement of the control point is known by the computer-assisted device using the kinematic models of the articulated arm and/or manipulator associated with the control point and the angular velocity of the rotation is known from the surgical table. This leaves {right arrow over (R)} as the unknown in Equation 2. Unfortunately, the cross product of Equation 2 is not invertible, so a partial determination of {right arrow over (R)} may be inferred by determining the shortest distance or offset between the control point and the axis of rotation as shown in Equation 3.

offset=Δ⇀CP×Δ⇀θΔ⇀θ2Equation⁢3

Based on the surgical table orientations shown inFIG.4, tilt rotations occur about the XTaxis and horizontal projections of Trendelenburg rotations occur about the YTaxis. Thus, a tilt rotation that results in a movement of the control point in the YTdirection may be used to determine a YToffset of the control point relative to the fixed point, and a Trendelenburg rotation that results in a in a movement of the control point in the XTdirection may be used to determine a XToffset of the control point relative to the fixed point. This combined with previous knowledge of θZfrom method500are used to project the XTand YToffsets along the XTand YTaxes relative to the known position of the control point to determine the XY center of the table base coordinate frame440, and thus ΔXY. In some examples, the computations of Equation 3 may be simplified by working with projections of the various vectors in the XY plane.

FIG.7is a simplified diagram of a method700of XY registering a surgical table with a computer-assisted device according to some embodiments. One or more of the processes710-790of method700may be implemented, at least in part, in the form of executable code stored on non-transient, tangible, machine readable media that when run by one or more processors (e.g., the processor140in control unit130) may cause the one or more processors to perform one or more of the processes710-790. In some embodiments, method700may be used to perform partial registration between the surgical table, such as surgical table170,280, and/or410, and the computer-assisted device, such as computer-assisted device110,210,420, and/or any of the computer-assisted devices ofFIGS.8A-8G. The partial registration may determine ΔXYbetween a table base coordinate frame, such as table base coordinate frame305and/or440, and a device base coordinate frame, such as device base coordinate frame330and/or450.

At a process710, qualifying motion of the surgical table is detected. Not all movement of a control point, such as a remote center of motion, of the computer-assisted device are suitable for use during the registration of method700. In some examples, a qualifying motion may be a horizontal movement in the control point due to a tilt rotation or a horizontal movement in the control point due to a Trendelenburg rotation. In some examples, the qualifying motion may be determined as a net horizontal motion {right arrow over (Δ)}CPor as a velocity of the control point. In some embodiments, the net horizontal motion or the velocity may be low-pass filtered to reduce the effects of vibrations and/or the like in the control point due to motion sources other than surgical table motion. In some examples, motion length thresholds and/or coherence checks, similar to those performed during process520, may also be used to determine whether a net horizontal motion is a qualifying motion.

At a process720, a first angular velocity and a first axis of rotation of a first surgical table motion is determined. In some examples, the first angular velocity and the first axis of rotation define a first rotation vector {right arrow over (Δ)}θ1. In some examples, the first angular velocity and the first axis of rotation are determined from one or more messages exchanged between the surgical table and the computer-assisted surgical device describing whether the first surgical table motion is a tilt rotation or a Trendelenburg rotation and the amount of the tilt and/or Trendelenburg rotation. In some examples, when the first surgical table motion is a tilt rotation the first axis of rotation is the XTaxis and when the first surgical table motion is a Trendelenburg rotation the first axis of rotation is the YTaxis as shown in the examples ofFIG.6.

At a process730, a first movement of the control point due to the first surgical table position is determined. By monitoring the velocity of the control point and/or a change in the position of the control point, a first movement of the control point {right arrow over (Δ)}CP1is determined. In some examples, kinematic models of the corresponding articulated arm and/or manipulator along with joint sensor readings are used to determine the first movement of the control point {right arrow over (Δ)}CP1.

At a process740, a second angular velocity and a second axis of rotation of a second surgical table motion is determined. The second axis of rotation is different from the first axis of rotation. In some examples, the second angular velocity and the second axis of rotation define a second rotation vector {right arrow over (Δ)}θ2. In some examples, the second angular velocity and the second axis of rotation are determined from one or more messages exchanged between the surgical table and the computer-assisted surgical device describing whether the second surgical table motion is a tilt rotation or a Trendelenburg rotation and the amount of the tilt and/or Trendelenburg rotation. In some examples, when the second surgical table motion is a tilt rotation the second axis of rotation is the XTaxis and when the second surgical table motion is a Trendelenburg rotation the second axis of rotation is the YTaxis as shown in the examples ofFIG.6.

At a process750, a second movement of the control point due to the second surgical table position is determined. By monitoring the velocity of the control point and/or a change in the position of the control point, a second movement of the control point {right arrow over (Δ)}CP2is determined. In some examples, kinematic models of the corresponding articulated arm and/or manipulator along with joint sensor readings are used to determine the second movement of the control point {right arrow over (Δ)}CP2.

At a process760, the XY registration is determined. In some examples, the XY registration is determined by first applying Equation 3 using the first rotation vector {right arrow over (Δ)}θ1and the first control point movement {right arrow over (Δ)}CP1determined during processes720and730to determine a first offset and then applying Equation 3 using the second rotation vector {right arrow over (Δ)}θ2and the second control point movement {right arrow over (Δ)}CP2determined during processes740and750to determine a second offset. Because the first and second rotation axes are different, the first and second offsets may be projected perpendicular to the respective axes of rotation and relative to the position of the control point to determine the XY registration in the form of ΔXY. In some examples, the directions along which to project the first and second offsets relative to the position of the control point are determined based on the θZregistration of method500. In the examples ofFIG.6, when the first and second rotation axes correspond to the XTand YTaxes, respectively, the first and second offsets correspond to the YTand XToffsets, respectively. In some examples, the YTand XToffsets are projected along the YTand XTaxes, respectively. In some examples, the orientations of the YTand XTaxes are known relative to the device coordinate frame450due to the θZregistration. In some examples, projections of {right arrow over (Δ)}CP1and {right arrow over (Δ)}CP2in the XY plane may optionally be used.

At a process770, the XY registration is aggregated. To help reduce inaccuracies in the XY registration and/or to improve the XY registration, the XY registration is aggregated with other XY registration values in order to determine a composite XY registration value. In some examples, the other XY registration values may optionally be associated with other control points of the computer-assisted device, such as other remote centers of motion. In some examples, the other XY registration values may optionally be associated with a sequence of first and/or second movements for the same control point and/or the other control points. In this way, the composite XY registration is continually updated over time. In some examples, the XY registrations may be aggregated using an averaging function. In some examples, the XY registrations may be aggregated using exponential smoothing to provide greater emphasis on later obtained XY registration values. In some examples, randomness reducing processes, such as Kalman filtering and/or other least squares estimators, may optionally be used to aggregate the XY registration values.

At an optional process780, it is determined whether the composite XY registration has converged. As the composite XY registration is aggregated during process770, it is monitored to determine whether the composite XY registration is converged to a reasonably stable value. In some examples, the composite XY registration is considered converged when incremental changes to the composite XY registration, as new XY registration values are determined, are below a threshold, such as 20 to 40 mm (e.g., 30 mm). When the composite XY registration is not converged, additional XY registration values are determined by repeating processes710to770. When the composite XY registration is converged, the XY registration completes using a process790and the XY registration is made available for other control algorithms of the computer-assisted device.

As discussed above and further emphasized here,FIGS.5and7are merely examples which should not unduly limit the scope of the claims. One of ordinary skill in the art would recognize many variations, alternatives, and modifications. According to some embodiments, rather than lowering and restoring the isocenter of the surgical table during processes510and580, respectively, additional information about the control points and the isocenter may optionally be used to account for any possible 180° degree phase shift in the determination of the angular direction θTof the surgical table motion. In some examples, a height of the isocenter in the table base coordinate frame is compared to a height of the control point in the device base coordinate frame and when the height of the control point is below the height of the isocenter, the value of θTis corrected by 180°. In some examples, the 180° correction is applied whenever a center of rotation of the motion in the surgical table is located above the control point.

According to some embodiments, aggregations of the net motion of the control points of different articulated arms may optionally be used as the net motions determined during processes520,730, and/or750. In some examples, when multiple articulated arms are docked to the patient, the net motions of one or more control points of each of the articulated arms is aggregated to determine the net motions used in other processes of methods500and/or700. In some examples, because the geometric relationships between the control points of different articulated arms are mostly fixed relative to each other due to the anatomy of the patient, the qualifying surgical table motion affects each of the control points similarly. In some examples, the aggregation of the net motions of the control points is used to determine when a qualifying surgical table motion takes place during processes520and/or720. In some examples, the aggregation of the net motions from the control points is used to determine an aggregate angular direction θDof the control points during process540, which is then used to determine θZduring process550. In some examples, the aggregation of the net motions from the control points is used to determine an aggregate first and/or second movement of the control point during processes730and/or750, which is then used to determine the XY registration during process770.

In some examples, the aggregations may optionally be determined using an averaging function, exponential smoothing, Kalman filtering, least squares estimators, and/or the like. In some examples, when the aggregations based on the multiple control points occur earlier in methods500and/or700, this may simplifies the aggregations performed during processes560and/or570. In some examples, when the aggregations of the net motions of the multiple control points are consistent with each of the net motions of the individual control points, the convergence tests of processes570and/or780may optionally be eliminated. In some examples, the net motions of the individual control points may be consistent with the aggregation of the net motion when there is no more than a threshold difference between each of the net motions of the individual control points and the aggregation of the net motion. In some examples, the threshold difference is ten percent or less.

According to some embodiments, the qualified motions used during method500and/or700to perform the registration, may be generated in different ways. In some examples, the qualified motions may occur as a result of a sequence of one or more test and/or registration motions of the surgical table that may, for example, be requested by computer-assisted device. In some examples, the sequence of test motions is selected to achieve rapid convergence in the determination of θZ. and/or ΔXY. In some examples, the qualified motions occur as a result of monitoring surgical table motion selected by medical personnel to position the surgical table and/or the patient during a procedure.

According to some embodiments, variations on the first and second axes of rotation may optionally be used for method700. In some examples, the first and second axes of rotation may be other than the XTand YTaxes. In some examples, method700is used to determine the XY registration as long as the first and second axes of rotation are at least a suitable angular distance apart (e.g., 30 degrees) and the orientations between the first and second axes and the device base coordinate frame is known. In some examples, the order in which the first and second surgical table motions occur is flexible. In some examples, a tilt rotation may be used before a Trendelenburg rotation and/or a Trendelenburg rotation may be used before a tilt rotation.

According to some embodiments, method700may be used to perform a partial XY registration that addresses either a tilt registration or a Trendelenburg registration. In some examples, method700may be modified to separately determine and/or aggregate an offset derived from tilt rotations and an offset derived from Trendelenburg rotations. In some examples, the separate offsets derived from tilt and Trendelenburg rotations are combined to determine the overall XY registration. In some examples, state variables may optionally be used to determine whether one or both of the offsets derived from tilt and Trendelenburg rotations are independently converged.

According to some embodiments, the registrations determined during methods500and/or700remain valid as long as the base of the surgical table and the base of the computer-assisted device remain fixed relative to each other. In some examples, whenever the base of the surgical table and/or the base of the computer-assisted device move, such as may occur when one or more feet, wheels, and/or mounting clamps are unlocked, methods500and/or700are repeated to reestablish registration. In some examples, movement of either the base of the surgical table and/or the base of the computer-assisted device may be determined by monitoring sequence numbers sequence numbers tracking the number of times each of the feet, wheel, and mounting clamp locks are engaged and/or disengaged and rotational encoders and/or rotational counters associated with each wheel tracking rotation of any one of the wheels. Changes in any of the sequence numbers provide an indication that movement of the base of the surgical table and/or the base of the computer-assisted device has or is occurring.

In some embodiments, the registration determined during methods500and/or700remains valid as long as communication is not lost between the surgical table and the computer-assisted device, loss of power in the surgical table and/or the computer-assisted device, a reset in the surgical table and/or the computer-assisted device, and/or the like.

According to some embodiments, method500may be terminated and registration considered complete after process580is completed.

Some examples of control units, such as control unit130may include non-transient, tangible, machine readable media that include executable code that when run by one or more processors (e.g., processor140) may cause the one or more processors to perform the processes of methods500and/or700. Some common forms of machine readable media that may include the processes of methods500and/or700are, for example, floppy disk, flexible disk, hard disk, magnetic tape, any other magnetic medium, CD-ROM, any other optical medium, punch cards, paper tape, any other physical medium with patterns of holes, RAM, PROM, EPROM, FLASH-EPROM, any other memory chip or cartridge, and/or any other medium from which a processor or computer is adapted to read.

Although illustrative embodiments have been shown and described, a wide range of modification, change and substitution is contemplated in the foregoing disclosure and in some instances, some features of the embodiments may be employed without a corresponding use of other features. One of ordinary skill in the art would recognize many variations, alternatives, and modifications. Thus, the scope of the invention should be limited only by the following claims, and it is appropriate that the claims be construed broadly and in a manner consistent with the scope of the embodiments disclosed herein.