# US 12,179,359 B2 · Disturbance compensation in computer-assisted devices

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 12,179,359 B2
- Document ID: US12179359B2
- Status: Granted
- Kind: B2
- Application number: 18/474,388
- Filed: 2023-09-26
- Published: 2024-01-11
- Granted: 2024-12-31
- Earliest claimed: 2014-10-27
- Assignees: Intuitive Surgical Operations, Inc.
- Applicants: Intuitive Surgical Operations, Inc.
- Inventors: Nitish Swarup; Paul G. Griffiths; Goran A. Lynch; Daniel N. Miller
- Web page: https://patentgrep.com/patent/US12179359B2

## CPC

- B25J 9/1641: {compensation for backlash, friction, compliance, elasticity in the joints}
- A61B 34/30: Surgical robots
- B25J 9/06: characterised by multi-articulated arms
- B25J 9/1607: {Calculation of inertia, jacobian matrixes and inverses}
- B25J 9/1653: {parameters identification, estimation, stiffness, accuracy, error analysis}
- B25J 9/1682: {Dual arm manipulator; Coordination of several manipulators}
- B25J 19/0004: {Braking devices (brakes in general F16D)}
- B25J 19/021: {Optical sensing devices}
- A61B 34/35: for telesurgery
- A61B 90/361: {Image-producing devices, e.g. surgical cameras}
- A61B 2034/2059: {Mechanical position encoders}
- A61B 2034/305: {Details of wrist mechanisms at distal ends of robotic arms}
- A61B 2090/373: {using light, e.g. by using optical scanners}
- A61B 2090/508: {with releasable brake mechanisms}
- Y10S 901/02: Arm motion controller
- B25J: MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES ({manipulators specially adapted for use in surgery A61B34/70; manipulators used in cleaning hollow articles B08B9/04}; manipulators associated with rolling mills B21B39/20; manipulators associated with forging machines B21J13/10; {manipulators associated with picking-up and placing mechanisms B23P19/007}; means for holding wheels or parts thereof B60B30/00; {vehicles with ground-engaging propulsion means, e.g. walking members B62D57/02, B62D57/032; devices for picking-up and depositing articles or materials between conveyors B65G47/90, B65G47/91; manipulators with gripping or holding means for transferring packages B65H67/065}; cranes B66C; {manipulators used in the protection or supervision of pipe-line installations F17D5/00; walking equipment adapted for nuclear steam-generators F22B37/006}; manipulators specially adapted for, or associated with, nuclear reactors G21C; {apparatus used for handling wafers during manufacture or treatment of semiconductor H10P72/50})
- A61B: DIAGNOSIS; SURGERY; IDENTIFICATION (usefulness limited to only animals A61D)
- Y10S: TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS

## Abstract

Disturbance compensation in computer-assisted devices include an articulated arm comprising one or more first joints and one or more second joints and one or more processors coupled to the articulated arm. The articulated arm is configured to support an end effector. The one or more processors when executing instructions are configured to: detect a disturbance to the one or more first joints, the disturbance causing a point of interest associated with the end effector to move; determine a predicted motion of the point of interest based on the detected disturbance; and drive the one or more second joints to move the point of interest based on an error in a position of the point of interest indicated by the predicted motion.

## Claims

### Claim 1

A computer-assisted device comprising:
an articulated arm comprising one or more first joints and one or more second joints, the articulated arm being configured to support an end effector; and
one or more processors coupled to the articulated arm, wherein the one or more processors when executing instructions are configured to:
detect a disturbance to the one or more first joints, the disturbance causing a point of interest associated with the end effector to move;
determine a predicted motion of the point of interest based on the detected disturbance; and
drive the one or more second joints to move the point of interest based on an error in a position of the point of interest indicated by the predicted motion.

### Claim 2 (depends on 1)

The computer-assisted device of claim 1, wherein driving the one or more second joints to move the point of interest based on the error in the position of the point of interest moves the point of interest in a direction opposite to the predicted motion.

### Claim 3 (depends on 1)

The computer-assisted device of claim 1, wherein to determine the predicted motion, the one or more processors when executing the instructions are configured to:
determine a first transform, the first transform being a transform between two coordinate frames spanning the one or more first joints before the disturbance;
determine a second transform, the second transform being a transform between two coordinate frames spanning the one or more second joints before the disturbance;
determine a third transform, the third transform being a transform between two coordinate frames spanning the one or more first joints after the disturbance; and
determine the predicted motion of the point of interest by: calculating a difference between a first positional determination based on the first transform and the second transform and a second positional determination based on the third transform and the second transform.

### Claim 4 (depends on 1)

The computer-assisted device of claim 1, wherein the one or more processors when executing the instructions are further configured to:
determine an error corrected predicted motion of the point of interest by: scaling a translational movement portion of the predicted motion of the point of interest with a first scale factor.

### Claim 5 (depends on 4)

The computer-assisted device of claim 4, wherein to determine the error corrected predicted motion of the point of interest, the one or more processors when executing the instructions are further configured to:
scale a rotational movement portion of the predicted motion of the point of interest with a second scale factor different from the first scale factor.

### Claim 6 (depends on 4)

The computer-assisted device of claim 4, wherein:
the first scale factor is between 0.80 and 0.95.

### Claim 7 (depends on 4)

The computer-assisted device of claim 4, wherein the one or more processors when executing the instructions are further configured to:
drive the one or more second joints based on the error corrected predicted motion.

### Claim 8 (depends on 1)

The computer-assisted device of claim 1, wherein to drive the one or more second joints based on the error in the position of the point of interest indicated by the predicted motion, the one or more processors when executing the instructions are configured to:
limit a velocity at which the one or more second joints are driven based on a configuration of the one or more second joints.

### Claim 9 (depends on 1)

The computer-assisted device of claim 1, wherein the one or more processors when executing the instructions are further configured to:
receive a motion command; and
drive the one or more second joints based on the motion command;
wherein the motion command comprises a desired movement of the articulated arm relative to a camera coordinate frame.

### Claim 10 (depends on 1)

The computer-assisted device of claim 1, wherein the one or more processors when executing the instructions are configured to cause the disturbance by:
a brake release of brakes of the one or more first joints;
a staggered brake release of the brakes of the one or more first joints; or
a gradual brake release of the brakes of the one or more first joints.

### Claim 11

A method of controlling a computer-assisted device, the method comprising:
detecting, by a control unit, a disturbance to one or more first joints of an articulated arm of the computer-assisted device, the disturbance causing a point of interest associated with an end effector supported by the articulated arm to move;
determining, by the control unit, a predicted motion of the point of interest based on the detected disturbance; and
driving, by the control unit, one or more second joints of the articulated arm to move the point of interest based on an error in a position of the point of interest indicated by the predicted motion.

### Claim 12 (depends on 11)

The method of claim 11, wherein driving the one or more second joints to move the point of interest based on the error in the position of the point of interest moves the point of interest in a direction opposite to the predicted motion.

### Claim 13 (depends on 11)

The method of claim 11, wherein determining the predicted motion comprises:
determining a first transform, the first transform being a transform between two coordinate frames spanning the one or more first joints before the disturbance;
determining a second transform, the second transform being a transform between two coordinate frames spanning the one or more second joints before the disturbance;
determining a third transform, the third transform being a transform between two coordinate frames spanning the one or more first joints after the disturbance; and
determining the predicted motion of the point of interest by: calculating a difference between a first positional determination based on the first transform and the second transform and a second positional determination based on the third transform and the second transform.

### Claim 14 (depends on 11)

The method of claim 11, further comprising:
determining, by the control unit, an error corrected predicted motion of the point of interest by: scaling a translational movement portion of the predicted motion of the point of interest with a first scale factor.

### Claim 15 (depends on 14)

The method of claim 14, wherein determining the error corrected predicted motion of the point of interest comprises:
scaling a rotational movement portion of the predicted motion of the point of interest with a second scale factor different from the first scale factor.

### Claim 16 (depends on 14)

The method of claim 14, furthering comprising:
driving the one or more second joints based on the error corrected predicted motion.

### Claim 17 (depends on 11)

The method of claim 11, further comprising:
receiving, by the control unit, a motion command; and
driving, by the control unit, the one or more second joints based on the motion command;
wherein the motion command comprises a desired movement of the articulated arm relative to a camera coordinate frame.

### Claim 18

A non-transitory machine-readable medium comprising a plurality of machine-readable instructions which when executed by one or more processors associated with a computer-assisted device are adapted to cause the one or more processors to perform a method comprising:
detecting a disturbance to one or more first joints of an articulated arm of the computer-assisted device, the disturbance causing a point of interest associated with an end effector supported by the articulated arm to move;
determining a predicted motion of the point of interest based on the detected disturbance; and
driving one or more second joints of the articulated arm to move the point of interest based on an error in a position of the point of interest indicated by the predicted motion.

### Claim 19 (depends on 18)

The non-transitory machine-readable medium of claim 18, wherein driving the one or more second joints to move the point of interest based on the error in the position of the point of interest moves the point of interest in a direction opposite to the predicted motion.

### Claim 20 (depends on 18)

The non-transitory machine-readable medium of claim 18, wherein determining the predicted motion comprises:
determining a first transform, the first transform being a transform between two coordinate frames spanning the one or more first joints before the disturbance;
determining a second transform, the second transform being a transform between two coordinate frames spanning the one or more second joints before the disturbance;
determining a third transform, the third transform being a transform between two coordinate frames spanning the one or more first joints after the disturbance; and
determining the predicted motion of the point of interest by: calculating a difference between a first positional determination based on the first transform and the second transform and a second positional determination based on the third transform and the second transform.
