CN110614635B - SCARA robot kinematic parameter identification method - Google Patents

SCARA robot kinematic parameter identification method Download PDF

Info

Publication number
CN110614635B
CN110614635B CN201910819253.4A CN201910819253A CN110614635B CN 110614635 B CN110614635 B CN 110614635B CN 201910819253 A CN201910819253 A CN 201910819253A CN 110614635 B CN110614635 B CN 110614635B
Authority
CN
China
Prior art keywords
calibration
coordinate
small arm
arm
robot
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
Application number
CN201910819253.4A
Other languages
Chinese (zh)
Other versions
CN110614635A (en
Inventor
彭文佳
张弢
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Wuhan Freds Technology Development Co ltd
Original Assignee
Wuhan Freds Technology Development Co ltd
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 Wuhan Freds Technology Development Co ltd filed Critical Wuhan Freds Technology Development Co ltd
Priority to CN201910819253.4A priority Critical patent/CN110614635B/en
Publication of CN110614635A publication Critical patent/CN110614635A/en
Application granted granted Critical
Publication of CN110614635B publication Critical patent/CN110614635B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/02Programme-controlled manipulators characterised by movement of the arms, e.g. cartesian coordinate type
    • B25J9/04Programme-controlled manipulators characterised by movement of the arms, e.g. cartesian coordinate type by rotating at least one arm, excluding the head movement itself, e.g. cylindrical coordinate type or polar coordinate type
    • B25J9/041Cylindrical coordinate type
    • B25J9/042Cylindrical coordinate type comprising an articulated arm
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1628Programme controls characterised by the control loop
    • B25J9/1653Programme controls characterised by the control loop parameters identification, estimation, stiffness, accuracy, error analysis

Abstract

The invention discloses a method for identifying kinematic parameters of a SCARA robot, belongs to the technical field and solves the problems. A method for identifying kinematic parameters of a SCARA robot comprises the following steps: obtaining corresponding large arm angles and small arm angles when the tail end calibration needle is aligned with each calibration plate; respectively establishing a relational expression from the coordinate origin to the coordinate vector of each calibration hole; converting the relational expression from the coordinate origin to the coordinate vector of each calibration hole into the expression from the coordinate of the first calibration hole to the coordinate vector of other calibration holes; coordinate conversion is carried out on the first calibration hole coordinate to other calibration hole coordinate vector expressions to obtain a vector expression after coordinate conversion, and the vector expressions after all coordinate conversion form an equation set; and obtaining a coefficient matrix from the equation set, and carrying out SVD (singular value decomposition) on the coefficient matrix to obtain the large arm length, the small arm length and the small arm zero position. The robot kinematic parameter identification method has the advantages of simplicity, low operating environment requirement and low cost.

Description

SCARA robot kinematic parameter identification method
Technical Field
The invention relates to the technical field of SCARA robots, in particular to a method for identifying kinematic parameters of a SCARA robot.
Background
The SCARA robot is an industrial robot, has the advantages of simple structure, reliable movement, high action speed and high positioning precision compared with a six-axis mechanical arm and a DELTA mechanical arm, and is widely applied to the fields of plastic industry, automobile industry, electronic product industry, pharmaceutical industry, food industry and the like. The SCARA robot is provided with four joints, wherein the first three joints are rotary joints, the second three joints are mobile joints, the axes of the first three joints are parallel to each other and are vertical to the base mounting surface, and the mobile joints are coupled with the last rotary joints and move along the direction vertical to the mounting surface.
The SCARA robot joint angle and the tail end position have a nonlinear functional relation, when a user specifies the tail end target position, the terminal target position needs to be mapped to a corresponding joint space, the angle value of the joint is obtained, and the process is called as a robot kinematic inverse solution. In the inverse solution equation, structural parameters of the robot, namely zero positions of a large arm and a small arm of the robot and lengths of the large arm and the small arm, need to be input in advance, and due to machining errors, assembly errors and use friction loss, actual structural parameters can be different from theoretical design values, and the difference can affect the inverse solution process of kinematics, so that the positioning accuracy of the mechanical arm is affected. The identification of the structural parameters of the robot is a process step which is necessary and unnecessary before the robot leaves a factory, has great significance for improving the absolute positioning precision of the robot, and meanwhile, for the robot with reduced precision caused by the abrasion problem in long-term use, parameter compensation can be carried out on the robot through the identification of the structural parameters of the robot, so that the running performance of the robot is improved.
The currently common SCARA robot kinematic parameter identification method mainly comprises two types; one is to use professional measuring equipment such as a laser measuring instrument, and the like, the method has high requirement on the operating environment, the measuring equipment is expensive and complex to operate, is not beneficial to popularization and is not friendly to a robot user, and the other is to use a visual support to measure the coordinate value of the tail end of the robot.
Disclosure of Invention
The invention aims to overcome at least one technical defect and provides a method for identifying kinematic parameters of a SCARA robot.
The invention provides a method for identifying kinematic parameters of a SCARA robot, which comprises the following steps:
adjusting the large arm of the robot to enable the large arm of the robot to be parallel to the base of the robot; fixing the calibration plate in the working range of the robot, and aligning the tail end calibration pin of the robot with each calibration hole on the calibration plate in sequence to obtain a corresponding large arm angle and a corresponding small arm angle when the tail end calibration pin is aligned with each calibration plate;
establishing an inertial coordinate system comprising a large arm coordinate system and a small arm coordinate system, and respectively establishing a relational expression from a coordinate origin to each calibration hole coordinate vector according to the corresponding large arm angle and the corresponding small arm angle;
converting the relational expression from the coordinate origin to the coordinate vector of each calibration hole into the expression from the coordinate of the first calibration hole to the coordinate vector of other calibration holes; coordinate conversion is carried out on the first calibration hole coordinate to other calibration hole coordinate vector expressions to obtain a vector expression after coordinate conversion, and the vector expressions after all coordinate conversion form an equation set; and obtaining a coefficient matrix from the equation set, and performing SVD (singular value decomposition) decomposition on the coefficient matrix to obtain the large arm length, the small arm length and the small arm zero position.
Further, the method for identifying the kinematic parameters of the SCARA robot further comprises the step of acquiring a zero position of a large arm, and specifically comprises the following steps:
step S11, fixing a dial indicator and a lead screw module, enabling the lead screw module to be parallel to the side face of the robot base, and enabling the dial indicator to be in contact with the side face of the robot boom;
step S12, adjusting the angle of the large arm, and recording the pulse number of the motor of the large arm when the reading of the dial indicator is stable;
and S13, repeating the step S12 for preset times, and averaging the pulse numbers of all the large arm motors to obtain the zero point position of the large arm.
Further, aligning the robot end calibration pin with each calibration hole on the calibration plate in sequence to obtain a corresponding large arm angle and a corresponding small arm angle when the end calibration pin is aligned with each calibration plate, specifically comprising:
aligning the tail end calibration needle of the robot with each calibration hole on the calibration plate in sequence to obtain the resolution ratio and the reduction ratio of a large arm motor encoder, the pulse value of a small arm encoder, the reading of the small arm encoder, the speed ratio of a small arm reducer and the resolution ratio of the small arm motor encoder when the tail end calibration needle is aligned with the calibration holes on the calibration plate;
obtaining the angle of the large arm at the moment according to the resolution ratio and the reduction ratio of the large arm motor encoder, the pulse value of the small arm encoder, the reading of the small arm encoder, the speed ratio of the small arm reducer and the resolution ratio of the small arm motor encoder when the end calibration needle is aligned with the first calibration hole
Figure BDA0002187061620000021
Angle of forearm
Figure BDA0002187061620000022
Obtaining the angle of the large arm at the moment according to the resolution ratio and the reduction ratio of the large arm motor encoder, the pulse value of the small arm encoder, the reading of the small arm encoder, the speed ratio of the small arm reducer and the resolution ratio of the small arm motor encoder when the tail end calibration pin is aligned with the second calibration hole
Figure BDA0002187061620000023
Angle of forearm
Figure BDA0002187061620000024
The rotation angle of the small arm relative to the first calibration hole is used for the rotation;
obtaining the angle of the large arm at the moment according to the resolution ratio and the reduction ratio of the large arm motor encoder, the pulse value of the small arm encoder, the reading of the small arm encoder, the speed ratio of the small arm reducer and the resolution ratio of the small arm motor encoder when the end calibration pin is aligned with the third calibration hole
Figure BDA0002187061620000031
Angle of forearm
Figure BDA0002187061620000032
The rotation angle of the small arm relative to the first calibration hole is used for the rotation;
obtaining the angle of the large arm at the moment according to the resolution ratio and the reduction ratio of the large arm motor encoder, the pulse value of the small arm encoder, the reading of the small arm encoder, the speed ratio of the small arm reducer and the resolution ratio of the small arm motor encoder when the tail end calibration pin is aligned with the fourth calibration hole
Figure BDA0002187061620000033
Angle of forearm
Figure BDA0002187061620000034
The angle of rotation of the small arm relative to the first calibrated hole is used for this purpose.
Further, the establishing a relational expression from the origin of coordinates to the coordinate vector of each calibration hole according to the corresponding large arm angle and the corresponding small arm angle specifically includes:
according to
Figure BDA0002187061620000035
Establishing a relational expression from a coordinate origin to a coordinate vector of a first calibration hole
Figure BDA0002187061620000036
Establishing a relational expression from the coordinate origin to the coordinate vector of the second calibration hole
Figure BDA0002187061620000037
Establishing a relational expression from the coordinate origin to the coordinate vector of the third calibration hole
Figure BDA0002187061620000038
Establishing a relational expression from the coordinate origin to the coordinate vector of the fourth calibration hole
Figure BDA0002187061620000039
Wherein the content of the first and second substances,
Figure BDA00021870616200000310
c is cos, S is sin, l1Is long enough for the arm2Is the small arm length.
Further, the converting the relational expression from the origin of coordinates to each calibration hole coordinate vector into an expression from the first calibration hole coordinate to another calibration hole coordinate vector specifically includes: will be described in0rP10rP20rP30rP4The vector operation is carried out to obtain the vector,
vector expression from coordinates of first calibration hole to coordinates of second calibration hole in inertial coordinate system
Figure BDA00021870616200000311
Vector expression from second calibration hole coordinate to third calibration hole coordinate under inertial coordinate system
Figure BDA0002187061620000041
Vector expression from coordinates of third calibration hole to coordinates of fourth calibration hole in inertial coordinate system
Figure BDA0002187061620000042
Figure BDA0002187061620000043
Wherein the content of the first and second substances,
Figure BDA0002187061620000044
0rP2=-0|P2r00rP3=-0|P3r00rP4=-0|P4r0
further, the coordinate conversion is performed on the first calibration hole coordinate to other calibration hole coordinate vector expressions to obtain a vector expression after the coordinate conversion, and all vector expressions after the coordinate conversion form an equation set, which specifically includes: will be described in0|P1rP20|P1rP30|P3rP4Performing coordinate conversion to obtain a vector table after coordinate conversionThe expression is that the vector expressions after all the coordinate conversion form an equation set
Figure BDA0002187061620000045
Compared with the prior art, the invention has the beneficial effects that: the large arm of the robot is adjusted to be parallel to the robot base; fixing the calibration plate in the working range of the robot, and aligning the tail end calibration pin of the robot with each calibration hole on the calibration plate in sequence to obtain a corresponding large arm angle and a corresponding small arm angle when the tail end calibration pin is aligned with each calibration plate; establishing a relation expression from a coordinate origin to coordinate vectors of all calibration holes respectively according to corresponding large arm angles and small arm angles by establishing an inertia coordinate system comprising a large arm coordinate system and a small arm coordinate system; converting the relational expression from the coordinate origin to the coordinate vector of each calibration hole into the expression from the coordinate of the first calibration hole to the coordinate vector of other calibration holes; coordinate conversion is carried out on the first calibration hole coordinate to other calibration hole coordinate vector expressions to obtain a vector expression after coordinate conversion, and the vector expressions after all coordinate conversion form an equation set; obtaining a coefficient matrix from the equation set, and carrying out SVD (singular value decomposition) on the coefficient matrix to obtain the large arm length, the small arm length and the small arm zero position; the robot kinematic parameter identification method has the advantages of simplicity, low operating environment requirement and low cost.
Drawings
Fig. 1 is a schematic flow chart of a method for identifying kinematic parameters of a SCARA robot according to an embodiment of the present invention;
FIG. 2 is a schematic diagram of a SCARA robot according to an embodiment of the present invention;
FIG. 3 is a schematic illustration of a calibration plate according to an embodiment of the present invention;
FIG. 4 is a schematic diagram illustrating calibration of a zero position of a boom of a SCARA robot according to an embodiment of the present invention;
FIG. 5 is a schematic diagram of a coordinate system for kinematic forward solution of a SCARA robot according to an embodiment of the present invention;
FIG. 6 is a diagram illustrating the relationship between the calibration error of the small arm length and the calibration point error according to the embodiment of the present invention;
FIG. 7 is a diagram illustrating the relationship between the calibration error of the forearm length and the calibration point error according to an embodiment of the present invention;
FIG. 8 is a diagram illustrating a relationship between a calibration error of zero position of the forearm and a calibration point error according to an embodiment of the present invention;
fig. 9 is a graph showing a relationship between an error in the length of the upper arm, an error in the length of the lower arm, an error in the zero position of the lower arm, and a standard deviation of the form and position of the robot according to the embodiment of the present invention.
Reference numerals: 21-a robot base; 22-big arm; 23-a lead screw module; 24-dial gauge; 25-end; 31-calibration plate; 32-labeled wells; 41-big arm abscissa; 42-forearm abscissa.
Detailed Description
In order to make the objects, technical solutions and advantages of the present invention more apparent, the present invention is described in further detail below with reference to the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are merely illustrative of the invention and are not intended to limit the invention.
The embodiment of the invention provides a method for identifying kinematic parameters of a SCARA robot, which comprises the following steps:
adjusting the large arm of the robot to enable the large arm of the robot to be parallel to the base of the robot; fixing the calibration plate in the working range of the robot, and aligning the tail end calibration pin of the robot with each calibration hole on the calibration plate in sequence to obtain a corresponding large arm angle and a corresponding small arm angle when the tail end calibration pin is aligned with each calibration plate;
establishing an inertial coordinate system comprising a large arm coordinate system and a small arm coordinate system, and respectively establishing a relational expression from a coordinate origin to each calibration hole coordinate vector according to the corresponding large arm angle and the corresponding small arm angle;
converting the relational expression from the coordinate origin to the coordinate vector of each calibration hole into the expression from the coordinate of the first calibration hole to the coordinate vector of other calibration holes; coordinate conversion is carried out on the first calibration hole coordinate to other calibration hole coordinate vector expressions to obtain a vector expression after coordinate conversion, and the vector expressions after all coordinate conversion form an equation set; and obtaining a coefficient matrix from the equation set, and carrying out SVD (singular value decomposition) on the coefficient matrix to obtain the large arm length, the small arm length and the small arm zero position.
In specific implementation, as shown in fig. 2, the joint 1(J1) is a large arm, the joint 2(J2) is a small arm, the joint 3(J3) is a rotating shaft, the axial directions are parallel to each other and are all perpendicular to the installation plane, the joint 4(J4) is a moving shaft, the moving direction is perpendicular to the installation plane, and the axis coincides with the axis of J3. The tool was mounted to the end of the J3 or J4 shaft. And recording that the form and position of the robot when the joint 4 and the joint 1 are collinear with the joint 4 and the joint 2 are singular form and position, wherein the robot loses one degree of freedom and is reduced from 2 degrees of freedom to 1 degree of freedom in an installation plane.
Preferably, the method for identifying the kinematic parameters of the SCARA robot further includes acquiring a zero position of the large arm, and specifically includes:
step S11, fixing a dial indicator and a lead screw module, enabling the lead screw module to be parallel to the side face of the robot base, and enabling the dial indicator to be in contact with the side face of the robot boom;
step S12, adjusting the angle of the large arm, and recording the pulse number of the motor of the large arm when the reading of the dial indicator is stable;
and S13, repeating the step S12 for preset times, and averaging the pulse numbers of all the large arm motors to obtain the zero point position of the large arm.
In specific implementation, a calibration plate 31 is manufactured, and as shown in fig. 3, the substrate is made of metal (or stainless steel), the thickness of the substrate is 2mm, four laser printing marking holes 32 are formed, the four laser printing marking holes are respectively located at four corners of a rectangle, the length and the width of the rectangle are respectively marked as a and b, a point at the lower left of fig. 2 is marked as P1, and then other points are marked as P2, P3 and P4 in sequence along the counterclockwise direction;
a schematic diagram of zero calibration of a large arm (joint 1) of the SCARA robot is shown in fig. 4, a robot base 21 is fixed, a ball screw module (screw module) 23 is arranged on one side of the base, an end 25 is hinged to enable the screw module 23 to freely rotate along a hinged joint, a dial indicator 24 and a screw module sliding block are fixed, the gauge head is in contact with the side face of the base, the screw module sliding block slides to observe the reading of the dial indicator 24, the angle of the screw module 23 is continuously adjusted, and when the reading of the dial indicator 24 is stable in the whole stroke range, the screw module 23 is fixed; at this time, the module 23 is parallel to the side of the robot base 21;
contacting the dial indicator 24 with the side face of the robot large arm 22, observing the reading of the dial indicator 24 by the sliding slide block, continuously finely adjusting the angle of the large arm, and recording the pulse number of a motor of the large arm when the reading of the dial indicator 24 is stable in the whole stroke range; repeatedly adjusting the angle of the large arm 22 until the reading of the dial indicator 24 is stable for a plurality of times; respectively recording the pulse number of the large arm motor each time, and then taking an average value to be the zero position of the joint 1;
when the dial indicator 24 has stable reading in the whole stroke range, the lead screw module 23 is parallel to the side surface of the robot large arm 22; since the lead screw module 23 is leveled on the adjusted robot base 21, it can be known that the robot base 21 is parallel to the large arm 22 at this time, and the large arm 22 is located at the zero position.
Preferably, the aligning of the robot end calibration pin with each calibration hole on the calibration plate in sequence to obtain the corresponding large arm angle and small arm angle when the end calibration pin is aligned with each calibration plate specifically includes:
aligning the tail end calibration needle of the robot with each calibration hole on the calibration plate in sequence to obtain the resolution ratio and the reduction ratio of a large arm motor encoder, the pulse value of a small arm encoder, the reading of the small arm encoder, the speed ratio of a small arm reducer and the resolution ratio of the small arm motor encoder when the tail end calibration needle is aligned with the calibration holes on the calibration plate;
obtaining the angle of the large arm at the moment according to the resolution ratio and the reduction ratio of the large arm motor encoder, the pulse value of the small arm encoder, the reading of the small arm encoder, the speed ratio of the small arm reducer and the resolution ratio of the small arm motor encoder when the end calibration needle is aligned with the first calibration hole
Figure BDA0002187061620000071
Angle of forearm
Figure BDA0002187061620000072
According to the fact that when the tail end calibration pin is aligned with the second calibration hole, the resolution ratio of the large-arm motor encoder is reducedThe speed ratio, the pulse value of the small arm encoder, the reading of the small arm encoder, the speed ratio of the small arm reducer and the resolution of the small arm motor encoder are obtained to obtain the angle of the large arm at the moment
Figure BDA0002187061620000073
Angle of forearm
Figure BDA0002187061620000074
The rotation angle of the small arm relative to the first calibration hole is used for the rotation;
obtaining the angle of the large arm at the moment according to the resolution ratio and the reduction ratio of the large arm motor encoder, the pulse value of the small arm encoder, the reading of the small arm encoder, the speed ratio of the small arm reducer and the resolution ratio of the small arm motor encoder when the end calibration pin is aligned with the third calibration hole
Figure BDA0002187061620000075
Angle of forearm
Figure BDA0002187061620000076
The rotation angle of the small arm relative to the first calibration hole is used for the rotation;
obtaining the angle of the large arm at the moment according to the resolution ratio and the reduction ratio of the large arm motor encoder, the pulse value of the small arm encoder, the reading of the small arm encoder, the speed ratio of the small arm reducer and the resolution ratio of the small arm motor encoder when the tail end calibration pin is aligned with the fourth calibration hole
Figure BDA0002187061620000077
Angle of forearm
Figure BDA0002187061620000078
The angle of rotation of the small arm relative to the first calibrated hole is used for this purpose.
In specific implementation, the calibration plate 31 is fixed in the working range of the robot, the calibration pins and the matched clamps thereof are arranged at the tail end of the robot, the coaxiality needs to be ensured when the calibration pins and the clamps are manufactured, the fixed calibration plate 31 needs to be far away from singular form and position when the calibration pins at the tail end of the robot are aligned with the calibration holes 32, and the matrix disorder becomes a pathological matrix in the subsequent calculation process of the measured data in the form and position, so that the calculation error is increased;
and (3) operating the mechanical arm to enable the tail end calibration needle to be respectively aligned with the four holes, acquiring a joint 1 angle value (at the moment, the zero position of the joint 1 is determined, and the joint 1 angle value can be determined according to the resolution ratio and the reduction ratio of a joint 1 motor encoder) and a joint 2 encoder pulse value, and repeating each hole alignment step for several times to obtain an average value so as to improve the data accuracy.
Let the pulse value of the arm encoder be zero2Then the angle value of any morpheme joint 2 (forearm) is expressed as
θ2=360·(read2-zero2)/(i2·ER2)
Wherein read2For any attitude joint 2 encoder reading, i2For reduction ratio of shaft 2 (joint 2) speed reducer, ER2Shaft 2 motor encoder resolution; the angle value of the small arm can be obtained by the above formula;
obtaining an angle value of a shaft 1 and an angle value of a shaft 2 according to the resolution ratio and the reduction ratio of the large arm motor encoder, the pulse value of the small arm encoder, the reading of the small arm encoder, the speed ratio of the small arm reducer and the resolution ratio of the small arm motor encoder which correspond to the resolution ratio and the reduction ratio of the large arm motor encoder when the tail end calibration needle is respectively aligned with the four calibration holes, as shown in table 1;
Figure BDA0002187061620000081
in table 1, the first row represents the angular value of shaft 1, the pulse value of shaft 2 encoder, the angle of rotation of shaft 2 with respect to P1, and the angular value of shaft 2, respectively, when the end calibration pin is aligned with the first calibration hole (P1).
For performing a kinematics positive solution of the SCARA robot, a schematic diagram of a coordinate system for the kinematics positive solution of the SCARA robot is established, as shown in fig. 5, where X0O0Y0Is an inertial system, origin O0And the origin O of the coordinate system of the big arm1Coincident with each other, and all located at the rotation center of the big arm and the coordinate origin O of the small arm2The connecting point of the big arm and the small arm is located, and 41 and 42 are respectively the abscissa of the big arm and the small arm in the figure.
For the purpose of illustrating the subsequent embodiments, the symbols are now described as follows:c|arbin the coordinate form of an unfixed vector r, the vector starting point is the coordinate system origin a, the vector ending point is b, and the vector is projected under the coordinate system c. When the projection coordinate system is a, the projection coordinate system is,a|arbsimplified toarbaQbAn expression representing a rotation transformation matrix from a system to b system, the rotation transformation matrix being rotated in a two-dimensional plane is
Figure BDA0002187061620000082
Wherein:
Figure BDA0002187061620000083
the vector r is a first-order tensor and has invariance, and the expression of the vector r in different coordinate systems meets the following conversion relation:d|arbdQc·c|arb
positive kinematic formula of SCARA mechanical arm
0rP0r1+0|1r2+0|2rp0Q1·1r2+0Q2·2rP
Preferably, the establishing a relational expression from the origin of coordinates to the coordinate vector of each calibration hole according to the corresponding large arm angle and the corresponding small arm angle includes:
according to
Figure BDA0002187061620000084
By combining the positive kinematics formula of the SCARA mechanical arm and the expression of the two-dimensional plane rotation transformation matrix,
establishing a relational expression from a coordinate origin to a coordinate vector of a first calibration hole
Figure BDA0002187061620000091
Establishing a relational expression from the coordinate origin to the coordinate vector of the second calibration hole
Figure BDA0002187061620000092
Establishing a relational expression from the coordinate origin to the coordinate vector of the third calibration hole
Figure BDA0002187061620000093
Establishing a relational expression from the coordinate origin to the coordinate vector of the fourth calibration hole
Figure BDA0002187061620000094
Wherein the content of the first and second substances,
Figure BDA0002187061620000095
c is cos, S is sin, l1Is long enough for the arm2Is the small arm length.
Preferably, the converting the relational expression from the origin of coordinates to each calibration hole coordinate vector into an expression from a first calibration hole coordinate to another calibration hole coordinate vector specifically includes: will be described in0rP10rP20rP30rP4The vector operation is carried out to obtain the vector,
vector expression from coordinates of first calibration hole to coordinates of second calibration hole in inertial coordinate system
Figure BDA0002187061620000096
Vector expression from second calibration hole coordinate to third calibration hole coordinate under inertial coordinate system
Figure BDA0002187061620000097
Vector expression from coordinates of third calibration hole to coordinates of fourth calibration hole in inertial coordinate system
Figure BDA0002187061620000098
Wherein the content of the first and second substances,
Figure BDA0002187061620000101
0rP2=-0|P2r00rP3=-0|P3r00rP4=-0|P4r0
in no way, the rotation transformation matrix for defining the inertial coordinate system of the robot arm to the calibration plate 31
Figure BDA0002187061620000102
Wherein alpha is the included angle between the inertial system and the coordinate system of the calibration plate, and can be measured by an angle measuring instrument, and the coordinate conversion relation is as follows
0|Pirpj0Qbord·bord|Pirpj (5)
Preferably, the coordinate conversion is performed on the first calibration hole coordinate to other calibration hole coordinate vector expressions to obtain a vector expression after the coordinate conversion, and the vector expressions after all the coordinate conversion form an equation set, which specifically includes: according to the formulas (4) and (5), the method0|P1rP20|P1rP30|P3rP4Carrying out coordinate conversion to obtain vector expressions after coordinate conversion, and forming an equation set by the vector expressions after coordinate conversion
Figure BDA0002187061620000103
Eliminating alpha in the formula (6),
Figure BDA0002187061620000104
thereby obtaining a coefficient matrix
Figure BDA0002187061620000111
The variables are rearranged in columns, then
Figure BDA0002187061620000112
Equation set (13) is reduced to Γ · X ═ 0,
the above formula is a typical hyperstatic linear homogeneous least square problem, the size of a coefficient matrix is 4X3, SVD decomposition is carried out on the coefficient matrix gamma, and a right singular vector corresponding to the minimum singular value is the least square solution of the equation; then x can be obtained1,x2,x3According to
Figure BDA0002187061620000113
The large arm length, the small arm length and the small arm zero point position can be obtained respectively.
Assuming that the theoretical lengths of the large arm and the small arm of the SCARA robot are both 200mm and the actual lengths are respectively 201mm and 198mm, because the calibration needle and the calibration hole generate errors during the calibration process, and assuming that the calibration needle falls in a circle with the radius of 0.5mm of the calibration point, the identification method is utilized to carry out 500 times of simulation identification experiments, the experimental results are shown in FIGS. 6-8, because the calibration needle at the tail end is aligned with the calibration hole, there are calibration point errors, FIG. 6 is a graph showing the relationship between the calibration error and the calibration point error of the small arm length, FIG. 7 is a graph showing the relationship between the calibration error and the calibration point error of the small arm length, and FIG. 8 is a graph showing the relationship between the zero calibration error and the calibration point error of the small arm; it can be known that the calibration errors of the large arm length are all less than 0.2mm, the calibration errors of the small arm length are all less than 0.3mm, and the calibration errors of the small arm zero position are all less than 0.02 degrees.
The standard deviation of the large and small arm angles when the calibration holes are aligned with the calibration targets is influenced by changing the hole pitch of the calibration holes and the placement position of the calibration plate, the calibration error is 0.5mm, and the relation between the proximity of the large and small arm angles and the calibration error when different calibration points are used is determined; as shown in fig. 9, the graph is a graph of the relationship between the length error of the upper arm, the length error of the lower arm, the zero position error of the lower arm and the form and position standard deviation of the robot, and it can be seen that when calibrating different hole sites, the larger the form and position difference of the robot is, the smaller the calibration error is.
The method provided by the invention has expandability, a user can freely select the number of the calibration holes according to the actual precision requirement, the calibration precision is higher as the number of the calibration holes is larger, and the calibration basic method is unchanged, a person skilled in the art can calculate the correct robot parameter result according to the technical scheme of the embodiment, and assuming that the number of the calibration holes selected by the user is N (N > -4), the coefficient matrix is changed into N rows and 3 columns, and the least square solution of the SVD decomposition calculation equation set can still be used.
The invention discloses a method for identifying kinematic parameters of a SCARA robot, which is characterized in that a robot large arm is adjusted to be parallel to a robot base; fixing the calibration plate in the working range of the robot, and aligning the tail end calibration pin of the robot with each calibration hole on the calibration plate in sequence to obtain a corresponding large arm angle and a corresponding small arm angle when the tail end calibration pin is aligned with each calibration plate; establishing a relation expression from a coordinate origin to coordinate vectors of all calibration holes respectively according to corresponding large arm angles and small arm angles by establishing an inertia coordinate system comprising a large arm coordinate system and a small arm coordinate system; converting the relational expression from the coordinate origin to the coordinate vector of each calibration hole into the expression from the coordinate of the first calibration hole to the coordinate vector of other calibration holes; coordinate conversion is carried out on the first calibration hole coordinate to other calibration hole coordinate vector expressions to obtain a vector expression after coordinate conversion, and the vector expressions after all coordinate conversion form an equation set; obtaining a coefficient matrix from the equation set, and carrying out SVD (singular value decomposition) on the coefficient matrix to obtain the large arm length, the small arm length and the small arm zero position; the kinematic parameters of the robot are identified simply, with low operating environment requirements and low cost;
in addition, the method for identifying the kinematic parameters of the SCARA robot has the advantages that the cost of used instruments and equipment is greatly reduced compared with that of the traditional scheme, the process is simple, except for a robot manufacturer, a robot user can also calibrate the robot by using the identification method provided by the invention, the positioning precision of the robot is improved, and the use and maintenance cost of the robot is reduced; the invention unifies the reference coordinate system, avoids the disordered form and position expression of the robot caused by introducing a left-right hand system in the conventional method, reduces the reading and using difficulty of non-robot professional users, and has clear and clear whole calibration process.
Meanwhile, the process of aligning the center coordinates of the tail end by matching a finish machining hole with the tool shaft at the tail end of the robot in the conventional calibration process is not adopted, and a non-contact method is used, so that the positioning error caused by the flexibility of the tail end of the robot is avoided, and the calibration accuracy is improved;
the SCARA robot kinematic parameter identification method has expandability, the number of the base holes of the calibration plate is 4, and if a user wants to improve the calibration precision, the calibration holes can be added on the basis of the number of the base holes without changing the calibration method.
The above-described embodiments of the present invention should not be construed as limiting the scope of the present invention. Any other corresponding changes and modifications made according to the technical idea of the present invention should be included in the protection scope of the claims of the present invention.

Claims (2)

1. A method for identifying kinematic parameters of a SCARA robot is characterized by comprising the following steps:
adjusting the large arm of the robot to enable the large arm of the robot to be parallel to the base of the robot; fixing the calibration plate in the working range of the robot; a calibration needle and a matched clamp thereof are arranged at the tail end of the robot, so that the coaxiality of the calibration needle and the clamp is required to be ensured when the calibration needle and the clamp are manufactured, and the calibration needle at the tail end of the robot is far away from the singular form and position when aligned with a calibration hole;
aligning the tail end calibration needle of the robot with each calibration hole on the calibration plate in sequence to obtain the resolution ratio and the reduction ratio of a large arm motor encoder, the pulse value of a small arm encoder, the reading of the small arm encoder, the speed ratio of a small arm reducer and the resolution ratio of the small arm motor encoder when the tail end calibration needle is aligned with the calibration holes on the calibration plate;
obtaining the angle of the large arm at the moment according to the resolution ratio and the reduction ratio of the large arm motor encoder, the pulse value of the small arm encoder, the reading of the small arm encoder, the speed ratio of the small arm reducer and the resolution ratio of the small arm motor encoder when the end calibration needle is aligned with the first calibration hole
Figure FDA0003181707830000011
Angle of forearm
Figure FDA0003181707830000012
Obtaining the angle of the large arm at the moment according to the resolution ratio and the reduction ratio of the large arm motor encoder, the pulse value of the small arm encoder, the reading of the small arm encoder, the speed ratio of the small arm reducer and the resolution ratio of the small arm motor encoder when the tail end calibration pin is aligned with the second calibration hole
Figure FDA0003181707830000013
Angle of forearm
Figure FDA0003181707830000014
Figure FDA0003181707830000015
The rotation angle of the small arm relative to the first calibration hole is used for the rotation;
obtaining the angle of the large arm at the moment according to the resolution ratio and the reduction ratio of the large arm motor encoder, the pulse value of the small arm encoder, the reading of the small arm encoder, the speed ratio of the small arm reducer and the resolution ratio of the small arm motor encoder when the end calibration pin is aligned with the third calibration hole
Figure FDA0003181707830000016
Angle of forearm
Figure FDA0003181707830000017
Figure FDA0003181707830000018
The rotation angle of the small arm relative to the first calibration hole is used for the rotation;
obtaining the angle of the large arm at the moment according to the resolution ratio and the reduction ratio of the large arm motor encoder, the pulse value of the small arm encoder, the reading of the small arm encoder, the speed ratio of the small arm reducer and the resolution ratio of the small arm motor encoder when the tail end calibration pin is aligned with the fourth calibration hole
Figure FDA0003181707830000019
Angle of forearm
Figure FDA00031817078300000110
Figure FDA00031817078300000111
The rotation angle of the small arm relative to the first calibration hole is used for the rotation;
establishing an inertial frame comprising a frame of coordinates of the upper arm and the lower arm, based on
Figure FDA00031817078300000112
Figure FDA00031817078300000113
Establishing a relational expression from a coordinate origin to a coordinate vector of a first calibration hole
Figure FDA00031817078300000114
Establishing a relational expression from the coordinate origin to the coordinate vector of the second calibration hole
Figure FDA00031817078300000115
Establishing a relational expression from the coordinate origin to the coordinate vector of the third calibration hole
Figure FDA0003181707830000021
Establishing a relational expression from the coordinate origin to the coordinate vector of the fourth calibration hole
Figure FDA0003181707830000022
Wherein x is1=l1,
Figure FDA0003181707830000023
C is cos, S is sin, l1Is long enough for the arm2Is the small arm length;
will be described in0rP10rP20rP30rP4The vector operation is carried out to obtain the vector,
vector expression from coordinates of first calibration hole to coordinates of second calibration hole in inertial coordinate system
Figure FDA0003181707830000024
Vector expression from second calibration hole coordinate to third calibration hole coordinate under inertial coordinate system
Figure FDA0003181707830000025
Vector expression from coordinates of third calibration hole to coordinates of fourth calibration hole in inertial coordinate system
Figure FDA0003181707830000026
Wherein the content of the first and second substances,
Figure FDA0003181707830000027
0rP1=-0|P1r00rP2=-0|P2r00rP3=-0|P3r00rP4=-0|P4r0
will be described in0|P1rP20|P1rP30|P3rP4Coordinate conversion is carried out to obtain vector expressions after coordinate conversion, and all vector expressions after coordinate conversion form an equation set
Figure FDA0003181707830000031
Wherein alpha is an included angle between an inertia system and a coordinate system of a calibration plate, four calibration holes on the calibration plate are respectively positioned at four corners of a rectangle, and a and b are respectively the length and width of the rectangle; and obtaining a coefficient matrix from the equation set, and carrying out SVD (singular value decomposition) on the coefficient matrix to obtain the large arm length, the small arm length and the small arm zero position.
2. The method for identifying kinematic parameters of a SCARA robot according to claim 1, further comprising obtaining a zero position of the boom, specifically comprising:
step S11, fixing a dial indicator and a lead screw module, enabling the lead screw module to be parallel to the side face of the robot base, and enabling the dial indicator to be in contact with the side face of the robot boom;
step S12, adjusting the angle of the large arm, and recording the pulse number of the motor of the large arm when the reading of the dial indicator is stable;
and S13, repeating the step S12 for preset times, and averaging the pulse numbers of all the large arm motors to obtain the zero point position of the large arm.
CN201910819253.4A 2019-08-31 2019-08-31 SCARA robot kinematic parameter identification method Active CN110614635B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910819253.4A CN110614635B (en) 2019-08-31 2019-08-31 SCARA robot kinematic parameter identification method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910819253.4A CN110614635B (en) 2019-08-31 2019-08-31 SCARA robot kinematic parameter identification method

Publications (2)

Publication Number Publication Date
CN110614635A CN110614635A (en) 2019-12-27
CN110614635B true CN110614635B (en) 2021-11-02

Family

ID=68922901

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910819253.4A Active CN110614635B (en) 2019-08-31 2019-08-31 SCARA robot kinematic parameter identification method

Country Status (1)

Country Link
CN (1) CN110614635B (en)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110802597A (en) * 2019-11-22 2020-02-18 中船重工鹏力(南京)智能装备系统有限公司 Calibration method of horizontal joint robot based on singular value decomposition
CN113211445B (en) * 2021-05-21 2022-10-14 广东拓斯达科技股份有限公司 Robot parameter calibration method, device, equipment and storage medium
CN113459084A (en) * 2021-05-21 2021-10-01 广东拓斯达科技股份有限公司 Robot parameter calibration method, device, equipment and storage medium
CN115213911B (en) * 2022-09-20 2023-04-14 苏州浪潮智能科技有限公司 Arm length parameter compensation method, device, equipment and storage medium of SCARA robot

Family Cites Families (15)

* Cited by examiner, † Cited by third party
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
JP2651251B2 (en) * 1989-10-20 1997-09-10 株式会社日立製作所 Mechanism error correction method for SCARA robot
CN106064379B (en) * 2016-07-21 2019-04-12 深圳众为兴技术股份有限公司 A kind of method that robot calculates practical brachium automatically
CN206140498U (en) * 2016-08-31 2017-05-03 深圳市汇川技术股份有限公司 SCARA robot mechanical initial point identification means
CN107160380B (en) * 2017-07-04 2021-01-19 华南理工大学 Camera calibration and coordinate transformation method based on SCARA manipulator
CN107322599A (en) * 2017-07-24 2017-11-07 国机智能技术研究院有限公司 A kind of method, storage device and the control device of robot Zero calibration
CN107351086B (en) * 2017-08-22 2020-09-22 华南理工大学 Kalman estimation method for joint torque of SCARA robot
CN107351089B (en) * 2017-09-12 2019-08-27 中国科学技术大学 A kind of robot kinematics' parameter calibration pose optimum option method
CN107671861B (en) * 2017-11-13 2020-11-13 无锡信捷电气股份有限公司 Improved SCARA robot dynamics parameter identification method
CN107718050B (en) * 2017-11-14 2020-07-17 深圳众为兴技术股份有限公司 SCARA robot arm length and zero point calibration method, device, medium and computer equipment
CN108274459B (en) * 2018-01-05 2020-12-22 高创传动科技开发(深圳)有限公司 Calibration method and system of industrial robot
CN109159114B (en) * 2018-08-16 2021-03-23 郑州大学 High-precision method for hand-eye calibration of SCARA manipulator fixed camera vision system
CN109333520A (en) * 2018-10-23 2019-02-15 广州霞光技研有限公司 A kind of four axis SCARA robot inverse solution methods
CN109636783B (en) * 2018-12-04 2020-11-27 广东拓斯达科技股份有限公司 Method and device for determining arm length of robot, computer equipment and storage medium
CN109648554B (en) * 2018-12-14 2019-08-30 佛山市奇创智能科技有限公司 Robot calibration method, device and system

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
SCARA机器人标定及轨迹规划;李小龙;《中国优秀硕士学位论文全文数据库 信息科技辑》;中国学术期刊(光盘版)电子杂志社;20180228(第2期);第28-32页 *
SCARA机器人运动学参数与视觉标定研究;张皓钧;《中国优秀硕士学位论文全文数据库 信息科技辑》;中国学术期刊(光盘版)电子杂志社;20150228(第2期);全文 *

Also Published As

Publication number Publication date
CN110614635A (en) 2019-12-27

Similar Documents

Publication Publication Date Title
CN110614635B (en) SCARA robot kinematic parameter identification method
CN107042528B (en) A kind of Kinematic Calibration system and method for industrial robot
US7904202B2 (en) Method and system to provide improved accuracies in multi-jointed robots through kinematic robot model parameters determination
CN109458958B (en) Calibration method for center position of rotary table in four-axis vision measurement device
CN111203861B (en) Calibration method and calibration system for robot tool coordinate system
CN107718050A (en) SCARA robots brachium and Zero calibration method, device, medium and computer equipment
CN109520420B (en) Method for determining space coordinates of rotary center of rotary table
CN110757504A (en) Positioning error compensation method of high-precision movable robot
CN111409067B (en) Automatic calibration system and calibration method for robot user coordinate system
CN113843792B (en) Hand-eye calibration method of surgical robot
CN110181558A (en) A kind of devices and methods therefor becoming shoulder joint formula coordinate measuring machine calibration robot
CN113618738A (en) Mechanical arm kinematic parameter calibration method and system
Taek Oh Influence of the joint angular characteristics on the accuracy of industrial robots
CN112549018B (en) Robot line laser rapid hand-eye calibration method
CN112589787B (en) Visual positioning and hand-eye calibration method for loading and unloading samples of mechanical arm of feeding turntable
CN112665477A (en) Detection tool and method for testing plane positioning accuracy of end effector
CN115139338B (en) Robot TCP quick high-precision calibration method
CN115816511A (en) Device for detecting pose of parallel robot platform and calculation method
CN113878586B (en) Robot kinematics calibration device, method and system
CN112277002B (en) Robot kinematics calibration device and calibration method based on incomplete pose information
CN115042189A (en) Mechanical arm parameter error identification and compensation method
JPS59178310A (en) Position aligning apparatus for calibrating coordinates system of multi-joint robot
CN113686278A (en) High-precision industrial robot tool TCP calibration method
CN113894809B (en) Method for acquiring geometric parameters of kinematic model of industrial robot
CN110802597A (en) Calibration method of horizontal joint robot based on singular value decomposition

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