External force adjustment for remote operation
By monitoring and adjusting external forces and torques on the robotic arm, safety issues caused by robotic arm collisions were resolved, providing improvements in safety and flexibility and ensuring the smooth execution of the surgery.
Patent Information
- Application Number
- JP2025538393
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2022-12-30
- Filing Date
- 2023-12-29
- Publication Date
- 2026-01-21
AI Technical Summary
In robot-assisted surgery, the robotic arm may collide with surrounding objects during remote operation, resulting in excessive contact force and torque on the patient or medical professionals, causing injury and discomfort. At the same time, existing systems may not be able to effectively handle these collisions, leading to additional risks.
By monitoring external forces and torques on the robotic arm, it adjusts its movement speed or stops to avoid excessive contact and provides tactile and visual feedback to notify the operator of collision situations, allowing the operator to choose to pass through collisions as needed.
It improves the safety of patients and operators during surgery, reduces movement interruptions, ensures the reliability and flexibility of the system, and allows operators to avoid unnecessary system interventions by passing through collisions when necessary.
Smart Images

Figure 2026502238000001_ABST
Abstract
Description
[Technical Field]
[0001] The systems and methods disclosed herein are directed to devices and methods for indicating the position or orientation of a surgical tool, and in particular to a surgical robotic system for indicating the position or orientation of a flexible surgical tool. [Background technology]
[0002] Robot-enabled medical systems can perform a variety of medical procedures, including both minimally invasive procedures such as laparoscopy, and non-invasive procedures such as endoscopy (e.g., bronchoscopy, ureteroscopy, gastroscopy, etc.).
[0003] Such robotic medical systems may include a robotic arm configured to control the movement of a surgical tool during a given medical procedure. To achieve a desired orientation of the surgical tool, the robotic arm may be placed in a specific position during teleoperation. Some robot-enabled medical systems may include arm supports (e.g., bars) connected to and supporting the bases of the respective robotic arms. Summary of the Invention [Means for solving the problem]
[0004] During robotic surgery, a robotic arm may come into contact with adjacent objects in the operating room, such as another robotic arm, a patient, a medical professional, or an accessory, for example, due to the robotic arm's movement under teleoperation, resulting in excessive contact forces and / or torques on the patient or medical professional. Excessive contact forces or torques may cause injury and discomfort to the patient or medical professional during surgery. In some situations, in response to such contact forces and / or torques, one or more joints and / or links of the robotic arm may perform null-space motion to maintain posture (e.g., of the cannula's position and / or orientation). In some situations, an operator may need to move the patient or reach for an input control before moving the robotic arm out of the way. However, these actions may pose additional risks of unwanted collision and contact with the patient or other objects in the operating room.
[0005] Therefore, improved robotic medical systems are desirable, particularly those that detect interactions (e.g., external forces and / or torques) on a robotic arm (e.g., linkages, joints, etc. of the robotic arm) and take appropriate action to adjust the external forces and / or torques depending on the characteristics (e.g., magnitude, direction, rate of change, etc.) of the detected forces and / or torques.
[0006] As disclosed herein, a robotic control system causes movement of a robotic arm (or a portion thereof) according to a command. The robotic control system monitors a contact force or torque applied to the robotic arm by an external object during movement of the robotic arm. In response to a determination that the contact force or torque satisfies a first set of conditions, the robotic control system reduces the speed of the robotic arm movement being performed according to the command. In some embodiments, in response to a determination that one or more contact forces or torques satisfy a second set of conditions, the robotic control system stops the robotic arm movement being performed according to the first command. Thus, the disclosed systems and / or methods advantageously improve patient and / or operator safety during surgery and ensure reduced interruptions while a surgeon is driving one or more of the robotic arms during surgery.
[0007] In another aspect of the present disclosure, the robotic control system can provide feedback to the user in response to determining that the robotic arm is not following the commanded movement. In some embodiments, the feedback includes haptic feedback to the user. In some embodiments, the feedback is in the form of a notification. In some embodiments, the feedback notifies the user that a collision has occurred, while still allowing the user to move through the collision if the user deems it necessary or desirable (e.g., for clinical reasons).
[0008] Thus, the disclosed systems and / or methods have several advantages over existing systems. For example, the disclosed systems and / or methods can provide feedback (e.g., tactile feedback or visual notification) to the user in a beneficial and useful manner, allowing the user to use the robotic medical system in a clinically useful manner (e.g., rather than having the robotic control system actively prevent certain movements). The disclosed systems also have low torque saturation, improving on predicate systems that do not allow the surgeon to walk through external impingements even when it may be clinically beneficial or necessary.
[0009] The systems, methods, and devices of the present disclosure each have several innovative aspects, no single one of which is solely responsible for the desirable attributes disclosed herein.
[0010] According to some embodiments of the present disclosure, a robotic control system includes one or more processors and a memory. The memory stores instructions that, when executed by the one or more processors, cause the one or more processors to perform operations for controlling a robotic arm. The operations include receiving a first command to move at least a portion of the robotic arm. In response to receiving the first command, the operations include causing movement of at least a portion of the robotic arm in accordance with the first command and in accordance with a first set of conditions, the first set of conditions including monitoring one or more contact forces or torques applied to the robotic arm by an external object during movement of the robotic arm, and reducing a speed of movement of the robotic arm being performed in accordance with the first command in accordance with a determination that the one or more contact forces or torques satisfy the first set of conditions.
[0011] In some embodiments, the one or more contact forces or torques include a first contact force. Reducing the rate of movement of the robot arm includes determining a current rate of the robot arm and reducing the rate of movement of the robot arm from the current rate to an updated rate determined by a ratio based on the first contact force and an upper force limit.
[0012] In some embodiments, the operations further include repeating the steps of (i) determining a current velocity and (ii) reducing the velocity until the magnitude of the first contact force is less than a lower force limit.
[0013] In some embodiments, the operation further includes stopping movement of the robot arm being performed in accordance with the first command in accordance with a determination that the one or more contact forces or torques satisfy a second set of conditions.
[0014] In some embodiments, the operations further include, in response to receiving the first command, causing a motor of the robotic arm to generate a motor torque to initiate movement of at least a portion of the robotic arm.
[0015] In some embodiments, the operations further include calculating a first contact force based on the motor torque.
[0016] In some embodiments, the operations further include calculating a first contact torque based on the motor torque.
[0017] In some embodiments, the one or more contact forces or torques include a gravitational torque due to gravity applied to the robot arm and a frictional torque due to a frictional force applied to the robot arm.
[0018] In some embodiments, the one or more contact forces or torques include a dynamic torque to balance the inertial and Coriolis forces of the robot arm.
[0019] In some embodiments, the one or more contact forces or torques include a remote center of motion (RCM) torque for constraining an instrument coupled to a robotic arm during teleoperation.
[0020] In some embodiments, the one or more contact forces or torques include a torque applied to the robotic arm by a patient during teleoperation.
[0021] In some embodiments, the operations further include determining teleoperation torques corresponding to joints of the robot arm according to the motor torque, the gravity torque, and the friction torque.
[0022] In some embodiments, the operations further include applying a filter to the teleoperated torque to obtain a filtered torque value, determining a force ratio according to the filtered torque value, and using the determined force ratio as an input of an inverse kinematics solver.
[0023] In some embodiments, the operations further include, in accordance with a determination that the filtered torque value is less than the joint torque lower limit, designating a force ratio as zero. In accordance with a determination that the filtered torque value is between the joint torque lower limit and the joint torque upper limit, determining a force ratio according to a ratio between (i) a square of a difference between the filtered torque value and the joint torque lower limit and (ii) a square of a difference between the joint torque upper limit and the joint torque lower limit. In accordance with a determination that the filtered torque value is greater than or equal to the joint torque upper limit, designating a force ratio as one.
[0024] In some embodiments, the operations further include determining lower and upper joint torque limits corresponding to joints of the robot arm based on the motor torques.
[0025] In some embodiments, the first command includes a first commanded position of the robotic arm, and the operations further include generating and outputting a notification regarding the difference in accordance with a determination that a difference between the first commanded position and the actual position of the robotic arm satisfies a first criterion including a difference of a first threshold amount.
[0026] In some embodiments, generating and outputting the notification includes outputting the notification as haptic feedback to the user.
[0027] In some embodiments, generating and outputting the notification includes causing the notification to be displayed on a display device.
[0028] In some embodiments, the first command includes a first command position of the robotic arm, and the operations further include causing a second movement of at least a portion of the robotic arm to the first command position after reducing the rate of movement of the robotic arm, and generating and outputting a notification regarding the second movement.
[0029] In some embodiments, generating and outputting a notification related to the second movement includes outputting the notification to the user as haptic feedback.
[0030] According to some embodiments of the present disclosure, a method is implemented in a robotic control system having one or more processors and a memory. The method includes receiving a first command to move at least a portion of a robotic arm. In response to receiving the first command, the method includes causing movement of at least a portion of the robotic arm in accordance with the first command and in accordance with a first set of conditions, the first set of conditions including monitoring one or more contact forces or torques applied to the robotic arm by an external object during movement of the robotic arm, and reducing a rate of movement of the robotic arm being performed in accordance with the first command in accordance with a determination that the one or more contact forces or torques satisfy the first set of conditions.
[0031] In some embodiments, the one or more contact forces or torques include a first contact force. Reducing the rate of movement of the robot arm includes determining a current rate of the robot arm and reducing the rate of movement of the robot arm from the current rate to an updated rate determined by a ratio based on the first contact force and an upper force limit.
[0032] In some embodiments, the method further includes repeating the steps of (i) determining the current velocity and (ii) reducing the velocity until the magnitude of the first contact force is less than the lower force limit.
[0033] In some embodiments, the method further includes stopping movement of the robot arm being performed in accordance with the first command in accordance with a determination that the one or more contact forces or torques satisfy a second set of conditions.
[0034] In some embodiments, the robotic arm includes a motor. The method further includes, in response to receiving the first command, causing the motor of the robotic arm to generate a motor torque to initiate movement of at least a portion of the robotic arm.
[0035] In some embodiments, the method further includes calculating the first contact force based on the motor torque.
[0036] In some embodiments, the method further includes calculating a first contact torque based on the motor torque.
[0037] In some embodiments, the one or more contact forces or torques include a gravitational torque due to gravity applied to the robot arm and a frictional torque due to a frictional force applied to the robot arm.
[0038] In some embodiments, the one or more contact forces or torques include a dynamic torque to balance the inertial and Coriolis forces of the robot arm.
[0039] In some embodiments, the one or more contact forces or torques include a remote center of motion (RCM) torque for constraining an instrument coupled to a robotic arm during teleoperation.
[0040] In some embodiments, the one or more contact forces or torques include a torque applied to the robotic arm by a patient during teleoperation.
[0041] In some embodiments, the method further includes determining a teleoperation torque corresponding to a joint of the robot arm according to the motor torque, the gravity torque, and the friction torque.
[0042] In some embodiments, the method further includes applying a filter to the teleoperated torque to obtain a filtered torque value. The method further includes determining a force ratio according to the filtered torque value. The method further includes using the determined force ratio as an input to an inverse kinematics solver.
[0043] In some embodiments, the method further includes, in accordance with a determination that the filtered torque value is less than the joint torque lower limit, designating a force ratio as zero. The method further includes, in accordance with a determination that the filtered torque value is between the joint torque lower limit and the joint torque upper limit, determining a force ratio according to a ratio between (i) a square of a difference between the filtered torque value and the joint torque lower limit and (ii) a square of a difference between the joint torque upper limit and the joint torque lower limit. The method further includes, in accordance with a determination that the filtered torque value is greater than or equal to the joint torque upper limit, designating the force ratio as one.
[0044] In some embodiments, the method further includes determining lower and upper joint torque limits corresponding to joints of the robot arm based on the motor torques.
[0045] In some embodiments, the first command includes a first commanded position of the robotic arm. The method further includes generating and outputting a notification regarding the difference according to a determination that a difference between the first commanded position and the actual position of the robotic arm satisfies a first criterion including a difference of a first threshold amount.
[0046] In some embodiments, generating and outputting the notification includes outputting the notification as haptic feedback to the user.
[0047] In some embodiments, generating and outputting the notification includes causing the notification to be displayed on a display device.
[0048] In some embodiments, the first command includes a first command position of the robotic arm. The method further includes causing a second movement of at least a portion of the robotic arm to the first command position after reducing the rate of movement of the robotic arm. The method further includes generating and outputting a notification regarding the second movement.
[0049] In some embodiments, generating and outputting a notification related to the second movement includes outputting the notification to the user as haptic feedback.
[0050] According to some embodiments of the present disclosure, a surgical robot includes a surgical instrument configured to be mounted on a robotic arm. The surgical robot includes a processor. The processor is configured to estimate an external force applied to the surgical instrument during teleoperation while the surgical instrument or robotic arm is moving. The processor is configured to pause movement of the surgical instrument or robotic arm in response to detecting the external force exceeding a first threshold. The processor is configured to reduce a velocity of the surgical instrument or robotic arm in response to detecting the external force exceeding a second threshold that is lower than the first threshold.
[0051] In some embodiments, the external force is applied through contact with at least one of another surgical instrument, another robotic arm, an operating table, a medical device, a patient, or medical personnel.
[0052] In some embodiments, the movement of the surgical instrument or robotic arm is driven by at least one of a plurality of actuators, and estimating the external force includes calculating a motor torque in each of the plurality of actuators based on a motor current and a gear ratio.
[0053] In some embodiments, the motor torque includes a normal torque for remote operation and an external torque to balance an external force.
[0054] In some embodiments, the normal torques for remote manipulation include one or more of gravity compensation torque, dynamic torque to balance inertia and Coriolis effect, friction torque, remote center of motion (RCM) torque, and tissue loading torque.
[0055] In some embodiments, the external torque that balances the external force is estimated based on one or more of the calculated motor torque, the attitude, velocity and acceleration of the robotic arm and surgical instrument, the maximum expected RCM torque, and the maximum expected tissue load torque.
[0056] In some embodiments, the force is estimated at the tool tip of the surgical instrument.
[0057] In some embodiments, the processor is further configured to gradually reduce the movement of the surgical instrument or robotic arm according to a smooth curve (e.g., based on a smoothing function).
[0058] In some embodiments, the first threshold and the second threshold are predetermined.
[0059] In some embodiments, at least one of the first threshold and the second threshold is determined in real time based on one or more of the pose, velocity, and acceleration of the surgical instrument or robotic arm.
[0060] In some embodiments, the processor is further configured to output a notification upon detecting the external force exceeding the first threshold or the second threshold, the notification comprising haptic feedback and / or an audiovisual alert.
[0061] According to some embodiments of the present disclosure, a computer-implemented method includes estimating an external force applied to a location on a surgical manipulator while the surgical manipulator is moving during telerobotic surgery. The method includes determining whether the external force is excessive by comparing the external force to a deceleration force threshold. In response to determining that the external force is excessive, the method includes decelerating motion of the surgical manipulator and generating a notification regarding the excessive external force.
[0062] In some embodiments, the external force is caused by contact with other objects in the surgical manipulator's surroundings.
[0063] In some embodiments, the external force is estimated based on the difference between the actual force and the expected maximum force for telerobotic surgery at a location on the surgical manipulator.
[0064] In some embodiments, locations on a surgical manipulator for estimating external forces include the tool tip, the tool shaft, the tool stage, the tool driver, and any location on the robotic arm.
[0065] In some embodiments, the deceleration threshold is predetermined or determined in real time based on the pose and / or motion state of the surgical manipulator.
[0066] In some embodiments, the method further includes determining whether the external force is excessive beyond a stopping force threshold that is higher than the deceleration force threshold. In response to determining that the external force is excessive beyond the stopping force threshold, the method includes stopping motion of the surgical manipulator and generating a notification regarding the excessive external force.
[0067] In some embodiments, the method further includes repeating the steps of (i) estimating the external force at the location on the surgical manipulator and (ii) decelerating the motion of the surgical manipulator until the external force at the location falls below a deceleration threshold.
[0068] In some embodiments, the notification regarding excessive force includes haptic feedback and / or an audiovisual warning.
[0069] According to some embodiments of the present disclosure, a non-transitory computer-readable storage medium stores computer-executable instructions that, when executed by one or more processors of a robotic control system, cause the one or more processors to perform operations including: estimating an external force exerted on a position on a robotic manipulator while the robotic manipulator is moving during teleoperated surgery, the external force being caused by contact with other objects in the robotic manipulator's surroundings; determining whether the external force exceeds a safety threshold; and, in response to determining that the external force exceeds the safety threshold, stopping the movement of the robotic manipulator; and generating a notification including haptic feedback and / or an audiovisual warning regarding the external force exceeding the safety threshold.
[0070] According to some embodiments of the present disclosure, a robotic control system includes one or more processors and a memory that stores instructions that, when executed by the one or more processors, cause the one or more processors to perform any of the methods described herein.
[0071] According to some embodiments of the present disclosure, a non-transitory computer-readable storage medium stores computer-executable instructions that, when executed by one or more processors of a robotic control system, cause the one or more processors to perform any of the methods described herein.
[0072] It should be noted that the various embodiments described above can be combined with any other embodiment described herein. The features and advantages described herein are not all-inclusive, and in particular, many additional features and advantages will be apparent to those skilled in the art upon consideration of the drawings, specification, and claims. Furthermore, it should be noted that the language used herein has been chosen primarily for readability and instructional purposes, and may not be chosen to delineate or limit the subject matter of the present invention. [Brief explanation of the drawings]
[0073] The disclosed aspects are hereinafter described in conjunction with the accompanying drawings, which illustrate, by way of example only, and not by way of limitation, the disclosed aspects, and in which like reference numerals refer to like elements. [Figure 1] 1 illustrates an exemplary robotic system, according to some embodiments. [Figure 2] 1 illustrates another view of an exemplary robotic system, according to some embodiments. [Figure 3A] 1 illustrates different views of an exemplary robotic surgical system, according to some embodiments. [Figure 3B] 1 illustrates different views of an exemplary robotic surgical system, according to some embodiments. [Figure 4] 1 illustrates an exemplary view of a robotic surgical system with a robotic arm in a retracted position, according to some embodiments. [Figure 5] 1 illustrates components of a robotic medical system, according to some embodiments. [Figure 6A] 1 illustrates different views of an exemplary robotic arm, according to some embodiments. [Figure 6B] 1 illustrates different views of an exemplary robotic arm, according to some embodiments. [Figure 6C] 1 illustrates different views of an exemplary robotic arm, according to some embodiments. [Figure 7A] 1 illustrates different views of an exemplary robotic surgical system, according to some embodiments. [Figure 7B] 1 illustrates different views of an exemplary robotic surgical system, according to some embodiments. [Figure 8] 1 illustrates a portion of a robotic arm 350 and a surgical tool 360, according to some embodiments. [Figure 9] FIG. 1 illustrates a perspective view of a robotic medical system, according to some embodiments. [Figure 10A]1 illustrates a flowchart diagram of a method implemented by one or more processors of a robotic system, according to some embodiments. [Figure 10B] 1 illustrates a flowchart diagram of a method implemented by one or more processors of a robotic system, according to some embodiments. [Figure 10C] 1 illustrates a flowchart diagram of a method implemented by one or more processors of a robotic system, according to some embodiments. [Figure 10D] 1 illustrates a flowchart diagram of a method implemented by one or more processors of a robotic system, according to some embodiments. [Figure 11A] 1 illustrates a flowchart diagram of a method implemented by one or more processors of a robotic system, according to some embodiments. [Figure 11B] 1 illustrates a flowchart diagram of a method implemented by one or more processors of a robotic system, according to some embodiments. [Figure 12A] 1 illustrates a flowchart diagram of a method implemented by one or more processors of a robotic system, according to some embodiments. [Figure 12B] 1 illustrates a flowchart diagram of a method implemented by one or more processors of a robotic system, according to some embodiments. [Figure 13] 1 illustrates a flowchart diagram of a method implemented by one or more processors of a robotic system, according to some embodiments. [Figure 14] FIG. 1 is a schematic diagram illustrating electronic components of a robotic medical system, according to some embodiments. DETAILED DESCRIPTION OF THE INVENTION
[0074] 1. Overview Aspects of the present disclosure may be integrated into a robotic-enabled medical system capable of performing a variety of medical procedures, including both minimally invasive procedures such as laparoscopy, and non-invasive procedures such as endoscopy, including bronchoscopy, ureteroscopy, gastroscopy, and other endoscopic procedures.
[0075] In addition to performing a wide range of procedures, the system may provide additional benefits such as enhanced imaging and guidance to assist the physician. Furthermore, the system may provide the physician with the ability to perform procedures from an ergonomic position without requiring awkward arm movements and positions. Still further, the system may provide the physician with the ability to perform procedures with improved ease of use, such that a single user may control one or more of the system's instruments.
[0076] Various embodiments are described below in conjunction with the drawings for purposes of illustration. It should be understood that many other embodiments of the disclosed concepts are possible and that various advantages may be achieved in the disclosed embodiments. Headings are included herein for reference and to aid in locating various sections. These headings do not limit the scope of the concepts described therein. Such concepts may be applicable throughout the entire specification.
[0077] 2. External force adjustment for remote operation The present application discloses a robotic control system for adjusting external forces, for example, for teleoperation in minimally invasive surgery. The robotic control system receives a first command to move at least a portion of a robotic arm. In response to receiving the first command, the system causes movement of at least a portion of the robotic arm in accordance with the first command and in accordance with a first set of conditions. The system can monitor one or more contact forces or torques applied to the robotic arm by an external object during movement of the robotic arm. In some embodiments, in accordance with a determination that the one or more contact forces or torques satisfy a first set of conditions, the system can reduce a speed of movement of the robotic arm being performed in accordance with the first command.
[0078] In some embodiments, the system may stop movement of the robot arm being performed in accordance with the first command in accordance with a determination that one or more contact forces or torques satisfy a second set of conditions.
[0079] In some embodiments, the system may, following a determination that there is a discrepancy between the commanded position and the actual position of the robotic arm (e.g., a joint or link of the robotic arm), generate and output (or cause an output) feedback to the user regarding the discrepancy.
[0080] In some embodiments, the feedback comprises haptic feedback.
[0081] In some embodiments, the feedback comprises visual feedback.
[0082] A. Robot System FIG. 1 illustrates an exemplary robotic medical system 200, according to some embodiments. In some embodiments, the robotic medical system 200 is a robotic surgery system. In the example of FIG. 1, the robotic medical system 200 includes a patient support platform 202 (e.g., a patient platform, table, bed, etc.). Two ends along the length of the patient support platform 202 are referred to as the "head" and "leg," respectively. Two sides of the patient support platform 202 are referred to as the "left" and "right," respectively. The patient support platform 202 includes a support 204 (e.g., a rigid frame) for the patient support platform 202.
[0083] The robotic medical system 200 also includes a base 206 for supporting the robotic medical system 200. The base 206 includes wheels 208 that allow the robotic medical system 200 to be easily movable or repositionable in a physical environment. In some embodiments, the wheels 208 are omitted from the robotic medical system 200 or are retractable, allowing the base 206 to rest directly on the ground or floor. In some embodiments, the wheels 208 are replaced with feet.
[0084] The robotic medical system 200 includes one or more robotic arms 210. In some embodiments, the robotic arms 210 can be configured to perform a robotic medical procedure. While FIG. 1 shows five robotic arms 210, it should be understood that the robotic medical system 200 can include any number of robotic arms, including fewer than five, or six or more.
[0085] The robotic medical system 200 also includes one or more bars 220 (e.g., adjustable arm supports or adjustable bars) that support the robotic arms 210. Each of the robotic arms 210 is supported on and movably coupled to the bar 220 by the robotic arm's respective base joint. In some embodiments, the bar 220 can provide several degrees of freedom, including elevation, lateral translation, tilt, etc. In some embodiments, each of the robotic arms 210 and / or adjustable arm supports 220 is also referred to as a respective kinematic chain.
[0086] 1 shows three robotic arms 210 supported by a bar 220 within the field of view of the figure. The remaining two robotic arms are supported by another bar located across the other length of the patient support platform 202.
[0087] In some embodiments, the adjustable arm support 220 can be configured to provide a base position for one or more of the robotic arms 210 for a robotic medical procedure. The robotic arm 210 can be positioned relative to the patient support platform 202 by translating the robotic arm 210 along the length of the underlying bar 220 and / or by adjusting the position and / or orientation of the robotic arm 210 via one or more joints and / or links. In some embodiments, the bar attitude can be changed via manual, remote, and / or power-assisted movement.
[0088] In some embodiments, the adjustable arm support 220 can translate along the length of the patient support platform 202. In some embodiments, translation of the bar 220 along the length of the patient support platform 202 causes one or more of the robotic arms 210 supported by the bar 220 to translate simultaneously with or relative to the bar. In some embodiments, the bar 220 can translate while one or more of the robotic arms remain stationary relative to the base 206 of the robotic medical system 200.
[0089] 1, the adjustable arm support 220 is located along the length of the patient support platform 202. In some embodiments, the adjustable arm support 220 may extend across a partial length or the entire length of the patient support platform 202 and / or across a partial width or the entire width of the patient support platform 202.
[0090] According to some embodiments, during a robotic medical procedure, one or more of the robotic arms 210 may also be configured to hold an instrument 212 (e.g., a robotically controlled medical instrument or tool, such as an endoscope and / or any other instrument that may be used during surgery (e.g., a sensor, a lighting instrument, a cutting instrument, etc.)) and / or may be coupled to one or more accessories, including one or more cannulas.
[0091] 2 is another view of the exemplary robotic medical system 200 of FIG. 1 , according to some embodiments. In this example, the robotic medical system 200 includes six robotic arms 210-1, 210-2, 210-3, 210-4, 210-5, and 210-6. The patient platform 202 is supported by a column 214 extending between the base 206 and the patient platform 202. In some embodiments, the patient platform 202 includes a tilt mechanism 216. The tilt mechanism 216 can be positioned between the column 214 and the patient platform 202 to allow the patient platform 202 to pivot, rotate, or tilt relative to the column 214. The tilt mechanism 216 can be configured to allow lateral and / or longitudinal tilt of the patient platform 202. In some embodiments, the tilt mechanism 216 allows simultaneous lateral and longitudinal tilt of the patient platform 202.
[0092] FIG. 2 shows the patient platform 202 in a non-tilted state or position. In some embodiments, the non-tilted state or position is the default position of the patient platform 202. In some embodiments, the default position of the patient platform 202 is a substantially horizontal position as shown in FIG. 2. As illustrated, in the non-tilted state, the patient platform 202 can be positioned horizontally or parallel to the surface (e.g., the ground or floor) supporting the robotic medical system 200. In some embodiments, the term "non-tilted" refers to a state in which the angle between the default position and the current position is less than a threshold angle (e.g., less than 5 degrees, or less than an angle that would cause the patient to shift on the patient platform, etc.). In some embodiments, the term "non-tilted" refers to a state in which the patient platform is substantially perpendicular to the direction of gravity, regardless of the angle formed with gravity by the surface supporting the robotic medical system.
[0093] 2, in the illustrated example of the robotic medical system 200, the patient platform 202 includes a support 204. In some embodiments, the support 204 includes a rigid support structure or frame and can support one or more surfaces, pads, or cushions 222. The upper surface of the patient platform 202 can include a support surface 224. A patient can be placed on the support surface 224 during a medical procedure.
[0094] 2 shows the robotic arm 210 and adjustable arm support 220 in an exemplary deployed configuration, where the robotic arm 210 reaches above the patient platform 202. In some embodiments, a configuration of the robotic medical system 200 that allows for storage of different components below the patient platform 202 allows the robotic arm 210 and arm support 220 to occupy space below the patient platform 202. Thus, in some embodiments, the tilt mechanism 216 has a low profile and / or a low volume to increase the space available for storage below.
[0095] FIG. 2 also illustrates an exemplary x, y, and z coordinate system that may be used to describe certain features of the embodiments disclosed herein. It will be understood that this coordinate system is provided for purposes of illustration and explanation only, and that other coordinate systems may be used. In the illustrated example, the x-direction or x-axis extends laterally across the patient platform 202 when the patient platform 202 is in a non-tilted state. In some configurations, the x-direction extends across the patient platform 202 from one lateral side (e.g., the right side) to the other lateral side (e.g., the left side) when the patient platform 202 is in a non-tilted state. The y-direction or y-axis extends longitudinally along the patient platform 202 when the patient platform 202 is in a non-tilted state. That is, the y-direction extends along the patient platform 202 from one longitudinal end (e.g., the head end) to the other longitudinal end (e.g., the foot end) when the patient platform 202 is in a non-tilted state. In the non-tilted state, the patient platform 202 lies in an x-y plane, which may be parallel to the floor or ground, or may be parallel to the x-y plane. In the illustrated example, the z-direction or z-axis extends vertically along the column 214. In some embodiments, the tilt mechanism 216 is configured to tilt the patient platform 202 laterally by rotating the patient platform 202 about a lateral tilt axis that is parallel to the y-axis. The tilt mechanism 216 may further be configured to tilt the patient platform 202 longitudinally by rotating the patient platform 202 about a longitudinal tilt axis that is parallel to the x-axis.
[0096] 3A and 3B illustrate different views of an exemplary robotic surgical system 400 (e.g., a robotic medical system) according to some embodiments. The robotic surgical system 400 includes a surgical table having a tabletop 402 on which a patient can be positioned. The tabletop 402 is supported by a table adapter 404. The robotic surgical system 400 includes a support 406 (e.g., a support mechanism, table column, or pedestal) and a base 408. The support 406 may be mounted to the base 408, which may be fixed to the operating room floor or may be movable relative to the floor, for example, by the use of wheels attached to the base 408. In some embodiments, various sections of the tabletop 402 may be movable relative to each other (e.g., tilted or angled relative to each other), and / or the tabletop 402 may be movable (e.g., tilted, angled) relative to the support 406 and / or base 408 of the surgical table.
[0097] In some embodiments, the robotic surgical system 400 includes a robotic arm 350 coupled or coupleable to a surgical table. The robotic arm 350 can be moved between a number of different positions relative to the surgical table, such as, for example, an operating position, a standby position, or a stowed position (e.g., as shown in FIG. 4). The robotic arm 350 can support medical instruments or tools, such as surgical instruments, tool drivers, and / or imaging devices. Further details of the robotic arm 350 are described in FIGS. 7A, 7B, and 8.
[0098] In some embodiments, the robotic surgical system 400 includes one or more input devices (e.g., buttons, switches, touch-sensitive surfaces, etc.), such as a pivot and retract keypad 416 and a table keypad 418 .
[0099] In some embodiments, the proximal portion of the robotic arm 350 may be implemented as an adapter 410 that may be fixedly coupled to a surgical table. The adapter 410 may include an interface mechanism 412 (e.g., a table interface structure) and a first link member (e.g., link 351-1) pivotally coupled to the interface mechanism 412 at a first joint (e.g., the J0 joint) and coupled to a second link member (e.g., link 414) at a second joint (e.g., the J1 joint). In some embodiments, the second link member may be pivotally coupled to the first link member at the second joint. In some embodiments, the second link member is slidably coupled to the first link member at the second joint. The second link member is also configured to be coupled to the robotic arm at a joint that includes a joint portion of the second link member and a joint portion at a proximal or mounting end portion of the robotic arm. The robotic arm also includes a target joint at the mounting end of the robotic arm. In some embodiments, the target joint is included with a joint at the attachment end of the robotic arm.
[0100] In some embodiments, the distinction between the adapter 410 and the robotic arm 350 may be ignored, but the connection between the operating table and the distal end of the robotic arm 350 may be conceptualized and implemented as a series of links and joints that provide the desired degrees of freedom for movement of the medical instrument. Details of the links and joints of the robotic arm 350 are described with respect to Figures 8A, 8B, and 9.
[0101] FIG. 4 illustrates an exemplary view of a robotic surgical system 400 with a robotic arm 350 in a retracted position, according to some embodiments.
[0102] In some embodiments, the robotic medical system 200 or the robotic surgical system 400 includes a tower 230 (e.g., a tower viewer) or a physician console 240 (or both), as illustrated in FIG. 5 . The tower 230 may provide support for controls, electronics, fluidics, optics, sensors, and / or power for the patient support platform 202 and the physician console 240. In some embodiments, the tower 230 includes a display device 232. The display device 232 may include a user interface for displaying surgical views acquired by one or more cameras 606 of the robotic medical system and / or one or more notifications to an operator of the robotic medical system 200. In some embodiments, the physician console 240 may include a display device 242 having a user interface used by a physician operator to operate the patient support platform 202. For example, the display device 242 may include a user interface for displaying surgical views acquired by one or more cameras 606 of the robotic medical system and / or one or more notifications to an operator of the robotic medical system 200. The physician console 240 can provide both robotic control and pre-operative and real-time information of the medical procedure to the physician operator. In some embodiments, the physician console 240 includes one or more input devices (e.g., buttons, switches, touch-sensitive surfaces, gimbals, etc.), such as foot pedals 244. In some embodiments, the physician console 240 includes one or more haptic interface devices (HIDs) that provide force and tactile feedback to the user as the user interacts with the physician console 240.
[0103] B. Robotic Arm 6A, 6B, and 6C illustrate different views of an exemplary robotic arm 210, according to some embodiments.
[0104] 6A illustrates that the robot arm 210 includes multiple links 302 (e.g., a linkage). The links 302 (e.g., 302-1 to 302-4) are connected by one or more joints 304 (e.g., 304-1 to 304-5). Each of the joints 304 includes one or more degrees of freedom (DoF).
[0105] 6A , the joint 304 includes a first joint 304-1 (e.g., a base joint or A0 joint) located at or near the base 306 of the robot arm 210. In some embodiments, the base joint 304-1 includes a prismatic joint that allows the robot arm 210 to translate along the bar 220 (e.g., along the y-axis). The joint 304 also includes a second joint 304-2. In some embodiments, the second joint 304-2 rotates relative to the base joint 304-1. The joint 304 also includes a third joint 304-3 connected to one end of the link 302-2. In some embodiments, the joint 304-3 includes multiple DoFs, facilitating both tilt and rotation of the link 302-2 tilt relative to the joint 304-3.
[0106] 6A also shows a fourth joint 304-4 connected to the other end of link 302-2. In some embodiments, joint 304-4 includes an elbow joint connecting link 302-2 and link 302-3. Joint 304 further includes a pair of joints 304-5 (e.g., a wrist roll joint) and 304-6 (e.g., a wrist pitch joint) located at a distal portion of robot arm 210.
[0107] The proximal end of the robotic arm 210 may be connected to the base 306, and the distal end of the robotic arm 210 may be connected to an advanced device manipulator (ADM) 308 (e.g., a tool driver, an instrument driver, a robotic end effector, etc.). The ADM 308 may be configured to control the positioning and manipulation of medical instruments (e.g., tools, scopes, etc.).
[0108] The robotic arm 210 may also include a cannula sensor 310 for detecting the presence of a cannula or the proximity of a cannula to the robotic arm 210. In some embodiments, the robotic arm 210 is placed in a docked state (e.g., a docked position) when the cannula sensor 310 detects the presence of a cannula (e.g., via one or more processors of the robotic medical system 200). In some embodiments, when the robotic arm 210 is in the docked position, the robotic arm 210 may perform null-space motion to maintain the position and / or orientation of the cannula, as discussed in further detail below. Conversely, when a cannula is not detected by the cannula sensor 310, the robotic arm 210 is placed in an undocked state (e.g., an undocked position).
[0109] In some embodiments, as illustrated in FIG. 6A , the robotic arm 210 includes an input or button 312 (e.g., a donut-shaped button or other type of control) that can be used to place the robotic arm 210 in admittance mode (e.g., by pressing the button 312). Admittance mode is also referred to as an admittance scheme or admittance control. In admittance mode, the robotic system 210 measures forces and / or torques (e.g., applied to the robotic arm 210) and outputs corresponding velocities and / or positions. In some embodiments, the robotic arm 210 can be manually manipulated by a user in admittance mode (e.g., during a setup procedure or during a procedure). In some cases, by using admittance control, an operator does not need to overcome all of the inertia in the robotic medical system 200 to move the robotic arm 210. For example, under admittance control, when an operator applies a force to the arm, the robotic medical system 200 can assist the operator in moving the robotic arm 210 by measuring the force and driving one or more motors associated with the robotic arm 210, thereby resulting in a desired velocity and / or position of the robotic arm 210.
[0110] In some embodiments, the link 302 may be removably coupled to the medical tool 212 (e.g., to facilitate attachment and detachment of the medical tool 212 to the robotic arm 210). The joint 304 provides the robotic arm 210 with multiple degrees of freedom (DoF) that facilitate control of the medical tool 212 via the ADM 308. In one embodiment, such as shown in FIG. 2, including multiple robotic arms, each robotic arm may hold its own respective medical tool and pivot the medical tool about a remote center of motion.
[0111] FIG. 6B is a front view of the robotic arm 210. FIG. 6C is a perspective view of the robotic arm 210. In some embodiments, the robotic arm 210 includes a second input or button 314 (e.g., a push button) different from the button 312 of FIG. 6A for placing the robotic arm 210 in impedance mode (e.g., by pressing the button 314 once or continuously). In this example, the button 314 is located between joints 304-5 and 304-6. The impedance mode is also referred to as an impedance scheme or impedance control. In the impedance mode, the robotic medical system 200 measures displacements (e.g., changes in position and velocity) and outputs forces and / or torques to facilitate manual movement of the robotic arm. In some embodiments, the robotic arm 210 can be manually manipulated by a user in the impedance mode (e.g., during a setup procedure). In some embodiments, under the impedance mode, an operator's movement of one portion of the robotic arm 210 can cause movement of one or more joints and / or links of the entire robotic arm 210.
[0112] In some embodiments, for admittance control, force sensors or load cells can measure the force an operator is applying to the robotic arm 210 and cause the robotic arm 210 to move in a way that feels lighter. Under admittance control, motors in the controller can help accelerate the mass, thereby masking the perceived inertia of the robotic arm 210. In contrast, with impedance control, the user is responsible for most, if not all, of the mass acceleration, according to some embodiments.
[0113] In some situations, depending on the position of the robotic arm 210 relative to the operator, it may be inconvenient to reach for button 312 and / or button 314 to activate the manual operation mode (e.g., admittance mode and / or impedance mode). Therefore, under these circumstances, it may be convenient for the operator to trigger the manual operation mode other than by a button.
[0114] In some embodiments, the robotic arm 210 includes a single button (e.g., button 312 or 314) that can be used to place the robotic arm 210 in admittance mode and / or impedance mode (e.g., by using different presses, such as a long press, a short press, or a continuous press). In some embodiments, the robotic arm 210 can be placed in impedance mode by a user pressing an arm linkage (e.g., link 302) and / or a joint (e.g., joint 304) and overcoming a force threshold. In some embodiments, the admittance mode and the impedance mode are similar in that they both allow a user to command movement by grasping the robotic arm 210 and interfacing directly with it.
[0115] In some embodiments, the robotic arm 210 includes an input control for activating the arm-following mode. For example, in some embodiments, the robotic arm 210 may include designated touch points located on the links 302 or joints 304 (e.g., on the outer shell of the links 302 or on the buttons 316) of the robotic arm. User interaction (e.g., a user touch, contact, etc.) with the designated touch points activates the arm-following mode. In some embodiments, the robotic arm 210 includes multiple touch points. User interaction with any of the touch points (e.g., one or more) activates the arm-following mode.
[0116] During a medical procedure, it may be desirable to maintain a remote center of motion (RCM) of the ADM 308 of the robotic arm 210 and / or the tool 212 coupled thereto in a static pose (e.g., position and / or orientation). The RCM may refer to a point in space where the motion of a cannula or other access port through which the medical tool 212 is inserted is constrained. In some embodiments, the medical tool 212 includes an end effector that is inserted through an incision or natural orifice in a patient while maintaining the RCM. In some embodiments, the medical tool 212 includes an end effector that is in a retracted state during the setup process of the robotic medical system.
[0117] In some situations, the robotic medical system 200 can be configured to move one or more links 302 of the robotic arm 210 in a "null space" to avoid collisions with nearby objects (e.g., other robotic arms) while the ADM 308 and / or RCM of the robotic arm 210 are maintained in their respective poses (e.g., positions and / or orientations). The null space can be considered a set of joint states into which the robotic arm 210 can move that does not result in movement of the ADM 308 and / or RCM, thereby maintaining the position and / or orientation of the medical tool 212 (e.g., within a patient). In some embodiments, the robotic arm 210 can have multiple positions and / or configurations available for each pose of the ADM 308.
[0118] To enable the robotic arm 210 to move the instrument to a desired pose in space, in certain embodiments, the robotic arm 210 may have at least six DoF: three DoF for translation (e.g., X position, Y position, and Z position) and three DoF for rotation (e.g., yaw, pitch, and roll). In some embodiments, each joint 304 can provide the robotic arm 210 with a single DoF, and thus the robotic arm 210 may have at least six joints to achieve degrees of freedom of movement to position the ADM 308 at any pose in space. To further maintain the ADM 308 and / or remote center or movement of the robotic arm 210 at a desired pose, the robotic arm 210 may further have at least one additional “redundant joint.” Thus, in certain embodiments, a system may include a robotic arm 210 with at least seven joints 304, providing the robotic arm 210 with at least seven DoF. In some embodiments, the robotic arm 210 may include a subset of the joints 304, each with two or more degrees of freedom, thereby achieving additional DoF for null space motion. Depending on the embodiment, the robotic arm 210 may have a greater or lesser number of DoF.
[0119] Additionally, in some embodiments, the bar 220 (e.g., an adjustable arm support) can provide several degrees of freedom, including lift, lateral translation, tilt, etc. Thus, depending on the embodiment, the robotic medical system can have many more robotically controlled degrees of freedom beyond those in the robotic arm 210 to provide null-space movement and collision avoidance. In each of these embodiments, the end effectors of one or more robotic arms (and any tools or instruments coupled thereto), as well as remote centers along the tool axes, can advantageously maintain their orientation and / or position within the patient.
[0120] A robotic arm 210 with at least one redundant DoF has at least one more DoF than the minimum number of DoFs to perform a given task. For example, the robotic arm 210 may have at least seven DoFs, and according to some embodiments, one of the joints 304 of the robotic arm 210 may be considered a redundant joint. The one or more redundant joints may enable the robotic arm 210 to move in null space to maintain the attitude of the ADM 308 and the position of the RCM and to avoid collisions with other robotic arms or objects.
[0121] In some embodiments, the robotic medical system 200 can be configured to perform collision avoidance, for example, to avoid collisions between adjacent robotic arms 210, by utilizing movement of one or more redundant joints in the null space. For example, when a robotic arm 210 collides with or approaches (e.g., within a defined distance of) another robotic arm 210, one or more processors of the robotic medical system 200 can be configured to detect the collision or impending collision (e.g., via kinematics). Accordingly, the robotic medical system 200 can control one or both of the robotic arms 210 to adjust their respective joints in the null space to avoid the collision or impending collision. In an embodiment including at least one pair of robotic arms, the base and its end effector of one of the robotic arms can remain in its pose while the link or joint between them moves in the null space to avoid collision with the adjacent robotic arm.
[0122] 7A and 7B illustrate different views of an exemplary robotic arm 350 according to some embodiments. In accordance with aspects of the present technology, the surgical robotic arm 350 includes a tool drive 352 and a cannula 362 loaded with a robotic surgical tool. FIGS. 7A and 7B show that the robotic arm 350 may include links 351 (e.g., link 351-1, link 351-2, link 351-3, link 351-4, and / or link 351-5) and actuation joint modules (e.g., joint 353; see also joints J1, J2, J3, J4, J5, J6, J7, and J8) for actuating the links relative to one another. The joint modules may include various types, such as pitch joints or roll joints, which may substantially constrain the movement of adjacent links relative to one another about a particular axis. 7A and 7B also show a tool driver 352 attached to the distal end of the robotic arm 350. The tool driver 352 includes a carriage 354 and a stage 356.
[0123] FIG. 7A shows that in some embodiments, the tool driver 352 can include a cannula 362 coupled to its end for receiving and guiding a surgical instrument or end effector 360 (e.g., an endoscope, stapler, scalpel, scissors, clamp, retractor, etc.). The surgical instrument (or “tool”) 360 may include an end effector 364 at the distal end of the tool. Multiple joint modules of the robotic arm 350 can be actuated to position and orient the tool driver 352, which actuates the end effector 364 for robotic surgery. The end effector 364 is at the end of a tool shaft. In other embodiments, the end of the tool shaft is the tip of a needle or other object. In some embodiments, the tool drive 352 includes a cannula release lever 358 for releasing the cannula 362 from the tool driver 352.
[0124] In some embodiments, the robotic arm 350 includes input devices (e.g., buttons, touch points, etc.). Figure 7B illustrates that in some embodiments, the robotic arm 350 includes a clearance adjustment touch point 366, an instrument clutch 368, a port clutch 370, a forearm pivot touch point 372, and a forearm multi-point touch point 374.
[0125] 7A and 7B illustrate that link 351-1 includes a first end coupled to joint J1. In some embodiments, robotic arm 350 includes a J0 joint that actuates the second end of link 351-1. In some embodiments, joint J0 is a table pivot joint and resides below the operating table top 402 (see FIGS. 3A and 3B). Joint J0 is nominally held in a fixed position during surgery. Joints J1-J5 form a setup or Cartesian arm that is nominally held in a fixed position during surgery and therefore does not contribute to motion during surgical teleoperation. Joints J6 and J7 (see FIG. 8) form a spherical arm that can be actively moved during surgery or teleoperation. Joint J8, as part of a tool driver, translates a tool 360, such as end effector 364. Joint J8 can be actively moved during surgery. Joints J6, J7, and J8 actively position the tool shaft end (e.g., end effector 364) during surgery while maintaining the entry point into the patient at a fixed or stable location (e.g., a remote center of motion) to avoid stress on the patient's body wall. During setup, any of joints J0-J8 may move. During surgery, joints J6, J7, and J8 may move, subject to hardware or safety limitations on position, velocity, acceleration, and / or torque. Surgical tool 360 may include zero joints, one, or more than two (e.g., three) joints, such as a joint for tool rotation, plus any number of additional joints (e.g., wrist, rotation about a longitudinal axis, or other types of motion). Any number of degrees of freedom may be provided, such as three degrees of freedom from joints J6, J7, and J8, and zero, one, or more than two degrees of freedom from surgical tool 360.
[0126] 8 shows a portion of a robotic arm 350 and surgical tool 360 that provides six degrees of freedom (DOF). The six DOF correspond to six active joint movements during teleoperation. In some embodiments, the active joints include three joints on the surgical tool 360: rotation at joint J9, pitch at wrist joint J10, and yaw at wrist joint J11. The active joints include three joints on the robotic arm 350: spherical rotation joint J6, spherical pitch joint J7, and tool translation joint J8. In some embodiments, other joints that provide six degrees of freedom may be used.
[0127] In some embodiments, a user can command movement with fewer than six degrees of freedom. For example, in some embodiments, five, four, or fewer active joints may be provided. In a five-degrees-of-freedom (DOF) example, the active joints include three joints on the robotic arm 350: a spherical rotation joint J6, a spherical pitch joint J7, and a tool translation joint J8, and two active joints on the surgical tool: a rotation at joint J9 and articulation as a separate joint. In some embodiments, an active joint configuration may be used, such as providing two or fewer DOF on the robotic arm during teleoperation.
[0128] C. Exemplary Surgical Setup 9 is a perspective view of a robotic medical system 200 including four robotic arms 210-1, 210-2, 210-3, and 210-4, according to some embodiments. Each of the robotic arms 210-1, 210-2, 210-3, and 210-4 is coupled to a respective surgical tool 602 (e.g., 602-1 through 602-4, which may correspond to an instrument 212) via a respective ADM 308 (e.g., tool driver), such as ADMs 308-1 through 308-4. The surgical tools 602 may be inserted into a patient through respective ports 608 located on the patient. As used herein, a port (e.g., port location, entry port, entry point, port region, port area, or port location, etc.) refers to a location on a patient's body through which a medical tool / instrument (e.g., held by a robotic arm) may be inserted and constrained from movement. In some embodiments, the port corresponds to an incision point (or incision area) made through a patient's skin to facilitate a medical operation or procedure. In some embodiments, the port corresponds to a natural orifice, such as a patient's mouth (e.g., for a bronchoscopy procedure). In some embodiments, the port corresponds to a medical device with an opening that is placed at the incision point or natural orifice to allow access to the surgical space through the opening. The patient illustration has been omitted from FIG. 9 to enhance visibility of the robotic arm 210 and surgical tool 602.
[0129] In FIG. 9 , the robotic arm 210-2 is coupled to a camera 606. In this example, the camera 606 is coupled to the robotic arm 210 via a medical instrument 602-2 (e.g., an endoscope) (e.g., at the distal end of the medical instrument 602-2). In some embodiments, the camera 606 is part of the medical instrument 602-2. In some embodiments, the camera 606 can be a standalone device (e.g., not part of the surgical instrument) coupled to the robotic arm (e.g., the camera 606 is distinct and separate from the medical instrument). In some embodiments, the camera 606 defines an axis 604 (e.g., an optical axis) that identifies the orientation of the camera 606. The camera 606 (or scope) provides an image of the surgical site to facilitate control of surgical tools to perform the robotic medical procedure. For example, a robotically controllable endoscope of a robotic system can include a camera positioned at its distal tip. A user can view images from the endoscope's camera in a viewer to facilitate control of the endoscope and / or other components of the robotic medical system. As another example, a robotic system may include one or more cameras that are inserted laparoscopically or endoscopically into a patient, and a user may view images from the inserted cameras to facilitate control of one or more additional robotically-controlled medical instruments, such as one or more additional medical instruments that are inserted laparoscopically.
[0130] In some embodiments, the robotic medical system 200 or the robotic medical system 400 includes a coordinate system (e.g., a robot coordinate system, coordinate frame, system frame, etc., which may be a Cartesian or non-Cartesian coordinate system), and the respective positions of the patient support platform 202, the tabletop 402, the robotic arm 210, the robotic arm 350, the adjustable arm support 220, and / or the instrument 212 are expressed as coordinates (e.g., x-coordinate, y-coordinate, and z-coordinate) on the coordinate system. For example, the robotic medical system 200 (e.g., one or more processors 380 of the robotic medical system 200 or the robotic medical system 400) may be configured to determine the position and orientation of the patient support platform 202, the tabletop 402, the robotic arm 210, the adjustable arm support 220, and / or the instrument 212 based on the coordinates in the coordinate system.
[0131] D. External force adjustment for remote control Minimally invasive robotic surgery involving remote manipulation typically involves two or more robotic arms and other surgical instruments. During surgery, collisions between the robotic arms or between the robotic arms and external obstacles (e.g., external objects) may occur. Therefore, robotic medical systems must operate to avoid collisions and / or mitigate collisions when they occur.
[0132] According to some aspects of the present disclosure, a robotic control system can adjust external forces during teleoperation. In some embodiments, the robotic control system (e.g., robotic medical system 200, robotic medical system 400, and / or a teleoperation console configured to control one or more robotic arms of a robotic medical system, such as robotic arm 210 or robotic arm 350) uses motor currents, dynamic modeling, and constrained inverse kinematics to solve several problems, including estimating torques using motor currents, dynamic modeling of the robotic arm, applying a constrained inverse kinematics solver to enforce various behaviors (e.g., end-effector pose targets and / or joint position limits), using torque-motion duality to achieve smooth usability during collisions, and utilizing the maximum workspace of the robotic arm.
[0133] According to some embodiments, during teleoperation, motion commands from the master device are translated into instrument motion (e.g., the instrument is coupled to a robotic arm), a process also known as inverse kinematics.
[0134] In some embodiments, the instrument motion can be viewed by the user / surgeon (e.g., as a live endoscopic video feed via the physician console 240) and mitigated by the user when they observe that something unusual is occurring. However, the motion of the rest of the robotic arms may not be visible to the user. Thus, in some embodiments, collisions between robotic arms or between robotic arms and external obstacles can be mitigated via software algorithms (e.g., executed by one or more processors 380).
[0135] In some embodiments, during teleoperation, the master device motion is used to control the instrument motion. The master device motion is in a task space, which is a six DOF motion (e.g., three DOF for linear motion and three DOF for angular motion). In some embodiments, the task space motion commands are converted to arm joint commands (joint space) using inverse kinematics methods.
[0136] When a collision occurs during teleoperation, one or more joints require more torque than is necessary to follow the commanded trajectory. In such cases, the collision and its direction can be calculated. In some examples, the amplitude of the collision force on an external obstacle can be limited below a predetermined threshold by restricting joint movement in the direction of the collision so that the joint can only move in a direction that reduces the collision force.
[0137] In some embodiments, the joint trajectory commands are achieved by torque from electric motors. For a particular motor, the torque relationship during teleoperation can be summarized by the following equation: T モータ =T 重力 +T 動的 +T 摩擦 +T rcm +T 組織 +T 外部 (1)
[0138] In equation (1), T モータ represents the motor torque, or the torque from an electric motor used to actuate the joints or links of a robotic arm. Motor torque has units of Newton-meters (Nm). Equation (1) shows that several torque components contribute to the motor torque, including gravitational torque, dynamic torque, friction torque, remote center of motion (RCM) torque, tissue torque, and / or external torque.
[0139] In some embodiments, T モータ can be calculated from the motor current using the following equation (2): Tモータ =η*N*K t *I モータ (2)
[0140] In equation (2), η represents the motor efficiency, N represents the gear ratio, and K t means the motor torque constant (unit: Nm / A), and I モータ is the motor current measurement in amperes (A).
[0141] Returning to equation (1), the term T 重力 represents a gravitational torque (e.g., a gravity compensation torque). In some embodiments, T 重力 is calculated based on the arm position using a dynamic model: T 重力 =G(θ) (3)
[0142] In equation (1), the term T 動的 represents the dynamic torque, which is the torque required to balance the inertial and Coriolis forces. 動的 is determined based on the position, velocity, and acceleration of the arm.
[0143]
number
[0144] In equation (1), the term T 摩擦 represents the friction torque. In some embodiments, T 摩擦 is calculated from the Coulomb friction model:
[0145]
number
[0146] In equation (1), the term T rcm denotes the RCM torque. In some embodiments, T rcm is the maximum RCM torque during remote operation. In some embodiments, T rcmis derived from the requirements.
[0147] In equation (1), the term T 組織 represents the maximum torque from tissue forces at the tip of the tool. In some embodiments, T 組織 is the maximum force required from handling tissue during remote manipulation, which is given by the requirement, usually given as force at the tip of the tool (N).
[0148] In equation (1), the term T 外部 represents the torque from an external object. T 外部 is also referred to as external torque or contact torque. According to some embodiments of the present disclosure, T 外部 is unknown and must be adjusted.
[0149] In some embodiments, the external torque T 外部 can be obtained by rearranging equation 1. This is expressed by equation (6). T 外部 =T モータ -T 重力 -T 動的 -T 摩擦 -T rcm -T 組織 (6)
[0150] Also, in some embodiments, the external torque T 外部 can be expressed by the following formula: T 外部 =T 遠隔操作 -T rcm -T 組織 (7)
[0151] In equation (7), the remote control torque (T 遠隔操作 ) can be determined by: T 遠隔操作 =T モータ -T 重力 -T 動的 -T 摩擦 (8)
[0152] In some embodiments, to regulate the force exerted by the robotic arm on the environment, the robotic arm stops motion to avoid a further increase in the external force, in which case force and motion have a dual relationship. V=0, where dot(F 外部 ,V)>0 and F 外部 ≧F 停止 (9)
[0153] In some embodiments, instead of issuing a command to stop the robot arm suddenly, a command to gradually decrease the velocity of the robot arm can be issued. Equation (10) illustrates an example relationship where the updated velocity of the robot arm is calculated as a ratio of the current velocity.
[0154]
number
[0155] In some embodiments, the robotic control system repeatedly (e.g., every 1 millisecond, every 3 milliseconds, every 250 milliseconds, etc.) determines (e.g., automatically, in real time, etc.) updated velocities of the joints of the robotic arm.
[0156] In the joint space approach, the maximum external forces, RCM torques, and tissue forces are converted to joint space requirements using equation (11):
[0157]
number
[0158] In formula (11),
[0159]
number
[0160]
number
[0161] In the worst case scenario, the force vector
[0162]
number
[0163]
number
[0164] In some embodiments, the RCM torque (T rcm ) can be modeled in a similar fashion:
[0165]
number
[0166] In some embodiments, the tissue force is F 外部 or T rcm can be modeled in a similar manner.
[0167] In some embodiments, since the tip of the tool (e.g., the tip of the instrument) is located near the tool translation joint, it is convenient to shift the tissue forces onto the tool translation joint, the benefit of which is that all instruments (e.g., instruments with four, five, or six DOF) can use the same algorithm to adjust the applied force and / or torque.
[0168] In some embodiments, both the external force and the RCM torque can be transferred to the tip force, so that these three terms (F 外部 , T rcm , and F 組織 ) is one tip force limit (i.e.,
[0169]
number
[0170]
number
[0171]
number
[0172]
number
[0173] In equation (14), the term
[0174]
number
[0175]
number
[0176] In some embodiments, T 遠隔操作is noisy (e.g., due to motor current noise), a low-pass filter is first applied to T 遠隔操作 This is expressed by equation (15). T 遠隔操作 =lpf(T 遠隔操作 ) (15)
[0177] The term lpf(T 遠隔操作 ) represents the torque after low-pass filtering. In some embodiments, the low-pass filter is a first-order Butterworth filter. In some embodiments, the low-pass filter has a bandwidth of 2 Hz, 1 Hz, 0.75 Hz, or 0.5 Hz.
[0178] In some embodiments, filtered (e.g., after applying a low-pass filter) T 遠隔操作 Using the force ratio (r i ) can be calculated as follows:
[0179]
number
[0180] The sign of the force ratio is determined based on the sign of the joint torque. r i = sign(T 遠隔操作 )×r i (17)
[0181] The force ratio is then used as a scalar input to the inverse kinematics solver, which forms the new kinematic limit: [Δqmin i ,Δqmax i ]=[Δqmin i ,(1-r i )'Δqmax i ]However, r i 'Δqmax i >0 (18a) [Δqmin i ,Δqmax i ]=[(1-r i )'Δqmin i,Δqmax i ], but r i 'Δqmin i >0 (18b)
[0182] Constrained Inverse Kinematics Solver: In some embodiments, the robot control system calculates the joint motion commands by solving the constrained linear equations set forth in equation (19):
[0183]
number
[0184] In formula (19),
[0185]
number
[0186] In some embodiments, the same approach (eg, as described above with respect to equations (1)-(19)) can be used for instruments with six, five, or four DOFs.
[0187] In some embodiments, alternative approaches to external torque / force regulation in task space include: Step 1: Calculate the task space force / torque using equation (7) and calculate the static torque / force limit (T 減速 , T 停止 ) to set the Step 2: Calculate the teleoperation torque in task space using equation (19). T タスク_空間 =J'T関節 (20) T during the ceremony タスク_空間 is the task space torque in RCM (e.g., a 6×1 vector), J is the Jacobian matrix (e.g., a 6×n vector), and T 関節 is the joint torque vector (e.g., an n×1 vector). Step 3: タスク_空間 A low-pass filter (having a frequency of, for example, 2 Hz, 1 Hz, 0.75 Hz, 0.5 Hz, etc.) is applied to the signal. Step 4: Calculate the ratio r(6×1) of the movement commands using equations (16) and (17). Step 5: Calculate the maximum allowable motion in the task space.
[0188]
number
[0189] E. System response to external forces Section 2D above is the external force (F 外部 ) or external torque (T 外部 This invention describes a method for estimating an external force or torque and using the estimated external force or torque to determine whether to slow and / or stop the motion of a robot arm.
[0190] In some situations, automatically stopping the robotic arm can have disadvantages. For example, it may not be clear to the surgeon why the robotic arm is not moving as intended. At times, there may be a clinical need to complete a commanded robotic arm movement even if it results in a collision.
[0191] According to some embodiments of the present disclosure, in response to determining that a collision has occurred, the robotic control system may compensate for (e.g., by supplementing or replacing) the above-described system behavior to improve system usability and performance.
[0192] In some embodiments, when the robotic control system detects a discrepancy between the user-commanded position and the actual position of the robotic arm, the robotic control system can provide haptic feedback to the user (via the HID on the physician console 240). In some embodiments, the robotic control system allows the robotic arm to follow the command but indicates the external collision to the user via haptics in one of several ways. For example, in some embodiments, the robotic control system can increase the damping of the HID during movement in the direction of the collision. In some embodiments, the robotic control system can apply a spring-like force to push the HID away from the collision. In some embodiments, the intensity of the haptic effect can be a function of the estimated external collision force (e.g., the greater the estimated external collision force, the stronger the haptic effect). This informs the user that there is a collision, but allows the user to walk through the collision if the user deems it necessary or advisable.
[0193] In some embodiments, when the robotic control system detects a discrepancy between the user-commanded position and the actual position of the robotic arm, the robotic control system can provide a notification to the user. For example, the notification can be displayed via a display device (e.g., display device 232 and / or display device 242) and / or via a user interface. In some embodiments, the notification can distinguish between various reasons that may prevent movement, such as joint limits versus external collisions.
[0194] In some embodiments, the robotic control system displays one or more user-selectable interface elements (e.g., buttons, icons, etc.) along with the notification. User selection of an interface element can indicate that the notification has been acknowledged and / or dismissed. For example, the user can select a first interface element that confirms that the user is aware of the collision and is taking action to address the collision. As another example, the user can select a second interface element that indicates that the user is aware of the collision and is ignoring it.
[0195] In some embodiments, the robotic control system provides visual cues to indicate the direction of tool tip movement (e.g., to indicate that the user should move the tool tip in that direction to move away from the collision).
[0196] In some embodiments, after detecting that a collision has occurred, the robotic control system provides an indication as to whether the collision is an intra-system collision (e.g., between two robotic arms) or a collision between the robotic medical system and an external object, such as between a robotic arm and a person or between a robotic arm and a piece of equipment. In some embodiments, if the collision is an intra-system collision, the robotic control system can suggest ways to reposition itself (e.g., ways in which the robotic arms can be repositioned) to create more space between the colliding components.
[0197] Thus, the disclosed system and / or method has several advantages over existing systems. For example, it can provide helpful and useful feedback (e.g., tactile feedback or visual notification) to the user, allowing the user to use the robotic medical system in a clinically useful manner (e.g., rather than having the robotic control system actively prevent certain movements). The disclosed system also has low torque saturation, improving on prescriptive systems that do not allow the surgeon to walk through external impingements even when it may be clinically beneficial or necessary.
[0198] F. Force regulation variability External force estimation at other positions Section 2D above is the external force (F 外部 ) or its corresponding torque (T 外部 ) during remote manipulation at the tool tip to determine whether to slow and / or stop the robot arm motion. If an external force is caused by a collision, estimation at the tool tip can make it difficult to determine where the collision occurs. Estimating the external force at a location outside the patient's body instead of at the tool tip or along the tool shaft below the RCM can be more meaningful and beneficial.
[0199] In some embodiments, external forces on the robot arm that are much more likely to be involved in a collision can be estimated. Such locations can also include any location on the tool tip, tool shaft, tool stage, and tool driver, such as the rear of the tool stage, the rear of the tool driver, or other locations along the tool driver. The calculated external forces can be compared to established thresholds of biomechanical force limits defined by collaborative robotics standards such as ISO 15066, Table A.2 (e.g., the maximum allowable force at the abdomen is 110 Nm) to provide sensible safety margins for various levels of severity. The primary use of this feature is to adjust for forces due to external collisions.
[0200] Real-time determination of stopping torque threshold and deceleration torque threshold The above estimation method and implementation is based on the maximum expected tissue load T 組織 and a predetermined constant value for the threshold, e.g., T 減速 and T 停止 Instead of using predetermined constants, the maximum expected force / torque can be estimated in real time based on the arm's pose and / or motion state. A more nuanced decision can then be made about when to slow or stop the arm in response to external forces such as a collision.
[0201] In some embodiments, the torque deadband is defined as the maximum expected tissue load T 組織 to determine whether each joint force / torque is within or outside of an expected range. Deadband often refers to a band of input values in the region of a control system where no action occurs (output is zero). For example, real-time calculation of torque deadband can take into account model error, which can be the sum of predicted model error derived from: ε モデル =k g T 重力 +k f T 摩擦 +k d T 動的 (twenty two) In the formula, k g , k f , and k d ∈[0,1] is the torque T 重力 , T 摩擦 , and T 動的 are the respective accuracy coefficients.
[0202] Furthermore, the stopping torque threshold T 停止 can be calculated and set in real time based on the current arm pose and motion. Due to known sources of uncertainty in the force coordination model, the accuracy with which unexpected external forces can be determined depends on the arm pose and motion. Unexpected external torques may be estimated more accurately in some arm poses than others. Therefore, the threshold T 停止Setting the threshold in real time allows for better safety mitigation coverage without increasing the chance of false positives. The following lists the options for setting the threshold: 1) The stopping torque threshold, assuming a collision at the rear of the tool drive stage, which results in the worst-case arm posture.
[0203]
number
[0204]
number
[0205]
number
[0206]
number
[0207]
number
[0208] Similarly, the deceleration torque threshold T 減速can be estimated in real time instead of relying on a predetermined constant. Feasibility analysis showed that even in the worst case, the maximum external torque due to normal tissue loads (and model errors) is always less than the torque caused by the impact force at the rear of the tool drive stage. This is a prerequisite for external force regulation to be feasible and useful.
[0209] In some embodiments, T 減速 can be derived in real time using the following formula:
[0210]
number
[0211] In most cases, T 減速 is (T 組織_最大 +ε モデル ) or higher to reduce false positives in external force adjustment, and T 停止 Smooths the deceleration and / or stopping of the robot by adjusting the force set below, i.e. (T 組織_最大 +ε モデル )≦T 減速 ≦T 停止 T 停止 As such, unexpected external torques may be determined more accurately in some arm postures than in others, and T 減速 Setting in real time allows for better safety mitigation without causing more false positives.
[0212] Using multiple filters and thresholds False positives can be problematic for force regulation because unnecessary slowing or stalling disrupts teleoperation and therefore impacts the surgeon's ability to effectively complete clinical tasks. As shown in equation (15) above, a low-pass filter is used to filter T 遠隔操作 applies to and indirectly to T 減速 and T 停止A filter can be applied to remove sensor noise and reduce false positives. However, this can introduce some latency into the system response, which is not ideal, especially for sudden, high-impact collisions.
[0213] In some embodiments, two or more thresholds and / or filters can be applied to improve system response to different types of collisions. For example, in addition to the low-pass filter of Equation (15), a second low-pass filter with a higher cutoff frequency and a higher stopping torque threshold can be employed. As a result, the system can respond faster to high-impact collisions due to the higher cutoff frequency. Furthermore, the second filter is less likely to produce false positives due to the higher stopping torque threshold. Thus, the first low-pass filter is slower but can detect low-impact collisions with fewer false positives, while the second filter has a faster response and can capture high-impact collisions. By running both filters in tandem, an improved safety margin can be achieved without increasing the likelihood of false positives. Depending on design goals and priorities, any number of filters and corresponding thresholds can be applied, including the option of no filtering at all for the fastest response time.
[0214] Improved Friction Model The above equation (5) is the motor friction torque T 摩擦 This paper describes the joint friction model used to estimate torque due to joint velocity, which is a component of torque expected during normal teleoperation. Based on the expected torque values, "unexpected" torques, such as those caused by collisions, can be determined and estimated. Therefore, any improvements to the friction model will help reduce model error and improve precision and accuracy in estimating external forces.
[0215] The Coulomb friction model described refers to a simple linear fit of estimated friction based on motor speed. In reality, friction is a function of many more variables than just speed, some of which are predictable and repeatable. For example, harmonic drives (a type of motor-plus-transmission system used in robotic arm joints) have position-dependent friction. A typical harmonic drive may have periodic friction peaks, such as two, four, or six times per motor revolution, depending on the transmission design and assembly. Other motors may have position-dependent motor cogging effects that can also be modeled as friction. Some joints may have other position-dependent friction caused by seals on the output side of a transmission that is not fully assembled. Furthermore, temperature can affect friction. If the robotic arm joints sense temperature in real time, the friction model can be adjusted accordingly.
[0216] Different effects and variables require friction models other than linear fits. For example, a Fourier series works well for transmission friction and motor cogging based on motor position. A polynomial, or spline fit, can work well for friction based on joint position or temperature. The following equation can be used to model viscous friction:
[0217]
number
[0218]
number
[0219] Motor Speed
[0220]
number
[0221] Regardless of the friction model chosen, the precision and accuracy of the friction estimates depend on the relevant parameters, e.g., k 係数 , k 定数 , F 変換 (·), and P 温度 Further improvement can be achieved by calibrating the motor position x (·) and storing the calibrated parameters in the non-volatile memory of each device. モータ , joint position x 関節 , and motor temperature t モータ can also help estimate the real-time measured static friction of the system.
[0222] Applying the force regulation algorithm to non-teleoperated modes Section 2D above introduces a force adjustment method applied to teleoperation. However, this method can be extended to any part of a robotic system that is susceptible to external collisions in any state. Force adjustment can be performed at any joint, such as joints J0-J5 of the setup arm or joints J6-J8 of the spherical arm. The system can also enable force adjustment at any stage of the procedure, such as during teleoperation, pivot positioning, retraction, deployment, procedure setup assistance, and clearance (e.g., arm / table repositioning).
[0223] Collisions can occur at various joints other than the tool tip or RCM, such as joint J0 or J2. Similarly, the HID can collide with other parts of the physician console, such as other HIDs or armrest bars, while in position control mode. It can also collide with the operator. Therefore, external force adjustments can be performed on the HID. Potentially applicable modes for force adjustment include HID homing (entire HID) and realignment (gimbals only).
[0224] Force / Torque Sensors In addition to estimating torque in an electric motor based on motor current, joint torque can also be measured directly by a load sensor, such as a force and / or torque sensor embedded in the motor. Motor current detection is typically noisy, and imprecise calibration of tolerances can result in large variations in motor torque measurements. On the other hand, load sensors can provide a much more accurate and precise measurement of joint load than estimates based on motor current and torque values.
[0225] In summary, disclosed herein are variations of the force adjustment process that build upon and improve upon the methods described in Section D. Estimation of external forces and adjustment of system response can be achieved in a more clinically prudent manner. Improvements include greater accuracy, precision, responsiveness, and perceptibility of the algorithm. Extensions to the algorithm can be applied to additional system operating modes with respect to managing external impingement and setting harm thresholds.
[0226] G. Exemplary Processes 10A-10D illustrate a flowchart diagram of method 700 executed by one or more processors (e.g., processor 380) of a robotic control system. In some embodiments, the robotic control system is a robotic medical system (e.g., robotic medical system 200 or robotic medical system 400). In some embodiments, the robotic control system is a remote operation console (e.g., physician console 240) configured to control one or more robotic arms (e.g., robotic arm 210 or robotic arm 350) of the robotic medical system. The robotic control system includes a memory (e.g., memory 382) that stores instructions for execution by the one or more processors.
[0227] The robot control system receives (702) a first command to move at least a portion of the robot arm (e.g., one or more joints and / or one or more links).
[0228] In some embodiments, the first command includes a user-input or controlled command. For example, in some embodiments, the first command is a motion command provided by (e.g., requested from) an operator (e.g., a surgeon or a surgeon assistant) during teleoperation of the robotic arm. As another example, the first command can include a command trajectory for moving at least a portion of the robotic arm.
[0229] In some embodiments, the first command is provided by an operator via a command user interface on a master device or control console (e.g., physician console 240). In some embodiments, the first command is an automatically generated exercise command based on preconfigured conditions and desired results.
[0230] In some embodiments, the first command is a movement command to move an instrument attached to the distal end of the robotic arm, the movement command causing movement of the instrument and / or movement of one or more joints and / or links of the robotic arm to achieve a desired movement of the robotic arm and / or instrument.
[0231] In some embodiments, the first command is a motion command for moving the robotic arm in a respective manner. For example, in some embodiments, the first command specifies a displacement of at least a portion of the robotic arm (e.g., move joint 1 5 cm). In some embodiments, the first command specifies movement of the robotic arm to a target pose (e.g., a target position and / or orientation). In some embodiments, the first command specifies a target movement (e.g., a direction and / or velocity) of at least a portion of the robotic arm.
[0232] In some embodiments, in response to receiving the first command, the robotic control system causes movement of at least a portion of the robotic arm in accordance with the first command and in accordance with the first instruction set (704). For example, in some embodiments, in response to receiving the first command, the robotic control system drives one or more motors (e.g., motor 387-1 or motor 387-2) and / or actuators to cause or perform robotic movement of the robotic arm. In some examples, the robotic control system causes movement of at least a portion of the robotic arm (e.g., one or more joints and / or one or more links of the robotic arm) relative to a base or bed of the robotic medical system, relative to the patient, and / or relative to the physical environment at a respective movement velocity and / or respective displacement determined in accordance with the first command.
[0233] The robot control system may measure one or more contact forces (e.g., F) applied to the robot arm by an external object during movement of the robot arm (e.g., while the robot arm is moving). 外部 ) or torque (e.g., T 外部 ) (e.g., a contact force or contact torque) (e.g., an external force or external torque) is monitored 706. In some embodiments, one or more contact forces or torques are applied on links of the robot arm.
[0234] In some embodiments, the robotic control system automatically and in real time measures, estimates, and / or calculates the magnitude and / or direction of contact forces and torques on the joints and links of the robotic arm and / or on instruments attached to the robotic arm.
[0235] In some embodiments, the one or more contact forces or torques can include forces or torques that are directly detected (e.g., via sensor 388) (e.g., sensed or measured by a sensor attached to the robot arm). In some embodiments, the one or more contact forces or torques can include forces or torques that are indirectly detected or measured (e.g., calculated or estimated by a robot control system) (e.g., via processor 380).
[0236] In some embodiments, the one or more contact forces or torques may be a gravitational torque (T 重力 ) (708). In some embodiments, the gravitational torque is calculated based on the position of the robot arm using a dynamic model.
[0237] In some embodiments, the one or more contact forces or torques may be a friction torque (T 摩擦 ) (710). This is shown, for example, in equation (5).
[0238] In some embodiments, the one or more contact forces or torques for balancing the inertial and Coriolis forces of the robot arm are dynamic torques (T 動的 ) (712). In some embodiments, the dynamic torque is calculated based on the position, velocity, and acceleration of the robot arm. This is illustrated in Equation 4. In some examples, when the robot arm is moving slowly, the dynamic torque can be negligible.
[0239] In some embodiments, one or more contact forces or torques are applied to a remote center of motion (RCM) torque (T) to constrain an instrument (e.g., a tool) coupled to a robotic arm during teleoperation (e.g., about a remote center of motion). rcm ) (714).
[0240] In some embodiments, the one or more contact forces or torques may be a torque applied by the patient (e.g., patient tissue force) to the robotic arm during teleoperation (e.g., torque from the patient at the tip of an instrument to which the robotic arm is coupled during teleoperation) (T 組織 (714)
[0241] Referring to FIG. 10B, in some embodiments, the robot control system reduces (718) the speed of the robot arm movement being performed in accordance with the first command in accordance with a determination that one or more contact forces or torques satisfy a first set of conditions.
[0242] In some embodiments, the first set of conditions is the magnitude of each monitored contact force or torque (e.g., tip force, or T 遠隔操作 ) is the lower limit of the force or torque (e.g., F 減速 , or T 減速 ) and upper limits of force or torque (e.g., F 停止 , or T 停止 ) For example, the force lower limit may be any value between 15N and 40N. The torque lower limit may be any value between 2Nm and 4Nm.
[0243] In some embodiments, the first set of conditions may be based on the direction of each monitored contact force or torque (e.g., tip force, or T 遠隔操作 ) is in a direction that results in a further increase in the magnitude of the respective monitored contact force or torque above a preset threshold.
[0244] In some embodiments, the robotic control system, in accordance with a determination that the one or more contact forces or torques satisfy the first set of conditions, reduces the velocity such that the first set of conditions is no longer satisfied. In some embodiments, the robotic control system, in accordance with a determination that the one or more contact forces or torques satisfy the first set of conditions, initiates a process to stop movement of the robotic arm despite the first command while maintaining stiffness of the robotic arm and attached instrument.
[0245] In some embodiments, the one or more contact forces or torques may be a first contact force (e.g., F 外部 ) (719).
[0246] Reducing the speed of the movement of the robot arm is achieved by reducing the current speed (e.g., real-time speed) of the robot arm (e.g., V in Equation (10)). 現在 ) (e.g., in real time, automatically, and without user intervention) (720); and determining a velocity of the robot arm from the current velocity to determine a first contact force (e.g., F 外部 ) and upper limits of force (e.g., F 停止 ) based on
[0247]
number
[0248] In some embodiments, the ratio based on the first contact force and the upper force limit is determined by: (i) the difference between the magnitude of the first contact force and the lower force limit (F 外部 -F 減速 ) and (ii) the difference between the upper and lower force limits (F 停止 -F 減速 ) is the ratio of
[0249] In some embodiments, the robot control system includes steps of (i) determining a current velocity; and (ii) determining a first contact force (e.g., F 外部 ) is the lower limit of the force (e.g., F 減速 ) and repeating (e.g., iterating) the steps of reducing the velocity until it is equal to or less than 0 (e.g., when the numerator becomes zero, this means that the updated velocity is also zero). See, e.g., equation (10).
[0250] In some situations, the robotic control system may command all movement to stop if the external force is greater than a safety stop threshold. For example, in some embodiments, the robotic control system stops movement of the robotic arm being performed pursuant to the first command pursuant to a determination that one or more contact forces or torques satisfy a second set of conditions (726).
[0251] In some embodiments, a second set of conditions may be set to determine whether the magnitude of each monitored contact force or torque exceeds an upper force limit (e.g., F 停止 ) or torque upper limit (e.g., T 停止 ), including exceeding (e.g., being greater than, or equal to) an upper limit F 停止 may be any value between 45N and 60N. According to some embodiments, the upper torque limit T 停止 may be any value between 7 Nm and 9 Nm.
[0252] In some embodiments, in response to receiving the first command, the robot control system causes a motor of the robot arm (e.g., a motor coupled to the robot arm or coupled to a link of the robot arm) to generate a motor torque (e.g., T モータ ) is generated (728).
[0253] In some embodiments, the motor torque is a torque applied by a motor to the robot arm (e.g., to a joint or link of the robot arm) to move at least a portion of the robot arm. In some embodiments, the motor torque must overcome / balance other torques already present on the robot arm, as shown in equation (1).
[0254] In some embodiments, for a particular motor, the torque relationship during remote operation can be summarized in equation (1) above.
[0255] In some embodiments, the robot control system determines the first contact force (e.g., F 外部 ) (e.g., automatically, repeatedly, without user intervention, etc.). For example, in some embodiments, the robot control system calculates (e.g., determines or estimates) 730 the motor torque (e.g., T モータ ) to calculate the external torque (e.g., T 外部 ) and calculate the external force (e.g., F 外部 ) (e.g., the robot control system applies the inverse of the Jacobian transpose to obtain the external forces).
[0256] In some embodiments, the robot control system determines a first contact torque (e.g., T 外部 ) is calculated (e.g., determined or estimated) (732) (e.g., automatically, repeatedly, without user intervention, etc.). For example, in some embodiments, the first contact torque is calculated as: T 外部 =T 遠隔操作 -Trcm -T 組織 (However, T 遠隔操作 =T モータ -T 重力 -T 動的 -T 摩擦 ) which can be determined, for example, by equations (6), (7), and (8).
[0257] Continuing to refer to FIG. 10C, in some embodiments, the robot control system calculates a teleoperation torque (T 遠隔操作 ) is determined (734). This is shown, for example, in equation (8).
[0258] In some embodiments, the robotic arm includes multiple joints, each electrically coupled to a respective (e.g., separate) motor, and the robotic control system determines teleoperated torque vectors corresponding to the multiple joints.
[0259] In some embodiments, the robotic control system applies a filter to the teleoperated torque to obtain a filtered torque value (736) (e.g., a filtered torque value corresponding to a joint of a robotic arm). In some embodiments, the filter is a low-pass filter. In some embodiments, the filter is a first-order Butterworth filter. In some embodiments, the filter has a bandwidth of 1 Hz, 0.75 Hz, 0.5 Hz, etc.
[0260] In some embodiments, the robot control system determines a force ratio (e.g., r) according to the filtered torque value. i ) (738), and use (e.g., calculate) the determined force ratio as an input (e.g., a scalar input) for the inverse kinematics solver (740), which forms the new kinematic limit, as shown, for example, in equations 18(a) and 18(b).
[0261] In some embodiments, the robot control system may adjust the filtered torque value to a lower joint torque limit (e.g.,
[0262]
number
[0263] In some embodiments, the robot control system may further process the filtered torque values to determine a lower joint torque limit and an upper joint torque limit (e.g.,
[0264]
number
[0265] In some embodiments, the robot control system specifies (746) the force ratio as 1 in accordance with a determination that the filtered torque value is greater than or equal to the joint torque upper limit, as shown, for example, in equation (16).
[0266] In some embodiments, the robotic control system determines a joint torque lower limit (e.g.,
[0267]
number
[0268]
number
[0269] In some embodiments, the tissue force (T 組織 ) onto the tool translation joint. 外部 ) and RCM torque (T rcm ) can be transferred to the tip force, so that these three terms (T 組織 , F 外部 , and T rcm ) is one tip force limit
[0270]
number
[0271]
number
[0272] 10D , in some embodiments, the first command includes a first command position of the robot arm (e.g., of the joints and / or links of the robot arm) (750). In some embodiments, the robot control system determines an actual position of the robot arm. In some embodiments, pursuant to a determination that a difference (e.g., a discrepancy) between the first command position and the actual position of the robot arm satisfies a first criterion including a difference of a first threshold amount, the robot control system generates and outputs (or causes an output) a notification regarding the difference.
[0273] For example, in some embodiments, the difference between the first commanded position and the actual position of the robotic arm includes the difference between the commanded (e.g., target) coordinates and the actual coordinates of a joint of the robotic arm or an end effector of the robotic arm or the tip of an instrument of the robotic arm.
[0274] In some embodiments, the notification includes the difference between the first commanded position and the actual position of the robot arm (e.g., coordinates, position data, etc.).
[0275] In some embodiments, the robotic control system causes the notification to be output (e.g., provided) as haptic feedback to the user (752).
[0276] In some embodiments, haptic feedback can be provided via a human interface device or haptic interface device (HID). In some embodiments, the HID can be located on the surgeon console. For example, if the robotic arm does not follow a user command, the user automatically receives haptic feedback due to a discrepancy between the commanded position and the actual position.
[0277] In some embodiments, the robotic control system causes the notification to be displayed (754) (e.g., visually) on a display device (e.g., a display device including a graphical user interface).
[0278] For example, in some embodiments, the display device is a surgeon console that includes a display or graphical user interface.
[0279] In some embodiments, the displayed notification may include and / or identify the reason why the robot arm movement is modified or prevented. Reasons may include as a joint limit or / versus an external collision.
[0280] In some embodiments, the notification may include one or more user-selectable elements that, when selected by the user, indicate that the notification has been approved and / or dismissed (e.g., the user may choose to ignore or address the conflict).
[0281] In some embodiments, the notification includes a visual cue to indicate the direction the user should move the tool tip to move away from the collision.
[0282] In some embodiments, based on the system pose (e.g., the respective positions and / or orientations of one or more robotic arms), the robotic control system can determine whether the collision is likely an intra-system collision, an inter-system collision (e.g., between two robotic arms), or due to something external (such as the patient, operating room staff, or other operating room equipment), and provide the determination as part of the notification.
[0283] In some embodiments, the first command includes a first command position for the robot arm (756). After reducing the speed of movement of the robot arm, the robot control system causes at least a portion of the robot arm to make a second movement to the first command position. For example, in some embodiments, the second movement involves movement at a reduced speed. In some embodiments, the second movement includes a continuation of the movement in the first command. That is, in some embodiments, the robot control system allows the robot arm to follow the first command (e.g., through different conditions or through the same conditions specified in the first command).
[0284] In some embodiments, the robot control system generates and outputs (or causes an output of) a notification regarding the second movement (758).
[0285] In some embodiments, generating and outputting a notification regarding the second movement includes causing the notification to be output (e.g., provided) to the user as haptic feedback (760).
[0286] In some embodiments, the robotic control system allows the robotic arm to follow commands but indicates an external collision to the user via haptics in some way, for example, the system can increase the attenuation of the HID during movement in the direction of the collision.
[0287] In some embodiments, the robotic control system generates (or causes the robotic medical system to generate) a spring-like force (or increase the resistance of the input control on the HID) to push the HID away from the collision. In some embodiments, the intensity of the haptic effect can be a function of the estimated external collision force. This notifies the user that there is a collision, but allows the user to walk through the collision if they deem it necessary.
[0288] 11A and 11B illustrate a flowchart diagram of method 800 executed by one or more processors (e.g., processor 380) of a surgical robot (e.g., a robotic control system or robotic medical system such as robotic medical system 200 or robotic medical system 400). In some embodiments, the robotic system includes a robotic arm. In some embodiments, the surgical instrument is configured to be mounted on the robotic arm of the surgical robot. The robotic control system includes a memory (e.g., memory 382) that stores instructions for execution by the one or more processors. Additional details of method 800 can be found in FIGS. 1-10D and the accompanying description and will not be repeated for the sake of brevity.
[0289] The surgical robot estimates (802) external forces applied to the surgical instrument during teleoperation while the surgical instrument or robotic arm is in motion.
[0290] In some embodiments, the external force is applied (804) through contact with at least one of another surgical instrument, another robotic arm, an operating table, a medical device, a patient, or medical personnel.
[0291] In some embodiments, the movement of the surgical instrument or robotic arm is driven by at least one of a plurality of actuators 806. Estimating the external force includes calculating a motor torque in each of the plurality of actuators based on a motor current and a gear ratio.
[0292] In some embodiments, the motor torque includes a normal torque for remote manipulation and an external torque to balance an external force (808).
[0293] In some embodiments, the normal torques for remote manipulation include one or more of a gravity compensation torque, a dynamic torque to balance inertia and the Coriolis effect, a friction torque, a remote center of motion (RCM) torque, and a tissue loading torque (810).
[0294] In some embodiments, an external torque that balances the external force is estimated (812) based on one or more of the calculated motor torque, the attitude, velocity and acceleration of the robotic arm and surgical instrument, the maximum expected RCM torque, and the maximum expected RCM torque.
[0295] In some embodiments, the force is estimated at a tool tip of the surgical instrument (814).
[0296] The surgical robot pauses (816) movement of the surgical instrument or robotic arm in response to detecting that the external force exceeds the first threshold.
[0297] The surgical robot reduces the velocity of the surgical instrument or robotic arm in response to detecting a second threshold of applied force that is less than the first threshold.
[0298] In some embodiments, the first and second thresholds are predetermined (820).
[0299] In some embodiments, at least one of the first threshold and the second threshold is determined in real time based on one or more of the pose, velocity, and acceleration of the surgical instrument or the robotic arm (822).
[0300] In some embodiments, the surgical robot (e.g., one or more processors) gradually reduces the motion of the surgical instrument or robotic arm (824) according to a smooth curve (e.g., a smooth mathematical relationship (e.g., a mathematical function or equation)).
[0301] In some embodiments, the surgical robot (e.g., one or more processors) is further configured to output a notification upon detecting an external force exceeding the first threshold or the second threshold, the notification comprising haptic feedback and / or an audiovisual warning (826).
[0302] 12A and 12B illustrate a flowchart diagram of method 900. In some embodiments, method 900 is performed by one or more processors (e.g., processor 380) of a robotic control system or robotic medical system (e.g., robotic medical system 200 or robotic medical system 400). The robotic control system includes a memory (e.g., memory 382) that stores instructions for execution by the one or more processors. Additional details of method 900 can be found in FIGS. 1-11B and the accompanying description and will not be repeated for the sake of brevity.
[0303] The robotic control system estimates 902 external forces applied to locations on the surgical manipulator while the surgical manipulator is moving during telerobotic surgery.
[0304] In some embodiments, the external force is caused by contact with other objects around the surgical manipulator (904).
[0305] In some embodiments, the external force is estimated based on the difference between the actual force and the maximum expected force of the telerobotic surgery at the location on the surgical manipulator (906).
[0306] In some embodiments, the locations on the surgical manipulator for estimating the external forces include the tool tip, the tool shaft, the tool stage, the tool driver, and any location on the robotic arm (908).
[0307] The robot control system determines whether the external force is excessive by comparing the external force to a deceleration force threshold (910).
[0308] In some embodiments, the deceleration threshold is predetermined (912) or determined in real time based on the pose and / or motion state of the surgical manipulator.
[0309] In response to determining that the external force is excessive, the robotic control system slows (914) the motion of the surgical manipulator and generates (916) a notification of the excessive external force.
[0310] In some embodiments, the notification regarding the excessive force includes haptic feedback and / or an audiovisual warning (918).
[0311] 12B, in some embodiments, the method 900 includes determining whether the external force is excessive beyond a stopping force threshold that is higher than the deceleration force threshold (920). In some embodiments, in response to determining that the external force is excessive beyond the stopping threshold, the robotic control system stops motion of the surgical manipulator (922) and generates a notification regarding the excessive external force (924).
[0312] In some embodiments, the method 900 includes repeating (926) the steps of (i) estimating the external force at a location on the surgical manipulator and (ii) decelerating the motion of the surgical manipulator until the external force at the location falls below a deceleration threshold.
[0313] 13 illustrates a flowchart diagram of method 1000. In some embodiments, method 1000 is performed by one or more processors (e.g., processor 380) of a robotic control system or robotic medical system (e.g., robotic medical system 200 or robotic medical system 400). The robotic control system includes a memory (e.g., memory 382) that stores instructions for execution by the one or more processors. Additional details of method 1000 can be found in FIGS. 1-12B and the accompanying description and will not be repeated for the sake of brevity.
[0314] The robotic control system estimates 1002 external forces exerted on locations on the robotic manipulator while the robotic manipulator is moving during teleoperated surgery. In some embodiments, the external forces are caused by contact with other objects in the robotic manipulator's surroundings.
[0315] The robot control system determines 1004 whether the external force exceeds a safety threshold; and
[0316] The robot control system stops 1006 motion of the robot manipulator in response to determining that the external force exceeds a safety threshold.
[0317] The robot control system generates 1008 a notification including haptic feedback and / or an audiovisual warning regarding the external force exceeding a safety threshold.
[0318] 3. Implementation system and terminology FIG. 14 is a schematic diagram illustrating electronic components of a medical robotic system (e.g., a surgical robotic system), according to some embodiments.
[0319] The robotic medical system (e.g., a surgical robotic system) includes one or more processors 380 in communication with a computer-readable storage medium 382 (e.g., computer memory devices such as random access memory, read-only memory, static random access memory, and non-volatile memory, as well as other storage devices such as hard drives, optical disks, magnetic tape recordings, or any combination thereof) that stores instructions for performing any of the methods described herein (e.g., the operations described with respect to FIGS. 1, 2, 3A, 3B, 4, 5, 6A, 6B, 6C, 7A, 7B, 8, 9, 10A, 10B, 10C, 10D, 11A, 11B, 12A, 12B, and 13). The one or more processors 380 are also in communication with an input / output controller 384 (via a system bus or any suitable electrical circuitry). The input / output controller 384 receives sensor data from one or more sensors 388-1, 388-2, etc. and relays the sensor data to one or more processors 380. The input / output controller 384 also receives instructions and / or data from the one or more processors 380 and relays the instructions and / or data to one or more actuators, such as first motors 387-1 and 387-2. In some embodiments, the input / output controller 384 is coupled to one or more actuator controllers 386 and provides instructions and / or data to at least a subset of the one or more actuator controllers 386, which in turn provide control signals to selected actuators. In some embodiments, one or more actuator controllers 386 are integrated with the input / output controller 384, which provides control signals directly to one or more actuators 387 (without a separate actuator controller).FIG. 14 shows that there is one actuator controller 386 (e.g., one actuator controller for the entire medical robotic system), but in some embodiments, additional actuator controllers may be used (e.g., one actuator controller for each actuator, etc.). In some embodiments, the one or more processors 380 are in communication with one or more displays 381 for displaying information, as described herein.
[0320] It should be noted that, as used herein, the terms "couple," "coupled," "coupled," or other variations of the word coupled, can indicate either an indirect connection or a direct connection. For example, when a first component is "coupled" to a second component, the first component can be either indirectly connected to the second component through another component, or directly connected to the second component.
[0321] The functionality for determining whether a tool is within or outside the surgical field of view provided by a camera or scope and for rendering one or more indicators representing the position or orientation of one or more medical tools described herein may be stored as a processor-readable medium or one or more instructions on a computer-readable medium. The term "computer-readable medium" refers to any available medium that can be accessed by a computer or processor. By way of example, and not limitation, such media may include random access memory (RAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory, compact disc read-only memory (CD-ROM), or other optical, magnetic, or other magnetic storage devices, or any other medium that can be used to store desired program code in the form of instructions or data structures and that can be accessed by a computer. Note that computer-readable media may be tangible and non-transitory. As used herein, the term "code" may refer to software, instructions, code, or data that is executable by a computing device or processor.
[0322] The methods disclosed herein include one or more steps or actions for achieving the described method. Method steps and / or actions may be interchanged with one another without departing from the scope of the claims. In other words, unless a specific order of steps or actions is required for the proper operation of the described method, the order and / or use of specific steps and / or actions may be modified without departing from the scope of the claims.
[0323] As used herein, the term "plurality" refers to two or more. For example, a plurality of elements refers to two or more elements. The term "determining" encompasses a wide variety of acts, and thus, "determining" can include calculating, computing, processing, deriving, investigating, looking up (e.g., referring to a table, database, or another data structure), ascertaining, and the like. "Determining" can also include receiving (e.g., receiving information), accessing (e.g., accessing data in a memory), and the like. "Determining" can also include resolving, selecting, electing, establishing, and the like.
[0324] The phrase "based on" does not mean "based only on," unless expressly specified otherwise. In other words, the phrase "based on" describes both "based only on" and "based at least on."
[0325] As used herein, the term "exemplary" means "serving as an example, instance, or illustration" and does not necessarily imply any preference or superiority of the example over any other configurations or implementations.
[0326] As used herein, the term "and / or" includes any combination of the listed elements. For example, "A, B, and / or C" includes the following sets of elements: A only, B only, C only, A and B without C, A and C without B, B and C without A, and combinations of all three elements A, B, and C.
[0327] The previous description of the disclosed embodiments is provided to enable any person skilled in the art to make or use the present invention. Various modifications to these embodiments will be readily apparent to those skilled in the art, and the general principles defined herein may be applied to other embodiments without departing from the scope of the present invention. For example, those skilled in the art will recognize that many corresponding alternative and equivalent structural details may be employed, such as similar manners for fastening, mounting, coupling, or engaging tool components, equivalent mechanisms for producing specific actuation motions, and equivalent mechanisms for delivering electrical energy. Thus, the present invention is not intended to be limited to the embodiments shown herein but is to be accorded the widest scope consistent with the principles and novel features disclosed herein.
[0328] [Embodiment] (1) A surgical robot, a surgical instrument configured to mount on a robotic arm; and a processor, the processor comprising: estimating external forces applied to the surgical instrument during teleoperation while the surgical instrument or the robotic arm is in motion; pausing the movement of the surgical instrument or the robotic arm in response to detecting the external force exceeding a first threshold; and a surgical robot configured to reduce a velocity of the surgical instrument or the robotic arm in response to detecting the external force exceeding a second threshold that is lower than the first threshold. (2) A surgical robot as described in embodiment 1, wherein the external force is applied through contact with at least one of another surgical instrument, another robotic arm, an operating table, a medical device, a patient, or medical personnel. (3) the movement of the surgical instrument or the robotic arm is driven by at least one of a plurality of actuators; and A surgical robot as described in embodiment 1, wherein estimating the external force includes calculating a motor torque in each of the plurality of actuators based on a motor current and a gear ratio. (4) A surgical robot according to embodiment 3, wherein the motor torque includes a normal torque for remote operation and an external torque that balances the external force. (5) The normal torque for the remote control is: Gravity compensation torque, Dynamic torque to balance inertia and Coriolis effect, Friction torque, Remote Center of Motion (RCM) torque, and tissue load torque, A surgical robot according to embodiment 4, comprising one or more of the following:
[0329] (6) The external torque that balances the external force is the calculated motor torque; the attitude, velocity, and acceleration of the robotic arm and the surgical instrument; Maximum expected RCM torque, and maximum expected tissue load torque, A surgical robot as described in embodiment 5, which is estimated based on one or more of the following: (7) A surgical robot as described in embodiment 1, wherein the external force is estimated at the tool tip of the surgical instrument. (8) A surgical robot as described in embodiment 1, wherein the processor is further configured to gradually reduce the movement of the surgical instrument or the robotic arm according to a smooth curve. (9) A surgical robot as described in embodiment 1, wherein the first threshold and the second threshold are predetermined. (10) A surgical robot as described in embodiment 1, wherein at least one of the first threshold and the second threshold is determined in real time based on one or more of the attitude, velocity, and acceleration of the surgical instrument or the robot arm.
[0330] (11) The surgical robot of embodiment 1, wherein the processor is further configured to output a notification upon detecting the external force exceeding the first threshold or the second threshold, the notification including tactile feedback and / or an audiovisual warning. (12) A computer-implemented method comprising: estimating external forces applied to locations on a surgical manipulator while the surgical manipulator is moving during telerobotic surgery; determining whether the external force is excessive by comparing the external force with a deceleration force threshold; In response to determining that the external force is excessive, slowing the motion of the surgical manipulator; generating a notification regarding the excessive external force; 11. A computer-implemented method comprising: (13) The computer-implemented method of claim 12, wherein the external force is caused by contact with other objects surrounding the surgical manipulator. (14) The computer-implemented method of claim 12, wherein the external force is estimated based on the difference between the actual force and the expected maximum force for teleoperated robotic surgery at the position on the surgical manipulator. (15) A computer-implemented method as described in embodiment 12, wherein the positions on the surgical manipulator for estimating the external force include any position on the tool tip, tool shaft, tool stage, tool driver, and robot arm.
[0331] (16) The computer-implemented method of embodiment 12, wherein the deceleration threshold is determined in advance or in real time based on the posture and / or motion state of the surgical manipulator. (17) determining whether the external force is excessive beyond a stopping force threshold that is higher than a deceleration force threshold; In response to determining that the external force exceeds the stop threshold and is excessive, stopping the motion of the surgical manipulator; generating a notification regarding the excessive external force; 13. The computer-implemented method of claim 12, further comprising: (18) The computer-implemented method of claim 12, further comprising repeating the steps of (i) estimating the external force at the location on the surgical manipulator and (ii) decelerating the motion of the surgical manipulator until the external force at the location falls below the deceleration threshold. (19) The computer-implemented method of claim 12, wherein the notification regarding the excessive external force includes haptic feedback and / or an audiovisual warning. (20) A non-transitory computer-readable storage medium storing computer-executable instructions, the computer-executable instructions, when executed by one or more processors of a robotic control system, causing the one or more processors to: Estimating external forces applied to a position on a robotic manipulator while the robotic manipulator is moving during teleoperated surgery, the external forces being caused by contact with other objects in the robotic manipulator's surroundings; determining whether the external force exceeds a safety threshold; in response to determining that the external force exceeds the safety threshold; stopping the motion of the robotic manipulator; generating a notification including haptic feedback and / or an audiovisual warning regarding the external force exceeding the safety threshold; 10. A non-transitory computer-readable storage medium for performing operations, comprising:
Claims
1. A surgical robot, a surgical instrument configured to mount on a robotic arm; and a processor, the processor comprising: estimating external forces applied to the surgical instrument during teleoperation while the surgical instrument or the robotic arm is in motion; pausing the movement of the surgical instrument or the robotic arm in response to detecting the external force exceeding a first threshold; and a surgical robot configured to reduce a velocity of the surgical instrument or the robotic arm in response to detecting the external force exceeding a second threshold that is lower than the first threshold.
2. 10. The surgical robot of claim 1, wherein the external force is applied through contact with at least one of another surgical instrument, another robotic arm, an operating table, a medical device, a patient, or medical personnel.
3. the movement of the surgical instrument or the robotic arm is driven by at least one of a plurality of actuators; and The surgical robot of claim 1 , wherein estimating the external force includes calculating a motor torque in each of the plurality of actuators based on a motor current and a gear ratio.
4. The surgical robot according to claim 3 , wherein the motor torque includes a normal torque for remote operation and an external torque that balances the external force.
5. The normal torque for the remote operation is: Gravity compensation torque, Dynamic torque to balance inertia and Coriolis effect, Friction torque, Remote Center of Motion (RCM) torque, and tissue load torque, The surgical robot of claim 4 , comprising one or more of:
6. The external torque that balances the external force is the calculated motor torque; the attitude, velocity, and acceleration of the robotic arm and the surgical instrument; Maximum expected RCM torque, and maximum expected tissue load torque, The surgical robot of claim 5 , wherein the estimated value is based on one or more of:
7. The surgical robot of claim 1 , wherein the external force is estimated at a tool tip of the surgical instrument.
8. The surgical robot of claim 1 , wherein the processor is further configured to gradually reduce the motion of the surgical instrument or the robotic arm according to a smooth curve.
9. The surgical robot of claim 1 , wherein the first threshold and the second threshold are predetermined.
10. 10. The surgical robot of claim 1, wherein at least one of the first threshold and the second threshold is determined in real time based on one or more of a pose, a velocity, and an acceleration of the surgical instrument or the robotic arm.
11. 10. The surgical robot of claim 1, wherein the processor is further configured to output a notification upon detecting the external force exceeding the first threshold or the second threshold, the notification comprising haptic feedback and / or an audiovisual warning.
12. 1. A computer-implemented method comprising: estimating external forces applied to locations on a surgical manipulator while the surgical manipulator is moving during telerobotic surgery; determining whether the external force is excessive by comparing the external force with a deceleration force threshold; In response to determining that the external force is excessive, slowing the motion of the surgical manipulator; generating a notification regarding the excessive external force; 11. A computer-implemented method comprising:
13. The computer-implemented method of claim 12 , wherein the external force is caused by contact with other objects in the surgical manipulator's surroundings.
14. 13. The computer-implemented method of claim 12, wherein the external force is estimated based on a difference between an actual force and an expected maximum force for telerobotic surgery at the location on the surgical manipulator.
15. 13. The computer-implemented method of claim 12, wherein the positions on the surgical manipulator for estimating the external force include any position on a tool tip, a tool shaft, a tool stage, a tool driver, and a robotic arm.
16. The computer-implemented method of claim 12 , wherein the deceleration threshold is predetermined or determined in real time based on a pose and / or motion state of the surgical manipulator.
17. determining whether the external force is excessive by exceeding a stopping force threshold that is higher than a deceleration force threshold; In response to determining that the external force exceeds the stop threshold and is excessive, stopping the motion of the surgical manipulator; generating a notification regarding the excessive external force; The computer-implemented method of claim 12 further comprising:
18. 13. The computer-implemented method of claim 12, further comprising repeating the steps of: (i) estimating the external force at the location on the surgical manipulator; and (ii) decelerating the motion of the surgical manipulator until the external force at the location falls below the deceleration threshold.
19. The computer-implemented method of claim 12 , wherein the notification of the excessive external force comprises haptic feedback and / or an audiovisual warning.
20. A non-transitory computer-readable storage medium storing computer-executable instructions that, when executed by one or more processors of a robotic control system, cause the one or more processors to: Estimating external forces applied to a position on a robotic manipulator while the robotic manipulator is moving during teleoperated surgery, the external forces being caused by contact with other objects in the robotic manipulator's surroundings; determining whether the external force exceeds a safety threshold; in response to determining that the external force exceeds the safety threshold; stopping the motion of the robotic manipulator; generating a notification comprising haptic feedback and / or an audiovisual warning regarding the external force exceeding the safety threshold; 10. A non-transitory computer-readable storage medium for performing operations, comprising: