IP Library Granted Patent US 11,292,127
Granted Patent B2
US 11,292,127 · App. 16/256,642 · Granted Apr 5, 2022

Robot control

Inventors: Edward John Mottram (Cambridge, GB); Gordon Thomas Deane (Cambridge, GB); Edward Tucker (Cambridge, GB); Graham Veitch (Cambridge, GB); Paul Christopher Roberts (Cambridge, GB)
Assignee: CMR Surgical Limited
B25J9/1638B25J9/1628B25J9/1633B25J13/085G05B2219/37357G05B2219/39188G05B2219/39338G05B2219/39342G05B2219/39343G05B2219/39346G05B2219/39347G05B2219/39348G05B2219/39351G05B2219/42016
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,292,127
App. No.
16/256,642
Granted
Apr 5, 2022
Kind
B2
Abstract

A method for controlling a mechanical system having a plurality of components interlinked by a plurality of driven joints, the method comprising: measuring torques or forces about or at the driven joints and forming a load signal representing the measured torques or forces; receiving a motion demand signal representing a desired state of the system; implementing an impedance control algorithm in dependence on the motion demand signal and the load signal to form a target signal indicating a target configuration for each of the driven joints; measuring the configuration of each of the driven joints and forming a state signal representing the measured configurations; and forming a set of drive signals for the joints by, for each joint, comparing the target configuration of that joint as indicated by the target signal to the measured configuration of that joint as indicated by the state signal.

Claims (44)

1. A method of controlling a mechanical system having a plurality of components interlinked by a plurality of driven joints, the method comprising:

measuring the torques or forces about or at the driven joints and forming a load signal representing the measured torques or forces;

receiving a motion demand signal representing a desired state of the system;

implementing an impedance control algorithm, comprising solving an ordinary differential equation which has inputs of the motion demand signal and the load signal, to form a target signal indicating a target configuration for each of the driven joints;

measuring the configuration of each of the driven joints and forming a state signal representing the measured configurations; and

forming a set of drive signals for the joints by, for each joint, comparing the target configuration of that joint as indicated by the target signal to the measured configuration of that joint as indicated by the state signal.

2. A method as claimed in claim 1 , comprising driving each of the driven joints in dependence on the respective drive signal.

3. A method as claimed in claim 2 , wherein each of the driven joints is provided with a respective electric motor configured to drive motion at the joint and each drive signal is applied to the respective electric motor.

4. A method as claimed in claim 2 , comprising repeatedly performing the second measuring step, the forming step and the driving step.

5. A method as claimed in claim 4 , wherein the step of forming the set of drive signals is performed at higher frequency than the step of forming the target signal.

6. A method as claimed in claim 1 , wherein implementing the impedance control algorithm comprises solving the ordinary differential equation from inputs of, for each driven joint, a respective mass, damper and spring term.

7. A method as claimed in claim 1 , wherein the motion demand signal represents a desired configuration for each of the driven joints.

8. A method as claimed in claim 7 , comprising:

receiving a primary motion demand signal representing a desired physical position of a part of the mechanical system;

performing an inverse kinematic computation to determine a configuration for each of the driven joints that would position the part of the mechanical system at the desired physical position; and

providing the determined configurations as the motion demand signal.

9. A method as claimed in claim 6 , comprising:

receiving data representing desired impedance characteristics for the physical system in a first coordinate space; and

converting that data to, for each driven joint, a respective mass, damper and spring term.

10. A method as claimed in claim 9 , wherein the first coordinate space is a non-Cartesian coordinate space, a topological space or a vector space.

11. A method as claimed in claim 1 , wherein the impedance control algorithm is implemented in joint space.

12. A method as claimed in claim 1 , wherein the motion demand signal represents a desired physical position of a part of the mechanical system.

13. A method as claimed in claim 12 , wherein the said step of implementing the impedance control algorithm comprises:

solving the ordinary differential equation to determine a target physical position of the part of the mechanical system;

performing an inverse kinematic computation to determine a configuration for each of the driven joints that is suitable for positioning the part of the mechanical system at the target physical position; and

forming the target signal as indicating those configurations as the target configurations for the driven joints.

14. A method as claimed in claim 13 , comprising:

specifying information indicating a desired configuration of the mechanical system; and

the step of performing an inverse kinematic computation is performed so as to determine a configuration for each of the driven joints that is suitable for positioning the part of the mechanical system at the target physical position and satisfying the desired configuration indicated by the information.

15. A method as claimed in claim 1 , comprising converting the measured torques or forces about or at the driven joints to a first coordinate space different from the space in which the torques or forces were measured so as to form the load signal.

16. A method as claimed in claim 15 , wherein the first coordinate space is a non-Cartesian space, a topological space or a vector space.

17. A method as claimed in claim 1 , wherein the mechanical system is a robot manipulator or a surgical robot.

18. A controller for a mechanical system, the controller being configured to perform a method comprising:

measuring the torques or forces about or at the driven joints and forming a load signal representing the measured torques or forces; receiving a motion demand signal representing a desired state of the system;

implementing an impedance control algorithm, comprising solving an ordinary differential equation which has inputs of the motion demand signal and the load signal, to form a target signal indicating a target configuration for each of the driven joints;

measuring the configuration of each of the driven joints and forming a state signal representing the measured configurations; and

forming a set of drive signals for the joints by, for each joint, comparing the target configuration of that joint as indicated by the target signal to the measured configuration of that joint as indicated by the state signal.

19. A robot manipulator comprising the controller as claimed in claim 18 , the manipulator further comprising a plurality of components interlinked by a plurality of driven joints, wherein the controller is configured to control the manipulator by the method of 21 .

20. A non-transitory computer readable storage medium having stored thereon computer readable instructions that, when executed at a computer system, cause the computer system to perform a method for controlling a mechanical system having a plurality of components interlinked by a plurality of driven joints, wherein the method comprises:

measuring the torques or forces about or at the driven joints and forming a load signal representing the measured torques or forces;

receiving a motion demand signal representing a desired state of the system; implementing an impedance control algorithm, comprising solving an ordinary differential equation which has inputs of the motion demand signal and the load signal, to form a target signal indicating a target configuration for each of the driven joints;

measuring the configuration of each of the driven joints and forming a state signal representing the measured configurations; and

forming a set of drive signals for the joints by, for each joint, comparing the target configuration of that joint as indicated by the target signal to the measured configuration of that joint as indicated by the state signal.

21. A method as claimed in claim 1 , wherein implementing the impedance control algorithm comprises solving an ordinary differential equation which has inputs of only the motion demand signal, the load signal and impedance parameters, the impedance parameters comprising mass, damper and spring terms.

Assignments (3)
SECURITY INTEREST Recorded Mar 25, 2025
From: CMR SURGICAL LIMITED
To: TRINITY CAPITAL INC., AS AGENT
Reel/Frame 070629/0172 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 21, 2019
From: MOTTRAM, EDWARD JOHN; DEANE, GORDON THOMAS; TUCKER, EDWARD; VEITCH, GRAHAM; ROBERTS, PAUL CHRISTOPHER
To: CAMBRIDGE MEDICAL ROBOTICS LIMITED
Reel/Frame 048391/0425 →
CHANGE OF NAME Recorded Feb 21, 2019
From: CAMBRIDGE MEDICAL ROBOTICS LIMITED
To: CMR SURGICAL LIMITED
Reel/Frame 048391/0761 →
Priority Claims (1)
GB 1605108 · Mar 24, 2016 · national
Continuity (2)
Continuation 15466984 · Mar 23, 2017
Related Publication 20190152056A1 · May 23, 2019