WO2015070010A1 - Calibration system and method for calibrating industrial robot - Google Patents

Calibration system and method for calibrating industrial robot Download PDF

Info

Publication number
WO2015070010A1
WO2015070010A1 PCT/US2014/064535 US2014064535W WO2015070010A1 WO 2015070010 A1 WO2015070010 A1 WO 2015070010A1 US 2014064535 W US2014064535 W US 2014064535W WO 2015070010 A1 WO2015070010 A1 WO 2015070010A1
Authority
WO
WIPO (PCT)
Prior art keywords
industrial robot
set forth
robot
calibration
calibration system
Prior art date
Application number
PCT/US2014/064535
Other languages
French (fr)
Inventor
Ning Xi
Erick NIEVES
Biqiang DU
Original Assignee
Board Of Trustees Of Michigan State University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Board Of Trustees Of Michigan State University filed Critical Board Of Trustees Of Michigan State University
Publication of WO2015070010A1 publication Critical patent/WO2015070010A1/en

Links

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1679Programme controls characterised by the tasks executed
    • B25J9/1692Calibration of manipulator

Definitions

  • the present invention relates generally to industrial robots and, more particularly, to a calibration system and method for calibrating an industrial robot.
  • arm length, link offset, and link twist angles are related to the structural mechanics of the robot manipulator. Typically, those parameters will not change by much once the industrial robot is sent from the factory and installed in manufacturing areas. However, some kinematic model parameters (e.g. joint offset) might be affected by the assembly or the replacement of motors and encoders.
  • the present invention is a calibration system for calibrating an industrial robot.
  • the calibration system includes a focusable laser for providing a laser beam and mounted to the industrial robot and a position sensitive calibration device including at least one position sensitive device for receiving position information from the laser beam and recording position and orientation of a pose of the industrial robot and joint angles for that particular pose of the industrial robot based on the position information.
  • the calibration system also includes a controller communicating with the position sensitive calibration device for providing a kinematics error model of the industrial robot, using a non-linear iterative optimization on the kinematics error model to identify robot external parameters and joint offset parameters from the recorded joint angles, and calibrating the robot external parameters and the joint offset parameters of the industrial robot to make the industrial robot more precise and accurate.
  • the present invention is a method for calibrating an industrial robot including the steps of providing a focusable laser mounted to the industrial robot and providing a position sensitive calibration device having at least one position sensitive device (PSD).
  • PSD position sensitive device
  • the method also includes the steps of aiming a laser beam from the focusable laser at a center of the at lease one PSD to find a beam position of a pose of the industrial robot and recording joint angles for that particular pose of the industrial robot by a controller based on the beam position.
  • the method further includes the steps of providing a kinematics error model of the industrial robot for the controller, using a non-linear iterative optimization on the kinematics error model by the controller to identify robot external parameters and joint offset parameters from the recorded joint angles, and calibrating the robot external parameters and joint offset parameters of the industrial robot to make the industrial robot more precise and accurate.
  • One advantage of the present invention is that a new calibration system and method are provided for automatically calibrating industrial robots. Another advantage of the present invention is that the calibration method is not only able to compute joint offset parameters of the industrial robot, but is also capable of simultaneously calibrating the robot's frame relationship. Yet another advantage of the present invention is that the calibration system includes a new portable and wireless position sensitive calibration device. Still another advantage of the present invention is that, during the whole calibration method, the procedure of aiming a laser beam at the center of each position sensitive device (PSD) of the position sensitive calibration device only repeats twice, so the approach is simpler and less time consuming than any other previous methods. A further advantage of the present invention is that the calibration system is a simple low-cost design easy to operate by the user.
  • the calibration system is robust to external disturbances commonly found in production lines. Still a further advantage of the present invention is that the calibration system is able to be used by any industrial robot manipulator. Another advantage of the present invention is that the calibration system is a fast automatic robot calibration system compared to existing calibration systems. [ 0010 ] Other features and advantages of the present invention will be readily appreciated, as the same becomes better understood, after reading the subsequent description taken in conjunction with the accompanying drawings.
  • FIG. 1 is a perspective view of one embodiment of a calibration system, according to the present invention, illustrated in operational relationship with an industrial robot.
  • FIG. 2 is an enlarged view of a portion of the calibration system and industrial robot of FIG. 2.
  • FIG. 3 is a perspective view of a position sensitive device of the calibration system of FIG. 1.
  • FIG. 4 is a schematic view of a circuit board used for the position sensitive calibration device of FIG. 3.
  • FIG. 5 is a schematic view of the calibration system, including internal components of the position sensitive calibration device of FIG. 3 with networking details, and industrial robot of FIG. 1.
  • FIG. 6 is a screen view of a graphical user interface for the calibration system of FIGS. 2 through 5.
  • FIG. 7 is a schematic view of a triangulation technique using a laser and camera for the calibration system of FIGS. 2 through 5.
  • a calibration system 10 is shown in operational relationship with an industrial robot, generally indicated at 12.
  • the industrial robot 12 is of an AAB industrial robot type having a six degree of freedom (6-DOF) robot manipulator (IRB 120) as known in the art of industrial robots.
  • the industrial robot 12 has a base 14, a moveable body 16 mounted on the base 14, a moveable robot manipulator or arm 18 mounted on the body 16, and tool center point (TCP) 20 mounted on the arm 18.
  • TCP tool center point
  • the industrial robot 12 may be any suitable type of industrial robot.
  • the calibration system 10 can be used not only to calibrate a frame relationship, but also a joint offset of the industrial robot 12 simultaneously, thus improving speed during the whole calibration process.
  • the calibration system 10 includes a focusable laser 22, an adapter fixture 24, a camera 26, and a position sensitive calibration device (PSCD), generally indicated at 28.
  • the focusable laser 22 is of a laser pointer type.
  • the camera 26 is of a digital type.
  • the adapter fixture 24 has a generally "L" shape.
  • the focusable laser 22 is mounted on the adapter fixture 24, as well as the camera 26 via a servo motor 29.
  • the adapter fixture 24 is rigidly attached to the tool center point (TCP) 20 of the industrial robot 12 by a suitable mechanism such as fasteners 30 such that the laser beam is tuned to align its orientation toward the X-axis of the frame of the TCP 20.
  • the focusable laser 22, camera 26, and servo motor 29 are connected by cables 32 to a source of power (not shown). It should be appreciated that the focusable laser 22 produces a laser beam that is directed to the PSCD 28.
  • the PSCD 28 is shown.
  • the PSCD 28 is portable and disposed on a support surface below the TCP 20 of the industrial robot 12.
  • the PSCD 28 includes a frame 34, a mounting fixture 36 mounted on the frame 34, and at least one position sensitive device (PSD) 38, preferably a plurality of
  • PSDs 38 to perform both calibration methods to be described.
  • the PSCD 28 includes two PSDs 38 fixed with an angle between them.
  • the mounting fixture 36 includes a base portion 40 and a side portion 42 extending outwardly at an angle to the base portion 40.
  • the base portion 40 is generally rectangular in shape, but may be any suitable shape.
  • the base portion 40 is mounted to the top of the frame 34 by a suitable mechanism such as fasteners 44.
  • the base portion 40 has an aperture 46 extending therethrough to receive one PSD 38.
  • the side portion 42 has a generally triangular shape, but may be any suitable shape.
  • the side portion 42 includes an aperture 48 extending therethrough to receive one PSD 38.
  • the PSDs 38 are secured to the base portion 40 and side portion 42 by a suitable mechanism such as fasteners 50. As illustrated in FIG. 3, the angle between the PSDs
  • the PSCD 29 may also include a transparent cover
  • PSCD 28 is a wireless device to be described in connection with FIG. 5.
  • the PSDs 38 are of a segmented type used for high precision feedback.
  • the segmented PSDs 38 have a higher resolution than
  • the resolution of the segmented PSD 38 may reach approximately 2 ⁇ .
  • the calibration system 10 requires a laser beam to shoot into one PSD 38 in a way that the reflection lands into the other PSD 38. It should also be appreciated that more than one hundred twenty (120) degrees will make it difficult to find a good reflection from one PSD 38 to the other, and less than one hundred twenty (120) degrees will make the calibration system 10 less accurate. It should be appreciated that the location of the fixture 36 of the PSCD 28 is known with respect to the workpiece frame 34 of the PSCD 28 while its location with respect to the base 14 of the industrail robot (12) is unknown.
  • FIG. 4 a schematic of a circuit, generally indicated at 52, used for the PSCD 28 is shown.
  • a signal processing was designed and set up in order to test the properties of the PSDs 38. Since the active chip area of the PSDs 38 is comparatively small, the measurements had to be performed applying high precision tools to position the laser beam over the surface of the PSDs 38. Therefore, a Signatone CAP-945 high precision probe was used to acquire sufficient accuracy to calibrate the chip of the PSDs 38.
  • the purpose of this circuit 52 is to process the PSDs 38 chip raw output to be able to determine the relative 2D position of the laser beam on the surface of the PSDs 38.
  • the design can be structured into three functional stages.
  • the output signal of the four PSD electrodes 53 is amplified using operational amplifiers 54.
  • the second and third stages are used to perform the computations needed to be able to determine the spot position.
  • summing amplifiers 56 and differential amplifiers 58 are occupied to generate the input signals for the divider ICs 60 (third stage).
  • DAS data acquisition system
  • the circuit 52 is mounted on a circuit board and disposed within the frame 34 of the PSCD 28.
  • the PSCD 28 must be able to carry the signal information from the PSDs 38 to the robot controller 72 in order to control the industrial robot 12 to the desired state.
  • Figure 5 illustrates the basic internal components of the PSCD 28 as well as the interaction between the PSCD 28 and the robot controller 72.
  • the PSCD 28 includes the circuit 52 electrically connected to the PSDs 38, a universal serial bus (USB) analog to digital (A D) converter 62 electrically connected to the circuit 52, and a USB wireless hub 64 electrically connected to the USB A/D 62. After the circuit 52 receives the raw data from the two PSDs 38, the signals are taken by the wireless USB hub 64 from the USB A/D 62.
  • USB universal serial bus
  • a D analog to digital
  • the feedback produced by the PSCD 28 has around 47ms of delay.
  • the signals are received by a USB wireless transceiver 66 and communicated to a PC- based controller 68.
  • a graphical user interface (GUI) 74 (FIG. 6) to be described on the controller 68 is used by the operator so that the TCP 20 of the industrial robot 12 is moved to the desired position relative to the PSDs 38.
  • the operator uses the GUI 74 to communicate from the controller 68 through a local area network (LAN) 70 to a robot controller 72 communicating with the industrial robot 12 to move the TCP 20.
  • the robot controller 72 is an ABB robot controller (IRC5 Compact) known in the art. It should be appreciated that the robot controller 72 is conventional and known in the art to control the industrial robot 12.
  • the calibration system 10 includes a graphical user interface (GUI) 74 on the controller 68 to provide for a user-friendly representation of the calibration process.
  • GUI graphical user interface
  • the GUI 74 shows user option buttons 76 and real time process of PSD-based localization servo.
  • the GUI 74 is embedded in the computer-based controller 68, as well as the calibration solution and algorithms. It should be appreciated that FIG. 6 also illustrates an experiment made moving a laser beam in square patterns 78 on the surface of the PSDs 38 for mapping and performance purposes.
  • a method, according to one embodiment of the present invention, for calibrating the industrial robot 12 is disclosed.
  • the calibration process is completed by locating the TCP 20 and the focusable laser 22 at four different positions (position (P) 1 - 4) as illustrated in FIG. 1.
  • a laser beam from the focusable laser 22 is aimed to the center of the first PSD 38 in the side portion 42 of the mounting fixture 36 of the PSCD 28, i.e. PSD1, with a reflection orientation towards the second PSD 38 in the base portion 40 of the mounting fixture 36 of the PSCD 28, i.e. PSD2.
  • the operator can also find a line that passes between them.
  • the operator has found position one (PI), and the process is then repeated using the same orientation to find position two (P2). Then, the same process is used to find position three (P3) and position four (P4).
  • the reflected line is a virtual linear constraint, meaning that the TCP 20 and the laser beam are constrained to move along that reflected line to calibrate the robot's external parameters.
  • the PSCD 28 is located in an unknown position with respect to the industrial robot 12. During the whole calibration process, the procedure of aiming the laser beam at the center of each PSD 38 only repeats twice, so the approach is simpler and less time consuming than previous methods. Once the aiming procedure is done, the joint angles for that particular pose of the industrial robot 12 are recorded. Hence, four sets of robot joint angles can be recorded by the robot controller 72. Based on this recorded data along with the kinematic error model of the industrial robot 12, a calibration method is employed by the robot controller 72.
  • the method of the present invention uses a nonlinear iterative optimization technique to identify the robot parameters and joint offset parameters from the data recorded. Using different positions, poses and orientations, errors in the kinematic parameters are minimized.
  • the controller 72 calibrates the robot external parameters and joint offset parameters of the industrial robot 12 and the industrial robot 12 is then compensated internally by the controller 72 based on the calibrated robot external parameters and joint offset parameters to make the industrial robot 12 more precise and accurate. It should be appreciated that the calibration method is not only able to compute the joint offset parameters of the industrial robot 12, but is also capable of simultaneously calibrating the robot's workpiece relationship by using the PS CD 28.
  • B T E is a transformation matrix that expresses the position and orientation of the TCP 20 frame ⁇ E ⁇ of the arm 18 with respect to the robot base 14 frame ⁇ B ⁇ ; is a homogeneous transformation matrix associated with link i and joint i .
  • DH Denavit-Hartenberg
  • orientation in the PSDs 38 will have to be fixed, e.g., it will have to be in a Z plane (completely flat) surface and X and Y orientation of the mounting fixture 36 has to approximately align with the X and Y orientation of the base 14 of the industrial robot 12.
  • the position control can be focused.
  • servo control using camera 26 only
  • the servo motor 29 first ensure that the laser beam from the laser 22 will hit in the active area of the PSD 38 (moving parallel to the Z axis) and at the same time obtain depth information needed for the next steps as shown in the Figure 7.
  • the laser beam from the laser 22 is used to partition the axes easily and the depth information is obtained online.
  • the camera 26 is mounted at an angle to the laser beam forming a triangle.
  • the depth of the image features can be computed accurately using the triangular relationship.
  • the height information between the focusable laser 22 and the object surface is computed to control the z-axis with respect to the arm 20 separately.
  • the PSD servo control is used for fine localization. It should be appreciated that position control only is being used because the orientation found at the beginning will remain constant during this process and are moving parallel to a z plane.
  • the controller 74 is assumed to control the laser 22 making movements on a plane parallel to the surface of the PSD 38. Therefore any change in position of the end-effector equals the change in position on the surface of the PSD 38.
  • represent the velocity
  • v is the translational velocity vector component
  • w is the angular velocity vector componet
  • ⁇ ⁇ is the velocity of the end effector or TCP 20 with respect to the frame 34 of the PSCD 28 and ⁇ ⁇ is the velocity of the end effector or TCP 20 with respect to the base 14 of the industrial robot 12.
  • TCP 20 velocity 3 ⁇ 4 can be obtained with respect to the base 14;
  • the reflection should be somewhere in the active area of the second PSD 38, very close to the origin as well.
  • the distance of the laser line (h" information) should be given originally by the servo control, therefore, it can be used to modify the kinematics error model so that the point can be fixed since the center of the first PSD 38 has already been found as the new end effector or TCP 20 position and orientation.
  • ⁇ ⁇ is the velocity of the TCP 20 with respect to the frame 34 of the PSCD 28 and ⁇ ⁇ is the velocity of the end effector or TCP 20 with respect to the base 14 of the industrial robot 12.
  • the distance of the laser line on step 2 can be determined. It can be chosen to go back and check for PSDl to see if the laser beam is still in the center of the PSDl or not and perform the control again (position control) and recheck in PSD2 and so on. Therefore, it is important to get h accurately the first time to save time. Finally, the system will switch between 3 different controllers as follows: IVBS Robotic
  • ⁇ 2 ⁇ 2 ⁇ + ⁇ 22 + ⁇ + ⁇ 24 (14)
  • ⁇ 2 2 ( ⁇ 2 ⁇ ) 4 -(T 2 i h (16)
  • Equation (24) g can be solved by using least squared method, k and ⁇ can be computed by;
  • R 12 k x k y (l-cos(0))-k z sin(e)
  • R 21 k x k y (l-cos(e)) + k z sin(0)
  • R 23 k y k l-cos(e))-k x sin(e)
  • R 31 kk x (l-cos(0))-k y sin(e)
  • R 32 k y k l-cos(e))+k x sin(e)
  • R 33 k z 2 (l-cos(e)) + cos(e)
  • Table IV essentially proves not only that both methods have similar level of accuracy of joint offset calibration, but also that they are feasible.
  • the advantages of the new method of the present invention is the ability to perform the whole process using only 4 sets of position data instead of 7 needed for the previous method. Therefore the new approach is simpler and faster.
  • the calibration system 10 of the present invention is a simple low-cost design easy to operate by the user.
  • the calibration system 10 of the present invention is robust to external disturbances commonly found in production lines.
  • the calibration system 10 of the present invention includes a convenient wireless portable calibration device.
  • the calibration system 10 of the present invention is able to be used by any industrial robot.
  • the calibration system 10 of the present invention is a fast automatic robot calibration system compared to existing calibration systems.
  • the calibration system 10 of the present invention is a portable, low-cost, and faster yet simpler than any other existing calibration system.

Abstract

A calibration system (10) and method for calibrating an industrial robot (12) includes a focusable laser (22) for providing a laser beam and being mounted to the industrial robot (12) and a position sensitive calibration device (28) including at least one position sensitive device (38) for receiving position information from the laser beam and recording position and orientation of a pose of the industrial robot (12) and joint angles for that particular pose of the industrial robot (12) based on the position information, and a controller (72) communicating with the position sensitive calibration device (28) for providing a kinematics error model of the industrial robot (12), using a non- linear iterative optimization on the kinematics error model to identify robot external parameters and joint offset parameters from the recorded joint angles, and calibrating the robot external parameters and joint offset parameters of the industrial robot (12) to make the industrial robot (12) more precise and accurate.

Description

CALIBRATION SYSTEM AND METHOD FOR CALIBRATING
INDUSTRIAL ROBOT
CROSS-REFERENCE TO RELATED APPLICATION(S)
[0001] The present invention claims the priority date of co-pending United States Provisional Patent Application Serial Number 61/901,684, filed November 8, 2013.
BACKGROUND OF THE INVENTION
1. Field of the Invention
[0002] The present invention relates generally to industrial robots and, more particularly, to a calibration system and method for calibrating an industrial robot.
2. Description of the Related Art
[0003] In our modern era, the complexity of industrialization has played an important role in developing a strong economy, typically related to technological innovation in manufacturing. Manufacturing, in general, involves the development of large-scale productions utilizing industrial robots to create assembly lines. Generally, industrial robots reach high repeatability levels and for repetitive applications, they are able to perform such tasks successfully. Certainly repeatability demonstrates the quality of a modern industrial robot and their precise positioning capabilities.
[0004] However, it is also well known in the robot industry that while industrial robots have high repeatability, they also have low accuracy. Nevertheless, the recent demand of high accuracy applications such as welding tasks, micro assembly operations and surgery, etc., have increased the importance and interests of robot calibration among researchers over the last decades. Although there have been significant improvements in terms of accuracy on the newly designed industrial robots, for such high accuracy applications, the accuracy of the robot alone is not enough. While there are several sources of inaccuracies (e.g. thermal expansions, gear errors, structural deformations, or even incorrect knowledge of link and joint parameters), the main source of inaccuracy lies in kinematic model parameter errors. The majority of the kinematic model parameters, (e.g. arm length, link offset, and link twist angles) are related to the structural mechanics of the robot manipulator. Typically, those parameters will not change by much once the industrial robot is sent from the factory and installed in manufacturing areas. However, some kinematic model parameters (e.g. joint offset) might be affected by the assembly or the replacement of motors and encoders.
[0005] According to researchers, around 90% of the inaccuracy in robot positioning is mostly due to errors in miscalculations on assumed initial positions of joint offset values of the industrial robot. Without an appropriate robot calibration, any robotic system will experience accuracy degradation over time. Due to this fact, robot calibration has been used to improve position and orientation accuracy of industrial robots by identifying inaccuracies in the kinematic model parameters in order to create a more accurate kinematics model that better fits to the real industrial robot.
[0006] Because industrial robots have high repeatability, but low accuracy, often, wrong assumptions on real links parameters or even small offsets exist in the individual robot joints that lead to errors in the internal kinematic model equations and as a consequence, affecting the accuracy of the robotic system. There are several robot calibration systems and approaches developed in the industry as well as in the academia. However, most of them are expensive or their procedures are time consuming and, therefore, they are difficult to use extensively in the manufacturing plants. Therefore, there is a need in the art for a new calibration method for industrial robots that improves the accuracy of the robots significantly by using a new fast, low cost, and automated robot calibration system.
SUMMARY OF THE INVENTION
[0007] Accordingly, the present invention is a calibration system for calibrating an industrial robot. The calibration system includes a focusable laser for providing a laser beam and mounted to the industrial robot and a position sensitive calibration device including at least one position sensitive device for receiving position information from the laser beam and recording position and orientation of a pose of the industrial robot and joint angles for that particular pose of the industrial robot based on the position information. The calibration system also includes a controller communicating with the position sensitive calibration device for providing a kinematics error model of the industrial robot, using a non-linear iterative optimization on the kinematics error model to identify robot external parameters and joint offset parameters from the recorded joint angles, and calibrating the robot external parameters and the joint offset parameters of the industrial robot to make the industrial robot more precise and accurate.
[0008] In addition, the present invention is a method for calibrating an industrial robot including the steps of providing a focusable laser mounted to the industrial robot and providing a position sensitive calibration device having at least one position sensitive device (PSD). The method also includes the steps of aiming a laser beam from the focusable laser at a center of the at lease one PSD to find a beam position of a pose of the industrial robot and recording joint angles for that particular pose of the industrial robot by a controller based on the beam position. The method further includes the steps of providing a kinematics error model of the industrial robot for the controller, using a non-linear iterative optimization on the kinematics error model by the controller to identify robot external parameters and joint offset parameters from the recorded joint angles, and calibrating the robot external parameters and joint offset parameters of the industrial robot to make the industrial robot more precise and accurate.
[0009] One advantage of the present invention is that a new calibration system and method are provided for automatically calibrating industrial robots. Another advantage of the present invention is that the calibration method is not only able to compute joint offset parameters of the industrial robot, but is also capable of simultaneously calibrating the robot's frame relationship. Yet another advantage of the present invention is that the calibration system includes a new portable and wireless position sensitive calibration device. Still another advantage of the present invention is that, during the whole calibration method, the procedure of aiming a laser beam at the center of each position sensitive device (PSD) of the position sensitive calibration device only repeats twice, so the approach is simpler and less time consuming than any other previous methods. A further advantage of the present invention is that the calibration system is a simple low-cost design easy to operate by the user. Yet a further advantage of the present invention is that the calibration system is robust to external disturbances commonly found in production lines. Still a further advantage of the present invention is that the calibration system is able to be used by any industrial robot manipulator. Another advantage of the present invention is that the calibration system is a fast automatic robot calibration system compared to existing calibration systems. [ 0010 ] Other features and advantages of the present invention will be readily appreciated, as the same becomes better understood, after reading the subsequent description taken in conjunction with the accompanying drawings.
BRIEF DESCRIPTION OF THE DRAWINGS
[ 0011 ] FIG. 1 is a perspective view of one embodiment of a calibration system, according to the present invention, illustrated in operational relationship with an industrial robot.
[ 0012 ] FIG. 2 is an enlarged view of a portion of the calibration system and industrial robot of FIG. 2.
[ 0013] FIG. 3 is a perspective view of a position sensitive device of the calibration system of FIG. 1.
[ 0014 ] FIG. 4 is a schematic view of a circuit board used for the position sensitive calibration device of FIG. 3.
[ 0015] FIG. 5 is a schematic view of the calibration system, including internal components of the position sensitive calibration device of FIG. 3 with networking details, and industrial robot of FIG. 1.
[ 0016] FIG. 6 is a screen view of a graphical user interface for the calibration system of FIGS. 2 through 5.
[ 0017 ] FIG. 7 is a schematic view of a triangulation technique using a laser and camera for the calibration system of FIGS. 2 through 5.
DESCRIPTION OF THE PREFERRED EMBODIMENT(S)
[ 0018 ] Referring to the drawings and in particular FIGS. 1 and 2, one embodiment of a calibration system 10, according to the present invention, is shown in operational relationship with an industrial robot, generally indicated at 12. The industrial robot 12 is of an AAB industrial robot type having a six degree of freedom (6-DOF) robot manipulator (IRB 120) as known in the art of industrial robots. The industrial robot 12 has a base 14, a moveable body 16 mounted on the base 14, a moveable robot manipulator or arm 18 mounted on the body 16, and tool center point (TCP) 20 mounted on the arm 18. It should be appreciated that the industrial robot 12 may be any suitable type of industrial robot. It should also be appreciated that the calibration system 10 can be used not only to calibrate a frame relationship, but also a joint offset of the industrial robot 12 simultaneously, thus improving speed during the whole calibration process.
[ 0019 ] Referring to FIGS. 1 through 3, the calibration system 10 includes a focusable laser 22, an adapter fixture 24, a camera 26, and a position sensitive calibration device (PSCD), generally indicated at 28. The focusable laser 22 is of a laser pointer type. The camera 26 is of a digital type. The adapter fixture 24 has a generally "L" shape. The focusable laser 22 is mounted on the adapter fixture 24, as well as the camera 26 via a servo motor 29. The adapter fixture 24 is rigidly attached to the tool center point (TCP) 20 of the industrial robot 12 by a suitable mechanism such as fasteners 30 such that the laser beam is tuned to align its orientation toward the X-axis of the frame of the TCP 20. The focusable laser 22, camera 26, and servo motor 29 are connected by cables 32 to a source of power (not shown). It should be appreciated that the focusable laser 22 produces a laser beam that is directed to the PSCD 28.
[ 0020 ] Referring to FIGS. 1 and 3, the PSCD 28 is shown. The PSCD 28 is portable and disposed on a support surface below the TCP 20 of the industrial robot 12. The PSCD 28 includes a frame 34, a mounting fixture 36 mounted on the frame 34, and at least one position sensitive device (PSD) 38, preferably a plurality of
PSDs 38 to perform both calibration methods to be described. In the embodiment illustrated, the PSCD 28 includes two PSDs 38 fixed with an angle between them.
The mounting fixture 36 includes a base portion 40 and a side portion 42 extending outwardly at an angle to the base portion 40. The base portion 40 is generally rectangular in shape, but may be any suitable shape. The base portion 40 is mounted to the top of the frame 34 by a suitable mechanism such as fasteners 44. The base portion 40 has an aperture 46 extending therethrough to receive one PSD 38. The side portion 42 has a generally triangular shape, but may be any suitable shape. The side portion 42 includes an aperture 48 extending therethrough to receive one PSD 38.
The PSDs 38 are secured to the base portion 40 and side portion 42 by a suitable mechanism such as fasteners 50. As illustrated in FIG. 3, the angle between the PSDs
38 is approximately 120 degrees. The PSCD 29 may also include a transparent cover
52 disposed over the mounting fixture 36. It should be appreciated that the PSCD 28 is a wireless device to be described in connection with FIG. 5.
[ 0021 ] For the PSCD 28, the PSDs 38 are of a segmented type used for high precision feedback. The segmented PSDs 38 have a higher resolution than
0.1 μιη in theory. Even under the experimental condition, the resolution of the segmented PSD 38 may reach approximately 2μιη. It should be appreciated that the calibration system 10 requires a laser beam to shoot into one PSD 38 in a way that the reflection lands into the other PSD 38. It should also be appreciated that more than one hundred twenty (120) degrees will make it difficult to find a good reflection from one PSD 38 to the other, and less than one hundred twenty (120) degrees will make the calibration system 10 less accurate. It should be appreciated that the location of the fixture 36 of the PSCD 28 is known with respect to the workpiece frame 34 of the PSCD 28 while its location with respect to the base 14 of the industrail robot (12) is unknown.
[ 0022 ] Referring to FIG. 4, a schematic of a circuit, generally indicated at 52, used for the PSCD 28 is shown. Before the actual calibration task, a signal processing was designed and set up in order to test the properties of the PSDs 38. Since the active chip area of the PSDs 38 is comparatively small, the measurements had to be performed applying high precision tools to position the laser beam over the surface of the PSDs 38. Therefore, a Signatone CAP-945 high precision probe was used to acquire sufficient accuracy to calibrate the chip of the PSDs 38. The purpose of this circuit 52 is to process the PSDs 38 chip raw output to be able to determine the relative 2D position of the laser beam on the surface of the PSDs 38. The design can be structured into three functional stages. In the first stage the output signal of the four PSD electrodes 53 is amplified using operational amplifiers 54. The second and third stages are used to perform the computations needed to be able to determine the spot position. In the second stage, summing amplifiers 56 and differential amplifiers 58 are occupied to generate the input signals for the divider ICs 60 (third stage). It should be appreciated that the PSDs 38 and circuit 52 form a data acquisition system (DAS) to gather the feedback information needed for a robot controller 72 (FIG. 5) of the industrial robot 12 to ensure system accuracy and reliability. It should be appreciated that the circuit 52 is mounted on a circuit board and disposed within the frame 34 of the PSCD 28.
[ 0023 ] As illustrated in FIG. 5, the PSCD 28 must be able to carry the signal information from the PSDs 38 to the robot controller 72 in order to control the industrial robot 12 to the desired state. Figure 5 illustrates the basic internal components of the PSCD 28 as well as the interaction between the PSCD 28 and the robot controller 72. Within the frame 34, the PSCD 28 includes the circuit 52 electrically connected to the PSDs 38, a universal serial bus (USB) analog to digital (A D) converter 62 electrically connected to the circuit 52, and a USB wireless hub 64 electrically connected to the USB A/D 62. After the circuit 52 receives the raw data from the two PSDs 38, the signals are taken by the wireless USB hub 64 from the USB A/D 62. The feedback produced by the PSCD 28 has around 47ms of delay. The signals are received by a USB wireless transceiver 66 and communicated to a PC- based controller 68. Once the data reaches the PC-based controller 68, a graphical user interface (GUI) 74 (FIG. 6) to be described on the controller 68 is used by the operator so that the TCP 20 of the industrial robot 12 is moved to the desired position relative to the PSDs 38. The operator uses the GUI 74 to communicate from the controller 68 through a local area network (LAN) 70 to a robot controller 72 communicating with the industrial robot 12 to move the TCP 20. The robot controller 72 is an ABB robot controller (IRC5 Compact) known in the art. It should be appreciated that the robot controller 72 is conventional and known in the art to control the industrial robot 12.
[ 0024 ] Referring to FIG. 6, the calibration system 10 includes a graphical user interface (GUI) 74 on the controller 68 to provide for a user-friendly representation of the calibration process. The GUI 74 shows user option buttons 76 and real time process of PSD-based localization servo. The GUI 74 is embedded in the computer-based controller 68, as well as the calibration solution and algorithms. It should be appreciated that FIG. 6 also illustrates an experiment made moving a laser beam in square patterns 78 on the surface of the PSDs 38 for mapping and performance purposes. [ 0025 ] A method, according to one embodiment of the present invention, for calibrating the industrial robot 12 is disclosed. The calibration process is completed by locating the TCP 20 and the focusable laser 22 at four different positions (position (P) 1 - 4) as illustrated in FIG. 1. During the calibration process, a laser beam from the focusable laser 22 is aimed to the center of the first PSD 38 in the side portion 42 of the mounting fixture 36 of the PSCD 28, i.e. PSD1, with a reflection orientation towards the second PSD 38 in the base portion 40 of the mounting fixture 36 of the PSCD 28, i.e. PSD2. Once an operator finds those two centers, the operator can also find a line that passes between them. At that time, the operator has found position one (PI), and the process is then repeated using the same orientation to find position two (P2). Then, the same process is used to find position three (P3) and position four (P4). The reflected line is a virtual linear constraint, meaning that the TCP 20 and the laser beam are constrained to move along that reflected line to calibrate the robot's external parameters. The PSCD 28 is located in an unknown position with respect to the industrial robot 12. During the whole calibration process, the procedure of aiming the laser beam at the center of each PSD 38 only repeats twice, so the approach is simpler and less time consuming than previous methods. Once the aiming procedure is done, the joint angles for that particular pose of the industrial robot 12 are recorded. Hence, four sets of robot joint angles can be recorded by the robot controller 72. Based on this recorded data along with the kinematic error model of the industrial robot 12, a calibration method is employed by the robot controller 72. Based on the recorded joint angles and robot forward kinematics, mathematically, the method of the present invention uses a nonlinear iterative optimization technique to identify the robot parameters and joint offset parameters from the data recorded. Using different positions, poses and orientations, errors in the kinematic parameters are minimized. As a final step for the calibration system 10, after all robot parameter errors are found, the controller 72 calibrates the robot external parameters and joint offset parameters of the industrial robot 12 and the industrial robot 12 is then compensated internally by the controller 72 based on the calibrated robot external parameters and joint offset parameters to make the industrial robot 12 more precise and accurate. It should be appreciated that the calibration method is not only able to compute the joint offset parameters of the industrial robot 12, but is also capable of simultaneously calibrating the robot's workpiece relationship by using the PS CD 28.
Analysis of Kinematics Error Model
[ 0026] For the industrial robot 12 with n (n=6) joints illustrated in Figure 1, a forward kinematics error model can be represented by the following equation,
Figure imgf000012_0001
[ 0028 ] where BTE is a transformation matrix that expresses the position and orientation of the TCP 20 frame {E} of the arm 18 with respect to the robot base 14 frame {B} ; is a homogeneous transformation matrix associated with link i and joint i . By Denavit-Hartenberg (DH) model, which is widely used to represent the robot forward kinematics error model, each homogeneous transformation matrix can be written as,
c0j -s^co ;
[ 0029] (2)
0 af cat dj
0 0 0 1 [ 0030 ] where the four quantities Qi , ai , di and «; , denotes the joint angle, link length, link offset and link twist respectively. They are all parameters associated with link i and joint i . c0i denotes cosfO while s0i denotes sinfe .
[ 0031 ] The same forward kinematics error model can be used to include the joint offset of each link as follows; let Si denote the offset value of the joint i , then each homogeneous transformation can be rewritten as, c0i -s0pai s0isai aic0i
s0i c0pat -c0isai αρθί
[ 0032 ] 4 = (3)
0 sat cai di
0 0 0 1
[ 0033 ] where c6>. denotes
Figure imgf000013_0001
J . Combining the joint offset and substituting (3) into (1), forward kinematics BTE with the offset is written as,
Figure imgf000013_0002
[ 0035 ] It should be appreciated that joint 1 depends on the base 14 of the industrial robot 12 so in equation (4) there are five unknown parameters, which are the last five offsets Si ( / = 2,3,4,5,6 ).
General PSD's Servo Control Strategy
[ 0036 ] The geometry of the PS CD 28 is known and therefore a fixed orientation is guaranteed. Once the laser beam is moved into the active area of the first PSD 38, the reflection will approximately also hit the second PSD 38. In other words, an orientation can be found such that the laser beam will hit very close to the center of both PSDs 38, and such orientation will be the same for P3 and P4 (FIG. 1).
This can also be done for PI and P2. The only requirement is that orientation in the PSDs 38 will have to be fixed, e.g., it will have to be in a Z plane (completely flat) surface and X and Y orientation of the mounting fixture 36 has to approximately align with the X and Y orientation of the base 14 of the industrial robot 12. Once the orientation is fixed, the position control can be focused. Using servo control (using camera 26 only) of the servo motor 29, first ensure that the laser beam from the laser 22 will hit in the active area of the PSD 38 (moving parallel to the Z axis) and at the same time obtain depth information needed for the next steps as shown in the Figure 7.
[ 0037 ] The laser beam from the laser 22 is used to partition the axes easily and the depth information is obtained online. The camera 26 is mounted at an angle to the laser beam forming a triangle. The depth of the image features can be computed accurately using the triangular relationship. Furthermore, the height information between the focusable laser 22 and the object surface is computed to control the z-axis with respect to the arm 20 separately. After the servo control is done, the PSD servo control is used for fine localization. It should be appreciated that position control only is being used because the orientation found at the beginning will remain constant during this process and are moving parallel to a z plane.
[ 0038 ] The controller 74 is assumed to control the laser 22 making movements on a plane parallel to the surface of the PSD 38. Therefore any change in position of the end-effector equals the change in position on the surface of the PSD 38.
[ 0039 ] Let ργΒ be the homogeneous transformation matrix of the base frame "{B }" of the base 14 with respect to the PSD frame "{P}" of the PSCD 28 as illustrated in FIG. 1 ; [0040] R d
0 1
[0041] To obtain the relationship between the velocity on the end effector and the point projected in the surface of the PSD 38, lets define;
[0042] f = lv w
[0043] Where ξ represent the velocity, v is the translational velocity vector component and w is the angular velocity vector componet.
[0044] Since the PSD 38 is fixed and "R" is constant, the equation is:
R 0,
[0045] Q,..; R
[0046] Where ξρ is the velocity of the end effector or TCP 20 with respect to the frame 34 of the PSCD 28 and ξΒ is the velocity of the end effector or TCP 20 with respect to the base 14 of the industrial robot 12.
[0047] Then;
4
[0048] 0,,., RT j
[0049] Now let s(£) denote the vector of feature values that can obtain by the PSD 38 feedback. Let also s(i) be the corresponding velocity follows;
;(t} =
[0050] y
[0051] Given that there is no moving or rotating along the Z axis (since it's a planar movement), that is; ¾ = 0 and = 0
[0052 ] Then the above can be combined, resulting in the following:
Figure imgf000015_0001
[0054] Where !¾=■¾,, δ'¾ τ denotes the three components of the translational velocity with respect to the base 14 of the industrial robot 12.
[0055] Now the error function can be defined as;
[0056] e{t) =sd -s(t) [0057] = sd— s{t) [0058] Where ¾ is the desired position on the surface of the PSD 38. [0059] By inverting the previous equation, a desired end effector or
TCP 20 velocity ¾ can be obtained with respect to the base 14;
[0060]
[0061] The following controller can be used:
[0062] = ; k^€ ; k^S
Figure imgf000016_0001
PSD
[0063] Feedback
[0064] Because the orientation previously is set once the center of the PSD 38 is hit, the reflection should be somewhere in the active area of the second PSD 38, very close to the origin as well. At this point, the distance of the laser line ("h" information) should be given originally by the servo control, therefore, it can be used to modify the kinematics error model so that the point can be fixed since the center of the first PSD 38 has already been found as the new end effector or TCP 20 position and orientation.
[0065] This will allow use of a third separate control method that focuses only on the orientation along that point, as shown below; Robotic
R PD Linear
Controller System
PSD
[0066] Feedback
[0067] lets now define again;
[0068] = [v W [0069] Where ξ represent the velocity, v is the translational velocity vector component and w is the angular velocity vector componet.
[0070] Since the second PSD 38 (PSD2) is fixed and "R" is still constant, the following equation can be written as:
Figure imgf000017_0001
[0072] Were ξρ is the velocity of the TCP 20 with respect to the frame 34 of the PSCD 28 and ξΕ is the velocity of the end effector or TCP 20 with respect to the base 14 of the industrial robot 12.
[0073] Then;
Figure imgf000017_0002
[0075] Now s(t} denotes the vector of feature values that can be obtain by the PSD2 feedback and s(t be the corresponding velocity as follows: sir! = [y
[0076] tv'i
[0077] Given that the orientation is only moved along the point found in step 2 (center of the first PSD 38) and moreover the distance between the first PSD (38) (PSDl) and PSD2 is known, the above can be combined, resulting in the following; [ 0078 ] = R1W£
[ 0079 ] Where w6=fw „, &τ denotes the three components of the angular velocity of the point found by PSDl with respect to the base 14 of the industrial robot 12. It should be apprecited that only need to control Yaw and Pitch because Roll will have no effect on the position of the laser 22 in PSD2.
[ 0080 ] Now the error function can be defined as ;
[ 0081 ] €{ tl = ¾ ~ s(i}
[ 0082 ] eCf) = ½ ~ ^t
[ 0083 ] Where ¾ is the desired position on the surface of the PSD 38 (again (0,0))
[ 0084 ] By inverting the previous equation, a desired end effector or TCP 20 (position found by PSDl) angular velocity ws with respect to the base 14 can be obtained;
Figure imgf000018_0001
[ 0086 ] The following controller can be used once again:
[ 0087 ] u = y - k„e -h kve
[ 0088 ] Depending on how accurate, the distance of the laser line on step 2 can be determined. It can be chosen to go back and check for PSDl to see if the laser beam is still in the center of the PSDl or not and perform the control again (position control) and recheck in PSD2 and so on. Therefore, it is important to get h accurately the first time to save time. Finally, the system will switch between 3 different controllers as follows: IVBS Robotic
Control Law System
Camera
[ 0089 ] Feedback
Figure imgf000019_0001
PSD1
[ 0090 ] Feedback
[ 0091 ] Modify Kinematics Error Model with h information:
Figure imgf000019_0002
PSD2
[ 0092 ] Feedback
[ 0093 ] Using this control strategy the problems of dependance between position and orientation of the laser 22 at both PSDs 38 is overcome by decoupling the problem into two control strategies. Therefore, it is not necessary to have both PSDs 38 feedback signals at the same time. Once the position and orientation in PI (see FIG. 1) is found, the orientation of P2 can become constant and move along the laser beam line only changing position. This will guarantee that the laser 22 will roughly align in center of both PSDs 38 again so only the last two (2) control strategies are used for fine positioning if needed (it should be appreciated that fine positioning may not be needed again). It should be appreciated that the same can be applied to P3 and P4 in FIG. 1. Joint Offset Calibration
[0094] The calibration process, shown in FIG. 1, is performed by locating the TCP 20 and the focused laser 22 several times at different locations. Because the focused laser 22 is rigidly fixed on the TCP 20, the jth position of the focused laser 22 is denoted as p . = [p. p. p. ( /= 1,2,3,4) and the unit directional vector of the laser beam line as, [m^ nj pj . Replacing the recorded joint angles into the forward kinematics error equation (4), they can be decomposed as follows,
Figure imgf000020_0001
[0096] = 1,2,3,4 (6)
Figure imgf000020_0003
[0097] Because P;and P2 are in the same laser beam line 1, they have following relationships,
[0098] (7)
Figure imgf000020_0002
[0099] and, [00100] Ρχΐ - Ρχ2 _ Pyi ~ Py2 _ Pzi - Pq (8)
[00101] Hence, for these two positions of the focused laser 22, the error is squared.
[00102] Wl = Ψπ + Ψη + ΨΠ2 + Ψΐ (9)
[00103] Where
[00104] (10) [00105] Ψ12 =(Τ2])2 -(Τ2] )] (11)
[00106] ψ J (iAliiA liA (ι2)
21\ (τ24)2-(τ24\
Figure imgf000021_0001
[00108] Similarly, consider Ρ3 and Ρ4 are in the same laser beam line 2, they have the same relations. Then another squared error is obtained.
[00109] Ψ2 = Ψ2ι +Ψ22 +Ψ + Ψ24 (14)
[00110] Where
Figure imgf000021_0002
[00112] Ψ22 =(τ 2ι )4 -(T2i h (16)
[00113] ψ i IiiAl (i7)
(T21)3 (T24)4-(T24)3 [00114] ^=iZki_iZkAdZki (18)
[00115] Hence the unknown parameters, i.e. the last offsets ( i = 2,3,4,5,6 ), are found by minimizing the total sum of the squared errors.
[00116] W = argtmn k (19)
=l
[00117] Because of the complexity of the optimization problem with 5 parameters, the well-known Levenberg-Marquardt algorithm (LMA) is used to minimize the sum of squared errors.
Robot Frame Calibration
[ 00118 ] With the joint offset calculations ahead, the ( . (j = 1,2,3,4) can also be found. Let R and t be the rotation matrix and the translation vector of BTD , respectively. Denote LD and LB as direction vectors of the laser beam from the focused laser 22 with respect to the PSCD 28 {D} and the base 14 {B } frames, respectively. Considering the relationship between LD and LB , the following equation can be found,
[00119] LB = RLD = qLDq (20)
[00120] Where
[00121] ■ cos \— \ + sin\— \k (21)
\ 2 2
[ 00122 ] Substituting (21) into (20), the following results:
[00123] LD - LB = tan[^{LD + LB )x k (22)
[00124] Let Ω(ν) denote a skew symmetric matrix, thus equation (22) can be written as;
[00125] Q(v)g = b (23)
[00126] where LD + LB = a , LD - LB = b and g = tan(0 /2) k . It should be appreciated that a minimum of two laser beams are needed.
[00127] Let C = [Ω(αι ) Ω(α2 )f and D = [b1 b2 f , then equation (23) can be expressed as:
[00128] Cg = D (24)
[00129] From equation (24), g can be solved by using least squared method, k and θ can be computed by;
Figure imgf000022_0001
f - \
[00131] 0 = 2x atan (26)
V
[00132] Hence the rotation matrix R can be computed as follows:
Figure imgf000023_0001
[00134] where,
R„ = k2 l-cos(0)) + cos(e)
R12 = kxky(l-cos(0))-kzsin(e)
R13 = kk l-cos(e)) + kysin(e)
R21 = kxky(l-cos(e)) + kzsin(0)
[00135] R22=ky 2(l-cos(9)) + cos(9)
R23 = kyk l-cos(e))-kxsin(e)
R31 = kkx(l-cos(0))-kysin(e)
R32 = kyk l-cos(e))+kxsin(e)
R33 = kz 2(l-cos(e)) + cos(e)
[00136] For each laser beam, the following results :
[00137] ,k = l,2 (28)
Figure imgf000023_0002
[00138] then; [00139] ,k = l,2 (29)
Figure imgf000023_0003
[00140] where [x0Dl y0Dl z0Dk f denotes the center point of k'h PSD 38 with respect to PSCD 28 {D}; [x0Bk y0Bk z0Bkf denotes the center point of k'h PSD 38 with respect to base 14 {B};[ lffi ylBk z1Bkf denotes the k'hTCF 20 position with respect to the base 14 {B}, which can be obtained by the robot controller 72.
[00141] Let [a, a azk = R[x0Dk y0Dk z0Dkf , then the following relations can be obtained, ~K &zk ~ tz
[00142] (30) [ 00143 ] In these relationships, the values of [r ty tz are unknown be computed by:
Figure imgf000024_0001
[ 00145 ] Therefore, the calibration matrix will be given
Figure imgf000024_0002
SIMULATION AND EXPERIMENTAL RESULTS
[ 00147 ] A 3-D computer model of the robot manipulator
(IRB 120) having the TCP 20 was built in the computer using Matlab. The DH parameters of the robot manipulator were derived as shown in Table I. In the simulations, the laser 22 was attached on the TCP 20 to align the laser beam line with the X-axis of the frame of the TCP 20. A virtual PSCD 28 was also built and fixed, so that the algorithm could find the robot configuration needed to align the laser beam line to hit the center of both PSDs 38 at 4 different positions. Experimental data was also collected, analyzed, and compared for robot calibration.
TABLE I. DH PARAMETERS OF THE ABB IRB 120 MANIPULATOR
Joints a (mm) a (deg) d (mm) 0 (deg)
1 0 -90 290 0
2 270 0 0 -90
3 0 90 0 180
4 70 -90 302 0
5 0 90 0 0
6 0 0 72 0 A. Simulation of Joint Offset Calibration
[ 00148 ] Simulations of the j oint offset calibration were performed using initial joint offset parameters, such that they can be identified using the method of the present invention. In other words, offset values were introduced for each joint in the kinematic model and compared with the values the method of the present invention was able to compute. The results of the calibration simulations are shown in Table II. The first column holds the joint offset number while column two holds the actual offset parameters used to initialize the simulations. In the third column, the initial parameters used by the optimization algorithm (LMA) are shown. In the fourth column, the solution of the algorithm is shown while the fifth column shows the error between them. The results shows perfect results, therefore they confirmed the efficiency of the method of the present invention.
TABLE II. SIMULATION RESULTS ON JOINT OFFSET CALIBRATION
Figure imgf000025_0001
B. Robot Workpiece Frame Calibration
[ 00149 ] Similarly, simulations of the workpiece frame calibration were performed. This time the relationship between the base 14 and the workpiece frame 34 of the PSCD 28 was initialized, such that each parameter can be identified by the method of the present invention. The results are shown in Table III. In the second column, the actual parameter values used to initialize the simulation are presented while in the third column the initial parameters for the algorithm (LMA) are shown. The fourth column shows the solution of the algorithm and in the fifth column the error between them were presented. Again, perfect results were obtained and therefore confirmed the efficiency of the method of the present invention.
TABLE III. SIMULATION RESULTS ON JOINT OFFSET CALIBRATION
Figure imgf000026_0001
C. Experimental Analysis
[ 00150 ] To prove that the method of the present invention works, real experiments were performed on the industrial robot 12. Experiments were performed moving the TCP 20 and laser 22 manually such that it aligns the laser beam line to both PSDs 38 centers at PI and P2. Similarly, experiments were performed moving the TCP 20 and laser 22 for positions P3 and P4. Once the desired positions were achieved, the joint parameters of the industrial robot 12 were recorded from the robot controller 72 and eventually processed into the calibration method of the present invention. The experimental results are presented in Table IV for the joint offset and were compared with previous robot calibration. The first column shows the joint offset number while the second column shows the actual offset parameters which are unknown in the experiments. The third column shows the initial parameters of the LMA for both experiments. The fourth column shows the results of the optimization for our previous calibration method and in the fifth column the results are shown for the present method of the present invention. The results show similar values in both methods and therefore the method of the present invention can achieve a similar level of accuracy of joint offset calibration.
TABLE IV EXPERIMENTAL RESULTS ON JOINT OFFSET CALIBRATION
Figure imgf000028_0001
[ 00151 ] Table IV essentially proves not only that both methods have similar level of accuracy of joint offset calibration, but also that they are feasible. Among the advantages of the new method of the present invention is the ability to perform the whole process using only 4 sets of position data instead of 7 needed for the previous method. Therefore the new approach is simpler and faster.
[ 00152 ] Accordingly, the calibration system 10 of the present invention is a simple low-cost design easy to operate by the user. The calibration system 10 of the present invention is robust to external disturbances commonly found in production lines. The calibration system 10 of the present invention includes a convenient wireless portable calibration device. The calibration system 10 of the present invention is able to be used by any industrial robot. The calibration system 10 of the present invention is a fast automatic robot calibration system compared to existing calibration systems. The calibration system 10 of the present invention is a portable, low-cost, and faster yet simpler than any other existing calibration system.
[ 00153 ] The present invention has been described in an illustrative manner. It is to be understood that the terminology, which has been used, is intended to be in the nature of words of description rather than of limitation.
[ 00154 ] Many modifications and variations of the present invention are possible in light of the above teachings. Therefore, the present invention may be practiced other than as specifically described.

Claims

WHAT IS CLAIMED IS:
1. A calibration system (10) for calibrating an industrial robot (12), said calibration system (10) comprising:
a focusable laser (22) for providing a laser beam and mounted to the industrial robot (12);
a position sensitive calibration device (28) including at least one position sensitive device (38) for receiving position information from the laser beam and recording position and orientation of a pose of the industrial robot (12) and joint angles for that particular pose of the industrial robot (12) based on the position information; and
a controller (72) communicating with said position sensitive calibration device (28) for providing a kinematics error model of the industrial robot (12), using a non-linear iterative optimization on the kinematics error model to identify robot external parameters and joint offset from the recorded joint angles, and calibrating the robot external parameters and joint offset of the industrial robot (12) to make the industrial robot (12) more precise and accurate.
2. A calibration system (10) as set forth in claim 1 wherein said at least one position sensitive device (38) comprises a pair of position sensitive devices (38) spaced and orientated at an angle relative to each other.
3. A calibration system (10) as set forth in claim 2 wherein said at least one position sensitive device (38) includes a mounting fixture (36) to support said position sensitive devices (38) at a fixed angle therebetween.
4. A calibration system (10) as set forth in claim 3 wherein said fixed angle is approximately one hundred twenty degrees.
5. A calibration system (10) as set forth in claim 1 wherein said position sensitive calibration device (28) includes a circuit (52) for recording data of the position and the joint angles.
6. A calibration system (10) as set forth in claim 5 wherein said position sensitive calibration device (28) includes a wireless hub (64) to transmit the data.
7. A calibration system (10) as set forth in claim 6 wherein said position sensitive calibration device (28) includes an analog to digital (A/D) converter (62) connected to said circuit (52) and said wireless hub (64).
8. A calibration system (10) as set forth in claim 7 wherein said wherein said position sensitive calibration device (28) includes a frame (34) to enclose said circuit (52), said A/D converter (62), and said wireless hub (64).
9. A calibration system (10) as set forth in claim 1 including an adapter fixture (24) attached to the industrial robot (12) and said focusable laser (22) being mounted to said adapter fixture (24).
10. A calibration system (10) as set forth in claim 1 including a camera (26) mounted to the industrial robot (12) at an angle to the laser beam to form a triangle.
11. A calibration system (10) as set forth in claim 3 wherein said at least one position sensitive device (38) is of a segmented type.
12. A method for calibrating an industrial robot (12) comprising the steps of:
providing a focusable laser (22) mounted to the industrial robot (12); providing a position sensitive calibration device (28) having at least one position sensitive device (PSD) (38);
aiming a laser beam from the focusable laser (22) at a center of the at least one PSD (38) to find a beam position of a pose of the industrial robot (12);
recording joint angles for that particular pose of the industrial robot (12) by a controller (72) based on the beam position;
providing a kinematics error model of the industrial robot (12) for the controller (72);
using a non-linear iterative optimization on the kinematics error model by the controller (72) to identify robot external parameters and joint offset from the recorded joint angles; and
calibrating the robot external parameters and the joint offset of the industrial robot (12) by the controller (72) to make the industrial robot (12) more precise and accurate.
13. A method as set forth in claim 12 including the step of providing a pair of position sensitive devices (38) spaced at an angle relative to each other.
14. A method as set forth in claim 12 including the step of providing a mounting fixture (36) and supporting the PSDs (38) at a fixed angle therebetween with said mounting fixture (36).
15. A method as set forth in claim 12 including the step of providing a circuit (52) for recording data of the position and the joint angles.
16. A method as set forth in claim 12 wherein said step of calibrating comprises calibrating the robot external parameters and joint offset of the industrial robot (12) simultaneously.
17. A method as set forth in claim 12 including the step of completing the calibration by locating a top center position (20) of the industrial robot (12) at four different positions.
18. A method as set forth in claim 12 including the step of providing a camera (26) and mounting the camera (26) on the industrial robot (12) at an angle to the laser beam to form a triangle.
19. A method as set forth in claim 18 including the steps of using a triangular relationship between the camera (26) and the laser (22) to compute depth and height information between the laser (22) and the at least one PSD (38).
20. A method as set forth in claim 12 wherein said step of using a non-linear iterative optimization comprises using a Levenberg-Marquardt algorithm (LMA) to minimize a sum of squared errors.
PCT/US2014/064535 2013-11-08 2014-11-07 Calibration system and method for calibrating industrial robot WO2015070010A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US201361901684P 2013-11-08 2013-11-08
US61/901,684 2013-11-08

Publications (1)

Publication Number Publication Date
WO2015070010A1 true WO2015070010A1 (en) 2015-05-14

Family

ID=53042120

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US2014/064535 WO2015070010A1 (en) 2013-11-08 2014-11-07 Calibration system and method for calibrating industrial robot

Country Status (1)

Country Link
WO (1) WO2015070010A1 (en)

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105598957A (en) * 2016-01-27 2016-05-25 国机集团科学技术研究院有限公司 Industrial robot kinematic modelling method and system
CN106799745A (en) * 2017-01-17 2017-06-06 北京航空航天大学 A kind of industrial machinery arm precision calibration method based on collocating kriging
CN106996795A (en) * 2016-01-22 2017-08-01 腾讯科技(深圳)有限公司 Join scaling method and device outside a kind of vehicle-mounted laser
DE102016001227A1 (en) * 2016-02-04 2017-08-10 Kuka Roboter Gmbh load sensor
CN107443388A (en) * 2017-10-11 2017-12-08 北京航空航天大学 A kind of mechanical arm absolute positioning error method of estimation based on general Ke Lijin
CN107717988A (en) * 2017-10-11 2018-02-23 北京航空航天大学 A kind of industrial machinery arm precision calibration method based on general Ke Lijin
CN108115724A (en) * 2016-11-29 2018-06-05 沈阳新松机器人自动化股份有限公司 The test method that a kind of robot is servo-actuated
CN109176531A (en) * 2018-10-26 2019-01-11 北京无线电测量研究所 A kind of tandem type robot kinematics calibration method and system
CN110561500A (en) * 2019-09-30 2019-12-13 宜宾职业技术学院 space positioning error measuring device and measuring method thereof
WO2020034402A1 (en) * 2018-08-16 2020-02-20 居鹤华 Axis-invariant-based accurate multi-axis robot structure parameter measurement method
CN111136661A (en) * 2020-02-19 2020-05-12 珠海格力智能装备有限公司 Robot position calibration method, device and system and robot system
WO2020118244A1 (en) * 2018-12-07 2020-06-11 Activ Surgical, Inc. Mechanical coupling to join two collaborative robots together for means of calibration
WO2020160776A1 (en) * 2019-02-07 2020-08-13 Abb Schweiz Ag Method of calibrating a tool of an industrial robot, control system and industrial robot
WO2021056461A1 (en) * 2019-09-27 2021-04-01 Abb Schweiz Ag Apparatus and method for calibrating laser displacement sensor for use with robot

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6044308A (en) * 1997-06-13 2000-03-28 Huissoon; Jan Paul Method and device for robot tool frame calibration
US6430472B1 (en) * 1999-12-20 2002-08-06 Servo-Robot Inc. Robot feature tracking devices and methods
US20050273202A1 (en) * 2004-06-02 2005-12-08 Rainer Bischoff Method and device for improving the positioning accuracy of a manipulator
US20090157226A1 (en) * 2004-11-19 2009-06-18 Dynalog ,Inc. Robot-cell calibration
WO2013023130A1 (en) * 2011-08-11 2013-02-14 Siemens Healthcare Diagnostics Inc. Methods and apparatus to calibrate an orientation between a robot gripper and a camera

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6044308A (en) * 1997-06-13 2000-03-28 Huissoon; Jan Paul Method and device for robot tool frame calibration
US6430472B1 (en) * 1999-12-20 2002-08-06 Servo-Robot Inc. Robot feature tracking devices and methods
US20050273202A1 (en) * 2004-06-02 2005-12-08 Rainer Bischoff Method and device for improving the positioning accuracy of a manipulator
US20090157226A1 (en) * 2004-11-19 2009-06-18 Dynalog ,Inc. Robot-cell calibration
WO2013023130A1 (en) * 2011-08-11 2013-02-14 Siemens Healthcare Diagnostics Inc. Methods and apparatus to calibrate an orientation between a robot gripper and a camera

Cited By (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106996795A (en) * 2016-01-22 2017-08-01 腾讯科技(深圳)有限公司 Join scaling method and device outside a kind of vehicle-mounted laser
CN105598957A (en) * 2016-01-27 2016-05-25 国机集团科学技术研究院有限公司 Industrial robot kinematic modelling method and system
DE102016001227A1 (en) * 2016-02-04 2017-08-10 Kuka Roboter Gmbh load sensor
CN108115724A (en) * 2016-11-29 2018-06-05 沈阳新松机器人自动化股份有限公司 The test method that a kind of robot is servo-actuated
CN106799745A (en) * 2017-01-17 2017-06-06 北京航空航天大学 A kind of industrial machinery arm precision calibration method based on collocating kriging
CN107443388A (en) * 2017-10-11 2017-12-08 北京航空航天大学 A kind of mechanical arm absolute positioning error method of estimation based on general Ke Lijin
CN107717988A (en) * 2017-10-11 2018-02-23 北京航空航天大学 A kind of industrial machinery arm precision calibration method based on general Ke Lijin
WO2020034402A1 (en) * 2018-08-16 2020-02-20 居鹤华 Axis-invariant-based accurate multi-axis robot structure parameter measurement method
CN109176531A (en) * 2018-10-26 2019-01-11 北京无线电测量研究所 A kind of tandem type robot kinematics calibration method and system
WO2020118244A1 (en) * 2018-12-07 2020-06-11 Activ Surgical, Inc. Mechanical coupling to join two collaborative robots together for means of calibration
WO2020160776A1 (en) * 2019-02-07 2020-08-13 Abb Schweiz Ag Method of calibrating a tool of an industrial robot, control system and industrial robot
WO2021056461A1 (en) * 2019-09-27 2021-04-01 Abb Schweiz Ag Apparatus and method for calibrating laser displacement sensor for use with robot
US11820006B2 (en) 2019-09-27 2023-11-21 Abb Schweiz Ag Apparatus and method for calibrating laser displacement sensor for use with robot
CN110561500A (en) * 2019-09-30 2019-12-13 宜宾职业技术学院 space positioning error measuring device and measuring method thereof
CN110561500B (en) * 2019-09-30 2021-04-13 宜宾职业技术学院 Space positioning error measuring device and measuring method thereof
CN111136661A (en) * 2020-02-19 2020-05-12 珠海格力智能装备有限公司 Robot position calibration method, device and system and robot system

Similar Documents

Publication Publication Date Title
WO2015070010A1 (en) Calibration system and method for calibrating industrial robot
CN109794938B (en) Robot hole-making error compensation device and method suitable for curved surface structure
US9517560B2 (en) Robot system and calibration method of the robot system
US8457786B2 (en) Method and an apparatus for calibration of an industrial robot system
CN108748159B (en) Self-calibration method for tool coordinate system of mechanical arm
US7756608B2 (en) System for calibration of an industrial robot and a method thereof
US6822412B1 (en) Method for calibrating and programming of a robot application
EP2547490B1 (en) Calibration of a base coordinate system for an industrial robot
US8989897B2 (en) Robot-cell calibration
JP4021413B2 (en) Measuring device
CN110883774B (en) Robot joint angle zero calibration system, method and storage medium
KR101797122B1 (en) Method for Measurement And Compensation of Error on Portable 3D Coordinate Measurement Machine
CN112959364B (en) Industrial robot assembly error compensation system and method
CN110977963A (en) Self-adaptive alignment control method of industrial robot calibration system
US7957834B2 (en) Method for calculating rotation center point and axis of rotation, method for generating program, method for moving manipulator and positioning device, and robotic system
CN105865341A (en) Device and method for measuring repeated positioning accuracy of industrial robot spatial poses
Santolaria et al. Self-alignment of on-board measurement sensors for robot kinematic calibration
CN113021017B (en) Shape-following self-adaptive 3D detection and processing system
JP2006297559A (en) Calibration system and robot's calibration method
Nieves et al. Development of a position sensitive device and control method for automated robot calibration
King et al. Vision guided robots for automated assembly
Liyanage et al. A single time scale visual servoing system for a high speed SCARA type robotic arm
CN115179323A (en) Machine end pose measuring device based on telecentric vision constraint and precision improving method
Nieves et al. Laser beam multi-position alignment approach for an automated industrial robot calibration
KR101826577B1 (en) The tool calibration method using robot's wrist axes movements

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 14860500

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 14860500

Country of ref document: EP

Kind code of ref document: A1