Control modes and processes for positioning a robotic manipulator

文档序号:1159790 发布日期:2020-09-15 浏览:26次 中文

阅读说明:本技术 用于定位机器人操纵器的控制模式和过程 (Control modes and processes for positioning a robotic manipulator ) 是由 周仁斌 于浩然 科萨里 S.尼亚 O.J.瓦哈里亚 B.F.K.萧 A.基特克斯 于 2017-12-13 设计创作,主要内容包括:本发明提供了一种用于控制机器人外科手术系统中的机器人臂的方法,所述方法包括:在机器人臂的预先确定参考位置处限定参考平面,其中所述机器人臂包括多个关节;以及驱动所述多个关节中的至少一个以引导所述机器人臂通过基本上约束在所述参考平面内的一系列预先确定姿势。(The present invention provides a method for controlling a robotic arm in a robotic surgical system, the method comprising: defining a reference plane at a predetermined reference position of a robotic arm, wherein the robotic arm comprises a plurality of joints; and driving at least one of the plurality of joints to guide the robotic arm through a series of predetermined poses substantially constrained within the reference plane.)

1. A method for controlling a robotic arm in a robotic surgical system, the method comprising:

defining a reference plane at a predetermined reference position of a robotic arm, wherein the robotic arm comprises a plurality of joints; and

driving at least one of the plurality of joints to guide the robotic arm through a series of predetermined poses substantially constrained within the reference plane.

2. The method of claim 1, wherein the series of predetermined gestures comprises an ordered sequence of progressively expanding predetermined gestures.

3. The method of claim 1, wherein the series of predetermined gestures comprises an ordered sequence of progressively folding predetermined gestures.

4. The method of claim 1, further comprising driving at least one of the plurality of joints to guide the robotic arm through the series of predetermined poses to transition from a stored pose.

5. The method of claim 4, further comprising driving at least one of the plurality of joints to guide the robotic arm through the series of predetermined poses for transitioning to a stored pose.

6. The method of claim 1, wherein driving at least one of the plurality of joints comprises executing a task space virtual gripper at the reference plane to bias the robotic arm toward the reference plane.

7. The method of claim 1, wherein driving at least one of the plurality of joints comprises executing a one-way joint space virtual gripper on the at least one joint to bias the robotic arm toward the reference plane.

8. The method of claim 1, wherein driving at least one of the plurality of joints comprises generating a virtual attractive force at the at least one joint in a joint space virtual fixture to bias the robotic arm toward the reference plane.

9. The method of claim 1, wherein the series of predetermined gestures comprises an ordered sequence, and wherein driving at least one of the plurality of joints comprises driving at least one of the plurality of joints forward and backward through at least a portion of the ordered sequence.

10. The method of claim 1, wherein driving at least one of the plurality of joints comprises driving the at least one joint in response to an external force on the robotic arm.

11. The method of claim 10, wherein driving at least one of the plurality of joints comprises applying a gravity compensation torque to at least one of the plurality of joints.

12. The method of claim 10, wherein driving at least one of the plurality of joints comprises applying a friction compensating torque to at least one of the plurality of joints.

13. The method of claim 1, wherein driving at least one of the plurality of joints comprises driving the at least one joint through the series of folded and unfolded predetermined poses according to a predetermined trajectory.

14. A robotic surgical system, comprising:

at least one robotic arm comprising a plurality of joints;

a processor configured to control movement of the robotic arm by: defining a reference plane at a predetermined reference position, and driving at least one of the plurality of joints to guide the robotic arm through a series of predetermined poses substantially constrained within the reference plane.

15. The system of claim 14, wherein the series comprises an ordered sequence of predetermined gestures that gradually expand.

16. The system of claim 14, wherein the series comprises an ordered sequence of progressively folding predetermined poses.

17. The system of claim 14, wherein the processor is configured to drive at least one of the plurality of joints according to a task space virtual fixture.

18. The system of claim 14, wherein the processor is configured to drive at least one of the plurality of joints according to a joint space virtual fixture.

19. The system of claim 14, wherein the processor is configured to drive the at least one joint in response to an external force on the robotic arm.

20. The system of claim 14, wherein the processor is configured to drive the at least one joint through the series of predetermined poses according to a predetermined trajectory.

Technical Field

The present invention relates generally to the field of robotic surgical systems, and more particularly to systems and methods for controlling robotic surgical systems.

Background

Minimally Invasive Surgery (MIS), such as laparoscopic surgery, involves techniques aimed at reducing tissue damage during surgical procedures. For example, laparoscopic procedures typically involve making a plurality of small incisions within a patient (e.g., in the abdominal cavity), and introducing one or more instruments (e.g., one or more tools, at least one camera, etc.) into the patient through the incisions. The surgical procedure is then performed using the introduced tool and the visualization assistance provided by the camera. In general, MIS provides a number of beneficial effects, such as reducing scarring, alleviating pain, shortening the recovery period of a patient, and reducing medical costs associated with patient recovery.

MIS can be performed using non-robotic or robotic systems. Conventional robotic systems, which may include a robotic arm that manipulates an instrument based on commands from an operator, may provide many of the benefits of minimally invasive surgery while reducing the need for a surgeon. Control of such robotic systems may require control input by a user (e.g., a surgeon or other operator) via one or more user interface devices that translate user manipulations or commands into control of the robotic system. Such user interface devices may enable a surgeon or other user to operate the robotic system from a remote location (e.g., in teleoperation).

Setup of a robotic MIS system (e.g., prior to a surgical procedure) can be a complex process because such a system includes many components that need to be coordinated to make the correct setup. Similarly, for similar reasons, it may be complicated to "disassemble" or restore the robotic MIS system (e.g., after a surgical procedure) to a storage or transport mode. Accordingly, it is desirable to have control modes and procedures for assisting and simplifying pre-operative setup and post-operative disassembly of a robotic surgical system.

Disclosure of Invention

In general, in some variations, a method for controlling a robotic arm in a robotic surgical system includes: defining a reference plane at a predetermined reference position of a robotic arm, wherein the robotic arm comprises a plurality of joints; and driving (e.g., by one or more actuators) at least one of the plurality of joints to guide the robotic arm through a series of predetermined poses substantially constrained within the reference plane. The series of predetermined gestures may include, for example, an ordered sequence of: a gradually expanding predetermined pose (e.g., for preoperative positioning of the robotic arm, or for transitioning the robotic arm from a stored pose) or a gradually collapsing predetermined pose (e.g., for postoperative positioning of the robotic arm, or for transitioning the robotic arm to a stored pose). As another example, the series of predetermined poses can be implemented in an intraoperative positioning of the robotic arm.

In some variations, the method may include directing the robotic arm from the storage pose to the reference plane. In these variations, the series of predetermined gestures may comprise an ordered sequence of progressively expanding predetermined gestures. In still other variations, the method may additionally or alternatively include directing the robotic arm to a reference plane to transition to a storage pose. In these variations, the series of predetermined gestures may comprise an ordered sequence of progressively folding predetermined gestures. In driving at least one of the plurality of joints to guide the robotic arm through the ordered sequence of predetermined poses, the at least one joint may be driven forward and/or backward through at least a portion of the ordered sequence.

Different variants for the guidance of the robot arm may be provided. In some variations, when driving at least one of the plurality of joints to guide the robotic arm within the reference plane, the at least one of the plurality of joints may be driven in response to an external force on the robotic arm (such as a user applied force when the user manually manipulates the robotic arm). For example, at least one of the plurality of joints may be driven to apply a gravity compensation torque and/or a friction compensation torque. In some variations, when at least one of the plurality of joints is driven to guide the robotic arm within the reference plane, the at least one of the plurality of joints may be driven to perform a task space virtual gripper defined at the reference plane so as to substantially constrain the robotic arm (or a selected point of the robotic arm) within the reference plane. Other boot procedures include: the joint space virtual gripper is administered in that at least one of the plurality of joints may be driven to administer a unidirectional joint space virtual gripper on the at least one joint and/or a virtual attractive force at the at least one of the joint space virtual gripper is generated to bias the robotic arm toward and substantially constrain the robotic arm (or a selected point of the robotic arm) within the reference plane. Further, in some variations, the method may include driving at least one joint in the robotic arm through the series of predetermined poses according to a predetermined trajectory.

In general, in some variations, a robotic surgical system includes: at least one robotic arm comprising a plurality of joints; and a processor configured to control movement of the robotic arm before or after a surgical procedure by: defining a reference plane at a predetermined reference position, and driving at least one of the plurality of joints to guide the robotic arm through a series of predetermined poses substantially constrained within the reference plane.

Similar to the methods described above, in some variations, the sequence may include an ordered sequence of predetermined poses that progressively unfold (e.g., for pre-operative procedures), while in some variations, the sequence may include an ordered sequence of predetermined poses that progressively fold (e.g., for post-operative procedures).

In these variations, the processor may be configured to drive at least one of the plurality of joints of the robotic arm to guide the robotic arm in any of a variety of ways. For example, the processor may be configured to drive (e.g., via one or more actuators) at least one of the joints in accordance with the task space virtual fixture and/or the joint space virtual fixture. As another example, the processor may be configured to drive the at least one joint in response to an external force on the robotic arm (e.g., applied by a user manually manipulating the robotic arm), and/or provide at least one of gravity compensation and friction compensation to the at least one joint to assist in movement of the robotic arm. As another example, the processor may be configured to drive the at least one joint through the series of predetermined poses according to a predetermined trajectory.

Drawings

Fig. 1A shows an example of an operating room arrangement with a robotic surgical system and a surgeon console. FIG. 1B is a schematic diagram of one exemplary variation of a instrument driver on a robotic arm manipulator.

Fig. 2A is a schematic diagram of another exemplary variation of a instrument driver coupled to a robotic arm manipulator of a patient table. FIG. 2B is a schematic diagram of an exemplary control system arrangement for controlling actuation of a joint module of one exemplary variation of a robotic arm.

Fig. 3A is a flow chart of an exemplary variation of a method for controlling a robotic arm in a robotic surgical system. Fig. 3B and 3C are schematic diagrams of an exemplary variation of a joint space virtual gripper for controlling a robotic arm at the joint level.

Fig. 4A is a flow chart of an exemplary workflow of a robotic surgical system prior to a surgical procedure. Fig. 4B is a flowchart of an exemplary workflow of the robotic surgical system following a surgical procedure.

Fig. 5A and 5B are schematic side and top views, respectively, of a robotic arm in an exemplary variation of a storage pose under a patient table.

Fig. 6A and 6B are schematic side and top views, respectively, of a robotic arm moved to an exemplary variant of a table-off pose at an exemplary reference position. Fig. 6C is a schematic side view of the robotic arm rotated onto an exemplary reference plane.

Fig. 7A and 7B are schematic side views of a robotic arm that is movable to different poses within an exemplary reference plane.

Fig. 8A-8C are exemplary variations of gestures on different planes within an exemplary reference plane. Fig. 8D is a schematic diagram of a covering pose of a robotic arm covered with sterile drapes.

Fig. 9 is a diagram showing an exemplary modification of the control system that implements the trajectory following mode for the robot arm.

Fig. 10A and 10B are diagrams illustrating an exemplary variation of a control system implementing a combination of virtual grippers for a robotic arm.

Detailed Description

Non-limiting examples of various aspects and variations of the present invention are described herein and illustrated in the accompanying drawings.

Overview of robotic surgical System

Generally, as shown in fig. 1A, the robotic system 150 may include one or more robotic arms 160 located at a surgical platform (e.g., table, bed, cart, etc.), with end effectors or surgical tools attached to the distal end of the robotic arms 160 for performing surgical procedures. For example, as shown in the exemplary schematic of fig. 1B, the robotic system 150 may include at least one robotic arm 160 coupled to a surgical platform, and an instrument driver 170 generally attached to a distal end of the robotic arm 160. A cannula 180 coupled to an end of the instrument driver 170 may receive and guide a surgical instrument 190 (e.g., an end effector, a camera, etc.). Further, the robotic arm 160 may include a plurality of links that are actuated to position and orient an instrument driver 170 that actuates the surgical instrument 190. A sterile drape 152 or other sterile barrier may be interposed between the non-sterile components (e.g., the robotic arm 160 and the instrument driver 170) and the sterile components (e.g., the cannula 180) to help maintain a sterile field of the patient (e.g., to prevent contamination from the non-sterile components).

A user (such as a surgeon or other operator) may use the user console 100 to remotely manipulate the robotic arm 160 and/or surgical instrument (e.g., teleoperation). The user console 100 may be located in the same operating room as the robotic system 150, as shown in FIG. 1A. In other embodiments, the user console 100 may be located in an adjacent or nearby room, or remotely operated from a remote location in a different building, city, country, or the like.

In one example, the user console 100 includes a seat 110, foot-operated controls 120, one or more handheld user interface devices 122, and at least one user display 130 configured to display a view of a surgical site, for example, within a patient. For example, as shown in the exemplary user console shown in fig. 1C, a user located in seat 110 and viewing user display 130 may manipulate foot-operated controls 120 and/or hand-held user interface devices to remotely control robotic arm 160 and/or surgical instruments. In some variations, the user console may also include one or more arm supports 140 (e.g., left and right arm supports) that may generally be configured to provide support to the arms of the user positioned in the seat 110 during a surgical procedure. For example, the arm support 140 may provide an ergonomic resting surface for the user's arm, thereby reducing fatigue. Other exemplary functions of the arm support 140 are described elsewhere herein.

During an exemplary procedure or surgical procedure, the patient is ready and covered in a sterile manner, and anesthesia is achieved. Initial access to the surgical site may be performed (e.g., through an incision in the patient). Once entry is complete, initial positioning and/or preparation of the robotic system may be performed (e.g., as further described herein). During a surgical procedure, a surgeon or other user in the user console 100 may manipulate the various end effectors and/or imaging systems using foot-operated controls 120 and/or user interface devices 122 to perform the procedure. Manual assistance may also be provided at the console by personnel wearing a sterile surgical gown, which may perform tasks including, but not limited to, retracting organs, or performing manual repositioning or tool changes involving one or more robotic arms 160. Non-sterile personnel may also be present to assist the surgeon at the user console 100. When the procedure or surgical procedure is completed, the robotic system 150 and/or user console 100 may be configured or set in a state to facilitate one or more post-operative procedures, including but not limited to robotic system 150 cleaning and/or sterilization, and/or healthcare record input or printout (whether electronic or hard-copy), such as via the user console 100.

In fig. 1A, the robotic arm 160 is shown with a desktop mounting system, but in other embodiments the robotic arm may be mounted in a cart, ceiling or side wall, or other suitable support surface. Communication between the robotic system 150, the user console 100, and any other display may be via wired and/or wireless connections. Any wired connection may optionally be built into the floor and/or walls or ceiling. The communication between the user console 100 and the robotic system 150 may be wired and/or wireless, and may be proprietary and/or performed using any of a variety of data communication protocols. In still other variations, the user console 100 does not include an integrated display 130, but may provide a video output that may be connected to the output of one or more general purpose displays, including remote displays accessible via the internet or a network. The video output or feed may also be encrypted to ensure privacy, and all or part of the video output may be saved to a server or electronic healthcare recording system.

In other examples, additional user consoles 100 may be provided, for example, to control additional surgical instruments, and/or to control one or more surgical instruments at a main user console. This would allow, for example, a surgeon to take over or explain the technique with medical students and trained physicians during a surgical procedure, or to assist during complex procedures that require multiple surgeons to perform simultaneously or in a coordinated fashion.

Table and robot arm

Generally, as described above, one or more robotic arms in a robotic surgical system may be located at a surgical platform (such as a table, bed, cart, etc.). For example, as shown in fig. 2A, one exemplary variation of a robotic arm 200 may be coupled to the table 250 via a coupling arrangement 260. The coupling arrangement 260 may enable the robotic arm 200 to pivot or move laterally (into and out of the page, as shown in the orientation of fig. 2A) relative to the surface of the table 250. The coupling arrangement 260 may, for example, include a pin 252 coupled to the table 250, and a coupling link L0 rotatably coupled to the pin 252 to form a pivot joint or pin joint. The coupling arrangement 260 may also include an actuator (e.g., a motor and gear train) configured to effect powered movement of the robotic arm 200 relative to the table 250 via an actuatable joint around the pin 252. The coupling arrangement 260 may include at least one position sensor (such as an encoder coupled to an actuator in the coupling arrangement 260 or another suitable angle sensor) configured to measure a position or orientation of the robotic arm 200 relative to the table 250. Further, in some variations, one or more brakes may be included in the coupling arrangement 260 to selectively prevent relative movement of the robotic arm 200 with respect to the table 250.

Although the robotic arm 200 is primarily described herein as being coupled to the table 250 via a pivotable coupling arrangement, it should be understood that in other variations, the robotic arm 200 may additionally or alternatively be coupled to the patient table by other kinds of mechanisms, including, but not limited to, mechanisms that facilitate longitudinal or lateral movement, such as rails, in-groove pins, or other suitable mechanisms.

The robotic arm 200 may include a plurality of links (arm segments), and a plurality of actuated joint modules that drive or regulate relative movement between adjacent links. Each joint module may include an actuator, a gear train (e.g., harmonic drive), an encoder, a torque sensor, and/or other suitable actuators, transmissions, etc. for moving the arm links, and/or suitable sensors for detecting position and/or torque feedback. For example, such feedback may be used to provide input to a control scheme for operating the robotic arm. One or more joint modules may include one or more brakes (e.g., drum brakes) that may prevent relative movement of adjacent links and/or hold or lock the relative positions of adjacent links, such as for holding a robotic arm in a particular pose or configuration.

For example, as shown in fig. 2A, the robotic arm 200 may include at least seven joint modules that actuate joints J1-J7 in the robotic arm 200, wherein J1-J7 include pivot joints and/or roll joints. J1 may enable relative pivotal movement between the first link L1 and the second link L2. J2 may effect a relative roll movement between the second link L2 and the third link L3. J3 may enable relative pivotal movement between third link L3 and fourth link L4. J4 may effect a relative roll movement between the fourth link L4 and the fifth link L5. J5 may enable relative pivotal movement between the fifth link L5 and the sixth link L6. J6 may effect a relative roll movement between the sixth connection L6 and the seventh connection L7. J7 may enable relative pivotal movement between the seventh link L7 and the eighth link L8. For example, in some variations, the combination of pivot joints J1, J3, J5, and J7 and roll joints J2, J4, and J6 may implement a robotic arm having at least seven degrees of freedom and movable into various poses (including those described herein). However, it should be understood that the robotic arm shown in FIG. 2 is merely exemplary, and the methods described herein may be used to control any suitable kind of robotic arm.

In some variations, the robotic arm may be controlled by a control system that manages the motion of the robotic arm. If the robot-assisted surgical system includes more than one robot arm, the control system may control multiple robot arms. For example, as shown in fig. 2B, the control system may include one or more processors 220 (e.g., microprocessors, microcontrollers, application specific integrated circuits, field programmable gate arrays, and/or other logic circuitry). The processor 220 may be physically located on the robotic arm itself, in an on-board unit or other suitable structure, and may be communicatively linked to a user console 210 (e.g., user interface). The processor 220 may, for example, be configured to execute instructions for performing any combination of aspects of the methods described herein. The control system may also include a set of multiple motor controllers (e.g., 230a-230g), each communicatively coupled to the processor 220 and dedicated to controlling and operating at least one actuator (e.g., 240a-240g) in a respective joint module of the robotic arm.

In some variations, one or more of various control modes may be used to operate the robotic arm. For example, the robotic arm may be operated in a gravity compensated control mode in which the robotic arm holds itself in a particular pose without shifting downward due to gravity. In the gravity compensation mode, the control system determines a gravitational force acting on at least a portion of a link in the robotic arm. In response, the control system actuates at least one joint module to counteract the determined gravitational force such that the robotic arm may maintain the current pose. To determine gravity, for example, the controller may perform calculations based on measured joint angles between adjacent links, known kinematic and/or dynamic properties of the robotic arm and instrument driver, and/or known characteristics of the actuators (e.g., gear ratios, motor torque constants), one or more forces detected on the joints, and so forth. Further, the robotic arm may include at least one accelerometer or other suitable sensor or sensors configured to determine a direction of gravity applied to the arm. Based on these calculations, the controller can algorithmically determine what force needs to be applied at each joint module to compensate for the gravitational forces acting on that joint module. For example, the controller may utilize a forward kinematics algorithm, an inverse kinematics algorithm, or any suitable algorithm. The controller may then generate a set of commands to provide the appropriate level of current to the actuators in the joint module to maintain the robotic arm in the same pose. For example, in various instances, such as during pre-operative and/or post-operative procedures described herein, the gravity compensation mode may be used, for example, alone or in combination with other control modes (e.g., the friction compensation mode described below).

As another example, the robotic arm may be operated in a friction compensation mode or an active back drive mode. For example, in some cases, a user may want to directly manipulate (e.g., pull or push) one or more arm links to place the robotic arm in a particular pose. These motions back drive the actuators of the robot arm. However, due to mechanical friction, such as high gear ratios in the joint module, in some variations, the user must apply considerable force to overcome the friction and successfully move the robotic arm. To address this issue, the friction compensation mode enables the robotic arm to assist the user in moving at least a portion of the robotic arm by actively back-driving the appropriate joint modules in the direction needed to achieve the user's desired pose. Thus, the user may manually manipulate the robotic arm with less perceptible friction or with a noticeable "light weight" feel. In some variations, the controller may also incorporate predefined parameters (e.g., duration of force) to help distinguish between incidental movement (e.g., short jolts of the arm) and sudden expected changes in arm position, and then correct or re-determine the arm position if movement is determined to be incidental.

In the friction compensation mode, the control system may determine the presence and direction of user-applied force acting on at least one joint module (either directly or indirectly as a force on one or more arm links) to back-drive the actuators in that joint module. In response, the control system may actuate the joint module in the same direction as the force applied by the user to assist the user in overcoming static or dynamic friction. To determine the presence, magnitude, and direction of the force applied by the user, the control system may monitor the velocity and/or position of the joint module or robotic linkage (e.g., using force or torque sensors, accelerometers, etc.). Further, when in the friction compensation mode, the control system may send a dithering current signal (e.g., a sine wave or square wave centered at zero, with a frequency of about 0.5Hz to 1.0Hz or other suitable frequency, and an amplitude within the friction band in both directions) to one or more joint modules so that the joint modules are ready to approach but not completely overcome friction in either actuator direction. In response to determining the presence and direction of the force applied by the user, the control system may then generate a set of commands to provide the appropriate current level to the actuators in the joint modules to overcome the friction with greater responsiveness. For example, in various instances, such as during the pre-operative and/or post-operative procedures described herein, the friction compensation mode may be used alone or in combination with other modes (e.g., gravity compensation mode).

Method for guiding a robot arm

Generally, methods for guiding movement of a robotic arm are provided herein. For example, as shown in fig. 3A, a method 300 for guiding movement of a robotic arm in a robotic surgical system may comprise: a reference plane 310 is defined at a reference position of the robotic arm, wherein the robotic arm includes a plurality of joints, and at least one of the plurality of joints 320 is driven (e.g., with one or more actuators) to guide the robotic arm through a series of predetermined poses substantially constrained within the reference plane. For example, as described below, the robotic arm may be guided by driving at least one of a plurality of joints in the task space and/or joint space. In some variations, driving at least one of the plurality of joints 320 may be in response to manual manipulation of the robotic arm in order to assist a user in repositioning or repositioning the robotic arm, as further described herein.

In some variations, the method 300 may assist in positioning the robotic arm in pre-and/or post-operative procedures (e.g., "setup" and "teardown" procedures) before and after a surgical procedure, respectively. For example, a pre-operative procedure may transition the robotic arm from a stored pose, and a post-operative procedure may transition the robotic arm to a stored pose. In some variations, the method 300 may assist in intraoperative positioning of a robotic arm during a surgical procedure. In one aspect, through a control scheme as further described herein, the method may facilitate movement between robotic arm poses in a consistent and predictable manner that is compatible with clinical workflows. In another aspect, user-defined and/or predetermined robotic arm poses may be linked or bundled together by a virtual construct (such as a reference plane) that organizes and/or constrains movement of the robotic arm in a controlled manner. For example, as further described herein, the reference plane may be configured as a virtual fixture that generally limits movement of the robotic arm using predefined rules, thereby increasing predictability of the manner in which the robotic arm moves. For example, such predictability and/or constraints of the robotic arms may help reduce accidental collisions between adjacent robotic arms, self-collisions between different links of the robotic arms, collisions between the robotic arms and the patient table and/or other nearby obstacles, and so forth. In some variations, the reference plane may be predetermined (e.g., a pre-calculated or pre-defined location in space that is stored in memory and received for use during pre-operative and/or post-operative procedures). For example, a particular reference plane (e.g., relative to a patient table) may be an overall position suitable for a different range of situations, or may be associated with a particular surgical type, a particular patient type, a particular user (e.g., based on surgeon preferences), a particular device (such as a type of patient table), and so forth. In other variations, the reference plane may be stored in memory (e.g., current position of one or more links relative to the robotic arm) for use during pre-operative and/or post-operative procedures.

The method 300 may guide movement of the robotic arm between various poses (including user desired poses and/or predetermined poses), thereby assisting a user (e.g., a surgeon or surgical assistant) in manipulating the robotic arm in a flexible manner suitable for various situations. In some variations, the method 300 may provide such benefits through a convenient interface for a user to manipulate the robotic arm before, during, and/or after a surgical procedure.

In some variations, the general pre-operative and post-operative workflows may incorporate multiple robotic arm poses, or poses related to transitions between a storage environment and a surgical procedure environment. Some of the robotic arm poses may be on a plane, i.e., within a reference plane, where the reference plane may help guide the robotic arm to move between robotic arm poses on the plane. In some variations, an "on-plane" pose may be a pose in which the entire robotic arm, or at least critical points on the robotic arm (e.g., certain joints of the robotic arm), are substantially within a reference plane. Additionally, some of the robotic arm poses may be out-of-plane, i.e., outside of a reference plane, where the reference plane may provide a reference point or general "origin" position to which the robotic arm may return to continue in a pre-or post-operative workflow.

As described in further detail below, in some variations, the robotic arm may be guided, at least in part, via a user input device, such as by remote command through a handheld communication device configured to send and/or receive signals from the robotic arm (and/or a table adapter coupling the robotic arm to the patient table), or locally, typically through buttons or other input mechanisms on the patient table, robotic arm, or the like. In other variations, the robotic arm may additionally or alternatively be guided at least in part by an external force directly on the robotic arm (such as a force applied by a user who directly manually manipulates the robotic arm). In these variations, at least one of a plurality of joints in the robotic arm may be driven to effect commanded movement of the robotic arm and/or to provide assistance to a user's operation of the robotic arm in order to guide the robotic arm through a predetermined pose.

Although the methods described herein are primarily discussed with reference to a single robotic arm, it should be understood that in variations where the robotic surgical system includes multiple robotic arms, at least some of the multiple robotic arms may be simultaneously controlled through pre-operative and/or post-operative workflows in a similar manner. In other variations, at least some of the plurality of robotic arms may be controlled sequentially (e.g., one at a time) through pre-operative and/or post-operative workflows. Furthermore, at least some of the robotic arms may be controlled simultaneously or independently by respective intra-operative workflows.

Further, while the methods described herein include reference to a robotic arm coupled to a patient table, it should be understood that in some variations, the methods may be performed with respect to a robotic arm mounted to any suitable support surface (e.g., cart, ceiling, side wall, etc.).

Guidance in a task space

Generally, in some variations and in at least some cases, a robotic arm may be controlled by generating and applying a task space virtual gripper to the robotic arm. The task space virtual fixture may be, for example, a straight or curved line, a plane or curved surface, a volume, or other configuration in three-dimensional space (e.g., defined in cartesian space or other suitable spatial coordinates). For example, the control system may generally limit the movement of one or more control points on the robotic arm (e.g., any suitable virtual point on the robotic arm) to a location on or within the virtual fixture. The task space virtual jig may be predetermined (e.g., a pre-calculated or pre-defined location in space that is stored in memory and received for use during pre-operative and/or post-operative procedures). For example, a particular task space virtual jig may be a generic virtual jig suitable for a different range of situations, or may be associated with a particular surgical type, a particular patient type, a particular user (e.g., based on surgeon preferences), a particular device (such as a type of patient table). In some variations, the task space virtual jig may be stored in memory (e.g., current position of one or more links relative to the robotic arm) for use during pre-, intra-and/or post-operative procedures.

In some variations, as described herein, a virtual gripper may be defined on a reference plane of a robotic arm such that movement of the robotic arm (or a selected point on the robotic arm) is substantially constrained to the reference plane. For example, a user may manually manipulate and position the robotic arm with actuated assistance provided by gravity compensation and/or friction compensation control modes. The virtual gripper may generally allow such user-manipulated movement of the robotic arm within the reference plane while substantially preventing or impeding movement outside the reference plane. For example, motion out of the reference plane may be resisted by delivering a set of one or more resistive joint torques that oppose one or more force components normal to the reference plane (any force components that tend to cause a portion of the robotic arm to move out of the reference plane). The control system may drive one or more joints in the robotic arm to deliver a resistive joint torque according to the virtual gripper.

The desired virtual force F of the resistive joint torque τ may be calculated as a cartesian force (e.g., an X-Y-Z component) as the sum of the virtual spring force and the virtual damping force according to equation (1):

F=K*Δx+D*vx(1)

where F is cartesian component force (3 × 1 vector), K is spring constant (3 × 3 diagonal matrix), Δ x is penetration depth (3 × 1 vector), D is damping ratio (3 × 3 diagonal matrix), and v isxIn some variations, the virtual force F may omit a virtual spring force (a component with a spring constant K) or a virtual damping force (a component with a damping ratio D) the virtual force F may be used to determine a resistive joint torque τ on the joint J of the robotic arm according to equation (2):

τ=JT*[F,O]T(2)

where τ is the resistive joint torque (number of joints n × 1 vector), F is the force (3 × 1 vector), and O is zero (3 × 1 vector). Each resistive joint torque may be achieved or applied by actuation of a respective joint module in the robotic arm such that the associated joint of the robotic arm is driven against attempted out-of-plane movement of at least a portion of the robotic arm. Although the size of the matrices in equations (1) and (2) are configured for cartesian forces, it should be understood that in other variations, the matrices may be any suitable size for expressing forces and torques in other kinds of coordinate systems (e.g., spherical coordinate systems).

In some variations, the robotic arm (or a selected point on the robotic arm) may move outside of the reference plane (virtual gripper) if sufficient external force applied to the robotic arm exceeds a threshold. For example, the virtual force F described above may saturate at a threshold value, or have a maximum predetermined value, such that if a user attempts to move the robotic arm with sufficient force to overcome the maximum virtual force F, at least a portion of the robotic arm may be forced outside of the reference plane. The maximum or saturation value of the virtual force F may be adjusted as a system setting (e.g., system mode). In some examples, the maximum value of the virtual force F may be variable and may be based on other conditions, such as the type of surgical procedure to be performed, the speed of movement of the robotic arm, the mode or pose of the robotic arm (e.g., associated with a particular step of a setup and/or removal process), and so forth. Once the robotic arm is outside of the reference plane, in some variations, movement of the robotic arm outside of the reference plane may be actively assisted by gravity compensation and/or friction compensation. Further, the robotic arm may be restored onto the reference plane and into the constraints of the virtual fixture, e.g., via guidance in the joint space as described below.

Although navigation in task space is described above primarily with respect to a planar virtual fixture, it should be understood that other virtual fixture shapes (e.g., straight or curved lines, curved surfaces, three-dimensional volumes, etc.) may be similarly implemented.

Guidance in joint space

Generally, in some variations and in at least some cases, a robotic arm may be controlled by generating and applying one or more joint space virtual grippers that are applied across one or more joints of the robotic arm on a joint-by-joint level. Similar to the task space virtual fixture described above, the joint space virtual fixture may be, for example, a straight or curved line, a plane or curved surface, a volume, or other configuration in three-dimensional space (e.g., defined in cartesian space or other suitable spatial coordinates). For example, the control system may generally limit the movement of one or more control points on the robotic arm (e.g., any suitable virtual point on the robotic arm) to a location on or within the virtual fixture. Like the task space virtual jig described above, the joint space virtual jig may be predetermined (e.g., a pre-calculated or pre-defined position in space that is stored in memory and received for use during pre-operative and/or post-operative procedures). For example, a particular joint space virtual jig may be a generic virtual jig suitable for a different range of situations, or may be associated with a particular surgical type, a particular patient type, a particular user (e.g., based on surgeon preferences), a particular device (such as a type of patient table), and so forth. In some variations, the joint space virtual jig may be stored in memory (e.g., current position of one or more links relative to the robotic arm) for use during pre-, intra-and/or post-operative procedures.

In some variations, at least one joint space virtual gripper may be defined on or around a joint of the robotic arm. Further, a plurality of joint space virtual fixtures may be defined on or around a plurality of respective joints of the robotic arm such that movement of the robotic arm is substantially constrained to a reference plane or other virtual construct. For example, a user may manually manipulate and position the robotic arm with actuated assistance provided by gravity compensation and/or friction compensation control modes. The joint space virtual gripper may generally allow movement of the robotic arm within a reference plane while substantially preventing or inhibiting movement outside the reference plane.

Different kinds of joint space virtual fixtures are possible. A variation of the joint space virtual jig is shown in fig. 3B. Fig. 3B shows the range of rotational motion of roll joints (e.g., roll joints J2, J4, J6 as shown in the exemplary robotic arm of fig. 2A). A virtual fixture may be established at the target rotation angle 350 (e.g., the virtual fixture may be aligned with the reference plane). The control system may define an attraction zone between angles (a) and (B) and around the target rotation angle 350. When the relative rotational position of the adjacent link enters the attraction zone (AB) via the roll joint, a virtual force (e.g., a virtual spring force and/or a virtual damping force similar to equation 1 above) may attract the relative rotational position toward the target rotational angle 350. The virtual force may be used to determine one or more attractive joint torques that may be achieved or applied by actuation of a joint module in the robotic arm such that the relevant joint of the robotic arm is driven to attract the arm link into a particular target angle of rotation and thereby encourage the robotic arm to enter a particular pose (e.g., within a reference plane). For example, in some variations, the attractive joint torque exerted by the joint module on a particular joint may be determined using equation 3:

τ=k*Δθ+d*vθ(3)

where τ is joint torque, k is spring constant, Δ θ is penetration angle, d is damping ratio, and v isθJoint velocity.

Depending on the joint space virtual clamp, the attraction Area (AB) may, for example, allow a user manipulating the roll joint to feel that the adjacent connecting pieces "snap" or "lock" into a certain relative rotational position. In some variations, the attraction zone (AB) may be swept through an angle of between about 10 degrees and about 50 degrees, between about 25 degrees and 35 degrees, or about 10 degrees. The attraction zone (AB) may be symmetrically oriented about the target rotation angle 350 such that the target rotation angle 350 substantially bisects the attraction zone (AB). Alternatively, the attraction zone (AB) may be asymmetrically oriented about the target rotation angle 350 such that the target rotation angle 350 is closer to one end of the attraction zone (as compared to the other end).

In some variations, the robotic arm may move outside of the attraction zone if sufficient external force applied to the robotic arm exceeds a threshold. For example, the virtual force may saturate at a threshold value, or have a maximum predetermined value, such that if the user attempts to rotate the robotic arm with sufficient force to overcome the maximum virtual force, the roll joint may be forced outside of the attraction zone. Outside the attraction Area (AB), the control system may avoid applying the above-mentioned virtual force and the attractive joint torque.

Another variation of the joint space virtual jig is shown in fig. 3C. Like fig. 3B, fig. 3C illustrates a range of rotational motion of the roll joint, and a virtual fixture may be established (e.g., the virtual fixture may be aligned with a reference plane) relative to the target rotational angle 350. The control system may define a "uniplanar" or unilateral virtual clamp that allows rotation of the joint in one direction toward the target rotation angle 350, but prevents rotation of the joint in the opposite direction away from the target rotation angle 350 by actively resisting movement. The control system may cause actuation of one or more joints to prevent rotation according to the unilateral joint space virtual clamp. In some variations, the allowable direction of a single-sided virtual fixture may always be oriented in the same direction (e.g., allowing only clockwise movement of one connector relative to an adjacent connector). In other variations, the allowable direction of the single-sided virtual fixture may vary depending on which direction of movement will more quickly position the adjacent connector at the target rotational angle 350. For example, if the current link position C is closer to the target rotation angle 350 by traveling in a clockwise direction, the single-sided virtual fixture may allow substantially only clockwise movement of the link. As another example, if the current link position is closer to the target rotation angle 350 by traveling in a counterclockwise direction, the one-sided virtual fixture may allow substantially only counterclockwise motion. Furthermore, in some variations, movement in the permissive direction may be assisted via actuation assistance (e.g., friction compensation).

In some variations, the robotic arm may move opposite the permissive direction of the one-sided virtual gripper if sufficient external force applied to the robotic arm exceeds a threshold. For example, if a user attempts to rotate the robotic arm with sufficient force to overcome a threshold, the roll joint may be forced in a direction opposite to that of the one-sided virtual gripper.

In some variations, multiple virtual fixtures may be combined in any suitable manner. For example, in one variation, the control system may be configured to implement on at least one joint: a "one-sided virtual jig (e.g., similar to the jig described above with respect to fig. 3C), or a" two-sided "virtual jig with an attraction zone (e.g., similar to the jig described above with respect to fig. 3B), depending on the current rotational position of the joint with respect to the target rotational angle.

For example, as shown in FIG. 10A, if the current joint position qcurrWith the target joint position qtarThe difference between them is greater than a predetermined threshold qthreshold(e.g., greater than 5 degrees, greater than 10 degrees, greater than 15 degrees, etc.), a single-sided, single-sided virtual fixture may be implemented. Only at the current joint position qcurrAnd the previous joint position qprevThe difference between indicates that the joint is moving away from the target joint position qtarDuring movement, only the one-sided virtual gripper can apply a virtual gripper force FvTo limit or oppose movement. For example, as shown in FIG. 10A, at block 1010, when the user is facingTo a target position qtarWhile moving the arm (in the allowed direction of the unilateral virtual clamp, e.g. at least partially by the current joint position qcurrAnd the previous joint position qprevThe difference between) the control system may use an assist force F greater than zeroassTo provide actuation assistance (e.g., friction compensation) to assist in movement of the arm toward the target position, and the one-sided virtual clamp may not apply the virtual clamp force FvTo limit or oppose such arm movement. In contrast, as shown in FIG. 10A, at block 1020, when the user is away from the target location qtarWhile moving the arm (in the direction of constraint of the unilateral virtual clamp, e.g. at least partially by the current joint position qcurrAnd the previous joint position qprevThe difference between) the control system may use an assist force F approximately equal to zeroassWithout providing any actuation assistance, and a single-sided virtual clamp can apply a virtual clamp force FvTo substantially prevent or resist movement of the arm away from the target location. Thus, the unilateral virtual clamp may facilitate movement of the joint toward the target joint location and oppose movement of the joint away from the target joint location.

Further, as shown in fig. 10B, if the current joint position q is presentcurrWith the target joint position qtarThe difference between them is less than a predetermined threshold qthreshold(e.g., less than 5 degrees, less than 10 degrees, less than 15 degrees, etc.), a "double-sided" virtual fixture with an attraction zone may be implemented. For example, the control system may surround the target joint position qtarThe attraction area is defined within a predetermined angular range. In some variations, the attraction zone may also be defined as a predetermined threshold q on both sides of the target joint positionthresholdBut may define the attraction zone relative to any suitable angular range. When the relative rotational position of adjacent links around a joint enters the attraction zone, a virtual clamp force (e.g., a virtual spring force and/or a virtual damping force similar to equation 3 above) may attract the links to the target joint position. Thus, if the joint is pushed or pulled a little apart (e.g., in either direction at q)thresholdInner), then the two-sided virtual fixture may be made to phaseThe proximal connector can be "snapped" or "locked" into a particular relative rotational position according to a joint space virtual clamp. In some variations, if at any time, the current joint position qcurrWith the target joint position qtarThe difference between becomes larger than the predetermined threshold q againthresholdThe control system may revert to implementing a single-sided virtual fixture as shown in fig. 10A.

Further, it should be understood that in some variations, the combination of "single-sided" and "double-sided" virtual fixtures may similarly be implemented by the control system through the task-based virtual fixtures described in further detail above. For example, a single-sided virtual fixture and/or a two-sided virtual fixture having an attraction area may be defined relative to a reference plane similar to the reference plane described above and/or any suitable kind of virtual fixture shape.

Although the joint space virtual gripper is described primarily with respect to a roll joint, it should be understood that attractive virtual grippers and/or unilateral virtual grippers may be similarly implemented additionally or otherwise for other kinds of joints (e.g., pitch, yaw) in the robot to impose joint space guidance on other suitable portions of the robot arm.

Different kinds of joint space virtual fixtures can be combined. For example, in some variations, the joints between adjacent links in a robotic arm may be guided primarily via a one-sided virtual clamp as described with respect to fig. 3C, and as the relative rotational position of the links approaches the target rotational angle 350, the links may enter a suction zone as described with respect to fig. 3B, such that the suction force snaps or locks the joints into place at the target rotational angle 350. Further, in some variations, guidance via the task space virtual jig may be combined with guidance via one or more kinds of joint space virtual jigs.

Guidance using trajectory

In still other variations, movement of at least a portion of the robotic arm may be guided in a trajectory following mode. In trajectory following mode, the robotic arm may move to follow a series of one or more trajectory (e.g., cartesian trajectory) commands. Trajectory commands may include, for example, velocity commands (constructed from linear and/or angular movements) or target pose commands (constructed from the final target positions and orientations of the links and joint modules). If the command is a target pose that requires a large number of link movements to transition from the current pose to the target pose, the control system may generate a trajectory that defines the necessary link movements. If the command relates to the same target gesture as the current gesture, the control system may effectively generate a trajectory command, resulting in a commanded "hold" position. For example, the trajectory may be based on inputs including: a commanded velocity or gesture (e.g., transformation matrix, rotation matrix, 3D vector, 6D vector, etc.); an arm linkage to be controlled; measured joint parameters (angle, velocity, acceleration, etc.); tool parameters (type, weight, size, etc.); and environmental parameters (e.g., predefined areas where the arm linkage is blocked or prohibited from entering, etc.). The control system may then use one or more algorithms to generate an output of the firmware of the commanded joint parameters (position, velocity, acceleration, etc.) and/or a commanded motor current that is a current feed forward of the firmware. Suitable algorithms for determining these output commands include those based on forward kinematics, inverse dynamics, and/or collision avoidance (e.g., collisions between arm links, collisions between different instances of a robotic arm, collisions between an arm and the environment, etc.).

Preoperative workflow

In some variations, as described above, the method 300 may be used to help set up the robotic surgical system prior to a surgical procedure (e.g., to transition the robotic arm from a stored pose, another suitable starting pose, or otherwise prepared for use during the surgical procedure). Aspects of an exemplary variation of the method 400 in a pre-operative workflow setting are shown in fig. 4A. For example, the method 400 may include assisting the robotic arm to move from a storage position (where the robotic arm may be in a storage pose, such as the collapsed storage pose 410 described below) to a reference position (where the robotic arm may be in a table-out pose 420 described below, or in another suitable pose at a location that substantially reduces the risk of collision with nearby objects when the robotic arm is unfolded from the collapsed storage pose 410). To further configure the robotic surgical system, at least one of the joints in the robotic arm may be driven to guide the robotic arm through a series of deployed predetermined poses or poses within a reference plane defined at a reference location. The robotic arm may be guided in such on-plane poses 430 (e.g., low park pose, high park pose, overlay pose) and then guided to the docking location 450 for coupling to a cannula (e.g., a cannula placed in a port on a patient) via guidance through a task space virtual clamp, guidance through a joint space virtual clamp, guidance through a trajectory, and the like. Further, the robotic arm may move outside of the reference plane, such as into one or more out-of-plane poses 440, and may be directed back toward one or more in-plane poses 430 and/or docking locations 450. Once in the docking position 450, the robotic arm may be positioned for receiving a surgical instrument (e.g., an end effector driven by an instrument driver on the robotic arm) and/or otherwise prepared for use during a surgical procedure.

Storing gestures

In some variations, as shown in fig. 4A, the method may include assisting the robotic arm to move from the storage pose 410. Storage pose 410 may be used, for example, to position the robotic arm when the robotic surgical system is not in use (e.g., between surgical procedures), and/or to transport the robotic surgical system during transport, between operating rooms, and so forth. Generally, when in the storage pose 410, the robotic arm may be in a compact pose and in a suitable storage location, such as under or near the patient table. The compact pose and/or storage position of the storage pose 410 may be predetermined and associated with a stored mode or state of the robotic arm, such as stored in a memory device and received for use by the robotic arm during pre-operative and/or post-operative procedures. In some variations, if the robotic arm is in a different pose 408 at the beginning of the setup, rather than a designated storage pose and/or storage position, the robotic system may indicate an error to the user (i.e., the robotic arm is not in the storage pose 460) and/or move or otherwise direct the robotic arm to the storage pose 460.

For example, as shown, in fig. 5A and 5B, the compact pose may generally be a folded pose, wherein the links of the robotic arms 200 are effectively packed against each other to enable the robotic arms to occupy a minimum volume. For example, as shown in fig. 5B, the robotic arm 200 may include a first portion 200a and a second portion 200B that are movable relative to each other (e.g., pivotably coupled), and when the robotic arm 200 is in the storage position, the second portion 200B may be collapsed onto or nested adjacent to the first portion 200 a. Additional portions of the robotic arm 200 (such as the portion more distal to the second portion 200 b) may be similarly retracted onto or nested adjacent to the more proximal portion of the robotic arm. In some variations, when in the storage pose 410, the robotic arm 200 may be in a compact pose under the patient table in a designated storage position. In variations where the robotic surgical system includes multiple robotic arms, the multiple robotic arms may be arranged in their stored positions generally under or around the patient table in a symmetrical manner (or may be arranged in any suitable manner).

When the robotic arm 200 is in the storage pose 410, at least a portion of the robotic arm may be locked in the storage pose 410, such as via engaging one or more brakes in at least one joint in the robotic arm. For example, all brakes in the robotic arm (and/or a coupling arrangement coupling the robotic arm to the table) may be engaged to hold the robotic arm in the storage pose 410 until the robotic arm is ready to transition to the predetermined reference position.

Although fig. 5A and 5B show the storage position generally below the patient table, it should be understood that in some variations, the storage position may be folded inside the cart, below or above the ceiling, adjacent to or inside the side walls, or against any other suitable mounting surface. For example, the arms may be in a folded position similar to the folded position shown in fig. 5A and 5B, within a storage compartment (e.g., folded within a cart, within a ceiling, within a sidewall) or nested against a support surface (e.g., folded against a cart, ceiling, or sidewall).

Posture of table detachment

As shown in fig. 4A, the robotic arm may transition from the storage pose 410 to the table-out pose 420, or another suitable pose in the reference position that is suitable to allow the robotic arm to deploy without colliding with the table and/or other nearby objects. For example, as shown in fig. 6A and 6B, at least a first portion 200a of the robotic arm may be pivoted outward from the table 250 to enable a second portion 200B of the robotic arm to disengage from the table 250 for deployment, and the like. For example, referring to fig. 2, when the robotic arm transitions to the table-disengaged pose, links L0 and L1 may pivot outward via pin 252 relative to table 250 such that more distal links of the robotic arm (e.g., L2-L7 and other distal portions of the robotic arm) may deploy and/or otherwise reconfigure without colliding with the table. One or more brakes in the robotic arm and/or coupling arrangement may be disengaged to facilitate such movement of the robotic arm from the storage pose 410 to the reference position.

In some variations, the reference position of the table-off pose 420 may be described as an angle (or range of angles) of at least a specified portion of the robotic arm relative to the patient table. For example, referring to fig. 6B, the reference position may be defined at least in part by an angle α measured between the proximal portion 200a of the robotic arm and an edge of the patient table 250. For example, the angle α may be at least 45 degrees, at least 60 degrees, at least 75 degrees, or at least 90 degrees. In other exemplary variations, the angle α may be between about 30 degrees and about 90 degrees, between about 45 degrees and about 75 degrees. In still other variations, the reference position may be any suitable angle that positions the robotic arm out from under the patient table 250 and allows the arm to be deployed, which may depend at least in part on, for example, the robotic arm design (e.g., length or diameter of the arm links, number of arm links, etc.).

It should be understood that in other variations, other kinds of mechanisms may additionally or alternatively cause the robotic arm to transition to the table-disengaged pose in some manner, such as by longitudinal translation (e.g., sliding on longitudinal rails) and/or lateral translation (e.g., sliding on lateral rails), in addition to or instead of pivoting.

In some variations, the robotic arm may be guided to a reference position in response to a movement command (e.g., via a remote command from a handheld communication device or other interface), such as through a trajectory following mode. In some variations, the robotic arm may be guided to the reference position by manipulation of the robotic arm by the user (e.g., by gravity compensation and/or friction compensation), by guidance of one or more task space virtual grippers, and/or by guidance of one or more joint space virtual grippers.

The reference plane may be defined at a predetermined reference position of the robot arm. In some variations, the reference plane may be defined as a plane that is generally perpendicular to the proximal portion of the robotic arm. For example, referring to fig. 2A, the reference plane may be a vertical plane orthogonal to robotic arm link L1. Once the robotic arm has transitioned to the table-out pose 420, the robotic arm may be guided in preparation for deployment and/or other repositioning within the reference plane. For example, as shown in fig. 6C, the robotic arm 200 (still in a generally folded or collapsed position) may be tilted such that both the first arm portion 200a and the second arm portion 200b are located on the reference plane 610. After the robotic arm 200 is tilted onto the reference plane 610, the robotic arm 200 may reconfigure itself through various folded and unfolded poses within the reference plane 610, as described further below (e.g., low parking pose, high parking pose, covering pose).

In some variations, only the first portion 200a may rotate to cause the robotic arm 200 to roll onto the reference plane, while the second portion 200b and other portions of the robotic arm remain in the same orientation relative to the first portion 200 a. In other variations, other portions of the robotic arm may additionally move when the robotic arm 200 is tilted onto the reference plane. For example, the second portion 200b may include a touch screen, display, buttons, and/or other user interface elements (not shown) that are easily accessible by a user as desired in the overall setup of the system. When the robotic arm 200 is in the table-disengaged posture (e.g., as shown in fig. 6B), the second portion 200B may be oriented such that the user interface element is facing upward and accessible to a user. When the first portion 200a is rotated in a clockwise direction (as shown in fig. 6C), the second portion 200b may additionally be rotated in a counter-clockwise direction at the same or similar rate in order to keep the user interface element facing upward throughout the transition of the robotic arm onto the reference plane.

Although the transition of the robotic arm between the stored pose (e.g., fig. 5A and 5B) and the initial flat pose (e.g., fig. 6C) is primarily described above as a process having a table-off pose (e.g., fig. 6A and 6B) as a discrete intermediate step, it should be understood that in some variations, the transition between the stored pose may omit such a discrete intermediate pose. For example, in some variations, the robotic arms may pivot outward and roll onto the reference plane substantially simultaneously, thereby blending the movements described above with respect to the transitions between the storage pose and the table-off pose, and between the table-off pose and the initial on-plane pose. Still further, in some variations, the robotic arm may substantially simultaneously pivot outward and roll onto the reference plane to be one of the above-described in-plane poses, thereby omitting the initial in-plane pose shown in fig. 6C.

Posture on plane

In some variations, as shown in fig. 4A, once the robotic arm has been positioned within a reference plane located at a reference position, the robotic arm may be directed through a series of in-plane poses 430, or one or more poses substantially constrained within the reference plane. For example, in some variations, a gesture that is substantially constrained within the reference plane may be a gesture in which the robotic arm (or a selected critical location or point on the robotic arm) is located within the reference plane. One or more brakes in the robot arm may be disengaged to allow for the rest of the robot arm. Such a brake may be triggered to engage, for example, upon application of an external force (such as a user initiating manual manipulation of the robotic arm, and/or engagement of a button, mechanism, or other surface on a control point on the robotic arm).

For example, fig. 7A and 7B illustrate one pose of the robotic arm substantially constrained within a reference plane 710. The robotic arm shown in fig. 7A and 7B may be substantially similar to the robotic arm shown in fig. 2A. In general, the angle or orientation of the reference plane may be defined or set based on the particular angle of rotation of the roll joint J2, J4, and/or J6. Movement of any of the roll joints J2, J4, and J6 facilitates out-of-plane movement of the robotic arm (or alternatively, results in a change in the angle or orientation of the plane shared between the roll joints). Further, pivot joints J1, J3, J5, and J7 are located on reference plane 710, and movement of joints J1, J3, J5, and/or J7 facilitates different on-plane poses of the robotic arm.

In pre-procedural setup, a series of gestures substantially constrained within a reference plane may, for example, comprise an ordered sequence of progressively evolving predetermined gestures within the reference plane. In some variations, one or more joints in the robotic arm may be actuated to drive the robotic arm forward and backward through at least a portion of the ordered sequence. For example, the robotic arm may be driven to partially unfold, at least partially refold, and then fully unfold through a sequence of gestures. By constraining the robotic arm substantially within the reference plane during pre-operative procedures, such as deployment, accidental collisions (as well as self-collisions) between the robotic arm and nearby objects may be reduced. Positioning the robotic arm in a predetermined pose may further limit the risk of collision, as the robotic arm will move in a predictable and consistent manner when preparing the robotic arm for a surgical procedure.

In some variations, collisions (such as self-collisions) between links of the robotic arms may be reduced by introducing joint constraints. For example, one or more joints in a robotic arm may be constrained to movement within a particular range of motion, such that in combination, the multiple joints are not able to rotate to a degree that would cause the arm links to collide. The joint constraint may be "soft" in that the joint constraint may be overcome by applying (e.g., manually) a force to the joint that exceeds a threshold force. In some variations, similar to the joint space jig described above, such joint restrictions may be imposed with a virtual jig.

As shown in fig. 4A, some exemplary on-plane gestures 430 include a low parking gesture 432, a high parking gesture 434, and an overlay gesture 436. As shown in fig. 8A, the robotic arms in the low parking pose 432 may be partially deployed, with at least some of the robotic arms positioned below the patient table 250. For example, the low parking pose 432 may be used to hold the robotic arm in an intermediate pose that is not stored, but is in a known position that does not impede the manipulation of other robotic arms or personnel (e.g., surgical assistants) to orient around the patient table, etc.

As shown in fig. 8B, the robotic arm in the high parking pose 434 may be more extended than the low parking pose 432, but include a distal portion that is folded and compact. In the high parking pose 434, the robotic arm may be in an intermediate position between the table disengage pose 420 and the cover pose 436. The high parking gesture 434 may be another intermediate gesture that is not stored but is in a known position that is not obstructed.

As shown in fig. 8C, the robotic arm in the covering pose 436 may be even more extended than the high parking pose 434. For example, as shown in fig. 8D, in the covering pose 436, the robotic arm may be sufficiently unfolded to enable placement of the sterile drape 820 collectively around the arm links in a manner that allows the arm links to articulate under the sterile drape 820. For example, after the user moves the robotic arm into the covering pose 436, the robotic arm may maintain the covering pose with the assistance of gravity compensation as the user places sterile drapes over the robotic arm. In some variations of the clinical workflow, the patient may be covered while the robotic arm is in the covering pose (e.g., immediately before or after covering the robotic arm with sterile drapes).

In some variations, the ordered sequence of progressively evolving predetermined gestures includes a low parking gesture 432, a high parking gesture 434, and an overlay gesture 436. Other variations of the ordered sequence may omit one or more of these gestures, and/or include other suitable gestures (e.g., gestures that are generally between any two of these gestures, modified versions of these gestures, etc.).

Movement between the predetermined poses may be guided by automatically driving at least one of a plurality of joints in the robotic arm. Various guidance procedures may guide the robotic arm through these poses. For example, when a user manually manipulates a robotic arm, one or more joints may be driven to facilitate gravity compensation and/or friction compensation in order to help guide movement of the robotic arm in response to forces exerted by the user on the robotic arm. Additionally or alternatively, one or more joints may be driven to guide the robotic arm by movement according to one or more task space virtual grippers and/or one or more joint space virtual grippers.

In performing one or more joint space virtual grippers, the different joints may be actuated in a particular order so as to effectively move the robotic arm through an ordered sequence of progressively expanding poses (e.g., to avoid self-collisions between its own arm links, to sweep through a smaller volume when the robotic arm is expanded, etc.). For example, in some variations, the more proximal joint may be biased to deploy before the more distal joint in the robotic arm in order to reduce the overall volume swept by the robotic arm during the sequence of deployment poses. With respect to the exemplary variation of the robotic arm shown in fig. 2A, to guide the robotic arm through various in-plane poses, the method may include a first joint space virtual gripper on J2, a second joint space virtual gripper on J4, and a third joint space virtual gripper on J6, wherein the first, second, and third joint space virtual grippers are performed in that order.

In some variations, one or more joints of the robotic arm may be driven to facilitate an automatic trajectory following mode in which the robotic arm follows a predetermined prescribed movement command. For example, the deployment trajectory may be pre-calculated at the joint level of the robotic arm for commanding each of the joints (e.g., changing to J1-J7 with reference to the robotic arm shown in FIG. 2A) to gradually transition the robotic arm from the off-table pose 420 to the on-plane pose 430. In some of the variations that are described above,the control system supervising the execution of the trajectory may follow a set of rules as shown in fig. 9. Generally speaking, trace q when executing a commandcmdThe joint position controller may have a soft gain and may be compensated by a pre-calculated joint torque in a feed forward manner. When the trajectory following mode is active, the actual position of the joint may be detected by a sensor in the robot arm (e.g. by an encoder) and used as q in the control systemstatus. The feed forward term contributing to the pre-calculated joint torque may include the joint torque calculated to effect movement of the joint and the joint torque required for gravity compensation (as described above). The soft gain and feed forward gravity terms on the joints may allow the robotic arm to follow a predetermined trajectory, yet follow unexpected external forces (e.g., due to collisions with nearby objects, interference between the robotic arm's own links, etc.). E.g. detectable tracking errors (| q)cmd-qstatus|) may indicate when the robotic arm is blocked due to a collision, etc., and the soft gain will prevent a potentially dangerous build-up of commanded torque in the robotic arm. Further, in some variations, if tracking is wrong (| q)cmd-qstatus|) exceeds a particular threshold, the track following mode may be suspended or abandoned (i.e., to stop execution of the track).

One guidance process may be used to move the robotic arm through a series of predetermined poses. Alternatively, different guidance procedures may be used for different portions of the series of predetermined gestures. For example, the trajectory following mode may guide the robotic arm from a table-off pose to an initial on-plane pose, the task space or joint space virtual gripper may guide the robotic arm between the initial on-plane pose and a low parking pose, and only the gravity and friction compensation mode may guide the robotic arm between the high parking pose and the coverage pose. In other variations, other combinations and permutations of the guidance process in the overall setup may be possible. For example, the system may be set up to operate based on a user's particular preference for trajectory following, task space or joint space virtual fixtures, or manual operation through gravity and/or friction compensation. Such user preferences for a particular guidance process may apply to an entire series of gestures, or to transitions between particular gestures. As another example, the system may be set to operate based on patient-specific, protocol-specific, device-specific, and/or room-specific parameters. For example, different patients (e.g., different patient sizes), different personnel, different surgical procedures, or different operating room environments may establish different spatial constraints or other constraints that may make certain kinds of guidance procedures more suitable than others. As merely an illustrative example, the bedside assistant may be too short to manually manipulate the robotic arm in all poses by gravity and friction compensation, so in such cases, the trajectory following mode may be more appropriate.

In some variations, a virtual clamp (e.g., providing a soft spring force and/or damping force) and/or brake may help maintain the pose of at least some of the links while the remaining links in the robotic arm move. For example, a transition from a low parking pose to a high parking pose (or another initial on-plane pose after a table-off pose to a high parking pose) may involve a virtual clamp and/or brake to substantially prevent relative movement between the distal links of the robotic arms, which may help maintain the folded pose of the distal links when a user pulls on the robotic arms to deploy the robotic arms between the low parking pose and the high parking pose. For example, referring to the exemplary robotic arm shown in fig. 2A, when a user pulls or otherwise manipulates the robotic arm into a high parking pose, joints J6 and J7 near the distal portion of the robot may be locked together to maintain adjacent links in a folded pose.

As shown in fig. 4A, the robotic arm may further be selectively moved to an out-of-plane pose 440 or a pose that is not in the reference plane. For example, the robotic arm may move from the in-plane pose 430 to the out-of-plane pose 440 (e.g., by disengaging the virtual fixture with sufficient force). For example, an out-of-plane pose may be desirable in an emergency situation where the robot arm must be moved quickly to provide immediate bedside access to the patient. Additionally or alternatively, the one or more out-of-plane gestures 430 may be accomplished by a robotic arm moving from any location, including the table disengage gesture 420. In some variations, movement of the robotic arm to and from the out-of-plane pose may be guided in a substantially similar manner as the movement between the in-plane poses described above. For example, the task space virtual gripper and/or the joint space virtual gripper may help bias the robotic arm back toward the reference plane (e.g., a low parking pose 432, a high parking pose 434, an overlay pose 436, or other suitable on-plane pose 430).

Butt joint

Once the robotic arm is covered with sterile drape, the robotic arm may be moved to pose 450 to dock to a cannula placed within the patient so as to provide a channel through which a surgical instrument may be inserted into the patient. For example, the robotic arm may be moved (e.g., manually manipulated by a user under gravity compensation and/or friction compensation) such that the distal end of the robotic arm is closer to the placed cannula. A device driver disposed on a distal end of the robotic arm may be coupled to the cannula such that the robotic arm is docked to the cannula in pose 450. For example, the covering pose 450 may indicate that the robotic arm is prepared for use during a surgical procedure using a surgical instrument associated with the robotic arm (e.g., coupled to an instrument driver and passed through a cannula into a patient).

Post-operative workflow

In some variations, as described above, the method 300 may be used to assist in "disassembling" a robotic surgical system after a surgical procedure. Aspects of an exemplary variation of the method in a post-operative workflow setting are shown in fig. 4B. Generally, the post-operative workflow outlined in fig. 4B may be similar to the pre-operative workflow outlined in fig. 4C, except that the post-operative workflow may include processes in a reverse order compared to the pre-operative workflow.

Undocking of butt joints

After the surgical procedure (or in other cases where the robotic arm is removed from the patient site), the robotic arm may be detached from the cannula and moved into the undocking pose 460. Undocking gesture 460 may be any suitable gesture in which the robotic arm moves away from the patient (e.g., outside a predefined boundary around the patient, such as at least a few feet away from the patient). For example, the user may manually manipulate the robotic arm with the assistance of gravity compensation and/or friction compensation (or alternatively by trajectory following, etc.), moving the robotic arm away from the patient and into the undocking pose 460. In some variations, the undocking gesture 460 may be an on-plane gesture 430 (e.g., on a reference plane), but alternatively the undocking gesture 460 may be any suitable gesture that is not within the reference plane.

In-plane posture, out-of-table posture

As shown in fig. 4B, after undocking from the cannula, the robotic arm may move toward an on-plane pose 430 on the reference plane. During the post-operative workflow, in some variations, the robotic arm may be guided to move toward and between the on-plane pose 430 and/or other poses within the reference plane in one or more of the manners described above for the pre-operative workflow (e.g., guided by a task space virtual jig and/or a joint space virtual jig, etc.).

In performing one or more joint space virtual grippers, it is possible to actuate the different joints in a particular order so as to effectively move the robotic arm through an ordered sequence of progressively folded poses (e.g., to avoid self-collisions between its own arm links, to sweep through a smaller volume when the robotic arm is deployed, etc.). For example, in some variations, the more distal joint may be biased to fold before the more proximal joint in the robotic arm in order to reduce the overall volume swept by the robotic arm during the sequence of folding poses. With respect to the exemplary variation of the robotic arm shown in fig. 2A, to guide the robotic arm through various in-plane poses, the method may include a first joint space virtual gripper on J6, a second joint space virtual gripper on J4, and a third joint space virtual gripper on J2, wherein the first, second, and third joint space virtual grippers are performed in that order.

As another example, the robotic arm may be directed by an external force (e.g., user manipulation) toward the cover pose 436, where the sterile drape may be removed from the robotic arm. From the covering pose 436, the robotic arm may be directed toward a high parking pose 434 and/or a low parking pose 432. Subsequently, the robotic arm may be directed toward the table-off pose 420 at a reference plane or reference location (e.g., substantially folded into a compact pose).

Further, similar to that described for the pre-operative workflow, in some variations, the robotic arm may be manipulated to one or more out-of-plane poses 440 that are not in the reference plane, and then biased back toward the reference plane via a virtual clamp or the like.

Storing gestures

In some variations, as shown in fig. 4B, the robotic arm may transition from a table-off pose 420 at a reference position or reference plane to a storage pose 410. In some variations, the robotic arm may be directed to the stored pose 410 in response to a movement command (e.g., via a remote command from a handheld communication device or other interface), such as through a trajectory following mode. In some variations, the robotic arm may be guided to a storage pose by manipulation of the robotic arm by a user (e.g., by gravity compensation and/or friction compensation), by guidance of one or more task space virtual grippers, and/or by guidance of one or more joint space virtual grippers. Similar to the above, in general, when in the storage pose 410, the robotic arm may be in a compact pose (e.g., under or near the patient table) associated with a storage mode or state of the robotic arm. In some variations, if the robotic arm is in a different pose 408 at the beginning of the setup, rather than a designated storage pose and/or storage position, the robotic system may indicate an error to the user (i.e., the robotic arm is not in the storage pose 460) and/or move or otherwise direct the robotic arm to the storage pose 460.

Examples of the invention

In one exemplary variation, the proximal end of the robotic arm may be coupled to a patient table on which a patient is located via a coupling arrangement. The linkage arrangement may include an actuator for actuating the lateral pivot joint, and one or more brakes for resisting movement of the lateral pivot joint. In an exemplary pre-operative workflow, the robotic arm may begin in a storage position under the patient table, where the robotic arm may be in a collapsed, compact position. A brake in the robotic arm and a brake in the coupling arrangement may be engaged to maintain the storage pose of the robotic arm below the table. The trajectory following mode may be enabled and a trajectory for moving the robotic arm from the stored pose to the table exit mode may be loaded from the memory device into the control system. The brakes in the coupling arrangement may be disengaged and the lateral pivot joint may be actuated according to the loaded trajectory such that the folded robotic arm is laterally pivoted to the table-disengaged pose at a reference position laterally away from the patient table by at least 45 degrees.

The user may pull or otherwise manually manipulate the robotic arm to deploy the robotic arm from the table-out pose to a pose substantially on a reference plane at a reference location, where the reference plane is perpendicular to the proximal link of the robotic arm. With these manual operations, one or more joints of the robotic arm may be driven according to the task space virtual gripper and/or the joint space virtual gripper to assist with these motions by one or more actuators, which may substantially guide or constrain movement of the robotic arm within the reference plane. When a user moves (e.g., pushes or pulls) the robotic arm, the friction compensation mode may be enabled to help the user overcome friction and enable the user to more easily move the robotic arm. Further, when the user lets go of the robotic arm, the robotic arm may maintain its current pose as a result of actuating one or more joints in the gravity compensation mode. Generally, a user may manually move the robotic arm through various gestures, including a high park gesture and a coverage gesture, in a guided motion within a reference plane. When the robotic arm is in the covering pose, the robotic arm may remain stationary due to gravity compensation, and the user may cover at least a portion of the robotic arm with a sterile drape in order to isolate the non-sterile robotic arm from the sterile environment.

The user may further manually manipulate the covered robotic arm towards a cannula placed in position within the patient on the patient table with the aid of gravity compensation and friction compensation. For example, a user may pull the instrument driver (on the distal end of the robotic arm) toward a cannula inserted into a desired location within a patient's body and couple (dock) the instrument driver and the robotic arm to the cannula. In this docked position, the instrument driver is ready to receive a surgical instrument (e.g., an endoscopic camera, an end effector, etc.) to be passed through the cannula, and the robotic arm is ready for use during a robotic surgical procedure.

After completion of the robotic surgical procedure, the exemplary post-operative workflow includes steps similar to the pre-operative workflow that are performed substantially in reverse. The instrument driver may be detached from the cannula (undocked) and the robotic arm manually manipulated by the user away from the patient with the assistance of gravity compensation and friction compensation. The robotic arm may be moved far enough away from the patient to enter the same or similar reference plane as during the pre-operative workflow, and may be repositioned to various poses substantially constrained within the reference plane, including the covering pose. As previously described, when the robotic arm is in the covering pose, the robotic arm may remain stationary due to gravity compensation, and the user may remove the sterile drape from the robotic arm. Generally, the user may continue to manually move the robotic arm in a guided motion to fold the robotic arm from the covering pose to the high parking pose, and to a table-out pose (or near pose) in which the robotic arm is folded into a compact pose. In these movements, one or more joints of the robotic arm may be driven according to the task space virtual gripper and/or the joint space virtual gripper to assist in these movements by one or more actuators to substantially guide or constrain movement of the robotic arm within the reference plane.

From the table-off gesture, a trajectory-following mode may be enabled, and a trajectory for moving the robotic arm from the table-off gesture to the stored gesture may be loaded from the memory device into the control system. The lateral pivot joint may be actuated to move the folded robotic arm from the table-disengaging pose to the storage pose. A brake in the coupling arrangement and within the robotic arm may be engaged to hold the robotic arm in a storage pose (e.g., until the robotic arm is to be prepared for another surgical procedure).

The foregoing description, for purposes of explanation, used specific nomenclature to provide a thorough understanding of the invention. However, it will be apparent to one skilled in the art that the specific details are not required in order to practice the invention. Thus, the foregoing descriptions of specific embodiments of the present invention are presented for purposes of illustration and description. They are not intended to be exhaustive or to limit the invention to the precise forms disclosed; obviously, many modifications and variations are possible in light of the above teaching. The embodiments were chosen and described in order to best explain the principles of the invention and its practical applications, to thereby enable others skilled in the art to best utilize the invention and various embodiments with various modifications as are suited to the particular use contemplated. It is intended that the following claims and their equivalents define the scope of the invention.

38页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:用于在心脏瓣膜环周围将收缩绳索保持在减小直径状态的紧固件和该紧固件的安装

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!