CN112105484B - Robot kinematics parameter self-calibration method, system and storage device - Google Patents
Robot kinematics parameter self-calibration method, system and storage device Download PDFInfo
- Publication number
- CN112105484B CN112105484B CN201980017461.0A CN201980017461A CN112105484B CN 112105484 B CN112105484 B CN 112105484B CN 201980017461 A CN201980017461 A CN 201980017461A CN 112105484 B CN112105484 B CN 112105484B
- Authority
- CN
- China
- Prior art keywords
- robot
- calibration
- standard workpiece
- error
- actual
- Prior art date
- Legal status (The legal status 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 status listed.)
- Active
Links
Images
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1628—Programme controls characterised by the control loop
- B25J9/1653—Programme controls characterised by the control loop parameters identification, estimation, stiffness, accuracy, error analysis
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J19/00—Accessories fitted to manipulators, e.g. for monitoring, for viewing; Safety devices combined with or specially adapted for use in connection with manipulators
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1656—Programme controls characterised by programming, planning systems for manipulators
- B25J9/1661—Programme controls characterised by programming, planning systems for manipulators characterised by task planning, object-oriented languages
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/02—Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]
Abstract
A method for self-calibrating kinematic parameters of a robot, the method comprising: the end effector of the calibration robot contacts the surface of the standard workpiece for a plurality of times, and the angle of each shaft of the calibration robot contacted each time is recorded, wherein the standard workpiece is arranged on the flange of the reference robot; the method comprises the steps that the pose of a standard workpiece is changed by a reference robot, the calibration robot repeatedly executes the steps that an end effector contacts the surface of the standard workpiece for a plurality of times, and the angles of all axes of the calibration robot are recorded each time, so that a plurality of groups of axis angle values of the calibration robot are obtained; the actual kinematic parameters of the calibration robot are obtained by utilizing the plurality of groups of shaft angle values, the nominal kinematic parameters of the calibration robot and the actual radius of the standard workpiece, so that the efficiency can be improved, the automatic calibration can be realized, and the batch calibration is easy to realize. And also relates to a system for executing the method and a storage device storing the program file of the method.
Description
Technical Field
The application relates to the field of robots, in particular to a robot kinematics parameter self-calibration method, a system and a storage device.
Background
The motion precision of the robot plays a crucial role in the application reliability of the industrial robot in production. Errors in geometric parameters (DH parameters) of each connecting rod of the robot are main links causing errors in a robot system, and are mainly caused by deviations between actual geometric parameters and theoretical parameter values of the connecting rods generated in the manufacturing and mounting processes.
There are two common methods for calibrating DH parameters of a robot: the measuring method is to measure the pose of a calibrated robot TCP point at each measuring point by using external measuring equipment such as a laser tracker or a three-coordinate measuring machine, and identify the error of a DH parameter according to the error of the actual measuring pose and the theoretical measuring pose obtained by correcting the DH parameter of a robot. However, since large-scale high-precision measuring equipment such as a laser tracker has the characteristics of high cost and large volume, the requirement that a plurality of robots are required to be calibrated simultaneously for improving the efficiency in mass production of the robots is difficult to meet.
The other method is to use the self-calibration method of the standard workpiece, the machine tool measuring head is installed on the robot flange, the specially-manufactured calibration standard workpiece is three standard balls fixed on the base, in the calibration process, the robot is controlled to make the machine tool measuring head touch the surface of each standard ball for multiple times, the pose of the base of the standard ball workpiece is changed, the measurement process is repeated, the Cartesian position coordinates of the standard ball surface measuring point under the nominal DH parameters are calculated according to the measured shaft position and kinematics positive solution, multiple groups of ball centers are fitted through spherical fitting, and the distances of the theoretical ball centers are calculated. And (5) calibrating DH parameters by using errors of the calculated theoretical center distance and the actual center distance. However, custom-made workpieces with three standard balls are used as fixed physical constraints in self-calibration, standard workpieces with high machining precision are required, and a scheme for adjusting the pose of the workpiece is required to be additionally arranged, so that the cost is increased and the degree of automation is reduced.
Disclosure of Invention
The application provides a robot kinematics parameter self-calibration method, a system and a storage device, which can reduce cost, realize automatic calibration and facilitate batch calibration.
In order to solve the above problems, the present application provides a robot kinematic parameter self-calibration method, including: the calibration robot makes the end effector contact with the surface of the standard workpiece for a plurality of times, and records the angle of each shaft contacting the calibration robot, wherein the standard workpiece is arranged on a flange of the reference robot; the reference robot changes the pose of the standard workpiece, the calibration robot repeatedly executes the steps of contacting the surface of the standard workpiece with the end effector for a plurality of times and recording the angles of each shaft contacting the calibration robot each time so as to acquire a plurality of groups of shaft angle values of the calibration robot; and obtaining the actual kinematic parameters of the calibration robot by using the multiple groups of shaft angle values, the nominal kinematic parameters of the calibration robot and the actual radius of the standard workpiece.
In order to solve the above problem, the present application further provides a robot kinematic parameter self-calibration system, including: calibrating a robot and a reference robot; the flange of the calibration robot is provided with an end effector, and the flange of the reference robot is provided with a standard workpiece; the reference robot is used for changing the pose of the standard workpiece; the calibration robot is used for executing instructions to realize the robot kinematics parameter self-calibration method.
In order to solve the above problems, the present application further proposes a storage device having a program file stored therein, wherein the program file is executed to implement the robot kinematic parameter self-calibration method as described above.
Compared with the prior art, in the embodiment of the application, the reference robot provided with the standard workpiece on the flange is utilized for auxiliary calibration, the calibration tool is simple, the efficiency is high, and when the calibration is carried out, the motion instructions of the calibration robot and the reference robot are only required to be input once, the calibration robot and the reference robot can automatically move and calculate in the calibration process, manual intervention is not required, so that the calibration automation degree is high, and the method is suitable for the large-batch calibration requirement in the robot production process.
Drawings
FIG. 1 is a schematic flow chart of a first embodiment of a method for self-calibration of kinematic parameters of a robot according to the present application;
FIG. 2 is a schematic diagram of an implementation scenario of the method of FIG. 1;
FIG. 3 is a schematic diagram showing a specific flow of steps S11 and S12 in FIG. 1;
FIG. 4 is a schematic diagram showing a specific flow of step S13 in FIG. 1;
FIG. 5 is a schematic flow chart of a second embodiment of a method for self-calibration of kinematic parameters of a robot according to the present application;
FIG. 6 is a schematic diagram showing a specific flow of each step in FIG. 5;
FIG. 7 is a schematic diagram of a first embodiment of a robot kinematic parameter self-calibration system according to the present application;
FIG. 8 is a schematic diagram of a second embodiment of a robot kinematic parameter self-calibration system according to the present application;
FIG. 9 is a schematic diagram of an embodiment of a memory device according to the present application.
Detailed Description
The present application is described in detail below with reference to the accompanying drawings and examples.
As shown in fig. 1, a first embodiment of a method for self-calibrating kinematic parameters of a robot according to the present application includes:
s11: the calibration robot makes the end effector contact the surface of the standard workpiece for a plurality of times, and records the angle of each shaft of the calibration robot when each contact is made.
The end effector is arranged on a flange of the calibration robot, and the standard workpiece is arranged on a flange of the reference robot. The angle of each axis of the robot means the rotation angle of each joint of the robot by taking the axis of each joint as a rotating shaft.
As shown in fig. 1 and 2, in an application example, the end effector 10 is mounted on the flange of the calibration robot a, the standard workpiece 20 is mounted on the flange of the reference robot B, and in order to enable the calibration robot a to contact different positions on the surface of the standard workpiece 20, the calibration robot a and the reference robot B are oppositely arranged, so that the smart working spaces of the calibration robot a and the reference robot B have larger coincidence, that is, the movement space coincidence of the two mechanical arms is larger, for example, the coincidence reaches at least 50%. Wherein the end effector 10 may be a machine tool side head as in fig. 2, in order to meet the requirement of calibration accuracy, the machine tool measuring head may be of a model with repetition accuracy of 1um or less, and the standard workpiece 20 may be a standard ball workpiece, which needs to have high sphericity and surface smoothness, for example, a three-coordinate gauge standard ball.
At the time of calibration, the reference robot B controls its mechanical arm so that the pose of the standard workpiece 20 is C i The calibration robot a controls its mechanical arm so that the end effector 10 contacts the surface of the standard workpiece 20 a plurality of times, and each contact records the angle of each axis of the calibration robot a. Wherein, a controller (not shown) of the calibration robot A touches a standard worker on the end effector 10The angles of the axes of the calibration robot a are recorded after the surface of the piece 20, and the angles of the axes can be transmitted to an external device or generated to be stored and recorded by the calibration robot a.
Optionally, as shown in fig. 3, step S11 specifically includes:
s111: the end effector of the calibration robot contacts different positions of the surface of the standard workpiece m times in different postures, and the angle of each axis of the calibration robot contacted each time is recorded.
In this embodiment, the calibration robot is a chain robot. The chain robot may be described by the structural formula of a joint-link- … … -link-end effector. DH parameters (Denavit-Hartenberg parameters) are four parameters of a robot arm mathematical model and coordinate system determination system proposed by Denavit and Hartenberg in 1955 to express the positional angular relationship of adjacent joints and links therebetween.
Since the number of DH parameters corresponding to each link of the chain robot is 4, in order to accurately calibrate the kinematic parameters DH parameters of the robot, the number of times m of the calibration robot a contacting the standard workpiece 20 with the same pose should be greater than 4, for example, preset m=8.
Specifically, as shown in fig. 2 and 3, in order to improve the accuracy of calibration, when the calibration robot a controls the end effector 10 to contact the standard workpiece 20, different positions on the surface of the standard workpiece 20 may be contacted with different postures, and each time contact is performed, the angle q of each axis of the calibration robot a is recorded ij . For example, the end effector 10 may contact the surface of the standard workpiece 20 at different locations each time and with different poses, or may contact the same surface of the standard workpiece 20 at different poses a number of times.
S12: the reference robot changes the pose of the standard workpiece, and the calibration robot repeatedly executes step S11 to obtain a plurality of groups of shaft angle values of the calibration robot.
Specifically, in order to obtain more sufficient data, the reference robot may change the pose of the standard workpiece multiple times, after changing the pose each time, the calibration robot may repeatedly perform the above step S11, so as to obtain angles of each axis of the calibration robot corresponding to different poses of the standard workpiece, where the angles of each axis of the calibration robot obtained by recording under the same pose of the standard workpiece form a set of axis angle values, and then multiple sets of axis angle values of the calibration robot may be obtained, so as to calculate the actual kinematic parameters of the calibration robot, that is, the actual DH parameters, subsequently.
As shown in connection with fig. 2, the reference robot B may control its arm movement to change the pose of the standard workpiece 20, e.g., from pose C 1 Change to pose C 2 Then, the calibration robot a may repeatedly perform step S11, i.e. control the end effector 10 to contact different positions on the surface of the standard workpiece 20 multiple times, so as to obtain the pose C of the standard workpiece 1 And pose C 2 And the two groups of corresponding shaft angle values of the calibrating robots respectively.
Optionally, as shown in fig. 3, step S12 includes:
s121: it is determined whether the number of times the reference robot changes the pose of the standard workpiece is greater than (n-1).
In order to fully acquire calibration data, selecting a specific value of n according to the number of axes of the calibration robot and the number of DH parameters of each axis. For example, when the calibration robot is a six-axis serial robot, the value of n should be greater than 20, such as n=60.
If the result is not greater than the above, the following step S122 is executed, otherwise step S124 is executed.
S122: the pose of the standard workpiece is changed, and the process returns to step S111.
S124: and (3) calibrating the angles of each axis of the robot according to the acquired n x m groups, and continuously executing the step S13.
Specifically, in one application example, the reference robot uses a counting device, when the counting device counts once each time the mechanical arm is controlled to change the pose of the standard workpiece, before the reference robot changes the pose of the standard workpiece each time, it can be judged whether the number of times the reference robot has changed the pose of the standard workpiece reaches the requirement, that is, whether the number of times the reference robot has changed is greater than (n-1) (if so, whether the number of times the reference robot has changed is greater than (n-1)), that is, whether the angles of the axes of the plurality of groups of calibration robots are measured under the n poses of the standard workpiece have been completed or not is judged. If the number of changes is less than (n-1), step S122 may be continuously performed to change the pose of the standard workpiece, and step S111 may be performed back to obtain the angles of the calibration robots corresponding to the changed pose of the standard workpiece, where the angles contact each axis of the surface of the standard workpiece multiple times. If the number of changes is greater than n, that is, the number of changes of the pose of the standard workpiece has reached the requirement, calibration data is already sufficiently acquired at this time, and the subsequent step S13 may be continued.
S13: and calculating the actual kinematic parameters of the calibration robot by using the multiple groups of shaft angle values, the nominal kinematic parameters of the calibration robot and the actual radius of the standard workpiece.
The standard workpiece adopts a standard ball workpiece, the actual radius of the standard workpiece can be obtained in advance, and the nominal kinematic parameters of the calibration robot can be preset when leaving a factory or can be obtained in advance.
Specifically, by utilizing the positive solution and the inverse solution of the robot kinematics, a DH modeling method is adopted, a relation equation of the plurality of groups of shaft angle values, the nominal kinematics parameters of the calibration robot, the actual radius of the standard workpiece and the actual kinematics parameters of the calibration robot can be established in advance, so that the obtained plurality of groups of shaft angle values, the nominal kinematics parameters of the calibration robot and the actual radius of the standard workpiece are substituted into the established relation equation, the relation equation is solved, and the actual kinematics parameters of the calibration robot can be calculated.
Optionally, as shown in fig. 4, step S13 includes:
s131: and calculating the theoretical position of the contact point between the end effector and the surface of the standard workpiece corresponding to each group of shaft angle values by using the plurality of groups of shaft angle values and nominal kinematic parameters of the calibration robot.
The robot kinematics positive solution refers to a process of solving the pose of the robot flange center under the Cartesian space robot base coordinate system by using the nominal kinematics parameters (namely the nominal DH parameters) of the known robot and the known robot shaft angles. When the end effector is arranged on the flange, the pose of the end effector under the robot base coordinate system can be obtained by simply converting the solved pose of the flange center under the robot base coordinate system. Therefore, by using the obtained multiple groups of shaft angle values and nominal DH parameters of the calibration robot, according to the kinematic positive solution of the robot, the pose of the tool center point (namely TCP point) of the end effector of the calibration robot corresponding to each group of shaft angle values under the robot base coordinate system can be calculated. The nominal DH parameters are adopted in the calculation process, so that the calculated pose of the TCP point under the robot base coordinate system is the theoretical pose of the contact point of the end effector and the surface of the standard workpiece under the robot base coordinate system, and the theoretical position of the contact point of the end effector and the surface of the standard workpiece under the robot base coordinate system can be obtained from the theoretical pose.
Specifically, when the obtained multiple sets of axis angle values of the calibration robot include n x m sets of angles of each axis of the calibration robot corresponding to n standard workpiece poses, the theoretical positions of n sets of contact points can be calculated according to the kinematic forward solution of the robot, each standard workpiece pose corresponds to the theoretical position of one set of contact points, and each set of theoretical positions of contact points includes m theoretical positions of contact points, wherein the theoretical positions of contact points are theoretical positions of contact points under a robot base coordinate system.
S132: and fitting to obtain the fitting radius of the standard workpiece corresponding to each group of contact point theoretical positions by utilizing the groups of contact point theoretical positions.
Specifically, when the standard workpiece is a standard ball workpiece, the calculated theoretical positions of multiple groups of contact points are utilized, a spherical fitting algorithm is adopted to fit the fitting radius of the standard workpiece corresponding to the theoretical positions of each group of contact points, and the theoretical positions of one group of contact points can be fitted to obtain the fitting radius of one standard workpiece.
S133: and calculating the actual kinematic parameters according to the fitting radius and the fitting radius error between the actual radii.
The actual radius of the standard workpiece can be obtained in advance after the standard workpiece is selected, and the fitting radius error can be obtained by utilizing the difference between the fitting radius and the actual radius.
Since the original data adopted by the fitting is the theoretical position of the contact point, and the theoretical position of the contact point is calculated by adopting the nominal DH parameter, a corresponding relation exists between the fitting error between the fitting radius obtained by the fitting and the actual radius and the DH parameter error, namely the kinematic parameter error between the actual kinematic parameter (actual DH parameter) and the nominal kinematic parameter (nominal DH parameter), can be calculated by utilizing the corresponding relation. Then, as the nominal DH parameters of the calibration robot can be obtained in advance, the actual DH parameters of the calibration robot can be obtained by superposing the kinematic parameter errors by using the nominal DH parameters.
In the embodiment, the reference robot provided with the standard workpiece on the flange is used for auxiliary calibration, the calibration tool is simple and high in efficiency, when the calibration is performed, the motion instructions of the calibration robot and the reference robot are input once, the calibration robot and the reference robot can automatically move and calculate in the calibration process without manual intervention, so that the calibration automation degree is high, and the method is suitable for the large-batch calibration requirement in the robot production process.
As shown in fig. 5, a second embodiment of the method for self-calibrating the kinematic parameters of the robot according to the present application further includes, before step S133 is further defined, on the basis of the first embodiment of the method for self-calibrating the kinematic parameters of the robot according to the present application:
s201: a first linear relationship equation between the position error of the contact point and the kinematic parameter error is established.
Wherein, since the theoretical position of the contact point is calculated by using the nominal kinematic parameter, the position error of the contact point is caused by the kinematic parameter error, and a first linear relation equation between the contact point and the position error and the kinematic parameter error can be established.
Since the linear relation equation can be expressed by using a matrix equation, the solution of the linear relation equation can be conveniently and rapidly solved by solving the matrix equation, so, as shown in fig. 6, step S201 may include:
s2011: an error matrix of the position of the contact point is established using the difference between the theoretical position and the actual position of the contact point as an element.
The theoretical position of the contact point is the theoretical position of the contact point under the robot base coordinate system, and the actual position of the contact point is the actual position of the contact point under the robot base coordinate system.
From the positive solution P of the robot ij =f(q ij ,DH n ) Wherein P is ij Is the position of the end effector of the robot, q ij DH is the angle of each axis of the robot n Is the nominal DH parameter. The nominal DH parameter DH can be obtained by utilizing the recorded calibration robot multiple groups of shaft angle values n The theoretical position p of the contact point of the end effector of the calibration robot with the surface of the standard workpiece i ′ j . Assuming that the actual position of the contact point is p ij The theoretical position p of the contact point i ′ j And the actual position p ij Is Δp as the difference of ij =p i ′ j -p ij Then, taking the difference between the theoretical position and the actual position of the contact point as an element, an error matrix Δp= (Δp) of the position of the contact point can be established 11 …Δp nm ) T N is n positions of a standard workpiece adopted when the angles of the axes of the calibration robot are recorded, and each position of the standard workpiece corresponds to m recording positions of the angles of the axes of the calibration robot.
S2012: and taking the difference between the nominal kinematic parameters and the actual kinematic parameters as elements to establish an error matrix of the kinematic parameters.
Assuming that the actual DH parameter is DH a The nominal DH parameter of the obtained calibration robot is DH n Since there are a plurality of DH parameters of the robot, DH is a plurality of DH parameters a And DH n All can be expressed in a matrix mode, and an error matrix delta DH=DH of the kinematic parameters of the calibration robot can be established n -DH a 。
S2013: a first jacobian of the theoretical position of the contact point with respect to the kinematic parameter is obtained.
In particular, the jacobian matrix is a matrix composed of first derivatives, and the theoretical position of the contact point is related to the kinematic parametersFirst jacobian matrix J of (1) DH Can be expressed as follows:
wherein k is the number of distinguishable DH parameters, and the specific value of k is related to the number of axes of the calibration robot. When a six-axis serial robot is used in this embodiment, k may be equal to 20 because the four relevant parameters of the first axis are not distinguishable. X is x 11 ……z nm The coordinates of the theoretical position of the contact point obtained after the recorded shaft angle value is positively solved by the nominal DH parameter are utilized; DH (DH) 1 ……DH k Is the nominal DH parameter.
S2014: establishing a first linear relation equation shown in the following formula (1):
Δp=J DH ΔDH (1)
specifically, according to the kinematic principle of the robot, it can be deduced that the DH parameter error and the position error of the contact point have an approximate linear relationship as shown in the above formula (1). Wherein Δp represents an error matrix of the position of the contact point, J DH Representing a first jacobian matrix, Δdh represents an error matrix for the kinematic parameters.
S202: a second linear relationship equation is established between the fitting radius error of the standard workpiece and the position error of the contact point.
The fitting radius of the standard workpiece is obtained by utilizing the theoretical position fitting of the contact point, so that the fitting radius error of the standard workpiece is caused by the position error of the contact point, and a second linear relation equation between the fitting radius error of the standard workpiece and the position error of the contact point can be established.
Since the linear relation equation can be expressed by using a matrix equation, the solution of the linear relation equation can be conveniently and rapidly solved by solving the matrix equation, so, as shown in fig. 6, step S202 may include:
s2021: and taking the difference between the fitting radius and the actual radius of the standard workpiece as an element, and establishing a fitting radius error matrix of the standard workpiece.
Specifically, when the standard workpiece adopts the standard ball workpiece, the theoretical positions of multiple groups of contact points are utilized for spherical fitting, so that the fitting radii r of multiple standard workpieces can be obtained i The actual radius r of the standard workpiece can be obtained in advance when the standard workpiece is selected, and then a plurality of groups of fitting radii r are formed i And the difference Deltar between the actual radius r i =r i -r as element, a fitting radius error matrix Δr= (Δr) for the standard workpiece can be established 1 …Δr n ) T N is n pose of a standard workpiece adopted when the angles of all axes of the robot are calibrated.
S2022: a second jacobian of the fit radius of the standard workpiece with respect to the theoretical position of the contact point is obtained.
Specifically, the jacobian matrix is a matrix composed of first derivatives, and then the second jacobian matrix J of the fitting radius of the standard workpiece with respect to the theoretical position of the contact point p Can be expressed as follows:
wherein r is 1 ……r n Is the fitting radius obtained by fitting; x is x 11 ……z nm The coordinates of the theoretical position of the contact point obtained by orthosolving the nominal DH parameters by using the recorded n x m sets of axis angle values.
S2023: establishing a second linear relation equation shown in the following formula (2):
Δr=J p Δp (2)
specifically, it can be deduced that the fitting radius error and the position error of the contact point have an approximate linear relationship as shown in the above formula (2). Wherein Deltar represents a fitting radius error matrix of the standard workpiece, J p Representing a second jacobian matrix and deltap representing an error matrix for the location of the contact points.
S203: and combining the first linear relation equation and the second linear relation equation to establish a third linear relation equation between the fitting radius error and the kinematic parameter error.
Specifically, since the fitting radius error can be calculated, and a second linear relation equation exists between the fitting radius error and the position error of the contact point, and a first linear relation equation exists between the position error of the contact point and the kinematic parameter error, a third linear relation equation between the fitting radius error and the kinematic parameter error can be established by combining the first linear relation equation and the second linear relation equation.
Alternatively, when the first linear relation equation is the above formula (1) and the second linear relation equation is the above formula (2), as shown in fig. 6, step S203 includes:
s2031: substituting the first linear relation equation into the second linear relation equation to obtain a third linear relation equation shown in the following formula (3):
Δr=JΔDH (3)
wherein j=j p J DH 。
The steps S201 to S203 are only required to be executed once, and the execution process only needs to be executed before the step S133, and after the third linear relation equation is obtained, only the corresponding data needs to be substituted into the third linear relation equation, so that the required parameters can be calculated.
With continued reference to fig. 5, step S133 specifically includes:
s204: substituting the fitting radius error into the third linear relation equation, and solving the third linear relation equation to obtain the actual kinematic parameters of the calibration robot.
After the third linear relation equation and the fitting radius error are obtained, the fitting radius error can be substituted into the third linear relation equation, and the third linear relation equation is solved, so that the kinematic parameter error of the calibration robot can be calculated. Then, as the nominal kinematics parameters of the calibration robot can be obtained in advance, the actual kinematics parameters of the calibration robot can be obtained by superposing the kinematics parameter errors by using the nominal kinematics parameters.
When there are more parameters, the linear equation can be solved conveniently and quickly by matrix operation, so, as shown in fig. 6, step S204 may include:
s2041: and solving a third linear relation equation to obtain an error matrix for calibrating the kinematic parameters of the robot.
The error matrix of the kinematic parameters of the calibration robot is a matrix formed by errors of the nominal DH parameters and the actual DH parameters of the calibration robot.
S2042: and superposing the nominal kinematic parameters of the calibration robot and the error matrix of the kinematic parameters to obtain the actual kinematic parameters of the calibration robot.
Specifically, the third linear relation equation may adopt a matrix equation as shown in the formula (3), at this time, a solution of the third linear relation equation may be obtained by inverse operation of the matrix, that is, an error matrix of the kinematic parameter of the calibration robot may be obtained, and then, an actual kinematic parameter of the calibration robot may be obtained by performing operation according to the error matrix of the kinematic parameter and the nominal kinematic parameter of the calibration robot.
In this embodiment, after a third linear relation equation between the fitting radius error and the kinematic parameter error is pre-established, the fitting radius error is substituted into the third linear relation equation only after the fitting radius error is obtained, and the actual kinematic parameter of the calibration robot can be simply and quickly calculated by using matrix inverse operation.
As shown in fig. 7, a first embodiment of the robot kinematic parameter self-calibration system of the present application includes: calibrating a robot A and a reference robot B.
Wherein the end effector 10 is mounted on the flange of the calibration robot a and the standard workpiece 20 is mounted on the flange of the reference robot B.
The reference robot B is used to change the pose of the standard workpiece 20.
The calibration robot A is used for executing instructions to realize the method provided by the first or second embodiment of the robot kinematics parameter self-calibration method.
The number of the calibrated kinematic parameters is related to the type of the calibrated robot A. In this embodiment, the calibration robot a may be a six-axis serial robot.
In order to allow the calibration robot a to contact different positions of the surface 201 of the standard workpiece 20, the calibration robot a and the reference robot B are disposed opposite to each other, so that the smart working spaces of the calibration robot a and the reference robot B have a larger overlap, that is, the movement space overlap of the two mechanical arms is larger, for example, the overlap reaches at least 60%.
In order to meet the requirement of calibration precision, the end effector 10 of the calibration robot a may select a machine tool measuring head with a repetition precision less than or equal to 1um, and the standard workpiece 20 may select a three-coordinate gauge standard sphere with higher sphericity and surface smoothness.
In the robot kinematics parameter self-calibration system, the reference robot with the standard workpiece mounted on the flange is utilized for auxiliary calibration, the calibration tool is simple, the efficiency is high, and when the robot is calibrated, the motion instructions of the calibration robot and the reference robot are only required to be input once, the calibration robot and the reference robot can automatically move and calculate in the calibration process, manual intervention is not required, so that the calibration automation degree is high, and the robot calibration system is suitable for the large-batch calibration requirements in the robot production process.
As shown in fig. 8, the structure of the second embodiment of the robot kinematic parameter self-calibration system of the present application is similar to that of the first embodiment of the robot kinematic parameter self-calibration system of the present application, except that it further includes: and the control device C is connected with the calibration robot A and the reference robot B and is used for controlling the movements of the calibration robot A and the reference robot B.
The control device C can be a control device such as a computer, a background server or a general controller and the like, and can output control instructions to the calibration robot A and the reference robot B to control the movements of the calibration robot A and the reference robot B.
In addition, the control device C may store motion data of the calibration robot a and the reference robot B, such as angle values of the respective axes, and the like. The control device C may also receive a manipulation instruction of a user or a control person to control the movements of the calibration robot a and the reference robot B according to the manipulation instruction.
As shown in fig. 9, in an embodiment of the storage device of the present application, a program file 901 is stored in the storage device 90, and the program file 901 is executed to implement a method as provided in the first or second embodiment of the method for self-calibrating kinematic parameters of a robot of the present application.
The storage device 90 may be a portable storage medium, such as a usb disk, an optical disc, or other storage devices, such as a hard disk, or may be a server, a mobile terminal, a robot, or an independent component that may be integrated in the foregoing devices, such as a main control chip.
In the embodiment, when the program stored in the storage device is executed, the reference robot with the standard workpiece mounted on the flange is used for assisting in calibration, the calibration tool is simple and high in efficiency, and when the calibration is performed, the motion instructions of the calibration robot and the reference robot are only required to be input once, the calibration robot and the reference robot can automatically move and calculate in the calibration process without manual intervention, so that the calibration automation degree is high, and the method is suitable for the large-batch calibration requirements in the robot production process.
The foregoing description is only of embodiments of the present application, and is not intended to limit the scope of the patent application, and all equivalent structures or equivalent processes using the descriptions and the contents of the present application or other related technical fields are included in the scope of the patent application.
Claims (20)
1. The robot kinematics parameter self-calibration method is characterized by comprising the following steps of:
the calibration robot makes the end effector contact with the surface of a standard workpiece for a plurality of times, and records the angle of each shaft of the calibration robot when each contact is made, and the standard workpiece is arranged on a flange of the reference robot;
the reference robot changes the pose of the standard workpiece, the calibration robot repeatedly executes the steps of contacting the surface of the standard workpiece for a plurality of times by the end effector and recording the angles of each axis of the calibration robot when each contact is performed so as to obtain a plurality of groups of axis angle values of the calibration robot;
and obtaining the actual kinematic parameters of the calibration robot by using the multiple groups of shaft angle values, the nominal kinematic parameters of the calibration robot and the actual radius of the standard workpiece.
2. The method of claim 1, wherein the calibrating the end effector of the robot to contact the surface of the standard workpiece multiple times and recording the angle of each axis of the calibrating robot at each contact comprises:
and the end effector of the calibration robot contacts different positions on the surface of the standard workpiece m times in different postures, and the angle of each axis of the calibration robot when each contact is recorded.
3. The method of claim 2, wherein the reference robot changes the pose of the standard workpiece, the calibration robot repeatedly performing the steps of contacting the standard workpiece surface with the end effector a plurality of times, and recording the angles of the axes of the calibration robot at each contact to obtain a plurality of sets of axis angle values for the calibration robot, comprising:
the reference robot changes the pose of the standard workpiece for n-1 times;
and each time the pose of the standard workpiece is changed, the calibration robot contacts the end effector with different poses at different positions on the surface of the standard workpiece, and the angles of the axes of the calibration robot during each contact are recorded to obtain m x n groups of angles of the axes of the calibration robot.
4. The method of claim 1, wherein the deriving the actual kinematic parameters of the calibration robot using the plurality of sets of axis angle values, the nominal kinematic parameters of the calibration robot, and the actual radius of the standard workpiece comprises:
calculating to obtain the theoretical position of the contact point between the end effector and the surface of the standard workpiece corresponding to each group of shaft angle values by using the groups of shaft angle values and nominal kinematic parameters of the calibration robot, wherein the angles of the shafts of the calibration robot recorded under the same pose of the standard workpiece form a group of shaft angle values;
fitting to obtain fitting radii of the standard workpiece corresponding to each group of theoretical contact point positions by utilizing a plurality of groups of theoretical contact point positions, wherein the plurality of theoretical contact point positions obtained by calculation through a group of shaft angle values are a group of theoretical contact point positions;
and calculating the actual kinematic parameters according to the fitting radius and the fitting radius error between the actual radii.
5. The method of claim 4, wherein the step of determining the position of the first electrode is performed,
before calculating the actual kinematic parameters according to the fitting radius error between the fitting radius and the actual radius, the method comprises the following steps:
establishing a first linear relation equation between the position error of the contact point and a kinematic parameter error, wherein the kinematic parameter error is an error between the actual kinematic parameter and the nominal kinematic parameter;
establishing a second linear relation equation between the fitting radius error and the position error of the contact point;
establishing a third linear relation equation between the fitting radius error and the kinematic parameter error by combining the first linear relation equation and the second linear relation equation;
the calculating the actual kinematic parameters according to the fitting radius and the fitting radius error between the actual radii includes:
substituting the fitting radius error into the third linear relation equation, and solving the third linear relation equation to obtain the actual kinematic parameters of the calibration robot.
6. The method of claim 5, wherein said establishing a first linear relationship equation between the position error and the kinematic parameter error of the contact point comprises:
taking the difference between the theoretical position and the actual position of the contact point as an element, and establishing an error matrix of the position of the contact point;
taking the difference between the nominal kinematic parameters and the actual kinematic parameters as an element, and establishing an error matrix of the kinematic parameters;
acquiring a first jacobian matrix of the theoretical position of the contact point with respect to the kinematic parameter;
establishing the first linear relation equation as shown in the following formula:
Δp=J DH ΔDH;
wherein Δp represents an error matrix of the position of the contact point, J DH Representing the first jacobian matrix, Δdh represents an error matrix for the kinematic parameter.
7. The method of claim 6, wherein said establishing a second linear relationship equation between the fitting radius error of the standard workpiece and the position error of the contact point comprises:
taking the difference between the fitting radius of the standard workpiece and the actual radius as an element, and establishing a fitting radius error matrix of the standard workpiece;
acquiring a second jacobian matrix of the fitting radius of the standard workpiece relative to the theoretical position of the contact point;
establishing the second linear relation equation as shown in the following formula:
Δr=J p Δp;
wherein Deltar represents a fitting radius error matrix of the standard workpiece, J p Representing the second jacobian, Δp represents an error matrix for the location of the contact point.
8. The method of claim 7, wherein said combining said first linear relationship equation and said second linear relationship equation to establish a third linear relationship equation between a fitting radius error of said standard workpiece and said kinematic parameter error comprises:
substituting the first linear relation equation into the second linear relation equation to obtain the third linear relation equation shown in the following formula:
Δr=JΔDH;
wherein j=j p J DH 。
9. The method of claim 5, wherein solving the third linear relationship equation to obtain the actual kinematic parameters of the calibration robot comprises:
solving the third linear relation equation to obtain an error matrix of the kinematic parameters of the calibration robot;
and superposing the nominal kinematic parameters of the calibration robot and the error matrix of the kinematic parameters to obtain the actual kinematic parameters of the calibration robot.
10. The method according to any of claims 1-9, wherein the calibration robot and the reference robot are arranged opposite.
11. The method of claim 2, wherein the calibration robot is a six-axis serial robot, and the value of m is greater than 4.
12. A method according to claim 3, wherein the calibration robot is a six-axis serial robot, and the value of n is greater than 20.
13. The method of claim 1, wherein the master workpiece is a three-coordinate gauge master sphere.
14. A robot kinematic parameter self-calibration system, comprising: calibrating a robot and a reference robot;
the flange of the calibration robot is provided with an end effector, and the flange of the reference robot is provided with a standard workpiece;
the reference robot is used for changing the pose of the standard workpiece;
the calibration robot is configured to execute instructions to implement the robot kinematic parameter self-calibration method of any one of claims 1-13.
15. The system of claim 14, wherein the calibration robot and the reference robot are disposed opposite.
16. The system of claim 14, wherein the end effector of the calibration robot is a machine tool gauge head having a repetition accuracy of less than or equal to 1 um.
17. The system of claim 14, wherein the master workpiece is a three-coordinate gauge master sphere.
18. The system as recited in claim 14, further comprising: and the control device is connected with the calibration robot and the reference robot and is used for controlling the movements of the calibration robot and the reference robot.
19. The system of claim 14, wherein the calibration robot is a six-axis tandem robot.
20. A storage device having stored therein a program file, wherein the program file is executed to implement the robot kinematics parameter self-calibration method according to any of claims 1-13.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/CN2019/088251 WO2020237407A1 (en) | 2019-05-24 | 2019-05-24 | Method and system for self-calibrating robot kinematic parameter, and storage device |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112105484A CN112105484A (en) | 2020-12-18 |
CN112105484B true CN112105484B (en) | 2023-05-05 |
Family
ID=73553338
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201980017461.0A Active CN112105484B (en) | 2019-05-24 | 2019-05-24 | Robot kinematics parameter self-calibration method, system and storage device |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN112105484B (en) |
WO (1) | WO2020237407A1 (en) |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112509064A (en) * | 2020-12-22 | 2021-03-16 | 北京百度网讯科技有限公司 | Method, device, equipment and storage medium for displaying camera calibration progress |
CN113459094B (en) * | 2021-06-23 | 2022-06-14 | 佛山智能装备技术研究院 | Industrial robot tool coordinate system and zero point self-calibration method |
DE102021128336A1 (en) | 2021-10-29 | 2023-05-04 | Carl Zeiss Industrielle Messtechnik Gmbh | System and method for calibrating and/or controlling movable multi-bar kinematics |
CN114018286A (en) * | 2021-11-04 | 2022-02-08 | 南京理工大学 | Full-automatic/manual batch calibration system and method for micro-inertia measurement unit |
CN114115013A (en) * | 2021-11-19 | 2022-03-01 | 深圳市汇川技术股份有限公司 | Robot motor control method, terminal device, and storage medium |
CN114536324B (en) * | 2022-01-11 | 2023-11-07 | 重庆智能机器人研究院 | Industrial robot automatic tool workpiece calibration method |
CN114310906B (en) * | 2022-01-24 | 2024-03-08 | 武汉惟景三维科技有限公司 | Coordinate conversion method in double-robot automatic measurement and scribing system |
CN115946123B (en) * | 2023-01-16 | 2023-10-31 | 佛山智能装备技术研究院 | Multi-tool center point and zero point calibration method for industrial robot |
CN116787443B (en) * | 2023-07-26 | 2023-11-21 | 中国科学院宁波材料技术与工程研究所 | Parallel mechanism kinematics calibration method and system based on unit dual quaternion |
CN117047789B (en) * | 2023-10-13 | 2024-01-23 | 北京壹点灵动科技有限公司 | Calibration method and device for robot parameters, electronic equipment and storage medium |
CN117349990B (en) * | 2023-12-05 | 2024-02-13 | 武汉科技大学 | Method and system for rapidly calibrating robot |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102006038064A1 (en) * | 2006-08-16 | 2008-02-28 | Siemens Ag | Method for determining position of rotation center and orientation of round axle of machine, involves determining midpoint of ball of calibration ball on basis multiple contacts of calibration ball with measuring probe |
CN102226677A (en) * | 2011-01-26 | 2011-10-26 | 东南大学 | Calibration method for multi-robot system base coordinate system possessing cooperation relation |
CN107042528A (en) * | 2017-06-01 | 2017-08-15 | 中国科学院宁波材料技术与工程研究所 | A kind of Kinematic Calibration system and method for industrial robot |
CN107995885A (en) * | 2016-11-18 | 2018-05-04 | 深圳配天智能技术研究院有限公司 | A kind of coordinate system scaling method, system and device |
CN109571471A (en) * | 2018-12-03 | 2019-04-05 | 宇环数控机床股份有限公司 | A method of it is demarcated for dual robot relative tertiary location |
CN109676636A (en) * | 2019-03-06 | 2019-04-26 | 南京航空航天大学 | A kind of industrial robot kinematics calibration system and scaling method |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4725965A (en) * | 1986-07-23 | 1988-02-16 | American Telephone And Telegraph Company | Method for calibrating a SCARA robot |
CN102022989B (en) * | 2010-09-29 | 2012-03-21 | 山东科技大学 | Robot calibration method based on exponent product model |
SE537534C2 (en) * | 2013-08-27 | 2015-06-02 | Cognibotics Ab | Method and system for determining at least one property of a manipulator |
CN103968761A (en) * | 2014-05-28 | 2014-08-06 | 中科华赫(北京)科技有限责任公司 | Absolute positioning error correction method of in-series joint type robot and calibration system |
CN105666490B (en) * | 2016-01-12 | 2018-06-15 | 昆明理工大学 | The calibration system and method for a kind of robot |
EP3327524B1 (en) * | 2016-11-29 | 2023-04-05 | GF Machining Solutions AG | Kinematic calibration |
CN108346165B (en) * | 2018-01-30 | 2020-10-30 | 深圳市易尚展示股份有限公司 | Robot and three-dimensional sensing assembly combined calibration method and device |
CN108972543B (en) * | 2018-06-21 | 2021-05-04 | 南京旭上数控技术有限公司 | Automatic high-precision non-contact robot TCP calibration method |
-
2019
- 2019-05-24 WO PCT/CN2019/088251 patent/WO2020237407A1/en active Application Filing
- 2019-05-24 CN CN201980017461.0A patent/CN112105484B/en active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102006038064A1 (en) * | 2006-08-16 | 2008-02-28 | Siemens Ag | Method for determining position of rotation center and orientation of round axle of machine, involves determining midpoint of ball of calibration ball on basis multiple contacts of calibration ball with measuring probe |
CN102226677A (en) * | 2011-01-26 | 2011-10-26 | 东南大学 | Calibration method for multi-robot system base coordinate system possessing cooperation relation |
CN107995885A (en) * | 2016-11-18 | 2018-05-04 | 深圳配天智能技术研究院有限公司 | A kind of coordinate system scaling method, system and device |
CN107042528A (en) * | 2017-06-01 | 2017-08-15 | 中国科学院宁波材料技术与工程研究所 | A kind of Kinematic Calibration system and method for industrial robot |
CN109571471A (en) * | 2018-12-03 | 2019-04-05 | 宇环数控机床股份有限公司 | A method of it is demarcated for dual robot relative tertiary location |
CN109676636A (en) * | 2019-03-06 | 2019-04-26 | 南京航空航天大学 | A kind of industrial robot kinematics calibration system and scaling method |
Also Published As
Publication number | Publication date |
---|---|
WO2020237407A1 (en) | 2020-12-03 |
CN112105484A (en) | 2020-12-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112105484B (en) | Robot kinematics parameter self-calibration method, system and storage device | |
CN108748159B (en) | Self-calibration method for tool coordinate system of mechanical arm | |
Joubair et al. | Non-kinematic calibration of a six-axis serial robot using planar constraints | |
JP5459486B2 (en) | Robot calibration method and apparatus | |
Conrad et al. | Robotic calibration issues: Accuracy, repeatability and calibration | |
WO2018196232A1 (en) | Method for automatically calibrating robot and end effector, and system | |
SE501867C2 (en) | Method and system for calibrating an industrial robot using a spherical calibration body | |
JP3326175B2 (en) | Method and apparatus for calibrating the motion axis of an industrial robot | |
JP2006318419A (en) | Calibration method of parallel mechanism machine | |
US20220105640A1 (en) | Method Of Calibrating A Tool Of An Industrial Robot, Control System And Industrial Robot | |
KR101797122B1 (en) | Method for Measurement And Compensation of Error on Portable 3D Coordinate Measurement Machine | |
US20200039075A1 (en) | Robotic structure calibrations | |
TWI754888B (en) | Calibrating method and calibrating system | |
Gaudreault et al. | Local and closed-loop calibration of an industrial serial robot using a new low-cost 3D measuring device | |
CN111390914A (en) | Robot zero position and tool coordinate calibration method | |
CN112476435B (en) | Calibration method and calibration device for gravity acceleration direction and storage medium | |
CN112902898B (en) | Three-dimensional measuring device and applicable mechanical arm correction method | |
CN114654466B (en) | Automatic calibration method, device, system, electronic equipment and storage medium | |
CN110900608A (en) | Robot kinematics calibration method based on optimal measurement configuration selection | |
CN113878586B (en) | Robot kinematics calibration device, method and system | |
RU2671787C1 (en) | Method for increasing accuracy of positioning industrial robots | |
WO2022025060A1 (en) | Robot control device | |
TWI710441B (en) | Coordinate calibration method of manipulator | |
JP2021186929A (en) | Control method for multi-axis robot | |
CN117140535B (en) | Robot kinematics parameter calibration method and system based on single measurement |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |