IP Library Granted Patent US 9,889,565
Granted Patent B2
US 9,889,565 · App. 15/320,591 · Granted Feb 13, 2018

Method for calibrating a robot and a robot system

Inventor: Ivan Lundberg (Västerås, SE)
Assignee: ABB Schweiz AG
B25J9/1692B25J9/1697G05B19/401G05B2219/39024
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 9,889,565
App. No.
15/320,591
Granted
Feb 13, 2018
Kind
B2
Abstract

A system for calibrating a robot having a movable part with a calibration marker including: positioning the calibration marker along an optical line of a camera unit; imaging the calibration marker along the optical line to establish line positions P 1 . . . P N within a tolerance k, while monitoring joint values j 1 . . . j M of the robot; establishing an error function based on resulting calculated robot positions P′ 1 . . . P′ N , for the calibration marker for joint values j 1 . . . j M at each line position P 1 . . . P N for the calibration marker; identifying a set of robot kinematic parameters by solving an optimization problem based on the error function; and updating a kinematic model of the robot via the identified set of robot kinematic parameters.

Claims (34)

1. A method for calibrating a robot, wherein the robot includes a movable part with a calibration marker, the method comprising:

positioning the calibration marker, with a robot controller, in a plurality of positions along an optical line of a camera unit;

imaging the calibration marker, with the camera unit, at the plurality of positions along the optical line to establish line positions P 1 . . . P N of the calibration marker along the optical line within a tolerance k, while monitoring joint values j 1 . . . j M of the robot;

establishing an error function based on resulting calculated robot positions P′ 1 . . . P′ N for the calibration marker for joint values j 1 . . . j M at each line position P 1 . . . P N for the calibration marker;

identifying a set of robot kinematic parameters by solving an optimization problem based on the error function; and

updating a kinematic model of the robot using the identified set of robot kinematic parameters.

2. The method according to claim 1 , comprising positioning the calibration marker with a unique orientation of the robot in at least some of the line positions P 1 . . . P N of the calibration marker.

3. The method according to claim 2 , comprising performing an iterative process to cause the robot to position the calibration marker along the optical line within the tolerance to establish a line position P k of the calibration marker.

4. The method according to claim 2 , comprising calculating an error between a position of the calibration marker in an image plane of a camera unit imaging the calibration marker and a position of the optical line in the image plane of the camera unit, compare the error with the tolerance and adjusting the position of the calibration marker based on the result of the comparison in order to establish a line position P k of the calibration marker.

5. The method according to claim 2 , wherein the error function is calculating a line fitting the resulting calculated robot positions P . . . P, for the calibration marker.

6. The method according to claim 2 , wherein solving the optimization problem includes minimizing an error of the error function.

7. The method according to claim 2 , wherein the number N of positions for the calibration marker is at least six.

8. The method according to claim 1 , comprising performing an iterative process to cause the robot to position the calibration marker along the optical line within the tolerance to establish a line position P k of the calibration marker.

9. The method according to claim 1 , comprising calculating an error between a position of the calibration marker in an image plane of a camera unit imaging the calibration marker and a position of the optical line in the image plane of the camera unit, compare the error with the tolerance and adjusting the position of the calibration marker based on the result of the comparison in order to establish a line position P k of the calibration marker.

10. The method according to claim 1 , wherein the error function is calculating a line fitting the resulting calculated robot positions P′ 1 . . . P′ N for the calibration marker.

11. The method according to claim 10 , wherein the error function is based on minimizing the distance of the resulting calculated robot positions P′ 1 . . . P′ N for the calibration marker to the line.

12. The method according to claim 1 , wherein solving the optimization problem includes minimizing an error of the error function.

13. The method according to claim 1 , wherein the number N of positions for the calibration marker is at least six.

14. A method of using a robot controller including:

positioning the calibration marker, with the robot controller, in a plurality of positions along an optical line of a camera unit;

imaging the calibration marker, with the camera unit, at the plurality of positions along the optical line to establish line positions P 1 . . . P N of the calibration marker along the optical line within a tolerance k, while monitoring joint values j 1 . . . j M of the robot;

establishing an error function based on resulting calculated robot positions P′ 1 . . . P′ N for the calibration marker for joint values j 1 . . . j M at each line position P 1 . . . P N for the calibration marker;

identifying a set of robot kinematic parameters by solving an optimization problem based on the error function; and

updating a kinematic model of the robot using the identified set of robot kinematic parameters.

15. A robot system comprising

a robot with a movable part with a calibration marker;

a robot controller with a kinematic model of the robot, wherein the robot controller is arranged to control the movable part in a three-dimensional space based on control input;

a camera unit that is arranged to capture images of the calibration marker on the movable part;

wherein that the robot system is arranged to

position the calibration marker, with the robot controller, in a plurality of positions along an optical line of the camera unit;

image the calibration marker, with the camera unit, at the plurality of positions along the optical line to establish line positions P 1 . . . P N of the calibration marker along the optical line within a tolerance, while monitoring joint values j 1 . . . j M of the robot;

establish an error function based on resulting calculated robot positions P′ 1 . . . P′ N for the calibration marker for joint values j 1 . . . j M at each line position P 1 . . . P N for the calibration marker;

identify a set of robot kinematic parameters by solving an optimization problem based on the error function; and

update the kinematic model of the robot using the identified set of robot kinematic parameters.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 17, 2017
From: LUNDBERG, IVAN
To: ABB TECHNOLOGY LTD
Reel/Frame 041618/0554 →
MERGER Recorded Mar 17, 2017
From: ABB TECHNOLOGY LTD
To: ABB SCHWEIZ AG
Reel/Frame 042038/0231 →
Continuity (1)
Related Publication 20170157770A1 · Jun 8, 2017